1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3 #[inline]
ClearPropVariantArray(rgpropvar: *mut super::Com::StructuredStorage::PROPVARIANT, cvars: u32)4 pub unsafe fn ClearPropVariantArray(rgpropvar: *mut super::Com::StructuredStorage::PROPVARIANT, cvars: u32) {
5     #[cfg(windows)]
6     {
7         #[link(name = "windows")]
8         extern "system" {
9             fn ClearPropVariantArray(rgpropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, cvars: u32);
10         }
11         ::std::mem::transmute(ClearPropVariantArray(::std::mem::transmute(rgpropvar), ::std::mem::transmute(cvars)))
12     }
13     #[cfg(not(windows))]
14     unimplemented!("Unsupported target OS");
15 }
16 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
17 #[inline]
ClearVariantArray(pvars: *mut super::Com::VARIANT, cvars: u32)18 pub unsafe fn ClearVariantArray(pvars: *mut super::Com::VARIANT, cvars: u32) {
19     #[cfg(windows)]
20     {
21         #[link(name = "windows")]
22         extern "system" {
23             fn ClearVariantArray(pvars: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>, cvars: u32);
24         }
25         ::std::mem::transmute(ClearVariantArray(::std::mem::transmute(pvars), ::std::mem::transmute(cvars)))
26     }
27     #[cfg(not(windows))]
28     unimplemented!("Unsupported target OS");
29 }
30 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
31 #[repr(transparent)]
32 pub struct DRAWPROGRESSFLAGS(pub i32);
33 pub const DPF_NONE: DRAWPROGRESSFLAGS = DRAWPROGRESSFLAGS(0i32);
34 pub const DPF_MARQUEE: DRAWPROGRESSFLAGS = DRAWPROGRESSFLAGS(1i32);
35 pub const DPF_MARQUEE_COMPLETE: DRAWPROGRESSFLAGS = DRAWPROGRESSFLAGS(2i32);
36 pub const DPF_ERROR: DRAWPROGRESSFLAGS = DRAWPROGRESSFLAGS(4i32);
37 pub const DPF_WARNING: DRAWPROGRESSFLAGS = DRAWPROGRESSFLAGS(8i32);
38 pub const DPF_STOPPED: DRAWPROGRESSFLAGS = DRAWPROGRESSFLAGS(16i32);
39 impl ::std::convert::From<i32> for DRAWPROGRESSFLAGS {
from(value: i32) -> Self40     fn from(value: i32) -> Self {
41         Self(value)
42     }
43 }
44 unsafe impl ::windows::runtime::Abi for DRAWPROGRESSFLAGS {
45     type Abi = Self;
46     type DefaultType = Self;
47 }
48 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
49 #[repr(transparent)]
50 pub struct GETPROPERTYSTOREFLAGS(pub i32);
51 pub const GPS_DEFAULT: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(0i32);
52 pub const GPS_HANDLERPROPERTIESONLY: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(1i32);
53 pub const GPS_READWRITE: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(2i32);
54 pub const GPS_TEMPORARY: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(4i32);
55 pub const GPS_FASTPROPERTIESONLY: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(8i32);
56 pub const GPS_OPENSLOWITEM: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(16i32);
57 pub const GPS_DELAYCREATION: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(32i32);
58 pub const GPS_BESTEFFORT: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(64i32);
59 pub const GPS_NO_OPLOCK: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(128i32);
60 pub const GPS_PREFERQUERYPROPERTIES: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(256i32);
61 pub const GPS_EXTRINSICPROPERTIES: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(512i32);
62 pub const GPS_EXTRINSICPROPERTIESONLY: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(1024i32);
63 pub const GPS_VOLATILEPROPERTIES: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(2048i32);
64 pub const GPS_VOLATILEPROPERTIESONLY: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(4096i32);
65 pub const GPS_MASK_VALID: GETPROPERTYSTOREFLAGS = GETPROPERTYSTOREFLAGS(8191i32);
66 impl ::std::convert::From<i32> for GETPROPERTYSTOREFLAGS {
from(value: i32) -> Self67     fn from(value: i32) -> Self {
68         Self(value)
69     }
70 }
71 unsafe impl ::windows::runtime::Abi for GETPROPERTYSTOREFLAGS {
72     type Abi = Self;
73     type DefaultType = Self;
74 }
75 #[repr(transparent)]
76 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
77 pub struct ICreateObject(::windows::runtime::IUnknown);
78 impl ICreateObject {
CreateObject<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, T: ::windows::runtime::Interface>(&self, clsid: *const ::windows::runtime::GUID, punkouter: Param1) -> ::windows::runtime::Result<T>79     pub unsafe fn CreateObject<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, T: ::windows::runtime::Interface>(&self, clsid: *const ::windows::runtime::GUID, punkouter: Param1) -> ::windows::runtime::Result<T> {
80         let mut result__ = ::std::option::Option::None;
81         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(clsid), punkouter.into_param().abi(), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
82     }
83 }
84 unsafe impl ::windows::runtime::Interface for ICreateObject {
85     type Vtable = ICreateObject_abi;
86     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1964120402, 57552, 17381, [147, 128, 29, 128, 72, 58, 207, 114]);
87 }
88 impl ::std::convert::From<ICreateObject> for ::windows::runtime::IUnknown {
from(value: ICreateObject) -> Self89     fn from(value: ICreateObject) -> Self {
90         unsafe { ::std::mem::transmute(value) }
91     }
92 }
93 impl ::std::convert::From<&ICreateObject> for ::windows::runtime::IUnknown {
from(value: &ICreateObject) -> Self94     fn from(value: &ICreateObject) -> Self {
95         ::std::convert::From::from(::std::clone::Clone::clone(value))
96     }
97 }
98 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for ICreateObject {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>99     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
100         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
101     }
102 }
103 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &ICreateObject {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>104     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
105         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
106     }
107 }
108 #[repr(C)]
109 #[doc(hidden)]
110 pub struct ICreateObject_abi(
111     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
112     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
113     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
114     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, clsid: *const ::windows::runtime::GUID, punkouter: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
115 );
116 #[repr(transparent)]
117 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
118 pub struct IDelayedPropertyStoreFactory(::windows::runtime::IUnknown);
119 impl IDelayedPropertyStoreFactory {
GetPropertyStore<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, T: ::windows::runtime::Interface>(&self, flags: GETPROPERTYSTOREFLAGS, punkfactory: Param1) -> ::windows::runtime::Result<T>120     pub unsafe fn GetPropertyStore<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, T: ::windows::runtime::Interface>(&self, flags: GETPROPERTYSTOREFLAGS, punkfactory: Param1) -> ::windows::runtime::Result<T> {
121         let mut result__ = ::std::option::Option::None;
122         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(flags), punkfactory.into_param().abi(), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
123     }
GetPropertyStoreForKeys<T: ::windows::runtime::Interface>(&self, rgkeys: *const PROPERTYKEY, ckeys: u32, flags: GETPROPERTYSTOREFLAGS) -> ::windows::runtime::Result<T>124     pub unsafe fn GetPropertyStoreForKeys<T: ::windows::runtime::Interface>(&self, rgkeys: *const PROPERTYKEY, ckeys: u32, flags: GETPROPERTYSTOREFLAGS) -> ::windows::runtime::Result<T> {
125         let mut result__ = ::std::option::Option::None;
126         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(rgkeys), ::std::mem::transmute(ckeys), ::std::mem::transmute(flags), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
127     }
GetDelayedPropertyStore<T: ::windows::runtime::Interface>(&self, flags: GETPROPERTYSTOREFLAGS, dwstoreid: u32) -> ::windows::runtime::Result<T>128     pub unsafe fn GetDelayedPropertyStore<T: ::windows::runtime::Interface>(&self, flags: GETPROPERTYSTOREFLAGS, dwstoreid: u32) -> ::windows::runtime::Result<T> {
129         let mut result__ = ::std::option::Option::None;
130         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(flags), ::std::mem::transmute(dwstoreid), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
131     }
132 }
133 unsafe impl ::windows::runtime::Interface for IDelayedPropertyStoreFactory {
134     type Vtable = IDelayedPropertyStoreFactory_abi;
135     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1087657855, 57911, 19419, [189, 105, 88, 240, 137, 67, 27, 106]);
136 }
137 impl ::std::convert::From<IDelayedPropertyStoreFactory> for ::windows::runtime::IUnknown {
from(value: IDelayedPropertyStoreFactory) -> Self138     fn from(value: IDelayedPropertyStoreFactory) -> Self {
139         unsafe { ::std::mem::transmute(value) }
140     }
141 }
142 impl ::std::convert::From<&IDelayedPropertyStoreFactory> for ::windows::runtime::IUnknown {
from(value: &IDelayedPropertyStoreFactory) -> Self143     fn from(value: &IDelayedPropertyStoreFactory) -> Self {
144         ::std::convert::From::from(::std::clone::Clone::clone(value))
145     }
146 }
147 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IDelayedPropertyStoreFactory {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>148     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
149         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
150     }
151 }
152 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IDelayedPropertyStoreFactory {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>153     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
154         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
155     }
156 }
157 impl ::std::convert::From<IDelayedPropertyStoreFactory> for IPropertyStoreFactory {
from(value: IDelayedPropertyStoreFactory) -> Self158     fn from(value: IDelayedPropertyStoreFactory) -> Self {
159         unsafe { ::std::mem::transmute(value) }
160     }
161 }
162 impl ::std::convert::From<&IDelayedPropertyStoreFactory> for IPropertyStoreFactory {
from(value: &IDelayedPropertyStoreFactory) -> Self163     fn from(value: &IDelayedPropertyStoreFactory) -> Self {
164         ::std::convert::From::from(::std::clone::Clone::clone(value))
165     }
166 }
167 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyStoreFactory> for IDelayedPropertyStoreFactory {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyStoreFactory>168     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyStoreFactory> {
169         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyStoreFactory>::into(self))
170     }
171 }
172 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyStoreFactory> for &IDelayedPropertyStoreFactory {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyStoreFactory>173     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyStoreFactory> {
174         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyStoreFactory>::into(::std::clone::Clone::clone(self)))
175     }
176 }
177 #[repr(C)]
178 #[doc(hidden)]
179 pub struct IDelayedPropertyStoreFactory_abi(
180     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
181     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
182     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
183     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, flags: GETPROPERTYSTOREFLAGS, punkfactory: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
184     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, rgkeys: *const PROPERTYKEY, ckeys: u32, flags: GETPROPERTYSTOREFLAGS, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
185     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, flags: GETPROPERTYSTOREFLAGS, dwstoreid: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
186 );
187 #[repr(transparent)]
188 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
189 pub struct IInitializeWithFile(::windows::runtime::IUnknown);
190 impl IInitializeWithFile {
191     #[cfg(feature = "Win32_Foundation")]
Initialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszfilepath: Param0, grfmode: u32) -> ::windows::runtime::Result<()>192     pub unsafe fn Initialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszfilepath: Param0, grfmode: u32) -> ::windows::runtime::Result<()> {
193         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pszfilepath.into_param().abi(), ::std::mem::transmute(grfmode)).ok()
194     }
195 }
196 unsafe impl ::windows::runtime::Interface for IInitializeWithFile {
197     type Vtable = IInitializeWithFile_abi;
198     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3083945318, 1289, 19662, [167, 31, 10, 85, 66, 51, 189, 155]);
199 }
200 impl ::std::convert::From<IInitializeWithFile> for ::windows::runtime::IUnknown {
from(value: IInitializeWithFile) -> Self201     fn from(value: IInitializeWithFile) -> Self {
202         unsafe { ::std::mem::transmute(value) }
203     }
204 }
205 impl ::std::convert::From<&IInitializeWithFile> for ::windows::runtime::IUnknown {
from(value: &IInitializeWithFile) -> Self206     fn from(value: &IInitializeWithFile) -> Self {
207         ::std::convert::From::from(::std::clone::Clone::clone(value))
208     }
209 }
210 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IInitializeWithFile {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>211     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
212         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
213     }
214 }
215 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IInitializeWithFile {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>216     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
217         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
218     }
219 }
220 #[repr(C)]
221 #[doc(hidden)]
222 pub struct IInitializeWithFile_abi(
223     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
224     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
225     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
226     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszfilepath: super::super::Foundation::PWSTR, grfmode: u32) -> ::windows::runtime::HRESULT,
227     #[cfg(not(feature = "Win32_Foundation"))] usize,
228 );
229 #[repr(transparent)]
230 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
231 pub struct IInitializeWithStream(::windows::runtime::IUnknown);
232 impl IInitializeWithStream {
233     #[cfg(feature = "Win32_System_Com")]
Initialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::IStream>>(&self, pstream: Param0, grfmode: u32) -> ::windows::runtime::Result<()>234     pub unsafe fn Initialize<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::IStream>>(&self, pstream: Param0, grfmode: u32) -> ::windows::runtime::Result<()> {
235         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pstream.into_param().abi(), ::std::mem::transmute(grfmode)).ok()
236     }
237 }
238 unsafe impl ::windows::runtime::Interface for IInitializeWithStream {
239     type Vtable = IInitializeWithStream_abi;
240     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3089413277, 8876, 16737, [172, 138, 153, 22, 232, 250, 63, 127]);
241 }
242 impl ::std::convert::From<IInitializeWithStream> for ::windows::runtime::IUnknown {
from(value: IInitializeWithStream) -> Self243     fn from(value: IInitializeWithStream) -> Self {
244         unsafe { ::std::mem::transmute(value) }
245     }
246 }
247 impl ::std::convert::From<&IInitializeWithStream> for ::windows::runtime::IUnknown {
from(value: &IInitializeWithStream) -> Self248     fn from(value: &IInitializeWithStream) -> Self {
249         ::std::convert::From::from(::std::clone::Clone::clone(value))
250     }
251 }
252 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IInitializeWithStream {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>253     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
254         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
255     }
256 }
257 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IInitializeWithStream {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>258     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
259         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
260     }
261 }
262 #[repr(C)]
263 #[doc(hidden)]
264 pub struct IInitializeWithStream_abi(
265     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
266     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
267     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
268     #[cfg(feature = "Win32_System_Com")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstream: ::windows::runtime::RawPtr, grfmode: u32) -> ::windows::runtime::HRESULT,
269     #[cfg(not(feature = "Win32_System_Com"))] usize,
270 );
271 #[repr(transparent)]
272 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
273 pub struct INamedPropertyStore(::windows::runtime::IUnknown);
274 impl INamedPropertyStore {
275     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetNamedValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszname: Param0) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>276     pub unsafe fn GetNamedValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszname: Param0) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
277         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
278         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pszname.into_param().abi(), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
279     }
280     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
SetNamedValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszname: Param0, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>281     pub unsafe fn SetNamedValue<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszname: Param0, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
282         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pszname.into_param().abi(), ::std::mem::transmute(propvar)).ok()
283     }
GetNameCount(&self) -> ::windows::runtime::Result<u32>284     pub unsafe fn GetNameCount(&self) -> ::windows::runtime::Result<u32> {
285         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
286         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
287     }
288     #[cfg(feature = "Win32_Foundation")]
GetNameAt(&self, iprop: u32) -> ::windows::runtime::Result<super::super::Foundation::BSTR>289     pub unsafe fn GetNameAt(&self, iprop: u32) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
290         let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
291         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(iprop), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
292     }
293 }
294 unsafe impl ::windows::runtime::Interface for INamedPropertyStore {
295     type Vtable = INamedPropertyStore_abi;
296     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1902136079, 38832, 18276, [133, 119, 47, 19, 233, 138, 20, 34]);
297 }
298 impl ::std::convert::From<INamedPropertyStore> for ::windows::runtime::IUnknown {
from(value: INamedPropertyStore) -> Self299     fn from(value: INamedPropertyStore) -> Self {
300         unsafe { ::std::mem::transmute(value) }
301     }
302 }
303 impl ::std::convert::From<&INamedPropertyStore> for ::windows::runtime::IUnknown {
from(value: &INamedPropertyStore) -> Self304     fn from(value: &INamedPropertyStore) -> Self {
305         ::std::convert::From::from(::std::clone::Clone::clone(value))
306     }
307 }
308 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for INamedPropertyStore {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>309     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
310         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
311     }
312 }
313 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &INamedPropertyStore {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>314     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
315         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
316     }
317 }
318 #[repr(C)]
319 #[doc(hidden)]
320 pub struct INamedPropertyStore_abi(
321     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
322     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
323     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
324     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszname: super::super::Foundation::PWSTR, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
325     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
326     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszname: super::super::Foundation::PWSTR, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
327     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
328     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdwcount: *mut u32) -> ::windows::runtime::HRESULT,
329     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iprop: u32, pbstrname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
330     #[cfg(not(feature = "Win32_Foundation"))] usize,
331 );
332 #[repr(transparent)]
333 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
334 pub struct IObjectWithPropertyKey(::windows::runtime::IUnknown);
335 impl IObjectWithPropertyKey {
SetPropertyKey(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<()>336     pub unsafe fn SetPropertyKey(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<()> {
337         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(key)).ok()
338     }
GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY>339     pub unsafe fn GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY> {
340         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
341         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPERTYKEY>(result__)
342     }
343 }
344 unsafe impl ::windows::runtime::Interface for IObjectWithPropertyKey {
345     type Vtable = IObjectWithPropertyKey_abi;
346     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4228685991, 49942, 20434, [144, 49, 62, 98, 142, 109, 79, 35]);
347 }
348 impl ::std::convert::From<IObjectWithPropertyKey> for ::windows::runtime::IUnknown {
from(value: IObjectWithPropertyKey) -> Self349     fn from(value: IObjectWithPropertyKey) -> Self {
350         unsafe { ::std::mem::transmute(value) }
351     }
352 }
353 impl ::std::convert::From<&IObjectWithPropertyKey> for ::windows::runtime::IUnknown {
from(value: &IObjectWithPropertyKey) -> Self354     fn from(value: &IObjectWithPropertyKey) -> Self {
355         ::std::convert::From::from(::std::clone::Clone::clone(value))
356     }
357 }
358 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IObjectWithPropertyKey {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>359     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
360         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
361     }
362 }
363 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IObjectWithPropertyKey {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>364     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
365         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
366     }
367 }
368 #[repr(C)]
369 #[doc(hidden)]
370 pub struct IObjectWithPropertyKey_abi(
371     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
372     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
373     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
374     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY) -> ::windows::runtime::HRESULT,
375     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT,
376 );
377 #[repr(transparent)]
378 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
379 pub struct IPersistSerializedPropStorage(::windows::runtime::IUnknown);
380 impl IPersistSerializedPropStorage {
SetFlags(&self, flags: i32) -> ::windows::runtime::Result<()>381     pub unsafe fn SetFlags(&self, flags: i32) -> ::windows::runtime::Result<()> {
382         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(flags)).ok()
383     }
SetPropertyStorage(&self, psps: *const SERIALIZEDPROPSTORAGE, cb: u32) -> ::windows::runtime::Result<()>384     pub unsafe fn SetPropertyStorage(&self, psps: *const SERIALIZEDPROPSTORAGE, cb: u32) -> ::windows::runtime::Result<()> {
385         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(psps), ::std::mem::transmute(cb)).ok()
386     }
GetPropertyStorage(&self, ppsps: *mut *mut SERIALIZEDPROPSTORAGE, pcb: *mut u32) -> ::windows::runtime::Result<()>387     pub unsafe fn GetPropertyStorage(&self, ppsps: *mut *mut SERIALIZEDPROPSTORAGE, pcb: *mut u32) -> ::windows::runtime::Result<()> {
388         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppsps), ::std::mem::transmute(pcb)).ok()
389     }
390 }
391 unsafe impl ::windows::runtime::Interface for IPersistSerializedPropStorage {
392     type Vtable = IPersistSerializedPropStorage_abi;
393     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3810045271, 2720, 17679, [172, 165, 111, 171, 113, 3, 217, 23]);
394 }
395 impl ::std::convert::From<IPersistSerializedPropStorage> for ::windows::runtime::IUnknown {
from(value: IPersistSerializedPropStorage) -> Self396     fn from(value: IPersistSerializedPropStorage) -> Self {
397         unsafe { ::std::mem::transmute(value) }
398     }
399 }
400 impl ::std::convert::From<&IPersistSerializedPropStorage> for ::windows::runtime::IUnknown {
from(value: &IPersistSerializedPropStorage) -> Self401     fn from(value: &IPersistSerializedPropStorage) -> Self {
402         ::std::convert::From::from(::std::clone::Clone::clone(value))
403     }
404 }
405 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPersistSerializedPropStorage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>406     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
407         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
408     }
409 }
410 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPersistSerializedPropStorage {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>411     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
412         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
413     }
414 }
415 #[repr(C)]
416 #[doc(hidden)]
417 pub struct IPersistSerializedPropStorage_abi(
418     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
419     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
420     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
421     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, flags: i32) -> ::windows::runtime::HRESULT,
422     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psps: *const SERIALIZEDPROPSTORAGE, cb: u32) -> ::windows::runtime::HRESULT,
423     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppsps: *mut *mut SERIALIZEDPROPSTORAGE, pcb: *mut u32) -> ::windows::runtime::HRESULT,
424 );
425 #[repr(transparent)]
426 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
427 pub struct IPersistSerializedPropStorage2(::windows::runtime::IUnknown);
428 impl IPersistSerializedPropStorage2 {
SetFlags(&self, flags: i32) -> ::windows::runtime::Result<()>429     pub unsafe fn SetFlags(&self, flags: i32) -> ::windows::runtime::Result<()> {
430         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(flags)).ok()
431     }
SetPropertyStorage(&self, psps: *const SERIALIZEDPROPSTORAGE, cb: u32) -> ::windows::runtime::Result<()>432     pub unsafe fn SetPropertyStorage(&self, psps: *const SERIALIZEDPROPSTORAGE, cb: u32) -> ::windows::runtime::Result<()> {
433         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(psps), ::std::mem::transmute(cb)).ok()
434     }
GetPropertyStorage(&self, ppsps: *mut *mut SERIALIZEDPROPSTORAGE, pcb: *mut u32) -> ::windows::runtime::Result<()>435     pub unsafe fn GetPropertyStorage(&self, ppsps: *mut *mut SERIALIZEDPROPSTORAGE, pcb: *mut u32) -> ::windows::runtime::Result<()> {
436         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppsps), ::std::mem::transmute(pcb)).ok()
437     }
GetPropertyStorageSize(&self) -> ::windows::runtime::Result<u32>438     pub unsafe fn GetPropertyStorageSize(&self) -> ::windows::runtime::Result<u32> {
439         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
440         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
441     }
GetPropertyStorageBuffer(&self, psps: *mut SERIALIZEDPROPSTORAGE, cb: u32, pcbwritten: *mut u32) -> ::windows::runtime::Result<()>442     pub unsafe fn GetPropertyStorageBuffer(&self, psps: *mut SERIALIZEDPROPSTORAGE, cb: u32, pcbwritten: *mut u32) -> ::windows::runtime::Result<()> {
443         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(psps), ::std::mem::transmute(cb), ::std::mem::transmute(pcbwritten)).ok()
444     }
445 }
446 unsafe impl ::windows::runtime::Interface for IPersistSerializedPropStorage2 {
447     type Vtable = IPersistSerializedPropStorage2_abi;
448     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2012215912, 20376, 17254, [186, 114, 87, 59, 61, 136, 5, 113]);
449 }
450 impl ::std::convert::From<IPersistSerializedPropStorage2> for ::windows::runtime::IUnknown {
from(value: IPersistSerializedPropStorage2) -> Self451     fn from(value: IPersistSerializedPropStorage2) -> Self {
452         unsafe { ::std::mem::transmute(value) }
453     }
454 }
455 impl ::std::convert::From<&IPersistSerializedPropStorage2> for ::windows::runtime::IUnknown {
from(value: &IPersistSerializedPropStorage2) -> Self456     fn from(value: &IPersistSerializedPropStorage2) -> Self {
457         ::std::convert::From::from(::std::clone::Clone::clone(value))
458     }
459 }
460 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPersistSerializedPropStorage2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>461     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
462         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
463     }
464 }
465 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPersistSerializedPropStorage2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>466     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
467         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
468     }
469 }
470 impl ::std::convert::From<IPersistSerializedPropStorage2> for IPersistSerializedPropStorage {
from(value: IPersistSerializedPropStorage2) -> Self471     fn from(value: IPersistSerializedPropStorage2) -> Self {
472         unsafe { ::std::mem::transmute(value) }
473     }
474 }
475 impl ::std::convert::From<&IPersistSerializedPropStorage2> for IPersistSerializedPropStorage {
from(value: &IPersistSerializedPropStorage2) -> Self476     fn from(value: &IPersistSerializedPropStorage2) -> Self {
477         ::std::convert::From::from(::std::clone::Clone::clone(value))
478     }
479 }
480 impl<'a> ::windows::runtime::IntoParam<'a, IPersistSerializedPropStorage> for IPersistSerializedPropStorage2 {
into_param(self) -> ::windows::runtime::Param<'a, IPersistSerializedPropStorage>481     fn into_param(self) -> ::windows::runtime::Param<'a, IPersistSerializedPropStorage> {
482         ::windows::runtime::Param::Owned(::std::convert::Into::<IPersistSerializedPropStorage>::into(self))
483     }
484 }
485 impl<'a> ::windows::runtime::IntoParam<'a, IPersistSerializedPropStorage> for &IPersistSerializedPropStorage2 {
into_param(self) -> ::windows::runtime::Param<'a, IPersistSerializedPropStorage>486     fn into_param(self) -> ::windows::runtime::Param<'a, IPersistSerializedPropStorage> {
487         ::windows::runtime::Param::Owned(::std::convert::Into::<IPersistSerializedPropStorage>::into(::std::clone::Clone::clone(self)))
488     }
489 }
490 #[repr(C)]
491 #[doc(hidden)]
492 pub struct IPersistSerializedPropStorage2_abi(
493     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
494     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
495     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
496     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, flags: i32) -> ::windows::runtime::HRESULT,
497     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psps: *const SERIALIZEDPROPSTORAGE, cb: u32) -> ::windows::runtime::HRESULT,
498     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppsps: *mut *mut SERIALIZEDPROPSTORAGE, pcb: *mut u32) -> ::windows::runtime::HRESULT,
499     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcb: *mut u32) -> ::windows::runtime::HRESULT,
500     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psps: *mut SERIALIZEDPROPSTORAGE, cb: u32, pcbwritten: *mut u32) -> ::windows::runtime::HRESULT,
501 );
502 #[repr(transparent)]
503 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
504 pub struct IPropertyChange(::windows::runtime::IUnknown);
505 impl IPropertyChange {
SetPropertyKey(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<()>506     pub unsafe fn SetPropertyKey(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<()> {
507         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(key)).ok()
508     }
GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY>509     pub unsafe fn GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY> {
510         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
511         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPERTYKEY>(result__)
512     }
513     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
ApplyToPropVariant(&self, propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>514     pub unsafe fn ApplyToPropVariant(&self, propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
515         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
516         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvarin), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
517     }
518 }
519 unsafe impl ::windows::runtime::Interface for IPropertyChange {
520     type Vtable = IPropertyChange_abi;
521     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4179082378, 7098, 17528, [162, 69, 27, 222, 3, 235, 148, 49]);
522 }
523 impl ::std::convert::From<IPropertyChange> for ::windows::runtime::IUnknown {
from(value: IPropertyChange) -> Self524     fn from(value: IPropertyChange) -> Self {
525         unsafe { ::std::mem::transmute(value) }
526     }
527 }
528 impl ::std::convert::From<&IPropertyChange> for ::windows::runtime::IUnknown {
from(value: &IPropertyChange) -> Self529     fn from(value: &IPropertyChange) -> Self {
530         ::std::convert::From::from(::std::clone::Clone::clone(value))
531     }
532 }
533 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyChange {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>534     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
535         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
536     }
537 }
538 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyChange {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>539     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
540         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
541     }
542 }
543 impl ::std::convert::From<IPropertyChange> for IObjectWithPropertyKey {
from(value: IPropertyChange) -> Self544     fn from(value: IPropertyChange) -> Self {
545         unsafe { ::std::mem::transmute(value) }
546     }
547 }
548 impl ::std::convert::From<&IPropertyChange> for IObjectWithPropertyKey {
from(value: &IPropertyChange) -> Self549     fn from(value: &IPropertyChange) -> Self {
550         ::std::convert::From::from(::std::clone::Clone::clone(value))
551     }
552 }
553 impl<'a> ::windows::runtime::IntoParam<'a, IObjectWithPropertyKey> for IPropertyChange {
into_param(self) -> ::windows::runtime::Param<'a, IObjectWithPropertyKey>554     fn into_param(self) -> ::windows::runtime::Param<'a, IObjectWithPropertyKey> {
555         ::windows::runtime::Param::Owned(::std::convert::Into::<IObjectWithPropertyKey>::into(self))
556     }
557 }
558 impl<'a> ::windows::runtime::IntoParam<'a, IObjectWithPropertyKey> for &IPropertyChange {
into_param(self) -> ::windows::runtime::Param<'a, IObjectWithPropertyKey>559     fn into_param(self) -> ::windows::runtime::Param<'a, IObjectWithPropertyKey> {
560         ::windows::runtime::Param::Owned(::std::convert::Into::<IObjectWithPropertyKey>::into(::std::clone::Clone::clone(self)))
561     }
562 }
563 #[repr(C)]
564 #[doc(hidden)]
565 pub struct IPropertyChange_abi(
566     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
567     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
568     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
569     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY) -> ::windows::runtime::HRESULT,
570     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT,
571     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppropvarout: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
572     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
573 );
574 #[repr(transparent)]
575 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
576 pub struct IPropertyChangeArray(::windows::runtime::IUnknown);
577 impl IPropertyChangeArray {
GetCount(&self) -> ::windows::runtime::Result<u32>578     pub unsafe fn GetCount(&self) -> ::windows::runtime::Result<u32> {
579         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
580         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
581     }
GetAt<T: ::windows::runtime::Interface>(&self, iindex: u32) -> ::windows::runtime::Result<T>582     pub unsafe fn GetAt<T: ::windows::runtime::Interface>(&self, iindex: u32) -> ::windows::runtime::Result<T> {
583         let mut result__ = ::std::option::Option::None;
584         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(iindex), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
585     }
InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, IPropertyChange>>(&self, iindex: u32, ppropchange: Param1) -> ::windows::runtime::Result<()>586     pub unsafe fn InsertAt<'a, Param1: ::windows::runtime::IntoParam<'a, IPropertyChange>>(&self, iindex: u32, ppropchange: Param1) -> ::windows::runtime::Result<()> {
587         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(iindex), ppropchange.into_param().abi()).ok()
588     }
Append<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyChange>>(&self, ppropchange: Param0) -> ::windows::runtime::Result<()>589     pub unsafe fn Append<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyChange>>(&self, ppropchange: Param0) -> ::windows::runtime::Result<()> {
590         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ppropchange.into_param().abi()).ok()
591     }
AppendOrReplace<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyChange>>(&self, ppropchange: Param0) -> ::windows::runtime::Result<()>592     pub unsafe fn AppendOrReplace<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyChange>>(&self, ppropchange: Param0) -> ::windows::runtime::Result<()> {
593         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ppropchange.into_param().abi()).ok()
594     }
RemoveAt(&self, iindex: u32) -> ::windows::runtime::Result<()>595     pub unsafe fn RemoveAt(&self, iindex: u32) -> ::windows::runtime::Result<()> {
596         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(iindex)).ok()
597     }
IsKeyInArray(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<()>598     pub unsafe fn IsKeyInArray(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<()> {
599         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(key)).ok()
600     }
601 }
602 unsafe impl ::windows::runtime::Interface for IPropertyChangeArray {
603     type Vtable = IPropertyChangeArray_abi;
604     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(940530861, 7006, 17138, [128, 93, 99, 127, 211, 146, 211, 30]);
605 }
606 impl ::std::convert::From<IPropertyChangeArray> for ::windows::runtime::IUnknown {
from(value: IPropertyChangeArray) -> Self607     fn from(value: IPropertyChangeArray) -> Self {
608         unsafe { ::std::mem::transmute(value) }
609     }
610 }
611 impl ::std::convert::From<&IPropertyChangeArray> for ::windows::runtime::IUnknown {
from(value: &IPropertyChangeArray) -> Self612     fn from(value: &IPropertyChangeArray) -> Self {
613         ::std::convert::From::from(::std::clone::Clone::clone(value))
614     }
615 }
616 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyChangeArray {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>617     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
618         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
619     }
620 }
621 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyChangeArray {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>622     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
623         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
624     }
625 }
626 #[repr(C)]
627 #[doc(hidden)]
628 pub struct IPropertyChangeArray_abi(
629     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
630     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
631     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
632     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcoperations: *mut u32) -> ::windows::runtime::HRESULT,
633     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iindex: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
634     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iindex: u32, ppropchange: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
635     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropchange: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
636     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropchange: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
637     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iindex: u32) -> ::windows::runtime::HRESULT,
638     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY) -> ::windows::runtime::HRESULT,
639 );
640 #[repr(transparent)]
641 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
642 pub struct IPropertyDescription(::windows::runtime::IUnknown);
643 impl IPropertyDescription {
GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY>644     pub unsafe fn GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY> {
645         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
646         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPERTYKEY>(result__)
647     }
648     #[cfg(feature = "Win32_Foundation")]
GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>649     pub unsafe fn GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
650         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
651         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
652     }
GetPropertyType(&self) -> ::windows::runtime::Result<u16>653     pub unsafe fn GetPropertyType(&self) -> ::windows::runtime::Result<u16> {
654         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
655         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
656     }
657     #[cfg(feature = "Win32_Foundation")]
GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>658     pub unsafe fn GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
659         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
660         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
661     }
662     #[cfg(feature = "Win32_Foundation")]
GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>663     pub unsafe fn GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
664         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
665         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
666     }
GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS>667     pub unsafe fn GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS> {
668         let mut result__: <PROPDESC_TYPE_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
669         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(mask), &mut result__).from_abi::<PROPDESC_TYPE_FLAGS>(result__)
670     }
GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS>671     pub unsafe fn GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS> {
672         let mut result__: <PROPDESC_VIEW_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
673         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_VIEW_FLAGS>(result__)
674     }
GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32>675     pub unsafe fn GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32> {
676         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
677         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
678     }
GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE>679     pub unsafe fn GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE> {
680         let mut result__: <PROPDESC_DISPLAYTYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
681         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_DISPLAYTYPE>(result__)
682     }
GetColumnState(&self) -> ::windows::runtime::Result<u32>683     pub unsafe fn GetColumnState(&self) -> ::windows::runtime::Result<u32> {
684         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
685         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
686     }
GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE>687     pub unsafe fn GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE> {
688         let mut result__: <PROPDESC_GROUPING_RANGE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
689         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_GROUPING_RANGE>(result__)
690     }
GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE>691     pub unsafe fn GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE> {
692         let mut result__: <PROPDESC_RELATIVEDESCRIPTION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
693         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_RELATIVEDESCRIPTION_TYPE>(result__)
694     }
695     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()>696     pub unsafe fn GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()> {
697         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar1), ::std::mem::transmute(propvar2), ::std::mem::transmute(ppszdesc1), ::std::mem::transmute(ppszdesc2)).ok()
698     }
GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION>699     pub unsafe fn GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION> {
700         let mut result__: <PROPDESC_SORTDESCRIPTION as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
701         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_SORTDESCRIPTION>(result__)
702     }
703     #[cfg(feature = "Win32_Foundation")]
GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>704     pub unsafe fn GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
705         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
706         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), fdescending.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
707     }
GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE>708     pub unsafe fn GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE> {
709         let mut result__: <PROPDESC_AGGREGATION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
710         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_AGGREGATION_TYPE>(result__)
711     }
712     #[cfg(feature = "Win32_System_Search")]
GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()>713     pub unsafe fn GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()> {
714         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcontype), ::std::mem::transmute(popdefault)).ok()
715     }
GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T>716     pub unsafe fn GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T> {
717         let mut result__ = ::std::option::Option::None;
718         (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
719     }
720     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>721     pub unsafe fn CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
722         (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppropvar)).ok()
723     }
724     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>725     pub unsafe fn FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
726         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
727         (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar), ::std::mem::transmute(pdfflags), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
728     }
729     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>730     pub unsafe fn IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
731         (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar)).ok()
732     }
733 }
734 unsafe impl ::windows::runtime::Interface for IPropertyDescription {
735     type Vtable = IPropertyDescription_abi;
736     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1870255448, 16022, 17737, [161, 209, 125, 117, 210, 40, 136, 20]);
737 }
738 impl ::std::convert::From<IPropertyDescription> for ::windows::runtime::IUnknown {
from(value: IPropertyDescription) -> Self739     fn from(value: IPropertyDescription) -> Self {
740         unsafe { ::std::mem::transmute(value) }
741     }
742 }
743 impl ::std::convert::From<&IPropertyDescription> for ::windows::runtime::IUnknown {
from(value: &IPropertyDescription) -> Self744     fn from(value: &IPropertyDescription) -> Self {
745         ::std::convert::From::from(::std::clone::Clone::clone(value))
746     }
747 }
748 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyDescription {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>749     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
750         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
751     }
752 }
753 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyDescription {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>754     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
755         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
756     }
757 }
758 #[repr(C)]
759 #[doc(hidden)]
760 pub struct IPropertyDescription_abi(
761     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
762     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
763     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
764     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT,
765     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
766     #[cfg(not(feature = "Win32_Foundation"))] usize,
767     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pvartype: *mut u16) -> ::windows::runtime::HRESULT,
768     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
769     #[cfg(not(feature = "Win32_Foundation"))] usize,
770     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszinvite: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
771     #[cfg(not(feature = "Win32_Foundation"))] usize,
772     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, mask: PROPDESC_TYPE_FLAGS, ppdtflags: *mut PROPDESC_TYPE_FLAGS) -> ::windows::runtime::HRESULT,
773     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppdvflags: *mut PROPDESC_VIEW_FLAGS) -> ::windows::runtime::HRESULT,
774     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcxchars: *mut u32) -> ::windows::runtime::HRESULT,
775     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdisplaytype: *mut PROPDESC_DISPLAYTYPE) -> ::windows::runtime::HRESULT,
776     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcsflags: *mut u32) -> ::windows::runtime::HRESULT,
777     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pgr: *mut PROPDESC_GROUPING_RANGE) -> ::windows::runtime::HRESULT,
778     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prdt: *mut PROPDESC_RELATIVEDESCRIPTION_TYPE) -> ::windows::runtime::HRESULT,
779     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
780     pub  unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar1: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, propvar2: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
781     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
782     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psd: *mut PROPDESC_SORTDESCRIPTION) -> ::windows::runtime::HRESULT,
783     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fdescending: super::super::Foundation::BOOL, ppszdescription: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
784     #[cfg(not(feature = "Win32_Foundation"))] usize,
785     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paggtype: *mut PROPDESC_AGGREGATION_TYPE) -> ::windows::runtime::HRESULT,
786     #[cfg(feature = "Win32_System_Search")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::HRESULT,
787     #[cfg(not(feature = "Win32_System_Search"))] usize,
788     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
789     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
790     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
791     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdfflags: PROPDESC_FORMAT_FLAGS, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
792     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
793     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
794     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
795 );
796 #[repr(transparent)]
797 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
798 pub struct IPropertyDescription2(::windows::runtime::IUnknown);
799 impl IPropertyDescription2 {
GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY>800     pub unsafe fn GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY> {
801         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
802         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPERTYKEY>(result__)
803     }
804     #[cfg(feature = "Win32_Foundation")]
GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>805     pub unsafe fn GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
806         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
807         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
808     }
GetPropertyType(&self) -> ::windows::runtime::Result<u16>809     pub unsafe fn GetPropertyType(&self) -> ::windows::runtime::Result<u16> {
810         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
811         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
812     }
813     #[cfg(feature = "Win32_Foundation")]
GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>814     pub unsafe fn GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
815         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
816         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
817     }
818     #[cfg(feature = "Win32_Foundation")]
GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>819     pub unsafe fn GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
820         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
821         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
822     }
GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS>823     pub unsafe fn GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS> {
824         let mut result__: <PROPDESC_TYPE_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
825         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(mask), &mut result__).from_abi::<PROPDESC_TYPE_FLAGS>(result__)
826     }
GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS>827     pub unsafe fn GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS> {
828         let mut result__: <PROPDESC_VIEW_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
829         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_VIEW_FLAGS>(result__)
830     }
GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32>831     pub unsafe fn GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32> {
832         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
833         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
834     }
GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE>835     pub unsafe fn GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE> {
836         let mut result__: <PROPDESC_DISPLAYTYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
837         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_DISPLAYTYPE>(result__)
838     }
GetColumnState(&self) -> ::windows::runtime::Result<u32>839     pub unsafe fn GetColumnState(&self) -> ::windows::runtime::Result<u32> {
840         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
841         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
842     }
GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE>843     pub unsafe fn GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE> {
844         let mut result__: <PROPDESC_GROUPING_RANGE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
845         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_GROUPING_RANGE>(result__)
846     }
GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE>847     pub unsafe fn GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE> {
848         let mut result__: <PROPDESC_RELATIVEDESCRIPTION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
849         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_RELATIVEDESCRIPTION_TYPE>(result__)
850     }
851     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()>852     pub unsafe fn GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()> {
853         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar1), ::std::mem::transmute(propvar2), ::std::mem::transmute(ppszdesc1), ::std::mem::transmute(ppszdesc2)).ok()
854     }
GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION>855     pub unsafe fn GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION> {
856         let mut result__: <PROPDESC_SORTDESCRIPTION as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
857         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_SORTDESCRIPTION>(result__)
858     }
859     #[cfg(feature = "Win32_Foundation")]
GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>860     pub unsafe fn GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
861         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
862         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), fdescending.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
863     }
GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE>864     pub unsafe fn GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE> {
865         let mut result__: <PROPDESC_AGGREGATION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
866         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_AGGREGATION_TYPE>(result__)
867     }
868     #[cfg(feature = "Win32_System_Search")]
GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()>869     pub unsafe fn GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()> {
870         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcontype), ::std::mem::transmute(popdefault)).ok()
871     }
GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T>872     pub unsafe fn GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T> {
873         let mut result__ = ::std::option::Option::None;
874         (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
875     }
876     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>877     pub unsafe fn CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
878         (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppropvar)).ok()
879     }
880     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>881     pub unsafe fn FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
882         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
883         (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar), ::std::mem::transmute(pdfflags), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
884     }
885     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>886     pub unsafe fn IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
887         (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar)).ok()
888     }
889     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetImageReferenceForValue(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>890     pub unsafe fn GetImageReferenceForValue(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
891         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
892         (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
893     }
894 }
895 unsafe impl ::windows::runtime::Interface for IPropertyDescription2 {
896     type Vtable = IPropertyDescription2_abi;
897     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1473441261, 20578, 16398, [177, 7, 93, 174, 121, 254, 87, 166]);
898 }
899 impl ::std::convert::From<IPropertyDescription2> for ::windows::runtime::IUnknown {
from(value: IPropertyDescription2) -> Self900     fn from(value: IPropertyDescription2) -> Self {
901         unsafe { ::std::mem::transmute(value) }
902     }
903 }
904 impl ::std::convert::From<&IPropertyDescription2> for ::windows::runtime::IUnknown {
from(value: &IPropertyDescription2) -> Self905     fn from(value: &IPropertyDescription2) -> Self {
906         ::std::convert::From::from(::std::clone::Clone::clone(value))
907     }
908 }
909 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyDescription2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>910     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
911         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
912     }
913 }
914 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyDescription2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>915     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
916         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
917     }
918 }
919 impl ::std::convert::From<IPropertyDescription2> for IPropertyDescription {
from(value: IPropertyDescription2) -> Self920     fn from(value: IPropertyDescription2) -> Self {
921         unsafe { ::std::mem::transmute(value) }
922     }
923 }
924 impl ::std::convert::From<&IPropertyDescription2> for IPropertyDescription {
from(value: &IPropertyDescription2) -> Self925     fn from(value: &IPropertyDescription2) -> Self {
926         ::std::convert::From::from(::std::clone::Clone::clone(value))
927     }
928 }
929 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyDescription> for IPropertyDescription2 {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription>930     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription> {
931         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyDescription>::into(self))
932     }
933 }
934 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyDescription> for &IPropertyDescription2 {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription>935     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription> {
936         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyDescription>::into(::std::clone::Clone::clone(self)))
937     }
938 }
939 #[repr(C)]
940 #[doc(hidden)]
941 pub struct IPropertyDescription2_abi(
942     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
943     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
944     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
945     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT,
946     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
947     #[cfg(not(feature = "Win32_Foundation"))] usize,
948     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pvartype: *mut u16) -> ::windows::runtime::HRESULT,
949     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
950     #[cfg(not(feature = "Win32_Foundation"))] usize,
951     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszinvite: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
952     #[cfg(not(feature = "Win32_Foundation"))] usize,
953     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, mask: PROPDESC_TYPE_FLAGS, ppdtflags: *mut PROPDESC_TYPE_FLAGS) -> ::windows::runtime::HRESULT,
954     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppdvflags: *mut PROPDESC_VIEW_FLAGS) -> ::windows::runtime::HRESULT,
955     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcxchars: *mut u32) -> ::windows::runtime::HRESULT,
956     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdisplaytype: *mut PROPDESC_DISPLAYTYPE) -> ::windows::runtime::HRESULT,
957     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcsflags: *mut u32) -> ::windows::runtime::HRESULT,
958     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pgr: *mut PROPDESC_GROUPING_RANGE) -> ::windows::runtime::HRESULT,
959     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prdt: *mut PROPDESC_RELATIVEDESCRIPTION_TYPE) -> ::windows::runtime::HRESULT,
960     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
961     pub  unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar1: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, propvar2: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
962     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
963     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psd: *mut PROPDESC_SORTDESCRIPTION) -> ::windows::runtime::HRESULT,
964     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fdescending: super::super::Foundation::BOOL, ppszdescription: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
965     #[cfg(not(feature = "Win32_Foundation"))] usize,
966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paggtype: *mut PROPDESC_AGGREGATION_TYPE) -> ::windows::runtime::HRESULT,
967     #[cfg(feature = "Win32_System_Search")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::HRESULT,
968     #[cfg(not(feature = "Win32_System_Search"))] usize,
969     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
970     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
971     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
972     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdfflags: PROPDESC_FORMAT_FLAGS, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
973     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
974     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
975     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
976     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppszimageres: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
977     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
978 );
979 #[repr(transparent)]
980 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
981 pub struct IPropertyDescriptionAliasInfo(::windows::runtime::IUnknown);
982 impl IPropertyDescriptionAliasInfo {
GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY>983     pub unsafe fn GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY> {
984         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
985         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPERTYKEY>(result__)
986     }
987     #[cfg(feature = "Win32_Foundation")]
GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>988     pub unsafe fn GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
989         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
990         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
991     }
GetPropertyType(&self) -> ::windows::runtime::Result<u16>992     pub unsafe fn GetPropertyType(&self) -> ::windows::runtime::Result<u16> {
993         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
994         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
995     }
996     #[cfg(feature = "Win32_Foundation")]
GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>997     pub unsafe fn GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
998         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
999         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1000     }
1001     #[cfg(feature = "Win32_Foundation")]
GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1002     pub unsafe fn GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1003         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1004         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1005     }
GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS>1006     pub unsafe fn GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS> {
1007         let mut result__: <PROPDESC_TYPE_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1008         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(mask), &mut result__).from_abi::<PROPDESC_TYPE_FLAGS>(result__)
1009     }
GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS>1010     pub unsafe fn GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS> {
1011         let mut result__: <PROPDESC_VIEW_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1012         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_VIEW_FLAGS>(result__)
1013     }
GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32>1014     pub unsafe fn GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32> {
1015         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1016         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1017     }
GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE>1018     pub unsafe fn GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE> {
1019         let mut result__: <PROPDESC_DISPLAYTYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1020         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_DISPLAYTYPE>(result__)
1021     }
GetColumnState(&self) -> ::windows::runtime::Result<u32>1022     pub unsafe fn GetColumnState(&self) -> ::windows::runtime::Result<u32> {
1023         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1024         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1025     }
GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE>1026     pub unsafe fn GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE> {
1027         let mut result__: <PROPDESC_GROUPING_RANGE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1028         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_GROUPING_RANGE>(result__)
1029     }
GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE>1030     pub unsafe fn GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE> {
1031         let mut result__: <PROPDESC_RELATIVEDESCRIPTION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1032         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_RELATIVEDESCRIPTION_TYPE>(result__)
1033     }
1034     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()>1035     pub unsafe fn GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()> {
1036         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar1), ::std::mem::transmute(propvar2), ::std::mem::transmute(ppszdesc1), ::std::mem::transmute(ppszdesc2)).ok()
1037     }
GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION>1038     pub unsafe fn GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION> {
1039         let mut result__: <PROPDESC_SORTDESCRIPTION as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1040         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_SORTDESCRIPTION>(result__)
1041     }
1042     #[cfg(feature = "Win32_Foundation")]
GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1043     pub unsafe fn GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1044         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1045         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), fdescending.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1046     }
GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE>1047     pub unsafe fn GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE> {
1048         let mut result__: <PROPDESC_AGGREGATION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1049         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_AGGREGATION_TYPE>(result__)
1050     }
1051     #[cfg(feature = "Win32_System_Search")]
GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()>1052     pub unsafe fn GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()> {
1053         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcontype), ::std::mem::transmute(popdefault)).ok()
1054     }
GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T>1055     pub unsafe fn GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T> {
1056         let mut result__ = ::std::option::Option::None;
1057         (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
1058     }
1059     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>1060     pub unsafe fn CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
1061         (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppropvar)).ok()
1062     }
1063     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1064     pub unsafe fn FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1065         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1066         (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar), ::std::mem::transmute(pdfflags), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1067     }
1068     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>1069     pub unsafe fn IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
1070         (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar)).ok()
1071     }
GetSortByAlias<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T>1072     pub unsafe fn GetSortByAlias<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T> {
1073         let mut result__ = ::std::option::Option::None;
1074         (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
1075     }
GetAdditionalSortByAliases<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T>1076     pub unsafe fn GetAdditionalSortByAliases<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T> {
1077         let mut result__ = ::std::option::Option::None;
1078         (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
1079     }
1080 }
1081 unsafe impl ::windows::runtime::Interface for IPropertyDescriptionAliasInfo {
1082     type Vtable = IPropertyDescriptionAliasInfo_abi;
1083     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4134601980, 11001, 18173, [179, 45, 36, 60, 20, 4, 243, 209]);
1084 }
1085 impl ::std::convert::From<IPropertyDescriptionAliasInfo> for ::windows::runtime::IUnknown {
from(value: IPropertyDescriptionAliasInfo) -> Self1086     fn from(value: IPropertyDescriptionAliasInfo) -> Self {
1087         unsafe { ::std::mem::transmute(value) }
1088     }
1089 }
1090 impl ::std::convert::From<&IPropertyDescriptionAliasInfo> for ::windows::runtime::IUnknown {
from(value: &IPropertyDescriptionAliasInfo) -> Self1091     fn from(value: &IPropertyDescriptionAliasInfo) -> Self {
1092         ::std::convert::From::from(::std::clone::Clone::clone(value))
1093     }
1094 }
1095 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyDescriptionAliasInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1096     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1097         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1098     }
1099 }
1100 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyDescriptionAliasInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1101     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1102         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1103     }
1104 }
1105 impl ::std::convert::From<IPropertyDescriptionAliasInfo> for IPropertyDescription {
from(value: IPropertyDescriptionAliasInfo) -> Self1106     fn from(value: IPropertyDescriptionAliasInfo) -> Self {
1107         unsafe { ::std::mem::transmute(value) }
1108     }
1109 }
1110 impl ::std::convert::From<&IPropertyDescriptionAliasInfo> for IPropertyDescription {
from(value: &IPropertyDescriptionAliasInfo) -> Self1111     fn from(value: &IPropertyDescriptionAliasInfo) -> Self {
1112         ::std::convert::From::from(::std::clone::Clone::clone(value))
1113     }
1114 }
1115 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyDescription> for IPropertyDescriptionAliasInfo {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription>1116     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription> {
1117         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyDescription>::into(self))
1118     }
1119 }
1120 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyDescription> for &IPropertyDescriptionAliasInfo {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription>1121     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription> {
1122         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyDescription>::into(::std::clone::Clone::clone(self)))
1123     }
1124 }
1125 #[repr(C)]
1126 #[doc(hidden)]
1127 pub struct IPropertyDescriptionAliasInfo_abi(
1128     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1129     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1130     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1131     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT,
1132     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1133     #[cfg(not(feature = "Win32_Foundation"))] usize,
1134     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pvartype: *mut u16) -> ::windows::runtime::HRESULT,
1135     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1136     #[cfg(not(feature = "Win32_Foundation"))] usize,
1137     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszinvite: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1138     #[cfg(not(feature = "Win32_Foundation"))] usize,
1139     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, mask: PROPDESC_TYPE_FLAGS, ppdtflags: *mut PROPDESC_TYPE_FLAGS) -> ::windows::runtime::HRESULT,
1140     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppdvflags: *mut PROPDESC_VIEW_FLAGS) -> ::windows::runtime::HRESULT,
1141     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcxchars: *mut u32) -> ::windows::runtime::HRESULT,
1142     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdisplaytype: *mut PROPDESC_DISPLAYTYPE) -> ::windows::runtime::HRESULT,
1143     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcsflags: *mut u32) -> ::windows::runtime::HRESULT,
1144     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pgr: *mut PROPDESC_GROUPING_RANGE) -> ::windows::runtime::HRESULT,
1145     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prdt: *mut PROPDESC_RELATIVEDESCRIPTION_TYPE) -> ::windows::runtime::HRESULT,
1146     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
1147     pub  unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar1: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, propvar2: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1148     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1149     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psd: *mut PROPDESC_SORTDESCRIPTION) -> ::windows::runtime::HRESULT,
1150     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fdescending: super::super::Foundation::BOOL, ppszdescription: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1151     #[cfg(not(feature = "Win32_Foundation"))] usize,
1152     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paggtype: *mut PROPDESC_AGGREGATION_TYPE) -> ::windows::runtime::HRESULT,
1153     #[cfg(feature = "Win32_System_Search")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::HRESULT,
1154     #[cfg(not(feature = "Win32_System_Search"))] usize,
1155     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1156     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1157     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1158     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdfflags: PROPDESC_FORMAT_FLAGS, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1159     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1160     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1161     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1162     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1163     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1164 );
1165 #[repr(transparent)]
1166 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1167 pub struct IPropertyDescriptionList(::windows::runtime::IUnknown);
1168 impl IPropertyDescriptionList {
GetCount(&self) -> ::windows::runtime::Result<u32>1169     pub unsafe fn GetCount(&self) -> ::windows::runtime::Result<u32> {
1170         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1171         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1172     }
GetAt<T: ::windows::runtime::Interface>(&self, ielem: u32) -> ::windows::runtime::Result<T>1173     pub unsafe fn GetAt<T: ::windows::runtime::Interface>(&self, ielem: u32) -> ::windows::runtime::Result<T> {
1174         let mut result__ = ::std::option::Option::None;
1175         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(ielem), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
1176     }
1177 }
1178 unsafe impl ::windows::runtime::Interface for IPropertyDescriptionList {
1179     type Vtable = IPropertyDescriptionList_abi;
1180     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(530563536, 50075, 19238, [129, 127, 1, 25, 103, 211, 68, 14]);
1181 }
1182 impl ::std::convert::From<IPropertyDescriptionList> for ::windows::runtime::IUnknown {
from(value: IPropertyDescriptionList) -> Self1183     fn from(value: IPropertyDescriptionList) -> Self {
1184         unsafe { ::std::mem::transmute(value) }
1185     }
1186 }
1187 impl ::std::convert::From<&IPropertyDescriptionList> for ::windows::runtime::IUnknown {
from(value: &IPropertyDescriptionList) -> Self1188     fn from(value: &IPropertyDescriptionList) -> Self {
1189         ::std::convert::From::from(::std::clone::Clone::clone(value))
1190     }
1191 }
1192 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyDescriptionList {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1193     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1194         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1195     }
1196 }
1197 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyDescriptionList {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1198     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1199         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1200     }
1201 }
1202 #[repr(C)]
1203 #[doc(hidden)]
1204 pub struct IPropertyDescriptionList_abi(
1205     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1206     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1207     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1208     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcelem: *mut u32) -> ::windows::runtime::HRESULT,
1209     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ielem: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1210 );
1211 #[repr(transparent)]
1212 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1213 pub struct IPropertyDescriptionRelatedPropertyInfo(::windows::runtime::IUnknown);
1214 impl IPropertyDescriptionRelatedPropertyInfo {
GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY>1215     pub unsafe fn GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY> {
1216         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1217         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPERTYKEY>(result__)
1218     }
1219     #[cfg(feature = "Win32_Foundation")]
GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1220     pub unsafe fn GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1221         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1222         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1223     }
GetPropertyType(&self) -> ::windows::runtime::Result<u16>1224     pub unsafe fn GetPropertyType(&self) -> ::windows::runtime::Result<u16> {
1225         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1226         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
1227     }
1228     #[cfg(feature = "Win32_Foundation")]
GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1229     pub unsafe fn GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1230         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1231         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1232     }
1233     #[cfg(feature = "Win32_Foundation")]
GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1234     pub unsafe fn GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1235         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1236         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1237     }
GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS>1238     pub unsafe fn GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS> {
1239         let mut result__: <PROPDESC_TYPE_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1240         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(mask), &mut result__).from_abi::<PROPDESC_TYPE_FLAGS>(result__)
1241     }
GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS>1242     pub unsafe fn GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS> {
1243         let mut result__: <PROPDESC_VIEW_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1244         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_VIEW_FLAGS>(result__)
1245     }
GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32>1246     pub unsafe fn GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32> {
1247         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1248         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1249     }
GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE>1250     pub unsafe fn GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE> {
1251         let mut result__: <PROPDESC_DISPLAYTYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1252         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_DISPLAYTYPE>(result__)
1253     }
GetColumnState(&self) -> ::windows::runtime::Result<u32>1254     pub unsafe fn GetColumnState(&self) -> ::windows::runtime::Result<u32> {
1255         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1256         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1257     }
GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE>1258     pub unsafe fn GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE> {
1259         let mut result__: <PROPDESC_GROUPING_RANGE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1260         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_GROUPING_RANGE>(result__)
1261     }
GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE>1262     pub unsafe fn GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE> {
1263         let mut result__: <PROPDESC_RELATIVEDESCRIPTION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1264         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_RELATIVEDESCRIPTION_TYPE>(result__)
1265     }
1266     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()>1267     pub unsafe fn GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()> {
1268         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar1), ::std::mem::transmute(propvar2), ::std::mem::transmute(ppszdesc1), ::std::mem::transmute(ppszdesc2)).ok()
1269     }
GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION>1270     pub unsafe fn GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION> {
1271         let mut result__: <PROPDESC_SORTDESCRIPTION as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1272         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_SORTDESCRIPTION>(result__)
1273     }
1274     #[cfg(feature = "Win32_Foundation")]
GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1275     pub unsafe fn GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1276         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1277         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), fdescending.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1278     }
GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE>1279     pub unsafe fn GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE> {
1280         let mut result__: <PROPDESC_AGGREGATION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1281         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_AGGREGATION_TYPE>(result__)
1282     }
1283     #[cfg(feature = "Win32_System_Search")]
GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()>1284     pub unsafe fn GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()> {
1285         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcontype), ::std::mem::transmute(popdefault)).ok()
1286     }
GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T>1287     pub unsafe fn GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T> {
1288         let mut result__ = ::std::option::Option::None;
1289         (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
1290     }
1291     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>1292     pub unsafe fn CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
1293         (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppropvar)).ok()
1294     }
1295     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1296     pub unsafe fn FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1297         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1298         (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar), ::std::mem::transmute(pdfflags), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1299     }
1300     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>1301     pub unsafe fn IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
1302         (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar)).ok()
1303     }
1304     #[cfg(feature = "Win32_Foundation")]
GetRelatedProperty<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, T: ::windows::runtime::Interface>(&self, pszrelationshipname: Param0) -> ::windows::runtime::Result<T>1305     pub unsafe fn GetRelatedProperty<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, T: ::windows::runtime::Interface>(&self, pszrelationshipname: Param0) -> ::windows::runtime::Result<T> {
1306         let mut result__ = ::std::option::Option::None;
1307         (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), pszrelationshipname.into_param().abi(), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
1308     }
1309 }
1310 unsafe impl ::windows::runtime::Interface for IPropertyDescriptionRelatedPropertyInfo {
1311     type Vtable = IPropertyDescriptionRelatedPropertyInfo_abi;
1312     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1349751796, 10813, 19040, [181, 158, 217, 199, 87, 22, 194, 221]);
1313 }
1314 impl ::std::convert::From<IPropertyDescriptionRelatedPropertyInfo> for ::windows::runtime::IUnknown {
from(value: IPropertyDescriptionRelatedPropertyInfo) -> Self1315     fn from(value: IPropertyDescriptionRelatedPropertyInfo) -> Self {
1316         unsafe { ::std::mem::transmute(value) }
1317     }
1318 }
1319 impl ::std::convert::From<&IPropertyDescriptionRelatedPropertyInfo> for ::windows::runtime::IUnknown {
from(value: &IPropertyDescriptionRelatedPropertyInfo) -> Self1320     fn from(value: &IPropertyDescriptionRelatedPropertyInfo) -> Self {
1321         ::std::convert::From::from(::std::clone::Clone::clone(value))
1322     }
1323 }
1324 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyDescriptionRelatedPropertyInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1325     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1326         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1327     }
1328 }
1329 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyDescriptionRelatedPropertyInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1330     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1331         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1332     }
1333 }
1334 impl ::std::convert::From<IPropertyDescriptionRelatedPropertyInfo> for IPropertyDescription {
from(value: IPropertyDescriptionRelatedPropertyInfo) -> Self1335     fn from(value: IPropertyDescriptionRelatedPropertyInfo) -> Self {
1336         unsafe { ::std::mem::transmute(value) }
1337     }
1338 }
1339 impl ::std::convert::From<&IPropertyDescriptionRelatedPropertyInfo> for IPropertyDescription {
from(value: &IPropertyDescriptionRelatedPropertyInfo) -> Self1340     fn from(value: &IPropertyDescriptionRelatedPropertyInfo) -> Self {
1341         ::std::convert::From::from(::std::clone::Clone::clone(value))
1342     }
1343 }
1344 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyDescription> for IPropertyDescriptionRelatedPropertyInfo {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription>1345     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription> {
1346         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyDescription>::into(self))
1347     }
1348 }
1349 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyDescription> for &IPropertyDescriptionRelatedPropertyInfo {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription>1350     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription> {
1351         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyDescription>::into(::std::clone::Clone::clone(self)))
1352     }
1353 }
1354 #[repr(C)]
1355 #[doc(hidden)]
1356 pub struct IPropertyDescriptionRelatedPropertyInfo_abi(
1357     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1358     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1359     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1360     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT,
1361     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1362     #[cfg(not(feature = "Win32_Foundation"))] usize,
1363     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pvartype: *mut u16) -> ::windows::runtime::HRESULT,
1364     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1365     #[cfg(not(feature = "Win32_Foundation"))] usize,
1366     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszinvite: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1367     #[cfg(not(feature = "Win32_Foundation"))] usize,
1368     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, mask: PROPDESC_TYPE_FLAGS, ppdtflags: *mut PROPDESC_TYPE_FLAGS) -> ::windows::runtime::HRESULT,
1369     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppdvflags: *mut PROPDESC_VIEW_FLAGS) -> ::windows::runtime::HRESULT,
1370     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcxchars: *mut u32) -> ::windows::runtime::HRESULT,
1371     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdisplaytype: *mut PROPDESC_DISPLAYTYPE) -> ::windows::runtime::HRESULT,
1372     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcsflags: *mut u32) -> ::windows::runtime::HRESULT,
1373     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pgr: *mut PROPDESC_GROUPING_RANGE) -> ::windows::runtime::HRESULT,
1374     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prdt: *mut PROPDESC_RELATIVEDESCRIPTION_TYPE) -> ::windows::runtime::HRESULT,
1375     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
1376     pub  unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar1: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, propvar2: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1377     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1378     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psd: *mut PROPDESC_SORTDESCRIPTION) -> ::windows::runtime::HRESULT,
1379     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fdescending: super::super::Foundation::BOOL, ppszdescription: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1380     #[cfg(not(feature = "Win32_Foundation"))] usize,
1381     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paggtype: *mut PROPDESC_AGGREGATION_TYPE) -> ::windows::runtime::HRESULT,
1382     #[cfg(feature = "Win32_System_Search")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::HRESULT,
1383     #[cfg(not(feature = "Win32_System_Search"))] usize,
1384     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1385     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1386     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1387     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdfflags: PROPDESC_FORMAT_FLAGS, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1388     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1389     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1390     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1391     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszrelationshipname: super::super::Foundation::PWSTR, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1392     #[cfg(not(feature = "Win32_Foundation"))] usize,
1393 );
1394 #[repr(transparent)]
1395 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1396 pub struct IPropertyDescriptionSearchInfo(::windows::runtime::IUnknown);
1397 impl IPropertyDescriptionSearchInfo {
GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY>1398     pub unsafe fn GetPropertyKey(&self) -> ::windows::runtime::Result<PROPERTYKEY> {
1399         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1400         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPERTYKEY>(result__)
1401     }
1402     #[cfg(feature = "Win32_Foundation")]
GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1403     pub unsafe fn GetCanonicalName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1404         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1405         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1406     }
GetPropertyType(&self) -> ::windows::runtime::Result<u16>1407     pub unsafe fn GetPropertyType(&self) -> ::windows::runtime::Result<u16> {
1408         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1409         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u16>(result__)
1410     }
1411     #[cfg(feature = "Win32_Foundation")]
GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1412     pub unsafe fn GetDisplayName(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1413         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1414         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1415     }
1416     #[cfg(feature = "Win32_Foundation")]
GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1417     pub unsafe fn GetEditInvitation(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1418         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1419         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1420     }
GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS>1421     pub unsafe fn GetTypeFlags(&self, mask: PROPDESC_TYPE_FLAGS) -> ::windows::runtime::Result<PROPDESC_TYPE_FLAGS> {
1422         let mut result__: <PROPDESC_TYPE_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1423         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(mask), &mut result__).from_abi::<PROPDESC_TYPE_FLAGS>(result__)
1424     }
GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS>1425     pub unsafe fn GetViewFlags(&self) -> ::windows::runtime::Result<PROPDESC_VIEW_FLAGS> {
1426         let mut result__: <PROPDESC_VIEW_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1427         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_VIEW_FLAGS>(result__)
1428     }
GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32>1429     pub unsafe fn GetDefaultColumnWidth(&self) -> ::windows::runtime::Result<u32> {
1430         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1431         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1432     }
GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE>1433     pub unsafe fn GetDisplayType(&self) -> ::windows::runtime::Result<PROPDESC_DISPLAYTYPE> {
1434         let mut result__: <PROPDESC_DISPLAYTYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1435         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_DISPLAYTYPE>(result__)
1436     }
GetColumnState(&self) -> ::windows::runtime::Result<u32>1437     pub unsafe fn GetColumnState(&self) -> ::windows::runtime::Result<u32> {
1438         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1439         (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1440     }
GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE>1441     pub unsafe fn GetGroupingRange(&self) -> ::windows::runtime::Result<PROPDESC_GROUPING_RANGE> {
1442         let mut result__: <PROPDESC_GROUPING_RANGE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1443         (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_GROUPING_RANGE>(result__)
1444     }
GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE>1445     pub unsafe fn GetRelativeDescriptionType(&self) -> ::windows::runtime::Result<PROPDESC_RELATIVEDESCRIPTION_TYPE> {
1446         let mut result__: <PROPDESC_RELATIVEDESCRIPTION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1447         (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_RELATIVEDESCRIPTION_TYPE>(result__)
1448     }
1449     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()>1450     pub unsafe fn GetRelativeDescription(&self, propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::Result<()> {
1451         (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar1), ::std::mem::transmute(propvar2), ::std::mem::transmute(ppszdesc1), ::std::mem::transmute(ppszdesc2)).ok()
1452     }
GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION>1453     pub unsafe fn GetSortDescription(&self) -> ::windows::runtime::Result<PROPDESC_SORTDESCRIPTION> {
1454         let mut result__: <PROPDESC_SORTDESCRIPTION as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1455         (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_SORTDESCRIPTION>(result__)
1456     }
1457     #[cfg(feature = "Win32_Foundation")]
GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1458     pub unsafe fn GetSortDescriptionLabel<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, fdescending: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1459         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1460         (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), fdescending.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1461     }
GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE>1462     pub unsafe fn GetAggregationType(&self) -> ::windows::runtime::Result<PROPDESC_AGGREGATION_TYPE> {
1463         let mut result__: <PROPDESC_AGGREGATION_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1464         (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_AGGREGATION_TYPE>(result__)
1465     }
1466     #[cfg(feature = "Win32_System_Search")]
GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()>1467     pub unsafe fn GetConditionType(&self, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::Result<()> {
1468         (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcontype), ::std::mem::transmute(popdefault)).ok()
1469     }
GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T>1470     pub unsafe fn GetEnumTypeList<T: ::windows::runtime::Interface>(&self) -> ::windows::runtime::Result<T> {
1471         let mut result__ = ::std::option::Option::None;
1472         (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
1473     }
1474     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>1475     pub unsafe fn CoerceToCanonicalValue(&self, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
1476         (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppropvar)).ok()
1477     }
1478     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1479     pub unsafe fn FormatForDisplay(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1480         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1481         (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar), ::std::mem::transmute(pdfflags), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1482     }
1483     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>1484     pub unsafe fn IsValueCanonical(&self, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
1485         (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvar)).ok()
1486     }
GetSearchInfoFlags(&self) -> ::windows::runtime::Result<PROPDESC_SEARCHINFO_FLAGS>1487     pub unsafe fn GetSearchInfoFlags(&self) -> ::windows::runtime::Result<PROPDESC_SEARCHINFO_FLAGS> {
1488         let mut result__: <PROPDESC_SEARCHINFO_FLAGS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1489         (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_SEARCHINFO_FLAGS>(result__)
1490     }
GetColumnIndexType(&self) -> ::windows::runtime::Result<PROPDESC_COLUMNINDEX_TYPE>1491     pub unsafe fn GetColumnIndexType(&self) -> ::windows::runtime::Result<PROPDESC_COLUMNINDEX_TYPE> {
1492         let mut result__: <PROPDESC_COLUMNINDEX_TYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1493         (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPDESC_COLUMNINDEX_TYPE>(result__)
1494     }
1495     #[cfg(feature = "Win32_Foundation")]
GetProjectionString(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1496     pub unsafe fn GetProjectionString(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1497         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1498         (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1499     }
GetMaxSize(&self) -> ::windows::runtime::Result<u32>1500     pub unsafe fn GetMaxSize(&self) -> ::windows::runtime::Result<u32> {
1501         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1502         (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1503     }
1504 }
1505 unsafe impl ::windows::runtime::Interface for IPropertyDescriptionSearchInfo {
1506     type Vtable = IPropertyDescriptionSearchInfo_abi;
1507     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(126849469, 10658, 17423, [146, 78, 70, 162, 145, 82, 69, 32]);
1508 }
1509 impl ::std::convert::From<IPropertyDescriptionSearchInfo> for ::windows::runtime::IUnknown {
from(value: IPropertyDescriptionSearchInfo) -> Self1510     fn from(value: IPropertyDescriptionSearchInfo) -> Self {
1511         unsafe { ::std::mem::transmute(value) }
1512     }
1513 }
1514 impl ::std::convert::From<&IPropertyDescriptionSearchInfo> for ::windows::runtime::IUnknown {
from(value: &IPropertyDescriptionSearchInfo) -> Self1515     fn from(value: &IPropertyDescriptionSearchInfo) -> Self {
1516         ::std::convert::From::from(::std::clone::Clone::clone(value))
1517     }
1518 }
1519 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyDescriptionSearchInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1520     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1521         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1522     }
1523 }
1524 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyDescriptionSearchInfo {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1525     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1526         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1527     }
1528 }
1529 impl ::std::convert::From<IPropertyDescriptionSearchInfo> for IPropertyDescription {
from(value: IPropertyDescriptionSearchInfo) -> Self1530     fn from(value: IPropertyDescriptionSearchInfo) -> Self {
1531         unsafe { ::std::mem::transmute(value) }
1532     }
1533 }
1534 impl ::std::convert::From<&IPropertyDescriptionSearchInfo> for IPropertyDescription {
from(value: &IPropertyDescriptionSearchInfo) -> Self1535     fn from(value: &IPropertyDescriptionSearchInfo) -> Self {
1536         ::std::convert::From::from(::std::clone::Clone::clone(value))
1537     }
1538 }
1539 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyDescription> for IPropertyDescriptionSearchInfo {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription>1540     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription> {
1541         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyDescription>::into(self))
1542     }
1543 }
1544 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyDescription> for &IPropertyDescriptionSearchInfo {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription>1545     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyDescription> {
1546         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyDescription>::into(::std::clone::Clone::clone(self)))
1547     }
1548 }
1549 #[repr(C)]
1550 #[doc(hidden)]
1551 pub struct IPropertyDescriptionSearchInfo_abi(
1552     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1553     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1554     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1555     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT,
1556     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1557     #[cfg(not(feature = "Win32_Foundation"))] usize,
1558     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pvartype: *mut u16) -> ::windows::runtime::HRESULT,
1559     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1560     #[cfg(not(feature = "Win32_Foundation"))] usize,
1561     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszinvite: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1562     #[cfg(not(feature = "Win32_Foundation"))] usize,
1563     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, mask: PROPDESC_TYPE_FLAGS, ppdtflags: *mut PROPDESC_TYPE_FLAGS) -> ::windows::runtime::HRESULT,
1564     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppdvflags: *mut PROPDESC_VIEW_FLAGS) -> ::windows::runtime::HRESULT,
1565     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcxchars: *mut u32) -> ::windows::runtime::HRESULT,
1566     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdisplaytype: *mut PROPDESC_DISPLAYTYPE) -> ::windows::runtime::HRESULT,
1567     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcsflags: *mut u32) -> ::windows::runtime::HRESULT,
1568     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pgr: *mut PROPDESC_GROUPING_RANGE) -> ::windows::runtime::HRESULT,
1569     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prdt: *mut PROPDESC_RELATIVEDESCRIPTION_TYPE) -> ::windows::runtime::HRESULT,
1570     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
1571     pub  unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar1: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, propvar2: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppszdesc1: *mut super::super::Foundation::PWSTR, ppszdesc2: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1572     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1573     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psd: *mut PROPDESC_SORTDESCRIPTION) -> ::windows::runtime::HRESULT,
1574     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fdescending: super::super::Foundation::BOOL, ppszdescription: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1575     #[cfg(not(feature = "Win32_Foundation"))] usize,
1576     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, paggtype: *mut PROPDESC_AGGREGATION_TYPE) -> ::windows::runtime::HRESULT,
1577     #[cfg(feature = "Win32_System_Search")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcontype: *mut PROPDESC_CONDITION_TYPE, popdefault: *mut super::Search::CONDITION_OPERATION) -> ::windows::runtime::HRESULT,
1578     #[cfg(not(feature = "Win32_System_Search"))] usize,
1579     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1580     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1581     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1582     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdfflags: PROPDESC_FORMAT_FLAGS, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1583     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1584     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1585     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1586     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppdsiflags: *mut PROPDESC_SEARCHINFO_FLAGS) -> ::windows::runtime::HRESULT,
1587     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppdcitype: *mut PROPDESC_COLUMNINDEX_TYPE) -> ::windows::runtime::HRESULT,
1588     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszprojection: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1589     #[cfg(not(feature = "Win32_Foundation"))] usize,
1590     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcbmaxsize: *mut u32) -> ::windows::runtime::HRESULT,
1591 );
1592 #[repr(transparent)]
1593 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1594 pub struct IPropertyEnumType(::windows::runtime::IUnknown);
1595 impl IPropertyEnumType {
GetEnumType(&self) -> ::windows::runtime::Result<PROPENUMTYPE>1596     pub unsafe fn GetEnumType(&self) -> ::windows::runtime::Result<PROPENUMTYPE> {
1597         let mut result__: <PROPENUMTYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1598         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPENUMTYPE>(result__)
1599     }
1600     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>1601     pub unsafe fn GetValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
1602         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1603         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
1604     }
1605     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetRangeMinValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>1606     pub unsafe fn GetRangeMinValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
1607         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1608         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
1609     }
1610     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetRangeSetValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>1611     pub unsafe fn GetRangeSetValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
1612         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1613         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
1614     }
1615     #[cfg(feature = "Win32_Foundation")]
GetDisplayText(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1616     pub unsafe fn GetDisplayText(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1617         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1618         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1619     }
1620 }
1621 unsafe impl ::windows::runtime::Interface for IPropertyEnumType {
1622     type Vtable = IPropertyEnumType_abi;
1623     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(300022777, 11606, 19051, [141, 179, 124, 209, 147, 164, 113, 242]);
1624 }
1625 impl ::std::convert::From<IPropertyEnumType> for ::windows::runtime::IUnknown {
from(value: IPropertyEnumType) -> Self1626     fn from(value: IPropertyEnumType) -> Self {
1627         unsafe { ::std::mem::transmute(value) }
1628     }
1629 }
1630 impl ::std::convert::From<&IPropertyEnumType> for ::windows::runtime::IUnknown {
from(value: &IPropertyEnumType) -> Self1631     fn from(value: &IPropertyEnumType) -> Self {
1632         ::std::convert::From::from(::std::clone::Clone::clone(value))
1633     }
1634 }
1635 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyEnumType {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1636     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1637         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1638     }
1639 }
1640 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyEnumType {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1641     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1642         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1643     }
1644 }
1645 #[repr(C)]
1646 #[doc(hidden)]
1647 pub struct IPropertyEnumType_abi(
1648     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1649     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1650     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1651     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, penumtype: *mut PROPENUMTYPE) -> ::windows::runtime::HRESULT,
1652     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1653     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1654     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvarmin: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1655     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1656     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvarset: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1657     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1658     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1659     #[cfg(not(feature = "Win32_Foundation"))] usize,
1660 );
1661 #[repr(transparent)]
1662 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1663 pub struct IPropertyEnumType2(::windows::runtime::IUnknown);
1664 impl IPropertyEnumType2 {
GetEnumType(&self) -> ::windows::runtime::Result<PROPENUMTYPE>1665     pub unsafe fn GetEnumType(&self) -> ::windows::runtime::Result<PROPENUMTYPE> {
1666         let mut result__: <PROPENUMTYPE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1667         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<PROPENUMTYPE>(result__)
1668     }
1669     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>1670     pub unsafe fn GetValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
1671         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1672         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
1673     }
1674     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetRangeMinValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>1675     pub unsafe fn GetRangeMinValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
1676         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1677         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
1678     }
1679     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetRangeSetValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>1680     pub unsafe fn GetRangeSetValue(&self) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
1681         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1682         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
1683     }
1684     #[cfg(feature = "Win32_Foundation")]
GetDisplayText(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1685     pub unsafe fn GetDisplayText(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1686         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1687         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1688     }
1689     #[cfg(feature = "Win32_Foundation")]
GetImageReference(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>1690     pub unsafe fn GetImageReference(&self) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
1691         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1692         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
1693     }
1694 }
1695 unsafe impl ::windows::runtime::Interface for IPropertyEnumType2 {
1696     type Vtable = IPropertyEnumType2_abi;
1697     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2607678748, 24029, 17185, [144, 112, 254, 42, 203, 85, 231, 148]);
1698 }
1699 impl ::std::convert::From<IPropertyEnumType2> for ::windows::runtime::IUnknown {
from(value: IPropertyEnumType2) -> Self1700     fn from(value: IPropertyEnumType2) -> Self {
1701         unsafe { ::std::mem::transmute(value) }
1702     }
1703 }
1704 impl ::std::convert::From<&IPropertyEnumType2> for ::windows::runtime::IUnknown {
from(value: &IPropertyEnumType2) -> Self1705     fn from(value: &IPropertyEnumType2) -> Self {
1706         ::std::convert::From::from(::std::clone::Clone::clone(value))
1707     }
1708 }
1709 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyEnumType2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1710     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1711         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1712     }
1713 }
1714 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyEnumType2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1715     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1716         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1717     }
1718 }
1719 impl ::std::convert::From<IPropertyEnumType2> for IPropertyEnumType {
from(value: IPropertyEnumType2) -> Self1720     fn from(value: IPropertyEnumType2) -> Self {
1721         unsafe { ::std::mem::transmute(value) }
1722     }
1723 }
1724 impl ::std::convert::From<&IPropertyEnumType2> for IPropertyEnumType {
from(value: &IPropertyEnumType2) -> Self1725     fn from(value: &IPropertyEnumType2) -> Self {
1726         ::std::convert::From::from(::std::clone::Clone::clone(value))
1727     }
1728 }
1729 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyEnumType> for IPropertyEnumType2 {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyEnumType>1730     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyEnumType> {
1731         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyEnumType>::into(self))
1732     }
1733 }
1734 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyEnumType> for &IPropertyEnumType2 {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyEnumType>1735     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyEnumType> {
1736         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyEnumType>::into(::std::clone::Clone::clone(self)))
1737     }
1738 }
1739 #[repr(C)]
1740 #[doc(hidden)]
1741 pub struct IPropertyEnumType2_abi(
1742     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1743     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1744     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1745     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, penumtype: *mut PROPENUMTYPE) -> ::windows::runtime::HRESULT,
1746     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1747     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1748     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvarmin: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1749     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1750     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppropvarset: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1751     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1752     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1753     #[cfg(not(feature = "Win32_Foundation"))] usize,
1754     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppszimageres: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1755     #[cfg(not(feature = "Win32_Foundation"))] usize,
1756 );
1757 #[repr(transparent)]
1758 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1759 pub struct IPropertyEnumTypeList(::windows::runtime::IUnknown);
1760 impl IPropertyEnumTypeList {
GetCount(&self) -> ::windows::runtime::Result<u32>1761     pub unsafe fn GetCount(&self) -> ::windows::runtime::Result<u32> {
1762         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1763         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1764     }
GetAt<T: ::windows::runtime::Interface>(&self, itype: u32) -> ::windows::runtime::Result<T>1765     pub unsafe fn GetAt<T: ::windows::runtime::Interface>(&self, itype: u32) -> ::windows::runtime::Result<T> {
1766         let mut result__ = ::std::option::Option::None;
1767         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(itype), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
1768     }
GetConditionAt<T: ::windows::runtime::Interface>(&self, nindex: u32) -> ::windows::runtime::Result<T>1769     pub unsafe fn GetConditionAt<T: ::windows::runtime::Interface>(&self, nindex: u32) -> ::windows::runtime::Result<T> {
1770         let mut result__ = ::std::option::Option::None;
1771         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(nindex), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
1772     }
1773     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
FindMatchingIndex(&self, propvarcmp: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<u32>1774     pub unsafe fn FindMatchingIndex(&self, propvarcmp: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<u32> {
1775         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1776         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(propvarcmp), &mut result__).from_abi::<u32>(result__)
1777     }
1778 }
1779 unsafe impl ::windows::runtime::Interface for IPropertyEnumTypeList {
1780     type Vtable = IPropertyEnumTypeList_abi;
1781     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2845049076, 15748, 17751, [148, 186, 18, 66, 251, 44, 201, 166]);
1782 }
1783 impl ::std::convert::From<IPropertyEnumTypeList> for ::windows::runtime::IUnknown {
from(value: IPropertyEnumTypeList) -> Self1784     fn from(value: IPropertyEnumTypeList) -> Self {
1785         unsafe { ::std::mem::transmute(value) }
1786     }
1787 }
1788 impl ::std::convert::From<&IPropertyEnumTypeList> for ::windows::runtime::IUnknown {
from(value: &IPropertyEnumTypeList) -> Self1789     fn from(value: &IPropertyEnumTypeList) -> Self {
1790         ::std::convert::From::from(::std::clone::Clone::clone(value))
1791     }
1792 }
1793 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyEnumTypeList {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1794     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1795         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1796     }
1797 }
1798 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyEnumTypeList {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1799     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1800         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1801     }
1802 }
1803 #[repr(C)]
1804 #[doc(hidden)]
1805 pub struct IPropertyEnumTypeList_abi(
1806     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1807     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1808     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1809     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pctypes: *mut u32) -> ::windows::runtime::HRESULT,
1810     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, itype: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1811     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, nindex: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
1812     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propvarcmp: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pnindex: *mut u32) -> ::windows::runtime::HRESULT,
1813     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1814 );
1815 #[repr(transparent)]
1816 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1817 pub struct IPropertyStore(::windows::runtime::IUnknown);
1818 impl IPropertyStore {
GetCount(&self) -> ::windows::runtime::Result<u32>1819     pub unsafe fn GetCount(&self) -> ::windows::runtime::Result<u32> {
1820         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1821         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1822     }
GetAt(&self, iprop: u32) -> ::windows::runtime::Result<PROPERTYKEY>1823     pub unsafe fn GetAt(&self, iprop: u32) -> ::windows::runtime::Result<PROPERTYKEY> {
1824         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1825         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(iprop), &mut result__).from_abi::<PROPERTYKEY>(result__)
1826     }
1827     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetValue(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>1828     pub unsafe fn GetValue(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
1829         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1830         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
1831     }
1832     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
SetValue(&self, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>1833     pub unsafe fn SetValue(&self, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
1834         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), ::std::mem::transmute(propvar)).ok()
1835     }
Commit(&self) -> ::windows::runtime::Result<()>1836     pub unsafe fn Commit(&self) -> ::windows::runtime::Result<()> {
1837         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self)).ok()
1838     }
1839 }
1840 unsafe impl ::windows::runtime::Interface for IPropertyStore {
1841     type Vtable = IPropertyStore_abi;
1842     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2288881387, 36082, 17478, [141, 2, 205, 186, 29, 189, 207, 153]);
1843 }
1844 impl ::std::convert::From<IPropertyStore> for ::windows::runtime::IUnknown {
from(value: IPropertyStore) -> Self1845     fn from(value: IPropertyStore) -> Self {
1846         unsafe { ::std::mem::transmute(value) }
1847     }
1848 }
1849 impl ::std::convert::From<&IPropertyStore> for ::windows::runtime::IUnknown {
from(value: &IPropertyStore) -> Self1850     fn from(value: &IPropertyStore) -> Self {
1851         ::std::convert::From::from(::std::clone::Clone::clone(value))
1852     }
1853 }
1854 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyStore {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1855     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1856         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1857     }
1858 }
1859 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyStore {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1860     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1861         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1862     }
1863 }
1864 #[repr(C)]
1865 #[doc(hidden)]
1866 pub struct IPropertyStore_abi(
1867     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1868     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1869     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1870     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, cprops: *mut u32) -> ::windows::runtime::HRESULT,
1871     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iprop: u32, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT,
1872     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, pv: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1873     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1874     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1875     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1876     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1877 );
1878 #[repr(transparent)]
1879 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1880 pub struct IPropertyStoreCache(::windows::runtime::IUnknown);
1881 impl IPropertyStoreCache {
GetCount(&self) -> ::windows::runtime::Result<u32>1882     pub unsafe fn GetCount(&self) -> ::windows::runtime::Result<u32> {
1883         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1884         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
1885     }
GetAt(&self, iprop: u32) -> ::windows::runtime::Result<PROPERTYKEY>1886     pub unsafe fn GetAt(&self, iprop: u32) -> ::windows::runtime::Result<PROPERTYKEY> {
1887         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1888         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(iprop), &mut result__).from_abi::<PROPERTYKEY>(result__)
1889     }
1890     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetValue(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>1891     pub unsafe fn GetValue(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
1892         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1893         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
1894     }
1895     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
SetValue(&self, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>1896     pub unsafe fn SetValue(&self, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
1897         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), ::std::mem::transmute(propvar)).ok()
1898     }
Commit(&self) -> ::windows::runtime::Result<()>1899     pub unsafe fn Commit(&self) -> ::windows::runtime::Result<()> {
1900         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self)).ok()
1901     }
GetState(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<PSC_STATE>1902     pub unsafe fn GetState(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<PSC_STATE> {
1903         let mut result__: <PSC_STATE as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1904         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), &mut result__).from_abi::<PSC_STATE>(result__)
1905     }
1906     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
GetValueAndState(&self, key: *const PROPERTYKEY, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT, pstate: *mut PSC_STATE) -> ::windows::runtime::Result<()>1907     pub unsafe fn GetValueAndState(&self, key: *const PROPERTYKEY, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT, pstate: *mut PSC_STATE) -> ::windows::runtime::Result<()> {
1908         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), ::std::mem::transmute(ppropvar), ::std::mem::transmute(pstate)).ok()
1909     }
SetState(&self, key: *const PROPERTYKEY, state: PSC_STATE) -> ::windows::runtime::Result<()>1910     pub unsafe fn SetState(&self, key: *const PROPERTYKEY, state: PSC_STATE) -> ::windows::runtime::Result<()> {
1911         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), ::std::mem::transmute(state)).ok()
1912     }
1913     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
SetValueAndState(&self, key: *const PROPERTYKEY, ppropvar: *const super::Com::StructuredStorage::PROPVARIANT, state: PSC_STATE) -> ::windows::runtime::Result<()>1914     pub unsafe fn SetValueAndState(&self, key: *const PROPERTYKEY, ppropvar: *const super::Com::StructuredStorage::PROPVARIANT, state: PSC_STATE) -> ::windows::runtime::Result<()> {
1915         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), ::std::mem::transmute(ppropvar), ::std::mem::transmute(state)).ok()
1916     }
1917 }
1918 unsafe impl ::windows::runtime::Interface for IPropertyStoreCache {
1919     type Vtable = IPropertyStoreCache_abi;
1920     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(806815085, 39569, 20112, [147, 125, 116, 108, 114, 171, 191, 79]);
1921 }
1922 impl ::std::convert::From<IPropertyStoreCache> for ::windows::runtime::IUnknown {
from(value: IPropertyStoreCache) -> Self1923     fn from(value: IPropertyStoreCache) -> Self {
1924         unsafe { ::std::mem::transmute(value) }
1925     }
1926 }
1927 impl ::std::convert::From<&IPropertyStoreCache> for ::windows::runtime::IUnknown {
from(value: &IPropertyStoreCache) -> Self1928     fn from(value: &IPropertyStoreCache) -> Self {
1929         ::std::convert::From::from(::std::clone::Clone::clone(value))
1930     }
1931 }
1932 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyStoreCache {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1933     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1934         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1935     }
1936 }
1937 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyStoreCache {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1938     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1939         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1940     }
1941 }
1942 impl ::std::convert::From<IPropertyStoreCache> for IPropertyStore {
from(value: IPropertyStoreCache) -> Self1943     fn from(value: IPropertyStoreCache) -> Self {
1944         unsafe { ::std::mem::transmute(value) }
1945     }
1946 }
1947 impl ::std::convert::From<&IPropertyStoreCache> for IPropertyStore {
from(value: &IPropertyStoreCache) -> Self1948     fn from(value: &IPropertyStoreCache) -> Self {
1949         ::std::convert::From::from(::std::clone::Clone::clone(value))
1950     }
1951 }
1952 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyStore> for IPropertyStoreCache {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyStore>1953     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyStore> {
1954         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyStore>::into(self))
1955     }
1956 }
1957 impl<'a> ::windows::runtime::IntoParam<'a, IPropertyStore> for &IPropertyStoreCache {
into_param(self) -> ::windows::runtime::Param<'a, IPropertyStore>1958     fn into_param(self) -> ::windows::runtime::Param<'a, IPropertyStore> {
1959         ::windows::runtime::Param::Owned(::std::convert::Into::<IPropertyStore>::into(::std::clone::Clone::clone(self)))
1960     }
1961 }
1962 #[repr(C)]
1963 #[doc(hidden)]
1964 pub struct IPropertyStoreCache_abi(
1965     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1966     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1967     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1968     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, cprops: *mut u32) -> ::windows::runtime::HRESULT,
1969     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iprop: u32, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT,
1970     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, pv: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1971     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1972     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT,
1973     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1974     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1975     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, pstate: *mut PSC_STATE) -> ::windows::runtime::HRESULT,
1976     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pstate: *mut PSC_STATE) -> ::windows::runtime::HRESULT,
1977     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1978     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, state: PSC_STATE) -> ::windows::runtime::HRESULT,
1979     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, ppropvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, state: PSC_STATE) -> ::windows::runtime::HRESULT,
1980     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
1981 );
1982 #[repr(transparent)]
1983 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1984 pub struct IPropertyStoreCapabilities(::windows::runtime::IUnknown);
1985 impl IPropertyStoreCapabilities {
IsPropertyWritable(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<()>1986     pub unsafe fn IsPropertyWritable(&self, key: *const PROPERTYKEY) -> ::windows::runtime::Result<()> {
1987         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(key)).ok()
1988     }
1989 }
1990 unsafe impl ::windows::runtime::Interface for IPropertyStoreCapabilities {
1991     type Vtable = IPropertyStoreCapabilities_abi;
1992     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3370308966, 6254, 19785, [191, 65, 105, 9, 234, 213, 106, 204]);
1993 }
1994 impl ::std::convert::From<IPropertyStoreCapabilities> for ::windows::runtime::IUnknown {
from(value: IPropertyStoreCapabilities) -> Self1995     fn from(value: IPropertyStoreCapabilities) -> Self {
1996         unsafe { ::std::mem::transmute(value) }
1997     }
1998 }
1999 impl ::std::convert::From<&IPropertyStoreCapabilities> for ::windows::runtime::IUnknown {
from(value: &IPropertyStoreCapabilities) -> Self2000     fn from(value: &IPropertyStoreCapabilities) -> Self {
2001         ::std::convert::From::from(::std::clone::Clone::clone(value))
2002     }
2003 }
2004 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyStoreCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2005     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2006         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2007     }
2008 }
2009 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyStoreCapabilities {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2010     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2011         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2012     }
2013 }
2014 #[repr(C)]
2015 #[doc(hidden)]
2016 pub struct IPropertyStoreCapabilities_abi(
2017     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2018     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2019     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2020     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY) -> ::windows::runtime::HRESULT,
2021 );
2022 #[repr(transparent)]
2023 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2024 pub struct IPropertyStoreFactory(::windows::runtime::IUnknown);
2025 impl IPropertyStoreFactory {
GetPropertyStore<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, T: ::windows::runtime::Interface>(&self, flags: GETPROPERTYSTOREFLAGS, punkfactory: Param1) -> ::windows::runtime::Result<T>2026     pub unsafe fn GetPropertyStore<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, T: ::windows::runtime::Interface>(&self, flags: GETPROPERTYSTOREFLAGS, punkfactory: Param1) -> ::windows::runtime::Result<T> {
2027         let mut result__ = ::std::option::Option::None;
2028         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(flags), punkfactory.into_param().abi(), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
2029     }
GetPropertyStoreForKeys<T: ::windows::runtime::Interface>(&self, rgkeys: *const PROPERTYKEY, ckeys: u32, flags: GETPROPERTYSTOREFLAGS) -> ::windows::runtime::Result<T>2030     pub unsafe fn GetPropertyStoreForKeys<T: ::windows::runtime::Interface>(&self, rgkeys: *const PROPERTYKEY, ckeys: u32, flags: GETPROPERTYSTOREFLAGS) -> ::windows::runtime::Result<T> {
2031         let mut result__ = ::std::option::Option::None;
2032         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(rgkeys), ::std::mem::transmute(ckeys), ::std::mem::transmute(flags), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
2033     }
2034 }
2035 unsafe impl ::windows::runtime::Interface for IPropertyStoreFactory {
2036     type Vtable = IPropertyStoreFactory_abi;
2037     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3155233645, 22504, 16712, [169, 198, 145, 1, 90, 178, 243, 165]);
2038 }
2039 impl ::std::convert::From<IPropertyStoreFactory> for ::windows::runtime::IUnknown {
from(value: IPropertyStoreFactory) -> Self2040     fn from(value: IPropertyStoreFactory) -> Self {
2041         unsafe { ::std::mem::transmute(value) }
2042     }
2043 }
2044 impl ::std::convert::From<&IPropertyStoreFactory> for ::windows::runtime::IUnknown {
from(value: &IPropertyStoreFactory) -> Self2045     fn from(value: &IPropertyStoreFactory) -> Self {
2046         ::std::convert::From::from(::std::clone::Clone::clone(value))
2047     }
2048 }
2049 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyStoreFactory {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2050     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2051         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2052     }
2053 }
2054 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyStoreFactory {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2055     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2056         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2057     }
2058 }
2059 #[repr(C)]
2060 #[doc(hidden)]
2061 pub struct IPropertyStoreFactory_abi(
2062     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2063     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2064     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2065     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, flags: GETPROPERTYSTOREFLAGS, punkfactory: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
2066     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, rgkeys: *const PROPERTYKEY, ckeys: u32, flags: GETPROPERTYSTOREFLAGS, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
2067 );
2068 #[repr(transparent)]
2069 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2070 pub struct IPropertySystem(::windows::runtime::IUnknown);
2071 impl IPropertySystem {
GetPropertyDescription<T: ::windows::runtime::Interface>(&self, propkey: *const PROPERTYKEY) -> ::windows::runtime::Result<T>2072     pub unsafe fn GetPropertyDescription<T: ::windows::runtime::Interface>(&self, propkey: *const PROPERTYKEY) -> ::windows::runtime::Result<T> {
2073         let mut result__ = ::std::option::Option::None;
2074         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(propkey), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
2075     }
2076     #[cfg(feature = "Win32_Foundation")]
GetPropertyDescriptionByName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, T: ::windows::runtime::Interface>(&self, pszcanonicalname: Param0) -> ::windows::runtime::Result<T>2077     pub unsafe fn GetPropertyDescriptionByName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, T: ::windows::runtime::Interface>(&self, pszcanonicalname: Param0) -> ::windows::runtime::Result<T> {
2078         let mut result__ = ::std::option::Option::None;
2079         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), pszcanonicalname.into_param().abi(), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
2080     }
2081     #[cfg(feature = "Win32_Foundation")]
GetPropertyDescriptionListFromString<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, T: ::windows::runtime::Interface>(&self, pszproplist: Param0) -> ::windows::runtime::Result<T>2082     pub unsafe fn GetPropertyDescriptionListFromString<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, T: ::windows::runtime::Interface>(&self, pszproplist: Param0) -> ::windows::runtime::Result<T> {
2083         let mut result__ = ::std::option::Option::None;
2084         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), pszproplist.into_param().abi(), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
2085     }
EnumeratePropertyDescriptions<T: ::windows::runtime::Interface>(&self, filteron: PROPDESC_ENUMFILTER) -> ::windows::runtime::Result<T>2086     pub unsafe fn EnumeratePropertyDescriptions<T: ::windows::runtime::Interface>(&self, filteron: PROPDESC_ENUMFILTER) -> ::windows::runtime::Result<T> {
2087         let mut result__ = ::std::option::Option::None;
2088         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(filteron), &<T as ::windows::runtime::Interface>::IID, &mut result__ as *mut _ as *mut _).and_some(result__)
2089     }
2090     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
FormatForDisplay(&self, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdff: PROPDESC_FORMAT_FLAGS, psztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()>2091     pub unsafe fn FormatForDisplay(&self, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdff: PROPDESC_FORMAT_FLAGS, psztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()> {
2092         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), ::std::mem::transmute(propvar), ::std::mem::transmute(pdff), ::std::mem::transmute(psztext), ::std::mem::transmute(cchtext)).ok()
2093     }
2094     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
FormatForDisplayAlloc(&self, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdff: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>2095     pub unsafe fn FormatForDisplayAlloc(&self, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdff: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
2096         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2097         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(key), ::std::mem::transmute(propvar), ::std::mem::transmute(pdff), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
2098     }
2099     #[cfg(feature = "Win32_Foundation")]
RegisterPropertySchema<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszpath: Param0) -> ::windows::runtime::Result<()>2100     pub unsafe fn RegisterPropertySchema<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszpath: Param0) -> ::windows::runtime::Result<()> {
2101         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), pszpath.into_param().abi()).ok()
2102     }
2103     #[cfg(feature = "Win32_Foundation")]
UnregisterPropertySchema<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszpath: Param0) -> ::windows::runtime::Result<()>2104     pub unsafe fn UnregisterPropertySchema<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszpath: Param0) -> ::windows::runtime::Result<()> {
2105         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), pszpath.into_param().abi()).ok()
2106     }
RefreshPropertySchema(&self) -> ::windows::runtime::Result<()>2107     pub unsafe fn RefreshPropertySchema(&self) -> ::windows::runtime::Result<()> {
2108         (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self)).ok()
2109     }
2110 }
2111 unsafe impl ::windows::runtime::Interface for IPropertySystem {
2112     type Vtable = IPropertySystem_abi;
2113     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3396488842, 50150, 17451, [136, 164, 111, 176, 219, 128, 53, 163]);
2114 }
2115 impl ::std::convert::From<IPropertySystem> for ::windows::runtime::IUnknown {
from(value: IPropertySystem) -> Self2116     fn from(value: IPropertySystem) -> Self {
2117         unsafe { ::std::mem::transmute(value) }
2118     }
2119 }
2120 impl ::std::convert::From<&IPropertySystem> for ::windows::runtime::IUnknown {
from(value: &IPropertySystem) -> Self2121     fn from(value: &IPropertySystem) -> Self {
2122         ::std::convert::From::from(::std::clone::Clone::clone(value))
2123     }
2124 }
2125 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertySystem {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2126     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2127         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2128     }
2129 }
2130 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertySystem {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2131     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2132         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2133     }
2134 }
2135 #[repr(C)]
2136 #[doc(hidden)]
2137 pub struct IPropertySystem_abi(
2138     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2139     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2140     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2141     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, propkey: *const PROPERTYKEY, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
2142     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszcanonicalname: super::super::Foundation::PWSTR, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
2143     #[cfg(not(feature = "Win32_Foundation"))] usize,
2144     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszproplist: super::super::Foundation::PWSTR, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
2145     #[cfg(not(feature = "Win32_Foundation"))] usize,
2146     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, filteron: PROPDESC_ENUMFILTER, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT,
2147     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdff: PROPDESC_FORMAT_FLAGS, psztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::HRESULT,
2148     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
2149     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, key: *const PROPERTYKEY, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdff: PROPDESC_FORMAT_FLAGS, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2150     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
2151     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszpath: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2152     #[cfg(not(feature = "Win32_Foundation"))] usize,
2153     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszpath: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2154     #[cfg(not(feature = "Win32_Foundation"))] usize,
2155     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2156 );
2157 #[repr(transparent)]
2158 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2159 pub struct IPropertySystemChangeNotify(::windows::runtime::IUnknown);
2160 impl IPropertySystemChangeNotify {
SchemaRefreshed(&self) -> ::windows::runtime::Result<()>2161     pub unsafe fn SchemaRefreshed(&self) -> ::windows::runtime::Result<()> {
2162         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self)).ok()
2163     }
2164 }
2165 unsafe impl ::windows::runtime::Interface for IPropertySystemChangeNotify {
2166     type Vtable = IPropertySystemChangeNotify_abi;
2167     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4204093401, 14526, 18553, [166, 206, 130, 76, 245, 45, 96, 159]);
2168 }
2169 impl ::std::convert::From<IPropertySystemChangeNotify> for ::windows::runtime::IUnknown {
from(value: IPropertySystemChangeNotify) -> Self2170     fn from(value: IPropertySystemChangeNotify) -> Self {
2171         unsafe { ::std::mem::transmute(value) }
2172     }
2173 }
2174 impl ::std::convert::From<&IPropertySystemChangeNotify> for ::windows::runtime::IUnknown {
from(value: &IPropertySystemChangeNotify) -> Self2175     fn from(value: &IPropertySystemChangeNotify) -> Self {
2176         ::std::convert::From::from(::std::clone::Clone::clone(value))
2177     }
2178 }
2179 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertySystemChangeNotify {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2180     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2181         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2182     }
2183 }
2184 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertySystemChangeNotify {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2185     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2186         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2187     }
2188 }
2189 #[repr(C)]
2190 #[doc(hidden)]
2191 pub struct IPropertySystemChangeNotify_abi(
2192     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2193     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2194     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2195     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2196 );
2197 #[repr(transparent)]
2198 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2199 pub struct IPropertyUI(::windows::runtime::IUnknown);
2200 impl IPropertyUI {
2201     #[cfg(feature = "Win32_Foundation")]
ParsePropertyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszname: Param0, pfmtid: *mut ::windows::runtime::GUID, ppid: *mut u32, pcheaten: *mut u32) -> ::windows::runtime::Result<()>2202     pub unsafe fn ParsePropertyName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, pszname: Param0, pfmtid: *mut ::windows::runtime::GUID, ppid: *mut u32, pcheaten: *mut u32) -> ::windows::runtime::Result<()> {
2203         (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pszname.into_param().abi(), ::std::mem::transmute(pfmtid), ::std::mem::transmute(ppid), ::std::mem::transmute(pcheaten)).ok()
2204     }
2205     #[cfg(feature = "Win32_Foundation")]
GetCannonicalName(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()>2206     pub unsafe fn GetCannonicalName(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()> {
2207         (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(fmtid), ::std::mem::transmute(pid), ::std::mem::transmute(pwsztext), ::std::mem::transmute(cchtext)).ok()
2208     }
2209     #[cfg(feature = "Win32_Foundation")]
GetDisplayName(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, flags: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()>2210     pub unsafe fn GetDisplayName(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, flags: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()> {
2211         (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(fmtid), ::std::mem::transmute(pid), ::std::mem::transmute(flags), ::std::mem::transmute(pwsztext), ::std::mem::transmute(cchtext)).ok()
2212     }
2213     #[cfg(feature = "Win32_Foundation")]
GetPropertyDescription(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()>2214     pub unsafe fn GetPropertyDescription(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()> {
2215         (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(fmtid), ::std::mem::transmute(pid), ::std::mem::transmute(pwsztext), ::std::mem::transmute(cchtext)).ok()
2216     }
GetDefaultWidth(&self, fmtid: *const ::windows::runtime::GUID, pid: u32) -> ::windows::runtime::Result<u32>2217     pub unsafe fn GetDefaultWidth(&self, fmtid: *const ::windows::runtime::GUID, pid: u32) -> ::windows::runtime::Result<u32> {
2218         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2219         (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(fmtid), ::std::mem::transmute(pid), &mut result__).from_abi::<u32>(result__)
2220     }
GetFlags(&self, fmtid: *const ::windows::runtime::GUID, pid: u32) -> ::windows::runtime::Result<u32>2221     pub unsafe fn GetFlags(&self, fmtid: *const ::windows::runtime::GUID, pid: u32) -> ::windows::runtime::Result<u32> {
2222         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2223         (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(fmtid), ::std::mem::transmute(pid), &mut result__).from_abi::<u32>(result__)
2224     }
2225     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
FormatForDisplay(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, ppropvar: *const super::Com::StructuredStorage::PROPVARIANT, puiff: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()>2226     pub unsafe fn FormatForDisplay(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, ppropvar: *const super::Com::StructuredStorage::PROPVARIANT, puiff: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()> {
2227         (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(fmtid), ::std::mem::transmute(pid), ::std::mem::transmute(ppropvar), ::std::mem::transmute(puiff), ::std::mem::transmute(pwsztext), ::std::mem::transmute(cchtext)).ok()
2228     }
2229     #[cfg(feature = "Win32_Foundation")]
GetHelpInfo(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, pwszhelpfile: super::super::Foundation::PWSTR, cch: u32, puhelpid: *mut u32) -> ::windows::runtime::Result<()>2230     pub unsafe fn GetHelpInfo(&self, fmtid: *const ::windows::runtime::GUID, pid: u32, pwszhelpfile: super::super::Foundation::PWSTR, cch: u32, puhelpid: *mut u32) -> ::windows::runtime::Result<()> {
2231         (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(fmtid), ::std::mem::transmute(pid), ::std::mem::transmute(pwszhelpfile), ::std::mem::transmute(cch), ::std::mem::transmute(puhelpid)).ok()
2232     }
2233 }
2234 unsafe impl ::windows::runtime::Interface for IPropertyUI {
2235     type Vtable = IPropertyUI_abi;
2236     const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1970961823, 37274, 16664, [153, 215, 219, 178, 8, 200, 204, 102]);
2237 }
2238 impl ::std::convert::From<IPropertyUI> for ::windows::runtime::IUnknown {
from(value: IPropertyUI) -> Self2239     fn from(value: IPropertyUI) -> Self {
2240         unsafe { ::std::mem::transmute(value) }
2241     }
2242 }
2243 impl ::std::convert::From<&IPropertyUI> for ::windows::runtime::IUnknown {
from(value: &IPropertyUI) -> Self2244     fn from(value: &IPropertyUI) -> Self {
2245         ::std::convert::From::from(::std::clone::Clone::clone(value))
2246     }
2247 }
2248 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IPropertyUI {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2249     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2250         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2251     }
2252 }
2253 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IPropertyUI {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2254     fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2255         ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2256     }
2257 }
2258 #[repr(C)]
2259 #[doc(hidden)]
2260 pub struct IPropertyUI_abi(
2261     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2262     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2263     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2264     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pszname: super::super::Foundation::PWSTR, pfmtid: *mut ::windows::runtime::GUID, ppid: *mut u32, pcheaten: *mut u32) -> ::windows::runtime::HRESULT,
2265     #[cfg(not(feature = "Win32_Foundation"))] usize,
2266     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fmtid: *const ::windows::runtime::GUID, pid: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::HRESULT,
2267     #[cfg(not(feature = "Win32_Foundation"))] usize,
2268     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fmtid: *const ::windows::runtime::GUID, pid: u32, flags: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::HRESULT,
2269     #[cfg(not(feature = "Win32_Foundation"))] usize,
2270     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fmtid: *const ::windows::runtime::GUID, pid: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::HRESULT,
2271     #[cfg(not(feature = "Win32_Foundation"))] usize,
2272     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fmtid: *const ::windows::runtime::GUID, pid: u32, pcxchars: *mut u32) -> ::windows::runtime::HRESULT,
2273     pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fmtid: *const ::windows::runtime::GUID, pid: u32, pflags: *mut u32) -> ::windows::runtime::HRESULT,
2274     #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fmtid: *const ::windows::runtime::GUID, pid: u32, ppropvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, puiff: u32, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::HRESULT,
2275     #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation")))] usize,
2276     #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, fmtid: *const ::windows::runtime::GUID, pid: u32, pwszhelpfile: super::super::Foundation::PWSTR, cch: u32, puhelpid: *mut u32) -> ::windows::runtime::HRESULT,
2277     #[cfg(not(feature = "Win32_Foundation"))] usize,
2278 );
2279 pub const InMemoryPropertyStore: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2583879698, 25347, 19998, [185, 161, 99, 15, 128, 37, 146, 197]);
2280 pub const InMemoryPropertyStoreMarshalByValue: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3570011693, 28071, 19317, [169, 124, 95, 48, 111, 14, 174, 220]);
2281 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2282 #[inline]
InitPropVariantFromBooleanVector(prgf: *const super::super::Foundation::BOOL, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2283 pub unsafe fn InitPropVariantFromBooleanVector(prgf: *const super::super::Foundation::BOOL, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2284     #[cfg(windows)]
2285     {
2286         #[link(name = "windows")]
2287         extern "system" {
2288             fn InitPropVariantFromBooleanVector(prgf: *const super::super::Foundation::BOOL, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2289         }
2290         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2291         InitPropVariantFromBooleanVector(::std::mem::transmute(prgf), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2292     }
2293     #[cfg(not(windows))]
2294     unimplemented!("Unsupported target OS");
2295 }
2296 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2297 #[inline]
InitPropVariantFromBuffer(pv: *const ::std::ffi::c_void, cb: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2298 pub unsafe fn InitPropVariantFromBuffer(pv: *const ::std::ffi::c_void, cb: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2299     #[cfg(windows)]
2300     {
2301         #[link(name = "windows")]
2302         extern "system" {
2303             fn InitPropVariantFromBuffer(pv: *const ::std::ffi::c_void, cb: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2304         }
2305         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2306         InitPropVariantFromBuffer(::std::mem::transmute(pv), ::std::mem::transmute(cb), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2307     }
2308     #[cfg(not(windows))]
2309     unimplemented!("Unsupported target OS");
2310 }
2311 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2312 #[inline]
InitPropVariantFromCLSID(clsid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2313 pub unsafe fn InitPropVariantFromCLSID(clsid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2314     #[cfg(windows)]
2315     {
2316         #[link(name = "windows")]
2317         extern "system" {
2318             fn InitPropVariantFromCLSID(clsid: *const ::windows::runtime::GUID, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2319         }
2320         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2321         InitPropVariantFromCLSID(::std::mem::transmute(clsid), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2322     }
2323     #[cfg(not(windows))]
2324     unimplemented!("Unsupported target OS");
2325 }
2326 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2327 #[inline]
InitPropVariantFromDoubleVector(prgn: *const f64, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2328 pub unsafe fn InitPropVariantFromDoubleVector(prgn: *const f64, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2329     #[cfg(windows)]
2330     {
2331         #[link(name = "windows")]
2332         extern "system" {
2333             fn InitPropVariantFromDoubleVector(prgn: *const f64, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2334         }
2335         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2336         InitPropVariantFromDoubleVector(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2337     }
2338     #[cfg(not(windows))]
2339     unimplemented!("Unsupported target OS");
2340 }
2341 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2342 #[inline]
InitPropVariantFromFileTime(pftin: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2343 pub unsafe fn InitPropVariantFromFileTime(pftin: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2344     #[cfg(windows)]
2345     {
2346         #[link(name = "windows")]
2347         extern "system" {
2348             fn InitPropVariantFromFileTime(pftin: *const super::super::Foundation::FILETIME, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2349         }
2350         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2351         InitPropVariantFromFileTime(::std::mem::transmute(pftin), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2352     }
2353     #[cfg(not(windows))]
2354     unimplemented!("Unsupported target OS");
2355 }
2356 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2357 #[inline]
InitPropVariantFromFileTimeVector(prgft: *const super::super::Foundation::FILETIME, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2358 pub unsafe fn InitPropVariantFromFileTimeVector(prgft: *const super::super::Foundation::FILETIME, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2359     #[cfg(windows)]
2360     {
2361         #[link(name = "windows")]
2362         extern "system" {
2363             fn InitPropVariantFromFileTimeVector(prgft: *const super::super::Foundation::FILETIME, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2364         }
2365         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2366         InitPropVariantFromFileTimeVector(::std::mem::transmute(prgft), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2367     }
2368     #[cfg(not(windows))]
2369     unimplemented!("Unsupported target OS");
2370 }
2371 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2372 #[inline]
InitPropVariantFromGUIDAsString(guid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2373 pub unsafe fn InitPropVariantFromGUIDAsString(guid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2374     #[cfg(windows)]
2375     {
2376         #[link(name = "windows")]
2377         extern "system" {
2378             fn InitPropVariantFromGUIDAsString(guid: *const ::windows::runtime::GUID, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2379         }
2380         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2381         InitPropVariantFromGUIDAsString(::std::mem::transmute(guid), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2382     }
2383     #[cfg(not(windows))]
2384     unimplemented!("Unsupported target OS");
2385 }
2386 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2387 #[inline]
InitPropVariantFromInt16Vector(prgn: *const i16, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2388 pub unsafe fn InitPropVariantFromInt16Vector(prgn: *const i16, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2389     #[cfg(windows)]
2390     {
2391         #[link(name = "windows")]
2392         extern "system" {
2393             fn InitPropVariantFromInt16Vector(prgn: *const i16, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2394         }
2395         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2396         InitPropVariantFromInt16Vector(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2397     }
2398     #[cfg(not(windows))]
2399     unimplemented!("Unsupported target OS");
2400 }
2401 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2402 #[inline]
InitPropVariantFromInt32Vector(prgn: *const i32, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2403 pub unsafe fn InitPropVariantFromInt32Vector(prgn: *const i32, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2404     #[cfg(windows)]
2405     {
2406         #[link(name = "windows")]
2407         extern "system" {
2408             fn InitPropVariantFromInt32Vector(prgn: *const i32, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2409         }
2410         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2411         InitPropVariantFromInt32Vector(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2412     }
2413     #[cfg(not(windows))]
2414     unimplemented!("Unsupported target OS");
2415 }
2416 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2417 #[inline]
InitPropVariantFromInt64Vector(prgn: *const i64, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2418 pub unsafe fn InitPropVariantFromInt64Vector(prgn: *const i64, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2419     #[cfg(windows)]
2420     {
2421         #[link(name = "windows")]
2422         extern "system" {
2423             fn InitPropVariantFromInt64Vector(prgn: *const i64, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2424         }
2425         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2426         InitPropVariantFromInt64Vector(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2427     }
2428     #[cfg(not(windows))]
2429     unimplemented!("Unsupported target OS");
2430 }
2431 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2432 #[inline]
InitPropVariantFromPropVariantVectorElem(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2433 pub unsafe fn InitPropVariantFromPropVariantVectorElem(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2434     #[cfg(windows)]
2435     {
2436         #[link(name = "windows")]
2437         extern "system" {
2438             fn InitPropVariantFromPropVariantVectorElem(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2439         }
2440         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2441         InitPropVariantFromPropVariantVectorElem(::std::mem::transmute(propvarin), ::std::mem::transmute(ielem), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2442     }
2443     #[cfg(not(windows))]
2444     unimplemented!("Unsupported target OS");
2445 }
2446 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2447 #[inline]
InitPropVariantFromResource<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HINSTANCE>>(hinst: Param0, id: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2448 pub unsafe fn InitPropVariantFromResource<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HINSTANCE>>(hinst: Param0, id: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2449     #[cfg(windows)]
2450     {
2451         #[link(name = "windows")]
2452         extern "system" {
2453             fn InitPropVariantFromResource(hinst: super::super::Foundation::HINSTANCE, id: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2454         }
2455         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2456         InitPropVariantFromResource(hinst.into_param().abi(), ::std::mem::transmute(id), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2457     }
2458     #[cfg(not(windows))]
2459     unimplemented!("Unsupported target OS");
2460 }
2461 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation", feature = "Win32_UI_Shell"))]
2462 #[inline]
InitPropVariantFromStrRet(pstrret: *mut super::super::UI::Shell::STRRET, pidl: *const super::super::UI::Shell::ITEMIDLIST, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>2463 pub unsafe fn InitPropVariantFromStrRet(pstrret: *mut super::super::UI::Shell::STRRET, pidl: *const super::super::UI::Shell::ITEMIDLIST, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
2464     #[cfg(windows)]
2465     {
2466         #[link(name = "windows")]
2467         extern "system" {
2468             fn InitPropVariantFromStrRet(pstrret: *mut super::super::UI::Shell::STRRET, pidl: *const super::super::UI::Shell::ITEMIDLIST, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2469         }
2470         InitPropVariantFromStrRet(::std::mem::transmute(pstrret), ::std::mem::transmute(pidl), ::std::mem::transmute(ppropvar)).ok()
2471     }
2472     #[cfg(not(windows))]
2473     unimplemented!("Unsupported target OS");
2474 }
2475 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2476 #[inline]
InitPropVariantFromStringAsVector<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(psz: Param0) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2477 pub unsafe fn InitPropVariantFromStringAsVector<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(psz: Param0) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2478     #[cfg(windows)]
2479     {
2480         #[link(name = "windows")]
2481         extern "system" {
2482             fn InitPropVariantFromStringAsVector(psz: super::super::Foundation::PWSTR, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2483         }
2484         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2485         InitPropVariantFromStringAsVector(psz.into_param().abi(), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2486     }
2487     #[cfg(not(windows))]
2488     unimplemented!("Unsupported target OS");
2489 }
2490 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2491 #[inline]
InitPropVariantFromStringVector(prgsz: *const super::super::Foundation::PWSTR, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2492 pub unsafe fn InitPropVariantFromStringVector(prgsz: *const super::super::Foundation::PWSTR, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2493     #[cfg(windows)]
2494     {
2495         #[link(name = "windows")]
2496         extern "system" {
2497             fn InitPropVariantFromStringVector(prgsz: *const super::super::Foundation::PWSTR, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2498         }
2499         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2500         InitPropVariantFromStringVector(::std::mem::transmute(prgsz), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2501     }
2502     #[cfg(not(windows))]
2503     unimplemented!("Unsupported target OS");
2504 }
2505 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2506 #[inline]
InitPropVariantFromUInt16Vector(prgn: *const u16, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2507 pub unsafe fn InitPropVariantFromUInt16Vector(prgn: *const u16, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2508     #[cfg(windows)]
2509     {
2510         #[link(name = "windows")]
2511         extern "system" {
2512             fn InitPropVariantFromUInt16Vector(prgn: *const u16, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2513         }
2514         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2515         InitPropVariantFromUInt16Vector(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2516     }
2517     #[cfg(not(windows))]
2518     unimplemented!("Unsupported target OS");
2519 }
2520 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2521 #[inline]
InitPropVariantFromUInt32Vector(prgn: *const u32, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2522 pub unsafe fn InitPropVariantFromUInt32Vector(prgn: *const u32, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2523     #[cfg(windows)]
2524     {
2525         #[link(name = "windows")]
2526         extern "system" {
2527             fn InitPropVariantFromUInt32Vector(prgn: *const u32, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2528         }
2529         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2530         InitPropVariantFromUInt32Vector(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2531     }
2532     #[cfg(not(windows))]
2533     unimplemented!("Unsupported target OS");
2534 }
2535 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2536 #[inline]
InitPropVariantFromUInt64Vector(prgn: *const u64, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2537 pub unsafe fn InitPropVariantFromUInt64Vector(prgn: *const u64, celems: u32) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2538     #[cfg(windows)]
2539     {
2540         #[link(name = "windows")]
2541         extern "system" {
2542             fn InitPropVariantFromUInt64Vector(prgn: *const u64, celems: u32, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2543         }
2544         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2545         InitPropVariantFromUInt64Vector(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2546     }
2547     #[cfg(not(windows))]
2548     unimplemented!("Unsupported target OS");
2549 }
2550 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
2551 #[inline]
InitPropVariantVectorFromPropVariant(propvarsingle: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>2552 pub unsafe fn InitPropVariantVectorFromPropVariant(propvarsingle: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
2553     #[cfg(windows)]
2554     {
2555         #[link(name = "windows")]
2556         extern "system" {
2557             fn InitPropVariantVectorFromPropVariant(propvarsingle: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppropvarvector: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
2558         }
2559         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2560         InitPropVariantVectorFromPropVariant(::std::mem::transmute(propvarsingle), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
2561     }
2562     #[cfg(not(windows))]
2563     unimplemented!("Unsupported target OS");
2564 }
2565 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2566 #[inline]
InitVariantFromBooleanArray(prgf: *const super::super::Foundation::BOOL, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2567 pub unsafe fn InitVariantFromBooleanArray(prgf: *const super::super::Foundation::BOOL, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2568     #[cfg(windows)]
2569     {
2570         #[link(name = "windows")]
2571         extern "system" {
2572             fn InitVariantFromBooleanArray(prgf: *const super::super::Foundation::BOOL, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2573         }
2574         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2575         InitVariantFromBooleanArray(::std::mem::transmute(prgf), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2576     }
2577     #[cfg(not(windows))]
2578     unimplemented!("Unsupported target OS");
2579 }
2580 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2581 #[inline]
InitVariantFromBuffer(pv: *const ::std::ffi::c_void, cb: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2582 pub unsafe fn InitVariantFromBuffer(pv: *const ::std::ffi::c_void, cb: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2583     #[cfg(windows)]
2584     {
2585         #[link(name = "windows")]
2586         extern "system" {
2587             fn InitVariantFromBuffer(pv: *const ::std::ffi::c_void, cb: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2588         }
2589         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2590         InitVariantFromBuffer(::std::mem::transmute(pv), ::std::mem::transmute(cb), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2591     }
2592     #[cfg(not(windows))]
2593     unimplemented!("Unsupported target OS");
2594 }
2595 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2596 #[inline]
InitVariantFromDoubleArray(prgn: *const f64, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2597 pub unsafe fn InitVariantFromDoubleArray(prgn: *const f64, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2598     #[cfg(windows)]
2599     {
2600         #[link(name = "windows")]
2601         extern "system" {
2602             fn InitVariantFromDoubleArray(prgn: *const f64, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2603         }
2604         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2605         InitVariantFromDoubleArray(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2606     }
2607     #[cfg(not(windows))]
2608     unimplemented!("Unsupported target OS");
2609 }
2610 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2611 #[inline]
InitVariantFromFileTime(pft: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<super::Com::VARIANT>2612 pub unsafe fn InitVariantFromFileTime(pft: *const super::super::Foundation::FILETIME) -> ::windows::runtime::Result<super::Com::VARIANT> {
2613     #[cfg(windows)]
2614     {
2615         #[link(name = "windows")]
2616         extern "system" {
2617             fn InitVariantFromFileTime(pft: *const super::super::Foundation::FILETIME, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2618         }
2619         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2620         InitVariantFromFileTime(::std::mem::transmute(pft), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2621     }
2622     #[cfg(not(windows))]
2623     unimplemented!("Unsupported target OS");
2624 }
2625 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2626 #[inline]
InitVariantFromFileTimeArray(prgft: *const super::super::Foundation::FILETIME, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2627 pub unsafe fn InitVariantFromFileTimeArray(prgft: *const super::super::Foundation::FILETIME, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2628     #[cfg(windows)]
2629     {
2630         #[link(name = "windows")]
2631         extern "system" {
2632             fn InitVariantFromFileTimeArray(prgft: *const super::super::Foundation::FILETIME, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2633         }
2634         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2635         InitVariantFromFileTimeArray(::std::mem::transmute(prgft), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2636     }
2637     #[cfg(not(windows))]
2638     unimplemented!("Unsupported target OS");
2639 }
2640 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2641 #[inline]
InitVariantFromGUIDAsString(guid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<super::Com::VARIANT>2642 pub unsafe fn InitVariantFromGUIDAsString(guid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<super::Com::VARIANT> {
2643     #[cfg(windows)]
2644     {
2645         #[link(name = "windows")]
2646         extern "system" {
2647             fn InitVariantFromGUIDAsString(guid: *const ::windows::runtime::GUID, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2648         }
2649         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2650         InitVariantFromGUIDAsString(::std::mem::transmute(guid), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2651     }
2652     #[cfg(not(windows))]
2653     unimplemented!("Unsupported target OS");
2654 }
2655 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2656 #[inline]
InitVariantFromInt16Array(prgn: *const i16, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2657 pub unsafe fn InitVariantFromInt16Array(prgn: *const i16, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2658     #[cfg(windows)]
2659     {
2660         #[link(name = "windows")]
2661         extern "system" {
2662             fn InitVariantFromInt16Array(prgn: *const i16, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2663         }
2664         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2665         InitVariantFromInt16Array(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2666     }
2667     #[cfg(not(windows))]
2668     unimplemented!("Unsupported target OS");
2669 }
2670 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2671 #[inline]
InitVariantFromInt32Array(prgn: *const i32, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2672 pub unsafe fn InitVariantFromInt32Array(prgn: *const i32, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2673     #[cfg(windows)]
2674     {
2675         #[link(name = "windows")]
2676         extern "system" {
2677             fn InitVariantFromInt32Array(prgn: *const i32, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2678         }
2679         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2680         InitVariantFromInt32Array(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2681     }
2682     #[cfg(not(windows))]
2683     unimplemented!("Unsupported target OS");
2684 }
2685 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2686 #[inline]
InitVariantFromInt64Array(prgn: *const i64, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2687 pub unsafe fn InitVariantFromInt64Array(prgn: *const i64, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2688     #[cfg(windows)]
2689     {
2690         #[link(name = "windows")]
2691         extern "system" {
2692             fn InitVariantFromInt64Array(prgn: *const i64, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2693         }
2694         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2695         InitVariantFromInt64Array(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2696     }
2697     #[cfg(not(windows))]
2698     unimplemented!("Unsupported target OS");
2699 }
2700 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2701 #[inline]
InitVariantFromResource<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HINSTANCE>>(hinst: Param0, id: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2702 pub unsafe fn InitVariantFromResource<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HINSTANCE>>(hinst: Param0, id: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2703     #[cfg(windows)]
2704     {
2705         #[link(name = "windows")]
2706         extern "system" {
2707             fn InitVariantFromResource(hinst: super::super::Foundation::HINSTANCE, id: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2708         }
2709         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2710         InitVariantFromResource(hinst.into_param().abi(), ::std::mem::transmute(id), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2711     }
2712     #[cfg(not(windows))]
2713     unimplemented!("Unsupported target OS");
2714 }
2715 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation", feature = "Win32_UI_Shell"))]
2716 #[inline]
InitVariantFromStrRet(pstrret: *const super::super::UI::Shell::STRRET, pidl: *const super::super::UI::Shell::ITEMIDLIST) -> ::windows::runtime::Result<super::Com::VARIANT>2717 pub unsafe fn InitVariantFromStrRet(pstrret: *const super::super::UI::Shell::STRRET, pidl: *const super::super::UI::Shell::ITEMIDLIST) -> ::windows::runtime::Result<super::Com::VARIANT> {
2718     #[cfg(windows)]
2719     {
2720         #[link(name = "windows")]
2721         extern "system" {
2722             fn InitVariantFromStrRet(pstrret: *const super::super::UI::Shell::STRRET, pidl: *const super::super::UI::Shell::ITEMIDLIST, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2723         }
2724         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2725         InitVariantFromStrRet(::std::mem::transmute(pstrret), ::std::mem::transmute(pidl), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2726     }
2727     #[cfg(not(windows))]
2728     unimplemented!("Unsupported target OS");
2729 }
2730 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2731 #[inline]
InitVariantFromStringArray(prgsz: *const super::super::Foundation::PWSTR, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2732 pub unsafe fn InitVariantFromStringArray(prgsz: *const super::super::Foundation::PWSTR, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2733     #[cfg(windows)]
2734     {
2735         #[link(name = "windows")]
2736         extern "system" {
2737             fn InitVariantFromStringArray(prgsz: *const super::super::Foundation::PWSTR, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2738         }
2739         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2740         InitVariantFromStringArray(::std::mem::transmute(prgsz), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2741     }
2742     #[cfg(not(windows))]
2743     unimplemented!("Unsupported target OS");
2744 }
2745 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2746 #[inline]
InitVariantFromUInt16Array(prgn: *const u16, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2747 pub unsafe fn InitVariantFromUInt16Array(prgn: *const u16, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2748     #[cfg(windows)]
2749     {
2750         #[link(name = "windows")]
2751         extern "system" {
2752             fn InitVariantFromUInt16Array(prgn: *const u16, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2753         }
2754         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2755         InitVariantFromUInt16Array(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2756     }
2757     #[cfg(not(windows))]
2758     unimplemented!("Unsupported target OS");
2759 }
2760 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2761 #[inline]
InitVariantFromUInt32Array(prgn: *const u32, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2762 pub unsafe fn InitVariantFromUInt32Array(prgn: *const u32, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2763     #[cfg(windows)]
2764     {
2765         #[link(name = "windows")]
2766         extern "system" {
2767             fn InitVariantFromUInt32Array(prgn: *const u32, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2768         }
2769         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2770         InitVariantFromUInt32Array(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2771     }
2772     #[cfg(not(windows))]
2773     unimplemented!("Unsupported target OS");
2774 }
2775 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2776 #[inline]
InitVariantFromUInt64Array(prgn: *const u64, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2777 pub unsafe fn InitVariantFromUInt64Array(prgn: *const u64, celems: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2778     #[cfg(windows)]
2779     {
2780         #[link(name = "windows")]
2781         extern "system" {
2782             fn InitVariantFromUInt64Array(prgn: *const u64, celems: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2783         }
2784         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2785         InitVariantFromUInt64Array(::std::mem::transmute(prgn), ::std::mem::transmute(celems), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2786     }
2787     #[cfg(not(windows))]
2788     unimplemented!("Unsupported target OS");
2789 }
2790 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
2791 #[inline]
InitVariantFromVariantArrayElem(varin: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<super::Com::VARIANT>2792 pub unsafe fn InitVariantFromVariantArrayElem(varin: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<super::Com::VARIANT> {
2793     #[cfg(windows)]
2794     {
2795         #[link(name = "windows")]
2796         extern "system" {
2797             fn InitVariantFromVariantArrayElem(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
2798         }
2799         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2800         InitVariantFromVariantArrayElem(::std::mem::transmute(varin), ::std::mem::transmute(ielem), &mut result__).from_abi::<super::Com::VARIANT>(result__)
2801     }
2802     #[cfg(not(windows))]
2803     unimplemented!("Unsupported target OS");
2804 }
2805 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2806 #[repr(transparent)]
2807 pub struct PDOPSTATUS(pub i32);
2808 pub const PDOPS_RUNNING: PDOPSTATUS = PDOPSTATUS(1i32);
2809 pub const PDOPS_PAUSED: PDOPSTATUS = PDOPSTATUS(2i32);
2810 pub const PDOPS_CANCELLED: PDOPSTATUS = PDOPSTATUS(3i32);
2811 pub const PDOPS_STOPPED: PDOPSTATUS = PDOPSTATUS(4i32);
2812 pub const PDOPS_ERRORS: PDOPSTATUS = PDOPSTATUS(5i32);
2813 impl ::std::convert::From<i32> for PDOPSTATUS {
from(value: i32) -> Self2814     fn from(value: i32) -> Self {
2815         Self(value)
2816     }
2817 }
2818 unsafe impl ::windows::runtime::Abi for PDOPSTATUS {
2819     type Abi = Self;
2820     type DefaultType = Self;
2821 }
2822 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2823 #[repr(transparent)]
2824 pub struct PKA_FLAGS(pub i32);
2825 pub const PKA_SET: PKA_FLAGS = PKA_FLAGS(0i32);
2826 pub const PKA_APPEND: PKA_FLAGS = PKA_FLAGS(1i32);
2827 pub const PKA_DELETE: PKA_FLAGS = PKA_FLAGS(2i32);
2828 impl ::std::convert::From<i32> for PKA_FLAGS {
from(value: i32) -> Self2829     fn from(value: i32) -> Self {
2830         Self(value)
2831     }
2832 }
2833 unsafe impl ::windows::runtime::Abi for PKA_FLAGS {
2834     type Abi = Self;
2835     type DefaultType = Self;
2836 }
2837 pub const PKEY_PIDSTR_MAX: u32 = 10u32;
2838 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2839 #[repr(transparent)]
2840 pub struct PLACEHOLDER_STATES(pub i32);
2841 pub const PS_NONE: PLACEHOLDER_STATES = PLACEHOLDER_STATES(0i32);
2842 pub const PS_MARKED_FOR_OFFLINE_AVAILABILITY: PLACEHOLDER_STATES = PLACEHOLDER_STATES(1i32);
2843 pub const PS_FULL_PRIMARY_STREAM_AVAILABLE: PLACEHOLDER_STATES = PLACEHOLDER_STATES(2i32);
2844 pub const PS_CREATE_FILE_ACCESSIBLE: PLACEHOLDER_STATES = PLACEHOLDER_STATES(4i32);
2845 pub const PS_CLOUDFILE_PLACEHOLDER: PLACEHOLDER_STATES = PLACEHOLDER_STATES(8i32);
2846 pub const PS_DEFAULT: PLACEHOLDER_STATES = PLACEHOLDER_STATES(7i32);
2847 pub const PS_ALL: PLACEHOLDER_STATES = PLACEHOLDER_STATES(15i32);
2848 impl ::std::convert::From<i32> for PLACEHOLDER_STATES {
from(value: i32) -> Self2849     fn from(value: i32) -> Self {
2850         Self(value)
2851     }
2852 }
2853 unsafe impl ::windows::runtime::Abi for PLACEHOLDER_STATES {
2854     type Abi = Self;
2855     type DefaultType = Self;
2856 }
2857 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2858 #[repr(transparent)]
2859 pub struct PROPDESC_AGGREGATION_TYPE(pub i32);
2860 pub const PDAT_DEFAULT: PROPDESC_AGGREGATION_TYPE = PROPDESC_AGGREGATION_TYPE(0i32);
2861 pub const PDAT_FIRST: PROPDESC_AGGREGATION_TYPE = PROPDESC_AGGREGATION_TYPE(1i32);
2862 pub const PDAT_SUM: PROPDESC_AGGREGATION_TYPE = PROPDESC_AGGREGATION_TYPE(2i32);
2863 pub const PDAT_AVERAGE: PROPDESC_AGGREGATION_TYPE = PROPDESC_AGGREGATION_TYPE(3i32);
2864 pub const PDAT_DATERANGE: PROPDESC_AGGREGATION_TYPE = PROPDESC_AGGREGATION_TYPE(4i32);
2865 pub const PDAT_UNION: PROPDESC_AGGREGATION_TYPE = PROPDESC_AGGREGATION_TYPE(5i32);
2866 pub const PDAT_MAX: PROPDESC_AGGREGATION_TYPE = PROPDESC_AGGREGATION_TYPE(6i32);
2867 pub const PDAT_MIN: PROPDESC_AGGREGATION_TYPE = PROPDESC_AGGREGATION_TYPE(7i32);
2868 impl ::std::convert::From<i32> for PROPDESC_AGGREGATION_TYPE {
from(value: i32) -> Self2869     fn from(value: i32) -> Self {
2870         Self(value)
2871     }
2872 }
2873 unsafe impl ::windows::runtime::Abi for PROPDESC_AGGREGATION_TYPE {
2874     type Abi = Self;
2875     type DefaultType = Self;
2876 }
2877 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2878 #[repr(transparent)]
2879 pub struct PROPDESC_COLUMNINDEX_TYPE(pub i32);
2880 pub const PDCIT_NONE: PROPDESC_COLUMNINDEX_TYPE = PROPDESC_COLUMNINDEX_TYPE(0i32);
2881 pub const PDCIT_ONDISK: PROPDESC_COLUMNINDEX_TYPE = PROPDESC_COLUMNINDEX_TYPE(1i32);
2882 pub const PDCIT_INMEMORY: PROPDESC_COLUMNINDEX_TYPE = PROPDESC_COLUMNINDEX_TYPE(2i32);
2883 pub const PDCIT_ONDEMAND: PROPDESC_COLUMNINDEX_TYPE = PROPDESC_COLUMNINDEX_TYPE(3i32);
2884 pub const PDCIT_ONDISKALL: PROPDESC_COLUMNINDEX_TYPE = PROPDESC_COLUMNINDEX_TYPE(4i32);
2885 pub const PDCIT_ONDISKVECTOR: PROPDESC_COLUMNINDEX_TYPE = PROPDESC_COLUMNINDEX_TYPE(5i32);
2886 impl ::std::convert::From<i32> for PROPDESC_COLUMNINDEX_TYPE {
from(value: i32) -> Self2887     fn from(value: i32) -> Self {
2888         Self(value)
2889     }
2890 }
2891 unsafe impl ::windows::runtime::Abi for PROPDESC_COLUMNINDEX_TYPE {
2892     type Abi = Self;
2893     type DefaultType = Self;
2894 }
2895 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2896 #[repr(transparent)]
2897 pub struct PROPDESC_CONDITION_TYPE(pub i32);
2898 pub const PDCOT_NONE: PROPDESC_CONDITION_TYPE = PROPDESC_CONDITION_TYPE(0i32);
2899 pub const PDCOT_STRING: PROPDESC_CONDITION_TYPE = PROPDESC_CONDITION_TYPE(1i32);
2900 pub const PDCOT_SIZE: PROPDESC_CONDITION_TYPE = PROPDESC_CONDITION_TYPE(2i32);
2901 pub const PDCOT_DATETIME: PROPDESC_CONDITION_TYPE = PROPDESC_CONDITION_TYPE(3i32);
2902 pub const PDCOT_BOOLEAN: PROPDESC_CONDITION_TYPE = PROPDESC_CONDITION_TYPE(4i32);
2903 pub const PDCOT_NUMBER: PROPDESC_CONDITION_TYPE = PROPDESC_CONDITION_TYPE(5i32);
2904 impl ::std::convert::From<i32> for PROPDESC_CONDITION_TYPE {
from(value: i32) -> Self2905     fn from(value: i32) -> Self {
2906         Self(value)
2907     }
2908 }
2909 unsafe impl ::windows::runtime::Abi for PROPDESC_CONDITION_TYPE {
2910     type Abi = Self;
2911     type DefaultType = Self;
2912 }
2913 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2914 #[repr(transparent)]
2915 pub struct PROPDESC_DISPLAYTYPE(pub i32);
2916 pub const PDDT_STRING: PROPDESC_DISPLAYTYPE = PROPDESC_DISPLAYTYPE(0i32);
2917 pub const PDDT_NUMBER: PROPDESC_DISPLAYTYPE = PROPDESC_DISPLAYTYPE(1i32);
2918 pub const PDDT_BOOLEAN: PROPDESC_DISPLAYTYPE = PROPDESC_DISPLAYTYPE(2i32);
2919 pub const PDDT_DATETIME: PROPDESC_DISPLAYTYPE = PROPDESC_DISPLAYTYPE(3i32);
2920 pub const PDDT_ENUMERATED: PROPDESC_DISPLAYTYPE = PROPDESC_DISPLAYTYPE(4i32);
2921 impl ::std::convert::From<i32> for PROPDESC_DISPLAYTYPE {
from(value: i32) -> Self2922     fn from(value: i32) -> Self {
2923         Self(value)
2924     }
2925 }
2926 unsafe impl ::windows::runtime::Abi for PROPDESC_DISPLAYTYPE {
2927     type Abi = Self;
2928     type DefaultType = Self;
2929 }
2930 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2931 #[repr(transparent)]
2932 pub struct PROPDESC_ENUMFILTER(pub i32);
2933 pub const PDEF_ALL: PROPDESC_ENUMFILTER = PROPDESC_ENUMFILTER(0i32);
2934 pub const PDEF_SYSTEM: PROPDESC_ENUMFILTER = PROPDESC_ENUMFILTER(1i32);
2935 pub const PDEF_NONSYSTEM: PROPDESC_ENUMFILTER = PROPDESC_ENUMFILTER(2i32);
2936 pub const PDEF_VIEWABLE: PROPDESC_ENUMFILTER = PROPDESC_ENUMFILTER(3i32);
2937 pub const PDEF_QUERYABLE: PROPDESC_ENUMFILTER = PROPDESC_ENUMFILTER(4i32);
2938 pub const PDEF_INFULLTEXTQUERY: PROPDESC_ENUMFILTER = PROPDESC_ENUMFILTER(5i32);
2939 pub const PDEF_COLUMN: PROPDESC_ENUMFILTER = PROPDESC_ENUMFILTER(6i32);
2940 impl ::std::convert::From<i32> for PROPDESC_ENUMFILTER {
from(value: i32) -> Self2941     fn from(value: i32) -> Self {
2942         Self(value)
2943     }
2944 }
2945 unsafe impl ::windows::runtime::Abi for PROPDESC_ENUMFILTER {
2946     type Abi = Self;
2947     type DefaultType = Self;
2948 }
2949 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2950 #[repr(transparent)]
2951 pub struct PROPDESC_FORMAT_FLAGS(pub i32);
2952 pub const PDFF_DEFAULT: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(0i32);
2953 pub const PDFF_PREFIXNAME: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(1i32);
2954 pub const PDFF_FILENAME: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(2i32);
2955 pub const PDFF_ALWAYSKB: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(4i32);
2956 pub const PDFF_RESERVED_RIGHTTOLEFT: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(8i32);
2957 pub const PDFF_SHORTTIME: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(16i32);
2958 pub const PDFF_LONGTIME: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(32i32);
2959 pub const PDFF_HIDETIME: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(64i32);
2960 pub const PDFF_SHORTDATE: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(128i32);
2961 pub const PDFF_LONGDATE: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(256i32);
2962 pub const PDFF_HIDEDATE: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(512i32);
2963 pub const PDFF_RELATIVEDATE: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(1024i32);
2964 pub const PDFF_USEEDITINVITATION: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(2048i32);
2965 pub const PDFF_READONLY: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(4096i32);
2966 pub const PDFF_NOAUTOREADINGORDER: PROPDESC_FORMAT_FLAGS = PROPDESC_FORMAT_FLAGS(8192i32);
2967 impl ::std::convert::From<i32> for PROPDESC_FORMAT_FLAGS {
from(value: i32) -> Self2968     fn from(value: i32) -> Self {
2969         Self(value)
2970     }
2971 }
2972 unsafe impl ::windows::runtime::Abi for PROPDESC_FORMAT_FLAGS {
2973     type Abi = Self;
2974     type DefaultType = Self;
2975 }
2976 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2977 #[repr(transparent)]
2978 pub struct PROPDESC_GROUPING_RANGE(pub i32);
2979 pub const PDGR_DISCRETE: PROPDESC_GROUPING_RANGE = PROPDESC_GROUPING_RANGE(0i32);
2980 pub const PDGR_ALPHANUMERIC: PROPDESC_GROUPING_RANGE = PROPDESC_GROUPING_RANGE(1i32);
2981 pub const PDGR_SIZE: PROPDESC_GROUPING_RANGE = PROPDESC_GROUPING_RANGE(2i32);
2982 pub const PDGR_DYNAMIC: PROPDESC_GROUPING_RANGE = PROPDESC_GROUPING_RANGE(3i32);
2983 pub const PDGR_DATE: PROPDESC_GROUPING_RANGE = PROPDESC_GROUPING_RANGE(4i32);
2984 pub const PDGR_PERCENT: PROPDESC_GROUPING_RANGE = PROPDESC_GROUPING_RANGE(5i32);
2985 pub const PDGR_ENUMERATED: PROPDESC_GROUPING_RANGE = PROPDESC_GROUPING_RANGE(6i32);
2986 impl ::std::convert::From<i32> for PROPDESC_GROUPING_RANGE {
from(value: i32) -> Self2987     fn from(value: i32) -> Self {
2988         Self(value)
2989     }
2990 }
2991 unsafe impl ::windows::runtime::Abi for PROPDESC_GROUPING_RANGE {
2992     type Abi = Self;
2993     type DefaultType = Self;
2994 }
2995 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2996 #[repr(transparent)]
2997 pub struct PROPDESC_RELATIVEDESCRIPTION_TYPE(pub i32);
2998 pub const PDRDT_GENERAL: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(0i32);
2999 pub const PDRDT_DATE: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(1i32);
3000 pub const PDRDT_SIZE: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(2i32);
3001 pub const PDRDT_COUNT: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(3i32);
3002 pub const PDRDT_REVISION: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(4i32);
3003 pub const PDRDT_LENGTH: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(5i32);
3004 pub const PDRDT_DURATION: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(6i32);
3005 pub const PDRDT_SPEED: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(7i32);
3006 pub const PDRDT_RATE: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(8i32);
3007 pub const PDRDT_RATING: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(9i32);
3008 pub const PDRDT_PRIORITY: PROPDESC_RELATIVEDESCRIPTION_TYPE = PROPDESC_RELATIVEDESCRIPTION_TYPE(10i32);
3009 impl ::std::convert::From<i32> for PROPDESC_RELATIVEDESCRIPTION_TYPE {
from(value: i32) -> Self3010     fn from(value: i32) -> Self {
3011         Self(value)
3012     }
3013 }
3014 unsafe impl ::windows::runtime::Abi for PROPDESC_RELATIVEDESCRIPTION_TYPE {
3015     type Abi = Self;
3016     type DefaultType = Self;
3017 }
3018 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3019 #[repr(transparent)]
3020 pub struct PROPDESC_SEARCHINFO_FLAGS(pub i32);
3021 pub const PDSIF_DEFAULT: PROPDESC_SEARCHINFO_FLAGS = PROPDESC_SEARCHINFO_FLAGS(0i32);
3022 pub const PDSIF_ININVERTEDINDEX: PROPDESC_SEARCHINFO_FLAGS = PROPDESC_SEARCHINFO_FLAGS(1i32);
3023 pub const PDSIF_ISCOLUMN: PROPDESC_SEARCHINFO_FLAGS = PROPDESC_SEARCHINFO_FLAGS(2i32);
3024 pub const PDSIF_ISCOLUMNSPARSE: PROPDESC_SEARCHINFO_FLAGS = PROPDESC_SEARCHINFO_FLAGS(4i32);
3025 pub const PDSIF_ALWAYSINCLUDE: PROPDESC_SEARCHINFO_FLAGS = PROPDESC_SEARCHINFO_FLAGS(8i32);
3026 pub const PDSIF_USEFORTYPEAHEAD: PROPDESC_SEARCHINFO_FLAGS = PROPDESC_SEARCHINFO_FLAGS(16i32);
3027 impl ::std::convert::From<i32> for PROPDESC_SEARCHINFO_FLAGS {
from(value: i32) -> Self3028     fn from(value: i32) -> Self {
3029         Self(value)
3030     }
3031 }
3032 unsafe impl ::windows::runtime::Abi for PROPDESC_SEARCHINFO_FLAGS {
3033     type Abi = Self;
3034     type DefaultType = Self;
3035 }
3036 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3037 #[repr(transparent)]
3038 pub struct PROPDESC_SORTDESCRIPTION(pub i32);
3039 pub const PDSD_GENERAL: PROPDESC_SORTDESCRIPTION = PROPDESC_SORTDESCRIPTION(0i32);
3040 pub const PDSD_A_Z: PROPDESC_SORTDESCRIPTION = PROPDESC_SORTDESCRIPTION(1i32);
3041 pub const PDSD_LOWEST_HIGHEST: PROPDESC_SORTDESCRIPTION = PROPDESC_SORTDESCRIPTION(2i32);
3042 pub const PDSD_SMALLEST_BIGGEST: PROPDESC_SORTDESCRIPTION = PROPDESC_SORTDESCRIPTION(3i32);
3043 pub const PDSD_OLDEST_NEWEST: PROPDESC_SORTDESCRIPTION = PROPDESC_SORTDESCRIPTION(4i32);
3044 impl ::std::convert::From<i32> for PROPDESC_SORTDESCRIPTION {
from(value: i32) -> Self3045     fn from(value: i32) -> Self {
3046         Self(value)
3047     }
3048 }
3049 unsafe impl ::windows::runtime::Abi for PROPDESC_SORTDESCRIPTION {
3050     type Abi = Self;
3051     type DefaultType = Self;
3052 }
3053 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3054 #[repr(transparent)]
3055 pub struct PROPDESC_TYPE_FLAGS(pub i32);
3056 pub const PDTF_DEFAULT: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(0i32);
3057 pub const PDTF_MULTIPLEVALUES: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(1i32);
3058 pub const PDTF_ISINNATE: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(2i32);
3059 pub const PDTF_ISGROUP: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(4i32);
3060 pub const PDTF_CANGROUPBY: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(8i32);
3061 pub const PDTF_CANSTACKBY: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(16i32);
3062 pub const PDTF_ISTREEPROPERTY: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(32i32);
3063 pub const PDTF_INCLUDEINFULLTEXTQUERY: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(64i32);
3064 pub const PDTF_ISVIEWABLE: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(128i32);
3065 pub const PDTF_ISQUERYABLE: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(256i32);
3066 pub const PDTF_CANBEPURGED: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(512i32);
3067 pub const PDTF_SEARCHRAWVALUE: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(1024i32);
3068 pub const PDTF_DONTCOERCEEMPTYSTRINGS: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(2048i32);
3069 pub const PDTF_ALWAYSINSUPPLEMENTALSTORE: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(4096i32);
3070 pub const PDTF_ISSYSTEMPROPERTY: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(-2147483648i32);
3071 pub const PDTF_MASK_ALL: PROPDESC_TYPE_FLAGS = PROPDESC_TYPE_FLAGS(-2147475457i32);
3072 impl ::std::convert::From<i32> for PROPDESC_TYPE_FLAGS {
from(value: i32) -> Self3073     fn from(value: i32) -> Self {
3074         Self(value)
3075     }
3076 }
3077 unsafe impl ::windows::runtime::Abi for PROPDESC_TYPE_FLAGS {
3078     type Abi = Self;
3079     type DefaultType = Self;
3080 }
3081 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3082 #[repr(transparent)]
3083 pub struct PROPDESC_VIEW_FLAGS(pub i32);
3084 pub const PDVF_DEFAULT: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(0i32);
3085 pub const PDVF_CENTERALIGN: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(1i32);
3086 pub const PDVF_RIGHTALIGN: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(2i32);
3087 pub const PDVF_BEGINNEWGROUP: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(4i32);
3088 pub const PDVF_FILLAREA: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(8i32);
3089 pub const PDVF_SORTDESCENDING: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(16i32);
3090 pub const PDVF_SHOWONLYIFPRESENT: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(32i32);
3091 pub const PDVF_SHOWBYDEFAULT: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(64i32);
3092 pub const PDVF_SHOWINPRIMARYLIST: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(128i32);
3093 pub const PDVF_SHOWINSECONDARYLIST: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(256i32);
3094 pub const PDVF_HIDELABEL: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(512i32);
3095 pub const PDVF_HIDDEN: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(2048i32);
3096 pub const PDVF_CANWRAP: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(4096i32);
3097 pub const PDVF_MASK_ALL: PROPDESC_VIEW_FLAGS = PROPDESC_VIEW_FLAGS(7167i32);
3098 impl ::std::convert::From<i32> for PROPDESC_VIEW_FLAGS {
from(value: i32) -> Self3099     fn from(value: i32) -> Self {
3100         Self(value)
3101     }
3102 }
3103 unsafe impl ::windows::runtime::Abi for PROPDESC_VIEW_FLAGS {
3104     type Abi = Self;
3105     type DefaultType = Self;
3106 }
3107 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3108 #[repr(transparent)]
3109 pub struct PROPENUMTYPE(pub i32);
3110 pub const PET_DISCRETEVALUE: PROPENUMTYPE = PROPENUMTYPE(0i32);
3111 pub const PET_RANGEDVALUE: PROPENUMTYPE = PROPENUMTYPE(1i32);
3112 pub const PET_DEFAULTVALUE: PROPENUMTYPE = PROPENUMTYPE(2i32);
3113 pub const PET_ENDRANGE: PROPENUMTYPE = PROPENUMTYPE(3i32);
3114 impl ::std::convert::From<i32> for PROPENUMTYPE {
from(value: i32) -> Self3115     fn from(value: i32) -> Self {
3116         Self(value)
3117     }
3118 }
3119 unsafe impl ::windows::runtime::Abi for PROPENUMTYPE {
3120     type Abi = Self;
3121     type DefaultType = Self;
3122 }
3123 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3124 #[repr(C)]
3125 pub struct PROPERTYKEY {
3126     pub fmtid: ::windows::runtime::GUID,
3127     pub pid: u32,
3128 }
3129 impl PROPERTYKEY {}
3130 impl ::std::default::Default for PROPERTYKEY {
default() -> Self3131     fn default() -> Self {
3132         unsafe { ::std::mem::zeroed() }
3133     }
3134 }
3135 impl ::std::fmt::Debug for PROPERTYKEY {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3136     fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3137         fmt.debug_struct("PROPERTYKEY").field("fmtid", &self.fmtid).field("pid", &self.pid).finish()
3138     }
3139 }
3140 impl ::std::cmp::PartialEq for PROPERTYKEY {
eq(&self, other: &Self) -> bool3141     fn eq(&self, other: &Self) -> bool {
3142         self.fmtid == other.fmtid && self.pid == other.pid
3143     }
3144 }
3145 impl ::std::cmp::Eq for PROPERTYKEY {}
3146 unsafe impl ::windows::runtime::Abi for PROPERTYKEY {
3147     type Abi = Self;
3148     type DefaultType = Self;
3149 }
3150 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3151 #[repr(C, packed(1))]
3152 #[cfg(feature = "Win32_Foundation")]
3153 pub struct PROPPRG {
3154     pub flPrg: u16,
3155     pub flPrgInit: u16,
3156     pub achTitle: [super::super::Foundation::CHAR; 30],
3157     pub achCmdLine: [super::super::Foundation::CHAR; 128],
3158     pub achWorkDir: [super::super::Foundation::CHAR; 64],
3159     pub wHotKey: u16,
3160     pub achIconFile: [super::super::Foundation::CHAR; 80],
3161     pub wIconIndex: u16,
3162     pub dwEnhModeFlags: u32,
3163     pub dwRealModeFlags: u32,
3164     pub achOtherFile: [super::super::Foundation::CHAR; 80],
3165     pub achPIFFile: [super::super::Foundation::CHAR; 260],
3166 }
3167 #[cfg(feature = "Win32_Foundation")]
3168 impl PROPPRG {}
3169 #[cfg(feature = "Win32_Foundation")]
3170 impl ::std::default::Default for PROPPRG {
default() -> Self3171     fn default() -> Self {
3172         unsafe { ::std::mem::zeroed() }
3173     }
3174 }
3175 #[cfg(feature = "Win32_Foundation")]
3176 impl ::std::cmp::PartialEq for PROPPRG {
eq(&self, _other: &Self) -> bool3177     fn eq(&self, _other: &Self) -> bool {
3178         unimplemented!()
3179     }
3180 }
3181 #[cfg(feature = "Win32_Foundation")]
3182 impl ::std::cmp::Eq for PROPPRG {}
3183 #[cfg(feature = "Win32_Foundation")]
3184 unsafe impl ::windows::runtime::Abi for PROPPRG {
3185     type Abi = Self;
3186     type DefaultType = Self;
3187 }
3188 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3189 #[repr(transparent)]
3190 pub struct PROPVAR_CHANGE_FLAGS(pub i32);
3191 pub const PVCHF_DEFAULT: PROPVAR_CHANGE_FLAGS = PROPVAR_CHANGE_FLAGS(0i32);
3192 pub const PVCHF_NOVALUEPROP: PROPVAR_CHANGE_FLAGS = PROPVAR_CHANGE_FLAGS(1i32);
3193 pub const PVCHF_ALPHABOOL: PROPVAR_CHANGE_FLAGS = PROPVAR_CHANGE_FLAGS(2i32);
3194 pub const PVCHF_NOUSEROVERRIDE: PROPVAR_CHANGE_FLAGS = PROPVAR_CHANGE_FLAGS(4i32);
3195 pub const PVCHF_LOCALBOOL: PROPVAR_CHANGE_FLAGS = PROPVAR_CHANGE_FLAGS(8i32);
3196 pub const PVCHF_NOHEXSTRING: PROPVAR_CHANGE_FLAGS = PROPVAR_CHANGE_FLAGS(16i32);
3197 impl ::std::convert::From<i32> for PROPVAR_CHANGE_FLAGS {
from(value: i32) -> Self3198     fn from(value: i32) -> Self {
3199         Self(value)
3200     }
3201 }
3202 unsafe impl ::windows::runtime::Abi for PROPVAR_CHANGE_FLAGS {
3203     type Abi = Self;
3204     type DefaultType = Self;
3205 }
3206 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3207 #[repr(transparent)]
3208 pub struct PROPVAR_COMPARE_FLAGS(pub i32);
3209 pub const PVCF_DEFAULT: PROPVAR_COMPARE_FLAGS = PROPVAR_COMPARE_FLAGS(0i32);
3210 pub const PVCF_TREATEMPTYASGREATERTHAN: PROPVAR_COMPARE_FLAGS = PROPVAR_COMPARE_FLAGS(1i32);
3211 pub const PVCF_USESTRCMP: PROPVAR_COMPARE_FLAGS = PROPVAR_COMPARE_FLAGS(2i32);
3212 pub const PVCF_USESTRCMPC: PROPVAR_COMPARE_FLAGS = PROPVAR_COMPARE_FLAGS(4i32);
3213 pub const PVCF_USESTRCMPI: PROPVAR_COMPARE_FLAGS = PROPVAR_COMPARE_FLAGS(8i32);
3214 pub const PVCF_USESTRCMPIC: PROPVAR_COMPARE_FLAGS = PROPVAR_COMPARE_FLAGS(16i32);
3215 pub const PVCF_DIGITSASNUMBERS_CASESENSITIVE: PROPVAR_COMPARE_FLAGS = PROPVAR_COMPARE_FLAGS(32i32);
3216 impl ::std::convert::From<i32> for PROPVAR_COMPARE_FLAGS {
from(value: i32) -> Self3217     fn from(value: i32) -> Self {
3218         Self(value)
3219     }
3220 }
3221 unsafe impl ::windows::runtime::Abi for PROPVAR_COMPARE_FLAGS {
3222     type Abi = Self;
3223     type DefaultType = Self;
3224 }
3225 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3226 #[repr(transparent)]
3227 pub struct PROPVAR_COMPARE_UNIT(pub i32);
3228 pub const PVCU_DEFAULT: PROPVAR_COMPARE_UNIT = PROPVAR_COMPARE_UNIT(0i32);
3229 pub const PVCU_SECOND: PROPVAR_COMPARE_UNIT = PROPVAR_COMPARE_UNIT(1i32);
3230 pub const PVCU_MINUTE: PROPVAR_COMPARE_UNIT = PROPVAR_COMPARE_UNIT(2i32);
3231 pub const PVCU_HOUR: PROPVAR_COMPARE_UNIT = PROPVAR_COMPARE_UNIT(3i32);
3232 pub const PVCU_DAY: PROPVAR_COMPARE_UNIT = PROPVAR_COMPARE_UNIT(4i32);
3233 pub const PVCU_MONTH: PROPVAR_COMPARE_UNIT = PROPVAR_COMPARE_UNIT(5i32);
3234 pub const PVCU_YEAR: PROPVAR_COMPARE_UNIT = PROPVAR_COMPARE_UNIT(6i32);
3235 impl ::std::convert::From<i32> for PROPVAR_COMPARE_UNIT {
from(value: i32) -> Self3236     fn from(value: i32) -> Self {
3237         Self(value)
3238     }
3239 }
3240 unsafe impl ::windows::runtime::Abi for PROPVAR_COMPARE_UNIT {
3241     type Abi = Self;
3242     type DefaultType = Self;
3243 }
3244 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3245 #[repr(transparent)]
3246 pub struct PSC_STATE(pub i32);
3247 pub const PSC_NORMAL: PSC_STATE = PSC_STATE(0i32);
3248 pub const PSC_NOTINSOURCE: PSC_STATE = PSC_STATE(1i32);
3249 pub const PSC_DIRTY: PSC_STATE = PSC_STATE(2i32);
3250 pub const PSC_READONLY: PSC_STATE = PSC_STATE(3i32);
3251 impl ::std::convert::From<i32> for PSC_STATE {
from(value: i32) -> Self3252     fn from(value: i32) -> Self {
3253         Self(value)
3254     }
3255 }
3256 unsafe impl ::windows::runtime::Abi for PSC_STATE {
3257     type Abi = Self;
3258     type DefaultType = Self;
3259 }
3260 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3261 #[inline]
PSCoerceToCanonicalValue(key: *const PROPERTYKEY, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>3262 pub unsafe fn PSCoerceToCanonicalValue(key: *const PROPERTYKEY, ppropvar: *mut super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
3263     #[cfg(windows)]
3264     {
3265         #[link(name = "windows")]
3266         extern "system" {
3267             fn PSCoerceToCanonicalValue(key: *const PROPERTYKEY, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
3268         }
3269         PSCoerceToCanonicalValue(::std::mem::transmute(key), ::std::mem::transmute(ppropvar)).ok()
3270     }
3271     #[cfg(not(windows))]
3272     unimplemented!("Unsupported target OS");
3273 }
3274 #[inline]
PSCreateAdapterFromPropertyStore<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyStore>>(pps: Param0, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3275 pub unsafe fn PSCreateAdapterFromPropertyStore<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyStore>>(pps: Param0, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3276     #[cfg(windows)]
3277     {
3278         #[link(name = "windows")]
3279         extern "system" {
3280             fn PSCreateAdapterFromPropertyStore(pps: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3281         }
3282         PSCreateAdapterFromPropertyStore(pps.into_param().abi(), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3283     }
3284     #[cfg(not(windows))]
3285     unimplemented!("Unsupported target OS");
3286 }
3287 #[inline]
PSCreateDelayedMultiplexPropertyStore<'a, Param1: ::windows::runtime::IntoParam<'a, IDelayedPropertyStoreFactory>>(flags: GETPROPERTYSTOREFLAGS, pdpsf: Param1, rgstoreids: *const u32, cstores: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3288 pub unsafe fn PSCreateDelayedMultiplexPropertyStore<'a, Param1: ::windows::runtime::IntoParam<'a, IDelayedPropertyStoreFactory>>(flags: GETPROPERTYSTOREFLAGS, pdpsf: Param1, rgstoreids: *const u32, cstores: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3289     #[cfg(windows)]
3290     {
3291         #[link(name = "windows")]
3292         extern "system" {
3293             fn PSCreateDelayedMultiplexPropertyStore(flags: GETPROPERTYSTOREFLAGS, pdpsf: ::windows::runtime::RawPtr, rgstoreids: *const u32, cstores: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3294         }
3295         PSCreateDelayedMultiplexPropertyStore(::std::mem::transmute(flags), pdpsf.into_param().abi(), ::std::mem::transmute(rgstoreids), ::std::mem::transmute(cstores), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3296     }
3297     #[cfg(not(windows))]
3298     unimplemented!("Unsupported target OS");
3299 }
3300 #[inline]
PSCreateMemoryPropertyStore(riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3301 pub unsafe fn PSCreateMemoryPropertyStore(riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3302     #[cfg(windows)]
3303     {
3304         #[link(name = "windows")]
3305         extern "system" {
3306             fn PSCreateMemoryPropertyStore(riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3307         }
3308         PSCreateMemoryPropertyStore(::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3309     }
3310     #[cfg(not(windows))]
3311     unimplemented!("Unsupported target OS");
3312 }
3313 #[inline]
PSCreateMultiplexPropertyStore(prgpunkstores: *const ::std::option::Option<::windows::runtime::IUnknown>, cstores: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3314 pub unsafe fn PSCreateMultiplexPropertyStore(prgpunkstores: *const ::std::option::Option<::windows::runtime::IUnknown>, cstores: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3315     #[cfg(windows)]
3316     {
3317         #[link(name = "windows")]
3318         extern "system" {
3319             fn PSCreateMultiplexPropertyStore(prgpunkstores: *const ::windows::runtime::RawPtr, cstores: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3320         }
3321         PSCreateMultiplexPropertyStore(::std::mem::transmute(prgpunkstores), ::std::mem::transmute(cstores), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3322     }
3323     #[cfg(not(windows))]
3324     unimplemented!("Unsupported target OS");
3325 }
3326 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3327 #[inline]
PSCreatePropertyChangeArray(rgpropkey: *const PROPERTYKEY, rgflags: *const PKA_FLAGS, rgpropvar: *const super::Com::StructuredStorage::PROPVARIANT, cchanges: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3328 pub unsafe fn PSCreatePropertyChangeArray(rgpropkey: *const PROPERTYKEY, rgflags: *const PKA_FLAGS, rgpropvar: *const super::Com::StructuredStorage::PROPVARIANT, cchanges: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3329     #[cfg(windows)]
3330     {
3331         #[link(name = "windows")]
3332         extern "system" {
3333             fn PSCreatePropertyChangeArray(rgpropkey: *const PROPERTYKEY, rgflags: *const PKA_FLAGS, rgpropvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, cchanges: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3334         }
3335         PSCreatePropertyChangeArray(::std::mem::transmute(rgpropkey), ::std::mem::transmute(rgflags), ::std::mem::transmute(rgpropvar), ::std::mem::transmute(cchanges), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3336     }
3337     #[cfg(not(windows))]
3338     unimplemented!("Unsupported target OS");
3339 }
3340 #[inline]
PSCreatePropertyStoreFromObject<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(punk: Param0, grfmode: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3341 pub unsafe fn PSCreatePropertyStoreFromObject<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(punk: Param0, grfmode: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3342     #[cfg(windows)]
3343     {
3344         #[link(name = "windows")]
3345         extern "system" {
3346             fn PSCreatePropertyStoreFromObject(punk: ::windows::runtime::RawPtr, grfmode: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3347         }
3348         PSCreatePropertyStoreFromObject(punk.into_param().abi(), ::std::mem::transmute(grfmode), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3349     }
3350     #[cfg(not(windows))]
3351     unimplemented!("Unsupported target OS");
3352 }
3353 #[cfg(feature = "Win32_System_Com_StructuredStorage")]
3354 #[inline]
PSCreatePropertyStoreFromPropertySetStorage<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::StructuredStorage::IPropertySetStorage>>(ppss: Param0, grfmode: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3355 pub unsafe fn PSCreatePropertyStoreFromPropertySetStorage<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::StructuredStorage::IPropertySetStorage>>(ppss: Param0, grfmode: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3356     #[cfg(windows)]
3357     {
3358         #[link(name = "windows")]
3359         extern "system" {
3360             fn PSCreatePropertyStoreFromPropertySetStorage(ppss: ::windows::runtime::RawPtr, grfmode: u32, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3361         }
3362         PSCreatePropertyStoreFromPropertySetStorage(ppss.into_param().abi(), ::std::mem::transmute(grfmode), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3363     }
3364     #[cfg(not(windows))]
3365     unimplemented!("Unsupported target OS");
3366 }
3367 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3368 #[inline]
PSCreateSimplePropertyChange(flags: PKA_FLAGS, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3369 pub unsafe fn PSCreateSimplePropertyChange(flags: PKA_FLAGS, key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3370     #[cfg(windows)]
3371     {
3372         #[link(name = "windows")]
3373         extern "system" {
3374             fn PSCreateSimplePropertyChange(flags: PKA_FLAGS, key: *const PROPERTYKEY, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3375         }
3376         PSCreateSimplePropertyChange(::std::mem::transmute(flags), ::std::mem::transmute(key), ::std::mem::transmute(propvar), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3377     }
3378     #[cfg(not(windows))]
3379     unimplemented!("Unsupported target OS");
3380 }
3381 #[inline]
PSEnumeratePropertyDescriptions(filteron: PROPDESC_ENUMFILTER, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3382 pub unsafe fn PSEnumeratePropertyDescriptions(filteron: PROPDESC_ENUMFILTER, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3383     #[cfg(windows)]
3384     {
3385         #[link(name = "windows")]
3386         extern "system" {
3387             fn PSEnumeratePropertyDescriptions(filteron: PROPDESC_ENUMFILTER, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3388         }
3389         PSEnumeratePropertyDescriptions(::std::mem::transmute(filteron), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3390     }
3391     #[cfg(not(windows))]
3392     unimplemented!("Unsupported target OS");
3393 }
3394 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3395 #[inline]
PSFormatForDisplay(propkey: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()>3396 pub unsafe fn PSFormatForDisplay(propkey: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdfflags: PROPDESC_FORMAT_FLAGS, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::Result<()> {
3397     #[cfg(windows)]
3398     {
3399         #[link(name = "windows")]
3400         extern "system" {
3401             fn PSFormatForDisplay(propkey: *const PROPERTYKEY, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdfflags: PROPDESC_FORMAT_FLAGS, pwsztext: super::super::Foundation::PWSTR, cchtext: u32) -> ::windows::runtime::HRESULT;
3402         }
3403         PSFormatForDisplay(::std::mem::transmute(propkey), ::std::mem::transmute(propvar), ::std::mem::transmute(pdfflags), ::std::mem::transmute(pwsztext), ::std::mem::transmute(cchtext)).ok()
3404     }
3405     #[cfg(not(windows))]
3406     unimplemented!("Unsupported target OS");
3407 }
3408 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3409 #[inline]
PSFormatForDisplayAlloc(key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdff: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>3410 pub unsafe fn PSFormatForDisplayAlloc(key: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT, pdff: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
3411     #[cfg(windows)]
3412     {
3413         #[link(name = "windows")]
3414         extern "system" {
3415             fn PSFormatForDisplayAlloc(key: *const PROPERTYKEY, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdff: PROPDESC_FORMAT_FLAGS, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
3416         }
3417         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3418         PSFormatForDisplayAlloc(::std::mem::transmute(key), ::std::mem::transmute(propvar), ::std::mem::transmute(pdff), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
3419     }
3420     #[cfg(not(windows))]
3421     unimplemented!("Unsupported target OS");
3422 }
3423 #[cfg(feature = "Win32_Foundation")]
3424 #[inline]
PSFormatPropertyValue<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyStore>, Param1: ::windows::runtime::IntoParam<'a, IPropertyDescription>>(pps: Param0, ppd: Param1, pdff: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>3425 pub unsafe fn PSFormatPropertyValue<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyStore>, Param1: ::windows::runtime::IntoParam<'a, IPropertyDescription>>(pps: Param0, ppd: Param1, pdff: PROPDESC_FORMAT_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
3426     #[cfg(windows)]
3427     {
3428         #[link(name = "windows")]
3429         extern "system" {
3430             fn PSFormatPropertyValue(pps: ::windows::runtime::RawPtr, ppd: ::windows::runtime::RawPtr, pdff: PROPDESC_FORMAT_FLAGS, ppszdisplay: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
3431         }
3432         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3433         PSFormatPropertyValue(pps.into_param().abi(), ppd.into_param().abi(), ::std::mem::transmute(pdff), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
3434     }
3435     #[cfg(not(windows))]
3436     unimplemented!("Unsupported target OS");
3437 }
3438 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3439 #[inline]
PSGetImageReferenceForValue(propkey: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>3440 pub unsafe fn PSGetImageReferenceForValue(propkey: *const PROPERTYKEY, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
3441     #[cfg(windows)]
3442     {
3443         #[link(name = "windows")]
3444         extern "system" {
3445             fn PSGetImageReferenceForValue(propkey: *const PROPERTYKEY, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppszimageres: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
3446         }
3447         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3448         PSGetImageReferenceForValue(::std::mem::transmute(propkey), ::std::mem::transmute(propvar), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
3449     }
3450     #[cfg(not(windows))]
3451     unimplemented!("Unsupported target OS");
3452 }
3453 #[cfg(feature = "Win32_Foundation")]
3454 #[inline]
PSGetItemPropertyHandler<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(punkitem: Param0, freadwrite: Param1, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3455 pub unsafe fn PSGetItemPropertyHandler<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(punkitem: Param0, freadwrite: Param1, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3456     #[cfg(windows)]
3457     {
3458         #[link(name = "windows")]
3459         extern "system" {
3460             fn PSGetItemPropertyHandler(punkitem: ::windows::runtime::RawPtr, freadwrite: super::super::Foundation::BOOL, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3461         }
3462         PSGetItemPropertyHandler(punkitem.into_param().abi(), freadwrite.into_param().abi(), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3463     }
3464     #[cfg(not(windows))]
3465     unimplemented!("Unsupported target OS");
3466 }
3467 #[cfg(feature = "Win32_Foundation")]
3468 #[inline]
PSGetItemPropertyHandlerWithCreateObject<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(punkitem: Param0, freadwrite: Param1, punkcreateobject: Param2, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3469 pub unsafe fn PSGetItemPropertyHandlerWithCreateObject<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(punkitem: Param0, freadwrite: Param1, punkcreateobject: Param2, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3470     #[cfg(windows)]
3471     {
3472         #[link(name = "windows")]
3473         extern "system" {
3474             fn PSGetItemPropertyHandlerWithCreateObject(punkitem: ::windows::runtime::RawPtr, freadwrite: super::super::Foundation::BOOL, punkcreateobject: ::windows::runtime::RawPtr, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3475         }
3476         PSGetItemPropertyHandlerWithCreateObject(punkitem.into_param().abi(), freadwrite.into_param().abi(), punkcreateobject.into_param().abi(), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3477     }
3478     #[cfg(not(windows))]
3479     unimplemented!("Unsupported target OS");
3480 }
3481 #[cfg(feature = "Win32_Foundation")]
3482 #[inline]
PSGetNameFromPropertyKey(propkey: *const PROPERTYKEY) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>3483 pub unsafe fn PSGetNameFromPropertyKey(propkey: *const PROPERTYKEY) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
3484     #[cfg(windows)]
3485     {
3486         #[link(name = "windows")]
3487         extern "system" {
3488             fn PSGetNameFromPropertyKey(propkey: *const PROPERTYKEY, ppszcanonicalname: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
3489         }
3490         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3491         PSGetNameFromPropertyKey(::std::mem::transmute(propkey), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
3492     }
3493     #[cfg(not(windows))]
3494     unimplemented!("Unsupported target OS");
3495 }
3496 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3497 #[inline]
PSGetNamedPropertyFromPropertyStorage<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(psps: *const SERIALIZEDPROPSTORAGE, cb: u32, pszname: Param2) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>3498 pub unsafe fn PSGetNamedPropertyFromPropertyStorage<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(psps: *const SERIALIZEDPROPSTORAGE, cb: u32, pszname: Param2) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
3499     #[cfg(windows)]
3500     {
3501         #[link(name = "windows")]
3502         extern "system" {
3503             fn PSGetNamedPropertyFromPropertyStorage(psps: *const SERIALIZEDPROPSTORAGE, cb: u32, pszname: super::super::Foundation::PWSTR, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
3504         }
3505         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3506         PSGetNamedPropertyFromPropertyStorage(::std::mem::transmute(psps), ::std::mem::transmute(cb), pszname.into_param().abi(), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
3507     }
3508     #[cfg(not(windows))]
3509     unimplemented!("Unsupported target OS");
3510 }
3511 #[inline]
PSGetPropertyDescription(propkey: *const PROPERTYKEY, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3512 pub unsafe fn PSGetPropertyDescription(propkey: *const PROPERTYKEY, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3513     #[cfg(windows)]
3514     {
3515         #[link(name = "windows")]
3516         extern "system" {
3517             fn PSGetPropertyDescription(propkey: *const PROPERTYKEY, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3518         }
3519         PSGetPropertyDescription(::std::mem::transmute(propkey), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3520     }
3521     #[cfg(not(windows))]
3522     unimplemented!("Unsupported target OS");
3523 }
3524 #[cfg(feature = "Win32_Foundation")]
3525 #[inline]
PSGetPropertyDescriptionByName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszcanonicalname: Param0, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3526 pub unsafe fn PSGetPropertyDescriptionByName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszcanonicalname: Param0, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3527     #[cfg(windows)]
3528     {
3529         #[link(name = "windows")]
3530         extern "system" {
3531             fn PSGetPropertyDescriptionByName(pszcanonicalname: super::super::Foundation::PWSTR, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3532         }
3533         PSGetPropertyDescriptionByName(pszcanonicalname.into_param().abi(), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3534     }
3535     #[cfg(not(windows))]
3536     unimplemented!("Unsupported target OS");
3537 }
3538 #[cfg(feature = "Win32_Foundation")]
3539 #[inline]
PSGetPropertyDescriptionListFromString<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszproplist: Param0, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3540 pub unsafe fn PSGetPropertyDescriptionListFromString<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszproplist: Param0, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3541     #[cfg(windows)]
3542     {
3543         #[link(name = "windows")]
3544         extern "system" {
3545             fn PSGetPropertyDescriptionListFromString(pszproplist: super::super::Foundation::PWSTR, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3546         }
3547         PSGetPropertyDescriptionListFromString(pszproplist.into_param().abi(), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3548     }
3549     #[cfg(not(windows))]
3550     unimplemented!("Unsupported target OS");
3551 }
3552 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3553 #[inline]
PSGetPropertyFromPropertyStorage(psps: *const SERIALIZEDPROPSTORAGE, cb: u32, rpkey: *const PROPERTYKEY) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>3554 pub unsafe fn PSGetPropertyFromPropertyStorage(psps: *const SERIALIZEDPROPSTORAGE, cb: u32, rpkey: *const PROPERTYKEY) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
3555     #[cfg(windows)]
3556     {
3557         #[link(name = "windows")]
3558         extern "system" {
3559             fn PSGetPropertyFromPropertyStorage(psps: *const SERIALIZEDPROPSTORAGE, cb: u32, rpkey: *const PROPERTYKEY, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
3560         }
3561         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3562         PSGetPropertyFromPropertyStorage(::std::mem::transmute(psps), ::std::mem::transmute(cb), ::std::mem::transmute(rpkey), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
3563     }
3564     #[cfg(not(windows))]
3565     unimplemented!("Unsupported target OS");
3566 }
3567 #[cfg(feature = "Win32_Foundation")]
3568 #[inline]
PSGetPropertyKeyFromName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszname: Param0) -> ::windows::runtime::Result<PROPERTYKEY>3569 pub unsafe fn PSGetPropertyKeyFromName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszname: Param0) -> ::windows::runtime::Result<PROPERTYKEY> {
3570     #[cfg(windows)]
3571     {
3572         #[link(name = "windows")]
3573         extern "system" {
3574             fn PSGetPropertyKeyFromName(pszname: super::super::Foundation::PWSTR, ppropkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT;
3575         }
3576         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3577         PSGetPropertyKeyFromName(pszname.into_param().abi(), &mut result__).from_abi::<PROPERTYKEY>(result__)
3578     }
3579     #[cfg(not(windows))]
3580     unimplemented!("Unsupported target OS");
3581 }
3582 #[inline]
PSGetPropertySystem(riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3583 pub unsafe fn PSGetPropertySystem(riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3584     #[cfg(windows)]
3585     {
3586         #[link(name = "windows")]
3587         extern "system" {
3588             fn PSGetPropertySystem(riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3589         }
3590         PSGetPropertySystem(::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3591     }
3592     #[cfg(not(windows))]
3593     unimplemented!("Unsupported target OS");
3594 }
3595 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
3596 #[inline]
PSGetPropertyValue<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyStore>, Param1: ::windows::runtime::IntoParam<'a, IPropertyDescription>>(pps: Param0, ppd: Param1) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>3597 pub unsafe fn PSGetPropertyValue<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyStore>, Param1: ::windows::runtime::IntoParam<'a, IPropertyDescription>>(pps: Param0, ppd: Param1) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
3598     #[cfg(windows)]
3599     {
3600         #[link(name = "windows")]
3601         extern "system" {
3602             fn PSGetPropertyValue(pps: ::windows::runtime::RawPtr, ppd: ::windows::runtime::RawPtr, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
3603         }
3604         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3605         PSGetPropertyValue(pps.into_param().abi(), ppd.into_param().abi(), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
3606     }
3607     #[cfg(not(windows))]
3608     unimplemented!("Unsupported target OS");
3609 }
3610 #[cfg(feature = "Win32_Foundation")]
3611 #[inline]
PSLookupPropertyHandlerCLSID<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszfilepath: Param0) -> ::windows::runtime::Result<::windows::runtime::GUID>3612 pub unsafe fn PSLookupPropertyHandlerCLSID<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszfilepath: Param0) -> ::windows::runtime::Result<::windows::runtime::GUID> {
3613     #[cfg(windows)]
3614     {
3615         #[link(name = "windows")]
3616         extern "system" {
3617             fn PSLookupPropertyHandlerCLSID(pszfilepath: super::super::Foundation::PWSTR, pclsid: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT;
3618         }
3619         let mut result__: <::windows::runtime::GUID as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3620         PSLookupPropertyHandlerCLSID(pszfilepath.into_param().abi(), &mut result__).from_abi::<::windows::runtime::GUID>(result__)
3621     }
3622     #[cfg(not(windows))]
3623     unimplemented!("Unsupported target OS");
3624 }
3625 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3626 #[inline]
PSPropertyBag_Delete<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<()>3627 pub unsafe fn PSPropertyBag_Delete<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<()> {
3628     #[cfg(windows)]
3629     {
3630         #[link(name = "windows")]
3631         extern "system" {
3632             fn PSPropertyBag_Delete(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
3633         }
3634         PSPropertyBag_Delete(propbag.into_param().abi(), propname.into_param().abi()).ok()
3635     }
3636     #[cfg(not(windows))]
3637     unimplemented!("Unsupported target OS");
3638 }
3639 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3640 #[inline]
PSPropertyBag_ReadBOOL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::BOOL>3641 pub unsafe fn PSPropertyBag_ReadBOOL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
3642     #[cfg(windows)]
3643     {
3644         #[link(name = "windows")]
3645         extern "system" {
3646             fn PSPropertyBag_ReadBOOL(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
3647         }
3648         let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3649         PSPropertyBag_ReadBOOL(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
3650     }
3651     #[cfg(not(windows))]
3652     unimplemented!("Unsupported target OS");
3653 }
3654 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3655 #[inline]
PSPropertyBag_ReadBSTR<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::BSTR>3656 pub unsafe fn PSPropertyBag_ReadBSTR<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
3657     #[cfg(windows)]
3658     {
3659         #[link(name = "windows")]
3660         extern "system" {
3661             fn PSPropertyBag_ReadBSTR(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT;
3662         }
3663         let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3664         PSPropertyBag_ReadBSTR(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
3665     }
3666     #[cfg(not(windows))]
3667     unimplemented!("Unsupported target OS");
3668 }
3669 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3670 #[inline]
PSPropertyBag_ReadDWORD<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<u32>3671 pub unsafe fn PSPropertyBag_ReadDWORD<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<u32> {
3672     #[cfg(windows)]
3673     {
3674         #[link(name = "windows")]
3675         extern "system" {
3676             fn PSPropertyBag_ReadDWORD(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut u32) -> ::windows::runtime::HRESULT;
3677         }
3678         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3679         PSPropertyBag_ReadDWORD(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<u32>(result__)
3680     }
3681     #[cfg(not(windows))]
3682     unimplemented!("Unsupported target OS");
3683 }
3684 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3685 #[inline]
PSPropertyBag_ReadGUID<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<::windows::runtime::GUID>3686 pub unsafe fn PSPropertyBag_ReadGUID<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<::windows::runtime::GUID> {
3687     #[cfg(windows)]
3688     {
3689         #[link(name = "windows")]
3690         extern "system" {
3691             fn PSPropertyBag_ReadGUID(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT;
3692         }
3693         let mut result__: <::windows::runtime::GUID as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3694         PSPropertyBag_ReadGUID(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<::windows::runtime::GUID>(result__)
3695     }
3696     #[cfg(not(windows))]
3697     unimplemented!("Unsupported target OS");
3698 }
3699 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3700 #[inline]
PSPropertyBag_ReadInt<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<i32>3701 pub unsafe fn PSPropertyBag_ReadInt<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<i32> {
3702     #[cfg(windows)]
3703     {
3704         #[link(name = "windows")]
3705         extern "system" {
3706             fn PSPropertyBag_ReadInt(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut i32) -> ::windows::runtime::HRESULT;
3707         }
3708         let mut result__: <i32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3709         PSPropertyBag_ReadInt(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<i32>(result__)
3710     }
3711     #[cfg(not(windows))]
3712     unimplemented!("Unsupported target OS");
3713 }
3714 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3715 #[inline]
PSPropertyBag_ReadLONG<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<i32>3716 pub unsafe fn PSPropertyBag_ReadLONG<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<i32> {
3717     #[cfg(windows)]
3718     {
3719         #[link(name = "windows")]
3720         extern "system" {
3721             fn PSPropertyBag_ReadLONG(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut i32) -> ::windows::runtime::HRESULT;
3722         }
3723         let mut result__: <i32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3724         PSPropertyBag_ReadLONG(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<i32>(result__)
3725     }
3726     #[cfg(not(windows))]
3727     unimplemented!("Unsupported target OS");
3728 }
3729 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3730 #[inline]
PSPropertyBag_ReadPOINTL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::POINTL>3731 pub unsafe fn PSPropertyBag_ReadPOINTL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::POINTL> {
3732     #[cfg(windows)]
3733     {
3734         #[link(name = "windows")]
3735         extern "system" {
3736             fn PSPropertyBag_ReadPOINTL(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut super::super::Foundation::POINTL) -> ::windows::runtime::HRESULT;
3737         }
3738         let mut result__: <super::super::Foundation::POINTL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3739         PSPropertyBag_ReadPOINTL(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::POINTL>(result__)
3740     }
3741     #[cfg(not(windows))]
3742     unimplemented!("Unsupported target OS");
3743 }
3744 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3745 #[inline]
PSPropertyBag_ReadPOINTS<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::POINTS>3746 pub unsafe fn PSPropertyBag_ReadPOINTS<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::POINTS> {
3747     #[cfg(windows)]
3748     {
3749         #[link(name = "windows")]
3750         extern "system" {
3751             fn PSPropertyBag_ReadPOINTS(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut super::super::Foundation::POINTS) -> ::windows::runtime::HRESULT;
3752         }
3753         let mut result__: <super::super::Foundation::POINTS as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3754         PSPropertyBag_ReadPOINTS(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::POINTS>(result__)
3755     }
3756     #[cfg(not(windows))]
3757     unimplemented!("Unsupported target OS");
3758 }
3759 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3760 #[inline]
PSPropertyBag_ReadPropertyKey<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<PROPERTYKEY>3761 pub unsafe fn PSPropertyBag_ReadPropertyKey<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<PROPERTYKEY> {
3762     #[cfg(windows)]
3763     {
3764         #[link(name = "windows")]
3765         extern "system" {
3766             fn PSPropertyBag_ReadPropertyKey(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT;
3767         }
3768         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3769         PSPropertyBag_ReadPropertyKey(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<PROPERTYKEY>(result__)
3770     }
3771     #[cfg(not(windows))]
3772     unimplemented!("Unsupported target OS");
3773 }
3774 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3775 #[inline]
PSPropertyBag_ReadRECTL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::RECTL>3776 pub unsafe fn PSPropertyBag_ReadRECTL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::RECTL> {
3777     #[cfg(windows)]
3778     {
3779         #[link(name = "windows")]
3780         extern "system" {
3781             fn PSPropertyBag_ReadRECTL(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut super::super::Foundation::RECTL) -> ::windows::runtime::HRESULT;
3782         }
3783         let mut result__: <super::super::Foundation::RECTL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3784         PSPropertyBag_ReadRECTL(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::RECTL>(result__)
3785     }
3786     #[cfg(not(windows))]
3787     unimplemented!("Unsupported target OS");
3788 }
3789 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3790 #[inline]
PSPropertyBag_ReadSHORT<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<i16>3791 pub unsafe fn PSPropertyBag_ReadSHORT<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<i16> {
3792     #[cfg(windows)]
3793     {
3794         #[link(name = "windows")]
3795         extern "system" {
3796             fn PSPropertyBag_ReadSHORT(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut i16) -> ::windows::runtime::HRESULT;
3797         }
3798         let mut result__: <i16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3799         PSPropertyBag_ReadSHORT(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<i16>(result__)
3800     }
3801     #[cfg(not(windows))]
3802     unimplemented!("Unsupported target OS");
3803 }
3804 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3805 #[inline]
PSPropertyBag_ReadStr<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: super::super::Foundation::PWSTR, charactercount: i32) -> ::windows::runtime::Result<()>3806 pub unsafe fn PSPropertyBag_ReadStr<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: super::super::Foundation::PWSTR, charactercount: i32) -> ::windows::runtime::Result<()> {
3807     #[cfg(windows)]
3808     {
3809         #[link(name = "windows")]
3810         extern "system" {
3811             fn PSPropertyBag_ReadStr(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: super::super::Foundation::PWSTR, charactercount: i32) -> ::windows::runtime::HRESULT;
3812         }
3813         PSPropertyBag_ReadStr(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value), ::std::mem::transmute(charactercount)).ok()
3814     }
3815     #[cfg(not(windows))]
3816     unimplemented!("Unsupported target OS");
3817 }
3818 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3819 #[inline]
PSPropertyBag_ReadStrAlloc<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>3820 pub unsafe fn PSPropertyBag_ReadStrAlloc<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
3821     #[cfg(windows)]
3822     {
3823         #[link(name = "windows")]
3824         extern "system" {
3825             fn PSPropertyBag_ReadStrAlloc(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
3826         }
3827         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3828         PSPropertyBag_ReadStrAlloc(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
3829     }
3830     #[cfg(not(windows))]
3831     unimplemented!("Unsupported target OS");
3832 }
3833 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
3834 #[inline]
PSPropertyBag_ReadStream<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::Com::IStream>3835 pub unsafe fn PSPropertyBag_ReadStream<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<super::Com::IStream> {
3836     #[cfg(windows)]
3837     {
3838         #[link(name = "windows")]
3839         extern "system" {
3840             fn PSPropertyBag_ReadStream(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
3841         }
3842         let mut result__: <super::Com::IStream as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3843         PSPropertyBag_ReadStream(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<super::Com::IStream>(result__)
3844     }
3845     #[cfg(not(windows))]
3846     unimplemented!("Unsupported target OS");
3847 }
3848 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
3849 #[inline]
PSPropertyBag_ReadType<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, var: *mut super::Com::VARIANT, r#type: u16) -> ::windows::runtime::Result<()>3850 pub unsafe fn PSPropertyBag_ReadType<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, var: *mut super::Com::VARIANT, r#type: u16) -> ::windows::runtime::Result<()> {
3851     #[cfg(windows)]
3852     {
3853         #[link(name = "windows")]
3854         extern "system" {
3855             fn PSPropertyBag_ReadType(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, var: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>, r#type: u16) -> ::windows::runtime::HRESULT;
3856         }
3857         PSPropertyBag_ReadType(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(var), ::std::mem::transmute(r#type)).ok()
3858     }
3859     #[cfg(not(windows))]
3860     unimplemented!("Unsupported target OS");
3861 }
3862 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3863 #[inline]
PSPropertyBag_ReadULONGLONG<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<u64>3864 pub unsafe fn PSPropertyBag_ReadULONGLONG<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1) -> ::windows::runtime::Result<u64> {
3865     #[cfg(windows)]
3866     {
3867         #[link(name = "windows")]
3868         extern "system" {
3869             fn PSPropertyBag_ReadULONGLONG(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *mut u64) -> ::windows::runtime::HRESULT;
3870         }
3871         let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
3872         PSPropertyBag_ReadULONGLONG(propbag.into_param().abi(), propname.into_param().abi(), &mut result__).from_abi::<u64>(result__)
3873     }
3874     #[cfg(not(windows))]
3875     unimplemented!("Unsupported target OS");
3876 }
3877 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3878 #[inline]
PSPropertyBag_ReadUnknown<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>3879 pub unsafe fn PSPropertyBag_ReadUnknown<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
3880     #[cfg(windows)]
3881     {
3882         #[link(name = "windows")]
3883         extern "system" {
3884             fn PSPropertyBag_ReadUnknown(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
3885         }
3886         PSPropertyBag_ReadUnknown(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
3887     }
3888     #[cfg(not(windows))]
3889     unimplemented!("Unsupported target OS");
3890 }
3891 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3892 #[inline]
PSPropertyBag_WriteBOOL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(propbag: Param0, propname: Param1, value: Param2) -> ::windows::runtime::Result<()>3893 pub unsafe fn PSPropertyBag_WriteBOOL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(propbag: Param0, propname: Param1, value: Param2) -> ::windows::runtime::Result<()> {
3894     #[cfg(windows)]
3895     {
3896         #[link(name = "windows")]
3897         extern "system" {
3898             fn PSPropertyBag_WriteBOOL(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
3899         }
3900         PSPropertyBag_WriteBOOL(propbag.into_param().abi(), propname.into_param().abi(), value.into_param().abi()).ok()
3901     }
3902     #[cfg(not(windows))]
3903     unimplemented!("Unsupported target OS");
3904 }
3905 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3906 #[inline]
PSPropertyBag_WriteBSTR<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BSTR>>(propbag: Param0, propname: Param1, value: Param2) -> ::windows::runtime::Result<()>3907 pub unsafe fn PSPropertyBag_WriteBSTR<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BSTR>>(propbag: Param0, propname: Param1, value: Param2) -> ::windows::runtime::Result<()> {
3908     #[cfg(windows)]
3909     {
3910         #[link(name = "windows")]
3911         extern "system" {
3912             fn PSPropertyBag_WriteBSTR(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT;
3913         }
3914         PSPropertyBag_WriteBSTR(propbag.into_param().abi(), propname.into_param().abi(), value.into_param().abi()).ok()
3915     }
3916     #[cfg(not(windows))]
3917     unimplemented!("Unsupported target OS");
3918 }
3919 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3920 #[inline]
PSPropertyBag_WriteDWORD<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: u32) -> ::windows::runtime::Result<()>3921 pub unsafe fn PSPropertyBag_WriteDWORD<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: u32) -> ::windows::runtime::Result<()> {
3922     #[cfg(windows)]
3923     {
3924         #[link(name = "windows")]
3925         extern "system" {
3926             fn PSPropertyBag_WriteDWORD(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: u32) -> ::windows::runtime::HRESULT;
3927         }
3928         PSPropertyBag_WriteDWORD(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
3929     }
3930     #[cfg(not(windows))]
3931     unimplemented!("Unsupported target OS");
3932 }
3933 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3934 #[inline]
PSPropertyBag_WriteGUID<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<()>3935 pub unsafe fn PSPropertyBag_WriteGUID<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<()> {
3936     #[cfg(windows)]
3937     {
3938         #[link(name = "windows")]
3939         extern "system" {
3940             fn PSPropertyBag_WriteGUID(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *const ::windows::runtime::GUID) -> ::windows::runtime::HRESULT;
3941         }
3942         PSPropertyBag_WriteGUID(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
3943     }
3944     #[cfg(not(windows))]
3945     unimplemented!("Unsupported target OS");
3946 }
3947 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3948 #[inline]
PSPropertyBag_WriteInt<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: i32) -> ::windows::runtime::Result<()>3949 pub unsafe fn PSPropertyBag_WriteInt<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: i32) -> ::windows::runtime::Result<()> {
3950     #[cfg(windows)]
3951     {
3952         #[link(name = "windows")]
3953         extern "system" {
3954             fn PSPropertyBag_WriteInt(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: i32) -> ::windows::runtime::HRESULT;
3955         }
3956         PSPropertyBag_WriteInt(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
3957     }
3958     #[cfg(not(windows))]
3959     unimplemented!("Unsupported target OS");
3960 }
3961 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3962 #[inline]
PSPropertyBag_WriteLONG<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: i32) -> ::windows::runtime::Result<()>3963 pub unsafe fn PSPropertyBag_WriteLONG<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: i32) -> ::windows::runtime::Result<()> {
3964     #[cfg(windows)]
3965     {
3966         #[link(name = "windows")]
3967         extern "system" {
3968             fn PSPropertyBag_WriteLONG(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: i32) -> ::windows::runtime::HRESULT;
3969         }
3970         PSPropertyBag_WriteLONG(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
3971     }
3972     #[cfg(not(windows))]
3973     unimplemented!("Unsupported target OS");
3974 }
3975 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3976 #[inline]
PSPropertyBag_WritePOINTL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const super::super::Foundation::POINTL) -> ::windows::runtime::Result<()>3977 pub unsafe fn PSPropertyBag_WritePOINTL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const super::super::Foundation::POINTL) -> ::windows::runtime::Result<()> {
3978     #[cfg(windows)]
3979     {
3980         #[link(name = "windows")]
3981         extern "system" {
3982             fn PSPropertyBag_WritePOINTL(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *const super::super::Foundation::POINTL) -> ::windows::runtime::HRESULT;
3983         }
3984         PSPropertyBag_WritePOINTL(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
3985     }
3986     #[cfg(not(windows))]
3987     unimplemented!("Unsupported target OS");
3988 }
3989 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
3990 #[inline]
PSPropertyBag_WritePOINTS<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const super::super::Foundation::POINTS) -> ::windows::runtime::Result<()>3991 pub unsafe fn PSPropertyBag_WritePOINTS<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const super::super::Foundation::POINTS) -> ::windows::runtime::Result<()> {
3992     #[cfg(windows)]
3993     {
3994         #[link(name = "windows")]
3995         extern "system" {
3996             fn PSPropertyBag_WritePOINTS(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *const super::super::Foundation::POINTS) -> ::windows::runtime::HRESULT;
3997         }
3998         PSPropertyBag_WritePOINTS(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
3999     }
4000     #[cfg(not(windows))]
4001     unimplemented!("Unsupported target OS");
4002 }
4003 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
4004 #[inline]
PSPropertyBag_WritePropertyKey<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const PROPERTYKEY) -> ::windows::runtime::Result<()>4005 pub unsafe fn PSPropertyBag_WritePropertyKey<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const PROPERTYKEY) -> ::windows::runtime::Result<()> {
4006     #[cfg(windows)]
4007     {
4008         #[link(name = "windows")]
4009         extern "system" {
4010             fn PSPropertyBag_WritePropertyKey(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *const PROPERTYKEY) -> ::windows::runtime::HRESULT;
4011         }
4012         PSPropertyBag_WritePropertyKey(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
4013     }
4014     #[cfg(not(windows))]
4015     unimplemented!("Unsupported target OS");
4016 }
4017 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
4018 #[inline]
PSPropertyBag_WriteRECTL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const super::super::Foundation::RECTL) -> ::windows::runtime::Result<()>4019 pub unsafe fn PSPropertyBag_WriteRECTL<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: *const super::super::Foundation::RECTL) -> ::windows::runtime::Result<()> {
4020     #[cfg(windows)]
4021     {
4022         #[link(name = "windows")]
4023         extern "system" {
4024             fn PSPropertyBag_WriteRECTL(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: *const super::super::Foundation::RECTL) -> ::windows::runtime::HRESULT;
4025         }
4026         PSPropertyBag_WriteRECTL(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
4027     }
4028     #[cfg(not(windows))]
4029     unimplemented!("Unsupported target OS");
4030 }
4031 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
4032 #[inline]
PSPropertyBag_WriteSHORT<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: i16) -> ::windows::runtime::Result<()>4033 pub unsafe fn PSPropertyBag_WriteSHORT<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: i16) -> ::windows::runtime::Result<()> {
4034     #[cfg(windows)]
4035     {
4036         #[link(name = "windows")]
4037         extern "system" {
4038             fn PSPropertyBag_WriteSHORT(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: i16) -> ::windows::runtime::HRESULT;
4039         }
4040         PSPropertyBag_WriteSHORT(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
4041     }
4042     #[cfg(not(windows))]
4043     unimplemented!("Unsupported target OS");
4044 }
4045 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
4046 #[inline]
PSPropertyBag_WriteStr<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: Param2) -> ::windows::runtime::Result<()>4047 pub unsafe fn PSPropertyBag_WriteStr<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: Param2) -> ::windows::runtime::Result<()> {
4048     #[cfg(windows)]
4049     {
4050         #[link(name = "windows")]
4051         extern "system" {
4052             fn PSPropertyBag_WriteStr(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
4053         }
4054         PSPropertyBag_WriteStr(propbag.into_param().abi(), propname.into_param().abi(), value.into_param().abi()).ok()
4055     }
4056     #[cfg(not(windows))]
4057     unimplemented!("Unsupported target OS");
4058 }
4059 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
4060 #[inline]
PSPropertyBag_WriteStream<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::Com::IStream>>(propbag: Param0, propname: Param1, value: Param2) -> ::windows::runtime::Result<()>4061 pub unsafe fn PSPropertyBag_WriteStream<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::Com::IStream>>(propbag: Param0, propname: Param1, value: Param2) -> ::windows::runtime::Result<()> {
4062     #[cfg(windows)]
4063     {
4064         #[link(name = "windows")]
4065         extern "system" {
4066             fn PSPropertyBag_WriteStream(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
4067         }
4068         PSPropertyBag_WriteStream(propbag.into_param().abi(), propname.into_param().abi(), value.into_param().abi()).ok()
4069     }
4070     #[cfg(not(windows))]
4071     unimplemented!("Unsupported target OS");
4072 }
4073 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
4074 #[inline]
PSPropertyBag_WriteULONGLONG<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: u64) -> ::windows::runtime::Result<()>4075 pub unsafe fn PSPropertyBag_WriteULONGLONG<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propbag: Param0, propname: Param1, value: u64) -> ::windows::runtime::Result<()> {
4076     #[cfg(windows)]
4077     {
4078         #[link(name = "windows")]
4079         extern "system" {
4080             fn PSPropertyBag_WriteULONGLONG(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, value: u64) -> ::windows::runtime::HRESULT;
4081         }
4082         PSPropertyBag_WriteULONGLONG(propbag.into_param().abi(), propname.into_param().abi(), ::std::mem::transmute(value)).ok()
4083     }
4084     #[cfg(not(windows))]
4085     unimplemented!("Unsupported target OS");
4086 }
4087 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Ole_Automation"))]
4088 #[inline]
PSPropertyBag_WriteUnknown<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(propbag: Param0, propname: Param1, punk: Param2) -> ::windows::runtime::Result<()>4089 pub unsafe fn PSPropertyBag_WriteUnknown<'a, Param0: ::windows::runtime::IntoParam<'a, super::Ole::Automation::IPropertyBag>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(propbag: Param0, propname: Param1, punk: Param2) -> ::windows::runtime::Result<()> {
4090     #[cfg(windows)]
4091     {
4092         #[link(name = "windows")]
4093         extern "system" {
4094             fn PSPropertyBag_WriteUnknown(propbag: ::windows::runtime::RawPtr, propname: super::super::Foundation::PWSTR, punk: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
4095         }
4096         PSPropertyBag_WriteUnknown(propbag.into_param().abi(), propname.into_param().abi(), punk.into_param().abi()).ok()
4097     }
4098     #[cfg(not(windows))]
4099     unimplemented!("Unsupported target OS");
4100 }
4101 #[cfg(feature = "Win32_Foundation")]
4102 #[inline]
PSPropertyKeyFromString<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszstring: Param0) -> ::windows::runtime::Result<PROPERTYKEY>4103 pub unsafe fn PSPropertyKeyFromString<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszstring: Param0) -> ::windows::runtime::Result<PROPERTYKEY> {
4104     #[cfg(windows)]
4105     {
4106         #[link(name = "windows")]
4107         extern "system" {
4108             fn PSPropertyKeyFromString(pszstring: super::super::Foundation::PWSTR, pkey: *mut PROPERTYKEY) -> ::windows::runtime::HRESULT;
4109         }
4110         let mut result__: <PROPERTYKEY as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4111         PSPropertyKeyFromString(pszstring.into_param().abi(), &mut result__).from_abi::<PROPERTYKEY>(result__)
4112     }
4113     #[cfg(not(windows))]
4114     unimplemented!("Unsupported target OS");
4115 }
4116 #[inline]
PSRefreshPropertySchema() -> ::windows::runtime::Result<()>4117 pub unsafe fn PSRefreshPropertySchema() -> ::windows::runtime::Result<()> {
4118     #[cfg(windows)]
4119     {
4120         #[link(name = "windows")]
4121         extern "system" {
4122             fn PSRefreshPropertySchema() -> ::windows::runtime::HRESULT;
4123         }
4124         PSRefreshPropertySchema().ok()
4125     }
4126     #[cfg(not(windows))]
4127     unimplemented!("Unsupported target OS");
4128 }
4129 #[cfg(feature = "Win32_Foundation")]
4130 #[inline]
PSRegisterPropertySchema<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszpath: Param0) -> ::windows::runtime::Result<()>4131 pub unsafe fn PSRegisterPropertySchema<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszpath: Param0) -> ::windows::runtime::Result<()> {
4132     #[cfg(windows)]
4133     {
4134         #[link(name = "windows")]
4135         extern "system" {
4136             fn PSRegisterPropertySchema(pszpath: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
4137         }
4138         PSRegisterPropertySchema(pszpath.into_param().abi()).ok()
4139     }
4140     #[cfg(not(windows))]
4141     unimplemented!("Unsupported target OS");
4142 }
4143 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4144 #[inline]
PSSetPropertyValue<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyStore>, Param1: ::windows::runtime::IntoParam<'a, IPropertyDescription>>(pps: Param0, ppd: Param1, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()>4145 pub unsafe fn PSSetPropertyValue<'a, Param0: ::windows::runtime::IntoParam<'a, IPropertyStore>, Param1: ::windows::runtime::IntoParam<'a, IPropertyDescription>>(pps: Param0, ppd: Param1, propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<()> {
4146     #[cfg(windows)]
4147     {
4148         #[link(name = "windows")]
4149         extern "system" {
4150             fn PSSetPropertyValue(pps: ::windows::runtime::RawPtr, ppd: ::windows::runtime::RawPtr, propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
4151         }
4152         PSSetPropertyValue(pps.into_param().abi(), ppd.into_param().abi(), ::std::mem::transmute(propvar)).ok()
4153     }
4154     #[cfg(not(windows))]
4155     unimplemented!("Unsupported target OS");
4156 }
4157 #[cfg(feature = "Win32_Foundation")]
4158 #[inline]
PSStringFromPropertyKey(pkey: *const PROPERTYKEY, psz: super::super::Foundation::PWSTR, cch: u32) -> ::windows::runtime::Result<()>4159 pub unsafe fn PSStringFromPropertyKey(pkey: *const PROPERTYKEY, psz: super::super::Foundation::PWSTR, cch: u32) -> ::windows::runtime::Result<()> {
4160     #[cfg(windows)]
4161     {
4162         #[link(name = "windows")]
4163         extern "system" {
4164             fn PSStringFromPropertyKey(pkey: *const PROPERTYKEY, psz: super::super::Foundation::PWSTR, cch: u32) -> ::windows::runtime::HRESULT;
4165         }
4166         PSStringFromPropertyKey(::std::mem::transmute(pkey), ::std::mem::transmute(psz), ::std::mem::transmute(cch)).ok()
4167     }
4168     #[cfg(not(windows))]
4169     unimplemented!("Unsupported target OS");
4170 }
4171 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
4172 #[repr(transparent)]
4173 pub struct PSTIME_FLAGS(pub i32);
4174 pub const PSTF_UTC: PSTIME_FLAGS = PSTIME_FLAGS(0i32);
4175 pub const PSTF_LOCAL: PSTIME_FLAGS = PSTIME_FLAGS(1i32);
4176 impl ::std::convert::From<i32> for PSTIME_FLAGS {
from(value: i32) -> Self4177     fn from(value: i32) -> Self {
4178         Self(value)
4179     }
4180 }
4181 unsafe impl ::windows::runtime::Abi for PSTIME_FLAGS {
4182     type Abi = Self;
4183     type DefaultType = Self;
4184 }
4185 #[cfg(feature = "Win32_Foundation")]
4186 #[inline]
PSUnregisterPropertySchema<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszpath: Param0) -> ::windows::runtime::Result<()>4187 pub unsafe fn PSUnregisterPropertySchema<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszpath: Param0) -> ::windows::runtime::Result<()> {
4188     #[cfg(windows)]
4189     {
4190         #[link(name = "windows")]
4191         extern "system" {
4192             fn PSUnregisterPropertySchema(pszpath: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
4193         }
4194         PSUnregisterPropertySchema(pszpath.into_param().abi()).ok()
4195     }
4196     #[cfg(not(windows))]
4197     unimplemented!("Unsupported target OS");
4198 }
4199 #[cfg(feature = "Win32_Foundation")]
4200 #[inline]
PifMgr_CloseProperties<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HANDLE>>(hprops: Param0, flopt: u32) -> super::super::Foundation::HANDLE4201 pub unsafe fn PifMgr_CloseProperties<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HANDLE>>(hprops: Param0, flopt: u32) -> super::super::Foundation::HANDLE {
4202     #[cfg(windows)]
4203     {
4204         #[link(name = "windows")]
4205         extern "system" {
4206             fn PifMgr_CloseProperties(hprops: super::super::Foundation::HANDLE, flopt: u32) -> super::super::Foundation::HANDLE;
4207         }
4208         ::std::mem::transmute(PifMgr_CloseProperties(hprops.into_param().abi(), ::std::mem::transmute(flopt)))
4209     }
4210     #[cfg(not(windows))]
4211     unimplemented!("Unsupported target OS");
4212 }
4213 #[cfg(feature = "Win32_Foundation")]
4214 #[inline]
PifMgr_GetProperties<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HANDLE>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PSTR>>(hprops: Param0, pszgroup: Param1, lpprops: *mut ::std::ffi::c_void, cbprops: i32, flopt: u32) -> i324215 pub unsafe fn PifMgr_GetProperties<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HANDLE>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PSTR>>(hprops: Param0, pszgroup: Param1, lpprops: *mut ::std::ffi::c_void, cbprops: i32, flopt: u32) -> i32 {
4216     #[cfg(windows)]
4217     {
4218         #[link(name = "windows")]
4219         extern "system" {
4220             fn PifMgr_GetProperties(hprops: super::super::Foundation::HANDLE, pszgroup: super::super::Foundation::PSTR, lpprops: *mut ::std::ffi::c_void, cbprops: i32, flopt: u32) -> i32;
4221         }
4222         ::std::mem::transmute(PifMgr_GetProperties(hprops.into_param().abi(), pszgroup.into_param().abi(), ::std::mem::transmute(lpprops), ::std::mem::transmute(cbprops), ::std::mem::transmute(flopt)))
4223     }
4224     #[cfg(not(windows))]
4225     unimplemented!("Unsupported target OS");
4226 }
4227 #[cfg(feature = "Win32_Foundation")]
4228 #[inline]
PifMgr_OpenProperties<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszapp: Param0, pszpif: Param1, hinf: u32, flopt: u32) -> super::super::Foundation::HANDLE4229 pub unsafe fn PifMgr_OpenProperties<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(pszapp: Param0, pszpif: Param1, hinf: u32, flopt: u32) -> super::super::Foundation::HANDLE {
4230     #[cfg(windows)]
4231     {
4232         #[link(name = "windows")]
4233         extern "system" {
4234             fn PifMgr_OpenProperties(pszapp: super::super::Foundation::PWSTR, pszpif: super::super::Foundation::PWSTR, hinf: u32, flopt: u32) -> super::super::Foundation::HANDLE;
4235         }
4236         ::std::mem::transmute(PifMgr_OpenProperties(pszapp.into_param().abi(), pszpif.into_param().abi(), ::std::mem::transmute(hinf), ::std::mem::transmute(flopt)))
4237     }
4238     #[cfg(not(windows))]
4239     unimplemented!("Unsupported target OS");
4240 }
4241 #[cfg(feature = "Win32_Foundation")]
4242 #[inline]
PifMgr_SetProperties<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HANDLE>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PSTR>>(hprops: Param0, pszgroup: Param1, lpprops: *const ::std::ffi::c_void, cbprops: i32, flopt: u32) -> i324243 pub unsafe fn PifMgr_SetProperties<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HANDLE>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PSTR>>(hprops: Param0, pszgroup: Param1, lpprops: *const ::std::ffi::c_void, cbprops: i32, flopt: u32) -> i32 {
4244     #[cfg(windows)]
4245     {
4246         #[link(name = "windows")]
4247         extern "system" {
4248             fn PifMgr_SetProperties(hprops: super::super::Foundation::HANDLE, pszgroup: super::super::Foundation::PSTR, lpprops: *const ::std::ffi::c_void, cbprops: i32, flopt: u32) -> i32;
4249         }
4250         ::std::mem::transmute(PifMgr_SetProperties(hprops.into_param().abi(), pszgroup.into_param().abi(), ::std::mem::transmute(lpprops), ::std::mem::transmute(cbprops), ::std::mem::transmute(flopt)))
4251     }
4252     #[cfg(not(windows))]
4253     unimplemented!("Unsupported target OS");
4254 }
4255 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4256 #[inline]
PropVariantChangeType(ppropvardest: *mut super::Com::StructuredStorage::PROPVARIANT, propvarsrc: *const super::Com::StructuredStorage::PROPVARIANT, flags: PROPVAR_CHANGE_FLAGS, vt: u16) -> ::windows::runtime::Result<()>4257 pub unsafe fn PropVariantChangeType(ppropvardest: *mut super::Com::StructuredStorage::PROPVARIANT, propvarsrc: *const super::Com::StructuredStorage::PROPVARIANT, flags: PROPVAR_CHANGE_FLAGS, vt: u16) -> ::windows::runtime::Result<()> {
4258     #[cfg(windows)]
4259     {
4260         #[link(name = "windows")]
4261         extern "system" {
4262             fn PropVariantChangeType(ppropvardest: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, propvarsrc: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, flags: PROPVAR_CHANGE_FLAGS, vt: u16) -> ::windows::runtime::HRESULT;
4263         }
4264         PropVariantChangeType(::std::mem::transmute(ppropvardest), ::std::mem::transmute(propvarsrc), ::std::mem::transmute(flags), ::std::mem::transmute(vt)).ok()
4265     }
4266     #[cfg(not(windows))]
4267     unimplemented!("Unsupported target OS");
4268 }
4269 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4270 #[inline]
PropVariantCompareEx(propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, unit: PROPVAR_COMPARE_UNIT, flags: PROPVAR_COMPARE_FLAGS) -> i324271 pub unsafe fn PropVariantCompareEx(propvar1: *const super::Com::StructuredStorage::PROPVARIANT, propvar2: *const super::Com::StructuredStorage::PROPVARIANT, unit: PROPVAR_COMPARE_UNIT, flags: PROPVAR_COMPARE_FLAGS) -> i32 {
4272     #[cfg(windows)]
4273     {
4274         #[link(name = "windows")]
4275         extern "system" {
4276             fn PropVariantCompareEx(propvar1: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, propvar2: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, unit: PROPVAR_COMPARE_UNIT, flags: PROPVAR_COMPARE_FLAGS) -> i32;
4277         }
4278         ::std::mem::transmute(PropVariantCompareEx(::std::mem::transmute(propvar1), ::std::mem::transmute(propvar2), ::std::mem::transmute(unit), ::std::mem::transmute(flags)))
4279     }
4280     #[cfg(not(windows))]
4281     unimplemented!("Unsupported target OS");
4282 }
4283 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4284 #[inline]
PropVariantGetBooleanElem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL>4285 pub unsafe fn PropVariantGetBooleanElem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
4286     #[cfg(windows)]
4287     {
4288         #[link(name = "windows")]
4289         extern "system" {
4290             fn PropVariantGetBooleanElem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, pfval: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
4291         }
4292         let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4293         PropVariantGetBooleanElem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
4294     }
4295     #[cfg(not(windows))]
4296     unimplemented!("Unsupported target OS");
4297 }
4298 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4299 #[inline]
PropVariantGetDoubleElem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<f64>4300 pub unsafe fn PropVariantGetDoubleElem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<f64> {
4301     #[cfg(windows)]
4302     {
4303         #[link(name = "windows")]
4304         extern "system" {
4305             fn PropVariantGetDoubleElem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, pnval: *mut f64) -> ::windows::runtime::HRESULT;
4306         }
4307         let mut result__: <f64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4308         PropVariantGetDoubleElem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<f64>(result__)
4309     }
4310     #[cfg(not(windows))]
4311     unimplemented!("Unsupported target OS");
4312 }
4313 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4314 #[inline]
PropVariantGetElementCount(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> u324315 pub unsafe fn PropVariantGetElementCount(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> u32 {
4316     #[cfg(windows)]
4317     {
4318         #[link(name = "windows")]
4319         extern "system" {
4320             fn PropVariantGetElementCount(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> u32;
4321         }
4322         ::std::mem::transmute(PropVariantGetElementCount(::std::mem::transmute(propvar)))
4323     }
4324     #[cfg(not(windows))]
4325     unimplemented!("Unsupported target OS");
4326 }
4327 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4328 #[inline]
PropVariantGetFileTimeElem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::FILETIME>4329 pub unsafe fn PropVariantGetFileTimeElem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::FILETIME> {
4330     #[cfg(windows)]
4331     {
4332         #[link(name = "windows")]
4333         extern "system" {
4334             fn PropVariantGetFileTimeElem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, pftval: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::HRESULT;
4335         }
4336         let mut result__: <super::super::Foundation::FILETIME as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4337         PropVariantGetFileTimeElem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<super::super::Foundation::FILETIME>(result__)
4338     }
4339     #[cfg(not(windows))]
4340     unimplemented!("Unsupported target OS");
4341 }
4342 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4343 #[inline]
PropVariantGetInt16Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<i16>4344 pub unsafe fn PropVariantGetInt16Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<i16> {
4345     #[cfg(windows)]
4346     {
4347         #[link(name = "windows")]
4348         extern "system" {
4349             fn PropVariantGetInt16Elem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, pnval: *mut i16) -> ::windows::runtime::HRESULT;
4350         }
4351         let mut result__: <i16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4352         PropVariantGetInt16Elem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<i16>(result__)
4353     }
4354     #[cfg(not(windows))]
4355     unimplemented!("Unsupported target OS");
4356 }
4357 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4358 #[inline]
PropVariantGetInt32Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<i32>4359 pub unsafe fn PropVariantGetInt32Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<i32> {
4360     #[cfg(windows)]
4361     {
4362         #[link(name = "windows")]
4363         extern "system" {
4364             fn PropVariantGetInt32Elem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, pnval: *mut i32) -> ::windows::runtime::HRESULT;
4365         }
4366         let mut result__: <i32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4367         PropVariantGetInt32Elem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<i32>(result__)
4368     }
4369     #[cfg(not(windows))]
4370     unimplemented!("Unsupported target OS");
4371 }
4372 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4373 #[inline]
PropVariantGetInt64Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<i64>4374 pub unsafe fn PropVariantGetInt64Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<i64> {
4375     #[cfg(windows)]
4376     {
4377         #[link(name = "windows")]
4378         extern "system" {
4379             fn PropVariantGetInt64Elem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, pnval: *mut i64) -> ::windows::runtime::HRESULT;
4380         }
4381         let mut result__: <i64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4382         PropVariantGetInt64Elem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<i64>(result__)
4383     }
4384     #[cfg(not(windows))]
4385     unimplemented!("Unsupported target OS");
4386 }
4387 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4388 #[inline]
PropVariantGetStringElem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>4389 pub unsafe fn PropVariantGetStringElem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
4390     #[cfg(windows)]
4391     {
4392         #[link(name = "windows")]
4393         extern "system" {
4394             fn PropVariantGetStringElem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, ppszval: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
4395         }
4396         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4397         PropVariantGetStringElem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
4398     }
4399     #[cfg(not(windows))]
4400     unimplemented!("Unsupported target OS");
4401 }
4402 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4403 #[inline]
PropVariantGetUInt16Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<u16>4404 pub unsafe fn PropVariantGetUInt16Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<u16> {
4405     #[cfg(windows)]
4406     {
4407         #[link(name = "windows")]
4408         extern "system" {
4409             fn PropVariantGetUInt16Elem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, pnval: *mut u16) -> ::windows::runtime::HRESULT;
4410         }
4411         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4412         PropVariantGetUInt16Elem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<u16>(result__)
4413     }
4414     #[cfg(not(windows))]
4415     unimplemented!("Unsupported target OS");
4416 }
4417 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4418 #[inline]
PropVariantGetUInt32Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<u32>4419 pub unsafe fn PropVariantGetUInt32Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<u32> {
4420     #[cfg(windows)]
4421     {
4422         #[link(name = "windows")]
4423         extern "system" {
4424             fn PropVariantGetUInt32Elem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, pnval: *mut u32) -> ::windows::runtime::HRESULT;
4425         }
4426         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4427         PropVariantGetUInt32Elem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<u32>(result__)
4428     }
4429     #[cfg(not(windows))]
4430     unimplemented!("Unsupported target OS");
4431 }
4432 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4433 #[inline]
PropVariantGetUInt64Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<u64>4434 pub unsafe fn PropVariantGetUInt64Elem(propvar: *const super::Com::StructuredStorage::PROPVARIANT, ielem: u32) -> ::windows::runtime::Result<u64> {
4435     #[cfg(windows)]
4436     {
4437         #[link(name = "windows")]
4438         extern "system" {
4439             fn PropVariantGetUInt64Elem(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ielem: u32, pnval: *mut u64) -> ::windows::runtime::HRESULT;
4440         }
4441         let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4442         PropVariantGetUInt64Elem(::std::mem::transmute(propvar), ::std::mem::transmute(ielem), &mut result__).from_abi::<u64>(result__)
4443     }
4444     #[cfg(not(windows))]
4445     unimplemented!("Unsupported target OS");
4446 }
4447 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4448 #[inline]
PropVariantToBSTR(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::BSTR>4449 pub unsafe fn PropVariantToBSTR(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
4450     #[cfg(windows)]
4451     {
4452         #[link(name = "windows")]
4453         extern "system" {
4454             fn PropVariantToBSTR(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pbstrout: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT;
4455         }
4456         let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4457         PropVariantToBSTR(::std::mem::transmute(propvar), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
4458     }
4459     #[cfg(not(windows))]
4460     unimplemented!("Unsupported target OS");
4461 }
4462 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4463 #[inline]
PropVariantToBoolean(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::BOOL>4464 pub unsafe fn PropVariantToBoolean(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
4465     #[cfg(windows)]
4466     {
4467         #[link(name = "windows")]
4468         extern "system" {
4469             fn PropVariantToBoolean(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pfret: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
4470         }
4471         let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4472         PropVariantToBoolean(::std::mem::transmute(propvarin), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
4473     }
4474     #[cfg(not(windows))]
4475     unimplemented!("Unsupported target OS");
4476 }
4477 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4478 #[inline]
PropVariantToBooleanVector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgf: *mut super::super::Foundation::BOOL, crgf: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4479 pub unsafe fn PropVariantToBooleanVector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgf: *mut super::super::Foundation::BOOL, crgf: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4480     #[cfg(windows)]
4481     {
4482         #[link(name = "windows")]
4483         extern "system" {
4484             fn PropVariantToBooleanVector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgf: *mut super::super::Foundation::BOOL, crgf: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4485         }
4486         PropVariantToBooleanVector(::std::mem::transmute(propvar), ::std::mem::transmute(prgf), ::std::mem::transmute(crgf), ::std::mem::transmute(pcelem)).ok()
4487     }
4488     #[cfg(not(windows))]
4489     unimplemented!("Unsupported target OS");
4490 }
4491 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4492 #[inline]
PropVariantToBooleanVectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgf: *mut *mut super::super::Foundation::BOOL, pcelem: *mut u32) -> ::windows::runtime::Result<()>4493 pub unsafe fn PropVariantToBooleanVectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgf: *mut *mut super::super::Foundation::BOOL, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4494     #[cfg(windows)]
4495     {
4496         #[link(name = "windows")]
4497         extern "system" {
4498             fn PropVariantToBooleanVectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgf: *mut *mut super::super::Foundation::BOOL, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4499         }
4500         PropVariantToBooleanVectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgf), ::std::mem::transmute(pcelem)).ok()
4501     }
4502     #[cfg(not(windows))]
4503     unimplemented!("Unsupported target OS");
4504 }
4505 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4506 #[inline]
PropVariantToBooleanWithDefault<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, fdefault: Param1) -> super::super::Foundation::BOOL4507 pub unsafe fn PropVariantToBooleanWithDefault<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, fdefault: Param1) -> super::super::Foundation::BOOL {
4508     #[cfg(windows)]
4509     {
4510         #[link(name = "windows")]
4511         extern "system" {
4512             fn PropVariantToBooleanWithDefault(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, fdefault: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL;
4513         }
4514         ::std::mem::transmute(PropVariantToBooleanWithDefault(::std::mem::transmute(propvarin), fdefault.into_param().abi()))
4515     }
4516     #[cfg(not(windows))]
4517     unimplemented!("Unsupported target OS");
4518 }
4519 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4520 #[inline]
PropVariantToBuffer(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pv: *mut ::std::ffi::c_void, cb: u32) -> ::windows::runtime::Result<()>4521 pub unsafe fn PropVariantToBuffer(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pv: *mut ::std::ffi::c_void, cb: u32) -> ::windows::runtime::Result<()> {
4522     #[cfg(windows)]
4523     {
4524         #[link(name = "windows")]
4525         extern "system" {
4526             fn PropVariantToBuffer(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pv: *mut ::std::ffi::c_void, cb: u32) -> ::windows::runtime::HRESULT;
4527         }
4528         PropVariantToBuffer(::std::mem::transmute(propvar), ::std::mem::transmute(pv), ::std::mem::transmute(cb)).ok()
4529     }
4530     #[cfg(not(windows))]
4531     unimplemented!("Unsupported target OS");
4532 }
4533 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4534 #[inline]
PropVariantToDouble(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<f64>4535 pub unsafe fn PropVariantToDouble(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<f64> {
4536     #[cfg(windows)]
4537     {
4538         #[link(name = "windows")]
4539         extern "system" {
4540             fn PropVariantToDouble(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pdblret: *mut f64) -> ::windows::runtime::HRESULT;
4541         }
4542         let mut result__: <f64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4543         PropVariantToDouble(::std::mem::transmute(propvarin), &mut result__).from_abi::<f64>(result__)
4544     }
4545     #[cfg(not(windows))]
4546     unimplemented!("Unsupported target OS");
4547 }
4548 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4549 #[inline]
PropVariantToDoubleVector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut f64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4550 pub unsafe fn PropVariantToDoubleVector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut f64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4551     #[cfg(windows)]
4552     {
4553         #[link(name = "windows")]
4554         extern "system" {
4555             fn PropVariantToDoubleVector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgn: *mut f64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4556         }
4557         PropVariantToDoubleVector(::std::mem::transmute(propvar), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
4558     }
4559     #[cfg(not(windows))]
4560     unimplemented!("Unsupported target OS");
4561 }
4562 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4563 #[inline]
PropVariantToDoubleVectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut f64, pcelem: *mut u32) -> ::windows::runtime::Result<()>4564 pub unsafe fn PropVariantToDoubleVectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut f64, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4565     #[cfg(windows)]
4566     {
4567         #[link(name = "windows")]
4568         extern "system" {
4569             fn PropVariantToDoubleVectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgn: *mut *mut f64, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4570         }
4571         PropVariantToDoubleVectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
4572     }
4573     #[cfg(not(windows))]
4574     unimplemented!("Unsupported target OS");
4575 }
4576 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4577 #[inline]
PropVariantToDoubleWithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, dbldefault: f64) -> f644578 pub unsafe fn PropVariantToDoubleWithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, dbldefault: f64) -> f64 {
4579     #[cfg(windows)]
4580     {
4581         #[link(name = "windows")]
4582         extern "system" {
4583             fn PropVariantToDoubleWithDefault(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, dbldefault: f64) -> f64;
4584         }
4585         ::std::mem::transmute(PropVariantToDoubleWithDefault(::std::mem::transmute(propvarin), ::std::mem::transmute(dbldefault)))
4586     }
4587     #[cfg(not(windows))]
4588     unimplemented!("Unsupported target OS");
4589 }
4590 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4591 #[inline]
PropVariantToFileTime(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pstfout: PSTIME_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::FILETIME>4592 pub unsafe fn PropVariantToFileTime(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pstfout: PSTIME_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::FILETIME> {
4593     #[cfg(windows)]
4594     {
4595         #[link(name = "windows")]
4596         extern "system" {
4597             fn PropVariantToFileTime(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pstfout: PSTIME_FLAGS, pftout: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::HRESULT;
4598         }
4599         let mut result__: <super::super::Foundation::FILETIME as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4600         PropVariantToFileTime(::std::mem::transmute(propvar), ::std::mem::transmute(pstfout), &mut result__).from_abi::<super::super::Foundation::FILETIME>(result__)
4601     }
4602     #[cfg(not(windows))]
4603     unimplemented!("Unsupported target OS");
4604 }
4605 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4606 #[inline]
PropVariantToFileTimeVector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgft: *mut super::super::Foundation::FILETIME, crgft: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4607 pub unsafe fn PropVariantToFileTimeVector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgft: *mut super::super::Foundation::FILETIME, crgft: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4608     #[cfg(windows)]
4609     {
4610         #[link(name = "windows")]
4611         extern "system" {
4612             fn PropVariantToFileTimeVector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgft: *mut super::super::Foundation::FILETIME, crgft: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4613         }
4614         PropVariantToFileTimeVector(::std::mem::transmute(propvar), ::std::mem::transmute(prgft), ::std::mem::transmute(crgft), ::std::mem::transmute(pcelem)).ok()
4615     }
4616     #[cfg(not(windows))]
4617     unimplemented!("Unsupported target OS");
4618 }
4619 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4620 #[inline]
PropVariantToFileTimeVectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgft: *mut *mut super::super::Foundation::FILETIME, pcelem: *mut u32) -> ::windows::runtime::Result<()>4621 pub unsafe fn PropVariantToFileTimeVectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgft: *mut *mut super::super::Foundation::FILETIME, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4622     #[cfg(windows)]
4623     {
4624         #[link(name = "windows")]
4625         extern "system" {
4626             fn PropVariantToFileTimeVectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgft: *mut *mut super::super::Foundation::FILETIME, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4627         }
4628         PropVariantToFileTimeVectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgft), ::std::mem::transmute(pcelem)).ok()
4629     }
4630     #[cfg(not(windows))]
4631     unimplemented!("Unsupported target OS");
4632 }
4633 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4634 #[inline]
PropVariantToGUID(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<::windows::runtime::GUID>4635 pub unsafe fn PropVariantToGUID(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<::windows::runtime::GUID> {
4636     #[cfg(windows)]
4637     {
4638         #[link(name = "windows")]
4639         extern "system" {
4640             fn PropVariantToGUID(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pguid: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT;
4641         }
4642         let mut result__: <::windows::runtime::GUID as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4643         PropVariantToGUID(::std::mem::transmute(propvar), &mut result__).from_abi::<::windows::runtime::GUID>(result__)
4644     }
4645     #[cfg(not(windows))]
4646     unimplemented!("Unsupported target OS");
4647 }
4648 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4649 #[inline]
PropVariantToInt16(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<i16>4650 pub unsafe fn PropVariantToInt16(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<i16> {
4651     #[cfg(windows)]
4652     {
4653         #[link(name = "windows")]
4654         extern "system" {
4655             fn PropVariantToInt16(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, piret: *mut i16) -> ::windows::runtime::HRESULT;
4656         }
4657         let mut result__: <i16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4658         PropVariantToInt16(::std::mem::transmute(propvarin), &mut result__).from_abi::<i16>(result__)
4659     }
4660     #[cfg(not(windows))]
4661     unimplemented!("Unsupported target OS");
4662 }
4663 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4664 #[inline]
PropVariantToInt16Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut i16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4665 pub unsafe fn PropVariantToInt16Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut i16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4666     #[cfg(windows)]
4667     {
4668         #[link(name = "windows")]
4669         extern "system" {
4670             fn PropVariantToInt16Vector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgn: *mut i16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4671         }
4672         PropVariantToInt16Vector(::std::mem::transmute(propvar), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
4673     }
4674     #[cfg(not(windows))]
4675     unimplemented!("Unsupported target OS");
4676 }
4677 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4678 #[inline]
PropVariantToInt16VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut i16, pcelem: *mut u32) -> ::windows::runtime::Result<()>4679 pub unsafe fn PropVariantToInt16VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut i16, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4680     #[cfg(windows)]
4681     {
4682         #[link(name = "windows")]
4683         extern "system" {
4684             fn PropVariantToInt16VectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgn: *mut *mut i16, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4685         }
4686         PropVariantToInt16VectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
4687     }
4688     #[cfg(not(windows))]
4689     unimplemented!("Unsupported target OS");
4690 }
4691 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4692 #[inline]
PropVariantToInt16WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, idefault: i16) -> i164693 pub unsafe fn PropVariantToInt16WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, idefault: i16) -> i16 {
4694     #[cfg(windows)]
4695     {
4696         #[link(name = "windows")]
4697         extern "system" {
4698             fn PropVariantToInt16WithDefault(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, idefault: i16) -> i16;
4699         }
4700         ::std::mem::transmute(PropVariantToInt16WithDefault(::std::mem::transmute(propvarin), ::std::mem::transmute(idefault)))
4701     }
4702     #[cfg(not(windows))]
4703     unimplemented!("Unsupported target OS");
4704 }
4705 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4706 #[inline]
PropVariantToInt32(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<i32>4707 pub unsafe fn PropVariantToInt32(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<i32> {
4708     #[cfg(windows)]
4709     {
4710         #[link(name = "windows")]
4711         extern "system" {
4712             fn PropVariantToInt32(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, plret: *mut i32) -> ::windows::runtime::HRESULT;
4713         }
4714         let mut result__: <i32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4715         PropVariantToInt32(::std::mem::transmute(propvarin), &mut result__).from_abi::<i32>(result__)
4716     }
4717     #[cfg(not(windows))]
4718     unimplemented!("Unsupported target OS");
4719 }
4720 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4721 #[inline]
PropVariantToInt32Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut i32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4722 pub unsafe fn PropVariantToInt32Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut i32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4723     #[cfg(windows)]
4724     {
4725         #[link(name = "windows")]
4726         extern "system" {
4727             fn PropVariantToInt32Vector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgn: *mut i32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4728         }
4729         PropVariantToInt32Vector(::std::mem::transmute(propvar), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
4730     }
4731     #[cfg(not(windows))]
4732     unimplemented!("Unsupported target OS");
4733 }
4734 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4735 #[inline]
PropVariantToInt32VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut i32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4736 pub unsafe fn PropVariantToInt32VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut i32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4737     #[cfg(windows)]
4738     {
4739         #[link(name = "windows")]
4740         extern "system" {
4741             fn PropVariantToInt32VectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgn: *mut *mut i32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4742         }
4743         PropVariantToInt32VectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
4744     }
4745     #[cfg(not(windows))]
4746     unimplemented!("Unsupported target OS");
4747 }
4748 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4749 #[inline]
PropVariantToInt32WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, ldefault: i32) -> i324750 pub unsafe fn PropVariantToInt32WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, ldefault: i32) -> i32 {
4751     #[cfg(windows)]
4752     {
4753         #[link(name = "windows")]
4754         extern "system" {
4755             fn PropVariantToInt32WithDefault(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ldefault: i32) -> i32;
4756         }
4757         ::std::mem::transmute(PropVariantToInt32WithDefault(::std::mem::transmute(propvarin), ::std::mem::transmute(ldefault)))
4758     }
4759     #[cfg(not(windows))]
4760     unimplemented!("Unsupported target OS");
4761 }
4762 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4763 #[inline]
PropVariantToInt64(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<i64>4764 pub unsafe fn PropVariantToInt64(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<i64> {
4765     #[cfg(windows)]
4766     {
4767         #[link(name = "windows")]
4768         extern "system" {
4769             fn PropVariantToInt64(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pllret: *mut i64) -> ::windows::runtime::HRESULT;
4770         }
4771         let mut result__: <i64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4772         PropVariantToInt64(::std::mem::transmute(propvarin), &mut result__).from_abi::<i64>(result__)
4773     }
4774     #[cfg(not(windows))]
4775     unimplemented!("Unsupported target OS");
4776 }
4777 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4778 #[inline]
PropVariantToInt64Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut i64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4779 pub unsafe fn PropVariantToInt64Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut i64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4780     #[cfg(windows)]
4781     {
4782         #[link(name = "windows")]
4783         extern "system" {
4784             fn PropVariantToInt64Vector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgn: *mut i64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4785         }
4786         PropVariantToInt64Vector(::std::mem::transmute(propvar), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
4787     }
4788     #[cfg(not(windows))]
4789     unimplemented!("Unsupported target OS");
4790 }
4791 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4792 #[inline]
PropVariantToInt64VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut i64, pcelem: *mut u32) -> ::windows::runtime::Result<()>4793 pub unsafe fn PropVariantToInt64VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut i64, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4794     #[cfg(windows)]
4795     {
4796         #[link(name = "windows")]
4797         extern "system" {
4798             fn PropVariantToInt64VectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgn: *mut *mut i64, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4799         }
4800         PropVariantToInt64VectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
4801     }
4802     #[cfg(not(windows))]
4803     unimplemented!("Unsupported target OS");
4804 }
4805 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4806 #[inline]
PropVariantToInt64WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, lldefault: i64) -> i644807 pub unsafe fn PropVariantToInt64WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, lldefault: i64) -> i64 {
4808     #[cfg(windows)]
4809     {
4810         #[link(name = "windows")]
4811         extern "system" {
4812             fn PropVariantToInt64WithDefault(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, lldefault: i64) -> i64;
4813         }
4814         ::std::mem::transmute(PropVariantToInt64WithDefault(::std::mem::transmute(propvarin), ::std::mem::transmute(lldefault)))
4815     }
4816     #[cfg(not(windows))]
4817     unimplemented!("Unsupported target OS");
4818 }
4819 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation", feature = "Win32_UI_Shell"))]
4820 #[inline]
PropVariantToStrRet(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::UI::Shell::STRRET>4821 pub unsafe fn PropVariantToStrRet(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::UI::Shell::STRRET> {
4822     #[cfg(windows)]
4823     {
4824         #[link(name = "windows")]
4825         extern "system" {
4826             fn PropVariantToStrRet(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pstrret: *mut super::super::UI::Shell::STRRET) -> ::windows::runtime::HRESULT;
4827         }
4828         let mut result__: <super::super::UI::Shell::STRRET as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4829         PropVariantToStrRet(::std::mem::transmute(propvar), &mut result__).from_abi::<super::super::UI::Shell::STRRET>(result__)
4830     }
4831     #[cfg(not(windows))]
4832     unimplemented!("Unsupported target OS");
4833 }
4834 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4835 #[inline]
PropVariantToString(propvar: *const super::Com::StructuredStorage::PROPVARIANT, psz: super::super::Foundation::PWSTR, cch: u32) -> ::windows::runtime::Result<()>4836 pub unsafe fn PropVariantToString(propvar: *const super::Com::StructuredStorage::PROPVARIANT, psz: super::super::Foundation::PWSTR, cch: u32) -> ::windows::runtime::Result<()> {
4837     #[cfg(windows)]
4838     {
4839         #[link(name = "windows")]
4840         extern "system" {
4841             fn PropVariantToString(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, psz: super::super::Foundation::PWSTR, cch: u32) -> ::windows::runtime::HRESULT;
4842         }
4843         PropVariantToString(::std::mem::transmute(propvar), ::std::mem::transmute(psz), ::std::mem::transmute(cch)).ok()
4844     }
4845     #[cfg(not(windows))]
4846     unimplemented!("Unsupported target OS");
4847 }
4848 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4849 #[inline]
PropVariantToStringAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>4850 pub unsafe fn PropVariantToStringAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
4851     #[cfg(windows)]
4852     {
4853         #[link(name = "windows")]
4854         extern "system" {
4855             fn PropVariantToStringAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ppszout: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
4856         }
4857         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4858         PropVariantToStringAlloc(::std::mem::transmute(propvar), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
4859     }
4860     #[cfg(not(windows))]
4861     unimplemented!("Unsupported target OS");
4862 }
4863 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4864 #[inline]
PropVariantToStringVector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgsz: *mut super::super::Foundation::PWSTR, crgsz: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4865 pub unsafe fn PropVariantToStringVector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgsz: *mut super::super::Foundation::PWSTR, crgsz: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4866     #[cfg(windows)]
4867     {
4868         #[link(name = "windows")]
4869         extern "system" {
4870             fn PropVariantToStringVector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgsz: *mut super::super::Foundation::PWSTR, crgsz: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4871         }
4872         PropVariantToStringVector(::std::mem::transmute(propvar), ::std::mem::transmute(prgsz), ::std::mem::transmute(crgsz), ::std::mem::transmute(pcelem)).ok()
4873     }
4874     #[cfg(not(windows))]
4875     unimplemented!("Unsupported target OS");
4876 }
4877 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4878 #[inline]
PropVariantToStringVectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgsz: *mut *mut super::super::Foundation::PWSTR, pcelem: *mut u32) -> ::windows::runtime::Result<()>4879 pub unsafe fn PropVariantToStringVectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgsz: *mut *mut super::super::Foundation::PWSTR, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4880     #[cfg(windows)]
4881     {
4882         #[link(name = "windows")]
4883         extern "system" {
4884             fn PropVariantToStringVectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgsz: *mut *mut super::super::Foundation::PWSTR, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4885         }
4886         PropVariantToStringVectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgsz), ::std::mem::transmute(pcelem)).ok()
4887     }
4888     #[cfg(not(windows))]
4889     unimplemented!("Unsupported target OS");
4890 }
4891 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4892 #[inline]
PropVariantToStringWithDefault<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, pszdefault: Param1) -> super::super::Foundation::PWSTR4893 pub unsafe fn PropVariantToStringWithDefault<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, pszdefault: Param1) -> super::super::Foundation::PWSTR {
4894     #[cfg(windows)]
4895     {
4896         #[link(name = "windows")]
4897         extern "system" {
4898             fn PropVariantToStringWithDefault(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pszdefault: super::super::Foundation::PWSTR) -> super::super::Foundation::PWSTR;
4899         }
4900         ::std::mem::transmute(PropVariantToStringWithDefault(::std::mem::transmute(propvarin), pszdefault.into_param().abi()))
4901     }
4902     #[cfg(not(windows))]
4903     unimplemented!("Unsupported target OS");
4904 }
4905 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4906 #[inline]
PropVariantToUInt16(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<u16>4907 pub unsafe fn PropVariantToUInt16(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<u16> {
4908     #[cfg(windows)]
4909     {
4910         #[link(name = "windows")]
4911         extern "system" {
4912             fn PropVariantToUInt16(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, puiret: *mut u16) -> ::windows::runtime::HRESULT;
4913         }
4914         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4915         PropVariantToUInt16(::std::mem::transmute(propvarin), &mut result__).from_abi::<u16>(result__)
4916     }
4917     #[cfg(not(windows))]
4918     unimplemented!("Unsupported target OS");
4919 }
4920 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4921 #[inline]
PropVariantToUInt16Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut u16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4922 pub unsafe fn PropVariantToUInt16Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut u16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4923     #[cfg(windows)]
4924     {
4925         #[link(name = "windows")]
4926         extern "system" {
4927             fn PropVariantToUInt16Vector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgn: *mut u16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4928         }
4929         PropVariantToUInt16Vector(::std::mem::transmute(propvar), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
4930     }
4931     #[cfg(not(windows))]
4932     unimplemented!("Unsupported target OS");
4933 }
4934 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4935 #[inline]
PropVariantToUInt16VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut u16, pcelem: *mut u32) -> ::windows::runtime::Result<()>4936 pub unsafe fn PropVariantToUInt16VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut u16, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4937     #[cfg(windows)]
4938     {
4939         #[link(name = "windows")]
4940         extern "system" {
4941             fn PropVariantToUInt16VectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgn: *mut *mut u16, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4942         }
4943         PropVariantToUInt16VectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
4944     }
4945     #[cfg(not(windows))]
4946     unimplemented!("Unsupported target OS");
4947 }
4948 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4949 #[inline]
PropVariantToUInt16WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, uidefault: u16) -> u164950 pub unsafe fn PropVariantToUInt16WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, uidefault: u16) -> u16 {
4951     #[cfg(windows)]
4952     {
4953         #[link(name = "windows")]
4954         extern "system" {
4955             fn PropVariantToUInt16WithDefault(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, uidefault: u16) -> u16;
4956         }
4957         ::std::mem::transmute(PropVariantToUInt16WithDefault(::std::mem::transmute(propvarin), ::std::mem::transmute(uidefault)))
4958     }
4959     #[cfg(not(windows))]
4960     unimplemented!("Unsupported target OS");
4961 }
4962 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4963 #[inline]
PropVariantToUInt32(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<u32>4964 pub unsafe fn PropVariantToUInt32(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<u32> {
4965     #[cfg(windows)]
4966     {
4967         #[link(name = "windows")]
4968         extern "system" {
4969             fn PropVariantToUInt32(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pulret: *mut u32) -> ::windows::runtime::HRESULT;
4970         }
4971         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
4972         PropVariantToUInt32(::std::mem::transmute(propvarin), &mut result__).from_abi::<u32>(result__)
4973     }
4974     #[cfg(not(windows))]
4975     unimplemented!("Unsupported target OS");
4976 }
4977 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4978 #[inline]
PropVariantToUInt32Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut u32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4979 pub unsafe fn PropVariantToUInt32Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut u32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4980     #[cfg(windows)]
4981     {
4982         #[link(name = "windows")]
4983         extern "system" {
4984             fn PropVariantToUInt32Vector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgn: *mut u32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4985         }
4986         PropVariantToUInt32Vector(::std::mem::transmute(propvar), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
4987     }
4988     #[cfg(not(windows))]
4989     unimplemented!("Unsupported target OS");
4990 }
4991 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
4992 #[inline]
PropVariantToUInt32VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>4993 pub unsafe fn PropVariantToUInt32VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
4994     #[cfg(windows)]
4995     {
4996         #[link(name = "windows")]
4997         extern "system" {
4998             fn PropVariantToUInt32VectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgn: *mut *mut u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
4999         }
5000         PropVariantToUInt32VectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
5001     }
5002     #[cfg(not(windows))]
5003     unimplemented!("Unsupported target OS");
5004 }
5005 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5006 #[inline]
PropVariantToUInt32WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, uldefault: u32) -> u325007 pub unsafe fn PropVariantToUInt32WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, uldefault: u32) -> u32 {
5008     #[cfg(windows)]
5009     {
5010         #[link(name = "windows")]
5011         extern "system" {
5012             fn PropVariantToUInt32WithDefault(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, uldefault: u32) -> u32;
5013         }
5014         ::std::mem::transmute(PropVariantToUInt32WithDefault(::std::mem::transmute(propvarin), ::std::mem::transmute(uldefault)))
5015     }
5016     #[cfg(not(windows))]
5017     unimplemented!("Unsupported target OS");
5018 }
5019 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5020 #[inline]
PropVariantToUInt64(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<u64>5021 pub unsafe fn PropVariantToUInt64(propvarin: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<u64> {
5022     #[cfg(windows)]
5023     {
5024         #[link(name = "windows")]
5025         extern "system" {
5026             fn PropVariantToUInt64(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pullret: *mut u64) -> ::windows::runtime::HRESULT;
5027         }
5028         let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5029         PropVariantToUInt64(::std::mem::transmute(propvarin), &mut result__).from_abi::<u64>(result__)
5030     }
5031     #[cfg(not(windows))]
5032     unimplemented!("Unsupported target OS");
5033 }
5034 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5035 #[inline]
PropVariantToUInt64Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut u64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5036 pub unsafe fn PropVariantToUInt64Vector(propvar: *const super::Com::StructuredStorage::PROPVARIANT, prgn: *mut u64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5037     #[cfg(windows)]
5038     {
5039         #[link(name = "windows")]
5040         extern "system" {
5041             fn PropVariantToUInt64Vector(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, prgn: *mut u64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5042         }
5043         PropVariantToUInt64Vector(::std::mem::transmute(propvar), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
5044     }
5045     #[cfg(not(windows))]
5046     unimplemented!("Unsupported target OS");
5047 }
5048 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5049 #[inline]
PropVariantToUInt64VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut u64, pcelem: *mut u32) -> ::windows::runtime::Result<()>5050 pub unsafe fn PropVariantToUInt64VectorAlloc(propvar: *const super::Com::StructuredStorage::PROPVARIANT, pprgn: *mut *mut u64, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5051     #[cfg(windows)]
5052     {
5053         #[link(name = "windows")]
5054         extern "system" {
5055             fn PropVariantToUInt64VectorAlloc(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pprgn: *mut *mut u64, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5056         }
5057         PropVariantToUInt64VectorAlloc(::std::mem::transmute(propvar), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
5058     }
5059     #[cfg(not(windows))]
5060     unimplemented!("Unsupported target OS");
5061 }
5062 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5063 #[inline]
PropVariantToUInt64WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, ulldefault: u64) -> u645064 pub unsafe fn PropVariantToUInt64WithDefault(propvarin: *const super::Com::StructuredStorage::PROPVARIANT, ulldefault: u64) -> u64 {
5065     #[cfg(windows)]
5066     {
5067         #[link(name = "windows")]
5068         extern "system" {
5069             fn PropVariantToUInt64WithDefault(propvarin: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, ulldefault: u64) -> u64;
5070         }
5071         ::std::mem::transmute(PropVariantToUInt64WithDefault(::std::mem::transmute(propvarin), ::std::mem::transmute(ulldefault)))
5072     }
5073     #[cfg(not(windows))]
5074     unimplemented!("Unsupported target OS");
5075 }
5076 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5077 #[inline]
PropVariantToVariant(ppropvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::Com::VARIANT>5078 pub unsafe fn PropVariantToVariant(ppropvar: *const super::Com::StructuredStorage::PROPVARIANT) -> ::windows::runtime::Result<super::Com::VARIANT> {
5079     #[cfg(windows)]
5080     {
5081         #[link(name = "windows")]
5082         extern "system" {
5083             fn PropVariantToVariant(ppropvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, pvar: *mut ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> ::windows::runtime::HRESULT;
5084         }
5085         let mut result__: <super::Com::VARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5086         PropVariantToVariant(::std::mem::transmute(ppropvar), &mut result__).from_abi::<super::Com::VARIANT>(result__)
5087     }
5088     #[cfg(not(windows))]
5089     unimplemented!("Unsupported target OS");
5090 }
5091 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5092 #[inline]
PropVariantToWinRTPropertyValue<T: ::windows::runtime::Interface>(propvar: *const super::Com::StructuredStorage::PROPVARIANT, result__: *mut ::std::option::Option<T>) -> ::windows::runtime::Result<()>5093 pub unsafe fn PropVariantToWinRTPropertyValue<T: ::windows::runtime::Interface>(propvar: *const super::Com::StructuredStorage::PROPVARIANT, result__: *mut ::std::option::Option<T>) -> ::windows::runtime::Result<()> {
5094     #[cfg(windows)]
5095     {
5096         #[link(name = "windows")]
5097         extern "system" {
5098             fn PropVariantToWinRTPropertyValue(propvar: *const ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
5099         }
5100         PropVariantToWinRTPropertyValue(::std::mem::transmute(propvar), &<T as ::windows::runtime::Interface>::IID, result__ as *mut _ as *mut _).ok()
5101     }
5102     #[cfg(not(windows))]
5103     unimplemented!("Unsupported target OS");
5104 }
5105 pub const PropertySystem: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3096870789, 22702, 20294, [159, 178, 93, 121, 4, 121, 143, 75]);
5106 #[repr(C)]
5107 #[derive(:: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug, :: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy)]
5108 pub struct SERIALIZEDPROPSTORAGE(pub u8);
5109 #[cfg(feature = "Win32_Foundation")]
5110 #[inline]
SHAddDefaultPropertiesByExt<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IPropertyStore>>(pszext: Param0, ppropstore: Param1) -> ::windows::runtime::Result<()>5111 pub unsafe fn SHAddDefaultPropertiesByExt<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, IPropertyStore>>(pszext: Param0, ppropstore: Param1) -> ::windows::runtime::Result<()> {
5112     #[cfg(windows)]
5113     {
5114         #[link(name = "windows")]
5115         extern "system" {
5116             fn SHAddDefaultPropertiesByExt(pszext: super::super::Foundation::PWSTR, ppropstore: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
5117         }
5118         SHAddDefaultPropertiesByExt(pszext.into_param().abi(), ppropstore.into_param().abi()).ok()
5119     }
5120     #[cfg(not(windows))]
5121     unimplemented!("Unsupported target OS");
5122 }
5123 #[cfg(feature = "Win32_Foundation")]
5124 #[inline]
SHGetPropertyStoreForWindow<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HWND>>(hwnd: Param0, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>5125 pub unsafe fn SHGetPropertyStoreForWindow<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::HWND>>(hwnd: Param0, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
5126     #[cfg(windows)]
5127     {
5128         #[link(name = "windows")]
5129         extern "system" {
5130             fn SHGetPropertyStoreForWindow(hwnd: super::super::Foundation::HWND, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
5131         }
5132         SHGetPropertyStoreForWindow(hwnd.into_param().abi(), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
5133     }
5134     #[cfg(not(windows))]
5135     unimplemented!("Unsupported target OS");
5136 }
5137 #[cfg(feature = "Win32_UI_Shell")]
5138 #[inline]
SHGetPropertyStoreFromIDList(pidl: *const super::super::UI::Shell::ITEMIDLIST, flags: GETPROPERTYSTOREFLAGS, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>5139 pub unsafe fn SHGetPropertyStoreFromIDList(pidl: *const super::super::UI::Shell::ITEMIDLIST, flags: GETPROPERTYSTOREFLAGS, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
5140     #[cfg(windows)]
5141     {
5142         #[link(name = "windows")]
5143         extern "system" {
5144             fn SHGetPropertyStoreFromIDList(pidl: *const super::super::UI::Shell::ITEMIDLIST, flags: GETPROPERTYSTOREFLAGS, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
5145         }
5146         SHGetPropertyStoreFromIDList(::std::mem::transmute(pidl), ::std::mem::transmute(flags), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
5147     }
5148     #[cfg(not(windows))]
5149     unimplemented!("Unsupported target OS");
5150 }
5151 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
5152 #[inline]
SHGetPropertyStoreFromParsingName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Com::IBindCtx>>(pszpath: Param0, pbc: Param1, flags: GETPROPERTYSTOREFLAGS, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()>5153 pub unsafe fn SHGetPropertyStoreFromParsingName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::Com::IBindCtx>>(pszpath: Param0, pbc: Param1, flags: GETPROPERTYSTOREFLAGS, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::Result<()> {
5154     #[cfg(windows)]
5155     {
5156         #[link(name = "windows")]
5157         extern "system" {
5158             fn SHGetPropertyStoreFromParsingName(pszpath: super::super::Foundation::PWSTR, pbc: ::windows::runtime::RawPtr, flags: GETPROPERTYSTOREFLAGS, riid: *const ::windows::runtime::GUID, ppv: *mut *mut ::std::ffi::c_void) -> ::windows::runtime::HRESULT;
5159         }
5160         SHGetPropertyStoreFromParsingName(pszpath.into_param().abi(), pbc.into_param().abi(), ::std::mem::transmute(flags), ::std::mem::transmute(riid), ::std::mem::transmute(ppv)).ok()
5161     }
5162     #[cfg(not(windows))]
5163     unimplemented!("Unsupported target OS");
5164 }
5165 #[cfg(feature = "Win32_System_Com_StructuredStorage")]
5166 #[inline]
SHPropStgCreate<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::StructuredStorage::IPropertySetStorage>>(psstg: Param0, fmtid: *const ::windows::runtime::GUID, pclsid: *const ::windows::runtime::GUID, grfflags: u32, grfmode: u32, dwdisposition: u32, ppstg: *mut ::std::option::Option<super::Com::StructuredStorage::IPropertyStorage>, pucodepage: *mut u32) -> ::windows::runtime::Result<()>5167 pub unsafe fn SHPropStgCreate<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::StructuredStorage::IPropertySetStorage>>(psstg: Param0, fmtid: *const ::windows::runtime::GUID, pclsid: *const ::windows::runtime::GUID, grfflags: u32, grfmode: u32, dwdisposition: u32, ppstg: *mut ::std::option::Option<super::Com::StructuredStorage::IPropertyStorage>, pucodepage: *mut u32) -> ::windows::runtime::Result<()> {
5168     #[cfg(windows)]
5169     {
5170         #[link(name = "windows")]
5171         extern "system" {
5172             fn SHPropStgCreate(psstg: ::windows::runtime::RawPtr, fmtid: *const ::windows::runtime::GUID, pclsid: *const ::windows::runtime::GUID, grfflags: u32, grfmode: u32, dwdisposition: u32, ppstg: *mut ::windows::runtime::RawPtr, pucodepage: *mut u32) -> ::windows::runtime::HRESULT;
5173         }
5174         SHPropStgCreate(psstg.into_param().abi(), ::std::mem::transmute(fmtid), ::std::mem::transmute(pclsid), ::std::mem::transmute(grfflags), ::std::mem::transmute(grfmode), ::std::mem::transmute(dwdisposition), ::std::mem::transmute(ppstg), ::std::mem::transmute(pucodepage)).ok()
5175     }
5176     #[cfg(not(windows))]
5177     unimplemented!("Unsupported target OS");
5178 }
5179 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5180 #[inline]
SHPropStgReadMultiple<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::StructuredStorage::IPropertyStorage>>(pps: Param0, ucodepage: u32, cpspec: u32, rgpspec: *const super::Com::StructuredStorage::PROPSPEC) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>5181 pub unsafe fn SHPropStgReadMultiple<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::StructuredStorage::IPropertyStorage>>(pps: Param0, ucodepage: u32, cpspec: u32, rgpspec: *const super::Com::StructuredStorage::PROPSPEC) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
5182     #[cfg(windows)]
5183     {
5184         #[link(name = "windows")]
5185         extern "system" {
5186             fn SHPropStgReadMultiple(pps: ::windows::runtime::RawPtr, ucodepage: u32, cpspec: u32, rgpspec: *const super::Com::StructuredStorage::PROPSPEC, rgvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
5187         }
5188         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5189         SHPropStgReadMultiple(pps.into_param().abi(), ::std::mem::transmute(ucodepage), ::std::mem::transmute(cpspec), ::std::mem::transmute(rgpspec), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
5190     }
5191     #[cfg(not(windows))]
5192     unimplemented!("Unsupported target OS");
5193 }
5194 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5195 #[inline]
SHPropStgWriteMultiple<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::StructuredStorage::IPropertyStorage>>(pps: Param0, pucodepage: *mut u32, cpspec: u32, rgpspec: *const super::Com::StructuredStorage::PROPSPEC, rgvar: *mut super::Com::StructuredStorage::PROPVARIANT, propidnamefirst: u32) -> ::windows::runtime::Result<()>5196 pub unsafe fn SHPropStgWriteMultiple<'a, Param0: ::windows::runtime::IntoParam<'a, super::Com::StructuredStorage::IPropertyStorage>>(pps: Param0, pucodepage: *mut u32, cpspec: u32, rgpspec: *const super::Com::StructuredStorage::PROPSPEC, rgvar: *mut super::Com::StructuredStorage::PROPVARIANT, propidnamefirst: u32) -> ::windows::runtime::Result<()> {
5197     #[cfg(windows)]
5198     {
5199         #[link(name = "windows")]
5200         extern "system" {
5201             fn SHPropStgWriteMultiple(pps: ::windows::runtime::RawPtr, pucodepage: *mut u32, cpspec: u32, rgpspec: *const super::Com::StructuredStorage::PROPSPEC, rgvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>, propidnamefirst: u32) -> ::windows::runtime::HRESULT;
5202         }
5203         SHPropStgWriteMultiple(pps.into_param().abi(), ::std::mem::transmute(pucodepage), ::std::mem::transmute(cpspec), ::std::mem::transmute(rgpspec), ::std::mem::transmute(rgvar), ::std::mem::transmute(propidnamefirst)).ok()
5204     }
5205     #[cfg(not(windows))]
5206     unimplemented!("Unsupported target OS");
5207 }
5208 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
5209 #[repr(transparent)]
5210 pub struct SYNC_ENGINE_STATE_FLAGS(pub i32);
5211 pub const SESF_NONE: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(0i32);
5212 pub const SESF_SERVICE_QUOTA_NEARING_LIMIT: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(1i32);
5213 pub const SESF_SERVICE_QUOTA_EXCEEDED_LIMIT: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(2i32);
5214 pub const SESF_AUTHENTICATION_ERROR: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(4i32);
5215 pub const SESF_PAUSED_DUE_TO_METERED_NETWORK: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(8i32);
5216 pub const SESF_PAUSED_DUE_TO_DISK_SPACE_FULL: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(16i32);
5217 pub const SESF_PAUSED_DUE_TO_CLIENT_POLICY: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(32i32);
5218 pub const SESF_PAUSED_DUE_TO_SERVICE_POLICY: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(64i32);
5219 pub const SESF_SERVICE_UNAVAILABLE: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(128i32);
5220 pub const SESF_PAUSED_DUE_TO_USER_REQUEST: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(256i32);
5221 pub const SESF_ALL_FLAGS: SYNC_ENGINE_STATE_FLAGS = SYNC_ENGINE_STATE_FLAGS(511i32);
5222 impl ::std::convert::From<i32> for SYNC_ENGINE_STATE_FLAGS {
from(value: i32) -> Self5223     fn from(value: i32) -> Self {
5224         Self(value)
5225     }
5226 }
5227 unsafe impl ::windows::runtime::Abi for SYNC_ENGINE_STATE_FLAGS {
5228     type Abi = Self;
5229     type DefaultType = Self;
5230 }
5231 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
5232 #[repr(transparent)]
5233 pub struct SYNC_TRANSFER_STATUS(pub i32);
5234 pub const STS_NONE: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(0i32);
5235 pub const STS_NEEDSUPLOAD: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(1i32);
5236 pub const STS_NEEDSDOWNLOAD: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(2i32);
5237 pub const STS_TRANSFERRING: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(4i32);
5238 pub const STS_PAUSED: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(8i32);
5239 pub const STS_HASERROR: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(16i32);
5240 pub const STS_FETCHING_METADATA: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(32i32);
5241 pub const STS_USER_REQUESTED_REFRESH: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(64i32);
5242 pub const STS_HASWARNING: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(128i32);
5243 pub const STS_EXCLUDED: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(256i32);
5244 pub const STS_INCOMPLETE: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(512i32);
5245 pub const STS_PLACEHOLDER_IFEMPTY: SYNC_TRANSFER_STATUS = SYNC_TRANSFER_STATUS(1024i32);
5246 impl ::std::convert::From<i32> for SYNC_TRANSFER_STATUS {
from(value: i32) -> Self5247     fn from(value: i32) -> Self {
5248         Self(value)
5249     }
5250 }
5251 unsafe impl ::windows::runtime::Abi for SYNC_TRANSFER_STATUS {
5252     type Abi = Self;
5253     type DefaultType = Self;
5254 }
5255 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5256 #[inline]
VariantCompare(var1: *const super::Com::VARIANT, var2: *const super::Com::VARIANT) -> i325257 pub unsafe fn VariantCompare(var1: *const super::Com::VARIANT, var2: *const super::Com::VARIANT) -> i32 {
5258     #[cfg(windows)]
5259     {
5260         #[link(name = "windows")]
5261         extern "system" {
5262             fn VariantCompare(var1: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, var2: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> i32;
5263         }
5264         ::std::mem::transmute(VariantCompare(::std::mem::transmute(var1), ::std::mem::transmute(var2)))
5265     }
5266     #[cfg(not(windows))]
5267     unimplemented!("Unsupported target OS");
5268 }
5269 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5270 #[inline]
VariantGetBooleanElem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL>5271 pub unsafe fn VariantGetBooleanElem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
5272     #[cfg(windows)]
5273     {
5274         #[link(name = "windows")]
5275         extern "system" {
5276             fn VariantGetBooleanElem(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, pfval: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
5277         }
5278         let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5279         VariantGetBooleanElem(::std::mem::transmute(var), ::std::mem::transmute(ielem), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
5280     }
5281     #[cfg(not(windows))]
5282     unimplemented!("Unsupported target OS");
5283 }
5284 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5285 #[inline]
VariantGetDoubleElem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<f64>5286 pub unsafe fn VariantGetDoubleElem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<f64> {
5287     #[cfg(windows)]
5288     {
5289         #[link(name = "windows")]
5290         extern "system" {
5291             fn VariantGetDoubleElem(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, pnval: *mut f64) -> ::windows::runtime::HRESULT;
5292         }
5293         let mut result__: <f64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5294         VariantGetDoubleElem(::std::mem::transmute(var), ::std::mem::transmute(ielem), &mut result__).from_abi::<f64>(result__)
5295     }
5296     #[cfg(not(windows))]
5297     unimplemented!("Unsupported target OS");
5298 }
5299 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5300 #[inline]
VariantGetElementCount(varin: *const super::Com::VARIANT) -> u325301 pub unsafe fn VariantGetElementCount(varin: *const super::Com::VARIANT) -> u32 {
5302     #[cfg(windows)]
5303     {
5304         #[link(name = "windows")]
5305         extern "system" {
5306             fn VariantGetElementCount(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>) -> u32;
5307         }
5308         ::std::mem::transmute(VariantGetElementCount(::std::mem::transmute(varin)))
5309     }
5310     #[cfg(not(windows))]
5311     unimplemented!("Unsupported target OS");
5312 }
5313 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5314 #[inline]
VariantGetInt16Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<i16>5315 pub unsafe fn VariantGetInt16Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<i16> {
5316     #[cfg(windows)]
5317     {
5318         #[link(name = "windows")]
5319         extern "system" {
5320             fn VariantGetInt16Elem(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, pnval: *mut i16) -> ::windows::runtime::HRESULT;
5321         }
5322         let mut result__: <i16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5323         VariantGetInt16Elem(::std::mem::transmute(var), ::std::mem::transmute(ielem), &mut result__).from_abi::<i16>(result__)
5324     }
5325     #[cfg(not(windows))]
5326     unimplemented!("Unsupported target OS");
5327 }
5328 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5329 #[inline]
VariantGetInt32Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<i32>5330 pub unsafe fn VariantGetInt32Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<i32> {
5331     #[cfg(windows)]
5332     {
5333         #[link(name = "windows")]
5334         extern "system" {
5335             fn VariantGetInt32Elem(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, pnval: *mut i32) -> ::windows::runtime::HRESULT;
5336         }
5337         let mut result__: <i32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5338         VariantGetInt32Elem(::std::mem::transmute(var), ::std::mem::transmute(ielem), &mut result__).from_abi::<i32>(result__)
5339     }
5340     #[cfg(not(windows))]
5341     unimplemented!("Unsupported target OS");
5342 }
5343 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5344 #[inline]
VariantGetInt64Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<i64>5345 pub unsafe fn VariantGetInt64Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<i64> {
5346     #[cfg(windows)]
5347     {
5348         #[link(name = "windows")]
5349         extern "system" {
5350             fn VariantGetInt64Elem(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, pnval: *mut i64) -> ::windows::runtime::HRESULT;
5351         }
5352         let mut result__: <i64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5353         VariantGetInt64Elem(::std::mem::transmute(var), ::std::mem::transmute(ielem), &mut result__).from_abi::<i64>(result__)
5354     }
5355     #[cfg(not(windows))]
5356     unimplemented!("Unsupported target OS");
5357 }
5358 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5359 #[inline]
VariantGetStringElem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>5360 pub unsafe fn VariantGetStringElem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
5361     #[cfg(windows)]
5362     {
5363         #[link(name = "windows")]
5364         extern "system" {
5365             fn VariantGetStringElem(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, ppszval: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
5366         }
5367         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5368         VariantGetStringElem(::std::mem::transmute(var), ::std::mem::transmute(ielem), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
5369     }
5370     #[cfg(not(windows))]
5371     unimplemented!("Unsupported target OS");
5372 }
5373 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5374 #[inline]
VariantGetUInt16Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<u16>5375 pub unsafe fn VariantGetUInt16Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<u16> {
5376     #[cfg(windows)]
5377     {
5378         #[link(name = "windows")]
5379         extern "system" {
5380             fn VariantGetUInt16Elem(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, pnval: *mut u16) -> ::windows::runtime::HRESULT;
5381         }
5382         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5383         VariantGetUInt16Elem(::std::mem::transmute(var), ::std::mem::transmute(ielem), &mut result__).from_abi::<u16>(result__)
5384     }
5385     #[cfg(not(windows))]
5386     unimplemented!("Unsupported target OS");
5387 }
5388 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5389 #[inline]
VariantGetUInt32Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<u32>5390 pub unsafe fn VariantGetUInt32Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<u32> {
5391     #[cfg(windows)]
5392     {
5393         #[link(name = "windows")]
5394         extern "system" {
5395             fn VariantGetUInt32Elem(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, pnval: *mut u32) -> ::windows::runtime::HRESULT;
5396         }
5397         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5398         VariantGetUInt32Elem(::std::mem::transmute(var), ::std::mem::transmute(ielem), &mut result__).from_abi::<u32>(result__)
5399     }
5400     #[cfg(not(windows))]
5401     unimplemented!("Unsupported target OS");
5402 }
5403 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5404 #[inline]
VariantGetUInt64Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<u64>5405 pub unsafe fn VariantGetUInt64Elem(var: *const super::Com::VARIANT, ielem: u32) -> ::windows::runtime::Result<u64> {
5406     #[cfg(windows)]
5407     {
5408         #[link(name = "windows")]
5409         extern "system" {
5410             fn VariantGetUInt64Elem(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ielem: u32, pnval: *mut u64) -> ::windows::runtime::HRESULT;
5411         }
5412         let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5413         VariantGetUInt64Elem(::std::mem::transmute(var), ::std::mem::transmute(ielem), &mut result__).from_abi::<u64>(result__)
5414     }
5415     #[cfg(not(windows))]
5416     unimplemented!("Unsupported target OS");
5417 }
5418 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5419 #[inline]
VariantToBoolean(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<super::super::Foundation::BOOL>5420 pub unsafe fn VariantToBoolean(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
5421     #[cfg(windows)]
5422     {
5423         #[link(name = "windows")]
5424         extern "system" {
5425             fn VariantToBoolean(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pfret: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT;
5426         }
5427         let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5428         VariantToBoolean(::std::mem::transmute(varin), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
5429     }
5430     #[cfg(not(windows))]
5431     unimplemented!("Unsupported target OS");
5432 }
5433 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5434 #[inline]
VariantToBooleanArray(var: *const super::Com::VARIANT, prgf: *mut super::super::Foundation::BOOL, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5435 pub unsafe fn VariantToBooleanArray(var: *const super::Com::VARIANT, prgf: *mut super::super::Foundation::BOOL, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5436     #[cfg(windows)]
5437     {
5438         #[link(name = "windows")]
5439         extern "system" {
5440             fn VariantToBooleanArray(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, prgf: *mut super::super::Foundation::BOOL, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5441         }
5442         VariantToBooleanArray(::std::mem::transmute(var), ::std::mem::transmute(prgf), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
5443     }
5444     #[cfg(not(windows))]
5445     unimplemented!("Unsupported target OS");
5446 }
5447 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5448 #[inline]
VariantToBooleanArrayAlloc(var: *const super::Com::VARIANT, pprgf: *mut *mut super::super::Foundation::BOOL, pcelem: *mut u32) -> ::windows::runtime::Result<()>5449 pub unsafe fn VariantToBooleanArrayAlloc(var: *const super::Com::VARIANT, pprgf: *mut *mut super::super::Foundation::BOOL, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5450     #[cfg(windows)]
5451     {
5452         #[link(name = "windows")]
5453         extern "system" {
5454             fn VariantToBooleanArrayAlloc(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pprgf: *mut *mut super::super::Foundation::BOOL, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5455         }
5456         VariantToBooleanArrayAlloc(::std::mem::transmute(var), ::std::mem::transmute(pprgf), ::std::mem::transmute(pcelem)).ok()
5457     }
5458     #[cfg(not(windows))]
5459     unimplemented!("Unsupported target OS");
5460 }
5461 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5462 #[inline]
VariantToBooleanWithDefault<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(varin: *const super::Com::VARIANT, fdefault: Param1) -> super::super::Foundation::BOOL5463 pub unsafe fn VariantToBooleanWithDefault<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(varin: *const super::Com::VARIANT, fdefault: Param1) -> super::super::Foundation::BOOL {
5464     #[cfg(windows)]
5465     {
5466         #[link(name = "windows")]
5467         extern "system" {
5468             fn VariantToBooleanWithDefault(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, fdefault: super::super::Foundation::BOOL) -> super::super::Foundation::BOOL;
5469         }
5470         ::std::mem::transmute(VariantToBooleanWithDefault(::std::mem::transmute(varin), fdefault.into_param().abi()))
5471     }
5472     #[cfg(not(windows))]
5473     unimplemented!("Unsupported target OS");
5474 }
5475 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5476 #[inline]
VariantToBuffer(varin: *const super::Com::VARIANT, pv: *mut ::std::ffi::c_void, cb: u32) -> ::windows::runtime::Result<()>5477 pub unsafe fn VariantToBuffer(varin: *const super::Com::VARIANT, pv: *mut ::std::ffi::c_void, cb: u32) -> ::windows::runtime::Result<()> {
5478     #[cfg(windows)]
5479     {
5480         #[link(name = "windows")]
5481         extern "system" {
5482             fn VariantToBuffer(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pv: *mut ::std::ffi::c_void, cb: u32) -> ::windows::runtime::HRESULT;
5483         }
5484         VariantToBuffer(::std::mem::transmute(varin), ::std::mem::transmute(pv), ::std::mem::transmute(cb)).ok()
5485     }
5486     #[cfg(not(windows))]
5487     unimplemented!("Unsupported target OS");
5488 }
5489 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5490 #[inline]
VariantToDosDateTime(varin: *const super::Com::VARIANT, pwdate: *mut u16, pwtime: *mut u16) -> ::windows::runtime::Result<()>5491 pub unsafe fn VariantToDosDateTime(varin: *const super::Com::VARIANT, pwdate: *mut u16, pwtime: *mut u16) -> ::windows::runtime::Result<()> {
5492     #[cfg(windows)]
5493     {
5494         #[link(name = "windows")]
5495         extern "system" {
5496             fn VariantToDosDateTime(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pwdate: *mut u16, pwtime: *mut u16) -> ::windows::runtime::HRESULT;
5497         }
5498         VariantToDosDateTime(::std::mem::transmute(varin), ::std::mem::transmute(pwdate), ::std::mem::transmute(pwtime)).ok()
5499     }
5500     #[cfg(not(windows))]
5501     unimplemented!("Unsupported target OS");
5502 }
5503 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5504 #[inline]
VariantToDouble(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<f64>5505 pub unsafe fn VariantToDouble(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<f64> {
5506     #[cfg(windows)]
5507     {
5508         #[link(name = "windows")]
5509         extern "system" {
5510             fn VariantToDouble(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pdblret: *mut f64) -> ::windows::runtime::HRESULT;
5511         }
5512         let mut result__: <f64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5513         VariantToDouble(::std::mem::transmute(varin), &mut result__).from_abi::<f64>(result__)
5514     }
5515     #[cfg(not(windows))]
5516     unimplemented!("Unsupported target OS");
5517 }
5518 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5519 #[inline]
VariantToDoubleArray(var: *const super::Com::VARIANT, prgn: *mut f64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5520 pub unsafe fn VariantToDoubleArray(var: *const super::Com::VARIANT, prgn: *mut f64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5521     #[cfg(windows)]
5522     {
5523         #[link(name = "windows")]
5524         extern "system" {
5525             fn VariantToDoubleArray(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, prgn: *mut f64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5526         }
5527         VariantToDoubleArray(::std::mem::transmute(var), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
5528     }
5529     #[cfg(not(windows))]
5530     unimplemented!("Unsupported target OS");
5531 }
5532 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5533 #[inline]
VariantToDoubleArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut f64, pcelem: *mut u32) -> ::windows::runtime::Result<()>5534 pub unsafe fn VariantToDoubleArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut f64, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5535     #[cfg(windows)]
5536     {
5537         #[link(name = "windows")]
5538         extern "system" {
5539             fn VariantToDoubleArrayAlloc(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pprgn: *mut *mut f64, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5540         }
5541         VariantToDoubleArrayAlloc(::std::mem::transmute(var), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
5542     }
5543     #[cfg(not(windows))]
5544     unimplemented!("Unsupported target OS");
5545 }
5546 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5547 #[inline]
VariantToDoubleWithDefault(varin: *const super::Com::VARIANT, dbldefault: f64) -> f645548 pub unsafe fn VariantToDoubleWithDefault(varin: *const super::Com::VARIANT, dbldefault: f64) -> f64 {
5549     #[cfg(windows)]
5550     {
5551         #[link(name = "windows")]
5552         extern "system" {
5553             fn VariantToDoubleWithDefault(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, dbldefault: f64) -> f64;
5554         }
5555         ::std::mem::transmute(VariantToDoubleWithDefault(::std::mem::transmute(varin), ::std::mem::transmute(dbldefault)))
5556     }
5557     #[cfg(not(windows))]
5558     unimplemented!("Unsupported target OS");
5559 }
5560 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5561 #[inline]
VariantToFileTime(varin: *const super::Com::VARIANT, stfout: PSTIME_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::FILETIME>5562 pub unsafe fn VariantToFileTime(varin: *const super::Com::VARIANT, stfout: PSTIME_FLAGS) -> ::windows::runtime::Result<super::super::Foundation::FILETIME> {
5563     #[cfg(windows)]
5564     {
5565         #[link(name = "windows")]
5566         extern "system" {
5567             fn VariantToFileTime(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, stfout: PSTIME_FLAGS, pftout: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::HRESULT;
5568         }
5569         let mut result__: <super::super::Foundation::FILETIME as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5570         VariantToFileTime(::std::mem::transmute(varin), ::std::mem::transmute(stfout), &mut result__).from_abi::<super::super::Foundation::FILETIME>(result__)
5571     }
5572     #[cfg(not(windows))]
5573     unimplemented!("Unsupported target OS");
5574 }
5575 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5576 #[inline]
VariantToGUID(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<::windows::runtime::GUID>5577 pub unsafe fn VariantToGUID(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<::windows::runtime::GUID> {
5578     #[cfg(windows)]
5579     {
5580         #[link(name = "windows")]
5581         extern "system" {
5582             fn VariantToGUID(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pguid: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT;
5583         }
5584         let mut result__: <::windows::runtime::GUID as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5585         VariantToGUID(::std::mem::transmute(varin), &mut result__).from_abi::<::windows::runtime::GUID>(result__)
5586     }
5587     #[cfg(not(windows))]
5588     unimplemented!("Unsupported target OS");
5589 }
5590 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5591 #[inline]
VariantToInt16(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<i16>5592 pub unsafe fn VariantToInt16(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<i16> {
5593     #[cfg(windows)]
5594     {
5595         #[link(name = "windows")]
5596         extern "system" {
5597             fn VariantToInt16(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, piret: *mut i16) -> ::windows::runtime::HRESULT;
5598         }
5599         let mut result__: <i16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5600         VariantToInt16(::std::mem::transmute(varin), &mut result__).from_abi::<i16>(result__)
5601     }
5602     #[cfg(not(windows))]
5603     unimplemented!("Unsupported target OS");
5604 }
5605 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5606 #[inline]
VariantToInt16Array(var: *const super::Com::VARIANT, prgn: *mut i16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5607 pub unsafe fn VariantToInt16Array(var: *const super::Com::VARIANT, prgn: *mut i16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5608     #[cfg(windows)]
5609     {
5610         #[link(name = "windows")]
5611         extern "system" {
5612             fn VariantToInt16Array(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, prgn: *mut i16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5613         }
5614         VariantToInt16Array(::std::mem::transmute(var), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
5615     }
5616     #[cfg(not(windows))]
5617     unimplemented!("Unsupported target OS");
5618 }
5619 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5620 #[inline]
VariantToInt16ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut i16, pcelem: *mut u32) -> ::windows::runtime::Result<()>5621 pub unsafe fn VariantToInt16ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut i16, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5622     #[cfg(windows)]
5623     {
5624         #[link(name = "windows")]
5625         extern "system" {
5626             fn VariantToInt16ArrayAlloc(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pprgn: *mut *mut i16, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5627         }
5628         VariantToInt16ArrayAlloc(::std::mem::transmute(var), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
5629     }
5630     #[cfg(not(windows))]
5631     unimplemented!("Unsupported target OS");
5632 }
5633 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5634 #[inline]
VariantToInt16WithDefault(varin: *const super::Com::VARIANT, idefault: i16) -> i165635 pub unsafe fn VariantToInt16WithDefault(varin: *const super::Com::VARIANT, idefault: i16) -> i16 {
5636     #[cfg(windows)]
5637     {
5638         #[link(name = "windows")]
5639         extern "system" {
5640             fn VariantToInt16WithDefault(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, idefault: i16) -> i16;
5641         }
5642         ::std::mem::transmute(VariantToInt16WithDefault(::std::mem::transmute(varin), ::std::mem::transmute(idefault)))
5643     }
5644     #[cfg(not(windows))]
5645     unimplemented!("Unsupported target OS");
5646 }
5647 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5648 #[inline]
VariantToInt32(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<i32>5649 pub unsafe fn VariantToInt32(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<i32> {
5650     #[cfg(windows)]
5651     {
5652         #[link(name = "windows")]
5653         extern "system" {
5654             fn VariantToInt32(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, plret: *mut i32) -> ::windows::runtime::HRESULT;
5655         }
5656         let mut result__: <i32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5657         VariantToInt32(::std::mem::transmute(varin), &mut result__).from_abi::<i32>(result__)
5658     }
5659     #[cfg(not(windows))]
5660     unimplemented!("Unsupported target OS");
5661 }
5662 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5663 #[inline]
VariantToInt32Array(var: *const super::Com::VARIANT, prgn: *mut i32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5664 pub unsafe fn VariantToInt32Array(var: *const super::Com::VARIANT, prgn: *mut i32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5665     #[cfg(windows)]
5666     {
5667         #[link(name = "windows")]
5668         extern "system" {
5669             fn VariantToInt32Array(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, prgn: *mut i32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5670         }
5671         VariantToInt32Array(::std::mem::transmute(var), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
5672     }
5673     #[cfg(not(windows))]
5674     unimplemented!("Unsupported target OS");
5675 }
5676 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5677 #[inline]
VariantToInt32ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut i32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5678 pub unsafe fn VariantToInt32ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut i32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5679     #[cfg(windows)]
5680     {
5681         #[link(name = "windows")]
5682         extern "system" {
5683             fn VariantToInt32ArrayAlloc(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pprgn: *mut *mut i32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5684         }
5685         VariantToInt32ArrayAlloc(::std::mem::transmute(var), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
5686     }
5687     #[cfg(not(windows))]
5688     unimplemented!("Unsupported target OS");
5689 }
5690 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5691 #[inline]
VariantToInt32WithDefault(varin: *const super::Com::VARIANT, ldefault: i32) -> i325692 pub unsafe fn VariantToInt32WithDefault(varin: *const super::Com::VARIANT, ldefault: i32) -> i32 {
5693     #[cfg(windows)]
5694     {
5695         #[link(name = "windows")]
5696         extern "system" {
5697             fn VariantToInt32WithDefault(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ldefault: i32) -> i32;
5698         }
5699         ::std::mem::transmute(VariantToInt32WithDefault(::std::mem::transmute(varin), ::std::mem::transmute(ldefault)))
5700     }
5701     #[cfg(not(windows))]
5702     unimplemented!("Unsupported target OS");
5703 }
5704 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5705 #[inline]
VariantToInt64(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<i64>5706 pub unsafe fn VariantToInt64(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<i64> {
5707     #[cfg(windows)]
5708     {
5709         #[link(name = "windows")]
5710         extern "system" {
5711             fn VariantToInt64(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pllret: *mut i64) -> ::windows::runtime::HRESULT;
5712         }
5713         let mut result__: <i64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5714         VariantToInt64(::std::mem::transmute(varin), &mut result__).from_abi::<i64>(result__)
5715     }
5716     #[cfg(not(windows))]
5717     unimplemented!("Unsupported target OS");
5718 }
5719 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5720 #[inline]
VariantToInt64Array(var: *const super::Com::VARIANT, prgn: *mut i64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5721 pub unsafe fn VariantToInt64Array(var: *const super::Com::VARIANT, prgn: *mut i64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5722     #[cfg(windows)]
5723     {
5724         #[link(name = "windows")]
5725         extern "system" {
5726             fn VariantToInt64Array(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, prgn: *mut i64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5727         }
5728         VariantToInt64Array(::std::mem::transmute(var), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
5729     }
5730     #[cfg(not(windows))]
5731     unimplemented!("Unsupported target OS");
5732 }
5733 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5734 #[inline]
VariantToInt64ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut i64, pcelem: *mut u32) -> ::windows::runtime::Result<()>5735 pub unsafe fn VariantToInt64ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut i64, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5736     #[cfg(windows)]
5737     {
5738         #[link(name = "windows")]
5739         extern "system" {
5740             fn VariantToInt64ArrayAlloc(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pprgn: *mut *mut i64, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5741         }
5742         VariantToInt64ArrayAlloc(::std::mem::transmute(var), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
5743     }
5744     #[cfg(not(windows))]
5745     unimplemented!("Unsupported target OS");
5746 }
5747 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5748 #[inline]
VariantToInt64WithDefault(varin: *const super::Com::VARIANT, lldefault: i64) -> i645749 pub unsafe fn VariantToInt64WithDefault(varin: *const super::Com::VARIANT, lldefault: i64) -> i64 {
5750     #[cfg(windows)]
5751     {
5752         #[link(name = "windows")]
5753         extern "system" {
5754             fn VariantToInt64WithDefault(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, lldefault: i64) -> i64;
5755         }
5756         ::std::mem::transmute(VariantToInt64WithDefault(::std::mem::transmute(varin), ::std::mem::transmute(lldefault)))
5757     }
5758     #[cfg(not(windows))]
5759     unimplemented!("Unsupported target OS");
5760 }
5761 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
5762 #[inline]
VariantToPropVariant(pvar: *const super::Com::VARIANT) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>5763 pub unsafe fn VariantToPropVariant(pvar: *const super::Com::VARIANT) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
5764     #[cfg(windows)]
5765     {
5766         #[link(name = "windows")]
5767         extern "system" {
5768             fn VariantToPropVariant(pvar: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
5769         }
5770         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5771         VariantToPropVariant(::std::mem::transmute(pvar), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
5772     }
5773     #[cfg(not(windows))]
5774     unimplemented!("Unsupported target OS");
5775 }
5776 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation", feature = "Win32_UI_Shell"))]
5777 #[inline]
VariantToStrRet(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<super::super::UI::Shell::STRRET>5778 pub unsafe fn VariantToStrRet(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<super::super::UI::Shell::STRRET> {
5779     #[cfg(windows)]
5780     {
5781         #[link(name = "windows")]
5782         extern "system" {
5783             fn VariantToStrRet(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pstrret: *mut super::super::UI::Shell::STRRET) -> ::windows::runtime::HRESULT;
5784         }
5785         let mut result__: <super::super::UI::Shell::STRRET as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5786         VariantToStrRet(::std::mem::transmute(varin), &mut result__).from_abi::<super::super::UI::Shell::STRRET>(result__)
5787     }
5788     #[cfg(not(windows))]
5789     unimplemented!("Unsupported target OS");
5790 }
5791 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5792 #[inline]
VariantToString(varin: *const super::Com::VARIANT, pszbuf: super::super::Foundation::PWSTR, cchbuf: u32) -> ::windows::runtime::Result<()>5793 pub unsafe fn VariantToString(varin: *const super::Com::VARIANT, pszbuf: super::super::Foundation::PWSTR, cchbuf: u32) -> ::windows::runtime::Result<()> {
5794     #[cfg(windows)]
5795     {
5796         #[link(name = "windows")]
5797         extern "system" {
5798             fn VariantToString(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pszbuf: super::super::Foundation::PWSTR, cchbuf: u32) -> ::windows::runtime::HRESULT;
5799         }
5800         VariantToString(::std::mem::transmute(varin), ::std::mem::transmute(pszbuf), ::std::mem::transmute(cchbuf)).ok()
5801     }
5802     #[cfg(not(windows))]
5803     unimplemented!("Unsupported target OS");
5804 }
5805 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5806 #[inline]
VariantToStringAlloc(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>5807 pub unsafe fn VariantToStringAlloc(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
5808     #[cfg(windows)]
5809     {
5810         #[link(name = "windows")]
5811         extern "system" {
5812             fn VariantToStringAlloc(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ppszbuf: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT;
5813         }
5814         let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5815         VariantToStringAlloc(::std::mem::transmute(varin), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
5816     }
5817     #[cfg(not(windows))]
5818     unimplemented!("Unsupported target OS");
5819 }
5820 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5821 #[inline]
VariantToStringArray(var: *const super::Com::VARIANT, prgsz: *mut super::super::Foundation::PWSTR, crgsz: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5822 pub unsafe fn VariantToStringArray(var: *const super::Com::VARIANT, prgsz: *mut super::super::Foundation::PWSTR, crgsz: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5823     #[cfg(windows)]
5824     {
5825         #[link(name = "windows")]
5826         extern "system" {
5827             fn VariantToStringArray(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, prgsz: *mut super::super::Foundation::PWSTR, crgsz: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5828         }
5829         VariantToStringArray(::std::mem::transmute(var), ::std::mem::transmute(prgsz), ::std::mem::transmute(crgsz), ::std::mem::transmute(pcelem)).ok()
5830     }
5831     #[cfg(not(windows))]
5832     unimplemented!("Unsupported target OS");
5833 }
5834 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5835 #[inline]
VariantToStringArrayAlloc(var: *const super::Com::VARIANT, pprgsz: *mut *mut super::super::Foundation::PWSTR, pcelem: *mut u32) -> ::windows::runtime::Result<()>5836 pub unsafe fn VariantToStringArrayAlloc(var: *const super::Com::VARIANT, pprgsz: *mut *mut super::super::Foundation::PWSTR, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5837     #[cfg(windows)]
5838     {
5839         #[link(name = "windows")]
5840         extern "system" {
5841             fn VariantToStringArrayAlloc(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pprgsz: *mut *mut super::super::Foundation::PWSTR, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5842         }
5843         VariantToStringArrayAlloc(::std::mem::transmute(var), ::std::mem::transmute(pprgsz), ::std::mem::transmute(pcelem)).ok()
5844     }
5845     #[cfg(not(windows))]
5846     unimplemented!("Unsupported target OS");
5847 }
5848 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5849 #[inline]
VariantToStringWithDefault<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(varin: *const super::Com::VARIANT, pszdefault: Param1) -> super::super::Foundation::PWSTR5850 pub unsafe fn VariantToStringWithDefault<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(varin: *const super::Com::VARIANT, pszdefault: Param1) -> super::super::Foundation::PWSTR {
5851     #[cfg(windows)]
5852     {
5853         #[link(name = "windows")]
5854         extern "system" {
5855             fn VariantToStringWithDefault(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pszdefault: super::super::Foundation::PWSTR) -> super::super::Foundation::PWSTR;
5856         }
5857         ::std::mem::transmute(VariantToStringWithDefault(::std::mem::transmute(varin), pszdefault.into_param().abi()))
5858     }
5859     #[cfg(not(windows))]
5860     unimplemented!("Unsupported target OS");
5861 }
5862 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5863 #[inline]
VariantToUInt16(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<u16>5864 pub unsafe fn VariantToUInt16(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<u16> {
5865     #[cfg(windows)]
5866     {
5867         #[link(name = "windows")]
5868         extern "system" {
5869             fn VariantToUInt16(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, puiret: *mut u16) -> ::windows::runtime::HRESULT;
5870         }
5871         let mut result__: <u16 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5872         VariantToUInt16(::std::mem::transmute(varin), &mut result__).from_abi::<u16>(result__)
5873     }
5874     #[cfg(not(windows))]
5875     unimplemented!("Unsupported target OS");
5876 }
5877 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5878 #[inline]
VariantToUInt16Array(var: *const super::Com::VARIANT, prgn: *mut u16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5879 pub unsafe fn VariantToUInt16Array(var: *const super::Com::VARIANT, prgn: *mut u16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5880     #[cfg(windows)]
5881     {
5882         #[link(name = "windows")]
5883         extern "system" {
5884             fn VariantToUInt16Array(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, prgn: *mut u16, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5885         }
5886         VariantToUInt16Array(::std::mem::transmute(var), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
5887     }
5888     #[cfg(not(windows))]
5889     unimplemented!("Unsupported target OS");
5890 }
5891 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5892 #[inline]
VariantToUInt16ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut u16, pcelem: *mut u32) -> ::windows::runtime::Result<()>5893 pub unsafe fn VariantToUInt16ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut u16, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5894     #[cfg(windows)]
5895     {
5896         #[link(name = "windows")]
5897         extern "system" {
5898             fn VariantToUInt16ArrayAlloc(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pprgn: *mut *mut u16, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5899         }
5900         VariantToUInt16ArrayAlloc(::std::mem::transmute(var), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
5901     }
5902     #[cfg(not(windows))]
5903     unimplemented!("Unsupported target OS");
5904 }
5905 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5906 #[inline]
VariantToUInt16WithDefault(varin: *const super::Com::VARIANT, uidefault: u16) -> u165907 pub unsafe fn VariantToUInt16WithDefault(varin: *const super::Com::VARIANT, uidefault: u16) -> u16 {
5908     #[cfg(windows)]
5909     {
5910         #[link(name = "windows")]
5911         extern "system" {
5912             fn VariantToUInt16WithDefault(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, uidefault: u16) -> u16;
5913         }
5914         ::std::mem::transmute(VariantToUInt16WithDefault(::std::mem::transmute(varin), ::std::mem::transmute(uidefault)))
5915     }
5916     #[cfg(not(windows))]
5917     unimplemented!("Unsupported target OS");
5918 }
5919 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5920 #[inline]
VariantToUInt32(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<u32>5921 pub unsafe fn VariantToUInt32(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<u32> {
5922     #[cfg(windows)]
5923     {
5924         #[link(name = "windows")]
5925         extern "system" {
5926             fn VariantToUInt32(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pulret: *mut u32) -> ::windows::runtime::HRESULT;
5927         }
5928         let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5929         VariantToUInt32(::std::mem::transmute(varin), &mut result__).from_abi::<u32>(result__)
5930     }
5931     #[cfg(not(windows))]
5932     unimplemented!("Unsupported target OS");
5933 }
5934 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5935 #[inline]
VariantToUInt32Array(var: *const super::Com::VARIANT, prgn: *mut u32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5936 pub unsafe fn VariantToUInt32Array(var: *const super::Com::VARIANT, prgn: *mut u32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5937     #[cfg(windows)]
5938     {
5939         #[link(name = "windows")]
5940         extern "system" {
5941             fn VariantToUInt32Array(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, prgn: *mut u32, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5942         }
5943         VariantToUInt32Array(::std::mem::transmute(var), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
5944     }
5945     #[cfg(not(windows))]
5946     unimplemented!("Unsupported target OS");
5947 }
5948 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5949 #[inline]
VariantToUInt32ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5950 pub unsafe fn VariantToUInt32ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5951     #[cfg(windows)]
5952     {
5953         #[link(name = "windows")]
5954         extern "system" {
5955             fn VariantToUInt32ArrayAlloc(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pprgn: *mut *mut u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5956         }
5957         VariantToUInt32ArrayAlloc(::std::mem::transmute(var), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
5958     }
5959     #[cfg(not(windows))]
5960     unimplemented!("Unsupported target OS");
5961 }
5962 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5963 #[inline]
VariantToUInt32WithDefault(varin: *const super::Com::VARIANT, uldefault: u32) -> u325964 pub unsafe fn VariantToUInt32WithDefault(varin: *const super::Com::VARIANT, uldefault: u32) -> u32 {
5965     #[cfg(windows)]
5966     {
5967         #[link(name = "windows")]
5968         extern "system" {
5969             fn VariantToUInt32WithDefault(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, uldefault: u32) -> u32;
5970         }
5971         ::std::mem::transmute(VariantToUInt32WithDefault(::std::mem::transmute(varin), ::std::mem::transmute(uldefault)))
5972     }
5973     #[cfg(not(windows))]
5974     unimplemented!("Unsupported target OS");
5975 }
5976 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5977 #[inline]
VariantToUInt64(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<u64>5978 pub unsafe fn VariantToUInt64(varin: *const super::Com::VARIANT) -> ::windows::runtime::Result<u64> {
5979     #[cfg(windows)]
5980     {
5981         #[link(name = "windows")]
5982         extern "system" {
5983             fn VariantToUInt64(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pullret: *mut u64) -> ::windows::runtime::HRESULT;
5984         }
5985         let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
5986         VariantToUInt64(::std::mem::transmute(varin), &mut result__).from_abi::<u64>(result__)
5987     }
5988     #[cfg(not(windows))]
5989     unimplemented!("Unsupported target OS");
5990 }
5991 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
5992 #[inline]
VariantToUInt64Array(var: *const super::Com::VARIANT, prgn: *mut u64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()>5993 pub unsafe fn VariantToUInt64Array(var: *const super::Com::VARIANT, prgn: *mut u64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
5994     #[cfg(windows)]
5995     {
5996         #[link(name = "windows")]
5997         extern "system" {
5998             fn VariantToUInt64Array(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, prgn: *mut u64, crgn: u32, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
5999         }
6000         VariantToUInt64Array(::std::mem::transmute(var), ::std::mem::transmute(prgn), ::std::mem::transmute(crgn), ::std::mem::transmute(pcelem)).ok()
6001     }
6002     #[cfg(not(windows))]
6003     unimplemented!("Unsupported target OS");
6004 }
6005 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
6006 #[inline]
VariantToUInt64ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut u64, pcelem: *mut u32) -> ::windows::runtime::Result<()>6007 pub unsafe fn VariantToUInt64ArrayAlloc(var: *const super::Com::VARIANT, pprgn: *mut *mut u64, pcelem: *mut u32) -> ::windows::runtime::Result<()> {
6008     #[cfg(windows)]
6009     {
6010         #[link(name = "windows")]
6011         extern "system" {
6012             fn VariantToUInt64ArrayAlloc(var: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, pprgn: *mut *mut u64, pcelem: *mut u32) -> ::windows::runtime::HRESULT;
6013         }
6014         VariantToUInt64ArrayAlloc(::std::mem::transmute(var), ::std::mem::transmute(pprgn), ::std::mem::transmute(pcelem)).ok()
6015     }
6016     #[cfg(not(windows))]
6017     unimplemented!("Unsupported target OS");
6018 }
6019 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
6020 #[inline]
VariantToUInt64WithDefault(varin: *const super::Com::VARIANT, ulldefault: u64) -> u646021 pub unsafe fn VariantToUInt64WithDefault(varin: *const super::Com::VARIANT, ulldefault: u64) -> u64 {
6022     #[cfg(windows)]
6023     {
6024         #[link(name = "windows")]
6025         extern "system" {
6026             fn VariantToUInt64WithDefault(varin: *const ::std::mem::ManuallyDrop<super::Com::VARIANT>, ulldefault: u64) -> u64;
6027         }
6028         ::std::mem::transmute(VariantToUInt64WithDefault(::std::mem::transmute(varin), ::std::mem::transmute(ulldefault)))
6029     }
6030     #[cfg(not(windows))]
6031     unimplemented!("Unsupported target OS");
6032 }
6033 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Com_StructuredStorage", feature = "Win32_System_Ole_Automation"))]
6034 #[inline]
WinRTPropertyValueToPropVariant<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(punkpropertyvalue: Param0) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT>6035 pub unsafe fn WinRTPropertyValueToPropVariant<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(punkpropertyvalue: Param0) -> ::windows::runtime::Result<super::Com::StructuredStorage::PROPVARIANT> {
6036     #[cfg(windows)]
6037     {
6038         #[link(name = "windows")]
6039         extern "system" {
6040             fn WinRTPropertyValueToPropVariant(punkpropertyvalue: ::windows::runtime::RawPtr, ppropvar: *mut ::std::mem::ManuallyDrop<super::Com::StructuredStorage::PROPVARIANT>) -> ::windows::runtime::HRESULT;
6041         }
6042         let mut result__: <super::Com::StructuredStorage::PROPVARIANT as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
6043         WinRTPropertyValueToPropVariant(punkpropertyvalue.into_param().abi(), &mut result__).from_abi::<super::Com::StructuredStorage::PROPVARIANT>(result__)
6044     }
6045     #[cfg(not(windows))]
6046     unimplemented!("Unsupported target OS");
6047 }
6048 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
6049 #[repr(transparent)]
6050 pub struct _PERSIST_SPROPSTORE_FLAGS(pub i32);
6051 pub const FPSPS_DEFAULT: _PERSIST_SPROPSTORE_FLAGS = _PERSIST_SPROPSTORE_FLAGS(0i32);
6052 pub const FPSPS_READONLY: _PERSIST_SPROPSTORE_FLAGS = _PERSIST_SPROPSTORE_FLAGS(1i32);
6053 pub const FPSPS_TREAT_NEW_VALUES_AS_DIRTY: _PERSIST_SPROPSTORE_FLAGS = _PERSIST_SPROPSTORE_FLAGS(2i32);
6054 impl ::std::convert::From<i32> for _PERSIST_SPROPSTORE_FLAGS {
from(value: i32) -> Self6055     fn from(value: i32) -> Self {
6056         Self(value)
6057     }
6058 }
6059 unsafe impl ::windows::runtime::Abi for _PERSIST_SPROPSTORE_FLAGS {
6060     type Abi = Self;
6061     type DefaultType = Self;
6062 }
6063 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
6064 #[repr(transparent)]
6065 pub struct _PROPERTYUI_FLAGS(pub i32);
6066 pub const PUIF_DEFAULT: _PROPERTYUI_FLAGS = _PROPERTYUI_FLAGS(0i32);
6067 pub const PUIF_RIGHTALIGN: _PROPERTYUI_FLAGS = _PROPERTYUI_FLAGS(1i32);
6068 pub const PUIF_NOLABELININFOTIP: _PROPERTYUI_FLAGS = _PROPERTYUI_FLAGS(2i32);
6069 impl ::std::convert::From<i32> for _PROPERTYUI_FLAGS {
from(value: i32) -> Self6070     fn from(value: i32) -> Self {
6071         Self(value)
6072     }
6073 }
6074 unsafe impl ::windows::runtime::Abi for _PROPERTYUI_FLAGS {
6075     type Abi = Self;
6076     type DefaultType = Self;
6077 }
6078