]> git.proxmox.com Git - rustc.git/blame - vendor/windows/src/Windows/Win32/System/DesktopSharing/mod.rs
New upstream version 1.70.0+dfsg1
[rustc.git] / vendor / windows / src / Windows / Win32 / System / DesktopSharing / mod.rs
CommitLineData
353b0b11
FG
1#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
2#[cfg(feature = "Win32_System_Com")]
3#[repr(transparent)]
4pub struct IRDPSRAPIApplication(::windows::core::IUnknown);
5#[cfg(feature = "Win32_System_Com")]
6impl IRDPSRAPIApplication {
7 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
8 #[cfg(feature = "Win32_System_Com")]
9 pub unsafe fn Windows(&self) -> ::windows::core::Result<IRDPSRAPIWindowList> {
10 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIWindowList>();
11 (::windows::core::Interface::vtable(self).Windows)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
12 }
13 pub unsafe fn Id(&self) -> ::windows::core::Result<i32> {
14 let mut result__ = ::windows::core::zeroed::<i32>();
15 (::windows::core::Interface::vtable(self).Id)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
16 }
17 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
18 #[cfg(feature = "Win32_Foundation")]
19 pub unsafe fn Shared(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
20 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::VARIANT_BOOL>();
21 (::windows::core::Interface::vtable(self).Shared)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
22 }
23 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
24 #[cfg(feature = "Win32_Foundation")]
25 pub unsafe fn SetShared<P0>(&self, newval: P0) -> ::windows::core::Result<()>
26 where
27 P0: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
28 {
29 (::windows::core::Interface::vtable(self).SetShared)(::windows::core::Interface::as_raw(self), newval.into_param().abi()).ok()
30 }
31 pub unsafe fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR> {
32 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
33 (::windows::core::Interface::vtable(self).Name)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
34 }
35 pub unsafe fn Flags(&self) -> ::windows::core::Result<u32> {
36 let mut result__ = ::windows::core::zeroed::<u32>();
37 (::windows::core::Interface::vtable(self).Flags)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
38 }
39}
40#[cfg(feature = "Win32_System_Com")]
41::windows::imp::interface_hierarchy!(IRDPSRAPIApplication, ::windows::core::IUnknown, super::Com::IDispatch);
42#[cfg(feature = "Win32_System_Com")]
43impl ::core::cmp::PartialEq for IRDPSRAPIApplication {
44 fn eq(&self, other: &Self) -> bool {
45 self.0 == other.0
46 }
47}
48#[cfg(feature = "Win32_System_Com")]
49impl ::core::cmp::Eq for IRDPSRAPIApplication {}
50#[cfg(feature = "Win32_System_Com")]
51impl ::core::fmt::Debug for IRDPSRAPIApplication {
52 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
53 f.debug_tuple("IRDPSRAPIApplication").field(&self.0).finish()
54 }
55}
56#[cfg(feature = "Win32_System_Com")]
57unsafe impl ::windows::core::Interface for IRDPSRAPIApplication {
58 type Vtable = IRDPSRAPIApplication_Vtbl;
59}
60#[cfg(feature = "Win32_System_Com")]
61impl ::core::clone::Clone for IRDPSRAPIApplication {
62 fn clone(&self) -> Self {
63 Self(self.0.clone())
64 }
65}
66#[cfg(feature = "Win32_System_Com")]
67unsafe impl ::windows::core::ComInterface for IRDPSRAPIApplication {
68 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x41e7a09d_eb7a_436e_935d_780ca2628324);
69}
70#[cfg(feature = "Win32_System_Com")]
71#[repr(C)]
72#[doc(hidden)]
73pub struct IRDPSRAPIApplication_Vtbl {
74 pub base__: super::Com::IDispatch_Vtbl,
75 #[cfg(feature = "Win32_System_Com")]
76 pub Windows: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwindowlist: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
77 #[cfg(not(feature = "Win32_System_Com"))]
78 Windows: usize,
79 pub Id: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut i32) -> ::windows::core::HRESULT,
80 #[cfg(feature = "Win32_Foundation")]
81 pub Shared: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
82 #[cfg(not(feature = "Win32_Foundation"))]
83 Shared: usize,
84 #[cfg(feature = "Win32_Foundation")]
85 pub SetShared: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newval: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
86 #[cfg(not(feature = "Win32_Foundation"))]
87 SetShared: usize,
88 pub Name: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
89 pub Flags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32) -> ::windows::core::HRESULT,
90}
91#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
92#[cfg(feature = "Win32_System_Com")]
93#[repr(transparent)]
94pub struct IRDPSRAPIApplicationFilter(::windows::core::IUnknown);
95#[cfg(feature = "Win32_System_Com")]
96impl IRDPSRAPIApplicationFilter {
97 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
98 #[cfg(feature = "Win32_System_Com")]
99 pub unsafe fn Applications(&self) -> ::windows::core::Result<IRDPSRAPIApplicationList> {
100 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIApplicationList>();
101 (::windows::core::Interface::vtable(self).Applications)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
102 }
103 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
104 #[cfg(feature = "Win32_System_Com")]
105 pub unsafe fn Windows(&self) -> ::windows::core::Result<IRDPSRAPIWindowList> {
106 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIWindowList>();
107 (::windows::core::Interface::vtable(self).Windows)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
108 }
109 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
110 #[cfg(feature = "Win32_Foundation")]
111 pub unsafe fn Enabled(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
112 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::VARIANT_BOOL>();
113 (::windows::core::Interface::vtable(self).Enabled)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
114 }
115 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
116 #[cfg(feature = "Win32_Foundation")]
117 pub unsafe fn SetEnabled<P0>(&self, newval: P0) -> ::windows::core::Result<()>
118 where
119 P0: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
120 {
121 (::windows::core::Interface::vtable(self).SetEnabled)(::windows::core::Interface::as_raw(self), newval.into_param().abi()).ok()
122 }
123}
124#[cfg(feature = "Win32_System_Com")]
125::windows::imp::interface_hierarchy!(IRDPSRAPIApplicationFilter, ::windows::core::IUnknown, super::Com::IDispatch);
126#[cfg(feature = "Win32_System_Com")]
127impl ::core::cmp::PartialEq for IRDPSRAPIApplicationFilter {
128 fn eq(&self, other: &Self) -> bool {
129 self.0 == other.0
130 }
131}
132#[cfg(feature = "Win32_System_Com")]
133impl ::core::cmp::Eq for IRDPSRAPIApplicationFilter {}
134#[cfg(feature = "Win32_System_Com")]
135impl ::core::fmt::Debug for IRDPSRAPIApplicationFilter {
136 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
137 f.debug_tuple("IRDPSRAPIApplicationFilter").field(&self.0).finish()
138 }
139}
140#[cfg(feature = "Win32_System_Com")]
141unsafe impl ::windows::core::Interface for IRDPSRAPIApplicationFilter {
142 type Vtable = IRDPSRAPIApplicationFilter_Vtbl;
143}
144#[cfg(feature = "Win32_System_Com")]
145impl ::core::clone::Clone for IRDPSRAPIApplicationFilter {
146 fn clone(&self) -> Self {
147 Self(self.0.clone())
148 }
149}
150#[cfg(feature = "Win32_System_Com")]
151unsafe impl ::windows::core::ComInterface for IRDPSRAPIApplicationFilter {
152 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd20f10ca_6637_4f06_b1d5_277ea7e5160d);
153}
154#[cfg(feature = "Win32_System_Com")]
155#[repr(C)]
156#[doc(hidden)]
157pub struct IRDPSRAPIApplicationFilter_Vtbl {
158 pub base__: super::Com::IDispatch_Vtbl,
159 #[cfg(feature = "Win32_System_Com")]
160 pub Applications: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, papplications: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
161 #[cfg(not(feature = "Win32_System_Com"))]
162 Applications: usize,
163 #[cfg(feature = "Win32_System_Com")]
164 pub Windows: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pwindows: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
165 #[cfg(not(feature = "Win32_System_Com"))]
166 Windows: usize,
167 #[cfg(feature = "Win32_Foundation")]
168 pub Enabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
169 #[cfg(not(feature = "Win32_Foundation"))]
170 Enabled: usize,
171 #[cfg(feature = "Win32_Foundation")]
172 pub SetEnabled: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newval: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
173 #[cfg(not(feature = "Win32_Foundation"))]
174 SetEnabled: usize,
175}
176#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
177#[cfg(feature = "Win32_System_Com")]
178#[repr(transparent)]
179pub struct IRDPSRAPIApplicationList(::windows::core::IUnknown);
180#[cfg(feature = "Win32_System_Com")]
181impl IRDPSRAPIApplicationList {
182 pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
183 let mut result__ = ::windows::core::zeroed::<::windows::core::IUnknown>();
184 (::windows::core::Interface::vtable(self)._NewEnum)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
185 }
186 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
187 #[cfg(feature = "Win32_System_Com")]
188 pub unsafe fn get_Item(&self, item: i32) -> ::windows::core::Result<IRDPSRAPIApplication> {
189 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIApplication>();
190 (::windows::core::Interface::vtable(self).get_Item)(::windows::core::Interface::as_raw(self), item, &mut result__).from_abi(result__)
191 }
192}
193#[cfg(feature = "Win32_System_Com")]
194::windows::imp::interface_hierarchy!(IRDPSRAPIApplicationList, ::windows::core::IUnknown, super::Com::IDispatch);
195#[cfg(feature = "Win32_System_Com")]
196impl ::core::cmp::PartialEq for IRDPSRAPIApplicationList {
197 fn eq(&self, other: &Self) -> bool {
198 self.0 == other.0
199 }
200}
201#[cfg(feature = "Win32_System_Com")]
202impl ::core::cmp::Eq for IRDPSRAPIApplicationList {}
203#[cfg(feature = "Win32_System_Com")]
204impl ::core::fmt::Debug for IRDPSRAPIApplicationList {
205 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
206 f.debug_tuple("IRDPSRAPIApplicationList").field(&self.0).finish()
207 }
208}
209#[cfg(feature = "Win32_System_Com")]
210unsafe impl ::windows::core::Interface for IRDPSRAPIApplicationList {
211 type Vtable = IRDPSRAPIApplicationList_Vtbl;
212}
213#[cfg(feature = "Win32_System_Com")]
214impl ::core::clone::Clone for IRDPSRAPIApplicationList {
215 fn clone(&self) -> Self {
216 Self(self.0.clone())
217 }
218}
219#[cfg(feature = "Win32_System_Com")]
220unsafe impl ::windows::core::ComInterface for IRDPSRAPIApplicationList {
221 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd4b4aeb3_22dc_4837_b3b6_42ea2517849a);
222}
223#[cfg(feature = "Win32_System_Com")]
224#[repr(C)]
225#[doc(hidden)]
226pub struct IRDPSRAPIApplicationList_Vtbl {
227 pub base__: super::Com::IDispatch_Vtbl,
228 pub _NewEnum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, retval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
229 #[cfg(feature = "Win32_System_Com")]
230 pub get_Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, item: i32, papplication: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
231 #[cfg(not(feature = "Win32_System_Com"))]
232 get_Item: usize,
233}
234#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
235#[cfg(feature = "Win32_System_Com")]
236#[repr(transparent)]
237pub struct IRDPSRAPIAttendee(::windows::core::IUnknown);
238#[cfg(feature = "Win32_System_Com")]
239impl IRDPSRAPIAttendee {
240 pub unsafe fn Id(&self) -> ::windows::core::Result<i32> {
241 let mut result__ = ::windows::core::zeroed::<i32>();
242 (::windows::core::Interface::vtable(self).Id)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
243 }
244 pub unsafe fn RemoteName(&self) -> ::windows::core::Result<::windows::core::BSTR> {
245 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
246 (::windows::core::Interface::vtable(self).RemoteName)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
247 }
248 pub unsafe fn ControlLevel(&self) -> ::windows::core::Result<CTRL_LEVEL> {
249 let mut result__ = ::windows::core::zeroed::<CTRL_LEVEL>();
250 (::windows::core::Interface::vtable(self).ControlLevel)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
251 }
252 pub unsafe fn SetControlLevel(&self, pnewval: CTRL_LEVEL) -> ::windows::core::Result<()> {
253 (::windows::core::Interface::vtable(self).SetControlLevel)(::windows::core::Interface::as_raw(self), pnewval).ok()
254 }
255 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
256 #[cfg(feature = "Win32_System_Com")]
257 pub unsafe fn Invitation(&self) -> ::windows::core::Result<IRDPSRAPIInvitation> {
258 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIInvitation>();
259 (::windows::core::Interface::vtable(self).Invitation)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
260 }
261 pub unsafe fn TerminateConnection(&self) -> ::windows::core::Result<()> {
262 (::windows::core::Interface::vtable(self).TerminateConnection)(::windows::core::Interface::as_raw(self)).ok()
263 }
264 pub unsafe fn Flags(&self) -> ::windows::core::Result<i32> {
265 let mut result__ = ::windows::core::zeroed::<i32>();
266 (::windows::core::Interface::vtable(self).Flags)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
267 }
268 pub unsafe fn ConnectivityInfo(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
269 let mut result__ = ::windows::core::zeroed::<::windows::core::IUnknown>();
270 (::windows::core::Interface::vtable(self).ConnectivityInfo)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
271 }
272}
273#[cfg(feature = "Win32_System_Com")]
274::windows::imp::interface_hierarchy!(IRDPSRAPIAttendee, ::windows::core::IUnknown, super::Com::IDispatch);
275#[cfg(feature = "Win32_System_Com")]
276impl ::core::cmp::PartialEq for IRDPSRAPIAttendee {
277 fn eq(&self, other: &Self) -> bool {
278 self.0 == other.0
279 }
280}
281#[cfg(feature = "Win32_System_Com")]
282impl ::core::cmp::Eq for IRDPSRAPIAttendee {}
283#[cfg(feature = "Win32_System_Com")]
284impl ::core::fmt::Debug for IRDPSRAPIAttendee {
285 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
286 f.debug_tuple("IRDPSRAPIAttendee").field(&self.0).finish()
287 }
288}
289#[cfg(feature = "Win32_System_Com")]
290unsafe impl ::windows::core::Interface for IRDPSRAPIAttendee {
291 type Vtable = IRDPSRAPIAttendee_Vtbl;
292}
293#[cfg(feature = "Win32_System_Com")]
294impl ::core::clone::Clone for IRDPSRAPIAttendee {
295 fn clone(&self) -> Self {
296 Self(self.0.clone())
297 }
298}
299#[cfg(feature = "Win32_System_Com")]
300unsafe impl ::windows::core::ComInterface for IRDPSRAPIAttendee {
301 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xec0671b3_1b78_4b80_a464_9132247543e3);
302}
303#[cfg(feature = "Win32_System_Com")]
304#[repr(C)]
305#[doc(hidden)]
306pub struct IRDPSRAPIAttendee_Vtbl {
307 pub base__: super::Com::IDispatch_Vtbl,
308 pub Id: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pid: *mut i32) -> ::windows::core::HRESULT,
309 pub RemoteName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
310 pub ControlLevel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pval: *mut CTRL_LEVEL) -> ::windows::core::HRESULT,
311 pub SetControlLevel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnewval: CTRL_LEVEL) -> ::windows::core::HRESULT,
312 #[cfg(feature = "Win32_System_Com")]
313 pub Invitation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
314 #[cfg(not(feature = "Win32_System_Com"))]
315 Invitation: usize,
316 pub TerminateConnection: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
317 pub Flags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plflags: *mut i32) -> ::windows::core::HRESULT,
318 pub ConnectivityInfo: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
319}
320#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
321#[cfg(feature = "Win32_System_Com")]
322#[repr(transparent)]
323pub struct IRDPSRAPIAttendeeDisconnectInfo(::windows::core::IUnknown);
324#[cfg(feature = "Win32_System_Com")]
325impl IRDPSRAPIAttendeeDisconnectInfo {
326 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
327 #[cfg(feature = "Win32_System_Com")]
328 pub unsafe fn Attendee(&self) -> ::windows::core::Result<IRDPSRAPIAttendee> {
329 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIAttendee>();
330 (::windows::core::Interface::vtable(self).Attendee)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
331 }
332 pub unsafe fn Reason(&self) -> ::windows::core::Result<ATTENDEE_DISCONNECT_REASON> {
333 let mut result__ = ::windows::core::zeroed::<ATTENDEE_DISCONNECT_REASON>();
334 (::windows::core::Interface::vtable(self).Reason)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
335 }
336 pub unsafe fn Code(&self) -> ::windows::core::Result<i32> {
337 let mut result__ = ::windows::core::zeroed::<i32>();
338 (::windows::core::Interface::vtable(self).Code)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
339 }
340}
341#[cfg(feature = "Win32_System_Com")]
342::windows::imp::interface_hierarchy!(IRDPSRAPIAttendeeDisconnectInfo, ::windows::core::IUnknown, super::Com::IDispatch);
343#[cfg(feature = "Win32_System_Com")]
344impl ::core::cmp::PartialEq for IRDPSRAPIAttendeeDisconnectInfo {
345 fn eq(&self, other: &Self) -> bool {
346 self.0 == other.0
347 }
348}
349#[cfg(feature = "Win32_System_Com")]
350impl ::core::cmp::Eq for IRDPSRAPIAttendeeDisconnectInfo {}
351#[cfg(feature = "Win32_System_Com")]
352impl ::core::fmt::Debug for IRDPSRAPIAttendeeDisconnectInfo {
353 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
354 f.debug_tuple("IRDPSRAPIAttendeeDisconnectInfo").field(&self.0).finish()
355 }
356}
357#[cfg(feature = "Win32_System_Com")]
358unsafe impl ::windows::core::Interface for IRDPSRAPIAttendeeDisconnectInfo {
359 type Vtable = IRDPSRAPIAttendeeDisconnectInfo_Vtbl;
360}
361#[cfg(feature = "Win32_System_Com")]
362impl ::core::clone::Clone for IRDPSRAPIAttendeeDisconnectInfo {
363 fn clone(&self) -> Self {
364 Self(self.0.clone())
365 }
366}
367#[cfg(feature = "Win32_System_Com")]
368unsafe impl ::windows::core::ComInterface for IRDPSRAPIAttendeeDisconnectInfo {
369 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc187689f_447c_44a1_9c14_fffbb3b7ec17);
370}
371#[cfg(feature = "Win32_System_Com")]
372#[repr(C)]
373#[doc(hidden)]
374pub struct IRDPSRAPIAttendeeDisconnectInfo_Vtbl {
375 pub base__: super::Com::IDispatch_Vtbl,
376 #[cfg(feature = "Win32_System_Com")]
377 pub Attendee: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, retval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
378 #[cfg(not(feature = "Win32_System_Com"))]
379 Attendee: usize,
380 pub Reason: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, preason: *mut ATTENDEE_DISCONNECT_REASON) -> ::windows::core::HRESULT,
381 pub Code: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pval: *mut i32) -> ::windows::core::HRESULT,
382}
383#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
384#[cfg(feature = "Win32_System_Com")]
385#[repr(transparent)]
386pub struct IRDPSRAPIAttendeeManager(::windows::core::IUnknown);
387#[cfg(feature = "Win32_System_Com")]
388impl IRDPSRAPIAttendeeManager {
389 pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
390 let mut result__ = ::windows::core::zeroed::<::windows::core::IUnknown>();
391 (::windows::core::Interface::vtable(self)._NewEnum)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
392 }
393 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
394 #[cfg(feature = "Win32_System_Com")]
395 pub unsafe fn get_Item(&self, id: i32) -> ::windows::core::Result<IRDPSRAPIAttendee> {
396 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIAttendee>();
397 (::windows::core::Interface::vtable(self).get_Item)(::windows::core::Interface::as_raw(self), id, &mut result__).from_abi(result__)
398 }
399}
400#[cfg(feature = "Win32_System_Com")]
401::windows::imp::interface_hierarchy!(IRDPSRAPIAttendeeManager, ::windows::core::IUnknown, super::Com::IDispatch);
402#[cfg(feature = "Win32_System_Com")]
403impl ::core::cmp::PartialEq for IRDPSRAPIAttendeeManager {
404 fn eq(&self, other: &Self) -> bool {
405 self.0 == other.0
406 }
407}
408#[cfg(feature = "Win32_System_Com")]
409impl ::core::cmp::Eq for IRDPSRAPIAttendeeManager {}
410#[cfg(feature = "Win32_System_Com")]
411impl ::core::fmt::Debug for IRDPSRAPIAttendeeManager {
412 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
413 f.debug_tuple("IRDPSRAPIAttendeeManager").field(&self.0).finish()
414 }
415}
416#[cfg(feature = "Win32_System_Com")]
417unsafe impl ::windows::core::Interface for IRDPSRAPIAttendeeManager {
418 type Vtable = IRDPSRAPIAttendeeManager_Vtbl;
419}
420#[cfg(feature = "Win32_System_Com")]
421impl ::core::clone::Clone for IRDPSRAPIAttendeeManager {
422 fn clone(&self) -> Self {
423 Self(self.0.clone())
424 }
425}
426#[cfg(feature = "Win32_System_Com")]
427unsafe impl ::windows::core::ComInterface for IRDPSRAPIAttendeeManager {
428 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xba3a37e8_33da_4749_8da0_07fa34da7944);
429}
430#[cfg(feature = "Win32_System_Com")]
431#[repr(C)]
432#[doc(hidden)]
433pub struct IRDPSRAPIAttendeeManager_Vtbl {
434 pub base__: super::Com::IDispatch_Vtbl,
435 pub _NewEnum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, retval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
436 #[cfg(feature = "Win32_System_Com")]
437 pub get_Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, id: i32, ppitem: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
438 #[cfg(not(feature = "Win32_System_Com"))]
439 get_Item: usize,
440}
441#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
442#[repr(transparent)]
443pub struct IRDPSRAPIAudioStream(::windows::core::IUnknown);
444impl IRDPSRAPIAudioStream {
445 pub unsafe fn Initialize(&self) -> ::windows::core::Result<i64> {
446 let mut result__ = ::windows::core::zeroed::<i64>();
447 (::windows::core::Interface::vtable(self).Initialize)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
448 }
449 pub unsafe fn Start(&self) -> ::windows::core::Result<()> {
450 (::windows::core::Interface::vtable(self).Start)(::windows::core::Interface::as_raw(self)).ok()
451 }
452 pub unsafe fn Stop(&self) -> ::windows::core::Result<()> {
453 (::windows::core::Interface::vtable(self).Stop)(::windows::core::Interface::as_raw(self)).ok()
454 }
455 pub unsafe fn GetBuffer(&self, ppbdata: *mut *mut u8, pcbdata: *mut u32, ptimestamp: *mut u64) -> ::windows::core::Result<()> {
456 (::windows::core::Interface::vtable(self).GetBuffer)(::windows::core::Interface::as_raw(self), ppbdata, pcbdata, ptimestamp).ok()
457 }
458 pub unsafe fn FreeBuffer(&self) -> ::windows::core::Result<()> {
459 (::windows::core::Interface::vtable(self).FreeBuffer)(::windows::core::Interface::as_raw(self)).ok()
460 }
461}
462::windows::imp::interface_hierarchy!(IRDPSRAPIAudioStream, ::windows::core::IUnknown);
463impl ::core::cmp::PartialEq for IRDPSRAPIAudioStream {
464 fn eq(&self, other: &Self) -> bool {
465 self.0 == other.0
466 }
467}
468impl ::core::cmp::Eq for IRDPSRAPIAudioStream {}
469impl ::core::fmt::Debug for IRDPSRAPIAudioStream {
470 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
471 f.debug_tuple("IRDPSRAPIAudioStream").field(&self.0).finish()
472 }
473}
474unsafe impl ::windows::core::Interface for IRDPSRAPIAudioStream {
475 type Vtable = IRDPSRAPIAudioStream_Vtbl;
476}
477impl ::core::clone::Clone for IRDPSRAPIAudioStream {
478 fn clone(&self) -> Self {
479 Self(self.0.clone())
480 }
481}
482unsafe impl ::windows::core::ComInterface for IRDPSRAPIAudioStream {
483 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe3e30ef9_89c6_4541_ba3b_19336ac6d31c);
484}
485#[repr(C)]
486#[doc(hidden)]
487pub struct IRDPSRAPIAudioStream_Vtbl {
488 pub base__: ::windows::core::IUnknown_Vtbl,
489 pub Initialize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pnperiodinhundrednsintervals: *mut i64) -> ::windows::core::HRESULT,
490 pub Start: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
491 pub Stop: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
492 pub GetBuffer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppbdata: *mut *mut u8, pcbdata: *mut u32, ptimestamp: *mut u64) -> ::windows::core::HRESULT,
493 pub FreeBuffer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
494}
495#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
496#[repr(transparent)]
497pub struct IRDPSRAPIClipboardUseEvents(::windows::core::IUnknown);
498impl IRDPSRAPIClipboardUseEvents {
499 #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`*"]
500 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
501 pub unsafe fn OnPasteFromClipboard<P0>(&self, clipboardformat: u32, pattendee: P0) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL>
502 where
503 P0: ::windows::core::IntoParam<super::Com::IDispatch>,
504 {
505 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::VARIANT_BOOL>();
506 (::windows::core::Interface::vtable(self).OnPasteFromClipboard)(::windows::core::Interface::as_raw(self), clipboardformat, pattendee.into_param().abi(), &mut result__).from_abi(result__)
507 }
508}
509::windows::imp::interface_hierarchy!(IRDPSRAPIClipboardUseEvents, ::windows::core::IUnknown);
510impl ::core::cmp::PartialEq for IRDPSRAPIClipboardUseEvents {
511 fn eq(&self, other: &Self) -> bool {
512 self.0 == other.0
513 }
514}
515impl ::core::cmp::Eq for IRDPSRAPIClipboardUseEvents {}
516impl ::core::fmt::Debug for IRDPSRAPIClipboardUseEvents {
517 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
518 f.debug_tuple("IRDPSRAPIClipboardUseEvents").field(&self.0).finish()
519 }
520}
521unsafe impl ::windows::core::Interface for IRDPSRAPIClipboardUseEvents {
522 type Vtable = IRDPSRAPIClipboardUseEvents_Vtbl;
523}
524impl ::core::clone::Clone for IRDPSRAPIClipboardUseEvents {
525 fn clone(&self) -> Self {
526 Self(self.0.clone())
527 }
528}
529unsafe impl ::windows::core::ComInterface for IRDPSRAPIClipboardUseEvents {
530 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd559f59a_7a27_4138_8763_247ce5f659a8);
531}
532#[repr(C)]
533#[doc(hidden)]
534pub struct IRDPSRAPIClipboardUseEvents_Vtbl {
535 pub base__: ::windows::core::IUnknown_Vtbl,
536 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com"))]
537 pub OnPasteFromClipboard: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clipboardformat: u32, pattendee: *mut ::core::ffi::c_void, pretval: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
538 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com")))]
539 OnPasteFromClipboard: usize,
540}
541#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
542#[repr(transparent)]
543pub struct IRDPSRAPIDebug(::windows::core::IUnknown);
544impl IRDPSRAPIDebug {
545 pub unsafe fn SetCLXCmdLine<P0>(&self, clxcmdline: P0) -> ::windows::core::Result<()>
546 where
547 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
548 {
549 (::windows::core::Interface::vtable(self).SetCLXCmdLine)(::windows::core::Interface::as_raw(self), clxcmdline.into_param().abi()).ok()
550 }
551 pub unsafe fn CLXCmdLine(&self) -> ::windows::core::Result<::windows::core::BSTR> {
552 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
553 (::windows::core::Interface::vtable(self).CLXCmdLine)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
554 }
555}
556::windows::imp::interface_hierarchy!(IRDPSRAPIDebug, ::windows::core::IUnknown);
557impl ::core::cmp::PartialEq for IRDPSRAPIDebug {
558 fn eq(&self, other: &Self) -> bool {
559 self.0 == other.0
560 }
561}
562impl ::core::cmp::Eq for IRDPSRAPIDebug {}
563impl ::core::fmt::Debug for IRDPSRAPIDebug {
564 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
565 f.debug_tuple("IRDPSRAPIDebug").field(&self.0).finish()
566 }
567}
568unsafe impl ::windows::core::Interface for IRDPSRAPIDebug {
569 type Vtable = IRDPSRAPIDebug_Vtbl;
570}
571impl ::core::clone::Clone for IRDPSRAPIDebug {
572 fn clone(&self) -> Self {
573 Self(self.0.clone())
574 }
575}
576unsafe impl ::windows::core::ComInterface for IRDPSRAPIDebug {
577 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xaa1e42b5_496d_4ca4_a690_348dcb2ec4ad);
578}
579#[repr(C)]
580#[doc(hidden)]
581pub struct IRDPSRAPIDebug_Vtbl {
582 pub base__: ::windows::core::IUnknown_Vtbl,
583 pub SetCLXCmdLine: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, clxcmdline: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
584 pub CLXCmdLine: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pclxcmdline: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
585}
586#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
587#[cfg(feature = "Win32_System_Com")]
588#[repr(transparent)]
589pub struct IRDPSRAPIFrameBuffer(::windows::core::IUnknown);
590#[cfg(feature = "Win32_System_Com")]
591impl IRDPSRAPIFrameBuffer {
592 pub unsafe fn Width(&self) -> ::windows::core::Result<i32> {
593 let mut result__ = ::windows::core::zeroed::<i32>();
594 (::windows::core::Interface::vtable(self).Width)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
595 }
596 pub unsafe fn Height(&self) -> ::windows::core::Result<i32> {
597 let mut result__ = ::windows::core::zeroed::<i32>();
598 (::windows::core::Interface::vtable(self).Height)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
599 }
600 pub unsafe fn Bpp(&self) -> ::windows::core::Result<i32> {
601 let mut result__ = ::windows::core::zeroed::<i32>();
602 (::windows::core::Interface::vtable(self).Bpp)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
603 }
604 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
605 #[cfg(feature = "Win32_System_Com")]
606 pub unsafe fn GetFrameBufferBits(&self, x: i32, y: i32, width: i32, heigth: i32) -> ::windows::core::Result<*mut super::Com::SAFEARRAY> {
607 let mut result__ = ::windows::core::zeroed::<*mut super::Com::SAFEARRAY>();
608 (::windows::core::Interface::vtable(self).GetFrameBufferBits)(::windows::core::Interface::as_raw(self), x, y, width, heigth, &mut result__).from_abi(result__)
609 }
610}
611#[cfg(feature = "Win32_System_Com")]
612::windows::imp::interface_hierarchy!(IRDPSRAPIFrameBuffer, ::windows::core::IUnknown, super::Com::IDispatch);
613#[cfg(feature = "Win32_System_Com")]
614impl ::core::cmp::PartialEq for IRDPSRAPIFrameBuffer {
615 fn eq(&self, other: &Self) -> bool {
616 self.0 == other.0
617 }
618}
619#[cfg(feature = "Win32_System_Com")]
620impl ::core::cmp::Eq for IRDPSRAPIFrameBuffer {}
621#[cfg(feature = "Win32_System_Com")]
622impl ::core::fmt::Debug for IRDPSRAPIFrameBuffer {
623 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
624 f.debug_tuple("IRDPSRAPIFrameBuffer").field(&self.0).finish()
625 }
626}
627#[cfg(feature = "Win32_System_Com")]
628unsafe impl ::windows::core::Interface for IRDPSRAPIFrameBuffer {
629 type Vtable = IRDPSRAPIFrameBuffer_Vtbl;
630}
631#[cfg(feature = "Win32_System_Com")]
632impl ::core::clone::Clone for IRDPSRAPIFrameBuffer {
633 fn clone(&self) -> Self {
634 Self(self.0.clone())
635 }
636}
637#[cfg(feature = "Win32_System_Com")]
638unsafe impl ::windows::core::ComInterface for IRDPSRAPIFrameBuffer {
639 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x3d67e7d2_b27b_448e_81b3_c6110ed8b4be);
640}
641#[cfg(feature = "Win32_System_Com")]
642#[repr(C)]
643#[doc(hidden)]
644pub struct IRDPSRAPIFrameBuffer_Vtbl {
645 pub base__: super::Com::IDispatch_Vtbl,
646 pub Width: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plwidth: *mut i32) -> ::windows::core::HRESULT,
647 pub Height: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plheight: *mut i32) -> ::windows::core::HRESULT,
648 pub Bpp: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plbpp: *mut i32) -> ::windows::core::HRESULT,
649 #[cfg(feature = "Win32_System_Com")]
650 pub GetFrameBufferBits: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, x: i32, y: i32, width: i32, heigth: i32, ppbits: *mut *mut super::Com::SAFEARRAY) -> ::windows::core::HRESULT,
651 #[cfg(not(feature = "Win32_System_Com"))]
652 GetFrameBufferBits: usize,
653}
654#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
655#[cfg(feature = "Win32_System_Com")]
656#[repr(transparent)]
657pub struct IRDPSRAPIInvitation(::windows::core::IUnknown);
658#[cfg(feature = "Win32_System_Com")]
659impl IRDPSRAPIInvitation {
660 pub unsafe fn ConnectionString(&self) -> ::windows::core::Result<::windows::core::BSTR> {
661 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
662 (::windows::core::Interface::vtable(self).ConnectionString)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
663 }
664 pub unsafe fn GroupName(&self) -> ::windows::core::Result<::windows::core::BSTR> {
665 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
666 (::windows::core::Interface::vtable(self).GroupName)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
667 }
668 pub unsafe fn Password(&self) -> ::windows::core::Result<::windows::core::BSTR> {
669 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
670 (::windows::core::Interface::vtable(self).Password)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
671 }
672 pub unsafe fn AttendeeLimit(&self) -> ::windows::core::Result<i32> {
673 let mut result__ = ::windows::core::zeroed::<i32>();
674 (::windows::core::Interface::vtable(self).AttendeeLimit)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
675 }
676 pub unsafe fn SetAttendeeLimit(&self, newval: i32) -> ::windows::core::Result<()> {
677 (::windows::core::Interface::vtable(self).SetAttendeeLimit)(::windows::core::Interface::as_raw(self), newval).ok()
678 }
679 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
680 #[cfg(feature = "Win32_Foundation")]
681 pub unsafe fn Revoked(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
682 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::VARIANT_BOOL>();
683 (::windows::core::Interface::vtable(self).Revoked)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
684 }
685 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
686 #[cfg(feature = "Win32_Foundation")]
687 pub unsafe fn SetRevoked<P0>(&self, newval: P0) -> ::windows::core::Result<()>
688 where
689 P0: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
690 {
691 (::windows::core::Interface::vtable(self).SetRevoked)(::windows::core::Interface::as_raw(self), newval.into_param().abi()).ok()
692 }
693}
694#[cfg(feature = "Win32_System_Com")]
695::windows::imp::interface_hierarchy!(IRDPSRAPIInvitation, ::windows::core::IUnknown, super::Com::IDispatch);
696#[cfg(feature = "Win32_System_Com")]
697impl ::core::cmp::PartialEq for IRDPSRAPIInvitation {
698 fn eq(&self, other: &Self) -> bool {
699 self.0 == other.0
700 }
701}
702#[cfg(feature = "Win32_System_Com")]
703impl ::core::cmp::Eq for IRDPSRAPIInvitation {}
704#[cfg(feature = "Win32_System_Com")]
705impl ::core::fmt::Debug for IRDPSRAPIInvitation {
706 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
707 f.debug_tuple("IRDPSRAPIInvitation").field(&self.0).finish()
708 }
709}
710#[cfg(feature = "Win32_System_Com")]
711unsafe impl ::windows::core::Interface for IRDPSRAPIInvitation {
712 type Vtable = IRDPSRAPIInvitation_Vtbl;
713}
714#[cfg(feature = "Win32_System_Com")]
715impl ::core::clone::Clone for IRDPSRAPIInvitation {
716 fn clone(&self) -> Self {
717 Self(self.0.clone())
718 }
719}
720#[cfg(feature = "Win32_System_Com")]
721unsafe impl ::windows::core::ComInterface for IRDPSRAPIInvitation {
722 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4fac1d43_fc51_45bb_b1b4_2b53aa562fa3);
723}
724#[cfg(feature = "Win32_System_Com")]
725#[repr(C)]
726#[doc(hidden)]
727pub struct IRDPSRAPIInvitation_Vtbl {
728 pub base__: super::Com::IDispatch_Vtbl,
729 pub ConnectionString: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
730 pub GroupName: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
731 pub Password: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
732 pub AttendeeLimit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut i32) -> ::windows::core::HRESULT,
733 pub SetAttendeeLimit: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newval: i32) -> ::windows::core::HRESULT,
734 #[cfg(feature = "Win32_Foundation")]
735 pub Revoked: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
736 #[cfg(not(feature = "Win32_Foundation"))]
737 Revoked: usize,
738 #[cfg(feature = "Win32_Foundation")]
739 pub SetRevoked: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newval: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
740 #[cfg(not(feature = "Win32_Foundation"))]
741 SetRevoked: usize,
742}
743#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
744#[cfg(feature = "Win32_System_Com")]
745#[repr(transparent)]
746pub struct IRDPSRAPIInvitationManager(::windows::core::IUnknown);
747#[cfg(feature = "Win32_System_Com")]
748impl IRDPSRAPIInvitationManager {
749 pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
750 let mut result__ = ::windows::core::zeroed::<::windows::core::IUnknown>();
751 (::windows::core::Interface::vtable(self)._NewEnum)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
752 }
753 #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
754 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
755 pub unsafe fn get_Item(&self, item: super::Com::VARIANT) -> ::windows::core::Result<IRDPSRAPIInvitation> {
756 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIInvitation>();
757 (::windows::core::Interface::vtable(self).get_Item)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(item), &mut result__).from_abi(result__)
758 }
759 pub unsafe fn Count(&self) -> ::windows::core::Result<i32> {
760 let mut result__ = ::windows::core::zeroed::<i32>();
761 (::windows::core::Interface::vtable(self).Count)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
762 }
763 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
764 #[cfg(feature = "Win32_System_Com")]
765 pub unsafe fn CreateInvitation<P0, P1, P2>(&self, bstrauthstring: P0, bstrgroupname: P1, bstrpassword: P2, attendeelimit: i32) -> ::windows::core::Result<IRDPSRAPIInvitation>
766 where
767 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
768 P1: ::windows::core::IntoParam<::windows::core::BSTR>,
769 P2: ::windows::core::IntoParam<::windows::core::BSTR>,
770 {
771 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIInvitation>();
772 (::windows::core::Interface::vtable(self).CreateInvitation)(::windows::core::Interface::as_raw(self), bstrauthstring.into_param().abi(), bstrgroupname.into_param().abi(), bstrpassword.into_param().abi(), attendeelimit, &mut result__).from_abi(result__)
773 }
774}
775#[cfg(feature = "Win32_System_Com")]
776::windows::imp::interface_hierarchy!(IRDPSRAPIInvitationManager, ::windows::core::IUnknown, super::Com::IDispatch);
777#[cfg(feature = "Win32_System_Com")]
778impl ::core::cmp::PartialEq for IRDPSRAPIInvitationManager {
779 fn eq(&self, other: &Self) -> bool {
780 self.0 == other.0
781 }
782}
783#[cfg(feature = "Win32_System_Com")]
784impl ::core::cmp::Eq for IRDPSRAPIInvitationManager {}
785#[cfg(feature = "Win32_System_Com")]
786impl ::core::fmt::Debug for IRDPSRAPIInvitationManager {
787 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
788 f.debug_tuple("IRDPSRAPIInvitationManager").field(&self.0).finish()
789 }
790}
791#[cfg(feature = "Win32_System_Com")]
792unsafe impl ::windows::core::Interface for IRDPSRAPIInvitationManager {
793 type Vtable = IRDPSRAPIInvitationManager_Vtbl;
794}
795#[cfg(feature = "Win32_System_Com")]
796impl ::core::clone::Clone for IRDPSRAPIInvitationManager {
797 fn clone(&self) -> Self {
798 Self(self.0.clone())
799 }
800}
801#[cfg(feature = "Win32_System_Com")]
802unsafe impl ::windows::core::ComInterface for IRDPSRAPIInvitationManager {
803 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x4722b049_92c3_4c2d_8a65_f7348f644dcf);
804}
805#[cfg(feature = "Win32_System_Com")]
806#[repr(C)]
807#[doc(hidden)]
808pub struct IRDPSRAPIInvitationManager_Vtbl {
809 pub base__: super::Com::IDispatch_Vtbl,
810 pub _NewEnum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, retval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
811 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
812 pub get_Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, item: super::Com::VARIANT, ppinvitation: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
813 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
814 get_Item: usize,
815 pub Count: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut i32) -> ::windows::core::HRESULT,
816 #[cfg(feature = "Win32_System_Com")]
817 pub CreateInvitation: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrauthstring: ::std::mem::MaybeUninit<::windows::core::BSTR>, bstrgroupname: ::std::mem::MaybeUninit<::windows::core::BSTR>, bstrpassword: ::std::mem::MaybeUninit<::windows::core::BSTR>, attendeelimit: i32, ppinvitation: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
818 #[cfg(not(feature = "Win32_System_Com"))]
819 CreateInvitation: usize,
820}
821#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
822#[repr(transparent)]
823pub struct IRDPSRAPIPerfCounterLogger(::windows::core::IUnknown);
824impl IRDPSRAPIPerfCounterLogger {
825 pub unsafe fn LogValue(&self, lvalue: i64) -> ::windows::core::Result<()> {
826 (::windows::core::Interface::vtable(self).LogValue)(::windows::core::Interface::as_raw(self), lvalue).ok()
827 }
828}
829::windows::imp::interface_hierarchy!(IRDPSRAPIPerfCounterLogger, ::windows::core::IUnknown);
830impl ::core::cmp::PartialEq for IRDPSRAPIPerfCounterLogger {
831 fn eq(&self, other: &Self) -> bool {
832 self.0 == other.0
833 }
834}
835impl ::core::cmp::Eq for IRDPSRAPIPerfCounterLogger {}
836impl ::core::fmt::Debug for IRDPSRAPIPerfCounterLogger {
837 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
838 f.debug_tuple("IRDPSRAPIPerfCounterLogger").field(&self.0).finish()
839 }
840}
841unsafe impl ::windows::core::Interface for IRDPSRAPIPerfCounterLogger {
842 type Vtable = IRDPSRAPIPerfCounterLogger_Vtbl;
843}
844impl ::core::clone::Clone for IRDPSRAPIPerfCounterLogger {
845 fn clone(&self) -> Self {
846 Self(self.0.clone())
847 }
848}
849unsafe impl ::windows::core::ComInterface for IRDPSRAPIPerfCounterLogger {
850 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x071c2533_0fa4_4e8f_ae83_9c10b4305ab5);
851}
852#[repr(C)]
853#[doc(hidden)]
854pub struct IRDPSRAPIPerfCounterLogger_Vtbl {
855 pub base__: ::windows::core::IUnknown_Vtbl,
856 pub LogValue: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lvalue: i64) -> ::windows::core::HRESULT,
857}
858#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
859#[repr(transparent)]
860pub struct IRDPSRAPIPerfCounterLoggingManager(::windows::core::IUnknown);
861impl IRDPSRAPIPerfCounterLoggingManager {
862 pub unsafe fn CreateLogger<P0>(&self, bstrcountername: P0) -> ::windows::core::Result<IRDPSRAPIPerfCounterLogger>
863 where
864 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
865 {
866 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIPerfCounterLogger>();
867 (::windows::core::Interface::vtable(self).CreateLogger)(::windows::core::Interface::as_raw(self), bstrcountername.into_param().abi(), &mut result__).from_abi(result__)
868 }
869}
870::windows::imp::interface_hierarchy!(IRDPSRAPIPerfCounterLoggingManager, ::windows::core::IUnknown);
871impl ::core::cmp::PartialEq for IRDPSRAPIPerfCounterLoggingManager {
872 fn eq(&self, other: &Self) -> bool {
873 self.0 == other.0
874 }
875}
876impl ::core::cmp::Eq for IRDPSRAPIPerfCounterLoggingManager {}
877impl ::core::fmt::Debug for IRDPSRAPIPerfCounterLoggingManager {
878 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
879 f.debug_tuple("IRDPSRAPIPerfCounterLoggingManager").field(&self.0).finish()
880 }
881}
882unsafe impl ::windows::core::Interface for IRDPSRAPIPerfCounterLoggingManager {
883 type Vtable = IRDPSRAPIPerfCounterLoggingManager_Vtbl;
884}
885impl ::core::clone::Clone for IRDPSRAPIPerfCounterLoggingManager {
886 fn clone(&self) -> Self {
887 Self(self.0.clone())
888 }
889}
890unsafe impl ::windows::core::ComInterface for IRDPSRAPIPerfCounterLoggingManager {
891 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9a512c86_ac6e_4a8e_b1a4_fcef363f6e64);
892}
893#[repr(C)]
894#[doc(hidden)]
895pub struct IRDPSRAPIPerfCounterLoggingManager_Vtbl {
896 pub base__: ::windows::core::IUnknown_Vtbl,
897 pub CreateLogger: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrcountername: ::std::mem::MaybeUninit<::windows::core::BSTR>, pplogger: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
898}
899#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
900#[cfg(feature = "Win32_System_Com")]
901#[repr(transparent)]
902pub struct IRDPSRAPISessionProperties(::windows::core::IUnknown);
903#[cfg(feature = "Win32_System_Com")]
904impl IRDPSRAPISessionProperties {
905 #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
906 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
907 pub unsafe fn get_Property<P0>(&self, propertyname: P0) -> ::windows::core::Result<super::Com::VARIANT>
908 where
909 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
910 {
911 let mut result__ = ::windows::core::zeroed::<super::Com::VARIANT>();
912 (::windows::core::Interface::vtable(self).get_Property)(::windows::core::Interface::as_raw(self), propertyname.into_param().abi(), &mut result__).from_abi(result__)
913 }
914 #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
915 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
916 pub unsafe fn put_Property<P0>(&self, propertyname: P0, newval: super::Com::VARIANT) -> ::windows::core::Result<()>
917 where
918 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
919 {
920 (::windows::core::Interface::vtable(self).put_Property)(::windows::core::Interface::as_raw(self), propertyname.into_param().abi(), ::core::mem::transmute(newval)).ok()
921 }
922}
923#[cfg(feature = "Win32_System_Com")]
924::windows::imp::interface_hierarchy!(IRDPSRAPISessionProperties, ::windows::core::IUnknown, super::Com::IDispatch);
925#[cfg(feature = "Win32_System_Com")]
926impl ::core::cmp::PartialEq for IRDPSRAPISessionProperties {
927 fn eq(&self, other: &Self) -> bool {
928 self.0 == other.0
929 }
930}
931#[cfg(feature = "Win32_System_Com")]
932impl ::core::cmp::Eq for IRDPSRAPISessionProperties {}
933#[cfg(feature = "Win32_System_Com")]
934impl ::core::fmt::Debug for IRDPSRAPISessionProperties {
935 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
936 f.debug_tuple("IRDPSRAPISessionProperties").field(&self.0).finish()
937 }
938}
939#[cfg(feature = "Win32_System_Com")]
940unsafe impl ::windows::core::Interface for IRDPSRAPISessionProperties {
941 type Vtable = IRDPSRAPISessionProperties_Vtbl;
942}
943#[cfg(feature = "Win32_System_Com")]
944impl ::core::clone::Clone for IRDPSRAPISessionProperties {
945 fn clone(&self) -> Self {
946 Self(self.0.clone())
947 }
948}
949#[cfg(feature = "Win32_System_Com")]
950unsafe impl ::windows::core::ComInterface for IRDPSRAPISessionProperties {
951 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x339b24f2_9bc0_4f16_9aac_f165433d13d4);
952}
953#[cfg(feature = "Win32_System_Com")]
954#[repr(C)]
955#[doc(hidden)]
956pub struct IRDPSRAPISessionProperties_Vtbl {
957 pub base__: super::Com::IDispatch_Vtbl,
958 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
959 pub get_Property: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, propertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>, pval: *mut super::Com::VARIANT) -> ::windows::core::HRESULT,
960 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
961 get_Property: usize,
962 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
963 pub put_Property: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, propertyname: ::std::mem::MaybeUninit<::windows::core::BSTR>, newval: super::Com::VARIANT) -> ::windows::core::HRESULT,
964 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
965 put_Property: usize,
966}
967#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
968#[cfg(feature = "Win32_System_Com")]
969#[repr(transparent)]
970pub struct IRDPSRAPISharingSession(::windows::core::IUnknown);
971#[cfg(feature = "Win32_System_Com")]
972impl IRDPSRAPISharingSession {
973 pub unsafe fn Open(&self) -> ::windows::core::Result<()> {
974 (::windows::core::Interface::vtable(self).Open)(::windows::core::Interface::as_raw(self)).ok()
975 }
976 pub unsafe fn Close(&self) -> ::windows::core::Result<()> {
977 (::windows::core::Interface::vtable(self).Close)(::windows::core::Interface::as_raw(self)).ok()
978 }
979 pub unsafe fn SetColorDepth(&self, colordepth: i32) -> ::windows::core::Result<()> {
980 (::windows::core::Interface::vtable(self).SetColorDepth)(::windows::core::Interface::as_raw(self), colordepth).ok()
981 }
982 pub unsafe fn ColorDepth(&self) -> ::windows::core::Result<i32> {
983 let mut result__ = ::windows::core::zeroed::<i32>();
984 (::windows::core::Interface::vtable(self).ColorDepth)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
985 }
986 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
987 #[cfg(feature = "Win32_System_Com")]
988 pub unsafe fn Properties(&self) -> ::windows::core::Result<IRDPSRAPISessionProperties> {
989 let mut result__ = ::windows::core::zeroed::<IRDPSRAPISessionProperties>();
990 (::windows::core::Interface::vtable(self).Properties)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
991 }
992 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
993 #[cfg(feature = "Win32_System_Com")]
994 pub unsafe fn Attendees(&self) -> ::windows::core::Result<IRDPSRAPIAttendeeManager> {
995 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIAttendeeManager>();
996 (::windows::core::Interface::vtable(self).Attendees)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
997 }
998 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
999 #[cfg(feature = "Win32_System_Com")]
1000 pub unsafe fn Invitations(&self) -> ::windows::core::Result<IRDPSRAPIInvitationManager> {
1001 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIInvitationManager>();
1002 (::windows::core::Interface::vtable(self).Invitations)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1003 }
1004 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1005 #[cfg(feature = "Win32_System_Com")]
1006 pub unsafe fn ApplicationFilter(&self) -> ::windows::core::Result<IRDPSRAPIApplicationFilter> {
1007 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIApplicationFilter>();
1008 (::windows::core::Interface::vtable(self).ApplicationFilter)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1009 }
1010 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1011 #[cfg(feature = "Win32_System_Com")]
1012 pub unsafe fn VirtualChannelManager(&self) -> ::windows::core::Result<IRDPSRAPIVirtualChannelManager> {
1013 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIVirtualChannelManager>();
1014 (::windows::core::Interface::vtable(self).VirtualChannelManager)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1015 }
1016 pub unsafe fn Pause(&self) -> ::windows::core::Result<()> {
1017 (::windows::core::Interface::vtable(self).Pause)(::windows::core::Interface::as_raw(self)).ok()
1018 }
1019 pub unsafe fn Resume(&self) -> ::windows::core::Result<()> {
1020 (::windows::core::Interface::vtable(self).Resume)(::windows::core::Interface::as_raw(self)).ok()
1021 }
1022 pub unsafe fn ConnectToClient<P0>(&self, bstrconnectionstring: P0) -> ::windows::core::Result<()>
1023 where
1024 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
1025 {
1026 (::windows::core::Interface::vtable(self).ConnectToClient)(::windows::core::Interface::as_raw(self), bstrconnectionstring.into_param().abi()).ok()
1027 }
1028 pub unsafe fn SetDesktopSharedRect(&self, left: i32, top: i32, right: i32, bottom: i32) -> ::windows::core::Result<()> {
1029 (::windows::core::Interface::vtable(self).SetDesktopSharedRect)(::windows::core::Interface::as_raw(self), left, top, right, bottom).ok()
1030 }
1031 pub unsafe fn GetDesktopSharedRect(&self, pleft: *mut i32, ptop: *mut i32, pright: *mut i32, pbottom: *mut i32) -> ::windows::core::Result<()> {
1032 (::windows::core::Interface::vtable(self).GetDesktopSharedRect)(::windows::core::Interface::as_raw(self), pleft, ptop, pright, pbottom).ok()
1033 }
1034}
1035#[cfg(feature = "Win32_System_Com")]
1036::windows::imp::interface_hierarchy!(IRDPSRAPISharingSession, ::windows::core::IUnknown, super::Com::IDispatch);
1037#[cfg(feature = "Win32_System_Com")]
1038impl ::core::cmp::PartialEq for IRDPSRAPISharingSession {
1039 fn eq(&self, other: &Self) -> bool {
1040 self.0 == other.0
1041 }
1042}
1043#[cfg(feature = "Win32_System_Com")]
1044impl ::core::cmp::Eq for IRDPSRAPISharingSession {}
1045#[cfg(feature = "Win32_System_Com")]
1046impl ::core::fmt::Debug for IRDPSRAPISharingSession {
1047 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1048 f.debug_tuple("IRDPSRAPISharingSession").field(&self.0).finish()
1049 }
1050}
1051#[cfg(feature = "Win32_System_Com")]
1052unsafe impl ::windows::core::Interface for IRDPSRAPISharingSession {
1053 type Vtable = IRDPSRAPISharingSession_Vtbl;
1054}
1055#[cfg(feature = "Win32_System_Com")]
1056impl ::core::clone::Clone for IRDPSRAPISharingSession {
1057 fn clone(&self) -> Self {
1058 Self(self.0.clone())
1059 }
1060}
1061#[cfg(feature = "Win32_System_Com")]
1062unsafe impl ::windows::core::ComInterface for IRDPSRAPISharingSession {
1063 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xeeb20886_e470_4cf6_842b_2739c0ec5cfb);
1064}
1065#[cfg(feature = "Win32_System_Com")]
1066#[repr(C)]
1067#[doc(hidden)]
1068pub struct IRDPSRAPISharingSession_Vtbl {
1069 pub base__: super::Com::IDispatch_Vtbl,
1070 pub Open: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1071 pub Close: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1072 pub SetColorDepth: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, colordepth: i32) -> ::windows::core::HRESULT,
1073 pub ColorDepth: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcolordepth: *mut i32) -> ::windows::core::HRESULT,
1074 #[cfg(feature = "Win32_System_Com")]
1075 pub Properties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1076 #[cfg(not(feature = "Win32_System_Com"))]
1077 Properties: usize,
1078 #[cfg(feature = "Win32_System_Com")]
1079 pub Attendees: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1080 #[cfg(not(feature = "Win32_System_Com"))]
1081 Attendees: usize,
1082 #[cfg(feature = "Win32_System_Com")]
1083 pub Invitations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1084 #[cfg(not(feature = "Win32_System_Com"))]
1085 Invitations: usize,
1086 #[cfg(feature = "Win32_System_Com")]
1087 pub ApplicationFilter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1088 #[cfg(not(feature = "Win32_System_Com"))]
1089 ApplicationFilter: usize,
1090 #[cfg(feature = "Win32_System_Com")]
1091 pub VirtualChannelManager: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1092 #[cfg(not(feature = "Win32_System_Com"))]
1093 VirtualChannelManager: usize,
1094 pub Pause: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1095 pub Resume: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1096 pub ConnectToClient: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrconnectionstring: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1097 pub SetDesktopSharedRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, left: i32, top: i32, right: i32, bottom: i32) -> ::windows::core::HRESULT,
1098 pub GetDesktopSharedRect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pleft: *mut i32, ptop: *mut i32, pright: *mut i32, pbottom: *mut i32) -> ::windows::core::HRESULT,
1099}
1100#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
1101#[cfg(feature = "Win32_System_Com")]
1102#[repr(transparent)]
1103pub struct IRDPSRAPISharingSession2(::windows::core::IUnknown);
1104#[cfg(feature = "Win32_System_Com")]
1105impl IRDPSRAPISharingSession2 {
1106 pub unsafe fn Open(&self) -> ::windows::core::Result<()> {
1107 (::windows::core::Interface::vtable(self).base__.Open)(::windows::core::Interface::as_raw(self)).ok()
1108 }
1109 pub unsafe fn Close(&self) -> ::windows::core::Result<()> {
1110 (::windows::core::Interface::vtable(self).base__.Close)(::windows::core::Interface::as_raw(self)).ok()
1111 }
1112 pub unsafe fn SetColorDepth(&self, colordepth: i32) -> ::windows::core::Result<()> {
1113 (::windows::core::Interface::vtable(self).base__.SetColorDepth)(::windows::core::Interface::as_raw(self), colordepth).ok()
1114 }
1115 pub unsafe fn ColorDepth(&self) -> ::windows::core::Result<i32> {
1116 let mut result__ = ::windows::core::zeroed::<i32>();
1117 (::windows::core::Interface::vtable(self).base__.ColorDepth)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1118 }
1119 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1120 #[cfg(feature = "Win32_System_Com")]
1121 pub unsafe fn Properties(&self) -> ::windows::core::Result<IRDPSRAPISessionProperties> {
1122 let mut result__ = ::windows::core::zeroed::<IRDPSRAPISessionProperties>();
1123 (::windows::core::Interface::vtable(self).base__.Properties)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1124 }
1125 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1126 #[cfg(feature = "Win32_System_Com")]
1127 pub unsafe fn Attendees(&self) -> ::windows::core::Result<IRDPSRAPIAttendeeManager> {
1128 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIAttendeeManager>();
1129 (::windows::core::Interface::vtable(self).base__.Attendees)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1130 }
1131 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1132 #[cfg(feature = "Win32_System_Com")]
1133 pub unsafe fn Invitations(&self) -> ::windows::core::Result<IRDPSRAPIInvitationManager> {
1134 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIInvitationManager>();
1135 (::windows::core::Interface::vtable(self).base__.Invitations)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1136 }
1137 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1138 #[cfg(feature = "Win32_System_Com")]
1139 pub unsafe fn ApplicationFilter(&self) -> ::windows::core::Result<IRDPSRAPIApplicationFilter> {
1140 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIApplicationFilter>();
1141 (::windows::core::Interface::vtable(self).base__.ApplicationFilter)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1142 }
1143 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1144 #[cfg(feature = "Win32_System_Com")]
1145 pub unsafe fn VirtualChannelManager(&self) -> ::windows::core::Result<IRDPSRAPIVirtualChannelManager> {
1146 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIVirtualChannelManager>();
1147 (::windows::core::Interface::vtable(self).base__.VirtualChannelManager)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1148 }
1149 pub unsafe fn Pause(&self) -> ::windows::core::Result<()> {
1150 (::windows::core::Interface::vtable(self).base__.Pause)(::windows::core::Interface::as_raw(self)).ok()
1151 }
1152 pub unsafe fn Resume(&self) -> ::windows::core::Result<()> {
1153 (::windows::core::Interface::vtable(self).base__.Resume)(::windows::core::Interface::as_raw(self)).ok()
1154 }
1155 pub unsafe fn ConnectToClient<P0>(&self, bstrconnectionstring: P0) -> ::windows::core::Result<()>
1156 where
1157 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
1158 {
1159 (::windows::core::Interface::vtable(self).base__.ConnectToClient)(::windows::core::Interface::as_raw(self), bstrconnectionstring.into_param().abi()).ok()
1160 }
1161 pub unsafe fn SetDesktopSharedRect(&self, left: i32, top: i32, right: i32, bottom: i32) -> ::windows::core::Result<()> {
1162 (::windows::core::Interface::vtable(self).base__.SetDesktopSharedRect)(::windows::core::Interface::as_raw(self), left, top, right, bottom).ok()
1163 }
1164 pub unsafe fn GetDesktopSharedRect(&self, pleft: *mut i32, ptop: *mut i32, pright: *mut i32, pbottom: *mut i32) -> ::windows::core::Result<()> {
1165 (::windows::core::Interface::vtable(self).base__.GetDesktopSharedRect)(::windows::core::Interface::as_raw(self), pleft, ptop, pright, pbottom).ok()
1166 }
1167 pub unsafe fn ConnectUsingTransportStream<P0, P1, P2>(&self, pstream: P0, bstrgroup: P1, bstrauthenticatedattendeename: P2) -> ::windows::core::Result<()>
1168 where
1169 P0: ::windows::core::IntoParam<IRDPSRAPITransportStream>,
1170 P1: ::windows::core::IntoParam<::windows::core::BSTR>,
1171 P2: ::windows::core::IntoParam<::windows::core::BSTR>,
1172 {
1173 (::windows::core::Interface::vtable(self).ConnectUsingTransportStream)(::windows::core::Interface::as_raw(self), pstream.into_param().abi(), bstrgroup.into_param().abi(), bstrauthenticatedattendeename.into_param().abi()).ok()
1174 }
1175 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1176 #[cfg(feature = "Win32_System_Com")]
1177 pub unsafe fn FrameBuffer(&self) -> ::windows::core::Result<IRDPSRAPIFrameBuffer> {
1178 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIFrameBuffer>();
1179 (::windows::core::Interface::vtable(self).FrameBuffer)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1180 }
1181 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1182 #[cfg(feature = "Win32_System_Com")]
1183 pub unsafe fn SendControlLevelChangeResponse<P0>(&self, pattendee: P0, requestedlevel: CTRL_LEVEL, reasoncode: i32) -> ::windows::core::Result<()>
1184 where
1185 P0: ::windows::core::IntoParam<IRDPSRAPIAttendee>,
1186 {
1187 (::windows::core::Interface::vtable(self).SendControlLevelChangeResponse)(::windows::core::Interface::as_raw(self), pattendee.into_param().abi(), requestedlevel, reasoncode).ok()
1188 }
1189}
1190#[cfg(feature = "Win32_System_Com")]
1191::windows::imp::interface_hierarchy!(IRDPSRAPISharingSession2, ::windows::core::IUnknown, super::Com::IDispatch, IRDPSRAPISharingSession);
1192#[cfg(feature = "Win32_System_Com")]
1193impl ::core::cmp::PartialEq for IRDPSRAPISharingSession2 {
1194 fn eq(&self, other: &Self) -> bool {
1195 self.0 == other.0
1196 }
1197}
1198#[cfg(feature = "Win32_System_Com")]
1199impl ::core::cmp::Eq for IRDPSRAPISharingSession2 {}
1200#[cfg(feature = "Win32_System_Com")]
1201impl ::core::fmt::Debug for IRDPSRAPISharingSession2 {
1202 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1203 f.debug_tuple("IRDPSRAPISharingSession2").field(&self.0).finish()
1204 }
1205}
1206#[cfg(feature = "Win32_System_Com")]
1207unsafe impl ::windows::core::Interface for IRDPSRAPISharingSession2 {
1208 type Vtable = IRDPSRAPISharingSession2_Vtbl;
1209}
1210#[cfg(feature = "Win32_System_Com")]
1211impl ::core::clone::Clone for IRDPSRAPISharingSession2 {
1212 fn clone(&self) -> Self {
1213 Self(self.0.clone())
1214 }
1215}
1216#[cfg(feature = "Win32_System_Com")]
1217unsafe impl ::windows::core::ComInterface for IRDPSRAPISharingSession2 {
1218 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xfee4ee57_e3e8_4205_8fb0_8fd1d0675c21);
1219}
1220#[cfg(feature = "Win32_System_Com")]
1221#[repr(C)]
1222#[doc(hidden)]
1223pub struct IRDPSRAPISharingSession2_Vtbl {
1224 pub base__: IRDPSRAPISharingSession_Vtbl,
1225 pub ConnectUsingTransportStream: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pstream: *mut ::core::ffi::c_void, bstrgroup: ::std::mem::MaybeUninit<::windows::core::BSTR>, bstrauthenticatedattendeename: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1226 #[cfg(feature = "Win32_System_Com")]
1227 pub FrameBuffer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1228 #[cfg(not(feature = "Win32_System_Com"))]
1229 FrameBuffer: usize,
1230 #[cfg(feature = "Win32_System_Com")]
1231 pub SendControlLevelChangeResponse: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pattendee: *mut ::core::ffi::c_void, requestedlevel: CTRL_LEVEL, reasoncode: i32) -> ::windows::core::HRESULT,
1232 #[cfg(not(feature = "Win32_System_Com"))]
1233 SendControlLevelChangeResponse: usize,
1234}
1235#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
1236#[cfg(feature = "Win32_System_Com")]
1237#[repr(transparent)]
1238pub struct IRDPSRAPITcpConnectionInfo(::windows::core::IUnknown);
1239#[cfg(feature = "Win32_System_Com")]
1240impl IRDPSRAPITcpConnectionInfo {
1241 pub unsafe fn Protocol(&self) -> ::windows::core::Result<i32> {
1242 let mut result__ = ::windows::core::zeroed::<i32>();
1243 (::windows::core::Interface::vtable(self).Protocol)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1244 }
1245 pub unsafe fn LocalPort(&self) -> ::windows::core::Result<i32> {
1246 let mut result__ = ::windows::core::zeroed::<i32>();
1247 (::windows::core::Interface::vtable(self).LocalPort)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1248 }
1249 pub unsafe fn LocalIP(&self) -> ::windows::core::Result<::windows::core::BSTR> {
1250 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
1251 (::windows::core::Interface::vtable(self).LocalIP)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1252 }
1253 pub unsafe fn PeerPort(&self) -> ::windows::core::Result<i32> {
1254 let mut result__ = ::windows::core::zeroed::<i32>();
1255 (::windows::core::Interface::vtable(self).PeerPort)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1256 }
1257 pub unsafe fn PeerIP(&self) -> ::windows::core::Result<::windows::core::BSTR> {
1258 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
1259 (::windows::core::Interface::vtable(self).PeerIP)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1260 }
1261}
1262#[cfg(feature = "Win32_System_Com")]
1263::windows::imp::interface_hierarchy!(IRDPSRAPITcpConnectionInfo, ::windows::core::IUnknown, super::Com::IDispatch);
1264#[cfg(feature = "Win32_System_Com")]
1265impl ::core::cmp::PartialEq for IRDPSRAPITcpConnectionInfo {
1266 fn eq(&self, other: &Self) -> bool {
1267 self.0 == other.0
1268 }
1269}
1270#[cfg(feature = "Win32_System_Com")]
1271impl ::core::cmp::Eq for IRDPSRAPITcpConnectionInfo {}
1272#[cfg(feature = "Win32_System_Com")]
1273impl ::core::fmt::Debug for IRDPSRAPITcpConnectionInfo {
1274 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1275 f.debug_tuple("IRDPSRAPITcpConnectionInfo").field(&self.0).finish()
1276 }
1277}
1278#[cfg(feature = "Win32_System_Com")]
1279unsafe impl ::windows::core::Interface for IRDPSRAPITcpConnectionInfo {
1280 type Vtable = IRDPSRAPITcpConnectionInfo_Vtbl;
1281}
1282#[cfg(feature = "Win32_System_Com")]
1283impl ::core::clone::Clone for IRDPSRAPITcpConnectionInfo {
1284 fn clone(&self) -> Self {
1285 Self(self.0.clone())
1286 }
1287}
1288#[cfg(feature = "Win32_System_Com")]
1289unsafe impl ::windows::core::ComInterface for IRDPSRAPITcpConnectionInfo {
1290 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xf74049a4_3d06_4028_8193_0a8c29bc2452);
1291}
1292#[cfg(feature = "Win32_System_Com")]
1293#[repr(C)]
1294#[doc(hidden)]
1295pub struct IRDPSRAPITcpConnectionInfo_Vtbl {
1296 pub base__: super::Com::IDispatch_Vtbl,
1297 pub Protocol: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plprotocol: *mut i32) -> ::windows::core::HRESULT,
1298 pub LocalPort: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plport: *mut i32) -> ::windows::core::HRESULT,
1299 pub LocalIP: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbsrlocalip: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1300 pub PeerPort: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plport: *mut i32) -> ::windows::core::HRESULT,
1301 pub PeerIP: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrip: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1302}
1303#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
1304#[repr(transparent)]
1305pub struct IRDPSRAPITransportStream(::windows::core::IUnknown);
1306impl IRDPSRAPITransportStream {
1307 pub unsafe fn AllocBuffer(&self, maxpayload: i32) -> ::windows::core::Result<IRDPSRAPITransportStreamBuffer> {
1308 let mut result__ = ::windows::core::zeroed::<IRDPSRAPITransportStreamBuffer>();
1309 (::windows::core::Interface::vtable(self).AllocBuffer)(::windows::core::Interface::as_raw(self), maxpayload, &mut result__).from_abi(result__)
1310 }
1311 pub unsafe fn FreeBuffer<P0>(&self, pbuffer: P0) -> ::windows::core::Result<()>
1312 where
1313 P0: ::windows::core::IntoParam<IRDPSRAPITransportStreamBuffer>,
1314 {
1315 (::windows::core::Interface::vtable(self).FreeBuffer)(::windows::core::Interface::as_raw(self), pbuffer.into_param().abi()).ok()
1316 }
1317 pub unsafe fn WriteBuffer<P0>(&self, pbuffer: P0) -> ::windows::core::Result<()>
1318 where
1319 P0: ::windows::core::IntoParam<IRDPSRAPITransportStreamBuffer>,
1320 {
1321 (::windows::core::Interface::vtable(self).WriteBuffer)(::windows::core::Interface::as_raw(self), pbuffer.into_param().abi()).ok()
1322 }
1323 pub unsafe fn ReadBuffer<P0>(&self, pbuffer: P0) -> ::windows::core::Result<()>
1324 where
1325 P0: ::windows::core::IntoParam<IRDPSRAPITransportStreamBuffer>,
1326 {
1327 (::windows::core::Interface::vtable(self).ReadBuffer)(::windows::core::Interface::as_raw(self), pbuffer.into_param().abi()).ok()
1328 }
1329 pub unsafe fn Open<P0>(&self, pcallbacks: P0) -> ::windows::core::Result<()>
1330 where
1331 P0: ::windows::core::IntoParam<IRDPSRAPITransportStreamEvents>,
1332 {
1333 (::windows::core::Interface::vtable(self).Open)(::windows::core::Interface::as_raw(self), pcallbacks.into_param().abi()).ok()
1334 }
1335 pub unsafe fn Close(&self) -> ::windows::core::Result<()> {
1336 (::windows::core::Interface::vtable(self).Close)(::windows::core::Interface::as_raw(self)).ok()
1337 }
1338}
1339::windows::imp::interface_hierarchy!(IRDPSRAPITransportStream, ::windows::core::IUnknown);
1340impl ::core::cmp::PartialEq for IRDPSRAPITransportStream {
1341 fn eq(&self, other: &Self) -> bool {
1342 self.0 == other.0
1343 }
1344}
1345impl ::core::cmp::Eq for IRDPSRAPITransportStream {}
1346impl ::core::fmt::Debug for IRDPSRAPITransportStream {
1347 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1348 f.debug_tuple("IRDPSRAPITransportStream").field(&self.0).finish()
1349 }
1350}
1351unsafe impl ::windows::core::Interface for IRDPSRAPITransportStream {
1352 type Vtable = IRDPSRAPITransportStream_Vtbl;
1353}
1354impl ::core::clone::Clone for IRDPSRAPITransportStream {
1355 fn clone(&self) -> Self {
1356 Self(self.0.clone())
1357 }
1358}
1359unsafe impl ::windows::core::ComInterface for IRDPSRAPITransportStream {
1360 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x36cfa065_43bb_4ef7_aed7_9b88a5053036);
1361}
1362#[repr(C)]
1363#[doc(hidden)]
1364pub struct IRDPSRAPITransportStream_Vtbl {
1365 pub base__: ::windows::core::IUnknown_Vtbl,
1366 pub AllocBuffer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, maxpayload: i32, ppbuffer: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1367 pub FreeBuffer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbuffer: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1368 pub WriteBuffer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbuffer: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1369 pub ReadBuffer: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbuffer: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1370 pub Open: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcallbacks: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1371 pub Close: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1372}
1373#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
1374#[repr(transparent)]
1375pub struct IRDPSRAPITransportStreamBuffer(::windows::core::IUnknown);
1376impl IRDPSRAPITransportStreamBuffer {
1377 pub unsafe fn Storage(&self) -> ::windows::core::Result<*mut u8> {
1378 let mut result__ = ::windows::core::zeroed::<*mut u8>();
1379 (::windows::core::Interface::vtable(self).Storage)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1380 }
1381 pub unsafe fn StorageSize(&self) -> ::windows::core::Result<i32> {
1382 let mut result__ = ::windows::core::zeroed::<i32>();
1383 (::windows::core::Interface::vtable(self).StorageSize)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1384 }
1385 pub unsafe fn PayloadSize(&self) -> ::windows::core::Result<i32> {
1386 let mut result__ = ::windows::core::zeroed::<i32>();
1387 (::windows::core::Interface::vtable(self).PayloadSize)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1388 }
1389 pub unsafe fn SetPayloadSize(&self, lval: i32) -> ::windows::core::Result<()> {
1390 (::windows::core::Interface::vtable(self).SetPayloadSize)(::windows::core::Interface::as_raw(self), lval).ok()
1391 }
1392 pub unsafe fn PayloadOffset(&self) -> ::windows::core::Result<i32> {
1393 let mut result__ = ::windows::core::zeroed::<i32>();
1394 (::windows::core::Interface::vtable(self).PayloadOffset)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1395 }
1396 pub unsafe fn SetPayloadOffset(&self, lretval: i32) -> ::windows::core::Result<()> {
1397 (::windows::core::Interface::vtable(self).SetPayloadOffset)(::windows::core::Interface::as_raw(self), lretval).ok()
1398 }
1399 pub unsafe fn Flags(&self) -> ::windows::core::Result<i32> {
1400 let mut result__ = ::windows::core::zeroed::<i32>();
1401 (::windows::core::Interface::vtable(self).Flags)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1402 }
1403 pub unsafe fn SetFlags(&self, lflags: i32) -> ::windows::core::Result<()> {
1404 (::windows::core::Interface::vtable(self).SetFlags)(::windows::core::Interface::as_raw(self), lflags).ok()
1405 }
1406 pub unsafe fn Context(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
1407 let mut result__ = ::windows::core::zeroed::<::windows::core::IUnknown>();
1408 (::windows::core::Interface::vtable(self).Context)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1409 }
1410 pub unsafe fn SetContext<P0>(&self, pcontext: P0) -> ::windows::core::Result<()>
1411 where
1412 P0: ::windows::core::IntoParam<::windows::core::IUnknown>,
1413 {
1414 (::windows::core::Interface::vtable(self).SetContext)(::windows::core::Interface::as_raw(self), pcontext.into_param().abi()).ok()
1415 }
1416}
1417::windows::imp::interface_hierarchy!(IRDPSRAPITransportStreamBuffer, ::windows::core::IUnknown);
1418impl ::core::cmp::PartialEq for IRDPSRAPITransportStreamBuffer {
1419 fn eq(&self, other: &Self) -> bool {
1420 self.0 == other.0
1421 }
1422}
1423impl ::core::cmp::Eq for IRDPSRAPITransportStreamBuffer {}
1424impl ::core::fmt::Debug for IRDPSRAPITransportStreamBuffer {
1425 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1426 f.debug_tuple("IRDPSRAPITransportStreamBuffer").field(&self.0).finish()
1427 }
1428}
1429unsafe impl ::windows::core::Interface for IRDPSRAPITransportStreamBuffer {
1430 type Vtable = IRDPSRAPITransportStreamBuffer_Vtbl;
1431}
1432impl ::core::clone::Clone for IRDPSRAPITransportStreamBuffer {
1433 fn clone(&self) -> Self {
1434 Self(self.0.clone())
1435 }
1436}
1437unsafe impl ::windows::core::ComInterface for IRDPSRAPITransportStreamBuffer {
1438 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x81c80290_5085_44b0_b460_f865c39cb4a9);
1439}
1440#[repr(C)]
1441#[doc(hidden)]
1442pub struct IRDPSRAPITransportStreamBuffer_Vtbl {
1443 pub base__: ::windows::core::IUnknown_Vtbl,
1444 pub Storage: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppbstorage: *mut *mut u8) -> ::windows::core::HRESULT,
1445 pub StorageSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plmaxstore: *mut i32) -> ::windows::core::HRESULT,
1446 pub PayloadSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plretval: *mut i32) -> ::windows::core::HRESULT,
1447 pub SetPayloadSize: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lval: i32) -> ::windows::core::HRESULT,
1448 pub PayloadOffset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plretval: *mut i32) -> ::windows::core::HRESULT,
1449 pub SetPayloadOffset: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lretval: i32) -> ::windows::core::HRESULT,
1450 pub Flags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plflags: *mut i32) -> ::windows::core::HRESULT,
1451 pub SetFlags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lflags: i32) -> ::windows::core::HRESULT,
1452 pub Context: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppcontext: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1453 pub SetContext: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pcontext: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1454}
1455#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
1456#[repr(transparent)]
1457pub struct IRDPSRAPITransportStreamEvents(::windows::core::IUnknown);
1458impl IRDPSRAPITransportStreamEvents {
1459 pub unsafe fn OnWriteCompleted<P0>(&self, pbuffer: P0)
1460 where
1461 P0: ::windows::core::IntoParam<IRDPSRAPITransportStreamBuffer>,
1462 {
1463 (::windows::core::Interface::vtable(self).OnWriteCompleted)(::windows::core::Interface::as_raw(self), pbuffer.into_param().abi())
1464 }
1465 pub unsafe fn OnReadCompleted<P0>(&self, pbuffer: P0)
1466 where
1467 P0: ::windows::core::IntoParam<IRDPSRAPITransportStreamBuffer>,
1468 {
1469 (::windows::core::Interface::vtable(self).OnReadCompleted)(::windows::core::Interface::as_raw(self), pbuffer.into_param().abi())
1470 }
1471 pub unsafe fn OnStreamClosed(&self, hrreason: ::windows::core::HRESULT) {
1472 (::windows::core::Interface::vtable(self).OnStreamClosed)(::windows::core::Interface::as_raw(self), hrreason)
1473 }
1474}
1475::windows::imp::interface_hierarchy!(IRDPSRAPITransportStreamEvents, ::windows::core::IUnknown);
1476impl ::core::cmp::PartialEq for IRDPSRAPITransportStreamEvents {
1477 fn eq(&self, other: &Self) -> bool {
1478 self.0 == other.0
1479 }
1480}
1481impl ::core::cmp::Eq for IRDPSRAPITransportStreamEvents {}
1482impl ::core::fmt::Debug for IRDPSRAPITransportStreamEvents {
1483 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1484 f.debug_tuple("IRDPSRAPITransportStreamEvents").field(&self.0).finish()
1485 }
1486}
1487unsafe impl ::windows::core::Interface for IRDPSRAPITransportStreamEvents {
1488 type Vtable = IRDPSRAPITransportStreamEvents_Vtbl;
1489}
1490impl ::core::clone::Clone for IRDPSRAPITransportStreamEvents {
1491 fn clone(&self) -> Self {
1492 Self(self.0.clone())
1493 }
1494}
1495unsafe impl ::windows::core::ComInterface for IRDPSRAPITransportStreamEvents {
1496 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xea81c254_f5af_4e40_982e_3e63bb595276);
1497}
1498#[repr(C)]
1499#[doc(hidden)]
1500pub struct IRDPSRAPITransportStreamEvents_Vtbl {
1501 pub base__: ::windows::core::IUnknown_Vtbl,
1502 pub OnWriteCompleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbuffer: *mut ::core::ffi::c_void),
1503 pub OnReadCompleted: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbuffer: *mut ::core::ffi::c_void),
1504 pub OnStreamClosed: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, hrreason: ::windows::core::HRESULT),
1505}
1506#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
1507#[cfg(feature = "Win32_System_Com")]
1508#[repr(transparent)]
1509pub struct IRDPSRAPIViewer(::windows::core::IUnknown);
1510#[cfg(feature = "Win32_System_Com")]
1511impl IRDPSRAPIViewer {
1512 pub unsafe fn Connect<P0, P1, P2>(&self, bstrconnectionstring: P0, bstrname: P1, bstrpassword: P2) -> ::windows::core::Result<()>
1513 where
1514 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
1515 P1: ::windows::core::IntoParam<::windows::core::BSTR>,
1516 P2: ::windows::core::IntoParam<::windows::core::BSTR>,
1517 {
1518 (::windows::core::Interface::vtable(self).Connect)(::windows::core::Interface::as_raw(self), bstrconnectionstring.into_param().abi(), bstrname.into_param().abi(), bstrpassword.into_param().abi()).ok()
1519 }
1520 pub unsafe fn Disconnect(&self) -> ::windows::core::Result<()> {
1521 (::windows::core::Interface::vtable(self).Disconnect)(::windows::core::Interface::as_raw(self)).ok()
1522 }
1523 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1524 #[cfg(feature = "Win32_System_Com")]
1525 pub unsafe fn Attendees(&self) -> ::windows::core::Result<IRDPSRAPIAttendeeManager> {
1526 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIAttendeeManager>();
1527 (::windows::core::Interface::vtable(self).Attendees)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1528 }
1529 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1530 #[cfg(feature = "Win32_System_Com")]
1531 pub unsafe fn Invitations(&self) -> ::windows::core::Result<IRDPSRAPIInvitationManager> {
1532 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIInvitationManager>();
1533 (::windows::core::Interface::vtable(self).Invitations)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1534 }
1535 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1536 #[cfg(feature = "Win32_System_Com")]
1537 pub unsafe fn ApplicationFilter(&self) -> ::windows::core::Result<IRDPSRAPIApplicationFilter> {
1538 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIApplicationFilter>();
1539 (::windows::core::Interface::vtable(self).ApplicationFilter)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1540 }
1541 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1542 #[cfg(feature = "Win32_System_Com")]
1543 pub unsafe fn VirtualChannelManager(&self) -> ::windows::core::Result<IRDPSRAPIVirtualChannelManager> {
1544 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIVirtualChannelManager>();
1545 (::windows::core::Interface::vtable(self).VirtualChannelManager)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1546 }
1547 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
1548 #[cfg(feature = "Win32_Foundation")]
1549 pub unsafe fn SetSmartSizing<P0>(&self, vbsmartsizing: P0) -> ::windows::core::Result<()>
1550 where
1551 P0: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
1552 {
1553 (::windows::core::Interface::vtable(self).SetSmartSizing)(::windows::core::Interface::as_raw(self), vbsmartsizing.into_param().abi()).ok()
1554 }
1555 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
1556 #[cfg(feature = "Win32_Foundation")]
1557 pub unsafe fn SmartSizing(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
1558 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::VARIANT_BOOL>();
1559 (::windows::core::Interface::vtable(self).SmartSizing)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1560 }
1561 pub unsafe fn RequestControl(&self, ctrllevel: CTRL_LEVEL) -> ::windows::core::Result<()> {
1562 (::windows::core::Interface::vtable(self).RequestControl)(::windows::core::Interface::as_raw(self), ctrllevel).ok()
1563 }
1564 pub unsafe fn SetDisconnectedText<P0>(&self, bstrdisconnectedtext: P0) -> ::windows::core::Result<()>
1565 where
1566 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
1567 {
1568 (::windows::core::Interface::vtable(self).SetDisconnectedText)(::windows::core::Interface::as_raw(self), bstrdisconnectedtext.into_param().abi()).ok()
1569 }
1570 pub unsafe fn DisconnectedText(&self) -> ::windows::core::Result<::windows::core::BSTR> {
1571 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
1572 (::windows::core::Interface::vtable(self).DisconnectedText)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1573 }
1574 pub unsafe fn RequestColorDepthChange(&self, bpp: i32) -> ::windows::core::Result<()> {
1575 (::windows::core::Interface::vtable(self).RequestColorDepthChange)(::windows::core::Interface::as_raw(self), bpp).ok()
1576 }
1577 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1578 #[cfg(feature = "Win32_System_Com")]
1579 pub unsafe fn Properties(&self) -> ::windows::core::Result<IRDPSRAPISessionProperties> {
1580 let mut result__ = ::windows::core::zeroed::<IRDPSRAPISessionProperties>();
1581 (::windows::core::Interface::vtable(self).Properties)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1582 }
1583 pub unsafe fn StartReverseConnectListener<P0, P1, P2>(&self, bstrconnectionstring: P0, bstrusername: P1, bstrpassword: P2) -> ::windows::core::Result<::windows::core::BSTR>
1584 where
1585 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
1586 P1: ::windows::core::IntoParam<::windows::core::BSTR>,
1587 P2: ::windows::core::IntoParam<::windows::core::BSTR>,
1588 {
1589 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
1590 (::windows::core::Interface::vtable(self).StartReverseConnectListener)(::windows::core::Interface::as_raw(self), bstrconnectionstring.into_param().abi(), bstrusername.into_param().abi(), bstrpassword.into_param().abi(), &mut result__).from_abi(result__)
1591 }
1592}
1593#[cfg(feature = "Win32_System_Com")]
1594::windows::imp::interface_hierarchy!(IRDPSRAPIViewer, ::windows::core::IUnknown, super::Com::IDispatch);
1595#[cfg(feature = "Win32_System_Com")]
1596impl ::core::cmp::PartialEq for IRDPSRAPIViewer {
1597 fn eq(&self, other: &Self) -> bool {
1598 self.0 == other.0
1599 }
1600}
1601#[cfg(feature = "Win32_System_Com")]
1602impl ::core::cmp::Eq for IRDPSRAPIViewer {}
1603#[cfg(feature = "Win32_System_Com")]
1604impl ::core::fmt::Debug for IRDPSRAPIViewer {
1605 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1606 f.debug_tuple("IRDPSRAPIViewer").field(&self.0).finish()
1607 }
1608}
1609#[cfg(feature = "Win32_System_Com")]
1610unsafe impl ::windows::core::Interface for IRDPSRAPIViewer {
1611 type Vtable = IRDPSRAPIViewer_Vtbl;
1612}
1613#[cfg(feature = "Win32_System_Com")]
1614impl ::core::clone::Clone for IRDPSRAPIViewer {
1615 fn clone(&self) -> Self {
1616 Self(self.0.clone())
1617 }
1618}
1619#[cfg(feature = "Win32_System_Com")]
1620unsafe impl ::windows::core::ComInterface for IRDPSRAPIViewer {
1621 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc6bfcd38_8ce9_404d_8ae8_f31d00c65cb5);
1622}
1623#[cfg(feature = "Win32_System_Com")]
1624#[repr(C)]
1625#[doc(hidden)]
1626pub struct IRDPSRAPIViewer_Vtbl {
1627 pub base__: super::Com::IDispatch_Vtbl,
1628 pub Connect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrconnectionstring: ::std::mem::MaybeUninit<::windows::core::BSTR>, bstrname: ::std::mem::MaybeUninit<::windows::core::BSTR>, bstrpassword: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1629 pub Disconnect: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1630 #[cfg(feature = "Win32_System_Com")]
1631 pub Attendees: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1632 #[cfg(not(feature = "Win32_System_Com"))]
1633 Attendees: usize,
1634 #[cfg(feature = "Win32_System_Com")]
1635 pub Invitations: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1636 #[cfg(not(feature = "Win32_System_Com"))]
1637 Invitations: usize,
1638 #[cfg(feature = "Win32_System_Com")]
1639 pub ApplicationFilter: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1640 #[cfg(not(feature = "Win32_System_Com"))]
1641 ApplicationFilter: usize,
1642 #[cfg(feature = "Win32_System_Com")]
1643 pub VirtualChannelManager: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1644 #[cfg(not(feature = "Win32_System_Com"))]
1645 VirtualChannelManager: usize,
1646 #[cfg(feature = "Win32_Foundation")]
1647 pub SetSmartSizing: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, vbsmartsizing: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
1648 #[cfg(not(feature = "Win32_Foundation"))]
1649 SetSmartSizing: usize,
1650 #[cfg(feature = "Win32_Foundation")]
1651 pub SmartSizing: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pvbsmartsizing: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
1652 #[cfg(not(feature = "Win32_Foundation"))]
1653 SmartSizing: usize,
1654 pub RequestControl: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ctrllevel: CTRL_LEVEL) -> ::windows::core::HRESULT,
1655 pub SetDisconnectedText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrdisconnectedtext: ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1656 pub DisconnectedText: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrdisconnectedtext: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1657 pub RequestColorDepthChange: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bpp: i32) -> ::windows::core::HRESULT,
1658 #[cfg(feature = "Win32_System_Com")]
1659 pub Properties: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1660 #[cfg(not(feature = "Win32_System_Com"))]
1661 Properties: usize,
1662 pub StartReverseConnectListener: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrconnectionstring: ::std::mem::MaybeUninit<::windows::core::BSTR>, bstrusername: ::std::mem::MaybeUninit<::windows::core::BSTR>, bstrpassword: ::std::mem::MaybeUninit<::windows::core::BSTR>, pbstrreverseconnectstring: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1663}
1664#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
1665#[cfg(feature = "Win32_System_Com")]
1666#[repr(transparent)]
1667pub struct IRDPSRAPIVirtualChannel(::windows::core::IUnknown);
1668#[cfg(feature = "Win32_System_Com")]
1669impl IRDPSRAPIVirtualChannel {
1670 pub unsafe fn SendData<P0>(&self, bstrdata: P0, lattendeeid: i32, channelsendflags: u32) -> ::windows::core::Result<()>
1671 where
1672 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
1673 {
1674 (::windows::core::Interface::vtable(self).SendData)(::windows::core::Interface::as_raw(self), bstrdata.into_param().abi(), lattendeeid, channelsendflags).ok()
1675 }
1676 pub unsafe fn SetAccess(&self, lattendeeid: i32, accesstype: CHANNEL_ACCESS_ENUM) -> ::windows::core::Result<()> {
1677 (::windows::core::Interface::vtable(self).SetAccess)(::windows::core::Interface::as_raw(self), lattendeeid, accesstype).ok()
1678 }
1679 pub unsafe fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR> {
1680 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
1681 (::windows::core::Interface::vtable(self).Name)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1682 }
1683 pub unsafe fn Flags(&self) -> ::windows::core::Result<i32> {
1684 let mut result__ = ::windows::core::zeroed::<i32>();
1685 (::windows::core::Interface::vtable(self).Flags)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1686 }
1687 pub unsafe fn Priority(&self) -> ::windows::core::Result<CHANNEL_PRIORITY> {
1688 let mut result__ = ::windows::core::zeroed::<CHANNEL_PRIORITY>();
1689 (::windows::core::Interface::vtable(self).Priority)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1690 }
1691}
1692#[cfg(feature = "Win32_System_Com")]
1693::windows::imp::interface_hierarchy!(IRDPSRAPIVirtualChannel, ::windows::core::IUnknown, super::Com::IDispatch);
1694#[cfg(feature = "Win32_System_Com")]
1695impl ::core::cmp::PartialEq for IRDPSRAPIVirtualChannel {
1696 fn eq(&self, other: &Self) -> bool {
1697 self.0 == other.0
1698 }
1699}
1700#[cfg(feature = "Win32_System_Com")]
1701impl ::core::cmp::Eq for IRDPSRAPIVirtualChannel {}
1702#[cfg(feature = "Win32_System_Com")]
1703impl ::core::fmt::Debug for IRDPSRAPIVirtualChannel {
1704 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1705 f.debug_tuple("IRDPSRAPIVirtualChannel").field(&self.0).finish()
1706 }
1707}
1708#[cfg(feature = "Win32_System_Com")]
1709unsafe impl ::windows::core::Interface for IRDPSRAPIVirtualChannel {
1710 type Vtable = IRDPSRAPIVirtualChannel_Vtbl;
1711}
1712#[cfg(feature = "Win32_System_Com")]
1713impl ::core::clone::Clone for IRDPSRAPIVirtualChannel {
1714 fn clone(&self) -> Self {
1715 Self(self.0.clone())
1716 }
1717}
1718#[cfg(feature = "Win32_System_Com")]
1719unsafe impl ::windows::core::ComInterface for IRDPSRAPIVirtualChannel {
1720 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x05e12f95_28b3_4c9a_8780_d0248574a1e0);
1721}
1722#[cfg(feature = "Win32_System_Com")]
1723#[repr(C)]
1724#[doc(hidden)]
1725pub struct IRDPSRAPIVirtualChannel_Vtbl {
1726 pub base__: super::Com::IDispatch_Vtbl,
1727 pub SendData: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrdata: ::std::mem::MaybeUninit<::windows::core::BSTR>, lattendeeid: i32, channelsendflags: u32) -> ::windows::core::HRESULT,
1728 pub SetAccess: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, lattendeeid: i32, accesstype: CHANNEL_ACCESS_ENUM) -> ::windows::core::HRESULT,
1729 pub Name: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pbstrname: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1730 pub Flags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, plflags: *mut i32) -> ::windows::core::HRESULT,
1731 pub Priority: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, ppriority: *mut CHANNEL_PRIORITY) -> ::windows::core::HRESULT,
1732}
1733#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
1734#[cfg(feature = "Win32_System_Com")]
1735#[repr(transparent)]
1736pub struct IRDPSRAPIVirtualChannelManager(::windows::core::IUnknown);
1737#[cfg(feature = "Win32_System_Com")]
1738impl IRDPSRAPIVirtualChannelManager {
1739 pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
1740 let mut result__ = ::windows::core::zeroed::<::windows::core::IUnknown>();
1741 (::windows::core::Interface::vtable(self)._NewEnum)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1742 }
1743 #[doc = "*Required features: `\"Win32_Foundation\"`, `\"Win32_System_Com\"`, `\"Win32_System_Ole\"`*"]
1744 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
1745 pub unsafe fn get_Item(&self, item: super::Com::VARIANT) -> ::windows::core::Result<IRDPSRAPIVirtualChannel> {
1746 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIVirtualChannel>();
1747 (::windows::core::Interface::vtable(self).get_Item)(::windows::core::Interface::as_raw(self), ::core::mem::transmute(item), &mut result__).from_abi(result__)
1748 }
1749 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1750 #[cfg(feature = "Win32_System_Com")]
1751 pub unsafe fn CreateVirtualChannel<P0>(&self, bstrchannelname: P0, priority: CHANNEL_PRIORITY, channelflags: u32) -> ::windows::core::Result<IRDPSRAPIVirtualChannel>
1752 where
1753 P0: ::windows::core::IntoParam<::windows::core::BSTR>,
1754 {
1755 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIVirtualChannel>();
1756 (::windows::core::Interface::vtable(self).CreateVirtualChannel)(::windows::core::Interface::as_raw(self), bstrchannelname.into_param().abi(), priority, channelflags, &mut result__).from_abi(result__)
1757 }
1758}
1759#[cfg(feature = "Win32_System_Com")]
1760::windows::imp::interface_hierarchy!(IRDPSRAPIVirtualChannelManager, ::windows::core::IUnknown, super::Com::IDispatch);
1761#[cfg(feature = "Win32_System_Com")]
1762impl ::core::cmp::PartialEq for IRDPSRAPIVirtualChannelManager {
1763 fn eq(&self, other: &Self) -> bool {
1764 self.0 == other.0
1765 }
1766}
1767#[cfg(feature = "Win32_System_Com")]
1768impl ::core::cmp::Eq for IRDPSRAPIVirtualChannelManager {}
1769#[cfg(feature = "Win32_System_Com")]
1770impl ::core::fmt::Debug for IRDPSRAPIVirtualChannelManager {
1771 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1772 f.debug_tuple("IRDPSRAPIVirtualChannelManager").field(&self.0).finish()
1773 }
1774}
1775#[cfg(feature = "Win32_System_Com")]
1776unsafe impl ::windows::core::Interface for IRDPSRAPIVirtualChannelManager {
1777 type Vtable = IRDPSRAPIVirtualChannelManager_Vtbl;
1778}
1779#[cfg(feature = "Win32_System_Com")]
1780impl ::core::clone::Clone for IRDPSRAPIVirtualChannelManager {
1781 fn clone(&self) -> Self {
1782 Self(self.0.clone())
1783 }
1784}
1785#[cfg(feature = "Win32_System_Com")]
1786unsafe impl ::windows::core::ComInterface for IRDPSRAPIVirtualChannelManager {
1787 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x0d11c661_5d0d_4ee4_89df_2166ae1fdfed);
1788}
1789#[cfg(feature = "Win32_System_Com")]
1790#[repr(C)]
1791#[doc(hidden)]
1792pub struct IRDPSRAPIVirtualChannelManager_Vtbl {
1793 pub base__: super::Com::IDispatch_Vtbl,
1794 pub _NewEnum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, retval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1795 #[cfg(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole"))]
1796 pub get_Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, item: super::Com::VARIANT, pchannel: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1797 #[cfg(not(all(feature = "Win32_Foundation", feature = "Win32_System_Com", feature = "Win32_System_Ole")))]
1798 get_Item: usize,
1799 #[cfg(feature = "Win32_System_Com")]
1800 pub CreateVirtualChannel: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, bstrchannelname: ::std::mem::MaybeUninit<::windows::core::BSTR>, priority: CHANNEL_PRIORITY, channelflags: u32, ppchannel: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1801 #[cfg(not(feature = "Win32_System_Com"))]
1802 CreateVirtualChannel: usize,
1803}
1804#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
1805#[cfg(feature = "Win32_System_Com")]
1806#[repr(transparent)]
1807pub struct IRDPSRAPIWindow(::windows::core::IUnknown);
1808#[cfg(feature = "Win32_System_Com")]
1809impl IRDPSRAPIWindow {
1810 pub unsafe fn Id(&self) -> ::windows::core::Result<i32> {
1811 let mut result__ = ::windows::core::zeroed::<i32>();
1812 (::windows::core::Interface::vtable(self).Id)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1813 }
1814 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1815 #[cfg(feature = "Win32_System_Com")]
1816 pub unsafe fn Application(&self) -> ::windows::core::Result<IRDPSRAPIApplication> {
1817 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIApplication>();
1818 (::windows::core::Interface::vtable(self).Application)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1819 }
1820 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
1821 #[cfg(feature = "Win32_Foundation")]
1822 pub unsafe fn Shared(&self) -> ::windows::core::Result<super::super::Foundation::VARIANT_BOOL> {
1823 let mut result__ = ::windows::core::zeroed::<super::super::Foundation::VARIANT_BOOL>();
1824 (::windows::core::Interface::vtable(self).Shared)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1825 }
1826 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
1827 #[cfg(feature = "Win32_Foundation")]
1828 pub unsafe fn SetShared<P0>(&self, newval: P0) -> ::windows::core::Result<()>
1829 where
1830 P0: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
1831 {
1832 (::windows::core::Interface::vtable(self).SetShared)(::windows::core::Interface::as_raw(self), newval.into_param().abi()).ok()
1833 }
1834 pub unsafe fn Name(&self) -> ::windows::core::Result<::windows::core::BSTR> {
1835 let mut result__ = ::windows::core::zeroed::<::windows::core::BSTR>();
1836 (::windows::core::Interface::vtable(self).Name)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1837 }
1838 pub unsafe fn Show(&self) -> ::windows::core::Result<()> {
1839 (::windows::core::Interface::vtable(self).Show)(::windows::core::Interface::as_raw(self)).ok()
1840 }
1841 pub unsafe fn Flags(&self) -> ::windows::core::Result<u32> {
1842 let mut result__ = ::windows::core::zeroed::<u32>();
1843 (::windows::core::Interface::vtable(self).Flags)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1844 }
1845}
1846#[cfg(feature = "Win32_System_Com")]
1847::windows::imp::interface_hierarchy!(IRDPSRAPIWindow, ::windows::core::IUnknown, super::Com::IDispatch);
1848#[cfg(feature = "Win32_System_Com")]
1849impl ::core::cmp::PartialEq for IRDPSRAPIWindow {
1850 fn eq(&self, other: &Self) -> bool {
1851 self.0 == other.0
1852 }
1853}
1854#[cfg(feature = "Win32_System_Com")]
1855impl ::core::cmp::Eq for IRDPSRAPIWindow {}
1856#[cfg(feature = "Win32_System_Com")]
1857impl ::core::fmt::Debug for IRDPSRAPIWindow {
1858 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1859 f.debug_tuple("IRDPSRAPIWindow").field(&self.0).finish()
1860 }
1861}
1862#[cfg(feature = "Win32_System_Com")]
1863unsafe impl ::windows::core::Interface for IRDPSRAPIWindow {
1864 type Vtable = IRDPSRAPIWindow_Vtbl;
1865}
1866#[cfg(feature = "Win32_System_Com")]
1867impl ::core::clone::Clone for IRDPSRAPIWindow {
1868 fn clone(&self) -> Self {
1869 Self(self.0.clone())
1870 }
1871}
1872#[cfg(feature = "Win32_System_Com")]
1873unsafe impl ::windows::core::ComInterface for IRDPSRAPIWindow {
1874 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbeafe0f9_c77b_4933_ba9f_a24cddcc27cf);
1875}
1876#[cfg(feature = "Win32_System_Com")]
1877#[repr(C)]
1878#[doc(hidden)]
1879pub struct IRDPSRAPIWindow_Vtbl {
1880 pub base__: super::Com::IDispatch_Vtbl,
1881 pub Id: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut i32) -> ::windows::core::HRESULT,
1882 #[cfg(feature = "Win32_System_Com")]
1883 pub Application: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, papplication: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1884 #[cfg(not(feature = "Win32_System_Com"))]
1885 Application: usize,
1886 #[cfg(feature = "Win32_Foundation")]
1887 pub Shared: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
1888 #[cfg(not(feature = "Win32_Foundation"))]
1889 Shared: usize,
1890 #[cfg(feature = "Win32_Foundation")]
1891 pub SetShared: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, newval: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
1892 #[cfg(not(feature = "Win32_Foundation"))]
1893 SetShared: usize,
1894 pub Name: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pretval: *mut ::std::mem::MaybeUninit<::windows::core::BSTR>) -> ::windows::core::HRESULT,
1895 pub Show: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1896 pub Flags: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, pdwflags: *mut u32) -> ::windows::core::HRESULT,
1897}
1898#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
1899#[cfg(feature = "Win32_System_Com")]
1900#[repr(transparent)]
1901pub struct IRDPSRAPIWindowList(::windows::core::IUnknown);
1902#[cfg(feature = "Win32_System_Com")]
1903impl IRDPSRAPIWindowList {
1904 pub unsafe fn _NewEnum(&self) -> ::windows::core::Result<::windows::core::IUnknown> {
1905 let mut result__ = ::windows::core::zeroed::<::windows::core::IUnknown>();
1906 (::windows::core::Interface::vtable(self)._NewEnum)(::windows::core::Interface::as_raw(self), &mut result__).from_abi(result__)
1907 }
1908 #[doc = "*Required features: `\"Win32_System_Com\"`*"]
1909 #[cfg(feature = "Win32_System_Com")]
1910 pub unsafe fn get_Item(&self, item: i32) -> ::windows::core::Result<IRDPSRAPIWindow> {
1911 let mut result__ = ::windows::core::zeroed::<IRDPSRAPIWindow>();
1912 (::windows::core::Interface::vtable(self).get_Item)(::windows::core::Interface::as_raw(self), item, &mut result__).from_abi(result__)
1913 }
1914}
1915#[cfg(feature = "Win32_System_Com")]
1916::windows::imp::interface_hierarchy!(IRDPSRAPIWindowList, ::windows::core::IUnknown, super::Com::IDispatch);
1917#[cfg(feature = "Win32_System_Com")]
1918impl ::core::cmp::PartialEq for IRDPSRAPIWindowList {
1919 fn eq(&self, other: &Self) -> bool {
1920 self.0 == other.0
1921 }
1922}
1923#[cfg(feature = "Win32_System_Com")]
1924impl ::core::cmp::Eq for IRDPSRAPIWindowList {}
1925#[cfg(feature = "Win32_System_Com")]
1926impl ::core::fmt::Debug for IRDPSRAPIWindowList {
1927 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
1928 f.debug_tuple("IRDPSRAPIWindowList").field(&self.0).finish()
1929 }
1930}
1931#[cfg(feature = "Win32_System_Com")]
1932unsafe impl ::windows::core::Interface for IRDPSRAPIWindowList {
1933 type Vtable = IRDPSRAPIWindowList_Vtbl;
1934}
1935#[cfg(feature = "Win32_System_Com")]
1936impl ::core::clone::Clone for IRDPSRAPIWindowList {
1937 fn clone(&self) -> Self {
1938 Self(self.0.clone())
1939 }
1940}
1941#[cfg(feature = "Win32_System_Com")]
1942unsafe impl ::windows::core::ComInterface for IRDPSRAPIWindowList {
1943 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8a05ce44_715a_4116_a189_a118f30a07bd);
1944}
1945#[cfg(feature = "Win32_System_Com")]
1946#[repr(C)]
1947#[doc(hidden)]
1948pub struct IRDPSRAPIWindowList_Vtbl {
1949 pub base__: super::Com::IDispatch_Vtbl,
1950 pub _NewEnum: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, retval: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1951 #[cfg(feature = "Win32_System_Com")]
1952 pub get_Item: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, item: i32, pwindow: *mut *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
1953 #[cfg(not(feature = "Win32_System_Com"))]
1954 get_Item: usize,
1955}
1956#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
1957#[repr(transparent)]
1958pub struct IRDPViewerInputSink(::windows::core::IUnknown);
1959impl IRDPViewerInputSink {
1960 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
1961 #[cfg(feature = "Win32_Foundation")]
1962 pub unsafe fn SendMouseButtonEvent<P0>(&self, buttontype: RDPSRAPI_MOUSE_BUTTON_TYPE, vbbuttondown: P0, xpos: u32, ypos: u32) -> ::windows::core::Result<()>
1963 where
1964 P0: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
1965 {
1966 (::windows::core::Interface::vtable(self).SendMouseButtonEvent)(::windows::core::Interface::as_raw(self), buttontype, vbbuttondown.into_param().abi(), xpos, ypos).ok()
1967 }
1968 pub unsafe fn SendMouseMoveEvent(&self, xpos: u32, ypos: u32) -> ::windows::core::Result<()> {
1969 (::windows::core::Interface::vtable(self).SendMouseMoveEvent)(::windows::core::Interface::as_raw(self), xpos, ypos).ok()
1970 }
1971 pub unsafe fn SendMouseWheelEvent(&self, wheelrotation: u16) -> ::windows::core::Result<()> {
1972 (::windows::core::Interface::vtable(self).SendMouseWheelEvent)(::windows::core::Interface::as_raw(self), wheelrotation).ok()
1973 }
1974 #[doc = "*Required features: `\"Win32_Foundation\"`*"]
1975 #[cfg(feature = "Win32_Foundation")]
1976 pub unsafe fn SendKeyboardEvent<P0, P1, P2>(&self, codetype: RDPSRAPI_KBD_CODE_TYPE, keycode: u16, vbkeyup: P0, vbrepeat: P1, vbextended: P2) -> ::windows::core::Result<()>
1977 where
1978 P0: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
1979 P1: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
1980 P2: ::windows::core::IntoParam<super::super::Foundation::VARIANT_BOOL>,
1981 {
1982 (::windows::core::Interface::vtable(self).SendKeyboardEvent)(::windows::core::Interface::as_raw(self), codetype, keycode, vbkeyup.into_param().abi(), vbrepeat.into_param().abi(), vbextended.into_param().abi()).ok()
1983 }
1984 pub unsafe fn SendSyncEvent(&self, syncflags: u32) -> ::windows::core::Result<()> {
1985 (::windows::core::Interface::vtable(self).SendSyncEvent)(::windows::core::Interface::as_raw(self), syncflags).ok()
1986 }
1987 pub unsafe fn BeginTouchFrame(&self) -> ::windows::core::Result<()> {
1988 (::windows::core::Interface::vtable(self).BeginTouchFrame)(::windows::core::Interface::as_raw(self)).ok()
1989 }
1990 pub unsafe fn AddTouchInput(&self, contactid: u32, event: u32, x: i32, y: i32) -> ::windows::core::Result<()> {
1991 (::windows::core::Interface::vtable(self).AddTouchInput)(::windows::core::Interface::as_raw(self), contactid, event, x, y).ok()
1992 }
1993 pub unsafe fn EndTouchFrame(&self) -> ::windows::core::Result<()> {
1994 (::windows::core::Interface::vtable(self).EndTouchFrame)(::windows::core::Interface::as_raw(self)).ok()
1995 }
1996}
1997::windows::imp::interface_hierarchy!(IRDPViewerInputSink, ::windows::core::IUnknown);
1998impl ::core::cmp::PartialEq for IRDPViewerInputSink {
1999 fn eq(&self, other: &Self) -> bool {
2000 self.0 == other.0
2001 }
2002}
2003impl ::core::cmp::Eq for IRDPViewerInputSink {}
2004impl ::core::fmt::Debug for IRDPViewerInputSink {
2005 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2006 f.debug_tuple("IRDPViewerInputSink").field(&self.0).finish()
2007 }
2008}
2009unsafe impl ::windows::core::Interface for IRDPViewerInputSink {
2010 type Vtable = IRDPViewerInputSink_Vtbl;
2011}
2012impl ::core::clone::Clone for IRDPViewerInputSink {
2013 fn clone(&self) -> Self {
2014 Self(self.0.clone())
2015 }
2016}
2017unsafe impl ::windows::core::ComInterface for IRDPViewerInputSink {
2018 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbb590853_a6c5_4a7b_8dd4_76b69eea12d5);
2019}
2020#[repr(C)]
2021#[doc(hidden)]
2022pub struct IRDPViewerInputSink_Vtbl {
2023 pub base__: ::windows::core::IUnknown_Vtbl,
2024 #[cfg(feature = "Win32_Foundation")]
2025 pub SendMouseButtonEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, buttontype: RDPSRAPI_MOUSE_BUTTON_TYPE, vbbuttondown: super::super::Foundation::VARIANT_BOOL, xpos: u32, ypos: u32) -> ::windows::core::HRESULT,
2026 #[cfg(not(feature = "Win32_Foundation"))]
2027 SendMouseButtonEvent: usize,
2028 pub SendMouseMoveEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, xpos: u32, ypos: u32) -> ::windows::core::HRESULT,
2029 pub SendMouseWheelEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, wheelrotation: u16) -> ::windows::core::HRESULT,
2030 #[cfg(feature = "Win32_Foundation")]
2031 pub SendKeyboardEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, codetype: RDPSRAPI_KBD_CODE_TYPE, keycode: u16, vbkeyup: super::super::Foundation::VARIANT_BOOL, vbrepeat: super::super::Foundation::VARIANT_BOOL, vbextended: super::super::Foundation::VARIANT_BOOL) -> ::windows::core::HRESULT,
2032 #[cfg(not(feature = "Win32_Foundation"))]
2033 SendKeyboardEvent: usize,
2034 pub SendSyncEvent: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, syncflags: u32) -> ::windows::core::HRESULT,
2035 pub BeginTouchFrame: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2036 pub AddTouchInput: unsafe extern "system" fn(this: *mut ::core::ffi::c_void, contactid: u32, event: u32, x: i32, y: i32) -> ::windows::core::HRESULT,
2037 pub EndTouchFrame: unsafe extern "system" fn(this: *mut ::core::ffi::c_void) -> ::windows::core::HRESULT,
2038}
2039#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`, `\"Win32_System_Com\"`*"]
2040#[cfg(feature = "Win32_System_Com")]
2041#[repr(transparent)]
2042pub struct _IRDPSessionEvents(::windows::core::IUnknown);
2043#[cfg(feature = "Win32_System_Com")]
2044impl _IRDPSessionEvents {}
2045#[cfg(feature = "Win32_System_Com")]
2046::windows::imp::interface_hierarchy!(_IRDPSessionEvents, ::windows::core::IUnknown, super::Com::IDispatch);
2047#[cfg(feature = "Win32_System_Com")]
2048impl ::core::cmp::PartialEq for _IRDPSessionEvents {
2049 fn eq(&self, other: &Self) -> bool {
2050 self.0 == other.0
2051 }
2052}
2053#[cfg(feature = "Win32_System_Com")]
2054impl ::core::cmp::Eq for _IRDPSessionEvents {}
2055#[cfg(feature = "Win32_System_Com")]
2056impl ::core::fmt::Debug for _IRDPSessionEvents {
2057 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2058 f.debug_tuple("_IRDPSessionEvents").field(&self.0).finish()
2059 }
2060}
2061#[cfg(feature = "Win32_System_Com")]
2062unsafe impl ::windows::core::Interface for _IRDPSessionEvents {
2063 type Vtable = _IRDPSessionEvents_Vtbl;
2064}
2065#[cfg(feature = "Win32_System_Com")]
2066impl ::core::clone::Clone for _IRDPSessionEvents {
2067 fn clone(&self) -> Self {
2068 Self(self.0.clone())
2069 }
2070}
2071#[cfg(feature = "Win32_System_Com")]
2072unsafe impl ::windows::core::ComInterface for _IRDPSessionEvents {
2073 const IID: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x98a97042_6698_40e9_8efd_b3200990004b);
2074}
2075#[cfg(feature = "Win32_System_Com")]
2076#[repr(C)]
2077#[doc(hidden)]
2078pub struct _IRDPSessionEvents_Vtbl {
2079 pub base__: super::Com::IDispatch_Vtbl,
2080}
2081#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2082pub const DISPID_RDPAPI_EVENT_ON_BOUNDING_RECT_CHANGED: u32 = 340u32;
2083#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2084pub const DISPID_RDPSRAPI_EVENT_ON_APPFILTER_UPDATE: u32 = 322u32;
2085#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2086pub const DISPID_RDPSRAPI_EVENT_ON_APPLICATION_CLOSE: u32 = 317u32;
2087#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2088pub const DISPID_RDPSRAPI_EVENT_ON_APPLICATION_OPEN: u32 = 316u32;
2089#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2090pub const DISPID_RDPSRAPI_EVENT_ON_APPLICATION_UPDATE: u32 = 318u32;
2091#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2092pub const DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_CONNECTED: u32 = 301u32;
2093#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2094pub const DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_DISCONNECTED: u32 = 302u32;
2095#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2096pub const DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_UPDATE: u32 = 303u32;
2097#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2098pub const DISPID_RDPSRAPI_EVENT_ON_CTRLLEVEL_CHANGE_REQUEST: u32 = 309u32;
2099#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2100pub const DISPID_RDPSRAPI_EVENT_ON_CTRLLEVEL_CHANGE_RESPONSE: u32 = 338u32;
2101#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2102pub const DISPID_RDPSRAPI_EVENT_ON_ERROR: u32 = 304u32;
2103#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2104pub const DISPID_RDPSRAPI_EVENT_ON_FOCUSRELEASED: u32 = 324u32;
2105#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2106pub const DISPID_RDPSRAPI_EVENT_ON_GRAPHICS_STREAM_PAUSED: u32 = 310u32;
2107#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2108pub const DISPID_RDPSRAPI_EVENT_ON_GRAPHICS_STREAM_RESUMED: u32 = 311u32;
2109#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2110pub const DISPID_RDPSRAPI_EVENT_ON_SHARED_DESKTOP_SETTINGS_CHANGED: u32 = 325u32;
2111#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2112pub const DISPID_RDPSRAPI_EVENT_ON_SHARED_RECT_CHANGED: u32 = 323u32;
2113#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2114pub const DISPID_RDPSRAPI_EVENT_ON_STREAM_CLOSED: u32 = 634u32;
2115#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2116pub const DISPID_RDPSRAPI_EVENT_ON_STREAM_DATARECEIVED: u32 = 633u32;
2117#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2118pub const DISPID_RDPSRAPI_EVENT_ON_STREAM_SENDCOMPLETED: u32 = 632u32;
2119#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2120pub const DISPID_RDPSRAPI_EVENT_ON_VIEWER_AUTHENTICATED: u32 = 307u32;
2121#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2122pub const DISPID_RDPSRAPI_EVENT_ON_VIEWER_CONNECTED: u32 = 305u32;
2123#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2124pub const DISPID_RDPSRAPI_EVENT_ON_VIEWER_CONNECTFAILED: u32 = 308u32;
2125#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2126pub const DISPID_RDPSRAPI_EVENT_ON_VIEWER_DISCONNECTED: u32 = 306u32;
2127#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2128pub const DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_DATARECEIVED: u32 = 314u32;
2129#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2130pub const DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_JOIN: u32 = 312u32;
2131#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2132pub const DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_LEAVE: u32 = 313u32;
2133#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2134pub const DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_SENDCOMPLETED: u32 = 315u32;
2135#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2136pub const DISPID_RDPSRAPI_EVENT_ON_WINDOW_CLOSE: u32 = 320u32;
2137#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2138pub const DISPID_RDPSRAPI_EVENT_ON_WINDOW_OPEN: u32 = 319u32;
2139#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2140pub const DISPID_RDPSRAPI_EVENT_ON_WINDOW_UPDATE: u32 = 321u32;
2141#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2142pub const DISPID_RDPSRAPI_EVENT_VIEW_MOUSE_BUTTON_RECEIVED: u32 = 700u32;
2143#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2144pub const DISPID_RDPSRAPI_EVENT_VIEW_MOUSE_MOVE_RECEIVED: u32 = 701u32;
2145#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2146pub const DISPID_RDPSRAPI_EVENT_VIEW_MOUSE_WHEEL_RECEIVED: u32 = 702u32;
2147#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2148pub const DISPID_RDPSRAPI_METHOD_ADD_TOUCH_INPUT: u32 = 125u32;
2149#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2150pub const DISPID_RDPSRAPI_METHOD_BEGIN_TOUCH_FRAME: u32 = 124u32;
2151#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2152pub const DISPID_RDPSRAPI_METHOD_CLOSE: u32 = 101u32;
2153#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2154pub const DISPID_RDPSRAPI_METHOD_CONNECTTOCLIENT: u32 = 117u32;
2155#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2156pub const DISPID_RDPSRAPI_METHOD_CONNECTUSINGTRANSPORTSTREAM: u32 = 127u32;
2157#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2158pub const DISPID_RDPSRAPI_METHOD_CREATE_INVITATION: u32 = 107u32;
2159#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2160pub const DISPID_RDPSRAPI_METHOD_END_TOUCH_FRAME: u32 = 126u32;
2161#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2162pub const DISPID_RDPSRAPI_METHOD_GETFRAMEBUFFERBITS: u32 = 149u32;
2163#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2164pub const DISPID_RDPSRAPI_METHOD_GETSHAREDRECT: u32 = 103u32;
2165#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2166pub const DISPID_RDPSRAPI_METHOD_OPEN: u32 = 100u32;
2167#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2168pub const DISPID_RDPSRAPI_METHOD_PAUSE: u32 = 112u32;
2169#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2170pub const DISPID_RDPSRAPI_METHOD_REQUEST_COLOR_DEPTH_CHANGE: u32 = 115u32;
2171#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2172pub const DISPID_RDPSRAPI_METHOD_REQUEST_CONTROL: u32 = 108u32;
2173#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2174pub const DISPID_RDPSRAPI_METHOD_RESUME: u32 = 113u32;
2175#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2176pub const DISPID_RDPSRAPI_METHOD_SENDCONTROLLEVELCHANGERESPONSE: u32 = 148u32;
2177#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2178pub const DISPID_RDPSRAPI_METHOD_SEND_KEYBOARD_EVENT: u32 = 122u32;
2179#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2180pub const DISPID_RDPSRAPI_METHOD_SEND_MOUSE_BUTTON_EVENT: u32 = 119u32;
2181#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2182pub const DISPID_RDPSRAPI_METHOD_SEND_MOUSE_MOVE_EVENT: u32 = 120u32;
2183#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2184pub const DISPID_RDPSRAPI_METHOD_SEND_MOUSE_WHEEL_EVENT: u32 = 121u32;
2185#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2186pub const DISPID_RDPSRAPI_METHOD_SEND_SYNC_EVENT: u32 = 123u32;
2187#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2188pub const DISPID_RDPSRAPI_METHOD_SETSHAREDRECT: u32 = 102u32;
2189#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2190pub const DISPID_RDPSRAPI_METHOD_SET_RENDERING_SURFACE: u32 = 118u32;
2191#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2192pub const DISPID_RDPSRAPI_METHOD_SHOW_WINDOW: u32 = 114u32;
2193#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2194pub const DISPID_RDPSRAPI_METHOD_STARTREVCONNECTLISTENER: u32 = 116u32;
2195#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2196pub const DISPID_RDPSRAPI_METHOD_STREAMCLOSE: u32 = 426u32;
2197#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2198pub const DISPID_RDPSRAPI_METHOD_STREAMOPEN: u32 = 425u32;
2199#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2200pub const DISPID_RDPSRAPI_METHOD_STREAMREADDATA: u32 = 424u32;
2201#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2202pub const DISPID_RDPSRAPI_METHOD_STREAMSENDDATA: u32 = 423u32;
2203#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2204pub const DISPID_RDPSRAPI_METHOD_STREAM_ALLOCBUFFER: u32 = 421u32;
2205#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2206pub const DISPID_RDPSRAPI_METHOD_STREAM_FREEBUFFER: u32 = 422u32;
2207#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2208pub const DISPID_RDPSRAPI_METHOD_TERMINATE_CONNECTION: u32 = 106u32;
2209#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2210pub const DISPID_RDPSRAPI_METHOD_VIEWERCONNECT: u32 = 104u32;
2211#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2212pub const DISPID_RDPSRAPI_METHOD_VIEWERDISCONNECT: u32 = 105u32;
2213#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2214pub const DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_CREATE: u32 = 109u32;
2215#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2216pub const DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_SEND_DATA: u32 = 110u32;
2217#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2218pub const DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_SET_ACCESS: u32 = 111u32;
2219#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2220pub const DISPID_RDPSRAPI_PROP_APPFILTERENABLED: u32 = 219u32;
2221#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2222pub const DISPID_RDPSRAPI_PROP_APPFILTER_ENABLED: u32 = 218u32;
2223#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2224pub const DISPID_RDPSRAPI_PROP_APPFLAGS: u32 = 223u32;
2225#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2226pub const DISPID_RDPSRAPI_PROP_APPLICATION: u32 = 211u32;
2227#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2228pub const DISPID_RDPSRAPI_PROP_APPLICATION_FILTER: u32 = 215u32;
2229#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2230pub const DISPID_RDPSRAPI_PROP_APPLICATION_LIST: u32 = 217u32;
2231#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2232pub const DISPID_RDPSRAPI_PROP_APPNAME: u32 = 214u32;
2233#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2234pub const DISPID_RDPSRAPI_PROP_ATTENDEELIMIT: u32 = 235u32;
2235#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2236pub const DISPID_RDPSRAPI_PROP_ATTENDEES: u32 = 203u32;
2237#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2238pub const DISPID_RDPSRAPI_PROP_ATTENDEE_FLAGS: u32 = 230u32;
2239#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2240pub const DISPID_RDPSRAPI_PROP_CHANNELMANAGER: u32 = 206u32;
2241#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2242pub const DISPID_RDPSRAPI_PROP_CODE: u32 = 241u32;
2243#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2244pub const DISPID_RDPSRAPI_PROP_CONINFO: u32 = 231u32;
2245#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2246pub const DISPID_RDPSRAPI_PROP_CONNECTION_STRING: u32 = 232u32;
2247#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2248pub const DISPID_RDPSRAPI_PROP_COUNT: u32 = 244u32;
2249#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2250pub const DISPID_RDPSRAPI_PROP_CTRL_LEVEL: u32 = 242u32;
2251#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2252pub const DISPID_RDPSRAPI_PROP_DBG_CLX_CMDLINE: u32 = 222u32;
2253#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2254pub const DISPID_RDPSRAPI_PROP_DISCONNECTED_STRING: u32 = 237u32;
2255#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2256pub const DISPID_RDPSRAPI_PROP_DISPIDVALUE: u32 = 200u32;
2257#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2258pub const DISPID_RDPSRAPI_PROP_FRAMEBUFFER: u32 = 254u32;
2259#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2260pub const DISPID_RDPSRAPI_PROP_FRAMEBUFFER_BPP: u32 = 253u32;
2261#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2262pub const DISPID_RDPSRAPI_PROP_FRAMEBUFFER_HEIGHT: u32 = 251u32;
2263#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2264pub const DISPID_RDPSRAPI_PROP_FRAMEBUFFER_WIDTH: u32 = 252u32;
2265#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2266pub const DISPID_RDPSRAPI_PROP_GROUP_NAME: u32 = 233u32;
2267#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2268pub const DISPID_RDPSRAPI_PROP_ID: u32 = 201u32;
2269#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2270pub const DISPID_RDPSRAPI_PROP_INVITATION: u32 = 205u32;
2271#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2272pub const DISPID_RDPSRAPI_PROP_INVITATIONITEM: u32 = 221u32;
2273#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2274pub const DISPID_RDPSRAPI_PROP_INVITATIONS: u32 = 204u32;
2275#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2276pub const DISPID_RDPSRAPI_PROP_LOCAL_IP: u32 = 227u32;
2277#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2278pub const DISPID_RDPSRAPI_PROP_LOCAL_PORT: u32 = 226u32;
2279#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2280pub const DISPID_RDPSRAPI_PROP_PASSWORD: u32 = 234u32;
2281#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2282pub const DISPID_RDPSRAPI_PROP_PEER_IP: u32 = 229u32;
2283#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2284pub const DISPID_RDPSRAPI_PROP_PEER_PORT: u32 = 228u32;
2285#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2286pub const DISPID_RDPSRAPI_PROP_PROTOCOL_TYPE: u32 = 225u32;
2287#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2288pub const DISPID_RDPSRAPI_PROP_REASON: u32 = 240u32;
2289#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2290pub const DISPID_RDPSRAPI_PROP_REMOTENAME: u32 = 243u32;
2291#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2292pub const DISPID_RDPSRAPI_PROP_REVOKED: u32 = 236u32;
2293#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2294pub const DISPID_RDPSRAPI_PROP_SESSION_COLORDEPTH: u32 = 239u32;
2295#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2296pub const DISPID_RDPSRAPI_PROP_SESSION_PROPERTIES: u32 = 202u32;
2297#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2298pub const DISPID_RDPSRAPI_PROP_SHARED: u32 = 220u32;
2299#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2300pub const DISPID_RDPSRAPI_PROP_STREAMBUFFER_CONTEXT: u32 = 560u32;
2301#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2302pub const DISPID_RDPSRAPI_PROP_STREAMBUFFER_FLAGS: u32 = 561u32;
2303#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2304pub const DISPID_RDPSRAPI_PROP_STREAMBUFFER_PAYLOADOFFSET: u32 = 559u32;
2305#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2306pub const DISPID_RDPSRAPI_PROP_STREAMBUFFER_PAYLOADSIZE: u32 = 558u32;
2307#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2308pub const DISPID_RDPSRAPI_PROP_STREAMBUFFER_STORAGE: u32 = 555u32;
2309#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2310pub const DISPID_RDPSRAPI_PROP_STREAMBUFFER_STORESIZE: u32 = 562u32;
2311#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2312pub const DISPID_RDPSRAPI_PROP_USESMARTSIZING: u32 = 238u32;
2313#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2314pub const DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETFLAGS: u32 = 208u32;
2315#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2316pub const DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETNAME: u32 = 207u32;
2317#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2318pub const DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETPRIORITY: u32 = 209u32;
2319#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2320pub const DISPID_RDPSRAPI_PROP_WINDOWID: u32 = 210u32;
2321#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2322pub const DISPID_RDPSRAPI_PROP_WINDOWNAME: u32 = 213u32;
2323#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2324pub const DISPID_RDPSRAPI_PROP_WINDOWSHARED: u32 = 212u32;
2325#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2326pub const DISPID_RDPSRAPI_PROP_WINDOW_LIST: u32 = 216u32;
2327#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2328pub const DISPID_RDPSRAPI_PROP_WNDFLAGS: u32 = 224u32;
2329#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2330pub const RDPSRAPIApplication: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xc116a484_4b25_4b9f_8a54_b934b06e57fa);
2331#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2332pub const RDPSRAPIApplicationFilter: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xe35ace89_c7e8_427e_a4f9_b9da072826bd);
2333#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2334pub const RDPSRAPIApplicationList: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9e31c815_7433_4876_97fb_ed59fe2baa22);
2335#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2336pub const RDPSRAPIAttendee: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x74f93bb5_755f_488e_8a29_2390108aef55);
2337#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2338pub const RDPSRAPIAttendeeDisconnectInfo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xb47d7250_5bdb_405d_b487_caad9c56f4f8);
2339#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2340pub const RDPSRAPIAttendeeManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xd7b13a01_f7d4_42a6_8595_12fc8c24e851);
2341#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2342pub const RDPSRAPIFrameBuffer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xa4f66bcc_538e_4101_951d_30847adb5101);
2343#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2344pub const RDPSRAPIInvitation: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x49174dc6_0731_4b5e_8ee1_83a63d3868fa);
2345#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2346pub const RDPSRAPIInvitationManager: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x53d9c9db_75ab_4271_948a_4c4eb36a8f2b);
2347#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2348pub const RDPSRAPISessionProperties: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xdd7594ff_ea2a_4c06_8fdf_132de48b6510);
2349#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2350pub const RDPSRAPITcpConnectionInfo: ::windows::core::GUID = ::windows::core::GUID::from_u128(0xbe49db3f_ebb6_4278_8ce0_d5455833eaee);
2351#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2352pub const RDPSRAPIWindow: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x03cf46db_ce45_4d36_86ed_ed28b74398bf);
2353#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2354pub const RDPSRAPIWindowList: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9c21e2b8_5dd4_42cc_81ba_1c099852e6fa);
2355#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2356pub const RDPSession: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x9b78f0e6_3e05_4a5b_b2e8_e743a8956b65);
2357#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2358pub const RDPTransportStreamBuffer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x8d4a1c69_f17f_4549_a699_761c6e6b5c0a);
2359#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2360pub const RDPTransportStreamEvents: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x31e3ab20_5350_483f_9dc6_6748665efdeb);
2361#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2362pub const RDPViewer: ::windows::core::GUID = ::windows::core::GUID::from_u128(0x32be5ed2_5c86_480f_a914_0ff8885a1b3f);
2363#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2364#[repr(transparent)]
2365#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2366pub struct ATTENDEE_DISCONNECT_REASON(pub i32);
2367#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2368pub const ATTENDEE_DISCONNECT_REASON_MIN: ATTENDEE_DISCONNECT_REASON = ATTENDEE_DISCONNECT_REASON(0i32);
2369#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2370pub const ATTENDEE_DISCONNECT_REASON_APP: ATTENDEE_DISCONNECT_REASON = ATTENDEE_DISCONNECT_REASON(0i32);
2371#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2372pub const ATTENDEE_DISCONNECT_REASON_ERR: ATTENDEE_DISCONNECT_REASON = ATTENDEE_DISCONNECT_REASON(1i32);
2373#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2374pub const ATTENDEE_DISCONNECT_REASON_CLI: ATTENDEE_DISCONNECT_REASON = ATTENDEE_DISCONNECT_REASON(2i32);
2375#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2376pub const ATTENDEE_DISCONNECT_REASON_MAX: ATTENDEE_DISCONNECT_REASON = ATTENDEE_DISCONNECT_REASON(2i32);
2377impl ::core::marker::Copy for ATTENDEE_DISCONNECT_REASON {}
2378impl ::core::clone::Clone for ATTENDEE_DISCONNECT_REASON {
2379 fn clone(&self) -> Self {
2380 *self
2381 }
2382}
2383impl ::core::default::Default for ATTENDEE_DISCONNECT_REASON {
2384 fn default() -> Self {
2385 Self(0)
2386 }
2387}
2388impl ::windows::core::TypeKind for ATTENDEE_DISCONNECT_REASON {
2389 type TypeKind = ::windows::core::CopyType;
2390}
2391impl ::core::fmt::Debug for ATTENDEE_DISCONNECT_REASON {
2392 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2393 f.debug_tuple("ATTENDEE_DISCONNECT_REASON").field(&self.0).finish()
2394 }
2395}
2396#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2397#[repr(transparent)]
2398#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2399pub struct CHANNEL_ACCESS_ENUM(pub i32);
2400#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2401pub const CHANNEL_ACCESS_ENUM_NONE: CHANNEL_ACCESS_ENUM = CHANNEL_ACCESS_ENUM(0i32);
2402#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2403pub const CHANNEL_ACCESS_ENUM_SENDRECEIVE: CHANNEL_ACCESS_ENUM = CHANNEL_ACCESS_ENUM(1i32);
2404impl ::core::marker::Copy for CHANNEL_ACCESS_ENUM {}
2405impl ::core::clone::Clone for CHANNEL_ACCESS_ENUM {
2406 fn clone(&self) -> Self {
2407 *self
2408 }
2409}
2410impl ::core::default::Default for CHANNEL_ACCESS_ENUM {
2411 fn default() -> Self {
2412 Self(0)
2413 }
2414}
2415impl ::windows::core::TypeKind for CHANNEL_ACCESS_ENUM {
2416 type TypeKind = ::windows::core::CopyType;
2417}
2418impl ::core::fmt::Debug for CHANNEL_ACCESS_ENUM {
2419 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2420 f.debug_tuple("CHANNEL_ACCESS_ENUM").field(&self.0).finish()
2421 }
2422}
2423#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2424#[repr(transparent)]
2425#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2426pub struct CHANNEL_FLAGS(pub i32);
2427#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2428pub const CHANNEL_FLAGS_LEGACY: CHANNEL_FLAGS = CHANNEL_FLAGS(1i32);
2429#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2430pub const CHANNEL_FLAGS_UNCOMPRESSED: CHANNEL_FLAGS = CHANNEL_FLAGS(2i32);
2431#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2432pub const CHANNEL_FLAGS_DYNAMIC: CHANNEL_FLAGS = CHANNEL_FLAGS(4i32);
2433impl ::core::marker::Copy for CHANNEL_FLAGS {}
2434impl ::core::clone::Clone for CHANNEL_FLAGS {
2435 fn clone(&self) -> Self {
2436 *self
2437 }
2438}
2439impl ::core::default::Default for CHANNEL_FLAGS {
2440 fn default() -> Self {
2441 Self(0)
2442 }
2443}
2444impl ::windows::core::TypeKind for CHANNEL_FLAGS {
2445 type TypeKind = ::windows::core::CopyType;
2446}
2447impl ::core::fmt::Debug for CHANNEL_FLAGS {
2448 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2449 f.debug_tuple("CHANNEL_FLAGS").field(&self.0).finish()
2450 }
2451}
2452#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2453#[repr(transparent)]
2454#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2455pub struct CHANNEL_PRIORITY(pub i32);
2456#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2457pub const CHANNEL_PRIORITY_LO: CHANNEL_PRIORITY = CHANNEL_PRIORITY(0i32);
2458#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2459pub const CHANNEL_PRIORITY_MED: CHANNEL_PRIORITY = CHANNEL_PRIORITY(1i32);
2460#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2461pub const CHANNEL_PRIORITY_HI: CHANNEL_PRIORITY = CHANNEL_PRIORITY(2i32);
2462impl ::core::marker::Copy for CHANNEL_PRIORITY {}
2463impl ::core::clone::Clone for CHANNEL_PRIORITY {
2464 fn clone(&self) -> Self {
2465 *self
2466 }
2467}
2468impl ::core::default::Default for CHANNEL_PRIORITY {
2469 fn default() -> Self {
2470 Self(0)
2471 }
2472}
2473impl ::windows::core::TypeKind for CHANNEL_PRIORITY {
2474 type TypeKind = ::windows::core::CopyType;
2475}
2476impl ::core::fmt::Debug for CHANNEL_PRIORITY {
2477 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2478 f.debug_tuple("CHANNEL_PRIORITY").field(&self.0).finish()
2479 }
2480}
2481#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2482#[repr(transparent)]
2483#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2484pub struct CTRL_LEVEL(pub i32);
2485#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2486pub const CTRL_LEVEL_MIN: CTRL_LEVEL = CTRL_LEVEL(0i32);
2487#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2488pub const CTRL_LEVEL_INVALID: CTRL_LEVEL = CTRL_LEVEL(0i32);
2489#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2490pub const CTRL_LEVEL_NONE: CTRL_LEVEL = CTRL_LEVEL(1i32);
2491#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2492pub const CTRL_LEVEL_VIEW: CTRL_LEVEL = CTRL_LEVEL(2i32);
2493#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2494pub const CTRL_LEVEL_INTERACTIVE: CTRL_LEVEL = CTRL_LEVEL(3i32);
2495#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2496pub const CTRL_LEVEL_REQCTRL_VIEW: CTRL_LEVEL = CTRL_LEVEL(4i32);
2497#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2498pub const CTRL_LEVEL_REQCTRL_INTERACTIVE: CTRL_LEVEL = CTRL_LEVEL(5i32);
2499#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2500pub const CTRL_LEVEL_MAX: CTRL_LEVEL = CTRL_LEVEL(5i32);
2501impl ::core::marker::Copy for CTRL_LEVEL {}
2502impl ::core::clone::Clone for CTRL_LEVEL {
2503 fn clone(&self) -> Self {
2504 *self
2505 }
2506}
2507impl ::core::default::Default for CTRL_LEVEL {
2508 fn default() -> Self {
2509 Self(0)
2510 }
2511}
2512impl ::windows::core::TypeKind for CTRL_LEVEL {
2513 type TypeKind = ::windows::core::CopyType;
2514}
2515impl ::core::fmt::Debug for CTRL_LEVEL {
2516 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2517 f.debug_tuple("CTRL_LEVEL").field(&self.0).finish()
2518 }
2519}
2520#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2521#[repr(transparent)]
2522#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2523pub struct RDPENCOMAPI_ATTENDEE_FLAGS(pub i32);
2524#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2525pub const ATTENDEE_FLAGS_LOCAL: RDPENCOMAPI_ATTENDEE_FLAGS = RDPENCOMAPI_ATTENDEE_FLAGS(1i32);
2526impl ::core::marker::Copy for RDPENCOMAPI_ATTENDEE_FLAGS {}
2527impl ::core::clone::Clone for RDPENCOMAPI_ATTENDEE_FLAGS {
2528 fn clone(&self) -> Self {
2529 *self
2530 }
2531}
2532impl ::core::default::Default for RDPENCOMAPI_ATTENDEE_FLAGS {
2533 fn default() -> Self {
2534 Self(0)
2535 }
2536}
2537impl ::windows::core::TypeKind for RDPENCOMAPI_ATTENDEE_FLAGS {
2538 type TypeKind = ::windows::core::CopyType;
2539}
2540impl ::core::fmt::Debug for RDPENCOMAPI_ATTENDEE_FLAGS {
2541 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2542 f.debug_tuple("RDPENCOMAPI_ATTENDEE_FLAGS").field(&self.0).finish()
2543 }
2544}
2545#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2546#[repr(transparent)]
2547#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2548pub struct RDPENCOMAPI_CONSTANTS(pub i32);
2549#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2550pub const CONST_MAX_CHANNEL_MESSAGE_SIZE: RDPENCOMAPI_CONSTANTS = RDPENCOMAPI_CONSTANTS(1024i32);
2551#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2552pub const CONST_MAX_CHANNEL_NAME_LEN: RDPENCOMAPI_CONSTANTS = RDPENCOMAPI_CONSTANTS(8i32);
2553#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2554pub const CONST_MAX_LEGACY_CHANNEL_MESSAGE_SIZE: RDPENCOMAPI_CONSTANTS = RDPENCOMAPI_CONSTANTS(409600i32);
2555#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2556pub const CONST_ATTENDEE_ID_EVERYONE: RDPENCOMAPI_CONSTANTS = RDPENCOMAPI_CONSTANTS(-1i32);
2557#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2558pub const CONST_ATTENDEE_ID_HOST: RDPENCOMAPI_CONSTANTS = RDPENCOMAPI_CONSTANTS(0i32);
2559#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2560pub const CONST_CONN_INTERVAL: RDPENCOMAPI_CONSTANTS = RDPENCOMAPI_CONSTANTS(50i32);
2561#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2562pub const CONST_ATTENDEE_ID_DEFAULT: RDPENCOMAPI_CONSTANTS = RDPENCOMAPI_CONSTANTS(-1i32);
2563impl ::core::marker::Copy for RDPENCOMAPI_CONSTANTS {}
2564impl ::core::clone::Clone for RDPENCOMAPI_CONSTANTS {
2565 fn clone(&self) -> Self {
2566 *self
2567 }
2568}
2569impl ::core::default::Default for RDPENCOMAPI_CONSTANTS {
2570 fn default() -> Self {
2571 Self(0)
2572 }
2573}
2574impl ::windows::core::TypeKind for RDPENCOMAPI_CONSTANTS {
2575 type TypeKind = ::windows::core::CopyType;
2576}
2577impl ::core::fmt::Debug for RDPENCOMAPI_CONSTANTS {
2578 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2579 f.debug_tuple("RDPENCOMAPI_CONSTANTS").field(&self.0).finish()
2580 }
2581}
2582#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2583#[repr(transparent)]
2584#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2585pub struct RDPSRAPI_APP_FLAGS(pub i32);
2586#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2587pub const APP_FLAG_PRIVILEGED: RDPSRAPI_APP_FLAGS = RDPSRAPI_APP_FLAGS(1i32);
2588impl ::core::marker::Copy for RDPSRAPI_APP_FLAGS {}
2589impl ::core::clone::Clone for RDPSRAPI_APP_FLAGS {
2590 fn clone(&self) -> Self {
2591 *self
2592 }
2593}
2594impl ::core::default::Default for RDPSRAPI_APP_FLAGS {
2595 fn default() -> Self {
2596 Self(0)
2597 }
2598}
2599impl ::windows::core::TypeKind for RDPSRAPI_APP_FLAGS {
2600 type TypeKind = ::windows::core::CopyType;
2601}
2602impl ::core::fmt::Debug for RDPSRAPI_APP_FLAGS {
2603 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2604 f.debug_tuple("RDPSRAPI_APP_FLAGS").field(&self.0).finish()
2605 }
2606}
2607#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2608#[repr(transparent)]
2609#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2610pub struct RDPSRAPI_KBD_CODE_TYPE(pub i32);
2611#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2612pub const RDPSRAPI_KBD_CODE_SCANCODE: RDPSRAPI_KBD_CODE_TYPE = RDPSRAPI_KBD_CODE_TYPE(0i32);
2613#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2614pub const RDPSRAPI_KBD_CODE_UNICODE: RDPSRAPI_KBD_CODE_TYPE = RDPSRAPI_KBD_CODE_TYPE(1i32);
2615impl ::core::marker::Copy for RDPSRAPI_KBD_CODE_TYPE {}
2616impl ::core::clone::Clone for RDPSRAPI_KBD_CODE_TYPE {
2617 fn clone(&self) -> Self {
2618 *self
2619 }
2620}
2621impl ::core::default::Default for RDPSRAPI_KBD_CODE_TYPE {
2622 fn default() -> Self {
2623 Self(0)
2624 }
2625}
2626impl ::windows::core::TypeKind for RDPSRAPI_KBD_CODE_TYPE {
2627 type TypeKind = ::windows::core::CopyType;
2628}
2629impl ::core::fmt::Debug for RDPSRAPI_KBD_CODE_TYPE {
2630 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2631 f.debug_tuple("RDPSRAPI_KBD_CODE_TYPE").field(&self.0).finish()
2632 }
2633}
2634#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2635#[repr(transparent)]
2636#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2637pub struct RDPSRAPI_KBD_SYNC_FLAG(pub i32);
2638#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2639pub const RDPSRAPI_KBD_SYNC_FLAG_SCROLL_LOCK: RDPSRAPI_KBD_SYNC_FLAG = RDPSRAPI_KBD_SYNC_FLAG(1i32);
2640#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2641pub const RDPSRAPI_KBD_SYNC_FLAG_NUM_LOCK: RDPSRAPI_KBD_SYNC_FLAG = RDPSRAPI_KBD_SYNC_FLAG(2i32);
2642#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2643pub const RDPSRAPI_KBD_SYNC_FLAG_CAPS_LOCK: RDPSRAPI_KBD_SYNC_FLAG = RDPSRAPI_KBD_SYNC_FLAG(4i32);
2644#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2645pub const RDPSRAPI_KBD_SYNC_FLAG_KANA_LOCK: RDPSRAPI_KBD_SYNC_FLAG = RDPSRAPI_KBD_SYNC_FLAG(8i32);
2646impl ::core::marker::Copy for RDPSRAPI_KBD_SYNC_FLAG {}
2647impl ::core::clone::Clone for RDPSRAPI_KBD_SYNC_FLAG {
2648 fn clone(&self) -> Self {
2649 *self
2650 }
2651}
2652impl ::core::default::Default for RDPSRAPI_KBD_SYNC_FLAG {
2653 fn default() -> Self {
2654 Self(0)
2655 }
2656}
2657impl ::windows::core::TypeKind for RDPSRAPI_KBD_SYNC_FLAG {
2658 type TypeKind = ::windows::core::CopyType;
2659}
2660impl ::core::fmt::Debug for RDPSRAPI_KBD_SYNC_FLAG {
2661 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2662 f.debug_tuple("RDPSRAPI_KBD_SYNC_FLAG").field(&self.0).finish()
2663 }
2664}
2665#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2666#[repr(transparent)]
2667#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2668pub struct RDPSRAPI_MOUSE_BUTTON_TYPE(pub i32);
2669#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2670pub const RDPSRAPI_MOUSE_BUTTON_BUTTON1: RDPSRAPI_MOUSE_BUTTON_TYPE = RDPSRAPI_MOUSE_BUTTON_TYPE(0i32);
2671#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2672pub const RDPSRAPI_MOUSE_BUTTON_BUTTON2: RDPSRAPI_MOUSE_BUTTON_TYPE = RDPSRAPI_MOUSE_BUTTON_TYPE(1i32);
2673#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2674pub const RDPSRAPI_MOUSE_BUTTON_BUTTON3: RDPSRAPI_MOUSE_BUTTON_TYPE = RDPSRAPI_MOUSE_BUTTON_TYPE(2i32);
2675#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2676pub const RDPSRAPI_MOUSE_BUTTON_XBUTTON1: RDPSRAPI_MOUSE_BUTTON_TYPE = RDPSRAPI_MOUSE_BUTTON_TYPE(3i32);
2677#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2678pub const RDPSRAPI_MOUSE_BUTTON_XBUTTON2: RDPSRAPI_MOUSE_BUTTON_TYPE = RDPSRAPI_MOUSE_BUTTON_TYPE(4i32);
2679#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2680pub const RDPSRAPI_MOUSE_BUTTON_XBUTTON3: RDPSRAPI_MOUSE_BUTTON_TYPE = RDPSRAPI_MOUSE_BUTTON_TYPE(5i32);
2681impl ::core::marker::Copy for RDPSRAPI_MOUSE_BUTTON_TYPE {}
2682impl ::core::clone::Clone for RDPSRAPI_MOUSE_BUTTON_TYPE {
2683 fn clone(&self) -> Self {
2684 *self
2685 }
2686}
2687impl ::core::default::Default for RDPSRAPI_MOUSE_BUTTON_TYPE {
2688 fn default() -> Self {
2689 Self(0)
2690 }
2691}
2692impl ::windows::core::TypeKind for RDPSRAPI_MOUSE_BUTTON_TYPE {
2693 type TypeKind = ::windows::core::CopyType;
2694}
2695impl ::core::fmt::Debug for RDPSRAPI_MOUSE_BUTTON_TYPE {
2696 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2697 f.debug_tuple("RDPSRAPI_MOUSE_BUTTON_TYPE").field(&self.0).finish()
2698 }
2699}
2700#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2701#[repr(transparent)]
2702#[derive(::core::cmp::PartialEq, ::core::cmp::Eq)]
2703pub struct RDPSRAPI_WND_FLAGS(pub i32);
2704#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2705pub const WND_FLAG_PRIVILEGED: RDPSRAPI_WND_FLAGS = RDPSRAPI_WND_FLAGS(1i32);
2706impl ::core::marker::Copy for RDPSRAPI_WND_FLAGS {}
2707impl ::core::clone::Clone for RDPSRAPI_WND_FLAGS {
2708 fn clone(&self) -> Self {
2709 *self
2710 }
2711}
2712impl ::core::default::Default for RDPSRAPI_WND_FLAGS {
2713 fn default() -> Self {
2714 Self(0)
2715 }
2716}
2717impl ::windows::core::TypeKind for RDPSRAPI_WND_FLAGS {
2718 type TypeKind = ::windows::core::CopyType;
2719}
2720impl ::core::fmt::Debug for RDPSRAPI_WND_FLAGS {
2721 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2722 f.debug_tuple("RDPSRAPI_WND_FLAGS").field(&self.0).finish()
2723 }
2724}
2725#[repr(C)]
2726#[doc = "*Required features: `\"Win32_System_DesktopSharing\"`*"]
2727pub struct __ReferenceRemainingTypes__ {
2728 pub __ctrlLevel__: CTRL_LEVEL,
2729 pub __attendeeDisconnectReason__: ATTENDEE_DISCONNECT_REASON,
2730 pub __channelPriority__: CHANNEL_PRIORITY,
2731 pub __channelFlags__: CHANNEL_FLAGS,
2732 pub __channelAccessEnum__: CHANNEL_ACCESS_ENUM,
2733 pub __rdpencomapiAttendeeFlags__: RDPENCOMAPI_ATTENDEE_FLAGS,
2734 pub __rdpsrapiWndFlags__: RDPSRAPI_WND_FLAGS,
2735 pub __rdpsrapiAppFlags__: RDPSRAPI_APP_FLAGS,
2736}
2737impl ::core::marker::Copy for __ReferenceRemainingTypes__ {}
2738impl ::core::clone::Clone for __ReferenceRemainingTypes__ {
2739 fn clone(&self) -> Self {
2740 *self
2741 }
2742}
2743impl ::core::fmt::Debug for __ReferenceRemainingTypes__ {
2744 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
2745 f.debug_struct("__ReferenceRemainingTypes__")
2746 .field("__ctrlLevel__", &self.__ctrlLevel__)
2747 .field("__attendeeDisconnectReason__", &self.__attendeeDisconnectReason__)
2748 .field("__channelPriority__", &self.__channelPriority__)
2749 .field("__channelFlags__", &self.__channelFlags__)
2750 .field("__channelAccessEnum__", &self.__channelAccessEnum__)
2751 .field("__rdpencomapiAttendeeFlags__", &self.__rdpencomapiAttendeeFlags__)
2752 .field("__rdpsrapiWndFlags__", &self.__rdpsrapiWndFlags__)
2753 .field("__rdpsrapiAppFlags__", &self.__rdpsrapiAppFlags__)
2754 .finish()
2755 }
2756}
2757impl ::windows::core::TypeKind for __ReferenceRemainingTypes__ {
2758 type TypeKind = ::windows::core::CopyType;
2759}
2760impl ::core::cmp::PartialEq for __ReferenceRemainingTypes__ {
2761 fn eq(&self, other: &Self) -> bool {
2762 self.__ctrlLevel__ == other.__ctrlLevel__ && self.__attendeeDisconnectReason__ == other.__attendeeDisconnectReason__ && self.__channelPriority__ == other.__channelPriority__ && self.__channelFlags__ == other.__channelFlags__ && self.__channelAccessEnum__ == other.__channelAccessEnum__ && self.__rdpencomapiAttendeeFlags__ == other.__rdpencomapiAttendeeFlags__ && self.__rdpsrapiWndFlags__ == other.__rdpsrapiWndFlags__ && self.__rdpsrapiAppFlags__ == other.__rdpsrapiAppFlags__
2763 }
2764}
2765impl ::core::cmp::Eq for __ReferenceRemainingTypes__ {}
2766impl ::core::default::Default for __ReferenceRemainingTypes__ {
2767 fn default() -> Self {
2768 unsafe { ::core::mem::zeroed() }
2769 }
2770}
2771#[cfg(feature = "implement")]
2772::core::include!("impl.rs");