1 #![allow(unused_variables, non_upper_case_globals, non_snake_case, unused_unsafe, non_camel_case_types, dead_code, clippy::all)]
2 #[inline]
CreateVssExpressWriterInternal() -> ::windows::runtime::Result<IVssExpressWriter>3 pub unsafe fn CreateVssExpressWriterInternal() -> ::windows::runtime::Result<IVssExpressWriter> {
4 #[cfg(windows)]
5 {
6 #[link(name = "windows")]
7 extern "system" {
8 fn CreateVssExpressWriterInternal(ppwriter: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT;
9 }
10 let mut result__: <IVssExpressWriter as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
11 CreateVssExpressWriterInternal(&mut result__).from_abi::<IVssExpressWriter>(result__)
12 }
13 #[cfg(not(windows))]
14 unimplemented!("Unsupported target OS");
15 }
16 #[repr(transparent)]
17 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
18 pub struct IVssAdmin(::windows::runtime::IUnknown);
19 impl IVssAdmin {
RegisterProvider<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, pproviderid: Param0, classid: Param1, pwszprovidername: *const u16, eprovidertype: VSS_PROVIDER_TYPE, pwszproviderversion: *const u16, providerversionid: Param5) -> ::windows::runtime::Result<()>20 pub unsafe fn RegisterProvider<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, pproviderid: Param0, classid: Param1, pwszprovidername: *const u16, eprovidertype: VSS_PROVIDER_TYPE, pwszproviderversion: *const u16, providerversionid: Param5) -> ::windows::runtime::Result<()> {
21 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pproviderid.into_param().abi(), classid.into_param().abi(), ::std::mem::transmute(pwszprovidername), ::std::mem::transmute(eprovidertype), ::std::mem::transmute(pwszproviderversion), providerversionid.into_param().abi()).ok()
22 }
UnregisterProvider<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0) -> ::windows::runtime::Result<()>23 pub unsafe fn UnregisterProvider<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0) -> ::windows::runtime::Result<()> {
24 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), providerid.into_param().abi()).ok()
25 }
QueryProviders(&self) -> ::windows::runtime::Result<IVssEnumObject>26 pub unsafe fn QueryProviders(&self) -> ::windows::runtime::Result<IVssEnumObject> {
27 let mut result__: <IVssEnumObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
28 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IVssEnumObject>(result__)
29 }
AbortAllSnapshotsInProgress(&self) -> ::windows::runtime::Result<()>30 pub unsafe fn AbortAllSnapshotsInProgress(&self) -> ::windows::runtime::Result<()> {
31 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self)).ok()
32 }
33 }
34 unsafe impl ::windows::runtime::Interface for IVssAdmin {
35 type Vtable = IVssAdmin_abi;
36 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2012043670, 12131, 4563, [138, 57, 0, 192, 79, 114, 216, 227]);
37 }
38 impl ::std::convert::From<IVssAdmin> for ::windows::runtime::IUnknown {
from(value: IVssAdmin) -> Self39 fn from(value: IVssAdmin) -> Self {
40 unsafe { ::std::mem::transmute(value) }
41 }
42 }
43 impl ::std::convert::From<&IVssAdmin> for ::windows::runtime::IUnknown {
from(value: &IVssAdmin) -> Self44 fn from(value: &IVssAdmin) -> Self {
45 ::std::convert::From::from(::std::clone::Clone::clone(value))
46 }
47 }
48 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssAdmin {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>49 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
50 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
51 }
52 }
53 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssAdmin {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>54 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
55 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
56 }
57 }
58 #[repr(C)]
59 #[doc(hidden)]
60 pub struct IVssAdmin_abi(
61 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
62 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
63 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
64 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pproviderid: ::windows::runtime::GUID, classid: ::windows::runtime::GUID, pwszprovidername: *const u16, eprovidertype: VSS_PROVIDER_TYPE, pwszproviderversion: *const u16, providerversionid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
65 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, providerid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
66 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
67 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
68 );
69 #[repr(transparent)]
70 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
71 pub struct IVssAdminEx(::windows::runtime::IUnknown);
72 impl IVssAdminEx {
RegisterProvider<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, pproviderid: Param0, classid: Param1, pwszprovidername: *const u16, eprovidertype: VSS_PROVIDER_TYPE, pwszproviderversion: *const u16, providerversionid: Param5) -> ::windows::runtime::Result<()>73 pub unsafe fn RegisterProvider<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param5: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, pproviderid: Param0, classid: Param1, pwszprovidername: *const u16, eprovidertype: VSS_PROVIDER_TYPE, pwszproviderversion: *const u16, providerversionid: Param5) -> ::windows::runtime::Result<()> {
74 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pproviderid.into_param().abi(), classid.into_param().abi(), ::std::mem::transmute(pwszprovidername), ::std::mem::transmute(eprovidertype), ::std::mem::transmute(pwszproviderversion), providerversionid.into_param().abi()).ok()
75 }
UnregisterProvider<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0) -> ::windows::runtime::Result<()>76 pub unsafe fn UnregisterProvider<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0) -> ::windows::runtime::Result<()> {
77 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), providerid.into_param().abi()).ok()
78 }
QueryProviders(&self) -> ::windows::runtime::Result<IVssEnumObject>79 pub unsafe fn QueryProviders(&self) -> ::windows::runtime::Result<IVssEnumObject> {
80 let mut result__: <IVssEnumObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
81 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<IVssEnumObject>(result__)
82 }
AbortAllSnapshotsInProgress(&self) -> ::windows::runtime::Result<()>83 pub unsafe fn AbortAllSnapshotsInProgress(&self) -> ::windows::runtime::Result<()> {
84 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self)).ok()
85 }
GetProviderCapability<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, pproviderid: Param0) -> ::windows::runtime::Result<u64>86 pub unsafe fn GetProviderCapability<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, pproviderid: Param0) -> ::windows::runtime::Result<u64> {
87 let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
88 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), pproviderid.into_param().abi(), &mut result__).from_abi::<u64>(result__)
89 }
GetProviderContext<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0) -> ::windows::runtime::Result<i32>90 pub unsafe fn GetProviderContext<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0) -> ::windows::runtime::Result<i32> {
91 let mut result__: <i32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
92 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), providerid.into_param().abi(), &mut result__).from_abi::<i32>(result__)
93 }
SetProviderContext<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0, lcontext: i32) -> ::windows::runtime::Result<()>94 pub unsafe fn SetProviderContext<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0, lcontext: i32) -> ::windows::runtime::Result<()> {
95 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), providerid.into_param().abi(), ::std::mem::transmute(lcontext)).ok()
96 }
97 }
98 unsafe impl ::windows::runtime::Interface for IVssAdminEx {
99 type Vtable = IVssAdminEx_abi;
100 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2019076600, 45562, 16806, [150, 79, 185, 179, 107, 140, 216, 216]);
101 }
102 impl ::std::convert::From<IVssAdminEx> for ::windows::runtime::IUnknown {
from(value: IVssAdminEx) -> Self103 fn from(value: IVssAdminEx) -> Self {
104 unsafe { ::std::mem::transmute(value) }
105 }
106 }
107 impl ::std::convert::From<&IVssAdminEx> for ::windows::runtime::IUnknown {
from(value: &IVssAdminEx) -> Self108 fn from(value: &IVssAdminEx) -> Self {
109 ::std::convert::From::from(::std::clone::Clone::clone(value))
110 }
111 }
112 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssAdminEx {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>113 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
114 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
115 }
116 }
117 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssAdminEx {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>118 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
119 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
120 }
121 }
122 impl ::std::convert::From<IVssAdminEx> for IVssAdmin {
from(value: IVssAdminEx) -> Self123 fn from(value: IVssAdminEx) -> Self {
124 unsafe { ::std::mem::transmute(value) }
125 }
126 }
127 impl ::std::convert::From<&IVssAdminEx> for IVssAdmin {
from(value: &IVssAdminEx) -> Self128 fn from(value: &IVssAdminEx) -> Self {
129 ::std::convert::From::from(::std::clone::Clone::clone(value))
130 }
131 }
132 impl<'a> ::windows::runtime::IntoParam<'a, IVssAdmin> for IVssAdminEx {
into_param(self) -> ::windows::runtime::Param<'a, IVssAdmin>133 fn into_param(self) -> ::windows::runtime::Param<'a, IVssAdmin> {
134 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssAdmin>::into(self))
135 }
136 }
137 impl<'a> ::windows::runtime::IntoParam<'a, IVssAdmin> for &IVssAdminEx {
into_param(self) -> ::windows::runtime::Param<'a, IVssAdmin>138 fn into_param(self) -> ::windows::runtime::Param<'a, IVssAdmin> {
139 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssAdmin>::into(::std::clone::Clone::clone(self)))
140 }
141 }
142 #[repr(C)]
143 #[doc(hidden)]
144 pub struct IVssAdminEx_abi(
145 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
146 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
147 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
148 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pproviderid: ::windows::runtime::GUID, classid: ::windows::runtime::GUID, pwszprovidername: *const u16, eprovidertype: VSS_PROVIDER_TYPE, pwszproviderversion: *const u16, providerversionid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
149 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, providerid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
150 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
151 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
152 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pproviderid: ::windows::runtime::GUID, plloriginalcapabilitymask: *mut u64) -> ::windows::runtime::HRESULT,
153 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, providerid: ::windows::runtime::GUID, plcontext: *mut i32) -> ::windows::runtime::HRESULT,
154 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, providerid: ::windows::runtime::GUID, lcontext: i32) -> ::windows::runtime::HRESULT,
155 );
156 #[repr(transparent)]
157 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
158 pub struct IVssAsync(::windows::runtime::IUnknown);
159 impl IVssAsync {
Cancel(&self) -> ::windows::runtime::Result<()>160 pub unsafe fn Cancel(&self) -> ::windows::runtime::Result<()> {
161 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self)).ok()
162 }
Wait(&self, dwmilliseconds: u32) -> ::windows::runtime::Result<()>163 pub unsafe fn Wait(&self, dwmilliseconds: u32) -> ::windows::runtime::Result<()> {
164 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwmilliseconds)).ok()
165 }
QueryStatus(&self, phrresult: *mut ::windows::runtime::HRESULT, preserved: *mut i32) -> ::windows::runtime::Result<()>166 pub unsafe fn QueryStatus(&self, phrresult: *mut ::windows::runtime::HRESULT, preserved: *mut i32) -> ::windows::runtime::Result<()> {
167 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(phrresult), ::std::mem::transmute(preserved)).ok()
168 }
169 }
170 unsafe impl ::windows::runtime::Interface for IVssAsync {
171 type Vtable = IVssAsync_abi;
172 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1350318004, 53083, 20117, [176, 175, 20, 235, 151, 103, 70, 126]);
173 }
174 impl ::std::convert::From<IVssAsync> for ::windows::runtime::IUnknown {
from(value: IVssAsync) -> Self175 fn from(value: IVssAsync) -> Self {
176 unsafe { ::std::mem::transmute(value) }
177 }
178 }
179 impl ::std::convert::From<&IVssAsync> for ::windows::runtime::IUnknown {
from(value: &IVssAsync) -> Self180 fn from(value: &IVssAsync) -> Self {
181 ::std::convert::From::from(::std::clone::Clone::clone(value))
182 }
183 }
184 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssAsync {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>185 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
186 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
187 }
188 }
189 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssAsync {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>190 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
191 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
192 }
193 }
194 #[repr(C)]
195 #[doc(hidden)]
196 pub struct IVssAsync_abi(
197 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
198 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
199 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
200 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
201 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwmilliseconds: u32) -> ::windows::runtime::HRESULT,
202 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, phrresult: *mut ::windows::runtime::HRESULT, preserved: *mut i32) -> ::windows::runtime::HRESULT,
203 );
204 #[repr(transparent)]
205 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
206 pub struct IVssComponent(::windows::runtime::IUnknown);
207 impl IVssComponent {
208 #[cfg(feature = "Win32_Foundation")]
GetLogicalPath(&self, pbstrpath: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>209 pub unsafe fn GetLogicalPath(&self, pbstrpath: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
210 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrpath)).ok()
211 }
GetComponentType(&self, pct: *mut VSS_COMPONENT_TYPE) -> ::windows::runtime::Result<()>212 pub unsafe fn GetComponentType(&self, pct: *mut VSS_COMPONENT_TYPE) -> ::windows::runtime::Result<()> {
213 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pct)).ok()
214 }
215 #[cfg(feature = "Win32_Foundation")]
GetComponentName(&self, pbstrname: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>216 pub unsafe fn GetComponentName(&self, pbstrname: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
217 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrname)).ok()
218 }
GetBackupSucceeded(&self, pbsucceeded: *mut bool) -> ::windows::runtime::Result<()>219 pub unsafe fn GetBackupSucceeded(&self, pbsucceeded: *mut bool) -> ::windows::runtime::Result<()> {
220 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbsucceeded)).ok()
221 }
GetAlternateLocationMappingCount(&self, pcmappings: *mut u32) -> ::windows::runtime::Result<()>222 pub unsafe fn GetAlternateLocationMappingCount(&self, pcmappings: *mut u32) -> ::windows::runtime::Result<()> {
223 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcmappings)).ok()
224 }
GetAlternateLocationMapping(&self, imapping: u32) -> ::windows::runtime::Result<IVssWMFiledesc>225 pub unsafe fn GetAlternateLocationMapping(&self, imapping: u32) -> ::windows::runtime::Result<IVssWMFiledesc> {
226 let mut result__: <IVssWMFiledesc as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
227 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(imapping), &mut result__).from_abi::<IVssWMFiledesc>(result__)
228 }
229 #[cfg(feature = "Win32_Foundation")]
SetBackupMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszdata: Param0) -> ::windows::runtime::Result<()>230 pub unsafe fn SetBackupMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszdata: Param0) -> ::windows::runtime::Result<()> {
231 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), wszdata.into_param().abi()).ok()
232 }
233 #[cfg(feature = "Win32_Foundation")]
GetBackupMetadata(&self, pbstrdata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>234 pub unsafe fn GetBackupMetadata(&self, pbstrdata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
235 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrdata)).ok()
236 }
237 #[cfg(feature = "Win32_Foundation")]
AddPartialFile<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilename: Param1, wszranges: Param2, wszmetadata: Param3) -> ::windows::runtime::Result<()>238 pub unsafe fn AddPartialFile<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilename: Param1, wszranges: Param2, wszmetadata: Param3) -> ::windows::runtime::Result<()> {
239 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilename.into_param().abi(), wszranges.into_param().abi(), wszmetadata.into_param().abi()).ok()
240 }
GetPartialFileCount(&self, pcpartialfiles: *mut u32) -> ::windows::runtime::Result<()>241 pub unsafe fn GetPartialFileCount(&self, pcpartialfiles: *mut u32) -> ::windows::runtime::Result<()> {
242 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcpartialfiles)).ok()
243 }
244 #[cfg(feature = "Win32_Foundation")]
GetPartialFile(&self, ipartialfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilename: *mut super::super::Foundation::BSTR, pbstrrange: *mut super::super::Foundation::BSTR, pbstrmetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>245 pub unsafe fn GetPartialFile(&self, ipartialfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilename: *mut super::super::Foundation::BSTR, pbstrrange: *mut super::super::Foundation::BSTR, pbstrmetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
246 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), ::std::mem::transmute(ipartialfile), ::std::mem::transmute(pbstrpath), ::std::mem::transmute(pbstrfilename), ::std::mem::transmute(pbstrrange), ::std::mem::transmute(pbstrmetadata)).ok()
247 }
IsSelectedForRestore(&self, pbselectedforrestore: *mut bool) -> ::windows::runtime::Result<()>248 pub unsafe fn IsSelectedForRestore(&self, pbselectedforrestore: *mut bool) -> ::windows::runtime::Result<()> {
249 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbselectedforrestore)).ok()
250 }
GetAdditionalRestores(&self, pbadditionalrestores: *mut bool) -> ::windows::runtime::Result<()>251 pub unsafe fn GetAdditionalRestores(&self, pbadditionalrestores: *mut bool) -> ::windows::runtime::Result<()> {
252 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbadditionalrestores)).ok()
253 }
GetNewTargetCount(&self, pcnewtarget: *mut u32) -> ::windows::runtime::Result<()>254 pub unsafe fn GetNewTargetCount(&self, pcnewtarget: *mut u32) -> ::windows::runtime::Result<()> {
255 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcnewtarget)).ok()
256 }
GetNewTarget(&self, inewtarget: u32) -> ::windows::runtime::Result<IVssWMFiledesc>257 pub unsafe fn GetNewTarget(&self, inewtarget: u32) -> ::windows::runtime::Result<IVssWMFiledesc> {
258 let mut result__: <IVssWMFiledesc as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
259 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), ::std::mem::transmute(inewtarget), &mut result__).from_abi::<IVssWMFiledesc>(result__)
260 }
261 #[cfg(feature = "Win32_Foundation")]
AddDirectedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, wszsourcepath: Param0, wszsourcefilename: Param1, wszsourcerangelist: Param2, wszdestinationpath: Param3, wszdestinationfilename: Param4, wszdestinationrangelist: Param5, ) -> ::windows::runtime::Result<()>262 pub unsafe fn AddDirectedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
263 &self,
264 wszsourcepath: Param0,
265 wszsourcefilename: Param1,
266 wszsourcerangelist: Param2,
267 wszdestinationpath: Param3,
268 wszdestinationfilename: Param4,
269 wszdestinationrangelist: Param5,
270 ) -> ::windows::runtime::Result<()> {
271 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), wszsourcepath.into_param().abi(), wszsourcefilename.into_param().abi(), wszsourcerangelist.into_param().abi(), wszdestinationpath.into_param().abi(), wszdestinationfilename.into_param().abi(), wszdestinationrangelist.into_param().abi()).ok()
272 }
GetDirectedTargetCount(&self, pcdirectedtarget: *mut u32) -> ::windows::runtime::Result<()>273 pub unsafe fn GetDirectedTargetCount(&self, pcdirectedtarget: *mut u32) -> ::windows::runtime::Result<()> {
274 (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcdirectedtarget)).ok()
275 }
276 #[cfg(feature = "Win32_Foundation")]
GetDirectedTarget(&self, idirectedtarget: u32, pbstrsourcepath: *mut super::super::Foundation::BSTR, pbstrsourcefilename: *mut super::super::Foundation::BSTR, pbstrsourcerangelist: *mut super::super::Foundation::BSTR, pbstrdestinationpath: *mut super::super::Foundation::BSTR, pbstrdestinationfilename: *mut super::super::Foundation::BSTR, pbstrdestinationrangelist: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>277 pub unsafe fn GetDirectedTarget(&self, idirectedtarget: u32, pbstrsourcepath: *mut super::super::Foundation::BSTR, pbstrsourcefilename: *mut super::super::Foundation::BSTR, pbstrsourcerangelist: *mut super::super::Foundation::BSTR, pbstrdestinationpath: *mut super::super::Foundation::BSTR, pbstrdestinationfilename: *mut super::super::Foundation::BSTR, pbstrdestinationrangelist: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
278 (::windows::runtime::Interface::vtable(self).20)(
279 ::std::mem::transmute_copy(self),
280 ::std::mem::transmute(idirectedtarget),
281 ::std::mem::transmute(pbstrsourcepath),
282 ::std::mem::transmute(pbstrsourcefilename),
283 ::std::mem::transmute(pbstrsourcerangelist),
284 ::std::mem::transmute(pbstrdestinationpath),
285 ::std::mem::transmute(pbstrdestinationfilename),
286 ::std::mem::transmute(pbstrdestinationrangelist),
287 )
288 .ok()
289 }
290 #[cfg(feature = "Win32_Foundation")]
SetRestoreMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszrestoremetadata: Param0) -> ::windows::runtime::Result<()>291 pub unsafe fn SetRestoreMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszrestoremetadata: Param0) -> ::windows::runtime::Result<()> {
292 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), wszrestoremetadata.into_param().abi()).ok()
293 }
294 #[cfg(feature = "Win32_Foundation")]
GetRestoreMetadata(&self, pbstrrestoremetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>295 pub unsafe fn GetRestoreMetadata(&self, pbstrrestoremetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
296 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrrestoremetadata)).ok()
297 }
SetRestoreTarget(&self, target: VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()>298 pub unsafe fn SetRestoreTarget(&self, target: VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()> {
299 (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(target)).ok()
300 }
GetRestoreTarget(&self, ptarget: *mut VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()>301 pub unsafe fn GetRestoreTarget(&self, ptarget: *mut VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()> {
302 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(ptarget)).ok()
303 }
304 #[cfg(feature = "Win32_Foundation")]
SetPreRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszprerestorefailuremsg: Param0) -> ::windows::runtime::Result<()>305 pub unsafe fn SetPreRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszprerestorefailuremsg: Param0) -> ::windows::runtime::Result<()> {
306 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), wszprerestorefailuremsg.into_param().abi()).ok()
307 }
308 #[cfg(feature = "Win32_Foundation")]
GetPreRestoreFailureMsg(&self, pbstrprerestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>309 pub unsafe fn GetPreRestoreFailureMsg(&self, pbstrprerestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
310 (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrprerestorefailuremsg)).ok()
311 }
312 #[cfg(feature = "Win32_Foundation")]
SetPostRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpostrestorefailuremsg: Param0) -> ::windows::runtime::Result<()>313 pub unsafe fn SetPostRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpostrestorefailuremsg: Param0) -> ::windows::runtime::Result<()> {
314 (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), wszpostrestorefailuremsg.into_param().abi()).ok()
315 }
316 #[cfg(feature = "Win32_Foundation")]
GetPostRestoreFailureMsg(&self, pbstrpostrestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>317 pub unsafe fn GetPostRestoreFailureMsg(&self, pbstrpostrestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
318 (::windows::runtime::Interface::vtable(self).28)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrpostrestorefailuremsg)).ok()
319 }
320 #[cfg(feature = "Win32_Foundation")]
SetBackupStamp<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszbackupstamp: Param0) -> ::windows::runtime::Result<()>321 pub unsafe fn SetBackupStamp<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszbackupstamp: Param0) -> ::windows::runtime::Result<()> {
322 (::windows::runtime::Interface::vtable(self).29)(::std::mem::transmute_copy(self), wszbackupstamp.into_param().abi()).ok()
323 }
324 #[cfg(feature = "Win32_Foundation")]
GetBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>325 pub unsafe fn GetBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
326 (::windows::runtime::Interface::vtable(self).30)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrbackupstamp)).ok()
327 }
328 #[cfg(feature = "Win32_Foundation")]
GetPreviousBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>329 pub unsafe fn GetPreviousBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
330 (::windows::runtime::Interface::vtable(self).31)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrbackupstamp)).ok()
331 }
332 #[cfg(feature = "Win32_Foundation")]
GetBackupOptions(&self, pbstrbackupoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>333 pub unsafe fn GetBackupOptions(&self, pbstrbackupoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
334 (::windows::runtime::Interface::vtable(self).32)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrbackupoptions)).ok()
335 }
336 #[cfg(feature = "Win32_Foundation")]
GetRestoreOptions(&self, pbstrrestoreoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>337 pub unsafe fn GetRestoreOptions(&self, pbstrrestoreoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
338 (::windows::runtime::Interface::vtable(self).33)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrrestoreoptions)).ok()
339 }
GetRestoreSubcomponentCount(&self, pcrestoresubcomponent: *mut u32) -> ::windows::runtime::Result<()>340 pub unsafe fn GetRestoreSubcomponentCount(&self, pcrestoresubcomponent: *mut u32) -> ::windows::runtime::Result<()> {
341 (::windows::runtime::Interface::vtable(self).34)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcrestoresubcomponent)).ok()
342 }
343 #[cfg(feature = "Win32_Foundation")]
GetRestoreSubcomponent(&self, icomponent: u32, pbstrlogicalpath: *mut super::super::Foundation::BSTR, pbstrcomponentname: *mut super::super::Foundation::BSTR, pbrepair: *mut bool) -> ::windows::runtime::Result<()>344 pub unsafe fn GetRestoreSubcomponent(&self, icomponent: u32, pbstrlogicalpath: *mut super::super::Foundation::BSTR, pbstrcomponentname: *mut super::super::Foundation::BSTR, pbrepair: *mut bool) -> ::windows::runtime::Result<()> {
345 (::windows::runtime::Interface::vtable(self).35)(::std::mem::transmute_copy(self), ::std::mem::transmute(icomponent), ::std::mem::transmute(pbstrlogicalpath), ::std::mem::transmute(pbstrcomponentname), ::std::mem::transmute(pbrepair)).ok()
346 }
GetFileRestoreStatus(&self, pstatus: *mut VSS_FILE_RESTORE_STATUS) -> ::windows::runtime::Result<()>347 pub unsafe fn GetFileRestoreStatus(&self, pstatus: *mut VSS_FILE_RESTORE_STATUS) -> ::windows::runtime::Result<()> {
348 (::windows::runtime::Interface::vtable(self).36)(::std::mem::transmute_copy(self), ::std::mem::transmute(pstatus)).ok()
349 }
350 #[cfg(feature = "Win32_Foundation")]
AddDifferencedFilesByLastModifyTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::FILETIME>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, ftlastmodifytime: Param3) -> ::windows::runtime::Result<()>351 pub unsafe fn AddDifferencedFilesByLastModifyTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::FILETIME>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, ftlastmodifytime: Param3) -> ::windows::runtime::Result<()> {
352 (::windows::runtime::Interface::vtable(self).37)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilespec.into_param().abi(), brecursive.into_param().abi(), ftlastmodifytime.into_param().abi()).ok()
353 }
354 #[cfg(feature = "Win32_Foundation")]
AddDifferencedFilesByLastModifyLSN<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, bstrlsnstring: Param3) -> ::windows::runtime::Result<()>355 pub unsafe fn AddDifferencedFilesByLastModifyLSN<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, bstrlsnstring: Param3) -> ::windows::runtime::Result<()> {
356 (::windows::runtime::Interface::vtable(self).38)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilespec.into_param().abi(), brecursive.into_param().abi(), bstrlsnstring.into_param().abi()).ok()
357 }
GetDifferencedFilesCount(&self, pcdifferencedfiles: *mut u32) -> ::windows::runtime::Result<()>358 pub unsafe fn GetDifferencedFilesCount(&self, pcdifferencedfiles: *mut u32) -> ::windows::runtime::Result<()> {
359 (::windows::runtime::Interface::vtable(self).39)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcdifferencedfiles)).ok()
360 }
361 #[cfg(feature = "Win32_Foundation")]
GetDifferencedFile(&self, idifferencedfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilespec: *mut super::super::Foundation::BSTR, pbrecursive: *mut super::super::Foundation::BOOL, pbstrlsnstring: *mut super::super::Foundation::BSTR, pftlastmodifytime: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::Result<()>362 pub unsafe fn GetDifferencedFile(&self, idifferencedfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilespec: *mut super::super::Foundation::BSTR, pbrecursive: *mut super::super::Foundation::BOOL, pbstrlsnstring: *mut super::super::Foundation::BSTR, pftlastmodifytime: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::Result<()> {
363 (::windows::runtime::Interface::vtable(self).40)(::std::mem::transmute_copy(self), ::std::mem::transmute(idifferencedfile), ::std::mem::transmute(pbstrpath), ::std::mem::transmute(pbstrfilespec), ::std::mem::transmute(pbrecursive), ::std::mem::transmute(pbstrlsnstring), ::std::mem::transmute(pftlastmodifytime)).ok()
364 }
365 }
366 unsafe impl ::windows::runtime::Interface for IVssComponent {
367 type Vtable = IVssComponent_abi;
368 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3536268438, 49441, 17688, [182, 39, 229, 169, 61, 1, 14, 173]);
369 }
370 impl ::std::convert::From<IVssComponent> for ::windows::runtime::IUnknown {
from(value: IVssComponent) -> Self371 fn from(value: IVssComponent) -> Self {
372 unsafe { ::std::mem::transmute(value) }
373 }
374 }
375 impl ::std::convert::From<&IVssComponent> for ::windows::runtime::IUnknown {
from(value: &IVssComponent) -> Self376 fn from(value: &IVssComponent) -> Self {
377 ::std::convert::From::from(::std::clone::Clone::clone(value))
378 }
379 }
380 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssComponent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>381 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
382 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
383 }
384 }
385 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssComponent {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>386 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
387 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
388 }
389 }
390 #[repr(C)]
391 #[doc(hidden)]
392 pub struct IVssComponent_abi(
393 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
394 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
395 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
396 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
397 #[cfg(not(feature = "Win32_Foundation"))] usize,
398 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pct: *mut VSS_COMPONENT_TYPE) -> ::windows::runtime::HRESULT,
399 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
400 #[cfg(not(feature = "Win32_Foundation"))] usize,
401 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbsucceeded: *mut bool) -> ::windows::runtime::HRESULT,
402 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcmappings: *mut u32) -> ::windows::runtime::HRESULT,
403 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, imapping: u32, ppfiledesc: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
404 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszdata: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
405 #[cfg(not(feature = "Win32_Foundation"))] usize,
406 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrdata: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
407 #[cfg(not(feature = "Win32_Foundation"))] usize,
408 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilename: super::super::Foundation::PWSTR, wszranges: super::super::Foundation::PWSTR, wszmetadata: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
409 #[cfg(not(feature = "Win32_Foundation"))] usize,
410 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcpartialfiles: *mut u32) -> ::windows::runtime::HRESULT,
411 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ipartialfile: u32, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrfilename: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrrange: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrmetadata: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
412 #[cfg(not(feature = "Win32_Foundation"))] usize,
413 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbselectedforrestore: *mut bool) -> ::windows::runtime::HRESULT,
414 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbadditionalrestores: *mut bool) -> ::windows::runtime::HRESULT,
415 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcnewtarget: *mut u32) -> ::windows::runtime::HRESULT,
416 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, inewtarget: u32, ppfiledesc: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
417 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszsourcepath: super::super::Foundation::PWSTR, wszsourcefilename: super::super::Foundation::PWSTR, wszsourcerangelist: super::super::Foundation::PWSTR, wszdestinationpath: super::super::Foundation::PWSTR, wszdestinationfilename: super::super::Foundation::PWSTR, wszdestinationrangelist: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
418 #[cfg(not(feature = "Win32_Foundation"))] usize,
419 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcdirectedtarget: *mut u32) -> ::windows::runtime::HRESULT,
420 #[cfg(feature = "Win32_Foundation")]
421 pub unsafe extern "system" fn(
422 this: ::windows::runtime::RawPtr,
423 idirectedtarget: u32,
424 pbstrsourcepath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
425 pbstrsourcefilename: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
426 pbstrsourcerangelist: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
427 pbstrdestinationpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
428 pbstrdestinationfilename: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
429 pbstrdestinationrangelist: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
430 ) -> ::windows::runtime::HRESULT,
431 #[cfg(not(feature = "Win32_Foundation"))] usize,
432 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszrestoremetadata: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
433 #[cfg(not(feature = "Win32_Foundation"))] usize,
434 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrrestoremetadata: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
435 #[cfg(not(feature = "Win32_Foundation"))] usize,
436 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, target: VSS_RESTORE_TARGET) -> ::windows::runtime::HRESULT,
437 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ptarget: *mut VSS_RESTORE_TARGET) -> ::windows::runtime::HRESULT,
438 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszprerestorefailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
439 #[cfg(not(feature = "Win32_Foundation"))] usize,
440 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrprerestorefailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
441 #[cfg(not(feature = "Win32_Foundation"))] usize,
442 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpostrestorefailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
443 #[cfg(not(feature = "Win32_Foundation"))] usize,
444 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrpostrestorefailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
445 #[cfg(not(feature = "Win32_Foundation"))] usize,
446 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszbackupstamp: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
447 #[cfg(not(feature = "Win32_Foundation"))] usize,
448 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrbackupstamp: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
449 #[cfg(not(feature = "Win32_Foundation"))] usize,
450 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrbackupstamp: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
451 #[cfg(not(feature = "Win32_Foundation"))] usize,
452 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrbackupoptions: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
453 #[cfg(not(feature = "Win32_Foundation"))] usize,
454 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrrestoreoptions: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
455 #[cfg(not(feature = "Win32_Foundation"))] usize,
456 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcrestoresubcomponent: *mut u32) -> ::windows::runtime::HRESULT,
457 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, icomponent: u32, pbstrlogicalpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrcomponentname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbrepair: *mut bool) -> ::windows::runtime::HRESULT,
458 #[cfg(not(feature = "Win32_Foundation"))] usize,
459 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstatus: *mut VSS_FILE_RESTORE_STATUS) -> ::windows::runtime::HRESULT,
460 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: super::super::Foundation::BOOL, ftlastmodifytime: super::super::Foundation::FILETIME) -> ::windows::runtime::HRESULT,
461 #[cfg(not(feature = "Win32_Foundation"))] usize,
462 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: super::super::Foundation::BOOL, bstrlsnstring: ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
463 #[cfg(not(feature = "Win32_Foundation"))] usize,
464 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcdifferencedfiles: *mut u32) -> ::windows::runtime::HRESULT,
465 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, idifferencedfile: u32, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrfilespec: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbrecursive: *mut super::super::Foundation::BOOL, pbstrlsnstring: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pftlastmodifytime: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::HRESULT,
466 #[cfg(not(feature = "Win32_Foundation"))] usize,
467 );
468 #[repr(transparent)]
469 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
470 pub struct IVssComponentEx(::windows::runtime::IUnknown);
471 impl IVssComponentEx {
472 #[cfg(feature = "Win32_Foundation")]
GetLogicalPath(&self, pbstrpath: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>473 pub unsafe fn GetLogicalPath(&self, pbstrpath: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
474 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrpath)).ok()
475 }
GetComponentType(&self, pct: *mut VSS_COMPONENT_TYPE) -> ::windows::runtime::Result<()>476 pub unsafe fn GetComponentType(&self, pct: *mut VSS_COMPONENT_TYPE) -> ::windows::runtime::Result<()> {
477 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pct)).ok()
478 }
479 #[cfg(feature = "Win32_Foundation")]
GetComponentName(&self, pbstrname: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>480 pub unsafe fn GetComponentName(&self, pbstrname: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
481 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrname)).ok()
482 }
GetBackupSucceeded(&self, pbsucceeded: *mut bool) -> ::windows::runtime::Result<()>483 pub unsafe fn GetBackupSucceeded(&self, pbsucceeded: *mut bool) -> ::windows::runtime::Result<()> {
484 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbsucceeded)).ok()
485 }
GetAlternateLocationMappingCount(&self, pcmappings: *mut u32) -> ::windows::runtime::Result<()>486 pub unsafe fn GetAlternateLocationMappingCount(&self, pcmappings: *mut u32) -> ::windows::runtime::Result<()> {
487 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcmappings)).ok()
488 }
GetAlternateLocationMapping(&self, imapping: u32) -> ::windows::runtime::Result<IVssWMFiledesc>489 pub unsafe fn GetAlternateLocationMapping(&self, imapping: u32) -> ::windows::runtime::Result<IVssWMFiledesc> {
490 let mut result__: <IVssWMFiledesc as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
491 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(imapping), &mut result__).from_abi::<IVssWMFiledesc>(result__)
492 }
493 #[cfg(feature = "Win32_Foundation")]
SetBackupMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszdata: Param0) -> ::windows::runtime::Result<()>494 pub unsafe fn SetBackupMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszdata: Param0) -> ::windows::runtime::Result<()> {
495 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), wszdata.into_param().abi()).ok()
496 }
497 #[cfg(feature = "Win32_Foundation")]
GetBackupMetadata(&self, pbstrdata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>498 pub unsafe fn GetBackupMetadata(&self, pbstrdata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
499 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrdata)).ok()
500 }
501 #[cfg(feature = "Win32_Foundation")]
AddPartialFile<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilename: Param1, wszranges: Param2, wszmetadata: Param3) -> ::windows::runtime::Result<()>502 pub unsafe fn AddPartialFile<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilename: Param1, wszranges: Param2, wszmetadata: Param3) -> ::windows::runtime::Result<()> {
503 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilename.into_param().abi(), wszranges.into_param().abi(), wszmetadata.into_param().abi()).ok()
504 }
GetPartialFileCount(&self, pcpartialfiles: *mut u32) -> ::windows::runtime::Result<()>505 pub unsafe fn GetPartialFileCount(&self, pcpartialfiles: *mut u32) -> ::windows::runtime::Result<()> {
506 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcpartialfiles)).ok()
507 }
508 #[cfg(feature = "Win32_Foundation")]
GetPartialFile(&self, ipartialfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilename: *mut super::super::Foundation::BSTR, pbstrrange: *mut super::super::Foundation::BSTR, pbstrmetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>509 pub unsafe fn GetPartialFile(&self, ipartialfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilename: *mut super::super::Foundation::BSTR, pbstrrange: *mut super::super::Foundation::BSTR, pbstrmetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
510 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), ::std::mem::transmute(ipartialfile), ::std::mem::transmute(pbstrpath), ::std::mem::transmute(pbstrfilename), ::std::mem::transmute(pbstrrange), ::std::mem::transmute(pbstrmetadata)).ok()
511 }
IsSelectedForRestore(&self, pbselectedforrestore: *mut bool) -> ::windows::runtime::Result<()>512 pub unsafe fn IsSelectedForRestore(&self, pbselectedforrestore: *mut bool) -> ::windows::runtime::Result<()> {
513 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbselectedforrestore)).ok()
514 }
GetAdditionalRestores(&self, pbadditionalrestores: *mut bool) -> ::windows::runtime::Result<()>515 pub unsafe fn GetAdditionalRestores(&self, pbadditionalrestores: *mut bool) -> ::windows::runtime::Result<()> {
516 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbadditionalrestores)).ok()
517 }
GetNewTargetCount(&self, pcnewtarget: *mut u32) -> ::windows::runtime::Result<()>518 pub unsafe fn GetNewTargetCount(&self, pcnewtarget: *mut u32) -> ::windows::runtime::Result<()> {
519 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcnewtarget)).ok()
520 }
GetNewTarget(&self, inewtarget: u32) -> ::windows::runtime::Result<IVssWMFiledesc>521 pub unsafe fn GetNewTarget(&self, inewtarget: u32) -> ::windows::runtime::Result<IVssWMFiledesc> {
522 let mut result__: <IVssWMFiledesc as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
523 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), ::std::mem::transmute(inewtarget), &mut result__).from_abi::<IVssWMFiledesc>(result__)
524 }
525 #[cfg(feature = "Win32_Foundation")]
AddDirectedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, wszsourcepath: Param0, wszsourcefilename: Param1, wszsourcerangelist: Param2, wszdestinationpath: Param3, wszdestinationfilename: Param4, wszdestinationrangelist: Param5, ) -> ::windows::runtime::Result<()>526 pub unsafe fn AddDirectedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
527 &self,
528 wszsourcepath: Param0,
529 wszsourcefilename: Param1,
530 wszsourcerangelist: Param2,
531 wszdestinationpath: Param3,
532 wszdestinationfilename: Param4,
533 wszdestinationrangelist: Param5,
534 ) -> ::windows::runtime::Result<()> {
535 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), wszsourcepath.into_param().abi(), wszsourcefilename.into_param().abi(), wszsourcerangelist.into_param().abi(), wszdestinationpath.into_param().abi(), wszdestinationfilename.into_param().abi(), wszdestinationrangelist.into_param().abi()).ok()
536 }
GetDirectedTargetCount(&self, pcdirectedtarget: *mut u32) -> ::windows::runtime::Result<()>537 pub unsafe fn GetDirectedTargetCount(&self, pcdirectedtarget: *mut u32) -> ::windows::runtime::Result<()> {
538 (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcdirectedtarget)).ok()
539 }
540 #[cfg(feature = "Win32_Foundation")]
GetDirectedTarget(&self, idirectedtarget: u32, pbstrsourcepath: *mut super::super::Foundation::BSTR, pbstrsourcefilename: *mut super::super::Foundation::BSTR, pbstrsourcerangelist: *mut super::super::Foundation::BSTR, pbstrdestinationpath: *mut super::super::Foundation::BSTR, pbstrdestinationfilename: *mut super::super::Foundation::BSTR, pbstrdestinationrangelist: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>541 pub unsafe fn GetDirectedTarget(&self, idirectedtarget: u32, pbstrsourcepath: *mut super::super::Foundation::BSTR, pbstrsourcefilename: *mut super::super::Foundation::BSTR, pbstrsourcerangelist: *mut super::super::Foundation::BSTR, pbstrdestinationpath: *mut super::super::Foundation::BSTR, pbstrdestinationfilename: *mut super::super::Foundation::BSTR, pbstrdestinationrangelist: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
542 (::windows::runtime::Interface::vtable(self).20)(
543 ::std::mem::transmute_copy(self),
544 ::std::mem::transmute(idirectedtarget),
545 ::std::mem::transmute(pbstrsourcepath),
546 ::std::mem::transmute(pbstrsourcefilename),
547 ::std::mem::transmute(pbstrsourcerangelist),
548 ::std::mem::transmute(pbstrdestinationpath),
549 ::std::mem::transmute(pbstrdestinationfilename),
550 ::std::mem::transmute(pbstrdestinationrangelist),
551 )
552 .ok()
553 }
554 #[cfg(feature = "Win32_Foundation")]
SetRestoreMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszrestoremetadata: Param0) -> ::windows::runtime::Result<()>555 pub unsafe fn SetRestoreMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszrestoremetadata: Param0) -> ::windows::runtime::Result<()> {
556 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), wszrestoremetadata.into_param().abi()).ok()
557 }
558 #[cfg(feature = "Win32_Foundation")]
GetRestoreMetadata(&self, pbstrrestoremetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>559 pub unsafe fn GetRestoreMetadata(&self, pbstrrestoremetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
560 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrrestoremetadata)).ok()
561 }
SetRestoreTarget(&self, target: VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()>562 pub unsafe fn SetRestoreTarget(&self, target: VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()> {
563 (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(target)).ok()
564 }
GetRestoreTarget(&self, ptarget: *mut VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()>565 pub unsafe fn GetRestoreTarget(&self, ptarget: *mut VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()> {
566 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(ptarget)).ok()
567 }
568 #[cfg(feature = "Win32_Foundation")]
SetPreRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszprerestorefailuremsg: Param0) -> ::windows::runtime::Result<()>569 pub unsafe fn SetPreRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszprerestorefailuremsg: Param0) -> ::windows::runtime::Result<()> {
570 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), wszprerestorefailuremsg.into_param().abi()).ok()
571 }
572 #[cfg(feature = "Win32_Foundation")]
GetPreRestoreFailureMsg(&self, pbstrprerestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>573 pub unsafe fn GetPreRestoreFailureMsg(&self, pbstrprerestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
574 (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrprerestorefailuremsg)).ok()
575 }
576 #[cfg(feature = "Win32_Foundation")]
SetPostRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpostrestorefailuremsg: Param0) -> ::windows::runtime::Result<()>577 pub unsafe fn SetPostRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpostrestorefailuremsg: Param0) -> ::windows::runtime::Result<()> {
578 (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), wszpostrestorefailuremsg.into_param().abi()).ok()
579 }
580 #[cfg(feature = "Win32_Foundation")]
GetPostRestoreFailureMsg(&self, pbstrpostrestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>581 pub unsafe fn GetPostRestoreFailureMsg(&self, pbstrpostrestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
582 (::windows::runtime::Interface::vtable(self).28)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrpostrestorefailuremsg)).ok()
583 }
584 #[cfg(feature = "Win32_Foundation")]
SetBackupStamp<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszbackupstamp: Param0) -> ::windows::runtime::Result<()>585 pub unsafe fn SetBackupStamp<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszbackupstamp: Param0) -> ::windows::runtime::Result<()> {
586 (::windows::runtime::Interface::vtable(self).29)(::std::mem::transmute_copy(self), wszbackupstamp.into_param().abi()).ok()
587 }
588 #[cfg(feature = "Win32_Foundation")]
GetBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>589 pub unsafe fn GetBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
590 (::windows::runtime::Interface::vtable(self).30)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrbackupstamp)).ok()
591 }
592 #[cfg(feature = "Win32_Foundation")]
GetPreviousBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>593 pub unsafe fn GetPreviousBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
594 (::windows::runtime::Interface::vtable(self).31)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrbackupstamp)).ok()
595 }
596 #[cfg(feature = "Win32_Foundation")]
GetBackupOptions(&self, pbstrbackupoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>597 pub unsafe fn GetBackupOptions(&self, pbstrbackupoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
598 (::windows::runtime::Interface::vtable(self).32)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrbackupoptions)).ok()
599 }
600 #[cfg(feature = "Win32_Foundation")]
GetRestoreOptions(&self, pbstrrestoreoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>601 pub unsafe fn GetRestoreOptions(&self, pbstrrestoreoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
602 (::windows::runtime::Interface::vtable(self).33)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrrestoreoptions)).ok()
603 }
GetRestoreSubcomponentCount(&self, pcrestoresubcomponent: *mut u32) -> ::windows::runtime::Result<()>604 pub unsafe fn GetRestoreSubcomponentCount(&self, pcrestoresubcomponent: *mut u32) -> ::windows::runtime::Result<()> {
605 (::windows::runtime::Interface::vtable(self).34)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcrestoresubcomponent)).ok()
606 }
607 #[cfg(feature = "Win32_Foundation")]
GetRestoreSubcomponent(&self, icomponent: u32, pbstrlogicalpath: *mut super::super::Foundation::BSTR, pbstrcomponentname: *mut super::super::Foundation::BSTR, pbrepair: *mut bool) -> ::windows::runtime::Result<()>608 pub unsafe fn GetRestoreSubcomponent(&self, icomponent: u32, pbstrlogicalpath: *mut super::super::Foundation::BSTR, pbstrcomponentname: *mut super::super::Foundation::BSTR, pbrepair: *mut bool) -> ::windows::runtime::Result<()> {
609 (::windows::runtime::Interface::vtable(self).35)(::std::mem::transmute_copy(self), ::std::mem::transmute(icomponent), ::std::mem::transmute(pbstrlogicalpath), ::std::mem::transmute(pbstrcomponentname), ::std::mem::transmute(pbrepair)).ok()
610 }
GetFileRestoreStatus(&self, pstatus: *mut VSS_FILE_RESTORE_STATUS) -> ::windows::runtime::Result<()>611 pub unsafe fn GetFileRestoreStatus(&self, pstatus: *mut VSS_FILE_RESTORE_STATUS) -> ::windows::runtime::Result<()> {
612 (::windows::runtime::Interface::vtable(self).36)(::std::mem::transmute_copy(self), ::std::mem::transmute(pstatus)).ok()
613 }
614 #[cfg(feature = "Win32_Foundation")]
AddDifferencedFilesByLastModifyTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::FILETIME>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, ftlastmodifytime: Param3) -> ::windows::runtime::Result<()>615 pub unsafe fn AddDifferencedFilesByLastModifyTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::FILETIME>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, ftlastmodifytime: Param3) -> ::windows::runtime::Result<()> {
616 (::windows::runtime::Interface::vtable(self).37)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilespec.into_param().abi(), brecursive.into_param().abi(), ftlastmodifytime.into_param().abi()).ok()
617 }
618 #[cfg(feature = "Win32_Foundation")]
AddDifferencedFilesByLastModifyLSN<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, bstrlsnstring: Param3) -> ::windows::runtime::Result<()>619 pub unsafe fn AddDifferencedFilesByLastModifyLSN<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, bstrlsnstring: Param3) -> ::windows::runtime::Result<()> {
620 (::windows::runtime::Interface::vtable(self).38)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilespec.into_param().abi(), brecursive.into_param().abi(), bstrlsnstring.into_param().abi()).ok()
621 }
GetDifferencedFilesCount(&self, pcdifferencedfiles: *mut u32) -> ::windows::runtime::Result<()>622 pub unsafe fn GetDifferencedFilesCount(&self, pcdifferencedfiles: *mut u32) -> ::windows::runtime::Result<()> {
623 (::windows::runtime::Interface::vtable(self).39)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcdifferencedfiles)).ok()
624 }
625 #[cfg(feature = "Win32_Foundation")]
GetDifferencedFile(&self, idifferencedfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilespec: *mut super::super::Foundation::BSTR, pbrecursive: *mut super::super::Foundation::BOOL, pbstrlsnstring: *mut super::super::Foundation::BSTR, pftlastmodifytime: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::Result<()>626 pub unsafe fn GetDifferencedFile(&self, idifferencedfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilespec: *mut super::super::Foundation::BSTR, pbrecursive: *mut super::super::Foundation::BOOL, pbstrlsnstring: *mut super::super::Foundation::BSTR, pftlastmodifytime: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::Result<()> {
627 (::windows::runtime::Interface::vtable(self).40)(::std::mem::transmute_copy(self), ::std::mem::transmute(idifferencedfile), ::std::mem::transmute(pbstrpath), ::std::mem::transmute(pbstrfilespec), ::std::mem::transmute(pbrecursive), ::std::mem::transmute(pbstrlsnstring), ::std::mem::transmute(pftlastmodifytime)).ok()
628 }
629 #[cfg(feature = "Win32_Foundation")]
SetPrepareForBackupFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszfailuremsg: Param0) -> ::windows::runtime::Result<()>630 pub unsafe fn SetPrepareForBackupFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszfailuremsg: Param0) -> ::windows::runtime::Result<()> {
631 (::windows::runtime::Interface::vtable(self).41)(::std::mem::transmute_copy(self), wszfailuremsg.into_param().abi()).ok()
632 }
633 #[cfg(feature = "Win32_Foundation")]
SetPostSnapshotFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszfailuremsg: Param0) -> ::windows::runtime::Result<()>634 pub unsafe fn SetPostSnapshotFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszfailuremsg: Param0) -> ::windows::runtime::Result<()> {
635 (::windows::runtime::Interface::vtable(self).42)(::std::mem::transmute_copy(self), wszfailuremsg.into_param().abi()).ok()
636 }
637 #[cfg(feature = "Win32_Foundation")]
GetPrepareForBackupFailureMsg(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>638 pub unsafe fn GetPrepareForBackupFailureMsg(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
639 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
640 (::windows::runtime::Interface::vtable(self).43)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
641 }
642 #[cfg(feature = "Win32_Foundation")]
GetPostSnapshotFailureMsg(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>643 pub unsafe fn GetPostSnapshotFailureMsg(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
644 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
645 (::windows::runtime::Interface::vtable(self).44)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
646 }
GetAuthoritativeRestore(&self) -> ::windows::runtime::Result<bool>647 pub unsafe fn GetAuthoritativeRestore(&self) -> ::windows::runtime::Result<bool> {
648 let mut result__: <bool as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
649 (::windows::runtime::Interface::vtable(self).45)(::std::mem::transmute_copy(self), &mut result__).from_abi::<bool>(result__)
650 }
651 #[cfg(feature = "Win32_Foundation")]
GetRollForward(&self, prolltype: *mut VSS_ROLLFORWARD_TYPE, pbstrpoint: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>652 pub unsafe fn GetRollForward(&self, prolltype: *mut VSS_ROLLFORWARD_TYPE, pbstrpoint: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
653 (::windows::runtime::Interface::vtable(self).46)(::std::mem::transmute_copy(self), ::std::mem::transmute(prolltype), ::std::mem::transmute(pbstrpoint)).ok()
654 }
655 #[cfg(feature = "Win32_Foundation")]
GetRestoreName(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>656 pub unsafe fn GetRestoreName(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
657 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
658 (::windows::runtime::Interface::vtable(self).47)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
659 }
660 }
661 unsafe impl ::windows::runtime::Interface for IVssComponentEx {
662 type Vtable = IVssComponentEx_abi;
663 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(359435102, 61745, 19415, [156, 151, 209, 146, 59, 231, 225, 250]);
664 }
665 impl ::std::convert::From<IVssComponentEx> for ::windows::runtime::IUnknown {
from(value: IVssComponentEx) -> Self666 fn from(value: IVssComponentEx) -> Self {
667 unsafe { ::std::mem::transmute(value) }
668 }
669 }
670 impl ::std::convert::From<&IVssComponentEx> for ::windows::runtime::IUnknown {
from(value: &IVssComponentEx) -> Self671 fn from(value: &IVssComponentEx) -> Self {
672 ::std::convert::From::from(::std::clone::Clone::clone(value))
673 }
674 }
675 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssComponentEx {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>676 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
677 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
678 }
679 }
680 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssComponentEx {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>681 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
682 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
683 }
684 }
685 impl ::std::convert::From<IVssComponentEx> for IVssComponent {
from(value: IVssComponentEx) -> Self686 fn from(value: IVssComponentEx) -> Self {
687 unsafe { ::std::mem::transmute(value) }
688 }
689 }
690 impl ::std::convert::From<&IVssComponentEx> for IVssComponent {
from(value: &IVssComponentEx) -> Self691 fn from(value: &IVssComponentEx) -> Self {
692 ::std::convert::From::from(::std::clone::Clone::clone(value))
693 }
694 }
695 impl<'a> ::windows::runtime::IntoParam<'a, IVssComponent> for IVssComponentEx {
into_param(self) -> ::windows::runtime::Param<'a, IVssComponent>696 fn into_param(self) -> ::windows::runtime::Param<'a, IVssComponent> {
697 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssComponent>::into(self))
698 }
699 }
700 impl<'a> ::windows::runtime::IntoParam<'a, IVssComponent> for &IVssComponentEx {
into_param(self) -> ::windows::runtime::Param<'a, IVssComponent>701 fn into_param(self) -> ::windows::runtime::Param<'a, IVssComponent> {
702 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssComponent>::into(::std::clone::Clone::clone(self)))
703 }
704 }
705 #[repr(C)]
706 #[doc(hidden)]
707 pub struct IVssComponentEx_abi(
708 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
709 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
710 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
711 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
712 #[cfg(not(feature = "Win32_Foundation"))] usize,
713 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pct: *mut VSS_COMPONENT_TYPE) -> ::windows::runtime::HRESULT,
714 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
715 #[cfg(not(feature = "Win32_Foundation"))] usize,
716 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbsucceeded: *mut bool) -> ::windows::runtime::HRESULT,
717 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcmappings: *mut u32) -> ::windows::runtime::HRESULT,
718 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, imapping: u32, ppfiledesc: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
719 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszdata: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
720 #[cfg(not(feature = "Win32_Foundation"))] usize,
721 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrdata: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
722 #[cfg(not(feature = "Win32_Foundation"))] usize,
723 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilename: super::super::Foundation::PWSTR, wszranges: super::super::Foundation::PWSTR, wszmetadata: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
724 #[cfg(not(feature = "Win32_Foundation"))] usize,
725 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcpartialfiles: *mut u32) -> ::windows::runtime::HRESULT,
726 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ipartialfile: u32, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrfilename: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrrange: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrmetadata: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
727 #[cfg(not(feature = "Win32_Foundation"))] usize,
728 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbselectedforrestore: *mut bool) -> ::windows::runtime::HRESULT,
729 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbadditionalrestores: *mut bool) -> ::windows::runtime::HRESULT,
730 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcnewtarget: *mut u32) -> ::windows::runtime::HRESULT,
731 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, inewtarget: u32, ppfiledesc: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
732 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszsourcepath: super::super::Foundation::PWSTR, wszsourcefilename: super::super::Foundation::PWSTR, wszsourcerangelist: super::super::Foundation::PWSTR, wszdestinationpath: super::super::Foundation::PWSTR, wszdestinationfilename: super::super::Foundation::PWSTR, wszdestinationrangelist: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
733 #[cfg(not(feature = "Win32_Foundation"))] usize,
734 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcdirectedtarget: *mut u32) -> ::windows::runtime::HRESULT,
735 #[cfg(feature = "Win32_Foundation")]
736 pub unsafe extern "system" fn(
737 this: ::windows::runtime::RawPtr,
738 idirectedtarget: u32,
739 pbstrsourcepath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
740 pbstrsourcefilename: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
741 pbstrsourcerangelist: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
742 pbstrdestinationpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
743 pbstrdestinationfilename: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
744 pbstrdestinationrangelist: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
745 ) -> ::windows::runtime::HRESULT,
746 #[cfg(not(feature = "Win32_Foundation"))] usize,
747 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszrestoremetadata: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
748 #[cfg(not(feature = "Win32_Foundation"))] usize,
749 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrrestoremetadata: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
750 #[cfg(not(feature = "Win32_Foundation"))] usize,
751 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, target: VSS_RESTORE_TARGET) -> ::windows::runtime::HRESULT,
752 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ptarget: *mut VSS_RESTORE_TARGET) -> ::windows::runtime::HRESULT,
753 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszprerestorefailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
754 #[cfg(not(feature = "Win32_Foundation"))] usize,
755 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrprerestorefailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
756 #[cfg(not(feature = "Win32_Foundation"))] usize,
757 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpostrestorefailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
758 #[cfg(not(feature = "Win32_Foundation"))] usize,
759 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrpostrestorefailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
760 #[cfg(not(feature = "Win32_Foundation"))] usize,
761 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszbackupstamp: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
762 #[cfg(not(feature = "Win32_Foundation"))] usize,
763 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrbackupstamp: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
764 #[cfg(not(feature = "Win32_Foundation"))] usize,
765 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrbackupstamp: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
766 #[cfg(not(feature = "Win32_Foundation"))] usize,
767 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrbackupoptions: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
768 #[cfg(not(feature = "Win32_Foundation"))] usize,
769 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrrestoreoptions: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
770 #[cfg(not(feature = "Win32_Foundation"))] usize,
771 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcrestoresubcomponent: *mut u32) -> ::windows::runtime::HRESULT,
772 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, icomponent: u32, pbstrlogicalpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrcomponentname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbrepair: *mut bool) -> ::windows::runtime::HRESULT,
773 #[cfg(not(feature = "Win32_Foundation"))] usize,
774 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstatus: *mut VSS_FILE_RESTORE_STATUS) -> ::windows::runtime::HRESULT,
775 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: super::super::Foundation::BOOL, ftlastmodifytime: super::super::Foundation::FILETIME) -> ::windows::runtime::HRESULT,
776 #[cfg(not(feature = "Win32_Foundation"))] usize,
777 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: super::super::Foundation::BOOL, bstrlsnstring: ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
778 #[cfg(not(feature = "Win32_Foundation"))] usize,
779 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcdifferencedfiles: *mut u32) -> ::windows::runtime::HRESULT,
780 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, idifferencedfile: u32, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrfilespec: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbrecursive: *mut super::super::Foundation::BOOL, pbstrlsnstring: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pftlastmodifytime: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::HRESULT,
781 #[cfg(not(feature = "Win32_Foundation"))] usize,
782 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszfailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
783 #[cfg(not(feature = "Win32_Foundation"))] usize,
784 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszfailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
785 #[cfg(not(feature = "Win32_Foundation"))] usize,
786 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrfailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
787 #[cfg(not(feature = "Win32_Foundation"))] usize,
788 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrfailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
789 #[cfg(not(feature = "Win32_Foundation"))] usize,
790 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbauth: *mut bool) -> ::windows::runtime::HRESULT,
791 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prolltype: *mut VSS_ROLLFORWARD_TYPE, pbstrpoint: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
792 #[cfg(not(feature = "Win32_Foundation"))] usize,
793 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
794 #[cfg(not(feature = "Win32_Foundation"))] usize,
795 );
796 #[repr(transparent)]
797 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
798 pub struct IVssComponentEx2(::windows::runtime::IUnknown);
799 impl IVssComponentEx2 {
800 #[cfg(feature = "Win32_Foundation")]
GetLogicalPath(&self, pbstrpath: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>801 pub unsafe fn GetLogicalPath(&self, pbstrpath: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
802 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrpath)).ok()
803 }
GetComponentType(&self, pct: *mut VSS_COMPONENT_TYPE) -> ::windows::runtime::Result<()>804 pub unsafe fn GetComponentType(&self, pct: *mut VSS_COMPONENT_TYPE) -> ::windows::runtime::Result<()> {
805 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pct)).ok()
806 }
807 #[cfg(feature = "Win32_Foundation")]
GetComponentName(&self, pbstrname: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>808 pub unsafe fn GetComponentName(&self, pbstrname: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
809 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrname)).ok()
810 }
GetBackupSucceeded(&self, pbsucceeded: *mut bool) -> ::windows::runtime::Result<()>811 pub unsafe fn GetBackupSucceeded(&self, pbsucceeded: *mut bool) -> ::windows::runtime::Result<()> {
812 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbsucceeded)).ok()
813 }
GetAlternateLocationMappingCount(&self, pcmappings: *mut u32) -> ::windows::runtime::Result<()>814 pub unsafe fn GetAlternateLocationMappingCount(&self, pcmappings: *mut u32) -> ::windows::runtime::Result<()> {
815 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcmappings)).ok()
816 }
GetAlternateLocationMapping(&self, imapping: u32) -> ::windows::runtime::Result<IVssWMFiledesc>817 pub unsafe fn GetAlternateLocationMapping(&self, imapping: u32) -> ::windows::runtime::Result<IVssWMFiledesc> {
818 let mut result__: <IVssWMFiledesc as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
819 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(imapping), &mut result__).from_abi::<IVssWMFiledesc>(result__)
820 }
821 #[cfg(feature = "Win32_Foundation")]
SetBackupMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszdata: Param0) -> ::windows::runtime::Result<()>822 pub unsafe fn SetBackupMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszdata: Param0) -> ::windows::runtime::Result<()> {
823 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), wszdata.into_param().abi()).ok()
824 }
825 #[cfg(feature = "Win32_Foundation")]
GetBackupMetadata(&self, pbstrdata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>826 pub unsafe fn GetBackupMetadata(&self, pbstrdata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
827 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrdata)).ok()
828 }
829 #[cfg(feature = "Win32_Foundation")]
AddPartialFile<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilename: Param1, wszranges: Param2, wszmetadata: Param3) -> ::windows::runtime::Result<()>830 pub unsafe fn AddPartialFile<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilename: Param1, wszranges: Param2, wszmetadata: Param3) -> ::windows::runtime::Result<()> {
831 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilename.into_param().abi(), wszranges.into_param().abi(), wszmetadata.into_param().abi()).ok()
832 }
GetPartialFileCount(&self, pcpartialfiles: *mut u32) -> ::windows::runtime::Result<()>833 pub unsafe fn GetPartialFileCount(&self, pcpartialfiles: *mut u32) -> ::windows::runtime::Result<()> {
834 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcpartialfiles)).ok()
835 }
836 #[cfg(feature = "Win32_Foundation")]
GetPartialFile(&self, ipartialfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilename: *mut super::super::Foundation::BSTR, pbstrrange: *mut super::super::Foundation::BSTR, pbstrmetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>837 pub unsafe fn GetPartialFile(&self, ipartialfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilename: *mut super::super::Foundation::BSTR, pbstrrange: *mut super::super::Foundation::BSTR, pbstrmetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
838 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), ::std::mem::transmute(ipartialfile), ::std::mem::transmute(pbstrpath), ::std::mem::transmute(pbstrfilename), ::std::mem::transmute(pbstrrange), ::std::mem::transmute(pbstrmetadata)).ok()
839 }
IsSelectedForRestore(&self, pbselectedforrestore: *mut bool) -> ::windows::runtime::Result<()>840 pub unsafe fn IsSelectedForRestore(&self, pbselectedforrestore: *mut bool) -> ::windows::runtime::Result<()> {
841 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbselectedforrestore)).ok()
842 }
GetAdditionalRestores(&self, pbadditionalrestores: *mut bool) -> ::windows::runtime::Result<()>843 pub unsafe fn GetAdditionalRestores(&self, pbadditionalrestores: *mut bool) -> ::windows::runtime::Result<()> {
844 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbadditionalrestores)).ok()
845 }
GetNewTargetCount(&self, pcnewtarget: *mut u32) -> ::windows::runtime::Result<()>846 pub unsafe fn GetNewTargetCount(&self, pcnewtarget: *mut u32) -> ::windows::runtime::Result<()> {
847 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcnewtarget)).ok()
848 }
GetNewTarget(&self, inewtarget: u32) -> ::windows::runtime::Result<IVssWMFiledesc>849 pub unsafe fn GetNewTarget(&self, inewtarget: u32) -> ::windows::runtime::Result<IVssWMFiledesc> {
850 let mut result__: <IVssWMFiledesc as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
851 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), ::std::mem::transmute(inewtarget), &mut result__).from_abi::<IVssWMFiledesc>(result__)
852 }
853 #[cfg(feature = "Win32_Foundation")]
AddDirectedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, wszsourcepath: Param0, wszsourcefilename: Param1, wszsourcerangelist: Param2, wszdestinationpath: Param3, wszdestinationfilename: Param4, wszdestinationrangelist: Param5, ) -> ::windows::runtime::Result<()>854 pub unsafe fn AddDirectedTarget<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
855 &self,
856 wszsourcepath: Param0,
857 wszsourcefilename: Param1,
858 wszsourcerangelist: Param2,
859 wszdestinationpath: Param3,
860 wszdestinationfilename: Param4,
861 wszdestinationrangelist: Param5,
862 ) -> ::windows::runtime::Result<()> {
863 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), wszsourcepath.into_param().abi(), wszsourcefilename.into_param().abi(), wszsourcerangelist.into_param().abi(), wszdestinationpath.into_param().abi(), wszdestinationfilename.into_param().abi(), wszdestinationrangelist.into_param().abi()).ok()
864 }
GetDirectedTargetCount(&self, pcdirectedtarget: *mut u32) -> ::windows::runtime::Result<()>865 pub unsafe fn GetDirectedTargetCount(&self, pcdirectedtarget: *mut u32) -> ::windows::runtime::Result<()> {
866 (::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcdirectedtarget)).ok()
867 }
868 #[cfg(feature = "Win32_Foundation")]
GetDirectedTarget(&self, idirectedtarget: u32, pbstrsourcepath: *mut super::super::Foundation::BSTR, pbstrsourcefilename: *mut super::super::Foundation::BSTR, pbstrsourcerangelist: *mut super::super::Foundation::BSTR, pbstrdestinationpath: *mut super::super::Foundation::BSTR, pbstrdestinationfilename: *mut super::super::Foundation::BSTR, pbstrdestinationrangelist: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>869 pub unsafe fn GetDirectedTarget(&self, idirectedtarget: u32, pbstrsourcepath: *mut super::super::Foundation::BSTR, pbstrsourcefilename: *mut super::super::Foundation::BSTR, pbstrsourcerangelist: *mut super::super::Foundation::BSTR, pbstrdestinationpath: *mut super::super::Foundation::BSTR, pbstrdestinationfilename: *mut super::super::Foundation::BSTR, pbstrdestinationrangelist: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
870 (::windows::runtime::Interface::vtable(self).20)(
871 ::std::mem::transmute_copy(self),
872 ::std::mem::transmute(idirectedtarget),
873 ::std::mem::transmute(pbstrsourcepath),
874 ::std::mem::transmute(pbstrsourcefilename),
875 ::std::mem::transmute(pbstrsourcerangelist),
876 ::std::mem::transmute(pbstrdestinationpath),
877 ::std::mem::transmute(pbstrdestinationfilename),
878 ::std::mem::transmute(pbstrdestinationrangelist),
879 )
880 .ok()
881 }
882 #[cfg(feature = "Win32_Foundation")]
SetRestoreMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszrestoremetadata: Param0) -> ::windows::runtime::Result<()>883 pub unsafe fn SetRestoreMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszrestoremetadata: Param0) -> ::windows::runtime::Result<()> {
884 (::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self), wszrestoremetadata.into_param().abi()).ok()
885 }
886 #[cfg(feature = "Win32_Foundation")]
GetRestoreMetadata(&self, pbstrrestoremetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>887 pub unsafe fn GetRestoreMetadata(&self, pbstrrestoremetadata: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
888 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrrestoremetadata)).ok()
889 }
SetRestoreTarget(&self, target: VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()>890 pub unsafe fn SetRestoreTarget(&self, target: VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()> {
891 (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), ::std::mem::transmute(target)).ok()
892 }
GetRestoreTarget(&self, ptarget: *mut VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()>893 pub unsafe fn GetRestoreTarget(&self, ptarget: *mut VSS_RESTORE_TARGET) -> ::windows::runtime::Result<()> {
894 (::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self), ::std::mem::transmute(ptarget)).ok()
895 }
896 #[cfg(feature = "Win32_Foundation")]
SetPreRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszprerestorefailuremsg: Param0) -> ::windows::runtime::Result<()>897 pub unsafe fn SetPreRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszprerestorefailuremsg: Param0) -> ::windows::runtime::Result<()> {
898 (::windows::runtime::Interface::vtable(self).25)(::std::mem::transmute_copy(self), wszprerestorefailuremsg.into_param().abi()).ok()
899 }
900 #[cfg(feature = "Win32_Foundation")]
GetPreRestoreFailureMsg(&self, pbstrprerestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>901 pub unsafe fn GetPreRestoreFailureMsg(&self, pbstrprerestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
902 (::windows::runtime::Interface::vtable(self).26)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrprerestorefailuremsg)).ok()
903 }
904 #[cfg(feature = "Win32_Foundation")]
SetPostRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpostrestorefailuremsg: Param0) -> ::windows::runtime::Result<()>905 pub unsafe fn SetPostRestoreFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpostrestorefailuremsg: Param0) -> ::windows::runtime::Result<()> {
906 (::windows::runtime::Interface::vtable(self).27)(::std::mem::transmute_copy(self), wszpostrestorefailuremsg.into_param().abi()).ok()
907 }
908 #[cfg(feature = "Win32_Foundation")]
GetPostRestoreFailureMsg(&self, pbstrpostrestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>909 pub unsafe fn GetPostRestoreFailureMsg(&self, pbstrpostrestorefailuremsg: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
910 (::windows::runtime::Interface::vtable(self).28)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrpostrestorefailuremsg)).ok()
911 }
912 #[cfg(feature = "Win32_Foundation")]
SetBackupStamp<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszbackupstamp: Param0) -> ::windows::runtime::Result<()>913 pub unsafe fn SetBackupStamp<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszbackupstamp: Param0) -> ::windows::runtime::Result<()> {
914 (::windows::runtime::Interface::vtable(self).29)(::std::mem::transmute_copy(self), wszbackupstamp.into_param().abi()).ok()
915 }
916 #[cfg(feature = "Win32_Foundation")]
GetBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>917 pub unsafe fn GetBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
918 (::windows::runtime::Interface::vtable(self).30)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrbackupstamp)).ok()
919 }
920 #[cfg(feature = "Win32_Foundation")]
GetPreviousBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>921 pub unsafe fn GetPreviousBackupStamp(&self, pbstrbackupstamp: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
922 (::windows::runtime::Interface::vtable(self).31)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrbackupstamp)).ok()
923 }
924 #[cfg(feature = "Win32_Foundation")]
GetBackupOptions(&self, pbstrbackupoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>925 pub unsafe fn GetBackupOptions(&self, pbstrbackupoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
926 (::windows::runtime::Interface::vtable(self).32)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrbackupoptions)).ok()
927 }
928 #[cfg(feature = "Win32_Foundation")]
GetRestoreOptions(&self, pbstrrestoreoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>929 pub unsafe fn GetRestoreOptions(&self, pbstrrestoreoptions: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
930 (::windows::runtime::Interface::vtable(self).33)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrrestoreoptions)).ok()
931 }
GetRestoreSubcomponentCount(&self, pcrestoresubcomponent: *mut u32) -> ::windows::runtime::Result<()>932 pub unsafe fn GetRestoreSubcomponentCount(&self, pcrestoresubcomponent: *mut u32) -> ::windows::runtime::Result<()> {
933 (::windows::runtime::Interface::vtable(self).34)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcrestoresubcomponent)).ok()
934 }
935 #[cfg(feature = "Win32_Foundation")]
GetRestoreSubcomponent(&self, icomponent: u32, pbstrlogicalpath: *mut super::super::Foundation::BSTR, pbstrcomponentname: *mut super::super::Foundation::BSTR, pbrepair: *mut bool) -> ::windows::runtime::Result<()>936 pub unsafe fn GetRestoreSubcomponent(&self, icomponent: u32, pbstrlogicalpath: *mut super::super::Foundation::BSTR, pbstrcomponentname: *mut super::super::Foundation::BSTR, pbrepair: *mut bool) -> ::windows::runtime::Result<()> {
937 (::windows::runtime::Interface::vtable(self).35)(::std::mem::transmute_copy(self), ::std::mem::transmute(icomponent), ::std::mem::transmute(pbstrlogicalpath), ::std::mem::transmute(pbstrcomponentname), ::std::mem::transmute(pbrepair)).ok()
938 }
GetFileRestoreStatus(&self, pstatus: *mut VSS_FILE_RESTORE_STATUS) -> ::windows::runtime::Result<()>939 pub unsafe fn GetFileRestoreStatus(&self, pstatus: *mut VSS_FILE_RESTORE_STATUS) -> ::windows::runtime::Result<()> {
940 (::windows::runtime::Interface::vtable(self).36)(::std::mem::transmute_copy(self), ::std::mem::transmute(pstatus)).ok()
941 }
942 #[cfg(feature = "Win32_Foundation")]
AddDifferencedFilesByLastModifyTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::FILETIME>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, ftlastmodifytime: Param3) -> ::windows::runtime::Result<()>943 pub unsafe fn AddDifferencedFilesByLastModifyTime<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::FILETIME>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, ftlastmodifytime: Param3) -> ::windows::runtime::Result<()> {
944 (::windows::runtime::Interface::vtable(self).37)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilespec.into_param().abi(), brecursive.into_param().abi(), ftlastmodifytime.into_param().abi()).ok()
945 }
946 #[cfg(feature = "Win32_Foundation")]
AddDifferencedFilesByLastModifyLSN<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, bstrlsnstring: Param3) -> ::windows::runtime::Result<()>947 pub unsafe fn AddDifferencedFilesByLastModifyLSN<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: Param2, bstrlsnstring: Param3) -> ::windows::runtime::Result<()> {
948 (::windows::runtime::Interface::vtable(self).38)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilespec.into_param().abi(), brecursive.into_param().abi(), bstrlsnstring.into_param().abi()).ok()
949 }
GetDifferencedFilesCount(&self, pcdifferencedfiles: *mut u32) -> ::windows::runtime::Result<()>950 pub unsafe fn GetDifferencedFilesCount(&self, pcdifferencedfiles: *mut u32) -> ::windows::runtime::Result<()> {
951 (::windows::runtime::Interface::vtable(self).39)(::std::mem::transmute_copy(self), ::std::mem::transmute(pcdifferencedfiles)).ok()
952 }
953 #[cfg(feature = "Win32_Foundation")]
GetDifferencedFile(&self, idifferencedfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilespec: *mut super::super::Foundation::BSTR, pbrecursive: *mut super::super::Foundation::BOOL, pbstrlsnstring: *mut super::super::Foundation::BSTR, pftlastmodifytime: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::Result<()>954 pub unsafe fn GetDifferencedFile(&self, idifferencedfile: u32, pbstrpath: *mut super::super::Foundation::BSTR, pbstrfilespec: *mut super::super::Foundation::BSTR, pbrecursive: *mut super::super::Foundation::BOOL, pbstrlsnstring: *mut super::super::Foundation::BSTR, pftlastmodifytime: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::Result<()> {
955 (::windows::runtime::Interface::vtable(self).40)(::std::mem::transmute_copy(self), ::std::mem::transmute(idifferencedfile), ::std::mem::transmute(pbstrpath), ::std::mem::transmute(pbstrfilespec), ::std::mem::transmute(pbrecursive), ::std::mem::transmute(pbstrlsnstring), ::std::mem::transmute(pftlastmodifytime)).ok()
956 }
957 #[cfg(feature = "Win32_Foundation")]
SetPrepareForBackupFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszfailuremsg: Param0) -> ::windows::runtime::Result<()>958 pub unsafe fn SetPrepareForBackupFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszfailuremsg: Param0) -> ::windows::runtime::Result<()> {
959 (::windows::runtime::Interface::vtable(self).41)(::std::mem::transmute_copy(self), wszfailuremsg.into_param().abi()).ok()
960 }
961 #[cfg(feature = "Win32_Foundation")]
SetPostSnapshotFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszfailuremsg: Param0) -> ::windows::runtime::Result<()>962 pub unsafe fn SetPostSnapshotFailureMsg<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszfailuremsg: Param0) -> ::windows::runtime::Result<()> {
963 (::windows::runtime::Interface::vtable(self).42)(::std::mem::transmute_copy(self), wszfailuremsg.into_param().abi()).ok()
964 }
965 #[cfg(feature = "Win32_Foundation")]
GetPrepareForBackupFailureMsg(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>966 pub unsafe fn GetPrepareForBackupFailureMsg(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
967 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
968 (::windows::runtime::Interface::vtable(self).43)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
969 }
970 #[cfg(feature = "Win32_Foundation")]
GetPostSnapshotFailureMsg(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>971 pub unsafe fn GetPostSnapshotFailureMsg(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
972 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
973 (::windows::runtime::Interface::vtable(self).44)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
974 }
GetAuthoritativeRestore(&self) -> ::windows::runtime::Result<bool>975 pub unsafe fn GetAuthoritativeRestore(&self) -> ::windows::runtime::Result<bool> {
976 let mut result__: <bool as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
977 (::windows::runtime::Interface::vtable(self).45)(::std::mem::transmute_copy(self), &mut result__).from_abi::<bool>(result__)
978 }
979 #[cfg(feature = "Win32_Foundation")]
GetRollForward(&self, prolltype: *mut VSS_ROLLFORWARD_TYPE, pbstrpoint: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>980 pub unsafe fn GetRollForward(&self, prolltype: *mut VSS_ROLLFORWARD_TYPE, pbstrpoint: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
981 (::windows::runtime::Interface::vtable(self).46)(::std::mem::transmute_copy(self), ::std::mem::transmute(prolltype), ::std::mem::transmute(pbstrpoint)).ok()
982 }
983 #[cfg(feature = "Win32_Foundation")]
GetRestoreName(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>984 pub unsafe fn GetRestoreName(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
985 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
986 (::windows::runtime::Interface::vtable(self).47)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
987 }
988 #[cfg(feature = "Win32_Foundation")]
SetFailure<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, hr: ::windows::runtime::HRESULT, hrapplication: ::windows::runtime::HRESULT, wszapplicationmessage: Param2, dwreserved: u32) -> ::windows::runtime::Result<()>989 pub unsafe fn SetFailure<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, hr: ::windows::runtime::HRESULT, hrapplication: ::windows::runtime::HRESULT, wszapplicationmessage: Param2, dwreserved: u32) -> ::windows::runtime::Result<()> {
990 (::windows::runtime::Interface::vtable(self).48)(::std::mem::transmute_copy(self), ::std::mem::transmute(hr), ::std::mem::transmute(hrapplication), wszapplicationmessage.into_param().abi(), ::std::mem::transmute(dwreserved)).ok()
991 }
992 #[cfg(feature = "Win32_Foundation")]
GetFailure(&self, phr: *mut ::windows::runtime::HRESULT, phrapplication: *mut ::windows::runtime::HRESULT, pbstrapplicationmessage: *mut super::super::Foundation::BSTR, pdwreserved: *mut u32) -> ::windows::runtime::Result<()>993 pub unsafe fn GetFailure(&self, phr: *mut ::windows::runtime::HRESULT, phrapplication: *mut ::windows::runtime::HRESULT, pbstrapplicationmessage: *mut super::super::Foundation::BSTR, pdwreserved: *mut u32) -> ::windows::runtime::Result<()> {
994 (::windows::runtime::Interface::vtable(self).49)(::std::mem::transmute_copy(self), ::std::mem::transmute(phr), ::std::mem::transmute(phrapplication), ::std::mem::transmute(pbstrapplicationmessage), ::std::mem::transmute(pdwreserved)).ok()
995 }
996 }
997 unsafe impl ::windows::runtime::Interface for IVssComponentEx2 {
998 type Vtable = IVssComponentEx2_abi;
999 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(995877106, 1961, 20043, [189, 211, 207, 220, 142, 44, 13, 45]);
1000 }
1001 impl ::std::convert::From<IVssComponentEx2> for ::windows::runtime::IUnknown {
from(value: IVssComponentEx2) -> Self1002 fn from(value: IVssComponentEx2) -> Self {
1003 unsafe { ::std::mem::transmute(value) }
1004 }
1005 }
1006 impl ::std::convert::From<&IVssComponentEx2> for ::windows::runtime::IUnknown {
from(value: &IVssComponentEx2) -> Self1007 fn from(value: &IVssComponentEx2) -> Self {
1008 ::std::convert::From::from(::std::clone::Clone::clone(value))
1009 }
1010 }
1011 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssComponentEx2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1012 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1013 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1014 }
1015 }
1016 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssComponentEx2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1017 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1018 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1019 }
1020 }
1021 impl ::std::convert::From<IVssComponentEx2> for IVssComponentEx {
from(value: IVssComponentEx2) -> Self1022 fn from(value: IVssComponentEx2) -> Self {
1023 unsafe { ::std::mem::transmute(value) }
1024 }
1025 }
1026 impl ::std::convert::From<&IVssComponentEx2> for IVssComponentEx {
from(value: &IVssComponentEx2) -> Self1027 fn from(value: &IVssComponentEx2) -> Self {
1028 ::std::convert::From::from(::std::clone::Clone::clone(value))
1029 }
1030 }
1031 impl<'a> ::windows::runtime::IntoParam<'a, IVssComponentEx> for IVssComponentEx2 {
into_param(self) -> ::windows::runtime::Param<'a, IVssComponentEx>1032 fn into_param(self) -> ::windows::runtime::Param<'a, IVssComponentEx> {
1033 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssComponentEx>::into(self))
1034 }
1035 }
1036 impl<'a> ::windows::runtime::IntoParam<'a, IVssComponentEx> for &IVssComponentEx2 {
into_param(self) -> ::windows::runtime::Param<'a, IVssComponentEx>1037 fn into_param(self) -> ::windows::runtime::Param<'a, IVssComponentEx> {
1038 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssComponentEx>::into(::std::clone::Clone::clone(self)))
1039 }
1040 }
1041 impl ::std::convert::From<IVssComponentEx2> for IVssComponent {
from(value: IVssComponentEx2) -> Self1042 fn from(value: IVssComponentEx2) -> Self {
1043 unsafe { ::std::mem::transmute(value) }
1044 }
1045 }
1046 impl ::std::convert::From<&IVssComponentEx2> for IVssComponent {
from(value: &IVssComponentEx2) -> Self1047 fn from(value: &IVssComponentEx2) -> Self {
1048 ::std::convert::From::from(::std::clone::Clone::clone(value))
1049 }
1050 }
1051 impl<'a> ::windows::runtime::IntoParam<'a, IVssComponent> for IVssComponentEx2 {
into_param(self) -> ::windows::runtime::Param<'a, IVssComponent>1052 fn into_param(self) -> ::windows::runtime::Param<'a, IVssComponent> {
1053 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssComponent>::into(self))
1054 }
1055 }
1056 impl<'a> ::windows::runtime::IntoParam<'a, IVssComponent> for &IVssComponentEx2 {
into_param(self) -> ::windows::runtime::Param<'a, IVssComponent>1057 fn into_param(self) -> ::windows::runtime::Param<'a, IVssComponent> {
1058 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssComponent>::into(::std::clone::Clone::clone(self)))
1059 }
1060 }
1061 #[repr(C)]
1062 #[doc(hidden)]
1063 pub struct IVssComponentEx2_abi(
1064 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1065 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1066 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1067 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1068 #[cfg(not(feature = "Win32_Foundation"))] usize,
1069 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pct: *mut VSS_COMPONENT_TYPE) -> ::windows::runtime::HRESULT,
1070 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1071 #[cfg(not(feature = "Win32_Foundation"))] usize,
1072 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbsucceeded: *mut bool) -> ::windows::runtime::HRESULT,
1073 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcmappings: *mut u32) -> ::windows::runtime::HRESULT,
1074 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, imapping: u32, ppfiledesc: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1075 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszdata: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1076 #[cfg(not(feature = "Win32_Foundation"))] usize,
1077 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrdata: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1078 #[cfg(not(feature = "Win32_Foundation"))] usize,
1079 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilename: super::super::Foundation::PWSTR, wszranges: super::super::Foundation::PWSTR, wszmetadata: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1080 #[cfg(not(feature = "Win32_Foundation"))] usize,
1081 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcpartialfiles: *mut u32) -> ::windows::runtime::HRESULT,
1082 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ipartialfile: u32, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrfilename: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrrange: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrmetadata: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1083 #[cfg(not(feature = "Win32_Foundation"))] usize,
1084 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbselectedforrestore: *mut bool) -> ::windows::runtime::HRESULT,
1085 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbadditionalrestores: *mut bool) -> ::windows::runtime::HRESULT,
1086 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcnewtarget: *mut u32) -> ::windows::runtime::HRESULT,
1087 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, inewtarget: u32, ppfiledesc: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1088 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszsourcepath: super::super::Foundation::PWSTR, wszsourcefilename: super::super::Foundation::PWSTR, wszsourcerangelist: super::super::Foundation::PWSTR, wszdestinationpath: super::super::Foundation::PWSTR, wszdestinationfilename: super::super::Foundation::PWSTR, wszdestinationrangelist: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1089 #[cfg(not(feature = "Win32_Foundation"))] usize,
1090 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcdirectedtarget: *mut u32) -> ::windows::runtime::HRESULT,
1091 #[cfg(feature = "Win32_Foundation")]
1092 pub unsafe extern "system" fn(
1093 this: ::windows::runtime::RawPtr,
1094 idirectedtarget: u32,
1095 pbstrsourcepath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
1096 pbstrsourcefilename: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
1097 pbstrsourcerangelist: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
1098 pbstrdestinationpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
1099 pbstrdestinationfilename: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
1100 pbstrdestinationrangelist: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>,
1101 ) -> ::windows::runtime::HRESULT,
1102 #[cfg(not(feature = "Win32_Foundation"))] usize,
1103 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszrestoremetadata: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1104 #[cfg(not(feature = "Win32_Foundation"))] usize,
1105 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrrestoremetadata: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1106 #[cfg(not(feature = "Win32_Foundation"))] usize,
1107 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, target: VSS_RESTORE_TARGET) -> ::windows::runtime::HRESULT,
1108 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ptarget: *mut VSS_RESTORE_TARGET) -> ::windows::runtime::HRESULT,
1109 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszprerestorefailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1110 #[cfg(not(feature = "Win32_Foundation"))] usize,
1111 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrprerestorefailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1112 #[cfg(not(feature = "Win32_Foundation"))] usize,
1113 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpostrestorefailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1114 #[cfg(not(feature = "Win32_Foundation"))] usize,
1115 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrpostrestorefailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1116 #[cfg(not(feature = "Win32_Foundation"))] usize,
1117 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszbackupstamp: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1118 #[cfg(not(feature = "Win32_Foundation"))] usize,
1119 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrbackupstamp: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1120 #[cfg(not(feature = "Win32_Foundation"))] usize,
1121 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrbackupstamp: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1122 #[cfg(not(feature = "Win32_Foundation"))] usize,
1123 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrbackupoptions: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1124 #[cfg(not(feature = "Win32_Foundation"))] usize,
1125 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrrestoreoptions: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1126 #[cfg(not(feature = "Win32_Foundation"))] usize,
1127 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcrestoresubcomponent: *mut u32) -> ::windows::runtime::HRESULT,
1128 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, icomponent: u32, pbstrlogicalpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrcomponentname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbrepair: *mut bool) -> ::windows::runtime::HRESULT,
1129 #[cfg(not(feature = "Win32_Foundation"))] usize,
1130 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pstatus: *mut VSS_FILE_RESTORE_STATUS) -> ::windows::runtime::HRESULT,
1131 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: super::super::Foundation::BOOL, ftlastmodifytime: super::super::Foundation::FILETIME) -> ::windows::runtime::HRESULT,
1132 #[cfg(not(feature = "Win32_Foundation"))] usize,
1133 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: super::super::Foundation::BOOL, bstrlsnstring: ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1134 #[cfg(not(feature = "Win32_Foundation"))] usize,
1135 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcdifferencedfiles: *mut u32) -> ::windows::runtime::HRESULT,
1136 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, idifferencedfile: u32, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbstrfilespec: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pbrecursive: *mut super::super::Foundation::BOOL, pbstrlsnstring: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pftlastmodifytime: *mut super::super::Foundation::FILETIME) -> ::windows::runtime::HRESULT,
1137 #[cfg(not(feature = "Win32_Foundation"))] usize,
1138 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszfailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1139 #[cfg(not(feature = "Win32_Foundation"))] usize,
1140 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszfailuremsg: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1141 #[cfg(not(feature = "Win32_Foundation"))] usize,
1142 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrfailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1143 #[cfg(not(feature = "Win32_Foundation"))] usize,
1144 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrfailuremsg: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1145 #[cfg(not(feature = "Win32_Foundation"))] usize,
1146 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbauth: *mut bool) -> ::windows::runtime::HRESULT,
1147 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, prolltype: *mut VSS_ROLLFORWARD_TYPE, pbstrpoint: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1148 #[cfg(not(feature = "Win32_Foundation"))] usize,
1149 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1150 #[cfg(not(feature = "Win32_Foundation"))] usize,
1151 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, hr: ::windows::runtime::HRESULT, hrapplication: ::windows::runtime::HRESULT, wszapplicationmessage: super::super::Foundation::PWSTR, dwreserved: u32) -> ::windows::runtime::HRESULT,
1152 #[cfg(not(feature = "Win32_Foundation"))] usize,
1153 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, phr: *mut ::windows::runtime::HRESULT, phrapplication: *mut ::windows::runtime::HRESULT, pbstrapplicationmessage: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>, pdwreserved: *mut u32) -> ::windows::runtime::HRESULT,
1154 #[cfg(not(feature = "Win32_Foundation"))] usize,
1155 );
1156 #[repr(transparent)]
1157 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1158 pub struct IVssCreateExpressWriterMetadata(::windows::runtime::IUnknown);
1159 impl IVssCreateExpressWriterMetadata {
1160 #[cfg(feature = "Win32_Foundation")]
AddExcludeFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: u8) -> ::windows::runtime::Result<()>1161 pub unsafe fn AddExcludeFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: u8) -> ::windows::runtime::Result<()> {
1162 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilespec.into_param().abi(), ::std::mem::transmute(brecursive)).ok()
1163 }
1164 #[cfg(feature = "Win32_Foundation")]
AddComponent<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, ct: VSS_COMPONENT_TYPE, wszlogicalpath: Param1, wszcomponentname: Param2, wszcaption: Param3, pbicon: *const u8, cbicon: u32, brestoremetadata: u8, bnotifyonbackupcomplete: u8, bselectable: u8, bselectableforrestore: u8, dwcomponentflags: u32, ) -> ::windows::runtime::Result<()>1165 pub unsafe fn AddComponent<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
1166 &self,
1167 ct: VSS_COMPONENT_TYPE,
1168 wszlogicalpath: Param1,
1169 wszcomponentname: Param2,
1170 wszcaption: Param3,
1171 pbicon: *const u8,
1172 cbicon: u32,
1173 brestoremetadata: u8,
1174 bnotifyonbackupcomplete: u8,
1175 bselectable: u8,
1176 bselectableforrestore: u8,
1177 dwcomponentflags: u32,
1178 ) -> ::windows::runtime::Result<()> {
1179 (::windows::runtime::Interface::vtable(self).4)(
1180 ::std::mem::transmute_copy(self),
1181 ::std::mem::transmute(ct),
1182 wszlogicalpath.into_param().abi(),
1183 wszcomponentname.into_param().abi(),
1184 wszcaption.into_param().abi(),
1185 ::std::mem::transmute(pbicon),
1186 ::std::mem::transmute(cbicon),
1187 ::std::mem::transmute(brestoremetadata),
1188 ::std::mem::transmute(bnotifyonbackupcomplete),
1189 ::std::mem::transmute(bselectable),
1190 ::std::mem::transmute(bselectableforrestore),
1191 ::std::mem::transmute(dwcomponentflags),
1192 )
1193 .ok()
1194 }
1195 #[cfg(feature = "Win32_Foundation")]
AddFilesToFileGroup<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, wszlogicalpath: Param0, wszgroupname: Param1, wszpath: Param2, wszfilespec: Param3, brecursive: u8, wszalternatelocation: Param5, dwbackuptypemask: u32, ) -> ::windows::runtime::Result<()>1196 pub unsafe fn AddFilesToFileGroup<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
1197 &self,
1198 wszlogicalpath: Param0,
1199 wszgroupname: Param1,
1200 wszpath: Param2,
1201 wszfilespec: Param3,
1202 brecursive: u8,
1203 wszalternatelocation: Param5,
1204 dwbackuptypemask: u32,
1205 ) -> ::windows::runtime::Result<()> {
1206 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), wszlogicalpath.into_param().abi(), wszgroupname.into_param().abi(), wszpath.into_param().abi(), wszfilespec.into_param().abi(), ::std::mem::transmute(brecursive), wszalternatelocation.into_param().abi(), ::std::mem::transmute(dwbackuptypemask)).ok()
1207 }
1208 #[cfg(feature = "Win32_Foundation")]
SetRestoreMethod<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, method: VSS_RESTOREMETHOD_ENUM, wszservice: Param1, wszuserprocedure: Param2, writerrestore: VSS_WRITERRESTORE_ENUM, brebootrequired: u8) -> ::windows::runtime::Result<()>1209 pub unsafe fn SetRestoreMethod<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, method: VSS_RESTOREMETHOD_ENUM, wszservice: Param1, wszuserprocedure: Param2, writerrestore: VSS_WRITERRESTORE_ENUM, brebootrequired: u8) -> ::windows::runtime::Result<()> {
1210 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(method), wszservice.into_param().abi(), wszuserprocedure.into_param().abi(), ::std::mem::transmute(writerrestore), ::std::mem::transmute(brebootrequired)).ok()
1211 }
1212 #[cfg(feature = "Win32_Foundation")]
AddComponentDependency<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, wszforlogicalpath: Param0, wszforcomponentname: Param1, onwriterid: Param2, wszonlogicalpath: Param3, wszoncomponentname: Param4, ) -> ::windows::runtime::Result<()>1213 pub unsafe fn AddComponentDependency<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
1214 &self,
1215 wszforlogicalpath: Param0,
1216 wszforcomponentname: Param1,
1217 onwriterid: Param2,
1218 wszonlogicalpath: Param3,
1219 wszoncomponentname: Param4,
1220 ) -> ::windows::runtime::Result<()> {
1221 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), wszforlogicalpath.into_param().abi(), wszforcomponentname.into_param().abi(), onwriterid.into_param().abi(), wszonlogicalpath.into_param().abi(), wszoncomponentname.into_param().abi()).ok()
1222 }
SetBackupSchema(&self, dwschemamask: u32) -> ::windows::runtime::Result<()>1223 pub unsafe fn SetBackupSchema(&self, dwschemamask: u32) -> ::windows::runtime::Result<()> {
1224 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwschemamask)).ok()
1225 }
1226 #[cfg(feature = "Win32_Foundation")]
SaveAsXML(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>1227 pub unsafe fn SaveAsXML(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
1228 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1229 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
1230 }
1231 }
1232 unsafe impl ::windows::runtime::Interface for IVssCreateExpressWriterMetadata {
1233 type Vtable = IVssCreateExpressWriterMetadata_abi;
1234 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2625056375, 45678, 17023, [146, 221, 201, 150, 244, 30, 165, 227]);
1235 }
1236 impl ::std::convert::From<IVssCreateExpressWriterMetadata> for ::windows::runtime::IUnknown {
from(value: IVssCreateExpressWriterMetadata) -> Self1237 fn from(value: IVssCreateExpressWriterMetadata) -> Self {
1238 unsafe { ::std::mem::transmute(value) }
1239 }
1240 }
1241 impl ::std::convert::From<&IVssCreateExpressWriterMetadata> for ::windows::runtime::IUnknown {
from(value: &IVssCreateExpressWriterMetadata) -> Self1242 fn from(value: &IVssCreateExpressWriterMetadata) -> Self {
1243 ::std::convert::From::from(::std::clone::Clone::clone(value))
1244 }
1245 }
1246 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssCreateExpressWriterMetadata {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1247 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1248 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1249 }
1250 }
1251 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssCreateExpressWriterMetadata {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1252 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1253 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1254 }
1255 }
1256 #[repr(C)]
1257 #[doc(hidden)]
1258 pub struct IVssCreateExpressWriterMetadata_abi(
1259 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1260 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1261 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1262 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: u8) -> ::windows::runtime::HRESULT,
1263 #[cfg(not(feature = "Win32_Foundation"))] usize,
1264 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ct: VSS_COMPONENT_TYPE, wszlogicalpath: super::super::Foundation::PWSTR, wszcomponentname: super::super::Foundation::PWSTR, wszcaption: super::super::Foundation::PWSTR, pbicon: *const u8, cbicon: u32, brestoremetadata: u8, bnotifyonbackupcomplete: u8, bselectable: u8, bselectableforrestore: u8, dwcomponentflags: u32) -> ::windows::runtime::HRESULT,
1265 #[cfg(not(feature = "Win32_Foundation"))] usize,
1266 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszlogicalpath: super::super::Foundation::PWSTR, wszgroupname: super::super::Foundation::PWSTR, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: u8, wszalternatelocation: super::super::Foundation::PWSTR, dwbackuptypemask: u32) -> ::windows::runtime::HRESULT,
1267 #[cfg(not(feature = "Win32_Foundation"))] usize,
1268 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, method: VSS_RESTOREMETHOD_ENUM, wszservice: super::super::Foundation::PWSTR, wszuserprocedure: super::super::Foundation::PWSTR, writerrestore: VSS_WRITERRESTORE_ENUM, brebootrequired: u8) -> ::windows::runtime::HRESULT,
1269 #[cfg(not(feature = "Win32_Foundation"))] usize,
1270 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszforlogicalpath: super::super::Foundation::PWSTR, wszforcomponentname: super::super::Foundation::PWSTR, onwriterid: ::windows::runtime::GUID, wszonlogicalpath: super::super::Foundation::PWSTR, wszoncomponentname: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1271 #[cfg(not(feature = "Win32_Foundation"))] usize,
1272 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwschemamask: u32) -> ::windows::runtime::HRESULT,
1273 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrxml: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1274 #[cfg(not(feature = "Win32_Foundation"))] usize,
1275 );
1276 #[repr(transparent)]
1277 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1278 pub struct IVssCreateWriterMetadata(::windows::runtime::IUnknown);
1279 impl IVssCreateWriterMetadata {
1280 #[cfg(feature = "Win32_Foundation")]
AddIncludeFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: u8, wszalternatelocation: Param3) -> ::windows::runtime::Result<()>1281 pub unsafe fn AddIncludeFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: u8, wszalternatelocation: Param3) -> ::windows::runtime::Result<()> {
1282 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilespec.into_param().abi(), ::std::mem::transmute(brecursive), wszalternatelocation.into_param().abi()).ok()
1283 }
1284 #[cfg(feature = "Win32_Foundation")]
AddExcludeFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: u8) -> ::windows::runtime::Result<()>1285 pub unsafe fn AddExcludeFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0, wszfilespec: Param1, brecursive: u8) -> ::windows::runtime::Result<()> {
1286 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), wszpath.into_param().abi(), wszfilespec.into_param().abi(), ::std::mem::transmute(brecursive)).ok()
1287 }
1288 #[cfg(feature = "Win32_Foundation")]
AddComponent<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, ct: VSS_COMPONENT_TYPE, wszlogicalpath: Param1, wszcomponentname: Param2, wszcaption: Param3, pbicon: *const u8, cbicon: u32, brestoremetadata: u8, bnotifyonbackupcomplete: u8, bselectable: u8, bselectableforrestore: u8, dwcomponentflags: u32, ) -> ::windows::runtime::Result<()>1289 pub unsafe fn AddComponent<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
1290 &self,
1291 ct: VSS_COMPONENT_TYPE,
1292 wszlogicalpath: Param1,
1293 wszcomponentname: Param2,
1294 wszcaption: Param3,
1295 pbicon: *const u8,
1296 cbicon: u32,
1297 brestoremetadata: u8,
1298 bnotifyonbackupcomplete: u8,
1299 bselectable: u8,
1300 bselectableforrestore: u8,
1301 dwcomponentflags: u32,
1302 ) -> ::windows::runtime::Result<()> {
1303 (::windows::runtime::Interface::vtable(self).5)(
1304 ::std::mem::transmute_copy(self),
1305 ::std::mem::transmute(ct),
1306 wszlogicalpath.into_param().abi(),
1307 wszcomponentname.into_param().abi(),
1308 wszcaption.into_param().abi(),
1309 ::std::mem::transmute(pbicon),
1310 ::std::mem::transmute(cbicon),
1311 ::std::mem::transmute(brestoremetadata),
1312 ::std::mem::transmute(bnotifyonbackupcomplete),
1313 ::std::mem::transmute(bselectable),
1314 ::std::mem::transmute(bselectableforrestore),
1315 ::std::mem::transmute(dwcomponentflags),
1316 )
1317 .ok()
1318 }
1319 #[cfg(feature = "Win32_Foundation")]
AddDatabaseFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszlogicalpath: Param0, wszdatabasename: Param1, wszpath: Param2, wszfilespec: Param3, dwbackuptypemask: u32) -> ::windows::runtime::Result<()>1320 pub unsafe fn AddDatabaseFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszlogicalpath: Param0, wszdatabasename: Param1, wszpath: Param2, wszfilespec: Param3, dwbackuptypemask: u32) -> ::windows::runtime::Result<()> {
1321 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), wszlogicalpath.into_param().abi(), wszdatabasename.into_param().abi(), wszpath.into_param().abi(), wszfilespec.into_param().abi(), ::std::mem::transmute(dwbackuptypemask)).ok()
1322 }
1323 #[cfg(feature = "Win32_Foundation")]
AddDatabaseLogFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszlogicalpath: Param0, wszdatabasename: Param1, wszpath: Param2, wszfilespec: Param3, dwbackuptypemask: u32) -> ::windows::runtime::Result<()>1324 pub unsafe fn AddDatabaseLogFiles<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszlogicalpath: Param0, wszdatabasename: Param1, wszpath: Param2, wszfilespec: Param3, dwbackuptypemask: u32) -> ::windows::runtime::Result<()> {
1325 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), wszlogicalpath.into_param().abi(), wszdatabasename.into_param().abi(), wszpath.into_param().abi(), wszfilespec.into_param().abi(), ::std::mem::transmute(dwbackuptypemask)).ok()
1326 }
1327 #[cfg(feature = "Win32_Foundation")]
AddFilesToFileGroup<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, wszlogicalpath: Param0, wszgroupname: Param1, wszpath: Param2, wszfilespec: Param3, brecursive: u8, wszalternatelocation: Param5, dwbackuptypemask: u32, ) -> ::windows::runtime::Result<()>1328 pub unsafe fn AddFilesToFileGroup<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param5: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
1329 &self,
1330 wszlogicalpath: Param0,
1331 wszgroupname: Param1,
1332 wszpath: Param2,
1333 wszfilespec: Param3,
1334 brecursive: u8,
1335 wszalternatelocation: Param5,
1336 dwbackuptypemask: u32,
1337 ) -> ::windows::runtime::Result<()> {
1338 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), wszlogicalpath.into_param().abi(), wszgroupname.into_param().abi(), wszpath.into_param().abi(), wszfilespec.into_param().abi(), ::std::mem::transmute(brecursive), wszalternatelocation.into_param().abi(), ::std::mem::transmute(dwbackuptypemask)).ok()
1339 }
1340 #[cfg(feature = "Win32_Foundation")]
SetRestoreMethod<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, method: VSS_RESTOREMETHOD_ENUM, wszservice: Param1, wszuserprocedure: Param2, writerrestore: VSS_WRITERRESTORE_ENUM, brebootrequired: u8) -> ::windows::runtime::Result<()>1341 pub unsafe fn SetRestoreMethod<'a, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, method: VSS_RESTOREMETHOD_ENUM, wszservice: Param1, wszuserprocedure: Param2, writerrestore: VSS_WRITERRESTORE_ENUM, brebootrequired: u8) -> ::windows::runtime::Result<()> {
1342 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(method), wszservice.into_param().abi(), wszuserprocedure.into_param().abi(), ::std::mem::transmute(writerrestore), ::std::mem::transmute(brebootrequired)).ok()
1343 }
1344 #[cfg(feature = "Win32_Foundation")]
AddAlternateLocationMapping<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszsourcepath: Param0, wszsourcefilespec: Param1, brecursive: u8, wszdestination: Param3) -> ::windows::runtime::Result<()>1345 pub unsafe fn AddAlternateLocationMapping<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszsourcepath: Param0, wszsourcefilespec: Param1, brecursive: u8, wszdestination: Param3) -> ::windows::runtime::Result<()> {
1346 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), wszsourcepath.into_param().abi(), wszsourcefilespec.into_param().abi(), ::std::mem::transmute(brecursive), wszdestination.into_param().abi()).ok()
1347 }
1348 #[cfg(feature = "Win32_Foundation")]
AddComponentDependency<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, wszforlogicalpath: Param0, wszforcomponentname: Param1, onwriterid: Param2, wszonlogicalpath: Param3, wszoncomponentname: Param4, ) -> ::windows::runtime::Result<()>1349 pub unsafe fn AddComponentDependency<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param4: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
1350 &self,
1351 wszforlogicalpath: Param0,
1352 wszforcomponentname: Param1,
1353 onwriterid: Param2,
1354 wszonlogicalpath: Param3,
1355 wszoncomponentname: Param4,
1356 ) -> ::windows::runtime::Result<()> {
1357 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), wszforlogicalpath.into_param().abi(), wszforcomponentname.into_param().abi(), onwriterid.into_param().abi(), wszonlogicalpath.into_param().abi(), wszoncomponentname.into_param().abi()).ok()
1358 }
SetBackupSchema(&self, dwschemamask: u32) -> ::windows::runtime::Result<()>1359 pub unsafe fn SetBackupSchema(&self, dwschemamask: u32) -> ::windows::runtime::Result<()> {
1360 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwschemamask)).ok()
1361 }
1362 #[cfg(feature = "Win32_Data_Xml_MsXml")]
GetDocument(&self) -> ::windows::runtime::Result<super::super::Data::Xml::MsXml::IXMLDOMDocument>1363 pub unsafe fn GetDocument(&self) -> ::windows::runtime::Result<super::super::Data::Xml::MsXml::IXMLDOMDocument> {
1364 let mut result__: <super::super::Data::Xml::MsXml::IXMLDOMDocument as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1365 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Data::Xml::MsXml::IXMLDOMDocument>(result__)
1366 }
1367 #[cfg(feature = "Win32_Foundation")]
SaveAsXML(&self, pbstrxml: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>1368 pub unsafe fn SaveAsXML(&self, pbstrxml: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
1369 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrxml)).ok()
1370 }
1371 }
1372 unsafe impl ::windows::runtime::Interface for IVssCreateWriterMetadata {
1373 type Vtable = IVssCreateWriterMetadata_abi;
1374 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::zeroed();
1375 }
1376 impl ::std::convert::From<IVssCreateWriterMetadata> for ::windows::runtime::IUnknown {
from(value: IVssCreateWriterMetadata) -> Self1377 fn from(value: IVssCreateWriterMetadata) -> Self {
1378 unsafe { ::std::mem::transmute(value) }
1379 }
1380 }
1381 impl ::std::convert::From<&IVssCreateWriterMetadata> for ::windows::runtime::IUnknown {
from(value: &IVssCreateWriterMetadata) -> Self1382 fn from(value: &IVssCreateWriterMetadata) -> Self {
1383 ::std::convert::From::from(::std::clone::Clone::clone(value))
1384 }
1385 }
1386 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssCreateWriterMetadata {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1387 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1388 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1389 }
1390 }
1391 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssCreateWriterMetadata {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1392 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1393 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1394 }
1395 }
1396 #[repr(C)]
1397 #[doc(hidden)]
1398 pub struct IVssCreateWriterMetadata_abi(
1399 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1400 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1401 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1402 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: u8, wszalternatelocation: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1403 #[cfg(not(feature = "Win32_Foundation"))] usize,
1404 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: u8) -> ::windows::runtime::HRESULT,
1405 #[cfg(not(feature = "Win32_Foundation"))] usize,
1406 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ct: VSS_COMPONENT_TYPE, wszlogicalpath: super::super::Foundation::PWSTR, wszcomponentname: super::super::Foundation::PWSTR, wszcaption: super::super::Foundation::PWSTR, pbicon: *const u8, cbicon: u32, brestoremetadata: u8, bnotifyonbackupcomplete: u8, bselectable: u8, bselectableforrestore: u8, dwcomponentflags: u32) -> ::windows::runtime::HRESULT,
1407 #[cfg(not(feature = "Win32_Foundation"))] usize,
1408 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszlogicalpath: super::super::Foundation::PWSTR, wszdatabasename: super::super::Foundation::PWSTR, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, dwbackuptypemask: u32) -> ::windows::runtime::HRESULT,
1409 #[cfg(not(feature = "Win32_Foundation"))] usize,
1410 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszlogicalpath: super::super::Foundation::PWSTR, wszdatabasename: super::super::Foundation::PWSTR, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, dwbackuptypemask: u32) -> ::windows::runtime::HRESULT,
1411 #[cfg(not(feature = "Win32_Foundation"))] usize,
1412 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszlogicalpath: super::super::Foundation::PWSTR, wszgroupname: super::super::Foundation::PWSTR, wszpath: super::super::Foundation::PWSTR, wszfilespec: super::super::Foundation::PWSTR, brecursive: u8, wszalternatelocation: super::super::Foundation::PWSTR, dwbackuptypemask: u32) -> ::windows::runtime::HRESULT,
1413 #[cfg(not(feature = "Win32_Foundation"))] usize,
1414 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, method: VSS_RESTOREMETHOD_ENUM, wszservice: super::super::Foundation::PWSTR, wszuserprocedure: super::super::Foundation::PWSTR, writerrestore: VSS_WRITERRESTORE_ENUM, brebootrequired: u8) -> ::windows::runtime::HRESULT,
1415 #[cfg(not(feature = "Win32_Foundation"))] usize,
1416 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszsourcepath: super::super::Foundation::PWSTR, wszsourcefilespec: super::super::Foundation::PWSTR, brecursive: u8, wszdestination: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1417 #[cfg(not(feature = "Win32_Foundation"))] usize,
1418 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszforlogicalpath: super::super::Foundation::PWSTR, wszforcomponentname: super::super::Foundation::PWSTR, onwriterid: ::windows::runtime::GUID, wszonlogicalpath: super::super::Foundation::PWSTR, wszoncomponentname: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
1419 #[cfg(not(feature = "Win32_Foundation"))] usize,
1420 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwschemamask: u32) -> ::windows::runtime::HRESULT,
1421 #[cfg(feature = "Win32_Data_Xml_MsXml")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdoc: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1422 #[cfg(not(feature = "Win32_Data_Xml_MsXml"))] usize,
1423 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrxml: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
1424 #[cfg(not(feature = "Win32_Foundation"))] usize,
1425 );
1426 #[repr(transparent)]
1427 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1428 pub struct IVssDifferentialSoftwareSnapshotMgmt(::windows::runtime::IUnknown);
1429 impl IVssDifferentialSoftwareSnapshotMgmt {
AddDiffArea(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()>1430 pub unsafe fn AddDiffArea(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()> {
1431 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(llmaximumdiffspace)).ok()
1432 }
ChangeDiffAreaMaximumSize(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()>1433 pub unsafe fn ChangeDiffAreaMaximumSize(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()> {
1434 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(llmaximumdiffspace)).ok()
1435 }
QueryVolumesSupportedForDiffAreas(&self, pwszoriginalvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject>1436 pub unsafe fn QueryVolumesSupportedForDiffAreas(&self, pwszoriginalvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1437 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1438 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszoriginalvolumename), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1439 }
QueryDiffAreasForVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject>1440 pub unsafe fn QueryDiffAreasForVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1441 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1442 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1443 }
QueryDiffAreasOnVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject>1444 pub unsafe fn QueryDiffAreasOnVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1445 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1446 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1447 }
QueryDiffAreasForSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<IVssEnumMgmtObject>1448 pub unsafe fn QueryDiffAreasForSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1449 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1450 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), snapshotid.into_param().abi(), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1451 }
1452 }
1453 unsafe impl ::windows::runtime::Interface for IVssDifferentialSoftwareSnapshotMgmt {
1454 type Vtable = IVssDifferentialSoftwareSnapshotMgmt_abi;
1455 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(558501672, 46903, 16422, [184, 71, 79, 158, 55, 215, 149, 41]);
1456 }
1457 impl ::std::convert::From<IVssDifferentialSoftwareSnapshotMgmt> for ::windows::runtime::IUnknown {
from(value: IVssDifferentialSoftwareSnapshotMgmt) -> Self1458 fn from(value: IVssDifferentialSoftwareSnapshotMgmt) -> Self {
1459 unsafe { ::std::mem::transmute(value) }
1460 }
1461 }
1462 impl ::std::convert::From<&IVssDifferentialSoftwareSnapshotMgmt> for ::windows::runtime::IUnknown {
from(value: &IVssDifferentialSoftwareSnapshotMgmt) -> Self1463 fn from(value: &IVssDifferentialSoftwareSnapshotMgmt) -> Self {
1464 ::std::convert::From::from(::std::clone::Clone::clone(value))
1465 }
1466 }
1467 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssDifferentialSoftwareSnapshotMgmt {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1468 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1469 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1470 }
1471 }
1472 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssDifferentialSoftwareSnapshotMgmt {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1473 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1474 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1475 }
1476 }
1477 #[repr(C)]
1478 #[doc(hidden)]
1479 pub struct IVssDifferentialSoftwareSnapshotMgmt_abi(
1480 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1481 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1482 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1483 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::HRESULT,
1484 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::HRESULT,
1485 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszoriginalvolumename: *const u16, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1486 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1487 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1488 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotid: ::windows::runtime::GUID, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1489 );
1490 #[repr(transparent)]
1491 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1492 pub struct IVssDifferentialSoftwareSnapshotMgmt2(::windows::runtime::IUnknown);
1493 impl IVssDifferentialSoftwareSnapshotMgmt2 {
AddDiffArea(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()>1494 pub unsafe fn AddDiffArea(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()> {
1495 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(llmaximumdiffspace)).ok()
1496 }
ChangeDiffAreaMaximumSize(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()>1497 pub unsafe fn ChangeDiffAreaMaximumSize(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()> {
1498 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(llmaximumdiffspace)).ok()
1499 }
QueryVolumesSupportedForDiffAreas(&self, pwszoriginalvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject>1500 pub unsafe fn QueryVolumesSupportedForDiffAreas(&self, pwszoriginalvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1501 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1502 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszoriginalvolumename), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1503 }
QueryDiffAreasForVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject>1504 pub unsafe fn QueryDiffAreasForVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1505 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1506 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1507 }
QueryDiffAreasOnVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject>1508 pub unsafe fn QueryDiffAreasOnVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1509 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1510 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1511 }
QueryDiffAreasForSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<IVssEnumMgmtObject>1512 pub unsafe fn QueryDiffAreasForSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1513 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1514 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), snapshotid.into_param().abi(), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1515 }
1516 #[cfg(feature = "Win32_Foundation")]
ChangeDiffAreaMaximumSizeEx<'a, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64, bvolatile: Param3) -> ::windows::runtime::Result<()>1517 pub unsafe fn ChangeDiffAreaMaximumSizeEx<'a, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64, bvolatile: Param3) -> ::windows::runtime::Result<()> {
1518 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(llmaximumdiffspace), bvolatile.into_param().abi()).ok()
1519 }
MigrateDiffAreas(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, pwsznewdiffareavolumename: *const u16) -> ::windows::runtime::Result<()>1520 pub unsafe fn MigrateDiffAreas(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, pwsznewdiffareavolumename: *const u16) -> ::windows::runtime::Result<()> {
1521 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(pwsznewdiffareavolumename)).ok()
1522 }
QueryMigrationStatus(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16) -> ::windows::runtime::Result<IVssAsync>1523 pub unsafe fn QueryMigrationStatus(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16) -> ::windows::runtime::Result<IVssAsync> {
1524 let mut result__: <IVssAsync as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1525 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), &mut result__).from_abi::<IVssAsync>(result__)
1526 }
SetSnapshotPriority<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, idsnapshot: Param0, priority: u8) -> ::windows::runtime::Result<()>1527 pub unsafe fn SetSnapshotPriority<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, idsnapshot: Param0, priority: u8) -> ::windows::runtime::Result<()> {
1528 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), idsnapshot.into_param().abi(), ::std::mem::transmute(priority)).ok()
1529 }
1530 }
1531 unsafe impl ::windows::runtime::Interface for IVssDifferentialSoftwareSnapshotMgmt2 {
1532 type Vtable = IVssDifferentialSoftwareSnapshotMgmt2_abi;
1533 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2493346643, 26463, 17013, [137, 105, 240, 68, 198, 39, 120, 21]);
1534 }
1535 impl ::std::convert::From<IVssDifferentialSoftwareSnapshotMgmt2> for ::windows::runtime::IUnknown {
from(value: IVssDifferentialSoftwareSnapshotMgmt2) -> Self1536 fn from(value: IVssDifferentialSoftwareSnapshotMgmt2) -> Self {
1537 unsafe { ::std::mem::transmute(value) }
1538 }
1539 }
1540 impl ::std::convert::From<&IVssDifferentialSoftwareSnapshotMgmt2> for ::windows::runtime::IUnknown {
from(value: &IVssDifferentialSoftwareSnapshotMgmt2) -> Self1541 fn from(value: &IVssDifferentialSoftwareSnapshotMgmt2) -> Self {
1542 ::std::convert::From::from(::std::clone::Clone::clone(value))
1543 }
1544 }
1545 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssDifferentialSoftwareSnapshotMgmt2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1546 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1547 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1548 }
1549 }
1550 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssDifferentialSoftwareSnapshotMgmt2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1551 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1552 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1553 }
1554 }
1555 impl ::std::convert::From<IVssDifferentialSoftwareSnapshotMgmt2> for IVssDifferentialSoftwareSnapshotMgmt {
from(value: IVssDifferentialSoftwareSnapshotMgmt2) -> Self1556 fn from(value: IVssDifferentialSoftwareSnapshotMgmt2) -> Self {
1557 unsafe { ::std::mem::transmute(value) }
1558 }
1559 }
1560 impl ::std::convert::From<&IVssDifferentialSoftwareSnapshotMgmt2> for IVssDifferentialSoftwareSnapshotMgmt {
from(value: &IVssDifferentialSoftwareSnapshotMgmt2) -> Self1561 fn from(value: &IVssDifferentialSoftwareSnapshotMgmt2) -> Self {
1562 ::std::convert::From::from(::std::clone::Clone::clone(value))
1563 }
1564 }
1565 impl<'a> ::windows::runtime::IntoParam<'a, IVssDifferentialSoftwareSnapshotMgmt> for IVssDifferentialSoftwareSnapshotMgmt2 {
into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt>1566 fn into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt> {
1567 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssDifferentialSoftwareSnapshotMgmt>::into(self))
1568 }
1569 }
1570 impl<'a> ::windows::runtime::IntoParam<'a, IVssDifferentialSoftwareSnapshotMgmt> for &IVssDifferentialSoftwareSnapshotMgmt2 {
into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt>1571 fn into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt> {
1572 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssDifferentialSoftwareSnapshotMgmt>::into(::std::clone::Clone::clone(self)))
1573 }
1574 }
1575 #[repr(C)]
1576 #[doc(hidden)]
1577 pub struct IVssDifferentialSoftwareSnapshotMgmt2_abi(
1578 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1579 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1580 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1581 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::HRESULT,
1582 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::HRESULT,
1583 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszoriginalvolumename: *const u16, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1584 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1585 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1586 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotid: ::windows::runtime::GUID, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1587 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64, bvolatile: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1588 #[cfg(not(feature = "Win32_Foundation"))] usize,
1589 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, pwsznewdiffareavolumename: *const u16) -> ::windows::runtime::HRESULT,
1590 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, ppasync: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1591 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, idsnapshot: ::windows::runtime::GUID, priority: u8) -> ::windows::runtime::HRESULT,
1592 );
1593 #[repr(transparent)]
1594 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1595 pub struct IVssDifferentialSoftwareSnapshotMgmt3(::windows::runtime::IUnknown);
1596 impl IVssDifferentialSoftwareSnapshotMgmt3 {
AddDiffArea(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()>1597 pub unsafe fn AddDiffArea(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()> {
1598 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(llmaximumdiffspace)).ok()
1599 }
ChangeDiffAreaMaximumSize(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()>1600 pub unsafe fn ChangeDiffAreaMaximumSize(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::Result<()> {
1601 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(llmaximumdiffspace)).ok()
1602 }
QueryVolumesSupportedForDiffAreas(&self, pwszoriginalvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject>1603 pub unsafe fn QueryVolumesSupportedForDiffAreas(&self, pwszoriginalvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1604 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1605 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszoriginalvolumename), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1606 }
QueryDiffAreasForVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject>1607 pub unsafe fn QueryDiffAreasForVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1608 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1609 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1610 }
QueryDiffAreasOnVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject>1611 pub unsafe fn QueryDiffAreasOnVolume(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1612 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1613 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1614 }
QueryDiffAreasForSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<IVssEnumMgmtObject>1615 pub unsafe fn QueryDiffAreasForSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
1616 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1617 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), snapshotid.into_param().abi(), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
1618 }
1619 #[cfg(feature = "Win32_Foundation")]
ChangeDiffAreaMaximumSizeEx<'a, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64, bvolatile: Param3) -> ::windows::runtime::Result<()>1620 pub unsafe fn ChangeDiffAreaMaximumSizeEx<'a, Param3: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64, bvolatile: Param3) -> ::windows::runtime::Result<()> {
1621 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(llmaximumdiffspace), bvolatile.into_param().abi()).ok()
1622 }
MigrateDiffAreas(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, pwsznewdiffareavolumename: *const u16) -> ::windows::runtime::Result<()>1623 pub unsafe fn MigrateDiffAreas(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, pwsznewdiffareavolumename: *const u16) -> ::windows::runtime::Result<()> {
1624 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), ::std::mem::transmute(pwsznewdiffareavolumename)).ok()
1625 }
QueryMigrationStatus(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16) -> ::windows::runtime::Result<IVssAsync>1626 pub unsafe fn QueryMigrationStatus(&self, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16) -> ::windows::runtime::Result<IVssAsync> {
1627 let mut result__: <IVssAsync as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1628 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pwszdiffareavolumename), &mut result__).from_abi::<IVssAsync>(result__)
1629 }
SetSnapshotPriority<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, idsnapshot: Param0, priority: u8) -> ::windows::runtime::Result<()>1630 pub unsafe fn SetSnapshotPriority<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, idsnapshot: Param0, priority: u8) -> ::windows::runtime::Result<()> {
1631 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), idsnapshot.into_param().abi(), ::std::mem::transmute(priority)).ok()
1632 }
SetVolumeProtectLevel(&self, pwszvolumename: *const u16, protectionlevel: VSS_PROTECTION_LEVEL) -> ::windows::runtime::Result<()>1633 pub unsafe fn SetVolumeProtectLevel(&self, pwszvolumename: *const u16, protectionlevel: VSS_PROTECTION_LEVEL) -> ::windows::runtime::Result<()> {
1634 (::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(protectionlevel)).ok()
1635 }
1636 #[cfg(feature = "Win32_Foundation")]
GetVolumeProtectLevel(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<VSS_VOLUME_PROTECTION_INFO>1637 pub unsafe fn GetVolumeProtectLevel(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<VSS_VOLUME_PROTECTION_INFO> {
1638 let mut result__: <VSS_VOLUME_PROTECTION_INFO as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1639 (::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), &mut result__).from_abi::<VSS_VOLUME_PROTECTION_INFO>(result__)
1640 }
ClearVolumeProtectFault(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<()>1641 pub unsafe fn ClearVolumeProtectFault(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<()> {
1642 (::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename)).ok()
1643 }
DeleteUnusedDiffAreas(&self, pwszdiffareavolumename: *const u16) -> ::windows::runtime::Result<()>1644 pub unsafe fn DeleteUnusedDiffAreas(&self, pwszdiffareavolumename: *const u16) -> ::windows::runtime::Result<()> {
1645 (::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszdiffareavolumename)).ok()
1646 }
QuerySnapshotDeltaBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, idsnapshotolder: Param0, idsnapshotyounger: Param1, pcblocksizeperbit: *mut u32, pcbitmaplength: *mut u32, ppbbitmap: *mut *mut u8) -> ::windows::runtime::Result<()>1647 pub unsafe fn QuerySnapshotDeltaBitmap<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, idsnapshotolder: Param0, idsnapshotyounger: Param1, pcblocksizeperbit: *mut u32, pcbitmaplength: *mut u32, ppbbitmap: *mut *mut u8) -> ::windows::runtime::Result<()> {
1648 (::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self), idsnapshotolder.into_param().abi(), idsnapshotyounger.into_param().abi(), ::std::mem::transmute(pcblocksizeperbit), ::std::mem::transmute(pcbitmaplength), ::std::mem::transmute(ppbbitmap)).ok()
1649 }
1650 }
1651 unsafe impl ::windows::runtime::Interface for IVssDifferentialSoftwareSnapshotMgmt3 {
1652 type Vtable = IVssDifferentialSoftwareSnapshotMgmt3_abi;
1653 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(943685233, 42181, 16415, [178, 127, 248, 38, 40, 159, 132, 88]);
1654 }
1655 impl ::std::convert::From<IVssDifferentialSoftwareSnapshotMgmt3> for ::windows::runtime::IUnknown {
from(value: IVssDifferentialSoftwareSnapshotMgmt3) -> Self1656 fn from(value: IVssDifferentialSoftwareSnapshotMgmt3) -> Self {
1657 unsafe { ::std::mem::transmute(value) }
1658 }
1659 }
1660 impl ::std::convert::From<&IVssDifferentialSoftwareSnapshotMgmt3> for ::windows::runtime::IUnknown {
from(value: &IVssDifferentialSoftwareSnapshotMgmt3) -> Self1661 fn from(value: &IVssDifferentialSoftwareSnapshotMgmt3) -> Self {
1662 ::std::convert::From::from(::std::clone::Clone::clone(value))
1663 }
1664 }
1665 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssDifferentialSoftwareSnapshotMgmt3 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1666 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1667 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1668 }
1669 }
1670 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssDifferentialSoftwareSnapshotMgmt3 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1671 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1672 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1673 }
1674 }
1675 impl ::std::convert::From<IVssDifferentialSoftwareSnapshotMgmt3> for IVssDifferentialSoftwareSnapshotMgmt2 {
from(value: IVssDifferentialSoftwareSnapshotMgmt3) -> Self1676 fn from(value: IVssDifferentialSoftwareSnapshotMgmt3) -> Self {
1677 unsafe { ::std::mem::transmute(value) }
1678 }
1679 }
1680 impl ::std::convert::From<&IVssDifferentialSoftwareSnapshotMgmt3> for IVssDifferentialSoftwareSnapshotMgmt2 {
from(value: &IVssDifferentialSoftwareSnapshotMgmt3) -> Self1681 fn from(value: &IVssDifferentialSoftwareSnapshotMgmt3) -> Self {
1682 ::std::convert::From::from(::std::clone::Clone::clone(value))
1683 }
1684 }
1685 impl<'a> ::windows::runtime::IntoParam<'a, IVssDifferentialSoftwareSnapshotMgmt2> for IVssDifferentialSoftwareSnapshotMgmt3 {
into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt2>1686 fn into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt2> {
1687 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssDifferentialSoftwareSnapshotMgmt2>::into(self))
1688 }
1689 }
1690 impl<'a> ::windows::runtime::IntoParam<'a, IVssDifferentialSoftwareSnapshotMgmt2> for &IVssDifferentialSoftwareSnapshotMgmt3 {
into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt2>1691 fn into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt2> {
1692 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssDifferentialSoftwareSnapshotMgmt2>::into(::std::clone::Clone::clone(self)))
1693 }
1694 }
1695 impl ::std::convert::From<IVssDifferentialSoftwareSnapshotMgmt3> for IVssDifferentialSoftwareSnapshotMgmt {
from(value: IVssDifferentialSoftwareSnapshotMgmt3) -> Self1696 fn from(value: IVssDifferentialSoftwareSnapshotMgmt3) -> Self {
1697 unsafe { ::std::mem::transmute(value) }
1698 }
1699 }
1700 impl ::std::convert::From<&IVssDifferentialSoftwareSnapshotMgmt3> for IVssDifferentialSoftwareSnapshotMgmt {
from(value: &IVssDifferentialSoftwareSnapshotMgmt3) -> Self1701 fn from(value: &IVssDifferentialSoftwareSnapshotMgmt3) -> Self {
1702 ::std::convert::From::from(::std::clone::Clone::clone(value))
1703 }
1704 }
1705 impl<'a> ::windows::runtime::IntoParam<'a, IVssDifferentialSoftwareSnapshotMgmt> for IVssDifferentialSoftwareSnapshotMgmt3 {
into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt>1706 fn into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt> {
1707 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssDifferentialSoftwareSnapshotMgmt>::into(self))
1708 }
1709 }
1710 impl<'a> ::windows::runtime::IntoParam<'a, IVssDifferentialSoftwareSnapshotMgmt> for &IVssDifferentialSoftwareSnapshotMgmt3 {
into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt>1711 fn into_param(self) -> ::windows::runtime::Param<'a, IVssDifferentialSoftwareSnapshotMgmt> {
1712 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssDifferentialSoftwareSnapshotMgmt>::into(::std::clone::Clone::clone(self)))
1713 }
1714 }
1715 #[repr(C)]
1716 #[doc(hidden)]
1717 pub struct IVssDifferentialSoftwareSnapshotMgmt3_abi(
1718 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1719 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1720 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1721 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::HRESULT,
1722 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64) -> ::windows::runtime::HRESULT,
1723 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszoriginalvolumename: *const u16, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1724 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1725 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1726 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotid: ::windows::runtime::GUID, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1727 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, llmaximumdiffspace: i64, bvolatile: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1728 #[cfg(not(feature = "Win32_Foundation"))] usize,
1729 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, pwsznewdiffareavolumename: *const u16) -> ::windows::runtime::HRESULT,
1730 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pwszdiffareavolumename: *const u16, ppasync: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1731 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, idsnapshot: ::windows::runtime::GUID, priority: u8) -> ::windows::runtime::HRESULT,
1732 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, protectionlevel: VSS_PROTECTION_LEVEL) -> ::windows::runtime::HRESULT,
1733 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, protectionlevel: *mut VSS_VOLUME_PROTECTION_INFO) -> ::windows::runtime::HRESULT,
1734 #[cfg(not(feature = "Win32_Foundation"))] usize,
1735 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16) -> ::windows::runtime::HRESULT,
1736 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszdiffareavolumename: *const u16) -> ::windows::runtime::HRESULT,
1737 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, idsnapshotolder: ::windows::runtime::GUID, idsnapshotyounger: ::windows::runtime::GUID, pcblocksizeperbit: *mut u32, pcbitmaplength: *mut u32, ppbbitmap: *mut *mut u8) -> ::windows::runtime::HRESULT,
1738 );
1739 #[repr(transparent)]
1740 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1741 pub struct IVssEnumMgmtObject(::windows::runtime::IUnknown);
1742 impl IVssEnumMgmtObject {
Next(&self, celt: u32, rgelt: *mut VSS_MGMT_OBJECT_PROP, pceltfetched: *mut u32) -> ::windows::runtime::Result<()>1743 pub unsafe fn Next(&self, celt: u32, rgelt: *mut VSS_MGMT_OBJECT_PROP, pceltfetched: *mut u32) -> ::windows::runtime::Result<()> {
1744 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(celt), ::std::mem::transmute(rgelt), ::std::mem::transmute(pceltfetched)).ok()
1745 }
Skip(&self, celt: u32) -> ::windows::runtime::Result<()>1746 pub unsafe fn Skip(&self, celt: u32) -> ::windows::runtime::Result<()> {
1747 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(celt)).ok()
1748 }
Reset(&self) -> ::windows::runtime::Result<()>1749 pub unsafe fn Reset(&self) -> ::windows::runtime::Result<()> {
1750 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)).ok()
1751 }
Clone(&self, ppenum: *mut ::std::option::Option<IVssEnumMgmtObject>) -> ::windows::runtime::Result<()>1752 pub unsafe fn Clone(&self, ppenum: *mut ::std::option::Option<IVssEnumMgmtObject>) -> ::windows::runtime::Result<()> {
1753 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppenum)).ok()
1754 }
1755 }
1756 unsafe impl ::windows::runtime::Interface for IVssEnumMgmtObject {
1757 type Vtable = IVssEnumMgmtObject_abi;
1758 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(26562155, 37460, 20078, [128, 140, 201, 224, 93, 0, 118, 150]);
1759 }
1760 impl ::std::convert::From<IVssEnumMgmtObject> for ::windows::runtime::IUnknown {
from(value: IVssEnumMgmtObject) -> Self1761 fn from(value: IVssEnumMgmtObject) -> Self {
1762 unsafe { ::std::mem::transmute(value) }
1763 }
1764 }
1765 impl ::std::convert::From<&IVssEnumMgmtObject> for ::windows::runtime::IUnknown {
from(value: &IVssEnumMgmtObject) -> Self1766 fn from(value: &IVssEnumMgmtObject) -> Self {
1767 ::std::convert::From::from(::std::clone::Clone::clone(value))
1768 }
1769 }
1770 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssEnumMgmtObject {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1771 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1772 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1773 }
1774 }
1775 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssEnumMgmtObject {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1776 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1777 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1778 }
1779 }
1780 #[repr(C)]
1781 #[doc(hidden)]
1782 pub struct IVssEnumMgmtObject_abi(
1783 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1784 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1785 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1786 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, celt: u32, rgelt: *mut VSS_MGMT_OBJECT_PROP, pceltfetched: *mut u32) -> ::windows::runtime::HRESULT,
1787 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, celt: u32) -> ::windows::runtime::HRESULT,
1788 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1789 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1790 );
1791 #[repr(transparent)]
1792 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1793 pub struct IVssEnumObject(::windows::runtime::IUnknown);
1794 impl IVssEnumObject {
Next(&self, celt: u32, rgelt: *mut VSS_OBJECT_PROP, pceltfetched: *mut u32) -> ::windows::runtime::Result<()>1795 pub unsafe fn Next(&self, celt: u32, rgelt: *mut VSS_OBJECT_PROP, pceltfetched: *mut u32) -> ::windows::runtime::Result<()> {
1796 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(celt), ::std::mem::transmute(rgelt), ::std::mem::transmute(pceltfetched)).ok()
1797 }
Skip(&self, celt: u32) -> ::windows::runtime::Result<()>1798 pub unsafe fn Skip(&self, celt: u32) -> ::windows::runtime::Result<()> {
1799 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(celt)).ok()
1800 }
Reset(&self) -> ::windows::runtime::Result<()>1801 pub unsafe fn Reset(&self) -> ::windows::runtime::Result<()> {
1802 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)).ok()
1803 }
Clone(&self, ppenum: *mut ::std::option::Option<IVssEnumObject>) -> ::windows::runtime::Result<()>1804 pub unsafe fn Clone(&self, ppenum: *mut ::std::option::Option<IVssEnumObject>) -> ::windows::runtime::Result<()> {
1805 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(ppenum)).ok()
1806 }
1807 }
1808 unsafe impl ::windows::runtime::Interface for IVssEnumObject {
1809 type Vtable = IVssEnumObject_abi;
1810 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2921099536, 12128, 4563, [138, 57, 0, 192, 79, 114, 216, 227]);
1811 }
1812 impl ::std::convert::From<IVssEnumObject> for ::windows::runtime::IUnknown {
from(value: IVssEnumObject) -> Self1813 fn from(value: IVssEnumObject) -> Self {
1814 unsafe { ::std::mem::transmute(value) }
1815 }
1816 }
1817 impl ::std::convert::From<&IVssEnumObject> for ::windows::runtime::IUnknown {
from(value: &IVssEnumObject) -> Self1818 fn from(value: &IVssEnumObject) -> Self {
1819 ::std::convert::From::from(::std::clone::Clone::clone(value))
1820 }
1821 }
1822 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssEnumObject {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1823 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1824 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1825 }
1826 }
1827 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssEnumObject {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1828 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1829 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1830 }
1831 }
1832 #[repr(C)]
1833 #[doc(hidden)]
1834 pub struct IVssEnumObject_abi(
1835 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1836 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1837 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1838 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, celt: u32, rgelt: *mut VSS_OBJECT_PROP, pceltfetched: *mut u32) -> ::windows::runtime::HRESULT,
1839 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, celt: u32) -> ::windows::runtime::HRESULT,
1840 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1841 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1842 );
1843 #[repr(C)]
1844 #[derive(:: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug, :: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy)]
1845 pub struct IVssExamineWriterMetadata(pub u8);
1846 #[repr(transparent)]
1847 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1848 pub struct IVssExpressWriter(::windows::runtime::IUnknown);
1849 impl IVssExpressWriter {
1850 #[cfg(feature = "Win32_Foundation")]
CreateMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, writerid: Param0, writername: Param1, usagetype: VSS_USAGE_TYPE, versionmajor: u32, versionminor: u32, reserved: u32) -> ::windows::runtime::Result<IVssCreateExpressWriterMetadata>1851 pub unsafe fn CreateMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, writerid: Param0, writername: Param1, usagetype: VSS_USAGE_TYPE, versionmajor: u32, versionminor: u32, reserved: u32) -> ::windows::runtime::Result<IVssCreateExpressWriterMetadata> {
1852 let mut result__: <IVssCreateExpressWriterMetadata as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1853 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), writerid.into_param().abi(), writername.into_param().abi(), ::std::mem::transmute(usagetype), ::std::mem::transmute(versionmajor), ::std::mem::transmute(versionminor), ::std::mem::transmute(reserved), &mut result__).from_abi::<IVssCreateExpressWriterMetadata>(result__)
1854 }
1855 #[cfg(feature = "Win32_Foundation")]
LoadMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, metadata: Param0, reserved: u32) -> ::windows::runtime::Result<()>1856 pub unsafe fn LoadMetadata<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, metadata: Param0, reserved: u32) -> ::windows::runtime::Result<()> {
1857 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), metadata.into_param().abi(), ::std::mem::transmute(reserved)).ok()
1858 }
Register(&self) -> ::windows::runtime::Result<()>1859 pub unsafe fn Register(&self) -> ::windows::runtime::Result<()> {
1860 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)).ok()
1861 }
Unregister<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, writerid: Param0) -> ::windows::runtime::Result<()>1862 pub unsafe fn Unregister<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, writerid: Param0) -> ::windows::runtime::Result<()> {
1863 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), writerid.into_param().abi()).ok()
1864 }
1865 }
1866 unsafe impl ::windows::runtime::Interface for IVssExpressWriter {
1867 type Vtable = IVssExpressWriter_abi;
1868 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3812294620, 22983, 18353, [151, 213, 66, 102, 89, 143, 98, 53]);
1869 }
1870 impl ::std::convert::From<IVssExpressWriter> for ::windows::runtime::IUnknown {
from(value: IVssExpressWriter) -> Self1871 fn from(value: IVssExpressWriter) -> Self {
1872 unsafe { ::std::mem::transmute(value) }
1873 }
1874 }
1875 impl ::std::convert::From<&IVssExpressWriter> for ::windows::runtime::IUnknown {
from(value: &IVssExpressWriter) -> Self1876 fn from(value: &IVssExpressWriter) -> Self {
1877 ::std::convert::From::from(::std::clone::Clone::clone(value))
1878 }
1879 }
1880 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssExpressWriter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1881 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1882 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1883 }
1884 }
1885 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssExpressWriter {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1886 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1887 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1888 }
1889 }
1890 #[repr(C)]
1891 #[doc(hidden)]
1892 pub struct IVssExpressWriter_abi(
1893 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1894 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1895 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1896 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, writerid: ::windows::runtime::GUID, writername: super::super::Foundation::PWSTR, usagetype: VSS_USAGE_TYPE, versionmajor: u32, versionminor: u32, reserved: u32, ppmetadata: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1897 #[cfg(not(feature = "Win32_Foundation"))] usize,
1898 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, metadata: super::super::Foundation::PWSTR, reserved: u32) -> ::windows::runtime::HRESULT,
1899 #[cfg(not(feature = "Win32_Foundation"))] usize,
1900 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1901 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, writerid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1902 );
1903 #[repr(transparent)]
1904 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
1905 pub struct IVssFileShareSnapshotProvider(::windows::runtime::IUnknown);
1906 impl IVssFileShareSnapshotProvider {
SetContext(&self, lcontext: i32) -> ::windows::runtime::Result<()>1907 pub unsafe fn SetContext(&self, lcontext: i32) -> ::windows::runtime::Result<()> {
1908 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(lcontext)).ok()
1909 }
GetSnapshotProperties<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<VSS_SNAPSHOT_PROP>1910 pub unsafe fn GetSnapshotProperties<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<VSS_SNAPSHOT_PROP> {
1911 let mut result__: <VSS_SNAPSHOT_PROP as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1912 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), snapshotid.into_param().abi(), &mut result__).from_abi::<VSS_SNAPSHOT_PROP>(result__)
1913 }
Query<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, queriedobjectid: Param0, equeriedobjecttype: VSS_OBJECT_TYPE, ereturnedobjectstype: VSS_OBJECT_TYPE) -> ::windows::runtime::Result<IVssEnumObject>1914 pub unsafe fn Query<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, queriedobjectid: Param0, equeriedobjecttype: VSS_OBJECT_TYPE, ereturnedobjectstype: VSS_OBJECT_TYPE) -> ::windows::runtime::Result<IVssEnumObject> {
1915 let mut result__: <IVssEnumObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1916 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), queriedobjectid.into_param().abi(), ::std::mem::transmute(equeriedobjecttype), ::std::mem::transmute(ereturnedobjectstype), &mut result__).from_abi::<IVssEnumObject>(result__)
1917 }
1918 #[cfg(feature = "Win32_Foundation")]
DeleteSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, sourceobjectid: Param0, esourceobjecttype: VSS_OBJECT_TYPE, bforcedelete: Param2, pldeletedsnapshots: *mut i32, pnondeletedsnapshotid: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()>1919 pub unsafe fn DeleteSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, sourceobjectid: Param0, esourceobjecttype: VSS_OBJECT_TYPE, bforcedelete: Param2, pldeletedsnapshots: *mut i32, pnondeletedsnapshotid: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()> {
1920 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), sourceobjectid.into_param().abi(), ::std::mem::transmute(esourceobjecttype), bforcedelete.into_param().abi(), ::std::mem::transmute(pldeletedsnapshots), ::std::mem::transmute(pnondeletedsnapshotid)).ok()
1921 }
BeginPrepareSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, snapshotid: Param1, pwszsharepath: *const u16, lnewcontext: i32, providerid: Param4) -> ::windows::runtime::Result<()>1922 pub unsafe fn BeginPrepareSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param4: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, snapshotid: Param1, pwszsharepath: *const u16, lnewcontext: i32, providerid: Param4) -> ::windows::runtime::Result<()> {
1923 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi(), snapshotid.into_param().abi(), ::std::mem::transmute(pwszsharepath), ::std::mem::transmute(lnewcontext), providerid.into_param().abi()).ok()
1924 }
1925 #[cfg(feature = "Win32_Foundation")]
IsPathSupported(&self, pwszsharepath: *const u16) -> ::windows::runtime::Result<super::super::Foundation::BOOL>1926 pub unsafe fn IsPathSupported(&self, pwszsharepath: *const u16) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
1927 let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
1928 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszsharepath), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
1929 }
1930 #[cfg(feature = "Win32_Foundation")]
IsPathSnapshotted(&self, pwszsharepath: *const u16, pbsnapshotspresent: *mut super::super::Foundation::BOOL, plsnapshotcompatibility: *mut i32) -> ::windows::runtime::Result<()>1931 pub unsafe fn IsPathSnapshotted(&self, pwszsharepath: *const u16, pbsnapshotspresent: *mut super::super::Foundation::BOOL, plsnapshotcompatibility: *mut i32) -> ::windows::runtime::Result<()> {
1932 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszsharepath), ::std::mem::transmute(pbsnapshotspresent), ::std::mem::transmute(plsnapshotcompatibility)).ok()
1933 }
1934 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
SetSnapshotProperty<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param2: ::windows::runtime::IntoParam<'a, super::super::System::Com::VARIANT>>(&self, snapshotid: Param0, esnapshotpropertyid: VSS_SNAPSHOT_PROPERTY_ID, vproperty: Param2) -> ::windows::runtime::Result<()>1935 pub unsafe fn SetSnapshotProperty<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param2: ::windows::runtime::IntoParam<'a, super::super::System::Com::VARIANT>>(&self, snapshotid: Param0, esnapshotpropertyid: VSS_SNAPSHOT_PROPERTY_ID, vproperty: Param2) -> ::windows::runtime::Result<()> {
1936 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), snapshotid.into_param().abi(), ::std::mem::transmute(esnapshotpropertyid), vproperty.into_param().abi()).ok()
1937 }
1938 }
1939 unsafe impl ::windows::runtime::Interface for IVssFileShareSnapshotProvider {
1940 type Vtable = IVssFileShareSnapshotProvider_abi;
1941 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3361955936, 31790, 4575, [140, 74, 8, 0, 32, 12, 154, 102]);
1942 }
1943 impl ::std::convert::From<IVssFileShareSnapshotProvider> for ::windows::runtime::IUnknown {
from(value: IVssFileShareSnapshotProvider) -> Self1944 fn from(value: IVssFileShareSnapshotProvider) -> Self {
1945 unsafe { ::std::mem::transmute(value) }
1946 }
1947 }
1948 impl ::std::convert::From<&IVssFileShareSnapshotProvider> for ::windows::runtime::IUnknown {
from(value: &IVssFileShareSnapshotProvider) -> Self1949 fn from(value: &IVssFileShareSnapshotProvider) -> Self {
1950 ::std::convert::From::from(::std::clone::Clone::clone(value))
1951 }
1952 }
1953 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssFileShareSnapshotProvider {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1954 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1955 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
1956 }
1957 }
1958 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssFileShareSnapshotProvider {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>1959 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
1960 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
1961 }
1962 }
1963 #[repr(C)]
1964 #[doc(hidden)]
1965 pub struct IVssFileShareSnapshotProvider_abi(
1966 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1967 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1968 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
1969 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lcontext: i32) -> ::windows::runtime::HRESULT,
1970 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotid: ::windows::runtime::GUID, pprop: *mut VSS_SNAPSHOT_PROP) -> ::windows::runtime::HRESULT,
1971 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, queriedobjectid: ::windows::runtime::GUID, equeriedobjecttype: VSS_OBJECT_TYPE, ereturnedobjectstype: VSS_OBJECT_TYPE, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
1972 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, sourceobjectid: ::windows::runtime::GUID, esourceobjecttype: VSS_OBJECT_TYPE, bforcedelete: super::super::Foundation::BOOL, pldeletedsnapshots: *mut i32, pnondeletedsnapshotid: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1973 #[cfg(not(feature = "Win32_Foundation"))] usize,
1974 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID, snapshotid: ::windows::runtime::GUID, pwszsharepath: *const u16, lnewcontext: i32, providerid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
1975 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszsharepath: *const u16, pbsupportedbythisprovider: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
1976 #[cfg(not(feature = "Win32_Foundation"))] usize,
1977 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszsharepath: *const u16, pbsnapshotspresent: *mut super::super::Foundation::BOOL, plsnapshotcompatibility: *mut i32) -> ::windows::runtime::HRESULT,
1978 #[cfg(not(feature = "Win32_Foundation"))] usize,
1979 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotid: ::windows::runtime::GUID, esnapshotpropertyid: VSS_SNAPSHOT_PROPERTY_ID, vproperty: ::std::mem::ManuallyDrop<super::super::System::Com::VARIANT>) -> ::windows::runtime::HRESULT,
1980 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", 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 IVssHardwareSnapshotProvider(::windows::runtime::IUnknown);
1985 impl IVssHardwareSnapshotProvider {
1986 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
AreLunsSupported(&self, lluncount: i32, lcontext: i32, rgwszdevices: *const *const u16, pluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>1987 pub unsafe fn AreLunsSupported(&self, lluncount: i32, lcontext: i32, rgwszdevices: *const *const u16, pluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
1988 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(lluncount), ::std::mem::transmute(lcontext), ::std::mem::transmute(rgwszdevices), ::std::mem::transmute(pluninformation), ::std::mem::transmute(pbissupported)).ok()
1989 }
1990 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
FillInLunInfo(&self, wszdevicename: *const u16, pluninfo: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>1991 pub unsafe fn FillInLunInfo(&self, wszdevicename: *const u16, pluninfo: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
1992 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(wszdevicename), ::std::mem::transmute(pluninfo), ::std::mem::transmute(pbissupported)).ok()
1993 }
1994 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
BeginPrepareSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, snapshotid: Param1, lcontext: i32, lluncount: i32, rgdevicenames: *const *const u16, rgluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()>1995 pub unsafe fn BeginPrepareSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, snapshotid: Param1, lcontext: i32, lluncount: i32, rgdevicenames: *const *const u16, rgluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()> {
1996 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi(), snapshotid.into_param().abi(), ::std::mem::transmute(lcontext), ::std::mem::transmute(lluncount), ::std::mem::transmute(rgdevicenames), ::std::mem::transmute(rgluninformation)).ok()
1997 }
1998 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
GetTargetLuns(&self, lluncount: i32, rgdevicenames: *const *const u16, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, rgdestinationluns: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()>1999 pub unsafe fn GetTargetLuns(&self, lluncount: i32, rgdevicenames: *const *const u16, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, rgdestinationluns: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()> {
2000 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(lluncount), ::std::mem::transmute(rgdevicenames), ::std::mem::transmute(rgsourceluns), ::std::mem::transmute(rgdestinationluns)).ok()
2001 }
2002 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
LocateLuns(&self, lluncount: i32, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()>2003 pub unsafe fn LocateLuns(&self, lluncount: i32, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()> {
2004 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(lluncount), ::std::mem::transmute(rgsourceluns)).ok()
2005 }
2006 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
OnLunEmpty(&self, wszdevicename: *const u16, pinformation: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()>2007 pub unsafe fn OnLunEmpty(&self, wszdevicename: *const u16, pinformation: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()> {
2008 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(wszdevicename), ::std::mem::transmute(pinformation)).ok()
2009 }
2010 }
2011 unsafe impl ::windows::runtime::Interface for IVssHardwareSnapshotProvider {
2012 type Vtable = IVssHardwareSnapshotProvider_abi;
2013 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2509480279, 17641, 17220, [187, 235, 68, 251, 249, 176, 107, 16]);
2014 }
2015 impl ::std::convert::From<IVssHardwareSnapshotProvider> for ::windows::runtime::IUnknown {
from(value: IVssHardwareSnapshotProvider) -> Self2016 fn from(value: IVssHardwareSnapshotProvider) -> Self {
2017 unsafe { ::std::mem::transmute(value) }
2018 }
2019 }
2020 impl ::std::convert::From<&IVssHardwareSnapshotProvider> for ::windows::runtime::IUnknown {
from(value: &IVssHardwareSnapshotProvider) -> Self2021 fn from(value: &IVssHardwareSnapshotProvider) -> Self {
2022 ::std::convert::From::from(::std::clone::Clone::clone(value))
2023 }
2024 }
2025 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssHardwareSnapshotProvider {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2026 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2027 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2028 }
2029 }
2030 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssHardwareSnapshotProvider {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2031 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2032 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2033 }
2034 }
2035 #[repr(C)]
2036 #[doc(hidden)]
2037 pub struct IVssHardwareSnapshotProvider_abi(
2038 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2039 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2040 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2041 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lluncount: i32, lcontext: i32, rgwszdevices: *const *const u16, pluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
2042 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2043 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszdevicename: *const u16, pluninfo: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
2044 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2045 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID, snapshotid: ::windows::runtime::GUID, lcontext: i32, lluncount: i32, rgdevicenames: *const *const u16, rgluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::HRESULT,
2046 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2047 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lluncount: i32, rgdevicenames: *const *const u16, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, rgdestinationluns: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::HRESULT,
2048 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2049 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lluncount: i32, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::HRESULT,
2050 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2051 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszdevicename: *const u16, pinformation: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::HRESULT,
2052 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2053 );
2054 #[repr(transparent)]
2055 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2056 pub struct IVssHardwareSnapshotProviderEx(::windows::runtime::IUnknown);
2057 impl IVssHardwareSnapshotProviderEx {
2058 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
AreLunsSupported(&self, lluncount: i32, lcontext: i32, rgwszdevices: *const *const u16, pluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>2059 pub unsafe fn AreLunsSupported(&self, lluncount: i32, lcontext: i32, rgwszdevices: *const *const u16, pluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
2060 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(lluncount), ::std::mem::transmute(lcontext), ::std::mem::transmute(rgwszdevices), ::std::mem::transmute(pluninformation), ::std::mem::transmute(pbissupported)).ok()
2061 }
2062 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
FillInLunInfo(&self, wszdevicename: *const u16, pluninfo: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()>2063 pub unsafe fn FillInLunInfo(&self, wszdevicename: *const u16, pluninfo: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::Result<()> {
2064 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(wszdevicename), ::std::mem::transmute(pluninfo), ::std::mem::transmute(pbissupported)).ok()
2065 }
2066 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
BeginPrepareSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, snapshotid: Param1, lcontext: i32, lluncount: i32, rgdevicenames: *const *const u16, rgluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()>2067 pub unsafe fn BeginPrepareSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, snapshotid: Param1, lcontext: i32, lluncount: i32, rgdevicenames: *const *const u16, rgluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()> {
2068 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi(), snapshotid.into_param().abi(), ::std::mem::transmute(lcontext), ::std::mem::transmute(lluncount), ::std::mem::transmute(rgdevicenames), ::std::mem::transmute(rgluninformation)).ok()
2069 }
2070 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
GetTargetLuns(&self, lluncount: i32, rgdevicenames: *const *const u16, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, rgdestinationluns: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()>2071 pub unsafe fn GetTargetLuns(&self, lluncount: i32, rgdevicenames: *const *const u16, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, rgdestinationluns: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()> {
2072 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), ::std::mem::transmute(lluncount), ::std::mem::transmute(rgdevicenames), ::std::mem::transmute(rgsourceluns), ::std::mem::transmute(rgdestinationluns)).ok()
2073 }
2074 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
LocateLuns(&self, lluncount: i32, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()>2075 pub unsafe fn LocateLuns(&self, lluncount: i32, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()> {
2076 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), ::std::mem::transmute(lluncount), ::std::mem::transmute(rgsourceluns)).ok()
2077 }
2078 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
OnLunEmpty(&self, wszdevicename: *const u16, pinformation: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()>2079 pub unsafe fn OnLunEmpty(&self, wszdevicename: *const u16, pinformation: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::Result<()> {
2080 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(wszdevicename), ::std::mem::transmute(pinformation)).ok()
2081 }
GetProviderCapabilities(&self) -> ::windows::runtime::Result<u64>2082 pub unsafe fn GetProviderCapabilities(&self) -> ::windows::runtime::Result<u64> {
2083 let mut result__: <u64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2084 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u64>(result__)
2085 }
2086 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
OnLunStateChange(&self, psnapshotluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, poriginalluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, dwcount: u32, dwflags: u32) -> ::windows::runtime::Result<()>2087 pub unsafe fn OnLunStateChange(&self, psnapshotluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, poriginalluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, dwcount: u32, dwflags: u32) -> ::windows::runtime::Result<()> {
2088 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), ::std::mem::transmute(psnapshotluns), ::std::mem::transmute(poriginalluns), ::std::mem::transmute(dwcount), ::std::mem::transmute(dwflags)).ok()
2089 }
2090 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
ResyncLuns(&self, psourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, ptargetluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, dwcount: u32) -> ::windows::runtime::Result<IVssAsync>2091 pub unsafe fn ResyncLuns(&self, psourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, ptargetluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, dwcount: u32) -> ::windows::runtime::Result<IVssAsync> {
2092 let mut result__: <IVssAsync as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2093 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), ::std::mem::transmute(psourceluns), ::std::mem::transmute(ptargetluns), ::std::mem::transmute(dwcount), &mut result__).from_abi::<IVssAsync>(result__)
2094 }
2095 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))]
OnReuseLuns(&self, psnapshotluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, poriginalluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, dwcount: u32) -> ::windows::runtime::Result<()>2096 pub unsafe fn OnReuseLuns(&self, psnapshotluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, poriginalluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, dwcount: u32) -> ::windows::runtime::Result<()> {
2097 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(psnapshotluns), ::std::mem::transmute(poriginalluns), ::std::mem::transmute(dwcount)).ok()
2098 }
2099 }
2100 unsafe impl ::windows::runtime::Interface for IVssHardwareSnapshotProviderEx {
2101 type Vtable = IVssHardwareSnapshotProviderEx_abi;
2102 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(2136713509, 52657, 19729, [167, 31, 51, 158, 183, 231, 9, 253]);
2103 }
2104 impl ::std::convert::From<IVssHardwareSnapshotProviderEx> for ::windows::runtime::IUnknown {
from(value: IVssHardwareSnapshotProviderEx) -> Self2105 fn from(value: IVssHardwareSnapshotProviderEx) -> Self {
2106 unsafe { ::std::mem::transmute(value) }
2107 }
2108 }
2109 impl ::std::convert::From<&IVssHardwareSnapshotProviderEx> for ::windows::runtime::IUnknown {
from(value: &IVssHardwareSnapshotProviderEx) -> Self2110 fn from(value: &IVssHardwareSnapshotProviderEx) -> Self {
2111 ::std::convert::From::from(::std::clone::Clone::clone(value))
2112 }
2113 }
2114 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssHardwareSnapshotProviderEx {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2115 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2116 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2117 }
2118 }
2119 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssHardwareSnapshotProviderEx {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2120 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2121 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2122 }
2123 }
2124 impl ::std::convert::From<IVssHardwareSnapshotProviderEx> for IVssHardwareSnapshotProvider {
from(value: IVssHardwareSnapshotProviderEx) -> Self2125 fn from(value: IVssHardwareSnapshotProviderEx) -> Self {
2126 unsafe { ::std::mem::transmute(value) }
2127 }
2128 }
2129 impl ::std::convert::From<&IVssHardwareSnapshotProviderEx> for IVssHardwareSnapshotProvider {
from(value: &IVssHardwareSnapshotProviderEx) -> Self2130 fn from(value: &IVssHardwareSnapshotProviderEx) -> Self {
2131 ::std::convert::From::from(::std::clone::Clone::clone(value))
2132 }
2133 }
2134 impl<'a> ::windows::runtime::IntoParam<'a, IVssHardwareSnapshotProvider> for IVssHardwareSnapshotProviderEx {
into_param(self) -> ::windows::runtime::Param<'a, IVssHardwareSnapshotProvider>2135 fn into_param(self) -> ::windows::runtime::Param<'a, IVssHardwareSnapshotProvider> {
2136 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssHardwareSnapshotProvider>::into(self))
2137 }
2138 }
2139 impl<'a> ::windows::runtime::IntoParam<'a, IVssHardwareSnapshotProvider> for &IVssHardwareSnapshotProviderEx {
into_param(self) -> ::windows::runtime::Param<'a, IVssHardwareSnapshotProvider>2140 fn into_param(self) -> ::windows::runtime::Param<'a, IVssHardwareSnapshotProvider> {
2141 ::windows::runtime::Param::Owned(::std::convert::Into::<IVssHardwareSnapshotProvider>::into(::std::clone::Clone::clone(self)))
2142 }
2143 }
2144 #[repr(C)]
2145 #[doc(hidden)]
2146 pub struct IVssHardwareSnapshotProviderEx_abi(
2147 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2148 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2149 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2150 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lluncount: i32, lcontext: i32, rgwszdevices: *const *const u16, pluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
2151 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2152 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszdevicename: *const u16, pluninfo: *mut super::VirtualDiskService::VDS_LUN_INFORMATION, pbissupported: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
2153 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2154 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID, snapshotid: ::windows::runtime::GUID, lcontext: i32, lluncount: i32, rgdevicenames: *const *const u16, rgluninformation: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::HRESULT,
2155 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2156 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lluncount: i32, rgdevicenames: *const *const u16, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, rgdestinationluns: *mut super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::HRESULT,
2157 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2158 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lluncount: i32, rgsourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::HRESULT,
2159 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2160 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszdevicename: *const u16, pinformation: *const super::VirtualDiskService::VDS_LUN_INFORMATION) -> ::windows::runtime::HRESULT,
2161 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2162 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, plloriginalcapabilitymask: *mut u64) -> ::windows::runtime::HRESULT,
2163 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psnapshotluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, poriginalluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, dwcount: u32, dwflags: u32) -> ::windows::runtime::HRESULT,
2164 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2165 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psourceluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, ptargetluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, dwcount: u32, ppasync: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2166 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2167 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, psnapshotluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, poriginalluns: *const super::VirtualDiskService::VDS_LUN_INFORMATION, dwcount: u32) -> ::windows::runtime::HRESULT,
2168 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_Storage_VirtualDiskService")))] usize,
2169 );
2170 #[repr(transparent)]
2171 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2172 pub struct IVssProviderCreateSnapshotSet(::windows::runtime::IUnknown);
2173 impl IVssProviderCreateSnapshotSet {
EndPrepareSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()>2174 pub unsafe fn EndPrepareSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()> {
2175 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi()).ok()
2176 }
PreCommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()>2177 pub unsafe fn PreCommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()> {
2178 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi()).ok()
2179 }
CommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()>2180 pub unsafe fn CommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()> {
2181 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi()).ok()
2182 }
PostCommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, lsnapshotscount: i32) -> ::windows::runtime::Result<()>2183 pub unsafe fn PostCommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, lsnapshotscount: i32) -> ::windows::runtime::Result<()> {
2184 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi(), ::std::mem::transmute(lsnapshotscount)).ok()
2185 }
PreFinalCommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()>2186 pub unsafe fn PreFinalCommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()> {
2187 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi()).ok()
2188 }
PostFinalCommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()>2189 pub unsafe fn PostFinalCommitSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()> {
2190 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi()).ok()
2191 }
AbortSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()>2192 pub unsafe fn AbortSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0) -> ::windows::runtime::Result<()> {
2193 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi()).ok()
2194 }
2195 }
2196 unsafe impl ::windows::runtime::Interface for IVssProviderCreateSnapshotSet {
2197 type Vtable = IVssProviderCreateSnapshotSet_abi;
2198 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1602834011, 7737, 18296, [142, 35, 154, 186, 217, 240, 224, 140]);
2199 }
2200 impl ::std::convert::From<IVssProviderCreateSnapshotSet> for ::windows::runtime::IUnknown {
from(value: IVssProviderCreateSnapshotSet) -> Self2201 fn from(value: IVssProviderCreateSnapshotSet) -> Self {
2202 unsafe { ::std::mem::transmute(value) }
2203 }
2204 }
2205 impl ::std::convert::From<&IVssProviderCreateSnapshotSet> for ::windows::runtime::IUnknown {
from(value: &IVssProviderCreateSnapshotSet) -> Self2206 fn from(value: &IVssProviderCreateSnapshotSet) -> Self {
2207 ::std::convert::From::from(::std::clone::Clone::clone(value))
2208 }
2209 }
2210 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssProviderCreateSnapshotSet {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2211 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2212 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2213 }
2214 }
2215 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssProviderCreateSnapshotSet {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2216 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2217 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2218 }
2219 }
2220 #[repr(C)]
2221 #[doc(hidden)]
2222 pub struct IVssProviderCreateSnapshotSet_abi(
2223 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2224 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2225 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2226 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2227 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2228 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2229 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID, lsnapshotscount: i32) -> ::windows::runtime::HRESULT,
2230 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2231 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2232 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2233 );
2234 #[repr(transparent)]
2235 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2236 pub struct IVssProviderNotifications(::windows::runtime::IUnknown);
2237 impl IVssProviderNotifications {
OnLoad<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pcallback: Param0) -> ::windows::runtime::Result<()>2238 pub unsafe fn OnLoad<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown>>(&self, pcallback: Param0) -> ::windows::runtime::Result<()> {
2239 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), pcallback.into_param().abi()).ok()
2240 }
2241 #[cfg(feature = "Win32_Foundation")]
OnUnload<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, bforceunload: Param0) -> ::windows::runtime::Result<()>2242 pub unsafe fn OnUnload<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, bforceunload: Param0) -> ::windows::runtime::Result<()> {
2243 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), bforceunload.into_param().abi()).ok()
2244 }
2245 }
2246 unsafe impl ::windows::runtime::Interface for IVssProviderNotifications {
2247 type Vtable = IVssProviderNotifications_abi;
2248 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3848376351, 933, 19198, [134, 208, 114, 186, 238, 206, 112, 4]);
2249 }
2250 impl ::std::convert::From<IVssProviderNotifications> for ::windows::runtime::IUnknown {
from(value: IVssProviderNotifications) -> Self2251 fn from(value: IVssProviderNotifications) -> Self {
2252 unsafe { ::std::mem::transmute(value) }
2253 }
2254 }
2255 impl ::std::convert::From<&IVssProviderNotifications> for ::windows::runtime::IUnknown {
from(value: &IVssProviderNotifications) -> Self2256 fn from(value: &IVssProviderNotifications) -> Self {
2257 ::std::convert::From::from(::std::clone::Clone::clone(value))
2258 }
2259 }
2260 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssProviderNotifications {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2261 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2262 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2263 }
2264 }
2265 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssProviderNotifications {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2266 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2267 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2268 }
2269 }
2270 #[repr(C)]
2271 #[doc(hidden)]
2272 pub struct IVssProviderNotifications_abi(
2273 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2274 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2275 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2276 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pcallback: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2277 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, bforceunload: super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
2278 #[cfg(not(feature = "Win32_Foundation"))] usize,
2279 );
2280 #[repr(transparent)]
2281 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2282 pub struct IVssSnapshotMgmt(::windows::runtime::IUnknown);
2283 impl IVssSnapshotMgmt {
GetProviderMgmtInterface<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0, interfaceid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<::windows::runtime::IUnknown>2284 pub unsafe fn GetProviderMgmtInterface<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0, interfaceid: *const ::windows::runtime::GUID) -> ::windows::runtime::Result<::windows::runtime::IUnknown> {
2285 let mut result__: <::windows::runtime::IUnknown as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2286 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), providerid.into_param().abi(), ::std::mem::transmute(interfaceid), &mut result__).from_abi::<::windows::runtime::IUnknown>(result__)
2287 }
QueryVolumesSupportedForSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0, lcontext: i32) -> ::windows::runtime::Result<IVssEnumMgmtObject>2288 pub unsafe fn QueryVolumesSupportedForSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, providerid: Param0, lcontext: i32) -> ::windows::runtime::Result<IVssEnumMgmtObject> {
2289 let mut result__: <IVssEnumMgmtObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2290 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), providerid.into_param().abi(), ::std::mem::transmute(lcontext), &mut result__).from_abi::<IVssEnumMgmtObject>(result__)
2291 }
QuerySnapshotsByVolume<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, pwszvolumename: *const u16, providerid: Param1) -> ::windows::runtime::Result<IVssEnumObject>2292 pub unsafe fn QuerySnapshotsByVolume<'a, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, pwszvolumename: *const u16, providerid: Param1) -> ::windows::runtime::Result<IVssEnumObject> {
2293 let mut result__: <IVssEnumObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2294 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), providerid.into_param().abi(), &mut result__).from_abi::<IVssEnumObject>(result__)
2295 }
2296 }
2297 unsafe impl ::windows::runtime::Interface for IVssSnapshotMgmt {
2298 type Vtable = IVssSnapshotMgmt_abi;
2299 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(4202559305, 26343, 18822, [162, 127, 226, 240, 74, 229, 55, 114]);
2300 }
2301 impl ::std::convert::From<IVssSnapshotMgmt> for ::windows::runtime::IUnknown {
from(value: IVssSnapshotMgmt) -> Self2302 fn from(value: IVssSnapshotMgmt) -> Self {
2303 unsafe { ::std::mem::transmute(value) }
2304 }
2305 }
2306 impl ::std::convert::From<&IVssSnapshotMgmt> for ::windows::runtime::IUnknown {
from(value: &IVssSnapshotMgmt) -> Self2307 fn from(value: &IVssSnapshotMgmt) -> Self {
2308 ::std::convert::From::from(::std::clone::Clone::clone(value))
2309 }
2310 }
2311 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssSnapshotMgmt {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2312 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2313 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2314 }
2315 }
2316 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssSnapshotMgmt {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2317 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2318 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2319 }
2320 }
2321 #[repr(C)]
2322 #[doc(hidden)]
2323 pub struct IVssSnapshotMgmt_abi(
2324 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2325 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2326 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2327 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, providerid: ::windows::runtime::GUID, interfaceid: *const ::windows::runtime::GUID, ppitf: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2328 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, providerid: ::windows::runtime::GUID, lcontext: i32, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2329 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, providerid: ::windows::runtime::GUID, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2330 );
2331 #[repr(transparent)]
2332 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2333 pub struct IVssSnapshotMgmt2(::windows::runtime::IUnknown);
2334 impl IVssSnapshotMgmt2 {
GetMinDiffAreaSize(&self) -> ::windows::runtime::Result<i64>2335 pub unsafe fn GetMinDiffAreaSize(&self) -> ::windows::runtime::Result<i64> {
2336 let mut result__: <i64 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2337 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<i64>(result__)
2338 }
2339 }
2340 unsafe impl ::windows::runtime::Interface for IVssSnapshotMgmt2 {
2341 type Vtable = IVssSnapshotMgmt2_abi;
2342 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(258075705, 65154, 17906, [163, 240, 118, 139, 93, 66, 113, 2]);
2343 }
2344 impl ::std::convert::From<IVssSnapshotMgmt2> for ::windows::runtime::IUnknown {
from(value: IVssSnapshotMgmt2) -> Self2345 fn from(value: IVssSnapshotMgmt2) -> Self {
2346 unsafe { ::std::mem::transmute(value) }
2347 }
2348 }
2349 impl ::std::convert::From<&IVssSnapshotMgmt2> for ::windows::runtime::IUnknown {
from(value: &IVssSnapshotMgmt2) -> Self2350 fn from(value: &IVssSnapshotMgmt2) -> Self {
2351 ::std::convert::From::from(::std::clone::Clone::clone(value))
2352 }
2353 }
2354 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssSnapshotMgmt2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2355 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2356 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2357 }
2358 }
2359 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssSnapshotMgmt2 {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2360 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2361 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2362 }
2363 }
2364 #[repr(C)]
2365 #[doc(hidden)]
2366 pub struct IVssSnapshotMgmt2_abi(
2367 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2368 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2369 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2370 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pllmindiffareasize: *mut i64) -> ::windows::runtime::HRESULT,
2371 );
2372 #[repr(transparent)]
2373 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2374 pub struct IVssSoftwareSnapshotProvider(::windows::runtime::IUnknown);
2375 impl IVssSoftwareSnapshotProvider {
SetContext(&self, lcontext: i32) -> ::windows::runtime::Result<()>2376 pub unsafe fn SetContext(&self, lcontext: i32) -> ::windows::runtime::Result<()> {
2377 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(lcontext)).ok()
2378 }
GetSnapshotProperties<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<VSS_SNAPSHOT_PROP>2379 pub unsafe fn GetSnapshotProperties<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<VSS_SNAPSHOT_PROP> {
2380 let mut result__: <VSS_SNAPSHOT_PROP as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2381 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), snapshotid.into_param().abi(), &mut result__).from_abi::<VSS_SNAPSHOT_PROP>(result__)
2382 }
Query<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, queriedobjectid: Param0, equeriedobjecttype: VSS_OBJECT_TYPE, ereturnedobjectstype: VSS_OBJECT_TYPE) -> ::windows::runtime::Result<IVssEnumObject>2383 pub unsafe fn Query<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, queriedobjectid: Param0, equeriedobjecttype: VSS_OBJECT_TYPE, ereturnedobjectstype: VSS_OBJECT_TYPE) -> ::windows::runtime::Result<IVssEnumObject> {
2384 let mut result__: <IVssEnumObject as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2385 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), queriedobjectid.into_param().abi(), ::std::mem::transmute(equeriedobjecttype), ::std::mem::transmute(ereturnedobjectstype), &mut result__).from_abi::<IVssEnumObject>(result__)
2386 }
2387 #[cfg(feature = "Win32_Foundation")]
DeleteSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, sourceobjectid: Param0, esourceobjecttype: VSS_OBJECT_TYPE, bforcedelete: Param2, pldeletedsnapshots: *mut i32, pnondeletedsnapshotid: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()>2388 pub unsafe fn DeleteSnapshots<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::BOOL>>(&self, sourceobjectid: Param0, esourceobjecttype: VSS_OBJECT_TYPE, bforcedelete: Param2, pldeletedsnapshots: *mut i32, pnondeletedsnapshotid: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()> {
2389 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), sourceobjectid.into_param().abi(), ::std::mem::transmute(esourceobjecttype), bforcedelete.into_param().abi(), ::std::mem::transmute(pldeletedsnapshots), ::std::mem::transmute(pnondeletedsnapshotid)).ok()
2390 }
BeginPrepareSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, snapshotid: Param1, pwszvolumename: *const u16, lnewcontext: i32) -> ::windows::runtime::Result<()>2391 pub unsafe fn BeginPrepareSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotsetid: Param0, snapshotid: Param1, pwszvolumename: *const u16, lnewcontext: i32) -> ::windows::runtime::Result<()> {
2392 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), snapshotsetid.into_param().abi(), snapshotid.into_param().abi(), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(lnewcontext)).ok()
2393 }
2394 #[cfg(feature = "Win32_Foundation")]
IsVolumeSupported(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<super::super::Foundation::BOOL>2395 pub unsafe fn IsVolumeSupported(&self, pwszvolumename: *const u16) -> ::windows::runtime::Result<super::super::Foundation::BOOL> {
2396 let mut result__: <super::super::Foundation::BOOL as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2397 (::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), &mut result__).from_abi::<super::super::Foundation::BOOL>(result__)
2398 }
2399 #[cfg(feature = "Win32_Foundation")]
IsVolumeSnapshotted(&self, pwszvolumename: *const u16, pbsnapshotspresent: *mut super::super::Foundation::BOOL, plsnapshotcompatibility: *mut i32) -> ::windows::runtime::Result<()>2400 pub unsafe fn IsVolumeSnapshotted(&self, pwszvolumename: *const u16, pbsnapshotspresent: *mut super::super::Foundation::BOOL, plsnapshotcompatibility: *mut i32) -> ::windows::runtime::Result<()> {
2401 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolumename), ::std::mem::transmute(pbsnapshotspresent), ::std::mem::transmute(plsnapshotcompatibility)).ok()
2402 }
2403 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))]
SetSnapshotProperty<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param2: ::windows::runtime::IntoParam<'a, super::super::System::Com::VARIANT>>(&self, snapshotid: Param0, esnapshotpropertyid: VSS_SNAPSHOT_PROPERTY_ID, vproperty: Param2) -> ::windows::runtime::Result<()>2404 pub unsafe fn SetSnapshotProperty<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param2: ::windows::runtime::IntoParam<'a, super::super::System::Com::VARIANT>>(&self, snapshotid: Param0, esnapshotpropertyid: VSS_SNAPSHOT_PROPERTY_ID, vproperty: Param2) -> ::windows::runtime::Result<()> {
2405 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), snapshotid.into_param().abi(), ::std::mem::transmute(esnapshotpropertyid), vproperty.into_param().abi()).ok()
2406 }
RevertToSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<()>2407 pub unsafe fn RevertToSnapshot<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, snapshotid: Param0) -> ::windows::runtime::Result<()> {
2408 (::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self), snapshotid.into_param().abi()).ok()
2409 }
QueryRevertStatus(&self, pwszvolume: *const u16) -> ::windows::runtime::Result<IVssAsync>2410 pub unsafe fn QueryRevertStatus(&self, pwszvolume: *const u16) -> ::windows::runtime::Result<IVssAsync> {
2411 let mut result__: <IVssAsync as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2412 (::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwszvolume), &mut result__).from_abi::<IVssAsync>(result__)
2413 }
2414 }
2415 unsafe impl ::windows::runtime::Interface for IVssSoftwareSnapshotProvider {
2416 type Vtable = IVssSoftwareSnapshotProvider_abi;
2417 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(1620972094, 11354, 17619, [143, 1, 11, 29, 154, 71, 209, 255]);
2418 }
2419 impl ::std::convert::From<IVssSoftwareSnapshotProvider> for ::windows::runtime::IUnknown {
from(value: IVssSoftwareSnapshotProvider) -> Self2420 fn from(value: IVssSoftwareSnapshotProvider) -> Self {
2421 unsafe { ::std::mem::transmute(value) }
2422 }
2423 }
2424 impl ::std::convert::From<&IVssSoftwareSnapshotProvider> for ::windows::runtime::IUnknown {
from(value: &IVssSoftwareSnapshotProvider) -> Self2425 fn from(value: &IVssSoftwareSnapshotProvider) -> Self {
2426 ::std::convert::From::from(::std::clone::Clone::clone(value))
2427 }
2428 }
2429 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssSoftwareSnapshotProvider {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2430 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2431 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2432 }
2433 }
2434 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssSoftwareSnapshotProvider {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2435 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2436 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2437 }
2438 }
2439 #[repr(C)]
2440 #[doc(hidden)]
2441 pub struct IVssSoftwareSnapshotProvider_abi(
2442 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2443 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2444 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2445 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, lcontext: i32) -> ::windows::runtime::HRESULT,
2446 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotid: ::windows::runtime::GUID, pprop: *mut VSS_SNAPSHOT_PROP) -> ::windows::runtime::HRESULT,
2447 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, queriedobjectid: ::windows::runtime::GUID, equeriedobjecttype: VSS_OBJECT_TYPE, ereturnedobjectstype: VSS_OBJECT_TYPE, ppenum: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2448 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, sourceobjectid: ::windows::runtime::GUID, esourceobjecttype: VSS_OBJECT_TYPE, bforcedelete: super::super::Foundation::BOOL, pldeletedsnapshots: *mut i32, pnondeletedsnapshotid: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2449 #[cfg(not(feature = "Win32_Foundation"))] usize,
2450 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotsetid: ::windows::runtime::GUID, snapshotid: ::windows::runtime::GUID, pwszvolumename: *const u16, lnewcontext: i32) -> ::windows::runtime::HRESULT,
2451 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pbsupportedbythisprovider: *mut super::super::Foundation::BOOL) -> ::windows::runtime::HRESULT,
2452 #[cfg(not(feature = "Win32_Foundation"))] usize,
2453 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolumename: *const u16, pbsnapshotspresent: *mut super::super::Foundation::BOOL, plsnapshotcompatibility: *mut i32) -> ::windows::runtime::HRESULT,
2454 #[cfg(not(feature = "Win32_Foundation"))] usize,
2455 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation"))] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotid: ::windows::runtime::GUID, esnapshotpropertyid: VSS_SNAPSHOT_PROPERTY_ID, vproperty: ::std::mem::ManuallyDrop<super::super::System::Com::VARIANT>) -> ::windows::runtime::HRESULT,
2456 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole_Automation")))] usize,
2457 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, snapshotid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2458 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwszvolume: *const u16, ppasync: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2459 );
2460 #[repr(transparent)]
2461 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2462 pub struct IVssWMDependency(::windows::runtime::IUnknown);
2463 impl IVssWMDependency {
GetWriterId(&self, pwriterid: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()>2464 pub unsafe fn GetWriterId(&self, pwriterid: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()> {
2465 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pwriterid)).ok()
2466 }
2467 #[cfg(feature = "Win32_Foundation")]
GetLogicalPath(&self, pbstrlogicalpath: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>2468 pub unsafe fn GetLogicalPath(&self, pbstrlogicalpath: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
2469 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrlogicalpath)).ok()
2470 }
2471 #[cfg(feature = "Win32_Foundation")]
GetComponentName(&self, pbstrcomponentname: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()>2472 pub unsafe fn GetComponentName(&self, pbstrcomponentname: *mut super::super::Foundation::BSTR) -> ::windows::runtime::Result<()> {
2473 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(pbstrcomponentname)).ok()
2474 }
2475 }
2476 unsafe impl ::windows::runtime::Interface for IVssWMDependency {
2477 type Vtable = IVssWMDependency_abi;
2478 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::zeroed();
2479 }
2480 impl ::std::convert::From<IVssWMDependency> for ::windows::runtime::IUnknown {
from(value: IVssWMDependency) -> Self2481 fn from(value: IVssWMDependency) -> Self {
2482 unsafe { ::std::mem::transmute(value) }
2483 }
2484 }
2485 impl ::std::convert::From<&IVssWMDependency> for ::windows::runtime::IUnknown {
from(value: &IVssWMDependency) -> Self2486 fn from(value: &IVssWMDependency) -> Self {
2487 ::std::convert::From::from(::std::clone::Clone::clone(value))
2488 }
2489 }
2490 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssWMDependency {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2491 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2492 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2493 }
2494 }
2495 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssWMDependency {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2496 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2497 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2498 }
2499 }
2500 #[repr(C)]
2501 #[doc(hidden)]
2502 pub struct IVssWMDependency_abi(
2503 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2504 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2505 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2506 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pwriterid: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2507 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrlogicalpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
2508 #[cfg(not(feature = "Win32_Foundation"))] usize,
2509 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrcomponentname: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
2510 #[cfg(not(feature = "Win32_Foundation"))] usize,
2511 );
2512 #[repr(transparent)]
2513 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2514 pub struct IVssWMFiledesc(::windows::runtime::IUnknown);
2515 impl IVssWMFiledesc {
2516 #[cfg(feature = "Win32_Foundation")]
GetPath(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>2517 pub unsafe fn GetPath(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
2518 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2519 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
2520 }
2521 #[cfg(feature = "Win32_Foundation")]
GetFilespec(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>2522 pub unsafe fn GetFilespec(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
2523 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2524 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
2525 }
GetRecursive(&self) -> ::windows::runtime::Result<bool>2526 pub unsafe fn GetRecursive(&self) -> ::windows::runtime::Result<bool> {
2527 let mut result__: <bool as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2528 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), &mut result__).from_abi::<bool>(result__)
2529 }
2530 #[cfg(feature = "Win32_Foundation")]
GetAlternateLocation(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR>2531 pub unsafe fn GetAlternateLocation(&self) -> ::windows::runtime::Result<super::super::Foundation::BSTR> {
2532 let mut result__: <super::super::Foundation::BSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2533 (::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self), &mut result__).from_abi::<super::super::Foundation::BSTR>(result__)
2534 }
GetBackupTypeMask(&self) -> ::windows::runtime::Result<u32>2535 pub unsafe fn GetBackupTypeMask(&self) -> ::windows::runtime::Result<u32> {
2536 let mut result__: <u32 as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2537 (::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self), &mut result__).from_abi::<u32>(result__)
2538 }
2539 }
2540 unsafe impl ::windows::runtime::Interface for IVssWMFiledesc {
2541 type Vtable = IVssWMFiledesc_abi;
2542 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::zeroed();
2543 }
2544 impl ::std::convert::From<IVssWMFiledesc> for ::windows::runtime::IUnknown {
from(value: IVssWMFiledesc) -> Self2545 fn from(value: IVssWMFiledesc) -> Self {
2546 unsafe { ::std::mem::transmute(value) }
2547 }
2548 }
2549 impl ::std::convert::From<&IVssWMFiledesc> for ::windows::runtime::IUnknown {
from(value: &IVssWMFiledesc) -> Self2550 fn from(value: &IVssWMFiledesc) -> Self {
2551 ::std::convert::From::from(::std::clone::Clone::clone(value))
2552 }
2553 }
2554 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssWMFiledesc {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2555 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2556 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2557 }
2558 }
2559 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssWMFiledesc {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2560 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2561 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2562 }
2563 }
2564 #[repr(C)]
2565 #[doc(hidden)]
2566 pub struct IVssWMFiledesc_abi(
2567 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2568 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2569 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2570 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrpath: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
2571 #[cfg(not(feature = "Win32_Foundation"))] usize,
2572 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstrfilespec: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
2573 #[cfg(not(feature = "Win32_Foundation"))] usize,
2574 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbrecursive: *mut bool) -> ::windows::runtime::HRESULT,
2575 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pbstralternatelocation: *mut ::std::mem::ManuallyDrop<super::super::Foundation::BSTR>) -> ::windows::runtime::HRESULT,
2576 #[cfg(not(feature = "Win32_Foundation"))] usize,
2577 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pdwtypemask: *mut u32) -> ::windows::runtime::HRESULT,
2578 );
2579 #[repr(transparent)]
2580 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2581 pub struct IVssWriterComponents(::windows::runtime::IUnknown);
2582 impl IVssWriterComponents {
GetComponentCount(&self, pccomponents: *mut u32) -> ::windows::runtime::Result<()>2583 pub unsafe fn GetComponentCount(&self, pccomponents: *mut u32) -> ::windows::runtime::Result<()> {
2584 (::windows::runtime::Interface::vtable(self).3)(::std::mem::transmute_copy(self), ::std::mem::transmute(pccomponents)).ok()
2585 }
GetWriterInfo(&self, pidinstance: *mut ::windows::runtime::GUID, pidwriter: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()>2586 pub unsafe fn GetWriterInfo(&self, pidinstance: *mut ::windows::runtime::GUID, pidwriter: *mut ::windows::runtime::GUID) -> ::windows::runtime::Result<()> {
2587 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(pidinstance), ::std::mem::transmute(pidwriter)).ok()
2588 }
GetComponent(&self, icomponent: u32) -> ::windows::runtime::Result<IVssComponent>2589 pub unsafe fn GetComponent(&self, icomponent: u32) -> ::windows::runtime::Result<IVssComponent> {
2590 let mut result__: <IVssComponent as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2591 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self), ::std::mem::transmute(icomponent), &mut result__).from_abi::<IVssComponent>(result__)
2592 }
2593 }
2594 unsafe impl ::windows::runtime::Interface for IVssWriterComponents {
2595 type Vtable = IVssWriterComponents_abi;
2596 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::zeroed();
2597 }
2598 impl ::std::convert::From<IVssWriterComponents> for ::windows::runtime::IUnknown {
from(value: IVssWriterComponents) -> Self2599 fn from(value: IVssWriterComponents) -> Self {
2600 unsafe { ::std::mem::transmute(value) }
2601 }
2602 }
2603 impl ::std::convert::From<&IVssWriterComponents> for ::windows::runtime::IUnknown {
from(value: &IVssWriterComponents) -> Self2604 fn from(value: &IVssWriterComponents) -> Self {
2605 ::std::convert::From::from(::std::clone::Clone::clone(value))
2606 }
2607 }
2608 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssWriterComponents {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2609 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2610 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2611 }
2612 }
2613 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssWriterComponents {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2614 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2615 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2616 }
2617 }
2618 #[repr(C)]
2619 #[doc(hidden)]
2620 pub struct IVssWriterComponents_abi(
2621 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2622 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2623 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2624 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pccomponents: *mut u32) -> ::windows::runtime::HRESULT,
2625 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, pidinstance: *mut ::windows::runtime::GUID, pidwriter: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2626 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, icomponent: u32, ppcomponent: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2627 );
2628 #[repr(transparent)]
2629 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: clone :: Clone, :: std :: fmt :: Debug)]
2630 pub struct IVssWriterImpl(::windows::runtime::IUnknown);
2631 impl IVssWriterImpl {
2632 #[cfg(feature = "Win32_Foundation")]
Initialize<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>( &self, writerid: Param0, wszwritername: Param1, wszwriterinstancename: Param2, dwmajorversion: u32, dwminorversion: u32, ut: VSS_USAGE_TYPE, st: VSS_SOURCE_TYPE, nlevel: VSS_APPLICATION_LEVEL, dwtimeout: u32, aws: VSS_ALTERNATE_WRITER_STATE, biothrottlingonly: u8, ) -> ::windows::runtime::Result<()>2633 pub unsafe fn Initialize<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(
2634 &self,
2635 writerid: Param0,
2636 wszwritername: Param1,
2637 wszwriterinstancename: Param2,
2638 dwmajorversion: u32,
2639 dwminorversion: u32,
2640 ut: VSS_USAGE_TYPE,
2641 st: VSS_SOURCE_TYPE,
2642 nlevel: VSS_APPLICATION_LEVEL,
2643 dwtimeout: u32,
2644 aws: VSS_ALTERNATE_WRITER_STATE,
2645 biothrottlingonly: u8,
2646 ) -> ::windows::runtime::Result<()> {
2647 (::windows::runtime::Interface::vtable(self).3)(
2648 ::std::mem::transmute_copy(self),
2649 writerid.into_param().abi(),
2650 wszwritername.into_param().abi(),
2651 wszwriterinstancename.into_param().abi(),
2652 ::std::mem::transmute(dwmajorversion),
2653 ::std::mem::transmute(dwminorversion),
2654 ::std::mem::transmute(ut),
2655 ::std::mem::transmute(st),
2656 ::std::mem::transmute(nlevel),
2657 ::std::mem::transmute(dwtimeout),
2658 ::std::mem::transmute(aws),
2659 ::std::mem::transmute(biothrottlingonly),
2660 )
2661 .ok()
2662 }
Subscribe(&self, dwsubscribetimeout: u32, dweventflags: u32) -> ::windows::runtime::Result<()>2663 pub unsafe fn Subscribe(&self, dwsubscribetimeout: u32, dweventflags: u32) -> ::windows::runtime::Result<()> {
2664 (::windows::runtime::Interface::vtable(self).4)(::std::mem::transmute_copy(self), ::std::mem::transmute(dwsubscribetimeout), ::std::mem::transmute(dweventflags)).ok()
2665 }
Unsubscribe(&self) -> ::windows::runtime::Result<()>2666 pub unsafe fn Unsubscribe(&self) -> ::windows::runtime::Result<()> {
2667 (::windows::runtime::Interface::vtable(self).5)(::std::mem::transmute_copy(self)).ok()
2668 }
Uninitialize(&self)2669 pub unsafe fn Uninitialize(&self) {
2670 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).6)(::std::mem::transmute_copy(self)))
2671 }
2672 #[cfg(feature = "Win32_Foundation")]
GetCurrentVolumeArray(&self) -> *mut super::super::Foundation::PWSTR2673 pub unsafe fn GetCurrentVolumeArray(&self) -> *mut super::super::Foundation::PWSTR {
2674 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).7)(::std::mem::transmute_copy(self)))
2675 }
GetCurrentVolumeCount(&self) -> u322676 pub unsafe fn GetCurrentVolumeCount(&self) -> u32 {
2677 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).8)(::std::mem::transmute_copy(self)))
2678 }
2679 #[cfg(feature = "Win32_Foundation")]
GetSnapshotDeviceName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszoriginalvolume: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR>2680 pub unsafe fn GetSnapshotDeviceName<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszoriginalvolume: Param0) -> ::windows::runtime::Result<super::super::Foundation::PWSTR> {
2681 let mut result__: <super::super::Foundation::PWSTR as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2682 (::windows::runtime::Interface::vtable(self).9)(::std::mem::transmute_copy(self), wszoriginalvolume.into_param().abi(), &mut result__).from_abi::<super::super::Foundation::PWSTR>(result__)
2683 }
GetCurrentSnapshotSetId(&self) -> ::windows::runtime::GUID2684 pub unsafe fn GetCurrentSnapshotSetId(&self) -> ::windows::runtime::GUID {
2685 let mut result__: ::windows::runtime::GUID = ::std::default::Default::default();
2686 (::windows::runtime::Interface::vtable(self).10)(::std::mem::transmute_copy(self), &mut result__);
2687 result__
2688 }
GetContext(&self) -> i322689 pub unsafe fn GetContext(&self) -> i32 {
2690 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).11)(::std::mem::transmute_copy(self)))
2691 }
GetCurrentLevel(&self) -> VSS_APPLICATION_LEVEL2692 pub unsafe fn GetCurrentLevel(&self) -> VSS_APPLICATION_LEVEL {
2693 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).12)(::std::mem::transmute_copy(self)))
2694 }
2695 #[cfg(feature = "Win32_Foundation")]
IsPathAffected<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0) -> bool2696 pub unsafe fn IsPathAffected<'a, Param0: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, wszpath: Param0) -> bool {
2697 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).13)(::std::mem::transmute_copy(self), wszpath.into_param().abi()))
2698 }
IsBootableSystemStateBackedUp(&self) -> bool2699 pub unsafe fn IsBootableSystemStateBackedUp(&self) -> bool {
2700 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).14)(::std::mem::transmute_copy(self)))
2701 }
AreComponentsSelected(&self) -> bool2702 pub unsafe fn AreComponentsSelected(&self) -> bool {
2703 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).15)(::std::mem::transmute_copy(self)))
2704 }
GetBackupType(&self) -> VSS_BACKUP_TYPE2705 pub unsafe fn GetBackupType(&self) -> VSS_BACKUP_TYPE {
2706 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).16)(::std::mem::transmute_copy(self)))
2707 }
GetRestoreType(&self) -> VSS_RESTORE_TYPE2708 pub unsafe fn GetRestoreType(&self) -> VSS_RESTORE_TYPE {
2709 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).17)(::std::mem::transmute_copy(self)))
2710 }
SetWriterFailure(&self, hr: ::windows::runtime::HRESULT) -> ::windows::runtime::Result<()>2711 pub unsafe fn SetWriterFailure(&self, hr: ::windows::runtime::HRESULT) -> ::windows::runtime::Result<()> {
2712 (::windows::runtime::Interface::vtable(self).18)(::std::mem::transmute_copy(self), ::std::mem::transmute(hr)).ok()
2713 }
IsPartialFileSupportEnabled(&self) -> bool2714 pub unsafe fn IsPartialFileSupportEnabled(&self) -> bool {
2715 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).19)(::std::mem::transmute_copy(self)))
2716 }
InstallAlternateWriter<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, idwriter: Param0, clsid: Param1) -> ::windows::runtime::Result<()>2717 pub unsafe fn InstallAlternateWriter<'a, Param0: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>, Param1: ::windows::runtime::IntoParam<'a, ::windows::runtime::GUID>>(&self, idwriter: Param0, clsid: Param1) -> ::windows::runtime::Result<()> {
2718 (::windows::runtime::Interface::vtable(self).20)(::std::mem::transmute_copy(self), idwriter.into_param().abi(), clsid.into_param().abi()).ok()
2719 }
GetIdentityInformation(&self) -> *mut IVssExamineWriterMetadata2720 pub unsafe fn GetIdentityInformation(&self) -> *mut IVssExamineWriterMetadata {
2721 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).21)(::std::mem::transmute_copy(self)))
2722 }
2723 #[cfg(feature = "Win32_Foundation")]
SetWriterFailureEx<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, hr: ::windows::runtime::HRESULT, hrapplication: ::windows::runtime::HRESULT, wszapplicationmessage: Param2) -> ::windows::runtime::Result<()>2724 pub unsafe fn SetWriterFailureEx<'a, Param2: ::windows::runtime::IntoParam<'a, super::super::Foundation::PWSTR>>(&self, hr: ::windows::runtime::HRESULT, hrapplication: ::windows::runtime::HRESULT, wszapplicationmessage: Param2) -> ::windows::runtime::Result<()> {
2725 (::windows::runtime::Interface::vtable(self).22)(::std::mem::transmute_copy(self), ::std::mem::transmute(hr), ::std::mem::transmute(hrapplication), wszapplicationmessage.into_param().abi()).ok()
2726 }
GetSessionId(&self) -> ::windows::runtime::Result<::windows::runtime::GUID>2727 pub unsafe fn GetSessionId(&self) -> ::windows::runtime::Result<::windows::runtime::GUID> {
2728 let mut result__: <::windows::runtime::GUID as ::windows::runtime::Abi>::Abi = ::std::mem::zeroed();
2729 (::windows::runtime::Interface::vtable(self).23)(::std::mem::transmute_copy(self), &mut result__).from_abi::<::windows::runtime::GUID>(result__)
2730 }
IsWriterShuttingDown(&self) -> bool2731 pub unsafe fn IsWriterShuttingDown(&self) -> bool {
2732 ::std::mem::transmute((::windows::runtime::Interface::vtable(self).24)(::std::mem::transmute_copy(self)))
2733 }
2734 }
2735 unsafe impl ::windows::runtime::Interface for IVssWriterImpl {
2736 type Vtable = IVssWriterImpl_abi;
2737 const IID: ::windows::runtime::GUID = ::windows::runtime::GUID::zeroed();
2738 }
2739 impl ::std::convert::From<IVssWriterImpl> for ::windows::runtime::IUnknown {
from(value: IVssWriterImpl) -> Self2740 fn from(value: IVssWriterImpl) -> Self {
2741 unsafe { ::std::mem::transmute(value) }
2742 }
2743 }
2744 impl ::std::convert::From<&IVssWriterImpl> for ::windows::runtime::IUnknown {
from(value: &IVssWriterImpl) -> Self2745 fn from(value: &IVssWriterImpl) -> Self {
2746 ::std::convert::From::from(::std::clone::Clone::clone(value))
2747 }
2748 }
2749 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for IVssWriterImpl {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2750 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2751 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(self))
2752 }
2753 }
2754 impl<'a> ::windows::runtime::IntoParam<'a, ::windows::runtime::IUnknown> for &IVssWriterImpl {
into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown>2755 fn into_param(self) -> ::windows::runtime::Param<'a, ::windows::runtime::IUnknown> {
2756 ::windows::runtime::Param::Owned(::std::convert::Into::<::windows::runtime::IUnknown>::into(::std::clone::Clone::clone(self)))
2757 }
2758 }
2759 #[repr(C)]
2760 #[doc(hidden)]
2761 pub struct IVssWriterImpl_abi(
2762 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, iid: &::windows::runtime::GUID, interface: *mut ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2763 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2764 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2765 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, writerid: ::windows::runtime::GUID, wszwritername: super::super::Foundation::PWSTR, wszwriterinstancename: super::super::Foundation::PWSTR, dwmajorversion: u32, dwminorversion: u32, ut: VSS_USAGE_TYPE, st: VSS_SOURCE_TYPE, nlevel: VSS_APPLICATION_LEVEL, dwtimeout: u32, aws: VSS_ALTERNATE_WRITER_STATE, biothrottlingonly: u8) -> ::windows::runtime::HRESULT,
2766 #[cfg(not(feature = "Win32_Foundation"))] usize,
2767 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, dwsubscribetimeout: u32, dweventflags: u32) -> ::windows::runtime::HRESULT,
2768 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> ::windows::runtime::HRESULT,
2769 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr),
2770 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> *mut super::super::Foundation::PWSTR,
2771 #[cfg(not(feature = "Win32_Foundation"))] usize,
2772 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> u32,
2773 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszoriginalvolume: super::super::Foundation::PWSTR, ppwszsnapshotdevice: *mut super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2774 #[cfg(not(feature = "Win32_Foundation"))] usize,
2775 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, result__: *mut ::windows::runtime::GUID),
2776 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> i32,
2777 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> VSS_APPLICATION_LEVEL,
2778 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, wszpath: super::super::Foundation::PWSTR) -> bool,
2779 #[cfg(not(feature = "Win32_Foundation"))] usize,
2780 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> bool,
2781 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> bool,
2782 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> VSS_BACKUP_TYPE,
2783 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> VSS_RESTORE_TYPE,
2784 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, hr: ::windows::runtime::HRESULT) -> ::windows::runtime::HRESULT,
2785 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> bool,
2786 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, idwriter: ::windows::runtime::GUID, clsid: ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2787 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> *mut IVssExamineWriterMetadata,
2788 #[cfg(feature = "Win32_Foundation")] pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, hr: ::windows::runtime::HRESULT, hrapplication: ::windows::runtime::HRESULT, wszapplicationmessage: super::super::Foundation::PWSTR) -> ::windows::runtime::HRESULT,
2789 #[cfg(not(feature = "Win32_Foundation"))] usize,
2790 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr, idsession: *mut ::windows::runtime::GUID) -> ::windows::runtime::HRESULT,
2791 pub unsafe extern "system" fn(this: ::windows::runtime::RawPtr) -> bool,
2792 );
2793 pub const VSSCoordinator: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(3849956191, 7364, 17588, [190, 217, 222, 9, 145, 255, 6, 35]);
2794 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2795 #[repr(transparent)]
2796 pub struct VSS_ALTERNATE_WRITER_STATE(pub i32);
2797 pub const VSS_AWS_UNDEFINED: VSS_ALTERNATE_WRITER_STATE = VSS_ALTERNATE_WRITER_STATE(0i32);
2798 pub const VSS_AWS_NO_ALTERNATE_WRITER: VSS_ALTERNATE_WRITER_STATE = VSS_ALTERNATE_WRITER_STATE(1i32);
2799 pub const VSS_AWS_ALTERNATE_WRITER_EXISTS: VSS_ALTERNATE_WRITER_STATE = VSS_ALTERNATE_WRITER_STATE(2i32);
2800 pub const VSS_AWS_THIS_IS_ALTERNATE_WRITER: VSS_ALTERNATE_WRITER_STATE = VSS_ALTERNATE_WRITER_STATE(3i32);
2801 impl ::std::convert::From<i32> for VSS_ALTERNATE_WRITER_STATE {
from(value: i32) -> Self2802 fn from(value: i32) -> Self {
2803 Self(value)
2804 }
2805 }
2806 unsafe impl ::windows::runtime::Abi for VSS_ALTERNATE_WRITER_STATE {
2807 type Abi = Self;
2808 type DefaultType = Self;
2809 }
2810 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2811 #[repr(transparent)]
2812 pub struct VSS_APPLICATION_LEVEL(pub i32);
2813 pub const VSS_APP_UNKNOWN: VSS_APPLICATION_LEVEL = VSS_APPLICATION_LEVEL(0i32);
2814 pub const VSS_APP_SYSTEM: VSS_APPLICATION_LEVEL = VSS_APPLICATION_LEVEL(1i32);
2815 pub const VSS_APP_BACK_END: VSS_APPLICATION_LEVEL = VSS_APPLICATION_LEVEL(2i32);
2816 pub const VSS_APP_FRONT_END: VSS_APPLICATION_LEVEL = VSS_APPLICATION_LEVEL(3i32);
2817 pub const VSS_APP_SYSTEM_RM: VSS_APPLICATION_LEVEL = VSS_APPLICATION_LEVEL(4i32);
2818 pub const VSS_APP_AUTO: VSS_APPLICATION_LEVEL = VSS_APPLICATION_LEVEL(-1i32);
2819 impl ::std::convert::From<i32> for VSS_APPLICATION_LEVEL {
from(value: i32) -> Self2820 fn from(value: i32) -> Self {
2821 Self(value)
2822 }
2823 }
2824 unsafe impl ::windows::runtime::Abi for VSS_APPLICATION_LEVEL {
2825 type Abi = Self;
2826 type DefaultType = Self;
2827 }
2828 pub const VSS_ASSOC_NO_MAX_SPACE: i32 = -1i32;
2829 pub const VSS_ASSOC_REMOVE: u32 = 0u32;
2830 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2831 #[repr(transparent)]
2832 pub struct VSS_BACKUP_SCHEMA(pub i32);
2833 pub const VSS_BS_UNDEFINED: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(0i32);
2834 pub const VSS_BS_DIFFERENTIAL: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(1i32);
2835 pub const VSS_BS_INCREMENTAL: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(2i32);
2836 pub const VSS_BS_EXCLUSIVE_INCREMENTAL_DIFFERENTIAL: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(4i32);
2837 pub const VSS_BS_LOG: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(8i32);
2838 pub const VSS_BS_COPY: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(16i32);
2839 pub const VSS_BS_TIMESTAMPED: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(32i32);
2840 pub const VSS_BS_LAST_MODIFY: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(64i32);
2841 pub const VSS_BS_LSN: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(128i32);
2842 pub const VSS_BS_WRITER_SUPPORTS_NEW_TARGET: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(256i32);
2843 pub const VSS_BS_WRITER_SUPPORTS_RESTORE_WITH_MOVE: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(512i32);
2844 pub const VSS_BS_INDEPENDENT_SYSTEM_STATE: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(1024i32);
2845 pub const VSS_BS_ROLLFORWARD_RESTORE: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(4096i32);
2846 pub const VSS_BS_RESTORE_RENAME: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(8192i32);
2847 pub const VSS_BS_AUTHORITATIVE_RESTORE: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(16384i32);
2848 pub const VSS_BS_WRITER_SUPPORTS_PARALLEL_RESTORES: VSS_BACKUP_SCHEMA = VSS_BACKUP_SCHEMA(32768i32);
2849 impl ::std::convert::From<i32> for VSS_BACKUP_SCHEMA {
from(value: i32) -> Self2850 fn from(value: i32) -> Self {
2851 Self(value)
2852 }
2853 }
2854 unsafe impl ::windows::runtime::Abi for VSS_BACKUP_SCHEMA {
2855 type Abi = Self;
2856 type DefaultType = Self;
2857 }
2858 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2859 #[repr(transparent)]
2860 pub struct VSS_BACKUP_TYPE(pub i32);
2861 pub const VSS_BT_UNDEFINED: VSS_BACKUP_TYPE = VSS_BACKUP_TYPE(0i32);
2862 pub const VSS_BT_FULL: VSS_BACKUP_TYPE = VSS_BACKUP_TYPE(1i32);
2863 pub const VSS_BT_INCREMENTAL: VSS_BACKUP_TYPE = VSS_BACKUP_TYPE(2i32);
2864 pub const VSS_BT_DIFFERENTIAL: VSS_BACKUP_TYPE = VSS_BACKUP_TYPE(3i32);
2865 pub const VSS_BT_LOG: VSS_BACKUP_TYPE = VSS_BACKUP_TYPE(4i32);
2866 pub const VSS_BT_COPY: VSS_BACKUP_TYPE = VSS_BACKUP_TYPE(5i32);
2867 pub const VSS_BT_OTHER: VSS_BACKUP_TYPE = VSS_BACKUP_TYPE(6i32);
2868 impl ::std::convert::From<i32> for VSS_BACKUP_TYPE {
from(value: i32) -> Self2869 fn from(value: i32) -> Self {
2870 Self(value)
2871 }
2872 }
2873 unsafe impl ::windows::runtime::Abi for VSS_BACKUP_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 VSS_COMPONENT_FLAGS(pub i32);
2880 pub const VSS_CF_BACKUP_RECOVERY: VSS_COMPONENT_FLAGS = VSS_COMPONENT_FLAGS(1i32);
2881 pub const VSS_CF_APP_ROLLBACK_RECOVERY: VSS_COMPONENT_FLAGS = VSS_COMPONENT_FLAGS(2i32);
2882 pub const VSS_CF_NOT_SYSTEM_STATE: VSS_COMPONENT_FLAGS = VSS_COMPONENT_FLAGS(4i32);
2883 impl ::std::convert::From<i32> for VSS_COMPONENT_FLAGS {
from(value: i32) -> Self2884 fn from(value: i32) -> Self {
2885 Self(value)
2886 }
2887 }
2888 unsafe impl ::windows::runtime::Abi for VSS_COMPONENT_FLAGS {
2889 type Abi = Self;
2890 type DefaultType = Self;
2891 }
2892 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
2893 #[repr(transparent)]
2894 pub struct VSS_COMPONENT_TYPE(pub i32);
2895 pub const VSS_CT_UNDEFINED: VSS_COMPONENT_TYPE = VSS_COMPONENT_TYPE(0i32);
2896 pub const VSS_CT_DATABASE: VSS_COMPONENT_TYPE = VSS_COMPONENT_TYPE(1i32);
2897 pub const VSS_CT_FILEGROUP: VSS_COMPONENT_TYPE = VSS_COMPONENT_TYPE(2i32);
2898 impl ::std::convert::From<i32> for VSS_COMPONENT_TYPE {
from(value: i32) -> Self2899 fn from(value: i32) -> Self {
2900 Self(value)
2901 }
2902 }
2903 unsafe impl ::windows::runtime::Abi for VSS_COMPONENT_TYPE {
2904 type Abi = Self;
2905 type DefaultType = Self;
2906 }
2907 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2908 #[repr(C)]
2909 pub struct VSS_DIFF_AREA_PROP {
2910 pub m_pwszVolumeName: *mut u16,
2911 pub m_pwszDiffAreaVolumeName: *mut u16,
2912 pub m_llMaximumDiffSpace: i64,
2913 pub m_llAllocatedDiffSpace: i64,
2914 pub m_llUsedDiffSpace: i64,
2915 }
2916 impl VSS_DIFF_AREA_PROP {}
2917 impl ::std::default::Default for VSS_DIFF_AREA_PROP {
default() -> Self2918 fn default() -> Self {
2919 unsafe { ::std::mem::zeroed() }
2920 }
2921 }
2922 impl ::std::fmt::Debug for VSS_DIFF_AREA_PROP {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2923 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2924 fmt.debug_struct("VSS_DIFF_AREA_PROP")
2925 .field("m_pwszVolumeName", &self.m_pwszVolumeName)
2926 .field("m_pwszDiffAreaVolumeName", &self.m_pwszDiffAreaVolumeName)
2927 .field("m_llMaximumDiffSpace", &self.m_llMaximumDiffSpace)
2928 .field("m_llAllocatedDiffSpace", &self.m_llAllocatedDiffSpace)
2929 .field("m_llUsedDiffSpace", &self.m_llUsedDiffSpace)
2930 .finish()
2931 }
2932 }
2933 impl ::std::cmp::PartialEq for VSS_DIFF_AREA_PROP {
eq(&self, other: &Self) -> bool2934 fn eq(&self, other: &Self) -> bool {
2935 self.m_pwszVolumeName == other.m_pwszVolumeName && self.m_pwszDiffAreaVolumeName == other.m_pwszDiffAreaVolumeName && self.m_llMaximumDiffSpace == other.m_llMaximumDiffSpace && self.m_llAllocatedDiffSpace == other.m_llAllocatedDiffSpace && self.m_llUsedDiffSpace == other.m_llUsedDiffSpace
2936 }
2937 }
2938 impl ::std::cmp::Eq for VSS_DIFF_AREA_PROP {}
2939 unsafe impl ::windows::runtime::Abi for VSS_DIFF_AREA_PROP {
2940 type Abi = Self;
2941 type DefaultType = Self;
2942 }
2943 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
2944 #[repr(C)]
2945 pub struct VSS_DIFF_VOLUME_PROP {
2946 pub m_pwszVolumeName: *mut u16,
2947 pub m_pwszVolumeDisplayName: *mut u16,
2948 pub m_llVolumeFreeSpace: i64,
2949 pub m_llVolumeTotalSpace: i64,
2950 }
2951 impl VSS_DIFF_VOLUME_PROP {}
2952 impl ::std::default::Default for VSS_DIFF_VOLUME_PROP {
default() -> Self2953 fn default() -> Self {
2954 unsafe { ::std::mem::zeroed() }
2955 }
2956 }
2957 impl ::std::fmt::Debug for VSS_DIFF_VOLUME_PROP {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result2958 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
2959 fmt.debug_struct("VSS_DIFF_VOLUME_PROP").field("m_pwszVolumeName", &self.m_pwszVolumeName).field("m_pwszVolumeDisplayName", &self.m_pwszVolumeDisplayName).field("m_llVolumeFreeSpace", &self.m_llVolumeFreeSpace).field("m_llVolumeTotalSpace", &self.m_llVolumeTotalSpace).finish()
2960 }
2961 }
2962 impl ::std::cmp::PartialEq for VSS_DIFF_VOLUME_PROP {
eq(&self, other: &Self) -> bool2963 fn eq(&self, other: &Self) -> bool {
2964 self.m_pwszVolumeName == other.m_pwszVolumeName && self.m_pwszVolumeDisplayName == other.m_pwszVolumeDisplayName && self.m_llVolumeFreeSpace == other.m_llVolumeFreeSpace && self.m_llVolumeTotalSpace == other.m_llVolumeTotalSpace
2965 }
2966 }
2967 impl ::std::cmp::Eq for VSS_DIFF_VOLUME_PROP {}
2968 unsafe impl ::windows::runtime::Abi for VSS_DIFF_VOLUME_PROP {
2969 type Abi = Self;
2970 type DefaultType = Self;
2971 }
2972 pub const VSS_E_ASRERROR_CRITICAL_DISKS_TOO_SMALL: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212280i32 as _);
2973 pub const VSS_E_ASRERROR_CRITICAL_DISK_CANNOT_BE_EXCLUDED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212267i32 as _);
2974 pub const VSS_E_ASRERROR_DATADISK_RDISK0: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212282i32 as _);
2975 pub const VSS_E_ASRERROR_DISK_ASSIGNMENT_FAILED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212287i32 as _);
2976 pub const VSS_E_ASRERROR_DISK_RECREATION_FAILED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212286i32 as _);
2977 pub const VSS_E_ASRERROR_DYNAMIC_VHD_NOT_SUPPORTED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212278i32 as _);
2978 pub const VSS_E_ASRERROR_FIXED_PHYSICAL_DISK_AVAILABLE_AFTER_DISK_EXCLUSION: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212268i32 as _);
2979 pub const VSS_E_ASRERROR_MISSING_DYNDISK: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212284i32 as _);
2980 pub const VSS_E_ASRERROR_NO_ARCPATH: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212285i32 as _);
2981 pub const VSS_E_ASRERROR_NO_PHYSICAL_DISK_AVAILABLE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212269i32 as _);
2982 pub const VSS_E_ASRERROR_RDISK0_TOOSMALL: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212281i32 as _);
2983 pub const VSS_E_ASRERROR_RDISK_FOR_SYSTEM_DISK_NOT_FOUND: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212270i32 as _);
2984 pub const VSS_E_ASRERROR_SHARED_CRIDISK: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212283i32 as _);
2985 pub const VSS_E_ASRERROR_SYSTEM_PARTITION_HIDDEN: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212266i32 as _);
2986 pub const VSS_E_AUTORECOVERY_FAILED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212293i32 as _);
2987 pub const VSS_E_BAD_STATE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212543i32 as _);
2988 pub const VSS_E_BREAK_REVERT_ID_FAILED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212298i32 as _);
2989 pub const VSS_E_CANNOT_REVERT_DISKID: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212290i32 as _);
2990 pub const VSS_E_CLUSTER_ERROR: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212288i32 as _);
2991 pub const VSS_E_CLUSTER_TIMEOUT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212498i32 as _);
2992 pub const VSS_E_CORRUPT_XML_DOCUMENT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212528i32 as _);
2993 pub const VSS_E_CRITICAL_VOLUME_ON_INVALID_DISK: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212271i32 as _);
2994 pub const VSS_E_DYNAMIC_DISK_ERROR: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212292i32 as _);
2995 pub const VSS_E_FLUSH_WRITES_TIMEOUT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212525i32 as _);
2996 pub const VSS_E_FSS_TIMEOUT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212265i32 as _);
2997 pub const VSS_E_HOLD_WRITES_TIMEOUT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212524i32 as _);
2998 pub const VSS_E_INSUFFICIENT_STORAGE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212513i32 as _);
2999 pub const VSS_E_INVALID_XML_DOCUMENT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212527i32 as _);
3000 pub const VSS_E_LEGACY_PROVIDER: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212297i32 as _);
3001 pub const VSS_E_MAXIMUM_DIFFAREA_ASSOCIATIONS_REACHED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212514i32 as _);
3002 pub const VSS_E_MAXIMUM_NUMBER_OF_REMOTE_MACHINES_REACHED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212510i32 as _);
3003 pub const VSS_E_MAXIMUM_NUMBER_OF_SNAPSHOTS_REACHED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212521i32 as _);
3004 pub const VSS_E_MAXIMUM_NUMBER_OF_VOLUMES_REACHED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212526i32 as _);
3005 pub const VSS_E_MISSING_DISK: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212296i32 as _);
3006 pub const VSS_E_MISSING_HIDDEN_VOLUME: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212295i32 as _);
3007 pub const VSS_E_MISSING_VOLUME: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212294i32 as _);
3008 pub const VSS_E_NESTED_VOLUME_LIMIT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212500i32 as _);
3009 pub const VSS_E_NONTRANSPORTABLE_BCD: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212291i32 as _);
3010 pub const VSS_E_NOT_SUPPORTED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212497i32 as _);
3011 pub const VSS_E_NO_SNAPSHOTS_IMPORTED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212512i32 as _);
3012 pub const VSS_E_OBJECT_ALREADY_EXISTS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212531i32 as _);
3013 pub const VSS_E_OBJECT_NOT_FOUND: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212536i32 as _);
3014 pub const VSS_E_PROVIDER_ALREADY_REGISTERED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212541i32 as _);
3015 pub const VSS_E_PROVIDER_IN_USE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212537i32 as _);
3016 pub const VSS_E_PROVIDER_NOT_REGISTERED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212540i32 as _);
3017 pub const VSS_E_PROVIDER_VETO: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212538i32 as _);
3018 pub const VSS_E_REBOOT_REQUIRED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212505i32 as _);
3019 pub const VSS_E_REMOTE_SERVER_UNAVAILABLE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212509i32 as _);
3020 pub const VSS_E_REMOTE_SERVER_UNSUPPORTED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212508i32 as _);
3021 pub const VSS_E_RESYNC_IN_PROGRESS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212289i32 as _);
3022 pub const VSS_E_REVERT_IN_PROGRESS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212507i32 as _);
3023 pub const VSS_E_REVERT_VOLUME_LOST: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212506i32 as _);
3024 pub const VSS_E_SNAPSHOT_NOT_IN_SET: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212501i32 as _);
3025 pub const VSS_E_SNAPSHOT_SET_IN_PROGRESS: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212522i32 as _);
3026 pub const VSS_E_SOME_SNAPSHOTS_NOT_IMPORTED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212511i32 as _);
3027 pub const VSS_E_TRANSACTION_FREEZE_TIMEOUT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212504i32 as _);
3028 pub const VSS_E_TRANSACTION_THAW_TIMEOUT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212503i32 as _);
3029 pub const VSS_E_UNEXPECTED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212542i32 as _);
3030 pub const VSS_E_UNEXPECTED_PROVIDER_ERROR: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212529i32 as _);
3031 pub const VSS_E_UNEXPECTED_WRITER_ERROR: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212523i32 as _);
3032 pub const VSS_E_UNSELECTED_VOLUME: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212502i32 as _);
3033 pub const VSS_E_UNSUPPORTED_CONTEXT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212517i32 as _);
3034 pub const VSS_E_VOLUME_IN_USE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212515i32 as _);
3035 pub const VSS_E_VOLUME_NOT_LOCAL: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212499i32 as _);
3036 pub const VSS_E_VOLUME_NOT_SUPPORTED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212532i32 as _);
3037 pub const VSS_E_VOLUME_NOT_SUPPORTED_BY_PROVIDER: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212530i32 as _);
3038 pub const VSS_E_WRITERERROR_INCONSISTENTSNAPSHOT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212304i32 as _);
3039 pub const VSS_E_WRITERERROR_NONRETRYABLE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212300i32 as _);
3040 pub const VSS_E_WRITERERROR_OUTOFRESOURCES: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212303i32 as _);
3041 pub const VSS_E_WRITERERROR_PARTIAL_FAILURE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212490i32 as _);
3042 pub const VSS_E_WRITERERROR_RECOVERY_FAILED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212299i32 as _);
3043 pub const VSS_E_WRITERERROR_RETRYABLE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212301i32 as _);
3044 pub const VSS_E_WRITERERROR_TIMEOUT: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212302i32 as _);
3045 pub const VSS_E_WRITER_ALREADY_SUBSCRIBED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212518i32 as _);
3046 pub const VSS_E_WRITER_INFRASTRUCTURE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212520i32 as _);
3047 pub const VSS_E_WRITER_NOT_RESPONDING: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212519i32 as _);
3048 pub const VSS_E_WRITER_STATUS_NOT_AVAILABLE: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(-2147212279i32 as _);
3049 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3050 #[repr(transparent)]
3051 pub struct VSS_FILE_RESTORE_STATUS(pub i32);
3052 pub const VSS_RS_UNDEFINED: VSS_FILE_RESTORE_STATUS = VSS_FILE_RESTORE_STATUS(0i32);
3053 pub const VSS_RS_NONE: VSS_FILE_RESTORE_STATUS = VSS_FILE_RESTORE_STATUS(1i32);
3054 pub const VSS_RS_ALL: VSS_FILE_RESTORE_STATUS = VSS_FILE_RESTORE_STATUS(2i32);
3055 pub const VSS_RS_FAILED: VSS_FILE_RESTORE_STATUS = VSS_FILE_RESTORE_STATUS(3i32);
3056 impl ::std::convert::From<i32> for VSS_FILE_RESTORE_STATUS {
from(value: i32) -> Self3057 fn from(value: i32) -> Self {
3058 Self(value)
3059 }
3060 }
3061 unsafe impl ::windows::runtime::Abi for VSS_FILE_RESTORE_STATUS {
3062 type Abi = Self;
3063 type DefaultType = Self;
3064 }
3065 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3066 #[repr(transparent)]
3067 pub struct VSS_FILE_SPEC_BACKUP_TYPE(pub i32);
3068 pub const VSS_FSBT_FULL_BACKUP_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(1i32);
3069 pub const VSS_FSBT_DIFFERENTIAL_BACKUP_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(2i32);
3070 pub const VSS_FSBT_INCREMENTAL_BACKUP_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(4i32);
3071 pub const VSS_FSBT_LOG_BACKUP_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(8i32);
3072 pub const VSS_FSBT_FULL_SNAPSHOT_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(256i32);
3073 pub const VSS_FSBT_DIFFERENTIAL_SNAPSHOT_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(512i32);
3074 pub const VSS_FSBT_INCREMENTAL_SNAPSHOT_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(1024i32);
3075 pub const VSS_FSBT_LOG_SNAPSHOT_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(2048i32);
3076 pub const VSS_FSBT_CREATED_DURING_BACKUP: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(65536i32);
3077 pub const VSS_FSBT_ALL_BACKUP_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(15i32);
3078 pub const VSS_FSBT_ALL_SNAPSHOT_REQUIRED: VSS_FILE_SPEC_BACKUP_TYPE = VSS_FILE_SPEC_BACKUP_TYPE(3840i32);
3079 impl ::std::convert::From<i32> for VSS_FILE_SPEC_BACKUP_TYPE {
from(value: i32) -> Self3080 fn from(value: i32) -> Self {
3081 Self(value)
3082 }
3083 }
3084 unsafe impl ::windows::runtime::Abi for VSS_FILE_SPEC_BACKUP_TYPE {
3085 type Abi = Self;
3086 type DefaultType = Self;
3087 }
3088 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3089 #[repr(transparent)]
3090 pub struct VSS_HARDWARE_OPTIONS(pub i32);
3091 pub const VSS_BREAKEX_FLAG_MASK_LUNS: VSS_HARDWARE_OPTIONS = VSS_HARDWARE_OPTIONS(1i32);
3092 pub const VSS_BREAKEX_FLAG_MAKE_READ_WRITE: VSS_HARDWARE_OPTIONS = VSS_HARDWARE_OPTIONS(2i32);
3093 pub const VSS_BREAKEX_FLAG_REVERT_IDENTITY_ALL: VSS_HARDWARE_OPTIONS = VSS_HARDWARE_OPTIONS(4i32);
3094 pub const VSS_BREAKEX_FLAG_REVERT_IDENTITY_NONE: VSS_HARDWARE_OPTIONS = VSS_HARDWARE_OPTIONS(8i32);
3095 pub const VSS_ONLUNSTATECHANGE_NOTIFY_READ_WRITE: VSS_HARDWARE_OPTIONS = VSS_HARDWARE_OPTIONS(256i32);
3096 pub const VSS_ONLUNSTATECHANGE_NOTIFY_LUN_PRE_RECOVERY: VSS_HARDWARE_OPTIONS = VSS_HARDWARE_OPTIONS(512i32);
3097 pub const VSS_ONLUNSTATECHANGE_NOTIFY_LUN_POST_RECOVERY: VSS_HARDWARE_OPTIONS = VSS_HARDWARE_OPTIONS(1024i32);
3098 pub const VSS_ONLUNSTATECHANGE_DO_MASK_LUNS: VSS_HARDWARE_OPTIONS = VSS_HARDWARE_OPTIONS(2048i32);
3099 impl ::std::convert::From<i32> for VSS_HARDWARE_OPTIONS {
from(value: i32) -> Self3100 fn from(value: i32) -> Self {
3101 Self(value)
3102 }
3103 }
3104 unsafe impl ::windows::runtime::Abi for VSS_HARDWARE_OPTIONS {
3105 type Abi = Self;
3106 type DefaultType = Self;
3107 }
3108 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3109 #[repr(C)]
3110 pub struct VSS_MGMT_OBJECT_PROP {
3111 pub Type: VSS_MGMT_OBJECT_TYPE,
3112 pub Obj: VSS_MGMT_OBJECT_UNION,
3113 }
3114 impl VSS_MGMT_OBJECT_PROP {}
3115 impl ::std::default::Default for VSS_MGMT_OBJECT_PROP {
default() -> Self3116 fn default() -> Self {
3117 unsafe { ::std::mem::zeroed() }
3118 }
3119 }
3120 impl ::std::cmp::PartialEq for VSS_MGMT_OBJECT_PROP {
eq(&self, _other: &Self) -> bool3121 fn eq(&self, _other: &Self) -> bool {
3122 unimplemented!()
3123 }
3124 }
3125 impl ::std::cmp::Eq for VSS_MGMT_OBJECT_PROP {}
3126 unsafe impl ::windows::runtime::Abi for VSS_MGMT_OBJECT_PROP {
3127 type Abi = Self;
3128 type DefaultType = Self;
3129 }
3130 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3131 #[repr(transparent)]
3132 pub struct VSS_MGMT_OBJECT_TYPE(pub i32);
3133 pub const VSS_MGMT_OBJECT_UNKNOWN: VSS_MGMT_OBJECT_TYPE = VSS_MGMT_OBJECT_TYPE(0i32);
3134 pub const VSS_MGMT_OBJECT_VOLUME: VSS_MGMT_OBJECT_TYPE = VSS_MGMT_OBJECT_TYPE(1i32);
3135 pub const VSS_MGMT_OBJECT_DIFF_VOLUME: VSS_MGMT_OBJECT_TYPE = VSS_MGMT_OBJECT_TYPE(2i32);
3136 pub const VSS_MGMT_OBJECT_DIFF_AREA: VSS_MGMT_OBJECT_TYPE = VSS_MGMT_OBJECT_TYPE(3i32);
3137 impl ::std::convert::From<i32> for VSS_MGMT_OBJECT_TYPE {
from(value: i32) -> Self3138 fn from(value: i32) -> Self {
3139 Self(value)
3140 }
3141 }
3142 unsafe impl ::windows::runtime::Abi for VSS_MGMT_OBJECT_TYPE {
3143 type Abi = Self;
3144 type DefaultType = Self;
3145 }
3146 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3147 #[repr(C)]
3148 pub union VSS_MGMT_OBJECT_UNION {
3149 pub Vol: VSS_VOLUME_PROP,
3150 pub DiffVol: VSS_DIFF_VOLUME_PROP,
3151 pub DiffArea: VSS_DIFF_AREA_PROP,
3152 }
3153 impl VSS_MGMT_OBJECT_UNION {}
3154 impl ::std::default::Default for VSS_MGMT_OBJECT_UNION {
default() -> Self3155 fn default() -> Self {
3156 unsafe { ::std::mem::zeroed() }
3157 }
3158 }
3159 impl ::std::cmp::PartialEq for VSS_MGMT_OBJECT_UNION {
eq(&self, _other: &Self) -> bool3160 fn eq(&self, _other: &Self) -> bool {
3161 unimplemented!()
3162 }
3163 }
3164 impl ::std::cmp::Eq for VSS_MGMT_OBJECT_UNION {}
3165 unsafe impl ::windows::runtime::Abi for VSS_MGMT_OBJECT_UNION {
3166 type Abi = Self;
3167 type DefaultType = Self;
3168 }
3169 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3170 #[repr(C)]
3171 pub struct VSS_OBJECT_PROP {
3172 pub Type: VSS_OBJECT_TYPE,
3173 pub Obj: VSS_OBJECT_UNION,
3174 }
3175 impl VSS_OBJECT_PROP {}
3176 impl ::std::default::Default for VSS_OBJECT_PROP {
default() -> Self3177 fn default() -> Self {
3178 unsafe { ::std::mem::zeroed() }
3179 }
3180 }
3181 impl ::std::cmp::PartialEq for VSS_OBJECT_PROP {
eq(&self, _other: &Self) -> bool3182 fn eq(&self, _other: &Self) -> bool {
3183 unimplemented!()
3184 }
3185 }
3186 impl ::std::cmp::Eq for VSS_OBJECT_PROP {}
3187 unsafe impl ::windows::runtime::Abi for VSS_OBJECT_PROP {
3188 type Abi = Self;
3189 type DefaultType = Self;
3190 }
3191 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3192 #[repr(transparent)]
3193 pub struct VSS_OBJECT_TYPE(pub i32);
3194 pub const VSS_OBJECT_UNKNOWN: VSS_OBJECT_TYPE = VSS_OBJECT_TYPE(0i32);
3195 pub const VSS_OBJECT_NONE: VSS_OBJECT_TYPE = VSS_OBJECT_TYPE(1i32);
3196 pub const VSS_OBJECT_SNAPSHOT_SET: VSS_OBJECT_TYPE = VSS_OBJECT_TYPE(2i32);
3197 pub const VSS_OBJECT_SNAPSHOT: VSS_OBJECT_TYPE = VSS_OBJECT_TYPE(3i32);
3198 pub const VSS_OBJECT_PROVIDER: VSS_OBJECT_TYPE = VSS_OBJECT_TYPE(4i32);
3199 pub const VSS_OBJECT_TYPE_COUNT: VSS_OBJECT_TYPE = VSS_OBJECT_TYPE(5i32);
3200 impl ::std::convert::From<i32> for VSS_OBJECT_TYPE {
from(value: i32) -> Self3201 fn from(value: i32) -> Self {
3202 Self(value)
3203 }
3204 }
3205 unsafe impl ::windows::runtime::Abi for VSS_OBJECT_TYPE {
3206 type Abi = Self;
3207 type DefaultType = Self;
3208 }
3209 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3210 #[repr(C)]
3211 pub union VSS_OBJECT_UNION {
3212 pub Snap: VSS_SNAPSHOT_PROP,
3213 pub Prov: VSS_PROVIDER_PROP,
3214 }
3215 impl VSS_OBJECT_UNION {}
3216 impl ::std::default::Default for VSS_OBJECT_UNION {
default() -> Self3217 fn default() -> Self {
3218 unsafe { ::std::mem::zeroed() }
3219 }
3220 }
3221 impl ::std::cmp::PartialEq for VSS_OBJECT_UNION {
eq(&self, _other: &Self) -> bool3222 fn eq(&self, _other: &Self) -> bool {
3223 unimplemented!()
3224 }
3225 }
3226 impl ::std::cmp::Eq for VSS_OBJECT_UNION {}
3227 unsafe impl ::windows::runtime::Abi for VSS_OBJECT_UNION {
3228 type Abi = Self;
3229 type DefaultType = Self;
3230 }
3231 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3232 #[repr(transparent)]
3233 pub struct VSS_PROTECTION_FAULT(pub i32);
3234 pub const VSS_PROTECTION_FAULT_NONE: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(0i32);
3235 pub const VSS_PROTECTION_FAULT_DIFF_AREA_MISSING: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(1i32);
3236 pub const VSS_PROTECTION_FAULT_IO_FAILURE_DURING_ONLINE: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(2i32);
3237 pub const VSS_PROTECTION_FAULT_META_DATA_CORRUPTION: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(3i32);
3238 pub const VSS_PROTECTION_FAULT_MEMORY_ALLOCATION_FAILURE: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(4i32);
3239 pub const VSS_PROTECTION_FAULT_MAPPED_MEMORY_FAILURE: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(5i32);
3240 pub const VSS_PROTECTION_FAULT_COW_READ_FAILURE: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(6i32);
3241 pub const VSS_PROTECTION_FAULT_COW_WRITE_FAILURE: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(7i32);
3242 pub const VSS_PROTECTION_FAULT_DIFF_AREA_FULL: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(8i32);
3243 pub const VSS_PROTECTION_FAULT_GROW_TOO_SLOW: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(9i32);
3244 pub const VSS_PROTECTION_FAULT_GROW_FAILED: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(10i32);
3245 pub const VSS_PROTECTION_FAULT_DESTROY_ALL_SNAPSHOTS: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(11i32);
3246 pub const VSS_PROTECTION_FAULT_FILE_SYSTEM_FAILURE: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(12i32);
3247 pub const VSS_PROTECTION_FAULT_IO_FAILURE: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(13i32);
3248 pub const VSS_PROTECTION_FAULT_DIFF_AREA_REMOVED: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(14i32);
3249 pub const VSS_PROTECTION_FAULT_EXTERNAL_WRITER_TO_DIFF_AREA: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(15i32);
3250 pub const VSS_PROTECTION_FAULT_MOUNT_DURING_CLUSTER_OFFLINE: VSS_PROTECTION_FAULT = VSS_PROTECTION_FAULT(16i32);
3251 impl ::std::convert::From<i32> for VSS_PROTECTION_FAULT {
from(value: i32) -> Self3252 fn from(value: i32) -> Self {
3253 Self(value)
3254 }
3255 }
3256 unsafe impl ::windows::runtime::Abi for VSS_PROTECTION_FAULT {
3257 type Abi = Self;
3258 type DefaultType = Self;
3259 }
3260 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3261 #[repr(transparent)]
3262 pub struct VSS_PROTECTION_LEVEL(pub i32);
3263 pub const VSS_PROTECTION_LEVEL_ORIGINAL_VOLUME: VSS_PROTECTION_LEVEL = VSS_PROTECTION_LEVEL(0i32);
3264 pub const VSS_PROTECTION_LEVEL_SNAPSHOT: VSS_PROTECTION_LEVEL = VSS_PROTECTION_LEVEL(1i32);
3265 impl ::std::convert::From<i32> for VSS_PROTECTION_LEVEL {
from(value: i32) -> Self3266 fn from(value: i32) -> Self {
3267 Self(value)
3268 }
3269 }
3270 unsafe impl ::windows::runtime::Abi for VSS_PROTECTION_LEVEL {
3271 type Abi = Self;
3272 type DefaultType = Self;
3273 }
3274 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3275 #[repr(transparent)]
3276 pub struct VSS_PROVIDER_CAPABILITIES(pub i32);
3277 pub const VSS_PRV_CAPABILITY_LEGACY: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(1i32);
3278 pub const VSS_PRV_CAPABILITY_COMPLIANT: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(2i32);
3279 pub const VSS_PRV_CAPABILITY_LUN_REPOINT: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(4i32);
3280 pub const VSS_PRV_CAPABILITY_LUN_RESYNC: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(8i32);
3281 pub const VSS_PRV_CAPABILITY_OFFLINE_CREATION: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(16i32);
3282 pub const VSS_PRV_CAPABILITY_MULTIPLE_IMPORT: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(32i32);
3283 pub const VSS_PRV_CAPABILITY_RECYCLING: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(64i32);
3284 pub const VSS_PRV_CAPABILITY_PLEX: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(128i32);
3285 pub const VSS_PRV_CAPABILITY_DIFFERENTIAL: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(256i32);
3286 pub const VSS_PRV_CAPABILITY_CLUSTERED: VSS_PROVIDER_CAPABILITIES = VSS_PROVIDER_CAPABILITIES(512i32);
3287 impl ::std::convert::From<i32> for VSS_PROVIDER_CAPABILITIES {
from(value: i32) -> Self3288 fn from(value: i32) -> Self {
3289 Self(value)
3290 }
3291 }
3292 unsafe impl ::windows::runtime::Abi for VSS_PROVIDER_CAPABILITIES {
3293 type Abi = Self;
3294 type DefaultType = Self;
3295 }
3296 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3297 #[repr(C)]
3298 pub struct VSS_PROVIDER_PROP {
3299 pub m_ProviderId: ::windows::runtime::GUID,
3300 pub m_pwszProviderName: *mut u16,
3301 pub m_eProviderType: VSS_PROVIDER_TYPE,
3302 pub m_pwszProviderVersion: *mut u16,
3303 pub m_ProviderVersionId: ::windows::runtime::GUID,
3304 pub m_ClassId: ::windows::runtime::GUID,
3305 }
3306 impl VSS_PROVIDER_PROP {}
3307 impl ::std::default::Default for VSS_PROVIDER_PROP {
default() -> Self3308 fn default() -> Self {
3309 unsafe { ::std::mem::zeroed() }
3310 }
3311 }
3312 impl ::std::fmt::Debug for VSS_PROVIDER_PROP {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3313 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3314 fmt.debug_struct("VSS_PROVIDER_PROP")
3315 .field("m_ProviderId", &self.m_ProviderId)
3316 .field("m_pwszProviderName", &self.m_pwszProviderName)
3317 .field("m_eProviderType", &self.m_eProviderType)
3318 .field("m_pwszProviderVersion", &self.m_pwszProviderVersion)
3319 .field("m_ProviderVersionId", &self.m_ProviderVersionId)
3320 .field("m_ClassId", &self.m_ClassId)
3321 .finish()
3322 }
3323 }
3324 impl ::std::cmp::PartialEq for VSS_PROVIDER_PROP {
eq(&self, other: &Self) -> bool3325 fn eq(&self, other: &Self) -> bool {
3326 self.m_ProviderId == other.m_ProviderId && self.m_pwszProviderName == other.m_pwszProviderName && self.m_eProviderType == other.m_eProviderType && self.m_pwszProviderVersion == other.m_pwszProviderVersion && self.m_ProviderVersionId == other.m_ProviderVersionId && self.m_ClassId == other.m_ClassId
3327 }
3328 }
3329 impl ::std::cmp::Eq for VSS_PROVIDER_PROP {}
3330 unsafe impl ::windows::runtime::Abi for VSS_PROVIDER_PROP {
3331 type Abi = Self;
3332 type DefaultType = Self;
3333 }
3334 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3335 #[repr(transparent)]
3336 pub struct VSS_PROVIDER_TYPE(pub i32);
3337 pub const VSS_PROV_UNKNOWN: VSS_PROVIDER_TYPE = VSS_PROVIDER_TYPE(0i32);
3338 pub const VSS_PROV_SYSTEM: VSS_PROVIDER_TYPE = VSS_PROVIDER_TYPE(1i32);
3339 pub const VSS_PROV_SOFTWARE: VSS_PROVIDER_TYPE = VSS_PROVIDER_TYPE(2i32);
3340 pub const VSS_PROV_HARDWARE: VSS_PROVIDER_TYPE = VSS_PROVIDER_TYPE(3i32);
3341 pub const VSS_PROV_FILESHARE: VSS_PROVIDER_TYPE = VSS_PROVIDER_TYPE(4i32);
3342 impl ::std::convert::From<i32> for VSS_PROVIDER_TYPE {
from(value: i32) -> Self3343 fn from(value: i32) -> Self {
3344 Self(value)
3345 }
3346 }
3347 unsafe impl ::windows::runtime::Abi for VSS_PROVIDER_TYPE {
3348 type Abi = Self;
3349 type DefaultType = Self;
3350 }
3351 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3352 #[repr(transparent)]
3353 pub struct VSS_RECOVERY_OPTIONS(pub i32);
3354 pub const VSS_RECOVERY_REVERT_IDENTITY_ALL: VSS_RECOVERY_OPTIONS = VSS_RECOVERY_OPTIONS(256i32);
3355 pub const VSS_RECOVERY_NO_VOLUME_CHECK: VSS_RECOVERY_OPTIONS = VSS_RECOVERY_OPTIONS(512i32);
3356 impl ::std::convert::From<i32> for VSS_RECOVERY_OPTIONS {
from(value: i32) -> Self3357 fn from(value: i32) -> Self {
3358 Self(value)
3359 }
3360 }
3361 unsafe impl ::windows::runtime::Abi for VSS_RECOVERY_OPTIONS {
3362 type Abi = Self;
3363 type DefaultType = Self;
3364 }
3365 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3366 #[repr(transparent)]
3367 pub struct VSS_RESTOREMETHOD_ENUM(pub i32);
3368 pub const VSS_RME_UNDEFINED: VSS_RESTOREMETHOD_ENUM = VSS_RESTOREMETHOD_ENUM(0i32);
3369 pub const VSS_RME_RESTORE_IF_NOT_THERE: VSS_RESTOREMETHOD_ENUM = VSS_RESTOREMETHOD_ENUM(1i32);
3370 pub const VSS_RME_RESTORE_IF_CAN_REPLACE: VSS_RESTOREMETHOD_ENUM = VSS_RESTOREMETHOD_ENUM(2i32);
3371 pub const VSS_RME_STOP_RESTORE_START: VSS_RESTOREMETHOD_ENUM = VSS_RESTOREMETHOD_ENUM(3i32);
3372 pub const VSS_RME_RESTORE_TO_ALTERNATE_LOCATION: VSS_RESTOREMETHOD_ENUM = VSS_RESTOREMETHOD_ENUM(4i32);
3373 pub const VSS_RME_RESTORE_AT_REBOOT: VSS_RESTOREMETHOD_ENUM = VSS_RESTOREMETHOD_ENUM(5i32);
3374 pub const VSS_RME_RESTORE_AT_REBOOT_IF_CANNOT_REPLACE: VSS_RESTOREMETHOD_ENUM = VSS_RESTOREMETHOD_ENUM(6i32);
3375 pub const VSS_RME_CUSTOM: VSS_RESTOREMETHOD_ENUM = VSS_RESTOREMETHOD_ENUM(7i32);
3376 pub const VSS_RME_RESTORE_STOP_START: VSS_RESTOREMETHOD_ENUM = VSS_RESTOREMETHOD_ENUM(8i32);
3377 impl ::std::convert::From<i32> for VSS_RESTOREMETHOD_ENUM {
from(value: i32) -> Self3378 fn from(value: i32) -> Self {
3379 Self(value)
3380 }
3381 }
3382 unsafe impl ::windows::runtime::Abi for VSS_RESTOREMETHOD_ENUM {
3383 type Abi = Self;
3384 type DefaultType = Self;
3385 }
3386 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3387 #[repr(transparent)]
3388 pub struct VSS_RESTORE_TARGET(pub i32);
3389 pub const VSS_RT_UNDEFINED: VSS_RESTORE_TARGET = VSS_RESTORE_TARGET(0i32);
3390 pub const VSS_RT_ORIGINAL: VSS_RESTORE_TARGET = VSS_RESTORE_TARGET(1i32);
3391 pub const VSS_RT_ALTERNATE: VSS_RESTORE_TARGET = VSS_RESTORE_TARGET(2i32);
3392 pub const VSS_RT_DIRECTED: VSS_RESTORE_TARGET = VSS_RESTORE_TARGET(3i32);
3393 pub const VSS_RT_ORIGINAL_LOCATION: VSS_RESTORE_TARGET = VSS_RESTORE_TARGET(4i32);
3394 impl ::std::convert::From<i32> for VSS_RESTORE_TARGET {
from(value: i32) -> Self3395 fn from(value: i32) -> Self {
3396 Self(value)
3397 }
3398 }
3399 unsafe impl ::windows::runtime::Abi for VSS_RESTORE_TARGET {
3400 type Abi = Self;
3401 type DefaultType = Self;
3402 }
3403 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3404 #[repr(transparent)]
3405 pub struct VSS_RESTORE_TYPE(pub i32);
3406 pub const VSS_RTYPE_UNDEFINED: VSS_RESTORE_TYPE = VSS_RESTORE_TYPE(0i32);
3407 pub const VSS_RTYPE_BY_COPY: VSS_RESTORE_TYPE = VSS_RESTORE_TYPE(1i32);
3408 pub const VSS_RTYPE_IMPORT: VSS_RESTORE_TYPE = VSS_RESTORE_TYPE(2i32);
3409 pub const VSS_RTYPE_OTHER: VSS_RESTORE_TYPE = VSS_RESTORE_TYPE(3i32);
3410 impl ::std::convert::From<i32> for VSS_RESTORE_TYPE {
from(value: i32) -> Self3411 fn from(value: i32) -> Self {
3412 Self(value)
3413 }
3414 }
3415 unsafe impl ::windows::runtime::Abi for VSS_RESTORE_TYPE {
3416 type Abi = Self;
3417 type DefaultType = Self;
3418 }
3419 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3420 #[repr(transparent)]
3421 pub struct VSS_ROLLFORWARD_TYPE(pub i32);
3422 pub const VSS_RF_UNDEFINED: VSS_ROLLFORWARD_TYPE = VSS_ROLLFORWARD_TYPE(0i32);
3423 pub const VSS_RF_NONE: VSS_ROLLFORWARD_TYPE = VSS_ROLLFORWARD_TYPE(1i32);
3424 pub const VSS_RF_ALL: VSS_ROLLFORWARD_TYPE = VSS_ROLLFORWARD_TYPE(2i32);
3425 pub const VSS_RF_PARTIAL: VSS_ROLLFORWARD_TYPE = VSS_ROLLFORWARD_TYPE(3i32);
3426 impl ::std::convert::From<i32> for VSS_ROLLFORWARD_TYPE {
from(value: i32) -> Self3427 fn from(value: i32) -> Self {
3428 Self(value)
3429 }
3430 }
3431 unsafe impl ::windows::runtime::Abi for VSS_ROLLFORWARD_TYPE {
3432 type Abi = Self;
3433 type DefaultType = Self;
3434 }
3435 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3436 #[repr(transparent)]
3437 pub struct VSS_SNAPSHOT_COMPATIBILITY(pub i32);
3438 pub const VSS_SC_DISABLE_DEFRAG: VSS_SNAPSHOT_COMPATIBILITY = VSS_SNAPSHOT_COMPATIBILITY(1i32);
3439 pub const VSS_SC_DISABLE_CONTENTINDEX: VSS_SNAPSHOT_COMPATIBILITY = VSS_SNAPSHOT_COMPATIBILITY(2i32);
3440 impl ::std::convert::From<i32> for VSS_SNAPSHOT_COMPATIBILITY {
from(value: i32) -> Self3441 fn from(value: i32) -> Self {
3442 Self(value)
3443 }
3444 }
3445 unsafe impl ::windows::runtime::Abi for VSS_SNAPSHOT_COMPATIBILITY {
3446 type Abi = Self;
3447 type DefaultType = Self;
3448 }
3449 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3450 #[repr(transparent)]
3451 pub struct VSS_SNAPSHOT_CONTEXT(pub i32);
3452 pub const VSS_CTX_BACKUP: VSS_SNAPSHOT_CONTEXT = VSS_SNAPSHOT_CONTEXT(0i32);
3453 pub const VSS_CTX_FILE_SHARE_BACKUP: VSS_SNAPSHOT_CONTEXT = VSS_SNAPSHOT_CONTEXT(16i32);
3454 pub const VSS_CTX_NAS_ROLLBACK: VSS_SNAPSHOT_CONTEXT = VSS_SNAPSHOT_CONTEXT(25i32);
3455 pub const VSS_CTX_APP_ROLLBACK: VSS_SNAPSHOT_CONTEXT = VSS_SNAPSHOT_CONTEXT(9i32);
3456 pub const VSS_CTX_CLIENT_ACCESSIBLE: VSS_SNAPSHOT_CONTEXT = VSS_SNAPSHOT_CONTEXT(29i32);
3457 pub const VSS_CTX_CLIENT_ACCESSIBLE_WRITERS: VSS_SNAPSHOT_CONTEXT = VSS_SNAPSHOT_CONTEXT(13i32);
3458 pub const VSS_CTX_ALL: VSS_SNAPSHOT_CONTEXT = VSS_SNAPSHOT_CONTEXT(-1i32);
3459 impl ::std::convert::From<i32> for VSS_SNAPSHOT_CONTEXT {
from(value: i32) -> Self3460 fn from(value: i32) -> Self {
3461 Self(value)
3462 }
3463 }
3464 unsafe impl ::windows::runtime::Abi for VSS_SNAPSHOT_CONTEXT {
3465 type Abi = Self;
3466 type DefaultType = Self;
3467 }
3468 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3469 #[repr(C)]
3470 pub struct VSS_SNAPSHOT_PROP {
3471 pub m_SnapshotId: ::windows::runtime::GUID,
3472 pub m_SnapshotSetId: ::windows::runtime::GUID,
3473 pub m_lSnapshotsCount: i32,
3474 pub m_pwszSnapshotDeviceObject: *mut u16,
3475 pub m_pwszOriginalVolumeName: *mut u16,
3476 pub m_pwszOriginatingMachine: *mut u16,
3477 pub m_pwszServiceMachine: *mut u16,
3478 pub m_pwszExposedName: *mut u16,
3479 pub m_pwszExposedPath: *mut u16,
3480 pub m_ProviderId: ::windows::runtime::GUID,
3481 pub m_lSnapshotAttributes: i32,
3482 pub m_tsCreationTimestamp: i64,
3483 pub m_eStatus: VSS_SNAPSHOT_STATE,
3484 }
3485 impl VSS_SNAPSHOT_PROP {}
3486 impl ::std::default::Default for VSS_SNAPSHOT_PROP {
default() -> Self3487 fn default() -> Self {
3488 unsafe { ::std::mem::zeroed() }
3489 }
3490 }
3491 impl ::std::fmt::Debug for VSS_SNAPSHOT_PROP {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3492 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3493 fmt.debug_struct("VSS_SNAPSHOT_PROP")
3494 .field("m_SnapshotId", &self.m_SnapshotId)
3495 .field("m_SnapshotSetId", &self.m_SnapshotSetId)
3496 .field("m_lSnapshotsCount", &self.m_lSnapshotsCount)
3497 .field("m_pwszSnapshotDeviceObject", &self.m_pwszSnapshotDeviceObject)
3498 .field("m_pwszOriginalVolumeName", &self.m_pwszOriginalVolumeName)
3499 .field("m_pwszOriginatingMachine", &self.m_pwszOriginatingMachine)
3500 .field("m_pwszServiceMachine", &self.m_pwszServiceMachine)
3501 .field("m_pwszExposedName", &self.m_pwszExposedName)
3502 .field("m_pwszExposedPath", &self.m_pwszExposedPath)
3503 .field("m_ProviderId", &self.m_ProviderId)
3504 .field("m_lSnapshotAttributes", &self.m_lSnapshotAttributes)
3505 .field("m_tsCreationTimestamp", &self.m_tsCreationTimestamp)
3506 .field("m_eStatus", &self.m_eStatus)
3507 .finish()
3508 }
3509 }
3510 impl ::std::cmp::PartialEq for VSS_SNAPSHOT_PROP {
eq(&self, other: &Self) -> bool3511 fn eq(&self, other: &Self) -> bool {
3512 self.m_SnapshotId == other.m_SnapshotId
3513 && self.m_SnapshotSetId == other.m_SnapshotSetId
3514 && self.m_lSnapshotsCount == other.m_lSnapshotsCount
3515 && self.m_pwszSnapshotDeviceObject == other.m_pwszSnapshotDeviceObject
3516 && self.m_pwszOriginalVolumeName == other.m_pwszOriginalVolumeName
3517 && self.m_pwszOriginatingMachine == other.m_pwszOriginatingMachine
3518 && self.m_pwszServiceMachine == other.m_pwszServiceMachine
3519 && self.m_pwszExposedName == other.m_pwszExposedName
3520 && self.m_pwszExposedPath == other.m_pwszExposedPath
3521 && self.m_ProviderId == other.m_ProviderId
3522 && self.m_lSnapshotAttributes == other.m_lSnapshotAttributes
3523 && self.m_tsCreationTimestamp == other.m_tsCreationTimestamp
3524 && self.m_eStatus == other.m_eStatus
3525 }
3526 }
3527 impl ::std::cmp::Eq for VSS_SNAPSHOT_PROP {}
3528 unsafe impl ::windows::runtime::Abi for VSS_SNAPSHOT_PROP {
3529 type Abi = Self;
3530 type DefaultType = Self;
3531 }
3532 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3533 #[repr(transparent)]
3534 pub struct VSS_SNAPSHOT_PROPERTY_ID(pub i32);
3535 pub const VSS_SPROPID_UNKNOWN: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(0i32);
3536 pub const VSS_SPROPID_SNAPSHOT_ID: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(1i32);
3537 pub const VSS_SPROPID_SNAPSHOT_SET_ID: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(2i32);
3538 pub const VSS_SPROPID_SNAPSHOTS_COUNT: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(3i32);
3539 pub const VSS_SPROPID_SNAPSHOT_DEVICE: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(4i32);
3540 pub const VSS_SPROPID_ORIGINAL_VOLUME: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(5i32);
3541 pub const VSS_SPROPID_ORIGINATING_MACHINE: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(6i32);
3542 pub const VSS_SPROPID_SERVICE_MACHINE: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(7i32);
3543 pub const VSS_SPROPID_EXPOSED_NAME: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(8i32);
3544 pub const VSS_SPROPID_EXPOSED_PATH: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(9i32);
3545 pub const VSS_SPROPID_PROVIDER_ID: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(10i32);
3546 pub const VSS_SPROPID_SNAPSHOT_ATTRIBUTES: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(11i32);
3547 pub const VSS_SPROPID_CREATION_TIMESTAMP: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(12i32);
3548 pub const VSS_SPROPID_STATUS: VSS_SNAPSHOT_PROPERTY_ID = VSS_SNAPSHOT_PROPERTY_ID(13i32);
3549 impl ::std::convert::From<i32> for VSS_SNAPSHOT_PROPERTY_ID {
from(value: i32) -> Self3550 fn from(value: i32) -> Self {
3551 Self(value)
3552 }
3553 }
3554 unsafe impl ::windows::runtime::Abi for VSS_SNAPSHOT_PROPERTY_ID {
3555 type Abi = Self;
3556 type DefaultType = Self;
3557 }
3558 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3559 #[repr(transparent)]
3560 pub struct VSS_SNAPSHOT_STATE(pub i32);
3561 pub const VSS_SS_UNKNOWN: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(0i32);
3562 pub const VSS_SS_PREPARING: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(1i32);
3563 pub const VSS_SS_PROCESSING_PREPARE: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(2i32);
3564 pub const VSS_SS_PREPARED: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(3i32);
3565 pub const VSS_SS_PROCESSING_PRECOMMIT: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(4i32);
3566 pub const VSS_SS_PRECOMMITTED: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(5i32);
3567 pub const VSS_SS_PROCESSING_COMMIT: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(6i32);
3568 pub const VSS_SS_COMMITTED: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(7i32);
3569 pub const VSS_SS_PROCESSING_POSTCOMMIT: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(8i32);
3570 pub const VSS_SS_PROCESSING_PREFINALCOMMIT: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(9i32);
3571 pub const VSS_SS_PREFINALCOMMITTED: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(10i32);
3572 pub const VSS_SS_PROCESSING_POSTFINALCOMMIT: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(11i32);
3573 pub const VSS_SS_CREATED: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(12i32);
3574 pub const VSS_SS_ABORTED: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(13i32);
3575 pub const VSS_SS_DELETED: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(14i32);
3576 pub const VSS_SS_POSTCOMMITTED: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(15i32);
3577 pub const VSS_SS_COUNT: VSS_SNAPSHOT_STATE = VSS_SNAPSHOT_STATE(16i32);
3578 impl ::std::convert::From<i32> for VSS_SNAPSHOT_STATE {
from(value: i32) -> Self3579 fn from(value: i32) -> Self {
3580 Self(value)
3581 }
3582 }
3583 unsafe impl ::windows::runtime::Abi for VSS_SNAPSHOT_STATE {
3584 type Abi = Self;
3585 type DefaultType = Self;
3586 }
3587 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3588 #[repr(transparent)]
3589 pub struct VSS_SOURCE_TYPE(pub i32);
3590 pub const VSS_ST_UNDEFINED: VSS_SOURCE_TYPE = VSS_SOURCE_TYPE(0i32);
3591 pub const VSS_ST_TRANSACTEDDB: VSS_SOURCE_TYPE = VSS_SOURCE_TYPE(1i32);
3592 pub const VSS_ST_NONTRANSACTEDDB: VSS_SOURCE_TYPE = VSS_SOURCE_TYPE(2i32);
3593 pub const VSS_ST_OTHER: VSS_SOURCE_TYPE = VSS_SOURCE_TYPE(3i32);
3594 impl ::std::convert::From<i32> for VSS_SOURCE_TYPE {
from(value: i32) -> Self3595 fn from(value: i32) -> Self {
3596 Self(value)
3597 }
3598 }
3599 unsafe impl ::windows::runtime::Abi for VSS_SOURCE_TYPE {
3600 type Abi = Self;
3601 type DefaultType = Self;
3602 }
3603 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3604 #[repr(transparent)]
3605 pub struct VSS_SUBSCRIBE_MASK(pub i32);
3606 pub const VSS_SM_POST_SNAPSHOT_FLAG: VSS_SUBSCRIBE_MASK = VSS_SUBSCRIBE_MASK(1i32);
3607 pub const VSS_SM_BACKUP_EVENTS_FLAG: VSS_SUBSCRIBE_MASK = VSS_SUBSCRIBE_MASK(2i32);
3608 pub const VSS_SM_RESTORE_EVENTS_FLAG: VSS_SUBSCRIBE_MASK = VSS_SUBSCRIBE_MASK(4i32);
3609 pub const VSS_SM_IO_THROTTLING_FLAG: VSS_SUBSCRIBE_MASK = VSS_SUBSCRIBE_MASK(8i32);
3610 pub const VSS_SM_ALL_FLAGS: VSS_SUBSCRIBE_MASK = VSS_SUBSCRIBE_MASK(-1i32);
3611 impl ::std::convert::From<i32> for VSS_SUBSCRIBE_MASK {
from(value: i32) -> Self3612 fn from(value: i32) -> Self {
3613 Self(value)
3614 }
3615 }
3616 unsafe impl ::windows::runtime::Abi for VSS_SUBSCRIBE_MASK {
3617 type Abi = Self;
3618 type DefaultType = Self;
3619 }
3620 pub const VSS_S_ASYNC_CANCELLED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(271115i32 as _);
3621 pub const VSS_S_ASYNC_FINISHED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(271114i32 as _);
3622 pub const VSS_S_ASYNC_PENDING: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(271113i32 as _);
3623 pub const VSS_S_SOME_SNAPSHOTS_NOT_IMPORTED: ::windows::runtime::HRESULT = ::windows::runtime::HRESULT(271137i32 as _);
3624 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3625 #[repr(transparent)]
3626 pub struct VSS_USAGE_TYPE(pub i32);
3627 pub const VSS_UT_UNDEFINED: VSS_USAGE_TYPE = VSS_USAGE_TYPE(0i32);
3628 pub const VSS_UT_BOOTABLESYSTEMSTATE: VSS_USAGE_TYPE = VSS_USAGE_TYPE(1i32);
3629 pub const VSS_UT_SYSTEMSERVICE: VSS_USAGE_TYPE = VSS_USAGE_TYPE(2i32);
3630 pub const VSS_UT_USERDATA: VSS_USAGE_TYPE = VSS_USAGE_TYPE(3i32);
3631 pub const VSS_UT_OTHER: VSS_USAGE_TYPE = VSS_USAGE_TYPE(4i32);
3632 impl ::std::convert::From<i32> for VSS_USAGE_TYPE {
from(value: i32) -> Self3633 fn from(value: i32) -> Self {
3634 Self(value)
3635 }
3636 }
3637 unsafe impl ::windows::runtime::Abi for VSS_USAGE_TYPE {
3638 type Abi = Self;
3639 type DefaultType = Self;
3640 }
3641 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3642 #[repr(C)]
3643 pub struct VSS_VOLUME_PROP {
3644 pub m_pwszVolumeName: *mut u16,
3645 pub m_pwszVolumeDisplayName: *mut u16,
3646 }
3647 impl VSS_VOLUME_PROP {}
3648 impl ::std::default::Default for VSS_VOLUME_PROP {
default() -> Self3649 fn default() -> Self {
3650 unsafe { ::std::mem::zeroed() }
3651 }
3652 }
3653 impl ::std::fmt::Debug for VSS_VOLUME_PROP {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3654 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3655 fmt.debug_struct("VSS_VOLUME_PROP").field("m_pwszVolumeName", &self.m_pwszVolumeName).field("m_pwszVolumeDisplayName", &self.m_pwszVolumeDisplayName).finish()
3656 }
3657 }
3658 impl ::std::cmp::PartialEq for VSS_VOLUME_PROP {
eq(&self, other: &Self) -> bool3659 fn eq(&self, other: &Self) -> bool {
3660 self.m_pwszVolumeName == other.m_pwszVolumeName && self.m_pwszVolumeDisplayName == other.m_pwszVolumeDisplayName
3661 }
3662 }
3663 impl ::std::cmp::Eq for VSS_VOLUME_PROP {}
3664 unsafe impl ::windows::runtime::Abi for VSS_VOLUME_PROP {
3665 type Abi = Self;
3666 type DefaultType = Self;
3667 }
3668 #[derive(:: std :: clone :: Clone, :: std :: marker :: Copy)]
3669 #[repr(C)]
3670 #[cfg(feature = "Win32_Foundation")]
3671 pub struct VSS_VOLUME_PROTECTION_INFO {
3672 pub m_protectionLevel: VSS_PROTECTION_LEVEL,
3673 pub m_volumeIsOfflineForProtection: super::super::Foundation::BOOL,
3674 pub m_protectionFault: VSS_PROTECTION_FAULT,
3675 pub m_failureStatus: i32,
3676 pub m_volumeHasUnusedDiffArea: super::super::Foundation::BOOL,
3677 pub m_reserved: u32,
3678 }
3679 #[cfg(feature = "Win32_Foundation")]
3680 impl VSS_VOLUME_PROTECTION_INFO {}
3681 #[cfg(feature = "Win32_Foundation")]
3682 impl ::std::default::Default for VSS_VOLUME_PROTECTION_INFO {
default() -> Self3683 fn default() -> Self {
3684 unsafe { ::std::mem::zeroed() }
3685 }
3686 }
3687 #[cfg(feature = "Win32_Foundation")]
3688 impl ::std::fmt::Debug for VSS_VOLUME_PROTECTION_INFO {
fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result3689 fn fmt(&self, fmt: &mut ::std::fmt::Formatter<'_>) -> ::std::fmt::Result {
3690 fmt.debug_struct("VSS_VOLUME_PROTECTION_INFO")
3691 .field("m_protectionLevel", &self.m_protectionLevel)
3692 .field("m_volumeIsOfflineForProtection", &self.m_volumeIsOfflineForProtection)
3693 .field("m_protectionFault", &self.m_protectionFault)
3694 .field("m_failureStatus", &self.m_failureStatus)
3695 .field("m_volumeHasUnusedDiffArea", &self.m_volumeHasUnusedDiffArea)
3696 .field("m_reserved", &self.m_reserved)
3697 .finish()
3698 }
3699 }
3700 #[cfg(feature = "Win32_Foundation")]
3701 impl ::std::cmp::PartialEq for VSS_VOLUME_PROTECTION_INFO {
eq(&self, other: &Self) -> bool3702 fn eq(&self, other: &Self) -> bool {
3703 self.m_protectionLevel == other.m_protectionLevel && self.m_volumeIsOfflineForProtection == other.m_volumeIsOfflineForProtection && self.m_protectionFault == other.m_protectionFault && self.m_failureStatus == other.m_failureStatus && self.m_volumeHasUnusedDiffArea == other.m_volumeHasUnusedDiffArea && self.m_reserved == other.m_reserved
3704 }
3705 }
3706 #[cfg(feature = "Win32_Foundation")]
3707 impl ::std::cmp::Eq for VSS_VOLUME_PROTECTION_INFO {}
3708 #[cfg(feature = "Win32_Foundation")]
3709 unsafe impl ::windows::runtime::Abi for VSS_VOLUME_PROTECTION_INFO {
3710 type Abi = Self;
3711 type DefaultType = Self;
3712 }
3713 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3714 #[repr(transparent)]
3715 pub struct VSS_VOLUME_SNAPSHOT_ATTRIBUTES(pub i32);
3716 pub const VSS_VOLSNAP_ATTR_PERSISTENT: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(1i32);
3717 pub const VSS_VOLSNAP_ATTR_NO_AUTORECOVERY: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(2i32);
3718 pub const VSS_VOLSNAP_ATTR_CLIENT_ACCESSIBLE: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(4i32);
3719 pub const VSS_VOLSNAP_ATTR_NO_AUTO_RELEASE: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(8i32);
3720 pub const VSS_VOLSNAP_ATTR_NO_WRITERS: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(16i32);
3721 pub const VSS_VOLSNAP_ATTR_TRANSPORTABLE: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(32i32);
3722 pub const VSS_VOLSNAP_ATTR_NOT_SURFACED: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(64i32);
3723 pub const VSS_VOLSNAP_ATTR_NOT_TRANSACTED: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(128i32);
3724 pub const VSS_VOLSNAP_ATTR_HARDWARE_ASSISTED: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(65536i32);
3725 pub const VSS_VOLSNAP_ATTR_DIFFERENTIAL: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(131072i32);
3726 pub const VSS_VOLSNAP_ATTR_PLEX: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(262144i32);
3727 pub const VSS_VOLSNAP_ATTR_IMPORTED: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(524288i32);
3728 pub const VSS_VOLSNAP_ATTR_EXPOSED_LOCALLY: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(1048576i32);
3729 pub const VSS_VOLSNAP_ATTR_EXPOSED_REMOTELY: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(2097152i32);
3730 pub const VSS_VOLSNAP_ATTR_AUTORECOVER: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(4194304i32);
3731 pub const VSS_VOLSNAP_ATTR_ROLLBACK_RECOVERY: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(8388608i32);
3732 pub const VSS_VOLSNAP_ATTR_DELAYED_POSTSNAPSHOT: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(16777216i32);
3733 pub const VSS_VOLSNAP_ATTR_TXF_RECOVERY: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(33554432i32);
3734 pub const VSS_VOLSNAP_ATTR_FILE_SHARE: VSS_VOLUME_SNAPSHOT_ATTRIBUTES = VSS_VOLUME_SNAPSHOT_ATTRIBUTES(67108864i32);
3735 impl ::std::convert::From<i32> for VSS_VOLUME_SNAPSHOT_ATTRIBUTES {
from(value: i32) -> Self3736 fn from(value: i32) -> Self {
3737 Self(value)
3738 }
3739 }
3740 unsafe impl ::windows::runtime::Abi for VSS_VOLUME_SNAPSHOT_ATTRIBUTES {
3741 type Abi = Self;
3742 type DefaultType = Self;
3743 }
3744 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3745 #[repr(transparent)]
3746 pub struct VSS_WRITERRESTORE_ENUM(pub i32);
3747 pub const VSS_WRE_UNDEFINED: VSS_WRITERRESTORE_ENUM = VSS_WRITERRESTORE_ENUM(0i32);
3748 pub const VSS_WRE_NEVER: VSS_WRITERRESTORE_ENUM = VSS_WRITERRESTORE_ENUM(1i32);
3749 pub const VSS_WRE_IF_REPLACE_FAILS: VSS_WRITERRESTORE_ENUM = VSS_WRITERRESTORE_ENUM(2i32);
3750 pub const VSS_WRE_ALWAYS: VSS_WRITERRESTORE_ENUM = VSS_WRITERRESTORE_ENUM(3i32);
3751 impl ::std::convert::From<i32> for VSS_WRITERRESTORE_ENUM {
from(value: i32) -> Self3752 fn from(value: i32) -> Self {
3753 Self(value)
3754 }
3755 }
3756 unsafe impl ::windows::runtime::Abi for VSS_WRITERRESTORE_ENUM {
3757 type Abi = Self;
3758 type DefaultType = Self;
3759 }
3760 #[derive(:: std :: cmp :: PartialEq, :: std :: cmp :: Eq, :: std :: marker :: Copy, :: std :: clone :: Clone, :: std :: default :: Default, :: std :: fmt :: Debug)]
3761 #[repr(transparent)]
3762 pub struct VSS_WRITER_STATE(pub i32);
3763 pub const VSS_WS_UNKNOWN: VSS_WRITER_STATE = VSS_WRITER_STATE(0i32);
3764 pub const VSS_WS_STABLE: VSS_WRITER_STATE = VSS_WRITER_STATE(1i32);
3765 pub const VSS_WS_WAITING_FOR_FREEZE: VSS_WRITER_STATE = VSS_WRITER_STATE(2i32);
3766 pub const VSS_WS_WAITING_FOR_THAW: VSS_WRITER_STATE = VSS_WRITER_STATE(3i32);
3767 pub const VSS_WS_WAITING_FOR_POST_SNAPSHOT: VSS_WRITER_STATE = VSS_WRITER_STATE(4i32);
3768 pub const VSS_WS_WAITING_FOR_BACKUP_COMPLETE: VSS_WRITER_STATE = VSS_WRITER_STATE(5i32);
3769 pub const VSS_WS_FAILED_AT_IDENTIFY: VSS_WRITER_STATE = VSS_WRITER_STATE(6i32);
3770 pub const VSS_WS_FAILED_AT_PREPARE_BACKUP: VSS_WRITER_STATE = VSS_WRITER_STATE(7i32);
3771 pub const VSS_WS_FAILED_AT_PREPARE_SNAPSHOT: VSS_WRITER_STATE = VSS_WRITER_STATE(8i32);
3772 pub const VSS_WS_FAILED_AT_FREEZE: VSS_WRITER_STATE = VSS_WRITER_STATE(9i32);
3773 pub const VSS_WS_FAILED_AT_THAW: VSS_WRITER_STATE = VSS_WRITER_STATE(10i32);
3774 pub const VSS_WS_FAILED_AT_POST_SNAPSHOT: VSS_WRITER_STATE = VSS_WRITER_STATE(11i32);
3775 pub const VSS_WS_FAILED_AT_BACKUP_COMPLETE: VSS_WRITER_STATE = VSS_WRITER_STATE(12i32);
3776 pub const VSS_WS_FAILED_AT_PRE_RESTORE: VSS_WRITER_STATE = VSS_WRITER_STATE(13i32);
3777 pub const VSS_WS_FAILED_AT_POST_RESTORE: VSS_WRITER_STATE = VSS_WRITER_STATE(14i32);
3778 pub const VSS_WS_FAILED_AT_BACKUPSHUTDOWN: VSS_WRITER_STATE = VSS_WRITER_STATE(15i32);
3779 pub const VSS_WS_COUNT: VSS_WRITER_STATE = VSS_WRITER_STATE(16i32);
3780 impl ::std::convert::From<i32> for VSS_WRITER_STATE {
from(value: i32) -> Self3781 fn from(value: i32) -> Self {
3782 Self(value)
3783 }
3784 }
3785 unsafe impl ::windows::runtime::Abi for VSS_WRITER_STATE {
3786 type Abi = Self;
3787 type DefaultType = Self;
3788 }
3789 pub const VssSnapshotMgmt: ::windows::runtime::GUID = ::windows::runtime::GUID::from_values(190458962, 16057, 18186, [150, 226, 108, 109, 69, 112, 228, 15]);
3790