3 pub struct IBufferProtectUnprotectResult(::windows
::core
::IUnknown
);
4 unsafe impl ::windows
::core
::Interface
for IBufferProtectUnprotectResult
{
5 type Vtable
= IBufferProtectUnprotectResult_Vtbl
;
7 impl ::core
::clone
::Clone
for IBufferProtectUnprotectResult
{
8 fn clone(&self) -> Self {
12 unsafe impl ::windows
::core
::ComInterface
for IBufferProtectUnprotectResult
{
13 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x47995edc_6cec_4e3a_b251_9e7485d79e7a);
17 pub struct IBufferProtectUnprotectResult_Vtbl
{
18 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
19 #[cfg(feature = "Storage_Streams")]
20 pub Buffer
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
21 #[cfg(not(feature = "Storage_Streams"))]
23 pub ProtectionInfo
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
27 pub struct IDataProtectionInfo(::windows
::core
::IUnknown
);
28 unsafe impl ::windows
::core
::Interface
for IDataProtectionInfo
{
29 type Vtable
= IDataProtectionInfo_Vtbl
;
31 impl ::core
::clone
::Clone
for IDataProtectionInfo
{
32 fn clone(&self) -> Self {
36 unsafe impl ::windows
::core
::ComInterface
for IDataProtectionInfo
{
37 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x8420b0c1_5e31_4405_9540_3f943af0cb26);
41 pub struct IDataProtectionInfo_Vtbl
{
42 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
43 pub Status
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut DataProtectionStatus
) -> ::windows
::core
::HRESULT
,
44 pub Identity
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
48 pub struct IDataProtectionManagerStatics(::windows
::core
::IUnknown
);
49 unsafe impl ::windows
::core
::Interface
for IDataProtectionManagerStatics
{
50 type Vtable
= IDataProtectionManagerStatics_Vtbl
;
52 impl ::core
::clone
::Clone
for IDataProtectionManagerStatics
{
53 fn clone(&self) -> Self {
57 unsafe impl ::windows
::core
::ComInterface
for IDataProtectionManagerStatics
{
58 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xb6149b74_9144_4ee4_8a8a_30b5f361430e);
62 pub struct IDataProtectionManagerStatics_Vtbl
{
63 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
64 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
65 pub ProtectAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, data
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
66 #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))]
68 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
69 pub UnprotectAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, data
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
70 #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))]
71 UnprotectAsync
: usize,
72 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
73 pub ProtectStreamAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, unprotectedstream
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, protectedstream
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
74 #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))]
75 ProtectStreamAsync
: usize,
76 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
77 pub UnprotectStreamAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, protectedstream
: *mut ::core
::ffi
::c_void
, unprotectedstream
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
78 #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))]
79 UnprotectStreamAsync
: usize,
80 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
81 pub GetProtectionInfoAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, protecteddata
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
82 #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))]
83 GetProtectionInfoAsync
: usize,
84 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
85 pub GetStreamProtectionInfoAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, protectedstream
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
86 #[cfg(not(all(feature = "Foundation", feature = "Storage_Streams")))]
87 GetStreamProtectionInfoAsync
: usize,
91 pub struct IFileProtectionInfo(::windows
::core
::IUnknown
);
92 unsafe impl ::windows
::core
::Interface
for IFileProtectionInfo
{
93 type Vtable
= IFileProtectionInfo_Vtbl
;
95 impl ::core
::clone
::Clone
for IFileProtectionInfo
{
96 fn clone(&self) -> Self {
100 unsafe impl ::windows
::core
::ComInterface
for IFileProtectionInfo
{
101 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x4ee96486_147e_4dd0_8faf_5253ed91ad0c);
105 pub struct IFileProtectionInfo_Vtbl
{
106 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
107 pub Status
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut FileProtectionStatus
) -> ::windows
::core
::HRESULT
,
108 pub IsRoamable
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
109 pub Identity
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
113 pub struct IFileProtectionInfo2(::windows
::core
::IUnknown
);
114 unsafe impl ::windows
::core
::Interface
for IFileProtectionInfo2
{
115 type Vtable
= IFileProtectionInfo2_Vtbl
;
117 impl ::core
::clone
::Clone
for IFileProtectionInfo2
{
118 fn clone(&self) -> Self {
122 unsafe impl ::windows
::core
::ComInterface
for IFileProtectionInfo2
{
123 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x82123a4c_557a_498d_8e94_944cd5836432);
127 pub struct IFileProtectionInfo2_Vtbl
{
128 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
129 pub IsProtectWhileOpenSupported
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
133 pub struct IFileProtectionManagerStatics(::windows
::core
::IUnknown
);
134 unsafe impl ::windows
::core
::Interface
for IFileProtectionManagerStatics
{
135 type Vtable
= IFileProtectionManagerStatics_Vtbl
;
137 impl ::core
::clone
::Clone
for IFileProtectionManagerStatics
{
138 fn clone(&self) -> Self {
142 unsafe impl ::windows
::core
::ComInterface
for IFileProtectionManagerStatics
{
143 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x5846fc9b_e613_426b_bb38_88cba1dc9adb);
147 pub struct IFileProtectionManagerStatics_Vtbl
{
148 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
149 #[cfg(all(feature = "Foundation", feature = "Storage"))]
150 pub ProtectAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, target
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
151 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
153 #[cfg(all(feature = "Foundation", feature = "Storage"))]
154 pub CopyProtectionAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, source
: *mut ::core
::ffi
::c_void
, target
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
155 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
156 CopyProtectionAsync
: usize,
157 #[cfg(all(feature = "Foundation", feature = "Storage"))]
158 pub GetProtectionInfoAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, source
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
159 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
160 GetProtectionInfoAsync
: usize,
161 #[cfg(all(feature = "Foundation", feature = "Storage"))]
162 pub SaveFileAsContainerAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, protectedfile
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
163 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
164 SaveFileAsContainerAsync
: usize,
165 #[cfg(all(feature = "Foundation", feature = "Storage"))]
166 pub LoadFileFromContainerAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, containerfile
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
167 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
168 LoadFileFromContainerAsync
: usize,
169 #[cfg(all(feature = "Foundation", feature = "Storage"))]
170 pub LoadFileFromContainerWithTargetAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, containerfile
: *mut ::core
::ffi
::c_void
, target
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
171 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
172 LoadFileFromContainerWithTargetAsync
: usize,
173 #[cfg(all(feature = "Foundation", feature = "Storage"))]
174 pub CreateProtectedAndOpenAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, parentfolder
: *mut ::core
::ffi
::c_void
, desiredname
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, collisionoption
: super::super::Storage
::CreationCollisionOption
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
175 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
176 CreateProtectedAndOpenAsync
: usize,
180 pub struct IFileProtectionManagerStatics2(::windows
::core
::IUnknown
);
181 unsafe impl ::windows
::core
::Interface
for IFileProtectionManagerStatics2
{
182 type Vtable
= IFileProtectionManagerStatics2_Vtbl
;
184 impl ::core
::clone
::Clone
for IFileProtectionManagerStatics2
{
185 fn clone(&self) -> Self {
189 unsafe impl ::windows
::core
::ComInterface
for IFileProtectionManagerStatics2
{
190 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x83d2a745_0483_41ab_b2d5_bc7f23d74ebb);
194 pub struct IFileProtectionManagerStatics2_Vtbl
{
195 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
196 #[cfg(all(feature = "Foundation", feature = "Storage"))]
197 pub IsContainerAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, file
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
198 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
199 IsContainerAsync
: usize,
200 #[cfg(all(feature = "Foundation", feature = "Storage"))]
201 pub LoadFileFromContainerWithTargetAndNameCollisionOptionAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, containerfile
: *mut ::core
::ffi
::c_void
, target
: *mut ::core
::ffi
::c_void
, collisionoption
: super::super::Storage
::NameCollisionOption
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
202 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
203 LoadFileFromContainerWithTargetAndNameCollisionOptionAsync
: usize,
204 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
205 pub SaveFileAsContainerWithSharingAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, protectedfile
: *mut ::core
::ffi
::c_void
, sharedwithidentities
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
206 #[cfg(not(all(feature = "Foundation_Collections", feature = "Storage")))]
207 SaveFileAsContainerWithSharingAsync
: usize,
211 pub struct IFileProtectionManagerStatics3(::windows
::core
::IUnknown
);
212 unsafe impl ::windows
::core
::Interface
for IFileProtectionManagerStatics3
{
213 type Vtable
= IFileProtectionManagerStatics3_Vtbl
;
215 impl ::core
::clone
::Clone
for IFileProtectionManagerStatics3
{
216 fn clone(&self) -> Self {
220 unsafe impl ::windows
::core
::ComInterface
for IFileProtectionManagerStatics3
{
221 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x6918849a_624f_46d6_b241_e9cd5fdf3e3f);
225 pub struct IFileProtectionManagerStatics3_Vtbl
{
226 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
227 #[cfg(all(feature = "Foundation", feature = "Storage"))]
228 pub UnprotectAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, target
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
229 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
230 UnprotectAsync
: usize,
231 #[cfg(all(feature = "Foundation", feature = "Storage"))]
232 pub UnprotectWithOptionsAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, target
: *mut ::core
::ffi
::c_void
, options
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
233 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
234 UnprotectWithOptionsAsync
: usize,
237 #[cfg(feature = "deprecated")]
239 pub struct IFileRevocationManagerStatics(::windows
::core
::IUnknown
);
240 #[cfg(feature = "deprecated")]
241 unsafe impl ::windows
::core
::Interface
for IFileRevocationManagerStatics
{
242 type Vtable
= IFileRevocationManagerStatics_Vtbl
;
244 #[cfg(feature = "deprecated")]
245 impl ::core
::clone
::Clone
for IFileRevocationManagerStatics
{
246 fn clone(&self) -> Self {
250 #[cfg(feature = "deprecated")]
251 unsafe impl ::windows
::core
::ComInterface
for IFileRevocationManagerStatics
{
252 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x256bbc3d_1c5d_4260_8c75_9144cfb78ba9);
254 #[cfg(feature = "deprecated")]
257 pub struct IFileRevocationManagerStatics_Vtbl
{
258 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
259 #[cfg(all(feature = "Foundation", feature = "Storage", feature = "deprecated"))]
260 pub ProtectAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, storageitem
: *mut ::core
::ffi
::c_void
, enterpriseidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
261 #[cfg(not(all(feature = "Foundation", feature = "Storage", feature = "deprecated")))]
263 #[cfg(all(feature = "Foundation", feature = "Storage", feature = "deprecated"))]
264 pub CopyProtectionAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourcestorageitem
: *mut ::core
::ffi
::c_void
, targetstorageitem
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
265 #[cfg(not(all(feature = "Foundation", feature = "Storage", feature = "deprecated")))]
266 CopyProtectionAsync
: usize,
267 #[cfg(feature = "deprecated")]
268 pub Revoke
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, enterpriseidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
269 #[cfg(not(feature = "deprecated"))]
271 #[cfg(all(feature = "Foundation", feature = "Storage", feature = "deprecated"))]
272 pub GetStatusAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, storageitem
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
273 #[cfg(not(all(feature = "Foundation", feature = "Storage", feature = "deprecated")))]
274 GetStatusAsync
: usize,
278 pub struct IFileUnprotectOptions(::windows
::core
::IUnknown
);
279 unsafe impl ::windows
::core
::Interface
for IFileUnprotectOptions
{
280 type Vtable
= IFileUnprotectOptions_Vtbl
;
282 impl ::core
::clone
::Clone
for IFileUnprotectOptions
{
283 fn clone(&self) -> Self {
287 unsafe impl ::windows
::core
::ComInterface
for IFileUnprotectOptions
{
288 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x7d1312f1_3b0d_4dd8_a1f8_1ec53822e2f3);
292 pub struct IFileUnprotectOptions_Vtbl
{
293 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
294 pub SetAudit
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: bool
) -> ::windows
::core
::HRESULT
,
295 pub Audit
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
299 pub struct IFileUnprotectOptionsFactory(::windows
::core
::IUnknown
);
300 unsafe impl ::windows
::core
::Interface
for IFileUnprotectOptionsFactory
{
301 type Vtable
= IFileUnprotectOptionsFactory_Vtbl
;
303 impl ::core
::clone
::Clone
for IFileUnprotectOptionsFactory
{
304 fn clone(&self) -> Self {
308 unsafe impl ::windows
::core
::ComInterface
for IFileUnprotectOptionsFactory
{
309 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x51aeb39c_da8c_4c3f_9bfb_cb73a7cce0dd);
313 pub struct IFileUnprotectOptionsFactory_Vtbl
{
314 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
315 pub Create
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, audit
: bool
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
319 pub struct IProtectedAccessResumedEventArgs(::windows
::core
::IUnknown
);
320 unsafe impl ::windows
::core
::Interface
for IProtectedAccessResumedEventArgs
{
321 type Vtable
= IProtectedAccessResumedEventArgs_Vtbl
;
323 impl ::core
::clone
::Clone
for IProtectedAccessResumedEventArgs
{
324 fn clone(&self) -> Self {
328 unsafe impl ::windows
::core
::ComInterface
for IProtectedAccessResumedEventArgs
{
329 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xac4dca59_5d80_4e95_8c5f_8539450eebe0);
333 pub struct IProtectedAccessResumedEventArgs_Vtbl
{
334 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
335 #[cfg(feature = "Foundation_Collections")]
336 pub Identities
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
337 #[cfg(not(feature = "Foundation_Collections"))]
342 pub struct IProtectedAccessSuspendingEventArgs(::windows
::core
::IUnknown
);
343 unsafe impl ::windows
::core
::Interface
for IProtectedAccessSuspendingEventArgs
{
344 type Vtable
= IProtectedAccessSuspendingEventArgs_Vtbl
;
346 impl ::core
::clone
::Clone
for IProtectedAccessSuspendingEventArgs
{
347 fn clone(&self) -> Self {
351 unsafe impl ::windows
::core
::ComInterface
for IProtectedAccessSuspendingEventArgs
{
352 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x75a193e0_a344_429f_b975_04fc1f88c185);
356 pub struct IProtectedAccessSuspendingEventArgs_Vtbl
{
357 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
358 #[cfg(feature = "Foundation_Collections")]
359 pub Identities
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
360 #[cfg(not(feature = "Foundation_Collections"))]
362 #[cfg(feature = "Foundation")]
363 pub Deadline
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::DateTime
) -> ::windows
::core
::HRESULT
,
364 #[cfg(not(feature = "Foundation"))]
366 #[cfg(feature = "Foundation")]
367 pub GetDeferral
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
368 #[cfg(not(feature = "Foundation"))]
373 pub struct IProtectedContainerExportResult(::windows
::core
::IUnknown
);
374 unsafe impl ::windows
::core
::Interface
for IProtectedContainerExportResult
{
375 type Vtable
= IProtectedContainerExportResult_Vtbl
;
377 impl ::core
::clone
::Clone
for IProtectedContainerExportResult
{
378 fn clone(&self) -> Self {
382 unsafe impl ::windows
::core
::ComInterface
for IProtectedContainerExportResult
{
383 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x3948ef95_f7fb_4b42_afb0_df70b41543c1);
387 pub struct IProtectedContainerExportResult_Vtbl
{
388 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
389 pub Status
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ProtectedImportExportStatus
) -> ::windows
::core
::HRESULT
,
390 #[cfg(feature = "Storage")]
391 pub File
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
392 #[cfg(not(feature = "Storage"))]
397 pub struct IProtectedContainerImportResult(::windows
::core
::IUnknown
);
398 unsafe impl ::windows
::core
::Interface
for IProtectedContainerImportResult
{
399 type Vtable
= IProtectedContainerImportResult_Vtbl
;
401 impl ::core
::clone
::Clone
for IProtectedContainerImportResult
{
402 fn clone(&self) -> Self {
406 unsafe impl ::windows
::core
::ComInterface
for IProtectedContainerImportResult
{
407 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xcdb780d1_e7bb_4d1a_9339_34dc41149f9b);
411 pub struct IProtectedContainerImportResult_Vtbl
{
412 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
413 pub Status
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ProtectedImportExportStatus
) -> ::windows
::core
::HRESULT
,
414 #[cfg(feature = "Storage")]
415 pub File
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
416 #[cfg(not(feature = "Storage"))]
421 pub struct IProtectedContentRevokedEventArgs(::windows
::core
::IUnknown
);
422 unsafe impl ::windows
::core
::Interface
for IProtectedContentRevokedEventArgs
{
423 type Vtable
= IProtectedContentRevokedEventArgs_Vtbl
;
425 impl ::core
::clone
::Clone
for IProtectedContentRevokedEventArgs
{
426 fn clone(&self) -> Self {
430 unsafe impl ::windows
::core
::ComInterface
for IProtectedContentRevokedEventArgs
{
431 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x63686821_58b9_47ee_93d9_f0f741cf43f0);
435 pub struct IProtectedContentRevokedEventArgs_Vtbl
{
436 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
437 #[cfg(feature = "Foundation_Collections")]
438 pub Identities
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
439 #[cfg(not(feature = "Foundation_Collections"))]
444 pub struct IProtectedFileCreateResult(::windows
::core
::IUnknown
);
445 unsafe impl ::windows
::core
::Interface
for IProtectedFileCreateResult
{
446 type Vtable
= IProtectedFileCreateResult_Vtbl
;
448 impl ::core
::clone
::Clone
for IProtectedFileCreateResult
{
449 fn clone(&self) -> Self {
453 unsafe impl ::windows
::core
::ComInterface
for IProtectedFileCreateResult
{
454 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x28e3ed6a_e9e7_4a03_9f53_bdb16172699b);
458 pub struct IProtectedFileCreateResult_Vtbl
{
459 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
460 #[cfg(feature = "Storage")]
461 pub File
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
462 #[cfg(not(feature = "Storage"))]
464 #[cfg(feature = "Storage_Streams")]
465 pub Stream
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
466 #[cfg(not(feature = "Storage_Streams"))]
468 pub ProtectionInfo
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
472 pub struct IProtectionPolicyAuditInfo(::windows
::core
::IUnknown
);
473 unsafe impl ::windows
::core
::Interface
for IProtectionPolicyAuditInfo
{
474 type Vtable
= IProtectionPolicyAuditInfo_Vtbl
;
476 impl ::core
::clone
::Clone
for IProtectionPolicyAuditInfo
{
477 fn clone(&self) -> Self {
481 unsafe impl ::windows
::core
::ComInterface
for IProtectionPolicyAuditInfo
{
482 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x425ab7e4_feb7_44fc_b3bb_c3c4d7ecbebb);
486 pub struct IProtectionPolicyAuditInfo_Vtbl
{
487 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
488 pub SetAction
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ProtectionPolicyAuditAction
) -> ::windows
::core
::HRESULT
,
489 pub Action
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ProtectionPolicyAuditAction
) -> ::windows
::core
::HRESULT
,
490 pub SetDataDescription
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
491 pub DataDescription
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
492 pub SetSourceDescription
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
493 pub SourceDescription
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
494 pub SetTargetDescription
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
495 pub TargetDescription
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
499 pub struct IProtectionPolicyAuditInfoFactory(::windows
::core
::IUnknown
);
500 unsafe impl ::windows
::core
::Interface
for IProtectionPolicyAuditInfoFactory
{
501 type Vtable
= IProtectionPolicyAuditInfoFactory_Vtbl
;
503 impl ::core
::clone
::Clone
for IProtectionPolicyAuditInfoFactory
{
504 fn clone(&self) -> Self {
508 unsafe impl ::windows
::core
::ComInterface
for IProtectionPolicyAuditInfoFactory
{
509 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x7ed4180b_92e8_42d5_83d4_25440b423549);
513 pub struct IProtectionPolicyAuditInfoFactory_Vtbl
{
514 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
515 pub Create
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, action
: ProtectionPolicyAuditAction
, datadescription
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, sourcedescription
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, targetdescription
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
516 pub CreateWithActionAndDataDescription
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, action
: ProtectionPolicyAuditAction
, datadescription
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
520 pub struct IProtectionPolicyManager(::windows
::core
::IUnknown
);
521 unsafe impl ::windows
::core
::Interface
for IProtectionPolicyManager
{
522 type Vtable
= IProtectionPolicyManager_Vtbl
;
524 impl ::core
::clone
::Clone
for IProtectionPolicyManager
{
525 fn clone(&self) -> Self {
529 unsafe impl ::windows
::core
::ComInterface
for IProtectionPolicyManager
{
530 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xd5703e18_a08d_47e6_a240_9934d7165eb5);
534 pub struct IProtectionPolicyManager_Vtbl
{
535 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
536 pub SetIdentity
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
537 pub Identity
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
541 pub struct IProtectionPolicyManager2(::windows
::core
::IUnknown
);
542 unsafe impl ::windows
::core
::Interface
for IProtectionPolicyManager2
{
543 type Vtable
= IProtectionPolicyManager2_Vtbl
;
545 impl ::core
::clone
::Clone
for IProtectionPolicyManager2
{
546 fn clone(&self) -> Self {
550 unsafe impl ::windows
::core
::ComInterface
for IProtectionPolicyManager2
{
551 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xabf7527a_8435_417f_99b6_51beaf365888);
555 pub struct IProtectionPolicyManager2_Vtbl
{
556 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
557 pub SetShowEnterpriseIndicator
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, value
: bool
) -> ::windows
::core
::HRESULT
,
558 pub ShowEnterpriseIndicator
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
562 pub struct IProtectionPolicyManagerStatics(::windows
::core
::IUnknown
);
563 unsafe impl ::windows
::core
::Interface
for IProtectionPolicyManagerStatics
{
564 type Vtable
= IProtectionPolicyManagerStatics_Vtbl
;
566 impl ::core
::clone
::Clone
for IProtectionPolicyManagerStatics
{
567 fn clone(&self) -> Self {
571 unsafe impl ::windows
::core
::ComInterface
for IProtectionPolicyManagerStatics
{
572 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xc0bffc66_8c3d_4d56_8804_c68f0ad32ec5);
576 pub struct IProtectionPolicyManagerStatics_Vtbl
{
577 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
578 pub IsIdentityManaged
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
579 pub TryApplyProcessUIPolicy
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
580 pub ClearProcessUIPolicy
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
581 pub CreateCurrentThreadNetworkContext
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
582 #[cfg(all(feature = "Foundation", feature = "Networking"))]
583 pub GetPrimaryManagedIdentityForNetworkEndpointAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, endpointhost
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
584 #[cfg(not(all(feature = "Foundation", feature = "Networking")))]
585 GetPrimaryManagedIdentityForNetworkEndpointAsync
: usize,
586 pub RevokeContent
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
587 pub GetForCurrentView
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
588 #[cfg(feature = "Foundation")]
589 pub ProtectedAccessSuspending
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, handler
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
590 #[cfg(not(feature = "Foundation"))]
591 ProtectedAccessSuspending
: usize,
592 #[cfg(feature = "Foundation")]
593 pub RemoveProtectedAccessSuspending
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
594 #[cfg(not(feature = "Foundation"))]
595 RemoveProtectedAccessSuspending
: usize,
596 #[cfg(feature = "Foundation")]
597 pub ProtectedAccessResumed
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, handler
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
598 #[cfg(not(feature = "Foundation"))]
599 ProtectedAccessResumed
: usize,
600 #[cfg(feature = "Foundation")]
601 pub RemoveProtectedAccessResumed
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
602 #[cfg(not(feature = "Foundation"))]
603 RemoveProtectedAccessResumed
: usize,
604 #[cfg(feature = "Foundation")]
605 pub ProtectedContentRevoked
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, handler
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
606 #[cfg(not(feature = "Foundation"))]
607 ProtectedContentRevoked
: usize,
608 #[cfg(feature = "Foundation")]
609 pub RemoveProtectedContentRevoked
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
610 #[cfg(not(feature = "Foundation"))]
611 RemoveProtectedContentRevoked
: usize,
612 pub CheckAccess
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, targetidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut ProtectionPolicyEvaluationResult
) -> ::windows
::core
::HRESULT
,
613 #[cfg(feature = "Foundation")]
614 pub RequestAccessAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, targetidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
615 #[cfg(not(feature = "Foundation"))]
616 RequestAccessAsync
: usize,
620 pub struct IProtectionPolicyManagerStatics2(::windows
::core
::IUnknown
);
621 unsafe impl ::windows
::core
::Interface
for IProtectionPolicyManagerStatics2
{
622 type Vtable
= IProtectionPolicyManagerStatics2_Vtbl
;
624 impl ::core
::clone
::Clone
for IProtectionPolicyManagerStatics2
{
625 fn clone(&self) -> Self {
629 unsafe impl ::windows
::core
::ComInterface
for IProtectionPolicyManagerStatics2
{
630 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xb68f9a8c_39e0_4649_b2e4_070ab8a579b3);
634 pub struct IProtectionPolicyManagerStatics2_Vtbl
{
635 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
636 #[cfg(feature = "Foundation")]
637 pub HasContentBeenRevokedSince
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, since
: super::super::Foundation
::DateTime
, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
638 #[cfg(not(feature = "Foundation"))]
639 HasContentBeenRevokedSince
: usize,
640 pub CheckAccessForApp
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, apppackagefamilyname
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut ProtectionPolicyEvaluationResult
) -> ::windows
::core
::HRESULT
,
641 #[cfg(feature = "Foundation")]
642 pub RequestAccessForAppAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, apppackagefamilyname
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
643 #[cfg(not(feature = "Foundation"))]
644 RequestAccessForAppAsync
: usize,
645 pub GetEnforcementLevel
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut EnforcementLevel
) -> ::windows
::core
::HRESULT
,
646 pub IsUserDecryptionAllowed
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
647 pub IsProtectionUnderLockRequired
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
648 #[cfg(feature = "Foundation")]
649 pub PolicyChanged
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, handler
: *mut ::core
::ffi
::c_void
, result__
: *mut super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
650 #[cfg(not(feature = "Foundation"))]
651 PolicyChanged
: usize,
652 #[cfg(feature = "Foundation")]
653 pub RemovePolicyChanged
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::HRESULT
,
654 #[cfg(not(feature = "Foundation"))]
655 RemovePolicyChanged
: usize,
656 pub IsProtectionEnabled
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
660 pub struct IProtectionPolicyManagerStatics3(::windows
::core
::IUnknown
);
661 unsafe impl ::windows
::core
::Interface
for IProtectionPolicyManagerStatics3
{
662 type Vtable
= IProtectionPolicyManagerStatics3_Vtbl
;
664 impl ::core
::clone
::Clone
for IProtectionPolicyManagerStatics3
{
665 fn clone(&self) -> Self {
669 unsafe impl ::windows
::core
::ComInterface
for IProtectionPolicyManagerStatics3
{
670 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x48ff9e8c_6a6f_4d9f_bced_18ab537aa015);
674 pub struct IProtectionPolicyManagerStatics3_Vtbl
{
675 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
676 #[cfg(feature = "Foundation")]
677 pub RequestAccessWithAuditingInfoAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, targetidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, auditinfo
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
678 #[cfg(not(feature = "Foundation"))]
679 RequestAccessWithAuditingInfoAsync
: usize,
680 #[cfg(feature = "Foundation")]
681 pub RequestAccessWithMessageAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, targetidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, auditinfo
: *mut ::core
::ffi
::c_void
, messagefromapp
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
682 #[cfg(not(feature = "Foundation"))]
683 RequestAccessWithMessageAsync
: usize,
684 #[cfg(feature = "Foundation")]
685 pub RequestAccessForAppWithAuditingInfoAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, apppackagefamilyname
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, auditinfo
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
686 #[cfg(not(feature = "Foundation"))]
687 RequestAccessForAppWithAuditingInfoAsync
: usize,
688 #[cfg(feature = "Foundation")]
689 pub RequestAccessForAppWithMessageAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, apppackagefamilyname
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, auditinfo
: *mut ::core
::ffi
::c_void
, messagefromapp
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
690 #[cfg(not(feature = "Foundation"))]
691 RequestAccessForAppWithMessageAsync
: usize,
692 pub LogAuditEvent
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, targetidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, auditinfo
: *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
696 pub struct IProtectionPolicyManagerStatics4(::windows
::core
::IUnknown
);
697 unsafe impl ::windows
::core
::Interface
for IProtectionPolicyManagerStatics4
{
698 type Vtable
= IProtectionPolicyManagerStatics4_Vtbl
;
700 impl ::core
::clone
::Clone
for IProtectionPolicyManagerStatics4
{
701 fn clone(&self) -> Self {
705 unsafe impl ::windows
::core
::ComInterface
for IProtectionPolicyManagerStatics4
{
706 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0x20b794db_ccbd_490f_8c83_49ccb77aea6c);
710 pub struct IProtectionPolicyManagerStatics4_Vtbl
{
711 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
712 pub IsRoamableProtectionEnabled
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut bool
) -> ::windows
::core
::HRESULT
,
713 #[cfg(feature = "Foundation")]
714 pub RequestAccessWithBehaviorAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, targetidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, auditinfo
: *mut ::core
::ffi
::c_void
, messagefromapp
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, behavior
: ProtectionPolicyRequestAccessBehavior
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
715 #[cfg(not(feature = "Foundation"))]
716 RequestAccessWithBehaviorAsync
: usize,
717 #[cfg(feature = "Foundation")]
718 pub RequestAccessForAppWithBehaviorAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceidentity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, apppackagefamilyname
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, auditinfo
: *mut ::core
::ffi
::c_void
, messagefromapp
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, behavior
: ProtectionPolicyRequestAccessBehavior
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
719 #[cfg(not(feature = "Foundation"))]
720 RequestAccessForAppWithBehaviorAsync
: usize,
721 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
722 pub RequestAccessToFilesForAppAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceitemlist
: *mut ::core
::ffi
::c_void
, apppackagefamilyname
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, auditinfo
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
723 #[cfg(not(all(feature = "Foundation_Collections", feature = "Storage")))]
724 RequestAccessToFilesForAppAsync
: usize,
725 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
726 pub RequestAccessToFilesForAppWithMessageAndBehaviorAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceitemlist
: *mut ::core
::ffi
::c_void
, apppackagefamilyname
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, auditinfo
: *mut ::core
::ffi
::c_void
, messagefromapp
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, behavior
: ProtectionPolicyRequestAccessBehavior
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
727 #[cfg(not(all(feature = "Foundation_Collections", feature = "Storage")))]
728 RequestAccessToFilesForAppWithMessageAndBehaviorAsync
: usize,
729 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
730 pub RequestAccessToFilesForProcessAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceitemlist
: *mut ::core
::ffi
::c_void
, processid
: u32, auditinfo
: *mut ::core
::ffi
::c_void
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
731 #[cfg(not(all(feature = "Foundation_Collections", feature = "Storage")))]
732 RequestAccessToFilesForProcessAsync
: usize,
733 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
734 pub RequestAccessToFilesForProcessWithMessageAndBehaviorAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, sourceitemlist
: *mut ::core
::ffi
::c_void
, processid
: u32, auditinfo
: *mut ::core
::ffi
::c_void
, messagefromapp
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, behavior
: ProtectionPolicyRequestAccessBehavior
, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
735 #[cfg(not(all(feature = "Foundation_Collections", feature = "Storage")))]
736 RequestAccessToFilesForProcessWithMessageAndBehaviorAsync
: usize,
737 #[cfg(all(feature = "Foundation", feature = "Storage"))]
738 pub IsFileProtectionRequiredAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, target
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
739 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
740 IsFileProtectionRequiredAsync
: usize,
741 #[cfg(all(feature = "Foundation", feature = "Storage"))]
742 pub IsFileProtectionRequiredForNewFileAsync
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, parentfolder
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, desiredname
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut *mut ::core
::ffi
::c_void
) -> ::windows
::core
::HRESULT
,
743 #[cfg(not(all(feature = "Foundation", feature = "Storage")))]
744 IsFileProtectionRequiredForNewFileAsync
: usize,
745 pub PrimaryManagedIdentity
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
746 pub GetPrimaryManagedIdentityForIdentity
: unsafe extern "system" fn(this
: *mut ::core
::ffi
::c_void
, identity
: ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>, result__
: *mut ::std
::mem
::MaybeUninit
<::windows
::core
::HSTRING
>) -> ::windows
::core
::HRESULT
,
750 pub struct IThreadNetworkContext(::windows
::core
::IUnknown
);
751 unsafe impl ::windows
::core
::Interface
for IThreadNetworkContext
{
752 type Vtable
= IThreadNetworkContext_Vtbl
;
754 impl ::core
::clone
::Clone
for IThreadNetworkContext
{
755 fn clone(&self) -> Self {
759 unsafe impl ::windows
::core
::ComInterface
for IThreadNetworkContext
{
760 const IID
: ::windows
::core
::GUID
= ::windows
::core
::GUID
::from_u128(0xfa4ea8e9_ef13_405a_b12c_d7348c6f41fc);
764 pub struct IThreadNetworkContext_Vtbl
{
765 pub base__
: ::windows
::core
::IInspectable_Vtbl
,
767 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
769 pub struct BufferProtectUnprotectResult(::windows
::core
::IUnknown
);
770 impl BufferProtectUnprotectResult
{
771 #[doc = "*Required features: `\"Storage_Streams\"`*"]
772 #[cfg(feature = "Storage_Streams")]
773 pub fn Buffer(&self) -> ::windows
::core
::Result
<super::super::Storage
::Streams
::IBuffer
> {
776 let mut result__
= ::windows
::core
::zeroed
::<super::super::Storage
::Streams
::IBuffer
>();
777 (::windows
::core
::Interface
::vtable(this
).Buffer
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
780 pub fn ProtectionInfo(&self) -> ::windows
::core
::Result
<DataProtectionInfo
> {
783 let mut result__
= ::windows
::core
::zeroed
::<DataProtectionInfo
>();
784 (::windows
::core
::Interface
::vtable(this
).ProtectionInfo
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
788 impl ::core
::cmp
::PartialEq
for BufferProtectUnprotectResult
{
789 fn eq(&self, other
: &Self) -> bool
{
793 impl ::core
::cmp
::Eq
for BufferProtectUnprotectResult {}
794 impl ::core
::fmt
::Debug
for BufferProtectUnprotectResult
{
795 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
796 f
.debug_tuple("BufferProtectUnprotectResult").field(&self.0).finish()
799 impl ::windows
::core
::RuntimeType
for BufferProtectUnprotectResult
{
800 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.BufferProtectUnprotectResult;{47995edc-6cec-4e3a-b251-9e7485d79e7a})");
802 impl ::core
::clone
::Clone
for BufferProtectUnprotectResult
{
803 fn clone(&self) -> Self {
807 unsafe impl ::windows
::core
::Interface
for BufferProtectUnprotectResult
{
808 type Vtable
= IBufferProtectUnprotectResult_Vtbl
;
810 unsafe impl ::windows
::core
::ComInterface
for BufferProtectUnprotectResult
{
811 const IID
: ::windows
::core
::GUID
= <IBufferProtectUnprotectResult
as ::windows
::core
::ComInterface
>::IID
;
813 impl ::windows
::core
::RuntimeName
for BufferProtectUnprotectResult
{
814 const NAME
: &'
static str = "Windows.Security.EnterpriseData.BufferProtectUnprotectResult";
816 ::windows
::imp
::interface_hierarchy
!(BufferProtectUnprotectResult
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
817 unsafe impl ::core
::marker
::Send
for BufferProtectUnprotectResult {}
818 unsafe impl ::core
::marker
::Sync
for BufferProtectUnprotectResult {}
819 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
821 pub struct DataProtectionInfo(::windows
::core
::IUnknown
);
822 impl DataProtectionInfo
{
823 pub fn Status(&self) -> ::windows
::core
::Result
<DataProtectionStatus
> {
826 let mut result__
= ::windows
::core
::zeroed
::<DataProtectionStatus
>();
827 (::windows
::core
::Interface
::vtable(this
).Status
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
830 pub fn Identity(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
833 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
834 (::windows
::core
::Interface
::vtable(this
).Identity
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
838 impl ::core
::cmp
::PartialEq
for DataProtectionInfo
{
839 fn eq(&self, other
: &Self) -> bool
{
843 impl ::core
::cmp
::Eq
for DataProtectionInfo {}
844 impl ::core
::fmt
::Debug
for DataProtectionInfo
{
845 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
846 f
.debug_tuple("DataProtectionInfo").field(&self.0).finish()
849 impl ::windows
::core
::RuntimeType
for DataProtectionInfo
{
850 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.DataProtectionInfo;{8420b0c1-5e31-4405-9540-3f943af0cb26})");
852 impl ::core
::clone
::Clone
for DataProtectionInfo
{
853 fn clone(&self) -> Self {
857 unsafe impl ::windows
::core
::Interface
for DataProtectionInfo
{
858 type Vtable
= IDataProtectionInfo_Vtbl
;
860 unsafe impl ::windows
::core
::ComInterface
for DataProtectionInfo
{
861 const IID
: ::windows
::core
::GUID
= <IDataProtectionInfo
as ::windows
::core
::ComInterface
>::IID
;
863 impl ::windows
::core
::RuntimeName
for DataProtectionInfo
{
864 const NAME
: &'
static str = "Windows.Security.EnterpriseData.DataProtectionInfo";
866 ::windows
::imp
::interface_hierarchy
!(DataProtectionInfo
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
867 unsafe impl ::core
::marker
::Send
for DataProtectionInfo {}
868 unsafe impl ::core
::marker
::Sync
for DataProtectionInfo {}
869 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
870 pub struct DataProtectionManager
;
871 impl DataProtectionManager
{
872 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
873 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
874 pub fn ProtectAsync
<P0
>(data
: P0
, identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<BufferProtectUnprotectResult
>>
876 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IBuffer
>,
878 Self::IDataProtectionManagerStatics(|this
| unsafe {
879 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<BufferProtectUnprotectResult
>>();
880 (::windows
::core
::Interface
::vtable(this
).ProtectAsync
)(::windows
::core
::Interface
::as_raw(this
), data
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
883 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
884 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
885 pub fn UnprotectAsync
<P0
>(data
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<BufferProtectUnprotectResult
>>
887 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IBuffer
>,
889 Self::IDataProtectionManagerStatics(|this
| unsafe {
890 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<BufferProtectUnprotectResult
>>();
891 (::windows
::core
::Interface
::vtable(this
).UnprotectAsync
)(::windows
::core
::Interface
::as_raw(this
), data
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
894 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
895 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
896 pub fn ProtectStreamAsync
<P0
, P1
>(unprotectedstream
: P0
, identity
: &::windows
::core
::HSTRING
, protectedstream
: P1
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<DataProtectionInfo
>>
898 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IInputStream
>,
899 P1
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IOutputStream
>,
901 Self::IDataProtectionManagerStatics(|this
| unsafe {
902 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<DataProtectionInfo
>>();
903 (::windows
::core
::Interface
::vtable(this
).ProtectStreamAsync
)(::windows
::core
::Interface
::as_raw(this
), unprotectedstream
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(identity
), protectedstream
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
906 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
907 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
908 pub fn UnprotectStreamAsync
<P0
, P1
>(protectedstream
: P0
, unprotectedstream
: P1
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<DataProtectionInfo
>>
910 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IInputStream
>,
911 P1
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IOutputStream
>,
913 Self::IDataProtectionManagerStatics(|this
| unsafe {
914 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<DataProtectionInfo
>>();
915 (::windows
::core
::Interface
::vtable(this
).UnprotectStreamAsync
)(::windows
::core
::Interface
::as_raw(this
), protectedstream
.try_into_param()?
.abi(), unprotectedstream
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
918 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
919 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
920 pub fn GetProtectionInfoAsync
<P0
>(protecteddata
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<DataProtectionInfo
>>
922 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IBuffer
>,
924 Self::IDataProtectionManagerStatics(|this
| unsafe {
925 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<DataProtectionInfo
>>();
926 (::windows
::core
::Interface
::vtable(this
).GetProtectionInfoAsync
)(::windows
::core
::Interface
::as_raw(this
), protecteddata
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
929 #[doc = "*Required features: `\"Foundation\"`, `\"Storage_Streams\"`*"]
930 #[cfg(all(feature = "Foundation", feature = "Storage_Streams"))]
931 pub fn GetStreamProtectionInfoAsync
<P0
>(protectedstream
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<DataProtectionInfo
>>
933 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::Streams
::IInputStream
>,
935 Self::IDataProtectionManagerStatics(|this
| unsafe {
936 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<DataProtectionInfo
>>();
937 (::windows
::core
::Interface
::vtable(this
).GetStreamProtectionInfoAsync
)(::windows
::core
::Interface
::as_raw(this
), protectedstream
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
941 pub fn IDataProtectionManagerStatics
<R
, F
: FnOnce(&IDataProtectionManagerStatics
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
942 static SHARED
: ::windows
::imp
::FactoryCache
<DataProtectionManager
, IDataProtectionManagerStatics
> = ::windows
::imp
::FactoryCache
::new();
943 SHARED
.call(callback
)
946 impl ::windows
::core
::RuntimeName
for DataProtectionManager
{
947 const NAME
: &'
static str = "Windows.Security.EnterpriseData.DataProtectionManager";
949 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
951 pub struct FileProtectionInfo(::windows
::core
::IUnknown
);
952 impl FileProtectionInfo
{
953 pub fn Status(&self) -> ::windows
::core
::Result
<FileProtectionStatus
> {
956 let mut result__
= ::windows
::core
::zeroed
::<FileProtectionStatus
>();
957 (::windows
::core
::Interface
::vtable(this
).Status
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
960 pub fn IsRoamable(&self) -> ::windows
::core
::Result
<bool
> {
963 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
964 (::windows
::core
::Interface
::vtable(this
).IsRoamable
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
967 pub fn Identity(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
970 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
971 (::windows
::core
::Interface
::vtable(this
).Identity
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
974 pub fn IsProtectWhileOpenSupported(&self) -> ::windows
::core
::Result
<bool
> {
975 let this
= &::windows
::core
::ComInterface
::cast
::<IFileProtectionInfo2
>(self)?
;
977 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
978 (::windows
::core
::Interface
::vtable(this
).IsProtectWhileOpenSupported
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
982 impl ::core
::cmp
::PartialEq
for FileProtectionInfo
{
983 fn eq(&self, other
: &Self) -> bool
{
987 impl ::core
::cmp
::Eq
for FileProtectionInfo {}
988 impl ::core
::fmt
::Debug
for FileProtectionInfo
{
989 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
990 f
.debug_tuple("FileProtectionInfo").field(&self.0).finish()
993 impl ::windows
::core
::RuntimeType
for FileProtectionInfo
{
994 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.FileProtectionInfo;{4ee96486-147e-4dd0-8faf-5253ed91ad0c})");
996 impl ::core
::clone
::Clone
for FileProtectionInfo
{
997 fn clone(&self) -> Self {
1001 unsafe impl ::windows
::core
::Interface
for FileProtectionInfo
{
1002 type Vtable
= IFileProtectionInfo_Vtbl
;
1004 unsafe impl ::windows
::core
::ComInterface
for FileProtectionInfo
{
1005 const IID
: ::windows
::core
::GUID
= <IFileProtectionInfo
as ::windows
::core
::ComInterface
>::IID
;
1007 impl ::windows
::core
::RuntimeName
for FileProtectionInfo
{
1008 const NAME
: &'
static str = "Windows.Security.EnterpriseData.FileProtectionInfo";
1010 ::windows
::imp
::interface_hierarchy
!(FileProtectionInfo
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1011 unsafe impl ::core
::marker
::Send
for FileProtectionInfo {}
1012 unsafe impl ::core
::marker
::Sync
for FileProtectionInfo {}
1013 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1014 pub struct FileProtectionManager
;
1015 impl FileProtectionManager
{
1016 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1017 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1018 pub fn ProtectAsync
<P0
>(target
: P0
, identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<FileProtectionInfo
>>
1020 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1022 Self::IFileProtectionManagerStatics(|this
| unsafe {
1023 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<FileProtectionInfo
>>();
1024 (::windows
::core
::Interface
::vtable(this
).ProtectAsync
)(::windows
::core
::Interface
::as_raw(this
), target
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
1027 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1028 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1029 pub fn CopyProtectionAsync
<P0
, P1
>(source
: P0
, target
: P1
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<bool
>>
1031 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1032 P1
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1034 Self::IFileProtectionManagerStatics(|this
| unsafe {
1035 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<bool
>>();
1036 (::windows
::core
::Interface
::vtable(this
).CopyProtectionAsync
)(::windows
::core
::Interface
::as_raw(this
), source
.try_into_param()?
.abi(), target
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1039 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1040 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1041 pub fn GetProtectionInfoAsync
<P0
>(source
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<FileProtectionInfo
>>
1043 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1045 Self::IFileProtectionManagerStatics(|this
| unsafe {
1046 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<FileProtectionInfo
>>();
1047 (::windows
::core
::Interface
::vtable(this
).GetProtectionInfoAsync
)(::windows
::core
::Interface
::as_raw(this
), source
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1050 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1051 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1052 pub fn SaveFileAsContainerAsync
<P0
>(protectedfile
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectedContainerExportResult
>>
1054 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageFile
>,
1056 Self::IFileProtectionManagerStatics(|this
| unsafe {
1057 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectedContainerExportResult
>>();
1058 (::windows
::core
::Interface
::vtable(this
).SaveFileAsContainerAsync
)(::windows
::core
::Interface
::as_raw(this
), protectedfile
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1061 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1062 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1063 pub fn LoadFileFromContainerAsync
<P0
>(containerfile
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectedContainerImportResult
>>
1065 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageFile
>,
1067 Self::IFileProtectionManagerStatics(|this
| unsafe {
1068 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectedContainerImportResult
>>();
1069 (::windows
::core
::Interface
::vtable(this
).LoadFileFromContainerAsync
)(::windows
::core
::Interface
::as_raw(this
), containerfile
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1072 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1073 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1074 pub fn LoadFileFromContainerWithTargetAsync
<P0
, P1
>(containerfile
: P0
, target
: P1
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectedContainerImportResult
>>
1076 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageFile
>,
1077 P1
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1079 Self::IFileProtectionManagerStatics(|this
| unsafe {
1080 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectedContainerImportResult
>>();
1081 (::windows
::core
::Interface
::vtable(this
).LoadFileFromContainerWithTargetAsync
)(::windows
::core
::Interface
::as_raw(this
), containerfile
.try_into_param()?
.abi(), target
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1084 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1085 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1086 pub fn CreateProtectedAndOpenAsync
<P0
>(parentfolder
: P0
, desiredname
: &::windows
::core
::HSTRING
, identity
: &::windows
::core
::HSTRING
, collisionoption
: super::super::Storage
::CreationCollisionOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectedFileCreateResult
>>
1088 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageFolder
>,
1090 Self::IFileProtectionManagerStatics(|this
| unsafe {
1091 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectedFileCreateResult
>>();
1092 (::windows
::core
::Interface
::vtable(this
).CreateProtectedAndOpenAsync
)(::windows
::core
::Interface
::as_raw(this
), parentfolder
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(desiredname
), ::core
::mem
::transmute_copy(identity
), collisionoption
, &mut result__
).from_abi(result__
)
1095 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1096 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1097 pub fn IsContainerAsync
<P0
>(file
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<bool
>>
1099 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageFile
>,
1101 Self::IFileProtectionManagerStatics2(|this
| unsafe {
1102 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<bool
>>();
1103 (::windows
::core
::Interface
::vtable(this
).IsContainerAsync
)(::windows
::core
::Interface
::as_raw(this
), file
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1106 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1107 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1108 pub fn LoadFileFromContainerWithTargetAndNameCollisionOptionAsync
<P0
, P1
>(containerfile
: P0
, target
: P1
, collisionoption
: super::super::Storage
::NameCollisionOption
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectedContainerImportResult
>>
1110 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageFile
>,
1111 P1
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1113 Self::IFileProtectionManagerStatics2(|this
| unsafe {
1114 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectedContainerImportResult
>>();
1115 (::windows
::core
::Interface
::vtable(this
).LoadFileFromContainerWithTargetAndNameCollisionOptionAsync
)(::windows
::core
::Interface
::as_raw(this
), containerfile
.try_into_param()?
.abi(), target
.try_into_param()?
.abi(), collisionoption
, &mut result__
).from_abi(result__
)
1118 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage\"`*"]
1119 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
1120 pub fn SaveFileAsContainerWithSharingAsync
<P0
, P1
>(protectedfile
: P0
, sharedwithidentities
: P1
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectedContainerExportResult
>>
1122 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageFile
>,
1123 P1
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<::windows
::core
::HSTRING
>>,
1125 Self::IFileProtectionManagerStatics2(|this
| unsafe {
1126 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectedContainerExportResult
>>();
1127 (::windows
::core
::Interface
::vtable(this
).SaveFileAsContainerWithSharingAsync
)(::windows
::core
::Interface
::as_raw(this
), protectedfile
.try_into_param()?
.abi(), sharedwithidentities
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1130 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1131 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1132 pub fn UnprotectAsync
<P0
>(target
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<FileProtectionInfo
>>
1134 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1136 Self::IFileProtectionManagerStatics3(|this
| unsafe {
1137 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<FileProtectionInfo
>>();
1138 (::windows
::core
::Interface
::vtable(this
).UnprotectAsync
)(::windows
::core
::Interface
::as_raw(this
), target
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1141 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1142 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1143 pub fn UnprotectWithOptionsAsync
<P0
>(target
: P0
, options
: &FileUnprotectOptions
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<FileProtectionInfo
>>
1145 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1147 Self::IFileProtectionManagerStatics3(|this
| unsafe {
1148 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<FileProtectionInfo
>>();
1149 (::windows
::core
::Interface
::vtable(this
).UnprotectWithOptionsAsync
)(::windows
::core
::Interface
::as_raw(this
), target
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(options
), &mut result__
).from_abi(result__
)
1153 pub fn IFileProtectionManagerStatics
<R
, F
: FnOnce(&IFileProtectionManagerStatics
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
1154 static SHARED
: ::windows
::imp
::FactoryCache
<FileProtectionManager
, IFileProtectionManagerStatics
> = ::windows
::imp
::FactoryCache
::new();
1155 SHARED
.call(callback
)
1158 pub fn IFileProtectionManagerStatics2
<R
, F
: FnOnce(&IFileProtectionManagerStatics2
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
1159 static SHARED
: ::windows
::imp
::FactoryCache
<FileProtectionManager
, IFileProtectionManagerStatics2
> = ::windows
::imp
::FactoryCache
::new();
1160 SHARED
.call(callback
)
1163 pub fn IFileProtectionManagerStatics3
<R
, F
: FnOnce(&IFileProtectionManagerStatics3
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
1164 static SHARED
: ::windows
::imp
::FactoryCache
<FileProtectionManager
, IFileProtectionManagerStatics3
> = ::windows
::imp
::FactoryCache
::new();
1165 SHARED
.call(callback
)
1168 impl ::windows
::core
::RuntimeName
for FileProtectionManager
{
1169 const NAME
: &'
static str = "Windows.Security.EnterpriseData.FileProtectionManager";
1171 #[doc = "*Required features: `\"Security_EnterpriseData\"`, `\"deprecated\"`*"]
1172 #[cfg(feature = "deprecated")]
1173 pub struct FileRevocationManager
;
1174 #[cfg(feature = "deprecated")]
1175 impl FileRevocationManager
{
1176 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`, `\"deprecated\"`*"]
1177 #[cfg(all(feature = "Foundation", feature = "Storage", feature = "deprecated"))]
1178 pub fn ProtectAsync
<P0
>(storageitem
: P0
, enterpriseidentity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<FileProtectionStatus
>>
1180 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1182 Self::IFileRevocationManagerStatics(|this
| unsafe {
1183 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<FileProtectionStatus
>>();
1184 (::windows
::core
::Interface
::vtable(this
).ProtectAsync
)(::windows
::core
::Interface
::as_raw(this
), storageitem
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(enterpriseidentity
), &mut result__
).from_abi(result__
)
1187 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`, `\"deprecated\"`*"]
1188 #[cfg(all(feature = "Foundation", feature = "Storage", feature = "deprecated"))]
1189 pub fn CopyProtectionAsync
<P0
, P1
>(sourcestorageitem
: P0
, targetstorageitem
: P1
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<bool
>>
1191 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1192 P1
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1194 Self::IFileRevocationManagerStatics(|this
| unsafe {
1195 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<bool
>>();
1196 (::windows
::core
::Interface
::vtable(this
).CopyProtectionAsync
)(::windows
::core
::Interface
::as_raw(this
), sourcestorageitem
.try_into_param()?
.abi(), targetstorageitem
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1199 #[doc = "*Required features: `\"deprecated\"`*"]
1200 #[cfg(feature = "deprecated")]
1201 pub fn Revoke(enterpriseidentity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1202 Self::IFileRevocationManagerStatics(|this
| unsafe { (::windows::core::Interface::vtable(this).Revoke)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(enterpriseidentity)).ok() }
)
1204 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`, `\"deprecated\"`*"]
1205 #[cfg(all(feature = "Foundation", feature = "Storage", feature = "deprecated"))]
1206 pub fn GetStatusAsync
<P0
>(storageitem
: P0
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<FileProtectionStatus
>>
1208 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1210 Self::IFileRevocationManagerStatics(|this
| unsafe {
1211 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<FileProtectionStatus
>>();
1212 (::windows
::core
::Interface
::vtable(this
).GetStatusAsync
)(::windows
::core
::Interface
::as_raw(this
), storageitem
.try_into_param()?
.abi(), &mut result__
).from_abi(result__
)
1216 #[cfg(feature = "deprecated")]
1217 pub fn IFileRevocationManagerStatics
<R
, F
: FnOnce(&IFileRevocationManagerStatics
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
1218 static SHARED
: ::windows
::imp
::FactoryCache
<FileRevocationManager
, IFileRevocationManagerStatics
> = ::windows
::imp
::FactoryCache
::new();
1219 SHARED
.call(callback
)
1222 #[cfg(feature = "deprecated")]
1223 impl ::windows
::core
::RuntimeName
for FileRevocationManager
{
1224 const NAME
: &'
static str = "Windows.Security.EnterpriseData.FileRevocationManager";
1226 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1227 #[repr(transparent)]
1228 pub struct FileUnprotectOptions(::windows
::core
::IUnknown
);
1229 impl FileUnprotectOptions
{
1230 pub fn SetAudit(&self, value
: bool
) -> ::windows
::core
::Result
<()> {
1232 unsafe { (::windows::core::Interface::vtable(this).SetAudit)(::windows::core::Interface::as_raw(this), value).ok() }
1234 pub fn Audit(&self) -> ::windows
::core
::Result
<bool
> {
1237 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1238 (::windows
::core
::Interface
::vtable(this
).Audit
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1241 pub fn Create(audit
: bool
) -> ::windows
::core
::Result
<FileUnprotectOptions
> {
1242 Self::IFileUnprotectOptionsFactory(|this
| unsafe {
1243 let mut result__
= ::windows
::core
::zeroed
::<FileUnprotectOptions
>();
1244 (::windows
::core
::Interface
::vtable(this
).Create
)(::windows
::core
::Interface
::as_raw(this
), audit
, &mut result__
).from_abi(result__
)
1248 pub fn IFileUnprotectOptionsFactory
<R
, F
: FnOnce(&IFileUnprotectOptionsFactory
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
1249 static SHARED
: ::windows
::imp
::FactoryCache
<FileUnprotectOptions
, IFileUnprotectOptionsFactory
> = ::windows
::imp
::FactoryCache
::new();
1250 SHARED
.call(callback
)
1253 impl ::core
::cmp
::PartialEq
for FileUnprotectOptions
{
1254 fn eq(&self, other
: &Self) -> bool
{
1258 impl ::core
::cmp
::Eq
for FileUnprotectOptions {}
1259 impl ::core
::fmt
::Debug
for FileUnprotectOptions
{
1260 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1261 f
.debug_tuple("FileUnprotectOptions").field(&self.0).finish()
1264 impl ::windows
::core
::RuntimeType
for FileUnprotectOptions
{
1265 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.FileUnprotectOptions;{7d1312f1-3b0d-4dd8-a1f8-1ec53822e2f3})");
1267 impl ::core
::clone
::Clone
for FileUnprotectOptions
{
1268 fn clone(&self) -> Self {
1269 Self(self.0.clone())
1272 unsafe impl ::windows
::core
::Interface
for FileUnprotectOptions
{
1273 type Vtable
= IFileUnprotectOptions_Vtbl
;
1275 unsafe impl ::windows
::core
::ComInterface
for FileUnprotectOptions
{
1276 const IID
: ::windows
::core
::GUID
= <IFileUnprotectOptions
as ::windows
::core
::ComInterface
>::IID
;
1278 impl ::windows
::core
::RuntimeName
for FileUnprotectOptions
{
1279 const NAME
: &'
static str = "Windows.Security.EnterpriseData.FileUnprotectOptions";
1281 ::windows
::imp
::interface_hierarchy
!(FileUnprotectOptions
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1282 unsafe impl ::core
::marker
::Send
for FileUnprotectOptions {}
1283 unsafe impl ::core
::marker
::Sync
for FileUnprotectOptions {}
1284 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1285 #[repr(transparent)]
1286 pub struct ProtectedAccessResumedEventArgs(::windows
::core
::IUnknown
);
1287 impl ProtectedAccessResumedEventArgs
{
1288 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1289 #[cfg(feature = "Foundation_Collections")]
1290 pub fn Identities(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVectorView
<::windows
::core
::HSTRING
>> {
1293 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVectorView
<::windows
::core
::HSTRING
>>();
1294 (::windows
::core
::Interface
::vtable(this
).Identities
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1298 impl ::core
::cmp
::PartialEq
for ProtectedAccessResumedEventArgs
{
1299 fn eq(&self, other
: &Self) -> bool
{
1303 impl ::core
::cmp
::Eq
for ProtectedAccessResumedEventArgs {}
1304 impl ::core
::fmt
::Debug
for ProtectedAccessResumedEventArgs
{
1305 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1306 f
.debug_tuple("ProtectedAccessResumedEventArgs").field(&self.0).finish()
1309 impl ::windows
::core
::RuntimeType
for ProtectedAccessResumedEventArgs
{
1310 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.ProtectedAccessResumedEventArgs;{ac4dca59-5d80-4e95-8c5f-8539450eebe0})");
1312 impl ::core
::clone
::Clone
for ProtectedAccessResumedEventArgs
{
1313 fn clone(&self) -> Self {
1314 Self(self.0.clone())
1317 unsafe impl ::windows
::core
::Interface
for ProtectedAccessResumedEventArgs
{
1318 type Vtable
= IProtectedAccessResumedEventArgs_Vtbl
;
1320 unsafe impl ::windows
::core
::ComInterface
for ProtectedAccessResumedEventArgs
{
1321 const IID
: ::windows
::core
::GUID
= <IProtectedAccessResumedEventArgs
as ::windows
::core
::ComInterface
>::IID
;
1323 impl ::windows
::core
::RuntimeName
for ProtectedAccessResumedEventArgs
{
1324 const NAME
: &'
static str = "Windows.Security.EnterpriseData.ProtectedAccessResumedEventArgs";
1326 ::windows
::imp
::interface_hierarchy
!(ProtectedAccessResumedEventArgs
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1327 unsafe impl ::core
::marker
::Send
for ProtectedAccessResumedEventArgs {}
1328 unsafe impl ::core
::marker
::Sync
for ProtectedAccessResumedEventArgs {}
1329 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1330 #[repr(transparent)]
1331 pub struct ProtectedAccessSuspendingEventArgs(::windows
::core
::IUnknown
);
1332 impl ProtectedAccessSuspendingEventArgs
{
1333 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1334 #[cfg(feature = "Foundation_Collections")]
1335 pub fn Identities(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVectorView
<::windows
::core
::HSTRING
>> {
1338 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVectorView
<::windows
::core
::HSTRING
>>();
1339 (::windows
::core
::Interface
::vtable(this
).Identities
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1342 #[doc = "*Required features: `\"Foundation\"`*"]
1343 #[cfg(feature = "Foundation")]
1344 pub fn Deadline(&self) -> ::windows
::core
::Result
<super::super::Foundation
::DateTime
> {
1347 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::DateTime
>();
1348 (::windows
::core
::Interface
::vtable(this
).Deadline
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1351 #[doc = "*Required features: `\"Foundation\"`*"]
1352 #[cfg(feature = "Foundation")]
1353 pub fn GetDeferral(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Deferral
> {
1356 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Deferral
>();
1357 (::windows
::core
::Interface
::vtable(this
).GetDeferral
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1361 impl ::core
::cmp
::PartialEq
for ProtectedAccessSuspendingEventArgs
{
1362 fn eq(&self, other
: &Self) -> bool
{
1366 impl ::core
::cmp
::Eq
for ProtectedAccessSuspendingEventArgs {}
1367 impl ::core
::fmt
::Debug
for ProtectedAccessSuspendingEventArgs
{
1368 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1369 f
.debug_tuple("ProtectedAccessSuspendingEventArgs").field(&self.0).finish()
1372 impl ::windows
::core
::RuntimeType
for ProtectedAccessSuspendingEventArgs
{
1373 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.ProtectedAccessSuspendingEventArgs;{75a193e0-a344-429f-b975-04fc1f88c185})");
1375 impl ::core
::clone
::Clone
for ProtectedAccessSuspendingEventArgs
{
1376 fn clone(&self) -> Self {
1377 Self(self.0.clone())
1380 unsafe impl ::windows
::core
::Interface
for ProtectedAccessSuspendingEventArgs
{
1381 type Vtable
= IProtectedAccessSuspendingEventArgs_Vtbl
;
1383 unsafe impl ::windows
::core
::ComInterface
for ProtectedAccessSuspendingEventArgs
{
1384 const IID
: ::windows
::core
::GUID
= <IProtectedAccessSuspendingEventArgs
as ::windows
::core
::ComInterface
>::IID
;
1386 impl ::windows
::core
::RuntimeName
for ProtectedAccessSuspendingEventArgs
{
1387 const NAME
: &'
static str = "Windows.Security.EnterpriseData.ProtectedAccessSuspendingEventArgs";
1389 ::windows
::imp
::interface_hierarchy
!(ProtectedAccessSuspendingEventArgs
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1390 unsafe impl ::core
::marker
::Send
for ProtectedAccessSuspendingEventArgs {}
1391 unsafe impl ::core
::marker
::Sync
for ProtectedAccessSuspendingEventArgs {}
1392 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1393 #[repr(transparent)]
1394 pub struct ProtectedContainerExportResult(::windows
::core
::IUnknown
);
1395 impl ProtectedContainerExportResult
{
1396 pub fn Status(&self) -> ::windows
::core
::Result
<ProtectedImportExportStatus
> {
1399 let mut result__
= ::windows
::core
::zeroed
::<ProtectedImportExportStatus
>();
1400 (::windows
::core
::Interface
::vtable(this
).Status
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1403 #[doc = "*Required features: `\"Storage\"`*"]
1404 #[cfg(feature = "Storage")]
1405 pub fn File(&self) -> ::windows
::core
::Result
<super::super::Storage
::StorageFile
> {
1408 let mut result__
= ::windows
::core
::zeroed
::<super::super::Storage
::StorageFile
>();
1409 (::windows
::core
::Interface
::vtable(this
).File
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1413 impl ::core
::cmp
::PartialEq
for ProtectedContainerExportResult
{
1414 fn eq(&self, other
: &Self) -> bool
{
1418 impl ::core
::cmp
::Eq
for ProtectedContainerExportResult {}
1419 impl ::core
::fmt
::Debug
for ProtectedContainerExportResult
{
1420 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1421 f
.debug_tuple("ProtectedContainerExportResult").field(&self.0).finish()
1424 impl ::windows
::core
::RuntimeType
for ProtectedContainerExportResult
{
1425 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.ProtectedContainerExportResult;{3948ef95-f7fb-4b42-afb0-df70b41543c1})");
1427 impl ::core
::clone
::Clone
for ProtectedContainerExportResult
{
1428 fn clone(&self) -> Self {
1429 Self(self.0.clone())
1432 unsafe impl ::windows
::core
::Interface
for ProtectedContainerExportResult
{
1433 type Vtable
= IProtectedContainerExportResult_Vtbl
;
1435 unsafe impl ::windows
::core
::ComInterface
for ProtectedContainerExportResult
{
1436 const IID
: ::windows
::core
::GUID
= <IProtectedContainerExportResult
as ::windows
::core
::ComInterface
>::IID
;
1438 impl ::windows
::core
::RuntimeName
for ProtectedContainerExportResult
{
1439 const NAME
: &'
static str = "Windows.Security.EnterpriseData.ProtectedContainerExportResult";
1441 ::windows
::imp
::interface_hierarchy
!(ProtectedContainerExportResult
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1442 unsafe impl ::core
::marker
::Send
for ProtectedContainerExportResult {}
1443 unsafe impl ::core
::marker
::Sync
for ProtectedContainerExportResult {}
1444 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1445 #[repr(transparent)]
1446 pub struct ProtectedContainerImportResult(::windows
::core
::IUnknown
);
1447 impl ProtectedContainerImportResult
{
1448 pub fn Status(&self) -> ::windows
::core
::Result
<ProtectedImportExportStatus
> {
1451 let mut result__
= ::windows
::core
::zeroed
::<ProtectedImportExportStatus
>();
1452 (::windows
::core
::Interface
::vtable(this
).Status
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1455 #[doc = "*Required features: `\"Storage\"`*"]
1456 #[cfg(feature = "Storage")]
1457 pub fn File(&self) -> ::windows
::core
::Result
<super::super::Storage
::StorageFile
> {
1460 let mut result__
= ::windows
::core
::zeroed
::<super::super::Storage
::StorageFile
>();
1461 (::windows
::core
::Interface
::vtable(this
).File
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1465 impl ::core
::cmp
::PartialEq
for ProtectedContainerImportResult
{
1466 fn eq(&self, other
: &Self) -> bool
{
1470 impl ::core
::cmp
::Eq
for ProtectedContainerImportResult {}
1471 impl ::core
::fmt
::Debug
for ProtectedContainerImportResult
{
1472 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1473 f
.debug_tuple("ProtectedContainerImportResult").field(&self.0).finish()
1476 impl ::windows
::core
::RuntimeType
for ProtectedContainerImportResult
{
1477 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.ProtectedContainerImportResult;{cdb780d1-e7bb-4d1a-9339-34dc41149f9b})");
1479 impl ::core
::clone
::Clone
for ProtectedContainerImportResult
{
1480 fn clone(&self) -> Self {
1481 Self(self.0.clone())
1484 unsafe impl ::windows
::core
::Interface
for ProtectedContainerImportResult
{
1485 type Vtable
= IProtectedContainerImportResult_Vtbl
;
1487 unsafe impl ::windows
::core
::ComInterface
for ProtectedContainerImportResult
{
1488 const IID
: ::windows
::core
::GUID
= <IProtectedContainerImportResult
as ::windows
::core
::ComInterface
>::IID
;
1490 impl ::windows
::core
::RuntimeName
for ProtectedContainerImportResult
{
1491 const NAME
: &'
static str = "Windows.Security.EnterpriseData.ProtectedContainerImportResult";
1493 ::windows
::imp
::interface_hierarchy
!(ProtectedContainerImportResult
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1494 unsafe impl ::core
::marker
::Send
for ProtectedContainerImportResult {}
1495 unsafe impl ::core
::marker
::Sync
for ProtectedContainerImportResult {}
1496 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1497 #[repr(transparent)]
1498 pub struct ProtectedContentRevokedEventArgs(::windows
::core
::IUnknown
);
1499 impl ProtectedContentRevokedEventArgs
{
1500 #[doc = "*Required features: `\"Foundation_Collections\"`*"]
1501 #[cfg(feature = "Foundation_Collections")]
1502 pub fn Identities(&self) -> ::windows
::core
::Result
<super::super::Foundation
::Collections
::IVectorView
<::windows
::core
::HSTRING
>> {
1505 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::Collections
::IVectorView
<::windows
::core
::HSTRING
>>();
1506 (::windows
::core
::Interface
::vtable(this
).Identities
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1510 impl ::core
::cmp
::PartialEq
for ProtectedContentRevokedEventArgs
{
1511 fn eq(&self, other
: &Self) -> bool
{
1515 impl ::core
::cmp
::Eq
for ProtectedContentRevokedEventArgs {}
1516 impl ::core
::fmt
::Debug
for ProtectedContentRevokedEventArgs
{
1517 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1518 f
.debug_tuple("ProtectedContentRevokedEventArgs").field(&self.0).finish()
1521 impl ::windows
::core
::RuntimeType
for ProtectedContentRevokedEventArgs
{
1522 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.ProtectedContentRevokedEventArgs;{63686821-58b9-47ee-93d9-f0f741cf43f0})");
1524 impl ::core
::clone
::Clone
for ProtectedContentRevokedEventArgs
{
1525 fn clone(&self) -> Self {
1526 Self(self.0.clone())
1529 unsafe impl ::windows
::core
::Interface
for ProtectedContentRevokedEventArgs
{
1530 type Vtable
= IProtectedContentRevokedEventArgs_Vtbl
;
1532 unsafe impl ::windows
::core
::ComInterface
for ProtectedContentRevokedEventArgs
{
1533 const IID
: ::windows
::core
::GUID
= <IProtectedContentRevokedEventArgs
as ::windows
::core
::ComInterface
>::IID
;
1535 impl ::windows
::core
::RuntimeName
for ProtectedContentRevokedEventArgs
{
1536 const NAME
: &'
static str = "Windows.Security.EnterpriseData.ProtectedContentRevokedEventArgs";
1538 ::windows
::imp
::interface_hierarchy
!(ProtectedContentRevokedEventArgs
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1539 unsafe impl ::core
::marker
::Send
for ProtectedContentRevokedEventArgs {}
1540 unsafe impl ::core
::marker
::Sync
for ProtectedContentRevokedEventArgs {}
1541 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1542 #[repr(transparent)]
1543 pub struct ProtectedFileCreateResult(::windows
::core
::IUnknown
);
1544 impl ProtectedFileCreateResult
{
1545 #[doc = "*Required features: `\"Storage\"`*"]
1546 #[cfg(feature = "Storage")]
1547 pub fn File(&self) -> ::windows
::core
::Result
<super::super::Storage
::StorageFile
> {
1550 let mut result__
= ::windows
::core
::zeroed
::<super::super::Storage
::StorageFile
>();
1551 (::windows
::core
::Interface
::vtable(this
).File
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1554 #[doc = "*Required features: `\"Storage_Streams\"`*"]
1555 #[cfg(feature = "Storage_Streams")]
1556 pub fn Stream(&self) -> ::windows
::core
::Result
<super::super::Storage
::Streams
::IRandomAccessStream
> {
1559 let mut result__
= ::windows
::core
::zeroed
::<super::super::Storage
::Streams
::IRandomAccessStream
>();
1560 (::windows
::core
::Interface
::vtable(this
).Stream
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1563 pub fn ProtectionInfo(&self) -> ::windows
::core
::Result
<FileProtectionInfo
> {
1566 let mut result__
= ::windows
::core
::zeroed
::<FileProtectionInfo
>();
1567 (::windows
::core
::Interface
::vtable(this
).ProtectionInfo
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1571 impl ::core
::cmp
::PartialEq
for ProtectedFileCreateResult
{
1572 fn eq(&self, other
: &Self) -> bool
{
1576 impl ::core
::cmp
::Eq
for ProtectedFileCreateResult {}
1577 impl ::core
::fmt
::Debug
for ProtectedFileCreateResult
{
1578 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1579 f
.debug_tuple("ProtectedFileCreateResult").field(&self.0).finish()
1582 impl ::windows
::core
::RuntimeType
for ProtectedFileCreateResult
{
1583 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.ProtectedFileCreateResult;{28e3ed6a-e9e7-4a03-9f53-bdb16172699b})");
1585 impl ::core
::clone
::Clone
for ProtectedFileCreateResult
{
1586 fn clone(&self) -> Self {
1587 Self(self.0.clone())
1590 unsafe impl ::windows
::core
::Interface
for ProtectedFileCreateResult
{
1591 type Vtable
= IProtectedFileCreateResult_Vtbl
;
1593 unsafe impl ::windows
::core
::ComInterface
for ProtectedFileCreateResult
{
1594 const IID
: ::windows
::core
::GUID
= <IProtectedFileCreateResult
as ::windows
::core
::ComInterface
>::IID
;
1596 impl ::windows
::core
::RuntimeName
for ProtectedFileCreateResult
{
1597 const NAME
: &'
static str = "Windows.Security.EnterpriseData.ProtectedFileCreateResult";
1599 ::windows
::imp
::interface_hierarchy
!(ProtectedFileCreateResult
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1600 unsafe impl ::core
::marker
::Send
for ProtectedFileCreateResult {}
1601 unsafe impl ::core
::marker
::Sync
for ProtectedFileCreateResult {}
1602 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1603 #[repr(transparent)]
1604 pub struct ProtectionPolicyAuditInfo(::windows
::core
::IUnknown
);
1605 impl ProtectionPolicyAuditInfo
{
1606 pub fn SetAction(&self, value
: ProtectionPolicyAuditAction
) -> ::windows
::core
::Result
<()> {
1608 unsafe { (::windows::core::Interface::vtable(this).SetAction)(::windows::core::Interface::as_raw(this), value).ok() }
1610 pub fn Action(&self) -> ::windows
::core
::Result
<ProtectionPolicyAuditAction
> {
1613 let mut result__
= ::windows
::core
::zeroed
::<ProtectionPolicyAuditAction
>();
1614 (::windows
::core
::Interface
::vtable(this
).Action
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1617 pub fn SetDataDescription(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1619 unsafe { (::windows::core::Interface::vtable(this).SetDataDescription)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1621 pub fn DataDescription(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1624 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1625 (::windows
::core
::Interface
::vtable(this
).DataDescription
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1628 pub fn SetSourceDescription(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1630 unsafe { (::windows::core::Interface::vtable(this).SetSourceDescription)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1632 pub fn SourceDescription(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1635 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1636 (::windows
::core
::Interface
::vtable(this
).SourceDescription
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1639 pub fn SetTargetDescription(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1641 unsafe { (::windows::core::Interface::vtable(this).SetTargetDescription)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1643 pub fn TargetDescription(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1646 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1647 (::windows
::core
::Interface
::vtable(this
).TargetDescription
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1650 pub fn Create(action
: ProtectionPolicyAuditAction
, datadescription
: &::windows
::core
::HSTRING
, sourcedescription
: &::windows
::core
::HSTRING
, targetdescription
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<ProtectionPolicyAuditInfo
> {
1651 Self::IProtectionPolicyAuditInfoFactory(|this
| unsafe {
1652 let mut result__
= ::windows
::core
::zeroed
::<ProtectionPolicyAuditInfo
>();
1653 (::windows
::core
::Interface
::vtable(this
).Create
)(::windows
::core
::Interface
::as_raw(this
), action
, ::core
::mem
::transmute_copy(datadescription
), ::core
::mem
::transmute_copy(sourcedescription
), ::core
::mem
::transmute_copy(targetdescription
), &mut result__
).from_abi(result__
)
1656 pub fn CreateWithActionAndDataDescription(action
: ProtectionPolicyAuditAction
, datadescription
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<ProtectionPolicyAuditInfo
> {
1657 Self::IProtectionPolicyAuditInfoFactory(|this
| unsafe {
1658 let mut result__
= ::windows
::core
::zeroed
::<ProtectionPolicyAuditInfo
>();
1659 (::windows
::core
::Interface
::vtable(this
).CreateWithActionAndDataDescription
)(::windows
::core
::Interface
::as_raw(this
), action
, ::core
::mem
::transmute_copy(datadescription
), &mut result__
).from_abi(result__
)
1663 pub fn IProtectionPolicyAuditInfoFactory
<R
, F
: FnOnce(&IProtectionPolicyAuditInfoFactory
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
1664 static SHARED
: ::windows
::imp
::FactoryCache
<ProtectionPolicyAuditInfo
, IProtectionPolicyAuditInfoFactory
> = ::windows
::imp
::FactoryCache
::new();
1665 SHARED
.call(callback
)
1668 impl ::core
::cmp
::PartialEq
for ProtectionPolicyAuditInfo
{
1669 fn eq(&self, other
: &Self) -> bool
{
1673 impl ::core
::cmp
::Eq
for ProtectionPolicyAuditInfo {}
1674 impl ::core
::fmt
::Debug
for ProtectionPolicyAuditInfo
{
1675 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
1676 f
.debug_tuple("ProtectionPolicyAuditInfo").field(&self.0).finish()
1679 impl ::windows
::core
::RuntimeType
for ProtectionPolicyAuditInfo
{
1680 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.ProtectionPolicyAuditInfo;{425ab7e4-feb7-44fc-b3bb-c3c4d7ecbebb})");
1682 impl ::core
::clone
::Clone
for ProtectionPolicyAuditInfo
{
1683 fn clone(&self) -> Self {
1684 Self(self.0.clone())
1687 unsafe impl ::windows
::core
::Interface
for ProtectionPolicyAuditInfo
{
1688 type Vtable
= IProtectionPolicyAuditInfo_Vtbl
;
1690 unsafe impl ::windows
::core
::ComInterface
for ProtectionPolicyAuditInfo
{
1691 const IID
: ::windows
::core
::GUID
= <IProtectionPolicyAuditInfo
as ::windows
::core
::ComInterface
>::IID
;
1693 impl ::windows
::core
::RuntimeName
for ProtectionPolicyAuditInfo
{
1694 const NAME
: &'
static str = "Windows.Security.EnterpriseData.ProtectionPolicyAuditInfo";
1696 ::windows
::imp
::interface_hierarchy
!(ProtectionPolicyAuditInfo
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
1697 unsafe impl ::core
::marker
::Send
for ProtectionPolicyAuditInfo {}
1698 unsafe impl ::core
::marker
::Sync
for ProtectionPolicyAuditInfo {}
1699 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
1700 #[repr(transparent)]
1701 pub struct ProtectionPolicyManager(::windows
::core
::IUnknown
);
1702 impl ProtectionPolicyManager
{
1703 pub fn SetIdentity(&self, value
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1705 unsafe { (::windows::core::Interface::vtable(this).SetIdentity)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(value)).ok() }
1707 pub fn Identity(&self) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1710 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
1711 (::windows
::core
::Interface
::vtable(this
).Identity
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1714 pub fn SetShowEnterpriseIndicator(&self, value
: bool
) -> ::windows
::core
::Result
<()> {
1715 let this
= &::windows
::core
::ComInterface
::cast
::<IProtectionPolicyManager2
>(self)?
;
1716 unsafe { (::windows::core::Interface::vtable(this).SetShowEnterpriseIndicator)(::windows::core::Interface::as_raw(this), value).ok() }
1718 pub fn ShowEnterpriseIndicator(&self) -> ::windows
::core
::Result
<bool
> {
1719 let this
= &::windows
::core
::ComInterface
::cast
::<IProtectionPolicyManager2
>(self)?
;
1721 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1722 (::windows
::core
::Interface
::vtable(this
).ShowEnterpriseIndicator
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1725 pub fn IsIdentityManaged(identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<bool
> {
1726 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1727 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1728 (::windows
::core
::Interface
::vtable(this
).IsIdentityManaged
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
1731 pub fn TryApplyProcessUIPolicy(identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<bool
> {
1732 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1733 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1734 (::windows
::core
::Interface
::vtable(this
).TryApplyProcessUIPolicy
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
1737 pub fn ClearProcessUIPolicy() -> ::windows
::core
::Result
<()> {
1738 Self::IProtectionPolicyManagerStatics(|this
| unsafe { (::windows::core::Interface::vtable(this).ClearProcessUIPolicy)(::windows::core::Interface::as_raw(this)).ok() }
)
1740 pub fn CreateCurrentThreadNetworkContext(identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<ThreadNetworkContext
> {
1741 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1742 let mut result__
= ::windows
::core
::zeroed
::<ThreadNetworkContext
>();
1743 (::windows
::core
::Interface
::vtable(this
).CreateCurrentThreadNetworkContext
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
1746 #[doc = "*Required features: `\"Foundation\"`, `\"Networking\"`*"]
1747 #[cfg(all(feature = "Foundation", feature = "Networking"))]
1748 pub fn GetPrimaryManagedIdentityForNetworkEndpointAsync(endpointhost
: &super::super::Networking
::HostName
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<::windows
::core
::HSTRING
>> {
1749 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1750 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<::windows
::core
::HSTRING
>>();
1751 (::windows
::core
::Interface
::vtable(this
).GetPrimaryManagedIdentityForNetworkEndpointAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(endpointhost
), &mut result__
).from_abi(result__
)
1754 pub fn RevokeContent(identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<()> {
1755 Self::IProtectionPolicyManagerStatics(|this
| unsafe { (::windows::core::Interface::vtable(this).RevokeContent)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(identity)).ok() }
)
1757 pub fn GetForCurrentView() -> ::windows
::core
::Result
<ProtectionPolicyManager
> {
1758 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1759 let mut result__
= ::windows
::core
::zeroed
::<ProtectionPolicyManager
>();
1760 (::windows
::core
::Interface
::vtable(this
).GetForCurrentView
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1763 #[doc = "*Required features: `\"Foundation\"`*"]
1764 #[cfg(feature = "Foundation")]
1765 pub fn ProtectedAccessSuspending(handler
: &super::super::Foundation
::EventHandler
<ProtectedAccessSuspendingEventArgs
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
1766 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1767 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
1768 (::windows
::core
::Interface
::vtable(this
).ProtectedAccessSuspending
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(handler
), &mut result__
).from_abi(result__
)
1771 #[doc = "*Required features: `\"Foundation\"`*"]
1772 #[cfg(feature = "Foundation")]
1773 pub fn RemoveProtectedAccessSuspending(token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
1774 Self::IProtectionPolicyManagerStatics(|this
| unsafe { (::windows::core::Interface::vtable(this).RemoveProtectedAccessSuspending)(::windows::core::Interface::as_raw(this), token).ok() }
)
1776 #[doc = "*Required features: `\"Foundation\"`*"]
1777 #[cfg(feature = "Foundation")]
1778 pub fn ProtectedAccessResumed(handler
: &super::super::Foundation
::EventHandler
<ProtectedAccessResumedEventArgs
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
1779 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1780 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
1781 (::windows
::core
::Interface
::vtable(this
).ProtectedAccessResumed
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(handler
), &mut result__
).from_abi(result__
)
1784 #[doc = "*Required features: `\"Foundation\"`*"]
1785 #[cfg(feature = "Foundation")]
1786 pub fn RemoveProtectedAccessResumed(token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
1787 Self::IProtectionPolicyManagerStatics(|this
| unsafe { (::windows::core::Interface::vtable(this).RemoveProtectedAccessResumed)(::windows::core::Interface::as_raw(this), token).ok() }
)
1789 #[doc = "*Required features: `\"Foundation\"`*"]
1790 #[cfg(feature = "Foundation")]
1791 pub fn ProtectedContentRevoked(handler
: &super::super::Foundation
::EventHandler
<ProtectedContentRevokedEventArgs
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
1792 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1793 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
1794 (::windows
::core
::Interface
::vtable(this
).ProtectedContentRevoked
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(handler
), &mut result__
).from_abi(result__
)
1797 #[doc = "*Required features: `\"Foundation\"`*"]
1798 #[cfg(feature = "Foundation")]
1799 pub fn RemoveProtectedContentRevoked(token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
1800 Self::IProtectionPolicyManagerStatics(|this
| unsafe { (::windows::core::Interface::vtable(this).RemoveProtectedContentRevoked)(::windows::core::Interface::as_raw(this), token).ok() }
)
1802 pub fn CheckAccess(sourceidentity
: &::windows
::core
::HSTRING
, targetidentity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<ProtectionPolicyEvaluationResult
> {
1803 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1804 let mut result__
= ::windows
::core
::zeroed
::<ProtectionPolicyEvaluationResult
>();
1805 (::windows
::core
::Interface
::vtable(this
).CheckAccess
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(targetidentity
), &mut result__
).from_abi(result__
)
1808 #[doc = "*Required features: `\"Foundation\"`*"]
1809 #[cfg(feature = "Foundation")]
1810 pub fn RequestAccessAsync(sourceidentity
: &::windows
::core
::HSTRING
, targetidentity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>> {
1811 Self::IProtectionPolicyManagerStatics(|this
| unsafe {
1812 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1813 (::windows
::core
::Interface
::vtable(this
).RequestAccessAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(targetidentity
), &mut result__
).from_abi(result__
)
1816 #[doc = "*Required features: `\"Foundation\"`*"]
1817 #[cfg(feature = "Foundation")]
1818 pub fn HasContentBeenRevokedSince(identity
: &::windows
::core
::HSTRING
, since
: super::super::Foundation
::DateTime
) -> ::windows
::core
::Result
<bool
> {
1819 Self::IProtectionPolicyManagerStatics2(|this
| unsafe {
1820 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1821 (::windows
::core
::Interface
::vtable(this
).HasContentBeenRevokedSince
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(identity
), since
, &mut result__
).from_abi(result__
)
1824 pub fn CheckAccessForApp(sourceidentity
: &::windows
::core
::HSTRING
, apppackagefamilyname
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<ProtectionPolicyEvaluationResult
> {
1825 Self::IProtectionPolicyManagerStatics2(|this
| unsafe {
1826 let mut result__
= ::windows
::core
::zeroed
::<ProtectionPolicyEvaluationResult
>();
1827 (::windows
::core
::Interface
::vtable(this
).CheckAccessForApp
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(apppackagefamilyname
), &mut result__
).from_abi(result__
)
1830 #[doc = "*Required features: `\"Foundation\"`*"]
1831 #[cfg(feature = "Foundation")]
1832 pub fn RequestAccessForAppAsync(sourceidentity
: &::windows
::core
::HSTRING
, apppackagefamilyname
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>> {
1833 Self::IProtectionPolicyManagerStatics2(|this
| unsafe {
1834 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1835 (::windows
::core
::Interface
::vtable(this
).RequestAccessForAppAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(apppackagefamilyname
), &mut result__
).from_abi(result__
)
1838 pub fn GetEnforcementLevel(identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<EnforcementLevel
> {
1839 Self::IProtectionPolicyManagerStatics2(|this
| unsafe {
1840 let mut result__
= ::windows
::core
::zeroed
::<EnforcementLevel
>();
1841 (::windows
::core
::Interface
::vtable(this
).GetEnforcementLevel
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
1844 pub fn IsUserDecryptionAllowed(identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<bool
> {
1845 Self::IProtectionPolicyManagerStatics2(|this
| unsafe {
1846 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1847 (::windows
::core
::Interface
::vtable(this
).IsUserDecryptionAllowed
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
1850 pub fn IsProtectionUnderLockRequired(identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<bool
> {
1851 Self::IProtectionPolicyManagerStatics2(|this
| unsafe {
1852 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1853 (::windows
::core
::Interface
::vtable(this
).IsProtectionUnderLockRequired
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
1856 #[doc = "*Required features: `\"Foundation\"`*"]
1857 #[cfg(feature = "Foundation")]
1858 pub fn PolicyChanged(handler
: &super::super::Foundation
::EventHandler
<::windows
::core
::IInspectable
>) -> ::windows
::core
::Result
<super::super::Foundation
::EventRegistrationToken
> {
1859 Self::IProtectionPolicyManagerStatics2(|this
| unsafe {
1860 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::EventRegistrationToken
>();
1861 (::windows
::core
::Interface
::vtable(this
).PolicyChanged
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(handler
), &mut result__
).from_abi(result__
)
1864 #[doc = "*Required features: `\"Foundation\"`*"]
1865 #[cfg(feature = "Foundation")]
1866 pub fn RemovePolicyChanged(token
: super::super::Foundation
::EventRegistrationToken
) -> ::windows
::core
::Result
<()> {
1867 Self::IProtectionPolicyManagerStatics2(|this
| unsafe { (::windows::core::Interface::vtable(this).RemovePolicyChanged)(::windows::core::Interface::as_raw(this), token).ok() }
)
1869 pub fn IsProtectionEnabled() -> ::windows
::core
::Result
<bool
> {
1870 Self::IProtectionPolicyManagerStatics2(|this
| unsafe {
1871 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1872 (::windows
::core
::Interface
::vtable(this
).IsProtectionEnabled
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
1875 #[doc = "*Required features: `\"Foundation\"`*"]
1876 #[cfg(feature = "Foundation")]
1877 pub fn RequestAccessWithAuditingInfoAsync(sourceidentity
: &::windows
::core
::HSTRING
, targetidentity
: &::windows
::core
::HSTRING
, auditinfo
: &ProtectionPolicyAuditInfo
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>> {
1878 Self::IProtectionPolicyManagerStatics3(|this
| unsafe {
1879 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1880 (::windows
::core
::Interface
::vtable(this
).RequestAccessWithAuditingInfoAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(targetidentity
), ::core
::mem
::transmute_copy(auditinfo
), &mut result__
).from_abi(result__
)
1883 #[doc = "*Required features: `\"Foundation\"`*"]
1884 #[cfg(feature = "Foundation")]
1885 pub fn RequestAccessWithMessageAsync(sourceidentity
: &::windows
::core
::HSTRING
, targetidentity
: &::windows
::core
::HSTRING
, auditinfo
: &ProtectionPolicyAuditInfo
, messagefromapp
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>> {
1886 Self::IProtectionPolicyManagerStatics3(|this
| unsafe {
1887 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1888 (::windows
::core
::Interface
::vtable(this
).RequestAccessWithMessageAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(targetidentity
), ::core
::mem
::transmute_copy(auditinfo
), ::core
::mem
::transmute_copy(messagefromapp
), &mut result__
).from_abi(result__
)
1891 #[doc = "*Required features: `\"Foundation\"`*"]
1892 #[cfg(feature = "Foundation")]
1893 pub fn RequestAccessForAppWithAuditingInfoAsync(sourceidentity
: &::windows
::core
::HSTRING
, apppackagefamilyname
: &::windows
::core
::HSTRING
, auditinfo
: &ProtectionPolicyAuditInfo
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>> {
1894 Self::IProtectionPolicyManagerStatics3(|this
| unsafe {
1895 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1896 (::windows
::core
::Interface
::vtable(this
).RequestAccessForAppWithAuditingInfoAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(apppackagefamilyname
), ::core
::mem
::transmute_copy(auditinfo
), &mut result__
).from_abi(result__
)
1899 #[doc = "*Required features: `\"Foundation\"`*"]
1900 #[cfg(feature = "Foundation")]
1901 pub fn RequestAccessForAppWithMessageAsync(sourceidentity
: &::windows
::core
::HSTRING
, apppackagefamilyname
: &::windows
::core
::HSTRING
, auditinfo
: &ProtectionPolicyAuditInfo
, messagefromapp
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>> {
1902 Self::IProtectionPolicyManagerStatics3(|this
| unsafe {
1903 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1904 (::windows
::core
::Interface
::vtable(this
).RequestAccessForAppWithMessageAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(apppackagefamilyname
), ::core
::mem
::transmute_copy(auditinfo
), ::core
::mem
::transmute_copy(messagefromapp
), &mut result__
).from_abi(result__
)
1907 pub fn LogAuditEvent(sourceidentity
: &::windows
::core
::HSTRING
, targetidentity
: &::windows
::core
::HSTRING
, auditinfo
: &ProtectionPolicyAuditInfo
) -> ::windows
::core
::Result
<()> {
1908 Self::IProtectionPolicyManagerStatics3(|this
| unsafe { (::windows::core::Interface::vtable(this).LogAuditEvent)(::windows::core::Interface::as_raw(this), ::core::mem::transmute_copy(sourceidentity), ::core::mem::transmute_copy(targetidentity), ::core::mem::transmute_copy(auditinfo)).ok() }
)
1910 pub fn IsRoamableProtectionEnabled(identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<bool
> {
1911 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
1912 let mut result__
= ::windows
::core
::zeroed
::<bool
>();
1913 (::windows
::core
::Interface
::vtable(this
).IsRoamableProtectionEnabled
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
1916 #[doc = "*Required features: `\"Foundation\"`*"]
1917 #[cfg(feature = "Foundation")]
1918 pub fn RequestAccessWithBehaviorAsync(sourceidentity
: &::windows
::core
::HSTRING
, targetidentity
: &::windows
::core
::HSTRING
, auditinfo
: &ProtectionPolicyAuditInfo
, messagefromapp
: &::windows
::core
::HSTRING
, behavior
: ProtectionPolicyRequestAccessBehavior
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>> {
1919 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
1920 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1921 (::windows
::core
::Interface
::vtable(this
).RequestAccessWithBehaviorAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(targetidentity
), ::core
::mem
::transmute_copy(auditinfo
), ::core
::mem
::transmute_copy(messagefromapp
), behavior
, &mut result__
).from_abi(result__
)
1924 #[doc = "*Required features: `\"Foundation\"`*"]
1925 #[cfg(feature = "Foundation")]
1926 pub fn RequestAccessForAppWithBehaviorAsync(sourceidentity
: &::windows
::core
::HSTRING
, apppackagefamilyname
: &::windows
::core
::HSTRING
, auditinfo
: &ProtectionPolicyAuditInfo
, messagefromapp
: &::windows
::core
::HSTRING
, behavior
: ProtectionPolicyRequestAccessBehavior
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>> {
1927 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
1928 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1929 (::windows
::core
::Interface
::vtable(this
).RequestAccessForAppWithBehaviorAsync
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(sourceidentity
), ::core
::mem
::transmute_copy(apppackagefamilyname
), ::core
::mem
::transmute_copy(auditinfo
), ::core
::mem
::transmute_copy(messagefromapp
), behavior
, &mut result__
).from_abi(result__
)
1932 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage\"`*"]
1933 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
1934 pub fn RequestAccessToFilesForAppAsync
<P0
>(sourceitemlist
: P0
, apppackagefamilyname
: &::windows
::core
::HSTRING
, auditinfo
: &ProtectionPolicyAuditInfo
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>
1936 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Storage
::IStorageItem
>>,
1938 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
1939 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1940 (::windows
::core
::Interface
::vtable(this
).RequestAccessToFilesForAppAsync
)(::windows
::core
::Interface
::as_raw(this
), sourceitemlist
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(apppackagefamilyname
), ::core
::mem
::transmute_copy(auditinfo
), &mut result__
).from_abi(result__
)
1943 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage\"`*"]
1944 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
1945 pub fn RequestAccessToFilesForAppWithMessageAndBehaviorAsync
<P0
>(sourceitemlist
: P0
, apppackagefamilyname
: &::windows
::core
::HSTRING
, auditinfo
: &ProtectionPolicyAuditInfo
, messagefromapp
: &::windows
::core
::HSTRING
, behavior
: ProtectionPolicyRequestAccessBehavior
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>
1947 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Storage
::IStorageItem
>>,
1949 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
1950 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1951 (::windows
::core
::Interface
::vtable(this
).RequestAccessToFilesForAppWithMessageAndBehaviorAsync
)(::windows
::core
::Interface
::as_raw(this
), sourceitemlist
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(apppackagefamilyname
), ::core
::mem
::transmute_copy(auditinfo
), ::core
::mem
::transmute_copy(messagefromapp
), behavior
, &mut result__
).from_abi(result__
)
1954 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage\"`*"]
1955 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
1956 pub fn RequestAccessToFilesForProcessAsync
<P0
>(sourceitemlist
: P0
, processid
: u32, auditinfo
: &ProtectionPolicyAuditInfo
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>
1958 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Storage
::IStorageItem
>>,
1960 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
1961 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1962 (::windows
::core
::Interface
::vtable(this
).RequestAccessToFilesForProcessAsync
)(::windows
::core
::Interface
::as_raw(this
), sourceitemlist
.try_into_param()?
.abi(), processid
, ::core
::mem
::transmute_copy(auditinfo
), &mut result__
).from_abi(result__
)
1965 #[doc = "*Required features: `\"Foundation_Collections\"`, `\"Storage\"`*"]
1966 #[cfg(all(feature = "Foundation_Collections", feature = "Storage"))]
1967 pub fn RequestAccessToFilesForProcessWithMessageAndBehaviorAsync
<P0
>(sourceitemlist
: P0
, processid
: u32, auditinfo
: &ProtectionPolicyAuditInfo
, messagefromapp
: &::windows
::core
::HSTRING
, behavior
: ProtectionPolicyRequestAccessBehavior
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>
1969 P0
: ::windows
::core
::TryIntoParam
<super::super::Foundation
::Collections
::IIterable
<super::super::Storage
::IStorageItem
>>,
1971 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
1972 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<ProtectionPolicyEvaluationResult
>>();
1973 (::windows
::core
::Interface
::vtable(this
).RequestAccessToFilesForProcessWithMessageAndBehaviorAsync
)(::windows
::core
::Interface
::as_raw(this
), sourceitemlist
.try_into_param()?
.abi(), processid
, ::core
::mem
::transmute_copy(auditinfo
), ::core
::mem
::transmute_copy(messagefromapp
), behavior
, &mut result__
).from_abi(result__
)
1976 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1977 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1978 pub fn IsFileProtectionRequiredAsync
<P0
>(target
: P0
, identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<bool
>>
1980 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageItem
>,
1982 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
1983 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<bool
>>();
1984 (::windows
::core
::Interface
::vtable(this
).IsFileProtectionRequiredAsync
)(::windows
::core
::Interface
::as_raw(this
), target
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
1987 #[doc = "*Required features: `\"Foundation\"`, `\"Storage\"`*"]
1988 #[cfg(all(feature = "Foundation", feature = "Storage"))]
1989 pub fn IsFileProtectionRequiredForNewFileAsync
<P0
>(parentfolder
: P0
, identity
: &::windows
::core
::HSTRING
, desiredname
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<super::super::Foundation
::IAsyncOperation
<bool
>>
1991 P0
: ::windows
::core
::TryIntoParam
<super::super::Storage
::IStorageFolder
>,
1993 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
1994 let mut result__
= ::windows
::core
::zeroed
::<super::super::Foundation
::IAsyncOperation
<bool
>>();
1995 (::windows
::core
::Interface
::vtable(this
).IsFileProtectionRequiredForNewFileAsync
)(::windows
::core
::Interface
::as_raw(this
), parentfolder
.try_into_param()?
.abi(), ::core
::mem
::transmute_copy(identity
), ::core
::mem
::transmute_copy(desiredname
), &mut result__
).from_abi(result__
)
1998 pub fn PrimaryManagedIdentity() -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
1999 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
2000 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
2001 (::windows
::core
::Interface
::vtable(this
).PrimaryManagedIdentity
)(::windows
::core
::Interface
::as_raw(this
), &mut result__
).from_abi(result__
)
2004 pub fn GetPrimaryManagedIdentityForIdentity(identity
: &::windows
::core
::HSTRING
) -> ::windows
::core
::Result
<::windows
::core
::HSTRING
> {
2005 Self::IProtectionPolicyManagerStatics4(|this
| unsafe {
2006 let mut result__
= ::windows
::core
::zeroed
::<::windows
::core
::HSTRING
>();
2007 (::windows
::core
::Interface
::vtable(this
).GetPrimaryManagedIdentityForIdentity
)(::windows
::core
::Interface
::as_raw(this
), ::core
::mem
::transmute_copy(identity
), &mut result__
).from_abi(result__
)
2011 pub fn IProtectionPolicyManagerStatics
<R
, F
: FnOnce(&IProtectionPolicyManagerStatics
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
2012 static SHARED
: ::windows
::imp
::FactoryCache
<ProtectionPolicyManager
, IProtectionPolicyManagerStatics
> = ::windows
::imp
::FactoryCache
::new();
2013 SHARED
.call(callback
)
2016 pub fn IProtectionPolicyManagerStatics2
<R
, F
: FnOnce(&IProtectionPolicyManagerStatics2
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
2017 static SHARED
: ::windows
::imp
::FactoryCache
<ProtectionPolicyManager
, IProtectionPolicyManagerStatics2
> = ::windows
::imp
::FactoryCache
::new();
2018 SHARED
.call(callback
)
2021 pub fn IProtectionPolicyManagerStatics3
<R
, F
: FnOnce(&IProtectionPolicyManagerStatics3
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
2022 static SHARED
: ::windows
::imp
::FactoryCache
<ProtectionPolicyManager
, IProtectionPolicyManagerStatics3
> = ::windows
::imp
::FactoryCache
::new();
2023 SHARED
.call(callback
)
2026 pub fn IProtectionPolicyManagerStatics4
<R
, F
: FnOnce(&IProtectionPolicyManagerStatics4
) -> ::windows
::core
::Result
<R
>>(callback
: F
) -> ::windows
::core
::Result
<R
> {
2027 static SHARED
: ::windows
::imp
::FactoryCache
<ProtectionPolicyManager
, IProtectionPolicyManagerStatics4
> = ::windows
::imp
::FactoryCache
::new();
2028 SHARED
.call(callback
)
2031 impl ::core
::cmp
::PartialEq
for ProtectionPolicyManager
{
2032 fn eq(&self, other
: &Self) -> bool
{
2036 impl ::core
::cmp
::Eq
for ProtectionPolicyManager {}
2037 impl ::core
::fmt
::Debug
for ProtectionPolicyManager
{
2038 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
2039 f
.debug_tuple("ProtectionPolicyManager").field(&self.0).finish()
2042 impl ::windows
::core
::RuntimeType
for ProtectionPolicyManager
{
2043 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.ProtectionPolicyManager;{d5703e18-a08d-47e6-a240-9934d7165eb5})");
2045 impl ::core
::clone
::Clone
for ProtectionPolicyManager
{
2046 fn clone(&self) -> Self {
2047 Self(self.0.clone())
2050 unsafe impl ::windows
::core
::Interface
for ProtectionPolicyManager
{
2051 type Vtable
= IProtectionPolicyManager_Vtbl
;
2053 unsafe impl ::windows
::core
::ComInterface
for ProtectionPolicyManager
{
2054 const IID
: ::windows
::core
::GUID
= <IProtectionPolicyManager
as ::windows
::core
::ComInterface
>::IID
;
2056 impl ::windows
::core
::RuntimeName
for ProtectionPolicyManager
{
2057 const NAME
: &'
static str = "Windows.Security.EnterpriseData.ProtectionPolicyManager";
2059 ::windows
::imp
::interface_hierarchy
!(ProtectionPolicyManager
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
2060 unsafe impl ::core
::marker
::Send
for ProtectionPolicyManager {}
2061 unsafe impl ::core
::marker
::Sync
for ProtectionPolicyManager {}
2062 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
2063 #[repr(transparent)]
2064 pub struct ThreadNetworkContext(::windows
::core
::IUnknown
);
2065 impl ThreadNetworkContext
{
2066 #[doc = "*Required features: `\"Foundation\"`*"]
2067 #[cfg(feature = "Foundation")]
2068 pub fn Close(&self) -> ::windows
::core
::Result
<()> {
2069 let this
= &::windows
::core
::ComInterface
::cast
::<super::super::Foundation
::IClosable
>(self)?
;
2070 unsafe { (::windows::core::Interface::vtable(this).Close)(::windows::core::Interface::as_raw(this)).ok() }
2073 impl ::core
::cmp
::PartialEq
for ThreadNetworkContext
{
2074 fn eq(&self, other
: &Self) -> bool
{
2078 impl ::core
::cmp
::Eq
for ThreadNetworkContext {}
2079 impl ::core
::fmt
::Debug
for ThreadNetworkContext
{
2080 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
2081 f
.debug_tuple("ThreadNetworkContext").field(&self.0).finish()
2084 impl ::windows
::core
::RuntimeType
for ThreadNetworkContext
{
2085 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"rc(Windows.Security.EnterpriseData.ThreadNetworkContext;{fa4ea8e9-ef13-405a-b12c-d7348c6f41fc})");
2087 impl ::core
::clone
::Clone
for ThreadNetworkContext
{
2088 fn clone(&self) -> Self {
2089 Self(self.0.clone())
2092 unsafe impl ::windows
::core
::Interface
for ThreadNetworkContext
{
2093 type Vtable
= IThreadNetworkContext_Vtbl
;
2095 unsafe impl ::windows
::core
::ComInterface
for ThreadNetworkContext
{
2096 const IID
: ::windows
::core
::GUID
= <IThreadNetworkContext
as ::windows
::core
::ComInterface
>::IID
;
2098 impl ::windows
::core
::RuntimeName
for ThreadNetworkContext
{
2099 const NAME
: &'
static str = "Windows.Security.EnterpriseData.ThreadNetworkContext";
2101 ::windows
::imp
::interface_hierarchy
!(ThreadNetworkContext
, ::windows
::core
::IUnknown
, ::windows
::core
::IInspectable
);
2102 #[cfg(feature = "Foundation")]
2103 impl ::windows
::core
::CanTryInto
<super::super::Foundation
::IClosable
> for ThreadNetworkContext {}
2104 unsafe impl ::core
::marker
::Send
for ThreadNetworkContext {}
2105 unsafe impl ::core
::marker
::Sync
for ThreadNetworkContext {}
2106 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
2107 #[repr(transparent)]
2108 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2109 pub struct DataProtectionStatus(pub i32);
2110 impl DataProtectionStatus
{
2111 pub const ProtectedToOtherIdentity
: Self = Self(0i32);
2112 pub const Protected
: Self = Self(1i32);
2113 pub const Revoked
: Self = Self(2i32);
2114 pub const Unprotected
: Self = Self(3i32);
2115 pub const LicenseExpired
: Self = Self(4i32);
2116 pub const AccessSuspended
: Self = Self(5i32);
2118 impl ::core
::marker
::Copy
for DataProtectionStatus {}
2119 impl ::core
::clone
::Clone
for DataProtectionStatus
{
2120 fn clone(&self) -> Self {
2124 impl ::core
::default::Default
for DataProtectionStatus
{
2125 fn default() -> Self {
2129 impl ::windows
::core
::TypeKind
for DataProtectionStatus
{
2130 type TypeKind
= ::windows
::core
::CopyType
;
2132 impl ::core
::fmt
::Debug
for DataProtectionStatus
{
2133 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
2134 f
.debug_tuple("DataProtectionStatus").field(&self.0).finish()
2137 impl ::windows
::core
::RuntimeType
for DataProtectionStatus
{
2138 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Security.EnterpriseData.DataProtectionStatus;i4)");
2140 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
2141 #[repr(transparent)]
2142 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2143 pub struct EnforcementLevel(pub i32);
2144 impl EnforcementLevel
{
2145 pub const NoProtection
: Self = Self(0i32);
2146 pub const Silent
: Self = Self(1i32);
2147 pub const Override
: Self = Self(2i32);
2148 pub const Block
: Self = Self(3i32);
2150 impl ::core
::marker
::Copy
for EnforcementLevel {}
2151 impl ::core
::clone
::Clone
for EnforcementLevel
{
2152 fn clone(&self) -> Self {
2156 impl ::core
::default::Default
for EnforcementLevel
{
2157 fn default() -> Self {
2161 impl ::windows
::core
::TypeKind
for EnforcementLevel
{
2162 type TypeKind
= ::windows
::core
::CopyType
;
2164 impl ::core
::fmt
::Debug
for EnforcementLevel
{
2165 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
2166 f
.debug_tuple("EnforcementLevel").field(&self.0).finish()
2169 impl ::windows
::core
::RuntimeType
for EnforcementLevel
{
2170 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Security.EnterpriseData.EnforcementLevel;i4)");
2172 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
2173 #[repr(transparent)]
2174 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2175 pub struct FileProtectionStatus(pub i32);
2176 impl FileProtectionStatus
{
2177 pub const Undetermined
: Self = Self(0i32);
2178 pub const Unknown
: Self = Self(0i32);
2179 pub const Unprotected
: Self = Self(1i32);
2180 pub const Revoked
: Self = Self(2i32);
2181 pub const Protected
: Self = Self(3i32);
2182 pub const ProtectedByOtherUser
: Self = Self(4i32);
2183 pub const ProtectedToOtherEnterprise
: Self = Self(5i32);
2184 pub const NotProtectable
: Self = Self(6i32);
2185 pub const ProtectedToOtherIdentity
: Self = Self(7i32);
2186 pub const LicenseExpired
: Self = Self(8i32);
2187 pub const AccessSuspended
: Self = Self(9i32);
2188 pub const FileInUse
: Self = Self(10i32);
2190 impl ::core
::marker
::Copy
for FileProtectionStatus {}
2191 impl ::core
::clone
::Clone
for FileProtectionStatus
{
2192 fn clone(&self) -> Self {
2196 impl ::core
::default::Default
for FileProtectionStatus
{
2197 fn default() -> Self {
2201 impl ::windows
::core
::TypeKind
for FileProtectionStatus
{
2202 type TypeKind
= ::windows
::core
::CopyType
;
2204 impl ::core
::fmt
::Debug
for FileProtectionStatus
{
2205 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
2206 f
.debug_tuple("FileProtectionStatus").field(&self.0).finish()
2209 impl ::windows
::core
::RuntimeType
for FileProtectionStatus
{
2210 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Security.EnterpriseData.FileProtectionStatus;i4)");
2212 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
2213 #[repr(transparent)]
2214 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2215 pub struct ProtectedImportExportStatus(pub i32);
2216 impl ProtectedImportExportStatus
{
2217 pub const Ok
: Self = Self(0i32);
2218 pub const Undetermined
: Self = Self(1i32);
2219 pub const Unprotected
: Self = Self(2i32);
2220 pub const Revoked
: Self = Self(3i32);
2221 pub const NotRoamable
: Self = Self(4i32);
2222 pub const ProtectedToOtherIdentity
: Self = Self(5i32);
2223 pub const LicenseExpired
: Self = Self(6i32);
2224 pub const AccessSuspended
: Self = Self(7i32);
2226 impl ::core
::marker
::Copy
for ProtectedImportExportStatus {}
2227 impl ::core
::clone
::Clone
for ProtectedImportExportStatus
{
2228 fn clone(&self) -> Self {
2232 impl ::core
::default::Default
for ProtectedImportExportStatus
{
2233 fn default() -> Self {
2237 impl ::windows
::core
::TypeKind
for ProtectedImportExportStatus
{
2238 type TypeKind
= ::windows
::core
::CopyType
;
2240 impl ::core
::fmt
::Debug
for ProtectedImportExportStatus
{
2241 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
2242 f
.debug_tuple("ProtectedImportExportStatus").field(&self.0).finish()
2245 impl ::windows
::core
::RuntimeType
for ProtectedImportExportStatus
{
2246 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Security.EnterpriseData.ProtectedImportExportStatus;i4)");
2248 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
2249 #[repr(transparent)]
2250 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2251 pub struct ProtectionPolicyAuditAction(pub i32);
2252 impl ProtectionPolicyAuditAction
{
2253 pub const Decrypt
: Self = Self(0i32);
2254 pub const CopyToLocation
: Self = Self(1i32);
2255 pub const SendToRecipient
: Self = Self(2i32);
2256 pub const Other
: Self = Self(3i32);
2258 impl ::core
::marker
::Copy
for ProtectionPolicyAuditAction {}
2259 impl ::core
::clone
::Clone
for ProtectionPolicyAuditAction
{
2260 fn clone(&self) -> Self {
2264 impl ::core
::default::Default
for ProtectionPolicyAuditAction
{
2265 fn default() -> Self {
2269 impl ::windows
::core
::TypeKind
for ProtectionPolicyAuditAction
{
2270 type TypeKind
= ::windows
::core
::CopyType
;
2272 impl ::core
::fmt
::Debug
for ProtectionPolicyAuditAction
{
2273 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
2274 f
.debug_tuple("ProtectionPolicyAuditAction").field(&self.0).finish()
2277 impl ::windows
::core
::RuntimeType
for ProtectionPolicyAuditAction
{
2278 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Security.EnterpriseData.ProtectionPolicyAuditAction;i4)");
2280 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
2281 #[repr(transparent)]
2282 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2283 pub struct ProtectionPolicyEvaluationResult(pub i32);
2284 impl ProtectionPolicyEvaluationResult
{
2285 pub const Allowed
: Self = Self(0i32);
2286 pub const Blocked
: Self = Self(1i32);
2287 pub const ConsentRequired
: Self = Self(2i32);
2289 impl ::core
::marker
::Copy
for ProtectionPolicyEvaluationResult {}
2290 impl ::core
::clone
::Clone
for ProtectionPolicyEvaluationResult
{
2291 fn clone(&self) -> Self {
2295 impl ::core
::default::Default
for ProtectionPolicyEvaluationResult
{
2296 fn default() -> Self {
2300 impl ::windows
::core
::TypeKind
for ProtectionPolicyEvaluationResult
{
2301 type TypeKind
= ::windows
::core
::CopyType
;
2303 impl ::core
::fmt
::Debug
for ProtectionPolicyEvaluationResult
{
2304 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
2305 f
.debug_tuple("ProtectionPolicyEvaluationResult").field(&self.0).finish()
2308 impl ::windows
::core
::RuntimeType
for ProtectionPolicyEvaluationResult
{
2309 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Security.EnterpriseData.ProtectionPolicyEvaluationResult;i4)");
2311 #[doc = "*Required features: `\"Security_EnterpriseData\"`*"]
2312 #[repr(transparent)]
2313 #[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2314 pub struct ProtectionPolicyRequestAccessBehavior(pub i32);
2315 impl ProtectionPolicyRequestAccessBehavior
{
2316 pub const Decrypt
: Self = Self(0i32);
2317 pub const TreatOverridePolicyAsBlock
: Self = Self(1i32);
2319 impl ::core
::marker
::Copy
for ProtectionPolicyRequestAccessBehavior {}
2320 impl ::core
::clone
::Clone
for ProtectionPolicyRequestAccessBehavior
{
2321 fn clone(&self) -> Self {
2325 impl ::core
::default::Default
for ProtectionPolicyRequestAccessBehavior
{
2326 fn default() -> Self {
2330 impl ::windows
::core
::TypeKind
for ProtectionPolicyRequestAccessBehavior
{
2331 type TypeKind
= ::windows
::core
::CopyType
;
2333 impl ::core
::fmt
::Debug
for ProtectionPolicyRequestAccessBehavior
{
2334 fn fmt(&self, f
: &mut ::core
::fmt
::Formatter
<'_
>) -> ::core
::fmt
::Result
{
2335 f
.debug_tuple("ProtectionPolicyRequestAccessBehavior").field(&self.0).finish()
2338 impl ::windows
::core
::RuntimeType
for ProtectionPolicyRequestAccessBehavior
{
2339 const SIGNATURE
: ::windows
::imp
::ConstBuffer
= ::windows
::imp
::ConstBuffer
::from_slice(b
"enum(Windows.Security.EnterpriseData.ProtectionPolicyRequestAccessBehavior;i4)");
2341 #[cfg(feature = "implement")]
2342 ::core
::include
!("impl.rs");