1 /*** Autogenerated by WIDL 6.4 from include/rdpencomapi.idl - Do not edit ***/
2 
3 #ifdef _WIN32
4 #ifndef __REQUIRED_RPCNDR_H_VERSION__
5 #define __REQUIRED_RPCNDR_H_VERSION__ 475
6 #endif
7 #include <rpc.h>
8 #include <rpcndr.h>
9 #endif
10 
11 #ifndef COM_NO_WINDOWS_H
12 #include <windows.h>
13 #include <ole2.h>
14 #endif
15 
16 #ifndef __rdpencomapi_h__
17 #define __rdpencomapi_h__
18 
19 /* Forward declarations */
20 
21 #ifndef __IRDPSRAPIDebug_FWD_DEFINED__
22 #define __IRDPSRAPIDebug_FWD_DEFINED__
23 typedef interface IRDPSRAPIDebug IRDPSRAPIDebug;
24 #ifdef __cplusplus
25 interface IRDPSRAPIDebug;
26 #endif /* __cplusplus */
27 #endif
28 
29 #ifndef __IRDPSRAPIPerfCounterLogger_FWD_DEFINED__
30 #define __IRDPSRAPIPerfCounterLogger_FWD_DEFINED__
31 typedef interface IRDPSRAPIPerfCounterLogger IRDPSRAPIPerfCounterLogger;
32 #ifdef __cplusplus
33 interface IRDPSRAPIPerfCounterLogger;
34 #endif /* __cplusplus */
35 #endif
36 
37 #ifndef __IRDPSRAPIPerfCounterLoggingManager_FWD_DEFINED__
38 #define __IRDPSRAPIPerfCounterLoggingManager_FWD_DEFINED__
39 typedef interface IRDPSRAPIPerfCounterLoggingManager IRDPSRAPIPerfCounterLoggingManager;
40 #ifdef __cplusplus
41 interface IRDPSRAPIPerfCounterLoggingManager;
42 #endif /* __cplusplus */
43 #endif
44 
45 #ifndef __IRDPSRAPIAudioStream_FWD_DEFINED__
46 #define __IRDPSRAPIAudioStream_FWD_DEFINED__
47 typedef interface IRDPSRAPIAudioStream IRDPSRAPIAudioStream;
48 #ifdef __cplusplus
49 interface IRDPSRAPIAudioStream;
50 #endif /* __cplusplus */
51 #endif
52 
53 #ifndef __IRDPSRAPIClipboardUseEvents_FWD_DEFINED__
54 #define __IRDPSRAPIClipboardUseEvents_FWD_DEFINED__
55 typedef interface IRDPSRAPIClipboardUseEvents IRDPSRAPIClipboardUseEvents;
56 #ifdef __cplusplus
57 interface IRDPSRAPIClipboardUseEvents;
58 #endif /* __cplusplus */
59 #endif
60 
61 #ifndef __IRDPSRAPIWindow_FWD_DEFINED__
62 #define __IRDPSRAPIWindow_FWD_DEFINED__
63 typedef interface IRDPSRAPIWindow IRDPSRAPIWindow;
64 #ifdef __cplusplus
65 interface IRDPSRAPIWindow;
66 #endif /* __cplusplus */
67 #endif
68 
69 #ifndef __IRDPSRAPIWindowList_FWD_DEFINED__
70 #define __IRDPSRAPIWindowList_FWD_DEFINED__
71 typedef interface IRDPSRAPIWindowList IRDPSRAPIWindowList;
72 #ifdef __cplusplus
73 interface IRDPSRAPIWindowList;
74 #endif /* __cplusplus */
75 #endif
76 
77 #ifndef __IRDPSRAPIApplication_FWD_DEFINED__
78 #define __IRDPSRAPIApplication_FWD_DEFINED__
79 typedef interface IRDPSRAPIApplication IRDPSRAPIApplication;
80 #ifdef __cplusplus
81 interface IRDPSRAPIApplication;
82 #endif /* __cplusplus */
83 #endif
84 
85 #ifndef __IRDPSRAPIApplicationList_FWD_DEFINED__
86 #define __IRDPSRAPIApplicationList_FWD_DEFINED__
87 typedef interface IRDPSRAPIApplicationList IRDPSRAPIApplicationList;
88 #ifdef __cplusplus
89 interface IRDPSRAPIApplicationList;
90 #endif /* __cplusplus */
91 #endif
92 
93 #ifndef __IRDPSRAPIApplicationFilter_FWD_DEFINED__
94 #define __IRDPSRAPIApplicationFilter_FWD_DEFINED__
95 typedef interface IRDPSRAPIApplicationFilter IRDPSRAPIApplicationFilter;
96 #ifdef __cplusplus
97 interface IRDPSRAPIApplicationFilter;
98 #endif /* __cplusplus */
99 #endif
100 
101 #ifndef __IRDPSRAPISessionProperties_FWD_DEFINED__
102 #define __IRDPSRAPISessionProperties_FWD_DEFINED__
103 typedef interface IRDPSRAPISessionProperties IRDPSRAPISessionProperties;
104 #ifdef __cplusplus
105 interface IRDPSRAPISessionProperties;
106 #endif /* __cplusplus */
107 #endif
108 
109 #ifndef __IRDPSRAPIInvitation_FWD_DEFINED__
110 #define __IRDPSRAPIInvitation_FWD_DEFINED__
111 typedef interface IRDPSRAPIInvitation IRDPSRAPIInvitation;
112 #ifdef __cplusplus
113 interface IRDPSRAPIInvitation;
114 #endif /* __cplusplus */
115 #endif
116 
117 #ifndef __IRDPSRAPIInvitationManager_FWD_DEFINED__
118 #define __IRDPSRAPIInvitationManager_FWD_DEFINED__
119 typedef interface IRDPSRAPIInvitationManager IRDPSRAPIInvitationManager;
120 #ifdef __cplusplus
121 interface IRDPSRAPIInvitationManager;
122 #endif /* __cplusplus */
123 #endif
124 
125 #ifndef __IRDPSRAPITcpConnectionInfo_FWD_DEFINED__
126 #define __IRDPSRAPITcpConnectionInfo_FWD_DEFINED__
127 typedef interface IRDPSRAPITcpConnectionInfo IRDPSRAPITcpConnectionInfo;
128 #ifdef __cplusplus
129 interface IRDPSRAPITcpConnectionInfo;
130 #endif /* __cplusplus */
131 #endif
132 
133 #ifndef __IRDPSRAPIAttendee_FWD_DEFINED__
134 #define __IRDPSRAPIAttendee_FWD_DEFINED__
135 typedef interface IRDPSRAPIAttendee IRDPSRAPIAttendee;
136 #ifdef __cplusplus
137 interface IRDPSRAPIAttendee;
138 #endif /* __cplusplus */
139 #endif
140 
141 #ifndef __IRDPSRAPIAttendeeManager_FWD_DEFINED__
142 #define __IRDPSRAPIAttendeeManager_FWD_DEFINED__
143 typedef interface IRDPSRAPIAttendeeManager IRDPSRAPIAttendeeManager;
144 #ifdef __cplusplus
145 interface IRDPSRAPIAttendeeManager;
146 #endif /* __cplusplus */
147 #endif
148 
149 #ifndef __IRDPSRAPIAttendeeDisconnectInfo_FWD_DEFINED__
150 #define __IRDPSRAPIAttendeeDisconnectInfo_FWD_DEFINED__
151 typedef interface IRDPSRAPIAttendeeDisconnectInfo IRDPSRAPIAttendeeDisconnectInfo;
152 #ifdef __cplusplus
153 interface IRDPSRAPIAttendeeDisconnectInfo;
154 #endif /* __cplusplus */
155 #endif
156 
157 #ifndef __IRDPSRAPIVirtualChannel_FWD_DEFINED__
158 #define __IRDPSRAPIVirtualChannel_FWD_DEFINED__
159 typedef interface IRDPSRAPIVirtualChannel IRDPSRAPIVirtualChannel;
160 #ifdef __cplusplus
161 interface IRDPSRAPIVirtualChannel;
162 #endif /* __cplusplus */
163 #endif
164 
165 #ifndef __IRDPSRAPIVirtualChannelManager_FWD_DEFINED__
166 #define __IRDPSRAPIVirtualChannelManager_FWD_DEFINED__
167 typedef interface IRDPSRAPIVirtualChannelManager IRDPSRAPIVirtualChannelManager;
168 #ifdef __cplusplus
169 interface IRDPSRAPIVirtualChannelManager;
170 #endif /* __cplusplus */
171 #endif
172 
173 #ifndef __IRDPSRAPIViewer_FWD_DEFINED__
174 #define __IRDPSRAPIViewer_FWD_DEFINED__
175 typedef interface IRDPSRAPIViewer IRDPSRAPIViewer;
176 #ifdef __cplusplus
177 interface IRDPSRAPIViewer;
178 #endif /* __cplusplus */
179 #endif
180 
181 #ifndef __IRDPViewerRenderingSurface_FWD_DEFINED__
182 #define __IRDPViewerRenderingSurface_FWD_DEFINED__
183 typedef interface IRDPViewerRenderingSurface IRDPViewerRenderingSurface;
184 #ifdef __cplusplus
185 interface IRDPViewerRenderingSurface;
186 #endif /* __cplusplus */
187 #endif
188 
189 #ifndef __IRDPViewerInputSink_FWD_DEFINED__
190 #define __IRDPViewerInputSink_FWD_DEFINED__
191 typedef interface IRDPViewerInputSink IRDPViewerInputSink;
192 #ifdef __cplusplus
193 interface IRDPViewerInputSink;
194 #endif /* __cplusplus */
195 #endif
196 
197 #ifndef __IRDPSRAPIFrameBuffer_FWD_DEFINED__
198 #define __IRDPSRAPIFrameBuffer_FWD_DEFINED__
199 typedef interface IRDPSRAPIFrameBuffer IRDPSRAPIFrameBuffer;
200 #ifdef __cplusplus
201 interface IRDPSRAPIFrameBuffer;
202 #endif /* __cplusplus */
203 #endif
204 
205 #ifndef __IRDPSRAPITransportStreamBuffer_FWD_DEFINED__
206 #define __IRDPSRAPITransportStreamBuffer_FWD_DEFINED__
207 typedef interface IRDPSRAPITransportStreamBuffer IRDPSRAPITransportStreamBuffer;
208 #ifdef __cplusplus
209 interface IRDPSRAPITransportStreamBuffer;
210 #endif /* __cplusplus */
211 #endif
212 
213 #ifndef __IRDPSRAPITransportStreamEvents_FWD_DEFINED__
214 #define __IRDPSRAPITransportStreamEvents_FWD_DEFINED__
215 typedef interface IRDPSRAPITransportStreamEvents IRDPSRAPITransportStreamEvents;
216 #ifdef __cplusplus
217 interface IRDPSRAPITransportStreamEvents;
218 #endif /* __cplusplus */
219 #endif
220 
221 #ifndef __IRDPSRAPITransportStream_FWD_DEFINED__
222 #define __IRDPSRAPITransportStream_FWD_DEFINED__
223 typedef interface IRDPSRAPITransportStream IRDPSRAPITransportStream;
224 #ifdef __cplusplus
225 interface IRDPSRAPITransportStream;
226 #endif /* __cplusplus */
227 #endif
228 
229 #ifndef __IRDPSRAPISharingSession_FWD_DEFINED__
230 #define __IRDPSRAPISharingSession_FWD_DEFINED__
231 typedef interface IRDPSRAPISharingSession IRDPSRAPISharingSession;
232 #ifdef __cplusplus
233 interface IRDPSRAPISharingSession;
234 #endif /* __cplusplus */
235 #endif
236 
237 #ifndef __IRDPSRAPISharingSession2_FWD_DEFINED__
238 #define __IRDPSRAPISharingSession2_FWD_DEFINED__
239 typedef interface IRDPSRAPISharingSession2 IRDPSRAPISharingSession2;
240 #ifdef __cplusplus
241 interface IRDPSRAPISharingSession2;
242 #endif /* __cplusplus */
243 #endif
244 
245 #ifndef ___IRDPSessionEvents_FWD_DEFINED__
246 #define ___IRDPSessionEvents_FWD_DEFINED__
247 typedef interface _IRDPSessionEvents _IRDPSessionEvents;
248 #ifdef __cplusplus
249 interface _IRDPSessionEvents;
250 #endif /* __cplusplus */
251 #endif
252 
253 #ifndef __RDPViewer_FWD_DEFINED__
254 #define __RDPViewer_FWD_DEFINED__
255 #ifdef __cplusplus
256 typedef class RDPViewer RDPViewer;
257 #else
258 typedef struct RDPViewer RDPViewer;
259 #endif /* defined __cplusplus */
260 #endif /* defined __RDPViewer_FWD_DEFINED__ */
261 
262 #ifndef __RDPSRAPISessionProperties_FWD_DEFINED__
263 #define __RDPSRAPISessionProperties_FWD_DEFINED__
264 #ifdef __cplusplus
265 typedef class RDPSRAPISessionProperties RDPSRAPISessionProperties;
266 #else
267 typedef struct RDPSRAPISessionProperties RDPSRAPISessionProperties;
268 #endif /* defined __cplusplus */
269 #endif /* defined __RDPSRAPISessionProperties_FWD_DEFINED__ */
270 
271 #ifndef __RDPSRAPIInvitationManager_FWD_DEFINED__
272 #define __RDPSRAPIInvitationManager_FWD_DEFINED__
273 #ifdef __cplusplus
274 typedef class RDPSRAPIInvitationManager RDPSRAPIInvitationManager;
275 #else
276 typedef struct RDPSRAPIInvitationManager RDPSRAPIInvitationManager;
277 #endif /* defined __cplusplus */
278 #endif /* defined __RDPSRAPIInvitationManager_FWD_DEFINED__ */
279 
280 #ifndef __RDPSRAPIInvitation_FWD_DEFINED__
281 #define __RDPSRAPIInvitation_FWD_DEFINED__
282 #ifdef __cplusplus
283 typedef class RDPSRAPIInvitation RDPSRAPIInvitation;
284 #else
285 typedef struct RDPSRAPIInvitation RDPSRAPIInvitation;
286 #endif /* defined __cplusplus */
287 #endif /* defined __RDPSRAPIInvitation_FWD_DEFINED__ */
288 
289 #ifndef __RDPSRAPIAttendeeManager_FWD_DEFINED__
290 #define __RDPSRAPIAttendeeManager_FWD_DEFINED__
291 #ifdef __cplusplus
292 typedef class RDPSRAPIAttendeeManager RDPSRAPIAttendeeManager;
293 #else
294 typedef struct RDPSRAPIAttendeeManager RDPSRAPIAttendeeManager;
295 #endif /* defined __cplusplus */
296 #endif /* defined __RDPSRAPIAttendeeManager_FWD_DEFINED__ */
297 
298 #ifndef __RDPSRAPIAttendee_FWD_DEFINED__
299 #define __RDPSRAPIAttendee_FWD_DEFINED__
300 #ifdef __cplusplus
301 typedef class RDPSRAPIAttendee RDPSRAPIAttendee;
302 #else
303 typedef struct RDPSRAPIAttendee RDPSRAPIAttendee;
304 #endif /* defined __cplusplus */
305 #endif /* defined __RDPSRAPIAttendee_FWD_DEFINED__ */
306 
307 #ifndef __RDPSRAPIAttendeeDisconnectInfo_FWD_DEFINED__
308 #define __RDPSRAPIAttendeeDisconnectInfo_FWD_DEFINED__
309 #ifdef __cplusplus
310 typedef class RDPSRAPIAttendeeDisconnectInfo RDPSRAPIAttendeeDisconnectInfo;
311 #else
312 typedef struct RDPSRAPIAttendeeDisconnectInfo RDPSRAPIAttendeeDisconnectInfo;
313 #endif /* defined __cplusplus */
314 #endif /* defined __RDPSRAPIAttendeeDisconnectInfo_FWD_DEFINED__ */
315 
316 #ifndef __RDPSRAPIApplicationFilter_FWD_DEFINED__
317 #define __RDPSRAPIApplicationFilter_FWD_DEFINED__
318 #ifdef __cplusplus
319 typedef class RDPSRAPIApplicationFilter RDPSRAPIApplicationFilter;
320 #else
321 typedef struct RDPSRAPIApplicationFilter RDPSRAPIApplicationFilter;
322 #endif /* defined __cplusplus */
323 #endif /* defined __RDPSRAPIApplicationFilter_FWD_DEFINED__ */
324 
325 #ifndef __RDPSRAPIApplicationList_FWD_DEFINED__
326 #define __RDPSRAPIApplicationList_FWD_DEFINED__
327 #ifdef __cplusplus
328 typedef class RDPSRAPIApplicationList RDPSRAPIApplicationList;
329 #else
330 typedef struct RDPSRAPIApplicationList RDPSRAPIApplicationList;
331 #endif /* defined __cplusplus */
332 #endif /* defined __RDPSRAPIApplicationList_FWD_DEFINED__ */
333 
334 #ifndef __RDPSRAPIApplication_FWD_DEFINED__
335 #define __RDPSRAPIApplication_FWD_DEFINED__
336 #ifdef __cplusplus
337 typedef class RDPSRAPIApplication RDPSRAPIApplication;
338 #else
339 typedef struct RDPSRAPIApplication RDPSRAPIApplication;
340 #endif /* defined __cplusplus */
341 #endif /* defined __RDPSRAPIApplication_FWD_DEFINED__ */
342 
343 #ifndef __RDPSRAPIWindowList_FWD_DEFINED__
344 #define __RDPSRAPIWindowList_FWD_DEFINED__
345 #ifdef __cplusplus
346 typedef class RDPSRAPIWindowList RDPSRAPIWindowList;
347 #else
348 typedef struct RDPSRAPIWindowList RDPSRAPIWindowList;
349 #endif /* defined __cplusplus */
350 #endif /* defined __RDPSRAPIWindowList_FWD_DEFINED__ */
351 
352 #ifndef __RDPSRAPIWindow_FWD_DEFINED__
353 #define __RDPSRAPIWindow_FWD_DEFINED__
354 #ifdef __cplusplus
355 typedef class RDPSRAPIWindow RDPSRAPIWindow;
356 #else
357 typedef struct RDPSRAPIWindow RDPSRAPIWindow;
358 #endif /* defined __cplusplus */
359 #endif /* defined __RDPSRAPIWindow_FWD_DEFINED__ */
360 
361 #ifndef __RDPSRAPITcpConnectionInfo_FWD_DEFINED__
362 #define __RDPSRAPITcpConnectionInfo_FWD_DEFINED__
363 #ifdef __cplusplus
364 typedef class RDPSRAPITcpConnectionInfo RDPSRAPITcpConnectionInfo;
365 #else
366 typedef struct RDPSRAPITcpConnectionInfo RDPSRAPITcpConnectionInfo;
367 #endif /* defined __cplusplus */
368 #endif /* defined __RDPSRAPITcpConnectionInfo_FWD_DEFINED__ */
369 
370 #ifndef __RDPSession_FWD_DEFINED__
371 #define __RDPSession_FWD_DEFINED__
372 #ifdef __cplusplus
373 typedef class RDPSession RDPSession;
374 #else
375 typedef struct RDPSession RDPSession;
376 #endif /* defined __cplusplus */
377 #endif /* defined __RDPSession_FWD_DEFINED__ */
378 
379 #ifndef __RDPSRAPIFrameBuffer_FWD_DEFINED__
380 #define __RDPSRAPIFrameBuffer_FWD_DEFINED__
381 #ifdef __cplusplus
382 typedef class RDPSRAPIFrameBuffer RDPSRAPIFrameBuffer;
383 #else
384 typedef struct RDPSRAPIFrameBuffer RDPSRAPIFrameBuffer;
385 #endif /* defined __cplusplus */
386 #endif /* defined __RDPSRAPIFrameBuffer_FWD_DEFINED__ */
387 
388 #ifndef __RDPTransportStreamBuffer_FWD_DEFINED__
389 #define __RDPTransportStreamBuffer_FWD_DEFINED__
390 #ifdef __cplusplus
391 typedef class RDPTransportStreamBuffer RDPTransportStreamBuffer;
392 #else
393 typedef struct RDPTransportStreamBuffer RDPTransportStreamBuffer;
394 #endif /* defined __cplusplus */
395 #endif /* defined __RDPTransportStreamBuffer_FWD_DEFINED__ */
396 
397 #ifndef __RDPTransportStreamEvents_FWD_DEFINED__
398 #define __RDPTransportStreamEvents_FWD_DEFINED__
399 #ifdef __cplusplus
400 typedef class RDPTransportStreamEvents RDPTransportStreamEvents;
401 #else
402 typedef struct RDPTransportStreamEvents RDPTransportStreamEvents;
403 #endif /* defined __cplusplus */
404 #endif /* defined __RDPTransportStreamEvents_FWD_DEFINED__ */
405 
406 /* Headers for imported files */
407 
408 #include <oaidl.h>
409 #include <ocidl.h>
410 
411 #ifdef __cplusplus
412 extern "C" {
413 #endif
414 
415 #if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP)
416 #define DISPID_RDPSRAPI_METHOD_OPEN (100)
417 
418 #define DISPID_RDPSRAPI_METHOD_CLOSE (101)
419 
420 #define DISPID_RDPSRAPI_METHOD_SETSHAREDRECT (102)
421 
422 #define DISPID_RDPSRAPI_METHOD_GETSHAREDRECT (103)
423 
424 #define DISPID_RDPSRAPI_METHOD_VIEWERCONNECT (104)
425 
426 #define DISPID_RDPSRAPI_METHOD_VIEWERDISCONNECT (105)
427 
428 #define DISPID_RDPSRAPI_METHOD_TERMINATE_CONNECTION (106)
429 
430 #define DISPID_RDPSRAPI_METHOD_CREATE_INVITATION (107)
431 
432 #define DISPID_RDPSRAPI_METHOD_REQUEST_CONTROL (108)
433 
434 #define DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_CREATE (109)
435 
436 #define DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_SEND_DATA (110)
437 
438 #define DISPID_RDPSRAPI_METHOD_VIRTUAL_CHANNEL_SET_ACCESS (111)
439 
440 #define DISPID_RDPSRAPI_METHOD_PAUSE (112)
441 
442 #define DISPID_RDPSRAPI_METHOD_RESUME (113)
443 
444 #define DISPID_RDPSRAPI_METHOD_SHOW_WINDOW (114)
445 
446 #define DISPID_RDPSRAPI_METHOD_REQUEST_COLOR_DEPTH_CHANGE (115)
447 
448 #define DISPID_RDPSRAPI_METHOD_STARTREVCONNECTLISTENER (116)
449 
450 #define DISPID_RDPSRAPI_METHOD_CONNECTTOCLIENT (117)
451 
452 #define DISPID_RDPSRAPI_METHOD_SET_RENDERING_SURFACE (118)
453 
454 #define DISPID_RDPSRAPI_METHOD_SEND_MOUSE_BUTTON_EVENT (119)
455 
456 #define DISPID_RDPSRAPI_METHOD_SEND_MOUSE_MOVE_EVENT (120)
457 
458 #define DISPID_RDPSRAPI_METHOD_SEND_MOUSE_WHEEL_EVENT (121)
459 
460 #define DISPID_RDPSRAPI_METHOD_SEND_KEYBOARD_EVENT (122)
461 
462 #define DISPID_RDPSRAPI_METHOD_SEND_SYNC_EVENT (123)
463 
464 #define DISPID_RDPSRAPI_METHOD_BEGIN_TOUCH_FRAME (124)
465 
466 #define DISPID_RDPSRAPI_METHOD_ADD_TOUCH_INPUT (125)
467 
468 #define DISPID_RDPSRAPI_METHOD_END_TOUCH_FRAME (126)
469 
470 #define DISPID_RDPSRAPI_METHOD_CONNECTUSINGTRANSPORTSTREAM (127)
471 
472 #define DISPID_RDPSRAPI_METHOD_SENDCONTROLLEVELCHANGERESPONSE (148)
473 
474 #define DISPID_RDPSRAPI_METHOD_GETFRAMEBUFFERBITS (149)
475 
476 #define DISPID_RDPSRAPI_PROP_DISPIDVALUE (200)
477 
478 #define DISPID_RDPSRAPI_PROP_ID (201)
479 
480 #define DISPID_RDPSRAPI_PROP_SESSION_PROPERTIES (202)
481 
482 #define DISPID_RDPSRAPI_PROP_ATTENDEES (203)
483 
484 #define DISPID_RDPSRAPI_PROP_INVITATIONS (204)
485 
486 #define DISPID_RDPSRAPI_PROP_INVITATION (205)
487 
488 #define DISPID_RDPSRAPI_PROP_CHANNELMANAGER (206)
489 
490 #define DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETNAME (207)
491 
492 #define DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETFLAGS (208)
493 
494 #define DISPID_RDPSRAPI_PROP_VIRTUAL_CHANNEL_GETPRIORITY (209)
495 
496 #define DISPID_RDPSRAPI_PROP_WINDOWID (210)
497 
498 #define DISPID_RDPSRAPI_PROP_APPLICATION (211)
499 
500 #define DISPID_RDPSRAPI_PROP_WINDOWSHARED (212)
501 
502 #define DISPID_RDPSRAPI_PROP_WINDOWNAME (213)
503 
504 #define DISPID_RDPSRAPI_PROP_APPNAME (214)
505 
506 #define DISPID_RDPSRAPI_PROP_APPLICATION_FILTER (215)
507 
508 #define DISPID_RDPSRAPI_PROP_WINDOW_LIST (216)
509 
510 #define DISPID_RDPSRAPI_PROP_APPLICATION_LIST (217)
511 
512 #define DISPID_RDPSRAPI_PROP_APPFILTER_ENABLED (218)
513 
514 #define DISPID_RDPSRAPI_PROP_APPFILTERENABLED (219)
515 
516 #define DISPID_RDPSRAPI_PROP_SHARED (220)
517 
518 #define DISPID_RDPSRAPI_PROP_INVITATIONITEM (221)
519 
520 #define DISPID_RDPSRAPI_PROP_DBG_CLX_CMDLINE (222)
521 
522 #define DISPID_RDPSRAPI_PROP_APPFLAGS (223)
523 
524 #define DISPID_RDPSRAPI_PROP_WNDFLAGS (224)
525 
526 #define DISPID_RDPSRAPI_PROP_PROTOCOL_TYPE (225)
527 
528 #define DISPID_RDPSRAPI_PROP_LOCAL_PORT (226)
529 
530 #define DISPID_RDPSRAPI_PROP_LOCAL_IP (227)
531 
532 #define DISPID_RDPSRAPI_PROP_PEER_PORT (228)
533 
534 #define DISPID_RDPSRAPI_PROP_PEER_IP (229)
535 
536 #define DISPID_RDPSRAPI_PROP_ATTENDEE_FLAGS (230)
537 
538 #define DISPID_RDPSRAPI_PROP_CONINFO (231)
539 
540 #define DISPID_RDPSRAPI_PROP_CONNECTION_STRING (232)
541 
542 #define DISPID_RDPSRAPI_PROP_GROUP_NAME (233)
543 
544 #define DISPID_RDPSRAPI_PROP_PASSWORD (234)
545 
546 #define DISPID_RDPSRAPI_PROP_ATTENDEELIMIT (235)
547 
548 #define DISPID_RDPSRAPI_PROP_REVOKED (236)
549 
550 #define DISPID_RDPSRAPI_PROP_DISCONNECTED_STRING (237)
551 
552 #define DISPID_RDPSRAPI_PROP_USESMARTSIZING (238)
553 
554 #define DISPID_RDPSRAPI_PROP_SESSION_COLORDEPTH (239)
555 
556 #define DISPID_RDPSRAPI_PROP_REASON (240)
557 
558 #define DISPID_RDPSRAPI_PROP_CODE (241)
559 
560 #define DISPID_RDPSRAPI_PROP_CTRL_LEVEL (242)
561 
562 #define DISPID_RDPSRAPI_PROP_REMOTENAME (243)
563 
564 #define DISPID_RDPSRAPI_PROP_COUNT (244)
565 
566 #define DISPID_RDPSRAPI_PROP_FRAMEBUFFER_HEIGHT (251)
567 
568 #define DISPID_RDPSRAPI_PROP_FRAMEBUFFER_WIDTH (252)
569 
570 #define DISPID_RDPSRAPI_PROP_FRAMEBUFFER_BPP (253)
571 
572 #define DISPID_RDPSRAPI_PROP_FRAMEBUFFER (254)
573 
574 #define DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_CONNECTED (301)
575 
576 #define DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_DISCONNECTED (302)
577 
578 #define DISPID_RDPSRAPI_EVENT_ON_ATTENDEE_UPDATE (303)
579 
580 #define DISPID_RDPSRAPI_EVENT_ON_ERROR (304)
581 
582 #define DISPID_RDPSRAPI_EVENT_ON_VIEWER_CONNECTED (305)
583 
584 #define DISPID_RDPSRAPI_EVENT_ON_VIEWER_DISCONNECTED (306)
585 
586 #define DISPID_RDPSRAPI_EVENT_ON_VIEWER_AUTHENTICATED (307)
587 
588 #define DISPID_RDPSRAPI_EVENT_ON_VIEWER_CONNECTFAILED (308)
589 
590 #define DISPID_RDPSRAPI_EVENT_ON_CTRLLEVEL_CHANGE_REQUEST (309)
591 
592 #define DISPID_RDPSRAPI_EVENT_ON_GRAPHICS_STREAM_PAUSED (310)
593 
594 #define DISPID_RDPSRAPI_EVENT_ON_GRAPHICS_STREAM_RESUMED (311)
595 
596 #define DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_JOIN (312)
597 
598 #define DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_LEAVE (313)
599 
600 #define DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_DATARECEIVED (314)
601 
602 #define DISPID_RDPSRAPI_EVENT_ON_VIRTUAL_CHANNEL_SENDCOMPLETED (315)
603 
604 #define DISPID_RDPSRAPI_EVENT_ON_APPLICATION_OPEN (316)
605 
606 #define DISPID_RDPSRAPI_EVENT_ON_APPLICATION_CLOSE (317)
607 
608 #define DISPID_RDPSRAPI_EVENT_ON_APPLICATION_UPDATE (318)
609 
610 #define DISPID_RDPSRAPI_EVENT_ON_WINDOW_OPEN (319)
611 
612 #define DISPID_RDPSRAPI_EVENT_ON_WINDOW_CLOSE (320)
613 
614 #define DISPID_RDPSRAPI_EVENT_ON_WINDOW_UPDATE (321)
615 
616 #define DISPID_RDPSRAPI_EVENT_ON_APPFILTER_UPDATE (322)
617 
618 #define DISPID_RDPSRAPI_EVENT_ON_SHARED_RECT_CHANGED (323)
619 
620 #define DISPID_RDPSRAPI_EVENT_ON_FOCUSRELEASED (324)
621 
622 #define DISPID_RDPSRAPI_EVENT_ON_SHARED_DESKTOP_SETTINGS_CHANGED (325)
623 
624 #define DISPID_RDPSRAPI_EVENT_ON_CTRLLEVEL_CHANGE_RESPONSE (338)
625 
626 #define DISPID_RDPAPI_EVENT_ON_BOUNDING_RECT_CHANGED (340)
627 
628 #define DISPID_RDPSRAPI_METHOD_STREAM_ALLOCBUFFER (421)
629 
630 #define DISPID_RDPSRAPI_METHOD_STREAM_FREEBUFFER (422)
631 
632 #define DISPID_RDPSRAPI_METHOD_STREAMSENDDATA (423)
633 
634 #define DISPID_RDPSRAPI_METHOD_STREAMREADDATA (424)
635 
636 #define DISPID_RDPSRAPI_METHOD_STREAMOPEN (425)
637 
638 #define DISPID_RDPSRAPI_METHOD_STREAMCLOSE (426)
639 
640 #define DISPID_RDPSRAPI_PROP_STREAMBUFFER_STORAGE (555)
641 
642 #define DISPID_RDPSRAPI_PROP_STREAMBUFFER_PAYLOADSIZE (558)
643 
644 #define DISPID_RDPSRAPI_PROP_STREAMBUFFER_PAYLOADOFFSET (559)
645 
646 #define DISPID_RDPSRAPI_PROP_STREAMBUFFER_CONTEXT (560)
647 
648 #define DISPID_RDPSRAPI_PROP_STREAMBUFFER_FLAGS (561)
649 
650 #define DISPID_RDPSRAPI_PROP_STREAMBUFFER_STORESIZE (562)
651 
652 #define DISPID_RDPSRAPI_EVENT_ON_STREAM_SENDCOMPLETED (632)
653 
654 #define DISPID_RDPSRAPI_EVENT_ON_STREAM_DATARECEIVED (633)
655 
656 #define DISPID_RDPSRAPI_EVENT_ON_STREAM_CLOSED (634)
657 
658 #define DISPID_RDPSRAPI_EVENT_VIEW_MOUSE_BUTTON_RECEIVED (700)
659 
660 #define DISPID_RDPSRAPI_EVENT_VIEW_MOUSE_MOVE_RECEIVED (701)
661 
662 #define DISPID_RDPSRAPI_EVENT_VIEW_MOUSE_WHEEL_RECEIVED (702)
663 
664 typedef enum __WIDL_rdpencomapi_generated_name_00000020 {
665     CTRL_LEVEL_MIN = 0,
666     CTRL_LEVEL_INVALID = 0,
667     CTRL_LEVEL_NONE = 1,
668     CTRL_LEVEL_VIEW = 2,
669     CTRL_LEVEL_INTERACTIVE = 3,
670     CTRL_LEVEL_REQCTRL_VIEW = 4,
671     CTRL_LEVEL_REQCTRL_INTERACTIVE = 5,
672     CTRL_LEVEL_MAX = 5
673 } CTRL_LEVEL;
674 typedef enum __WIDL_rdpencomapi_generated_name_00000021 {
675     ATTENDEE_DISCONNECT_REASON_MIN = 0,
676     ATTENDEE_DISCONNECT_REASON_APP = 0,
677     ATTENDEE_DISCONNECT_REASON_ERR = 1,
678     ATTENDEE_DISCONNECT_REASON_CLI = 2,
679     ATTENDEE_DISCONNECT_REASON_MAX = 2
680 } ATTENDEE_DISCONNECT_REASON;
681 typedef enum __WIDL_rdpencomapi_generated_name_00000022 {
682     CHANNEL_PRIORITY_LO = 0,
683     CHANNEL_PRIORITY_MED = 1,
684     CHANNEL_PRIORITY_HI = 2
685 } CHANNEL_PRIORITY;
686 typedef enum __WIDL_rdpencomapi_generated_name_00000023 {
687     CHANNEL_FLAGS_LEGACY = 0x1,
688     CHANNEL_FLAGS_UNCOMPRESSED = 0x2,
689     CHANNEL_FLAGS_DYNAMIC = 0x4
690 } CHANNEL_FLAGS;
691 typedef enum __WIDL_rdpencomapi_generated_name_00000024 {
692     CHANNEL_ACCESS_ENUM_NONE = 0,
693     CHANNEL_ACCESS_ENUM_SENDRECEIVE = 1
694 } CHANNEL_ACCESS_ENUM;
695 typedef enum __WIDL_rdpencomapi_generated_name_00000025 {
696     ATTENDEE_FLAGS_LOCAL = 1
697 } RDPENCOMAPI_ATTENDEE_FLAGS;
698 typedef enum __WIDL_rdpencomapi_generated_name_00000026 {
699     WND_FLAG_PRIVILEGED = 1
700 } RDPSRAPI_WND_FLAGS;
701 typedef enum __WIDL_rdpencomapi_generated_name_00000027 {
702     APP_FLAG_PRIVILEGED = 1
703 } RDPSRAPI_APP_FLAGS;
704 typedef enum __WIDL_rdpencomapi_generated_name_00000028 {
705     RDPSRAPI_MOUSE_BUTTON_BUTTON1 = 0,
706     RDPSRAPI_MOUSE_BUTTON_BUTTON2 = 1,
707     RDPSRAPI_MOUSE_BUTTON_BUTTON3 = 2,
708     RDPSRAPI_MOUSE_BUTTON_XBUTTON1 = 3,
709     RDPSRAPI_MOUSE_BUTTON_XBUTTON2 = 4,
710     RDPSRAPI_MOUSE_BUTTON_XBUTTON3 = 5
711 } RDPSRAPI_MOUSE_BUTTON_TYPE;
712 typedef enum __WIDL_rdpencomapi_generated_name_00000029 {
713     RDPSRAPI_KBD_CODE_SCANCODE = 0,
714     RDPSRAPI_KBD_CODE_UNICODE = 1
715 } RDPSRAPI_KBD_CODE_TYPE;
716 typedef enum __WIDL_rdpencomapi_generated_name_0000002A {
717     RDPSRAPI_KBD_SYNC_FLAG_SCROLL_LOCK = 1,
718     RDPSRAPI_KBD_SYNC_FLAG_NUM_LOCK = 2,
719     RDPSRAPI_KBD_SYNC_FLAG_CAPS_LOCK = 4,
720     RDPSRAPI_KBD_SYNC_FLAG_KANA_LOCK = 8
721 } RDPSRAPI_KBD_SYNC_FLAG;
722 /*****************************************************************************
723  * IRDPSRAPIDebug interface
724  */
725 #ifndef __IRDPSRAPIDebug_INTERFACE_DEFINED__
726 #define __IRDPSRAPIDebug_INTERFACE_DEFINED__
727 
728 DEFINE_GUID(IID_IRDPSRAPIDebug, 0xaa1e42b5, 0x496d, 0x4ca4, 0xa6,0x90, 0x34,0x8d,0xcb,0x2e,0xc4,0xad);
729 #if defined(__cplusplus) && !defined(CINTERFACE)
730 MIDL_INTERFACE("aa1e42b5-496d-4ca4-a690-348dcb2ec4ad")
731 IRDPSRAPIDebug : public IUnknown
732 {
733     virtual HRESULT STDMETHODCALLTYPE put_CLXCmdLine(
734         BSTR CLXCmdLine) = 0;
735 
736     virtual HRESULT STDMETHODCALLTYPE get_CLXCmdLine(
737         BSTR *pCLXCmdLine) = 0;
738 
739 };
740 #ifdef __CRT_UUID_DECL
741 __CRT_UUID_DECL(IRDPSRAPIDebug, 0xaa1e42b5, 0x496d, 0x4ca4, 0xa6,0x90, 0x34,0x8d,0xcb,0x2e,0xc4,0xad)
742 #endif
743 #else
744 typedef struct IRDPSRAPIDebugVtbl {
745     BEGIN_INTERFACE
746 
747     /*** IUnknown methods ***/
748     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
749         IRDPSRAPIDebug *This,
750         REFIID riid,
751         void **ppvObject);
752 
753     ULONG (STDMETHODCALLTYPE *AddRef)(
754         IRDPSRAPIDebug *This);
755 
756     ULONG (STDMETHODCALLTYPE *Release)(
757         IRDPSRAPIDebug *This);
758 
759     /*** IRDPSRAPIDebug methods ***/
760     HRESULT (STDMETHODCALLTYPE *put_CLXCmdLine)(
761         IRDPSRAPIDebug *This,
762         BSTR CLXCmdLine);
763 
764     HRESULT (STDMETHODCALLTYPE *get_CLXCmdLine)(
765         IRDPSRAPIDebug *This,
766         BSTR *pCLXCmdLine);
767 
768     END_INTERFACE
769 } IRDPSRAPIDebugVtbl;
770 
771 interface IRDPSRAPIDebug {
772     CONST_VTBL IRDPSRAPIDebugVtbl* lpVtbl;
773 };
774 
775 #ifdef COBJMACROS
776 #ifndef WIDL_C_INLINE_WRAPPERS
777 /*** IUnknown methods ***/
778 #define IRDPSRAPIDebug_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
779 #define IRDPSRAPIDebug_AddRef(This) (This)->lpVtbl->AddRef(This)
780 #define IRDPSRAPIDebug_Release(This) (This)->lpVtbl->Release(This)
781 /*** IRDPSRAPIDebug methods ***/
782 #define IRDPSRAPIDebug_put_CLXCmdLine(This,CLXCmdLine) (This)->lpVtbl->put_CLXCmdLine(This,CLXCmdLine)
783 #define IRDPSRAPIDebug_get_CLXCmdLine(This,pCLXCmdLine) (This)->lpVtbl->get_CLXCmdLine(This,pCLXCmdLine)
784 #else
785 /*** IUnknown methods ***/
786 static FORCEINLINE HRESULT IRDPSRAPIDebug_QueryInterface(IRDPSRAPIDebug* This,REFIID riid,void **ppvObject) {
787     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
788 }
789 static FORCEINLINE ULONG IRDPSRAPIDebug_AddRef(IRDPSRAPIDebug* This) {
790     return This->lpVtbl->AddRef(This);
791 }
792 static FORCEINLINE ULONG IRDPSRAPIDebug_Release(IRDPSRAPIDebug* This) {
793     return This->lpVtbl->Release(This);
794 }
795 /*** IRDPSRAPIDebug methods ***/
796 static FORCEINLINE HRESULT IRDPSRAPIDebug_put_CLXCmdLine(IRDPSRAPIDebug* This,BSTR CLXCmdLine) {
797     return This->lpVtbl->put_CLXCmdLine(This,CLXCmdLine);
798 }
799 static FORCEINLINE HRESULT IRDPSRAPIDebug_get_CLXCmdLine(IRDPSRAPIDebug* This,BSTR *pCLXCmdLine) {
800     return This->lpVtbl->get_CLXCmdLine(This,pCLXCmdLine);
801 }
802 #endif
803 #endif
804 
805 #endif
806 
807 
808 #endif  /* __IRDPSRAPIDebug_INTERFACE_DEFINED__ */
809 
810 /*****************************************************************************
811  * IRDPSRAPIPerfCounterLogger interface
812  */
813 #ifndef __IRDPSRAPIPerfCounterLogger_INTERFACE_DEFINED__
814 #define __IRDPSRAPIPerfCounterLogger_INTERFACE_DEFINED__
815 
816 DEFINE_GUID(IID_IRDPSRAPIPerfCounterLogger, 0x071c2533, 0x0fa4, 0x4e8f, 0xae,0x83, 0x9c,0x10,0xb4,0x30,0x5a,0xb5);
817 #if defined(__cplusplus) && !defined(CINTERFACE)
818 MIDL_INTERFACE("071c2533-0fa4-4e8f-ae83-9c10b4305ab5")
819 IRDPSRAPIPerfCounterLogger : public IUnknown
820 {
821     virtual HRESULT STDMETHODCALLTYPE LogValue(
822         INT64 lValue) = 0;
823 
824 };
825 #ifdef __CRT_UUID_DECL
826 __CRT_UUID_DECL(IRDPSRAPIPerfCounterLogger, 0x071c2533, 0x0fa4, 0x4e8f, 0xae,0x83, 0x9c,0x10,0xb4,0x30,0x5a,0xb5)
827 #endif
828 #else
829 typedef struct IRDPSRAPIPerfCounterLoggerVtbl {
830     BEGIN_INTERFACE
831 
832     /*** IUnknown methods ***/
833     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
834         IRDPSRAPIPerfCounterLogger *This,
835         REFIID riid,
836         void **ppvObject);
837 
838     ULONG (STDMETHODCALLTYPE *AddRef)(
839         IRDPSRAPIPerfCounterLogger *This);
840 
841     ULONG (STDMETHODCALLTYPE *Release)(
842         IRDPSRAPIPerfCounterLogger *This);
843 
844     /*** IRDPSRAPIPerfCounterLogger methods ***/
845     HRESULT (STDMETHODCALLTYPE *LogValue)(
846         IRDPSRAPIPerfCounterLogger *This,
847         INT64 lValue);
848 
849     END_INTERFACE
850 } IRDPSRAPIPerfCounterLoggerVtbl;
851 
852 interface IRDPSRAPIPerfCounterLogger {
853     CONST_VTBL IRDPSRAPIPerfCounterLoggerVtbl* lpVtbl;
854 };
855 
856 #ifdef COBJMACROS
857 #ifndef WIDL_C_INLINE_WRAPPERS
858 /*** IUnknown methods ***/
859 #define IRDPSRAPIPerfCounterLogger_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
860 #define IRDPSRAPIPerfCounterLogger_AddRef(This) (This)->lpVtbl->AddRef(This)
861 #define IRDPSRAPIPerfCounterLogger_Release(This) (This)->lpVtbl->Release(This)
862 /*** IRDPSRAPIPerfCounterLogger methods ***/
863 #define IRDPSRAPIPerfCounterLogger_LogValue(This,lValue) (This)->lpVtbl->LogValue(This,lValue)
864 #else
865 /*** IUnknown methods ***/
866 static FORCEINLINE HRESULT IRDPSRAPIPerfCounterLogger_QueryInterface(IRDPSRAPIPerfCounterLogger* This,REFIID riid,void **ppvObject) {
867     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
868 }
869 static FORCEINLINE ULONG IRDPSRAPIPerfCounterLogger_AddRef(IRDPSRAPIPerfCounterLogger* This) {
870     return This->lpVtbl->AddRef(This);
871 }
872 static FORCEINLINE ULONG IRDPSRAPIPerfCounterLogger_Release(IRDPSRAPIPerfCounterLogger* This) {
873     return This->lpVtbl->Release(This);
874 }
875 /*** IRDPSRAPIPerfCounterLogger methods ***/
876 static FORCEINLINE HRESULT IRDPSRAPIPerfCounterLogger_LogValue(IRDPSRAPIPerfCounterLogger* This,INT64 lValue) {
877     return This->lpVtbl->LogValue(This,lValue);
878 }
879 #endif
880 #endif
881 
882 #endif
883 
884 
885 #endif  /* __IRDPSRAPIPerfCounterLogger_INTERFACE_DEFINED__ */
886 
887 /*****************************************************************************
888  * IRDPSRAPIPerfCounterLoggingManager interface
889  */
890 #ifndef __IRDPSRAPIPerfCounterLoggingManager_INTERFACE_DEFINED__
891 #define __IRDPSRAPIPerfCounterLoggingManager_INTERFACE_DEFINED__
892 
893 DEFINE_GUID(IID_IRDPSRAPIPerfCounterLoggingManager, 0x9a512c86, 0xac6e, 0x4a8e, 0xb1,0xa4, 0xfc,0xef,0x36,0x3f,0x6e,0x64);
894 #if defined(__cplusplus) && !defined(CINTERFACE)
895 MIDL_INTERFACE("9a512c86-ac6e-4a8e-b1a4-fcef363f6e64")
896 IRDPSRAPIPerfCounterLoggingManager : public IUnknown
897 {
898     virtual HRESULT STDMETHODCALLTYPE CreateLogger(
899         BSTR bstrCounterName,
900         IRDPSRAPIPerfCounterLogger **ppLogger) = 0;
901 
902 };
903 #ifdef __CRT_UUID_DECL
904 __CRT_UUID_DECL(IRDPSRAPIPerfCounterLoggingManager, 0x9a512c86, 0xac6e, 0x4a8e, 0xb1,0xa4, 0xfc,0xef,0x36,0x3f,0x6e,0x64)
905 #endif
906 #else
907 typedef struct IRDPSRAPIPerfCounterLoggingManagerVtbl {
908     BEGIN_INTERFACE
909 
910     /*** IUnknown methods ***/
911     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
912         IRDPSRAPIPerfCounterLoggingManager *This,
913         REFIID riid,
914         void **ppvObject);
915 
916     ULONG (STDMETHODCALLTYPE *AddRef)(
917         IRDPSRAPIPerfCounterLoggingManager *This);
918 
919     ULONG (STDMETHODCALLTYPE *Release)(
920         IRDPSRAPIPerfCounterLoggingManager *This);
921 
922     /*** IRDPSRAPIPerfCounterLoggingManager methods ***/
923     HRESULT (STDMETHODCALLTYPE *CreateLogger)(
924         IRDPSRAPIPerfCounterLoggingManager *This,
925         BSTR bstrCounterName,
926         IRDPSRAPIPerfCounterLogger **ppLogger);
927 
928     END_INTERFACE
929 } IRDPSRAPIPerfCounterLoggingManagerVtbl;
930 
931 interface IRDPSRAPIPerfCounterLoggingManager {
932     CONST_VTBL IRDPSRAPIPerfCounterLoggingManagerVtbl* lpVtbl;
933 };
934 
935 #ifdef COBJMACROS
936 #ifndef WIDL_C_INLINE_WRAPPERS
937 /*** IUnknown methods ***/
938 #define IRDPSRAPIPerfCounterLoggingManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
939 #define IRDPSRAPIPerfCounterLoggingManager_AddRef(This) (This)->lpVtbl->AddRef(This)
940 #define IRDPSRAPIPerfCounterLoggingManager_Release(This) (This)->lpVtbl->Release(This)
941 /*** IRDPSRAPIPerfCounterLoggingManager methods ***/
942 #define IRDPSRAPIPerfCounterLoggingManager_CreateLogger(This,bstrCounterName,ppLogger) (This)->lpVtbl->CreateLogger(This,bstrCounterName,ppLogger)
943 #else
944 /*** IUnknown methods ***/
945 static FORCEINLINE HRESULT IRDPSRAPIPerfCounterLoggingManager_QueryInterface(IRDPSRAPIPerfCounterLoggingManager* This,REFIID riid,void **ppvObject) {
946     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
947 }
948 static FORCEINLINE ULONG IRDPSRAPIPerfCounterLoggingManager_AddRef(IRDPSRAPIPerfCounterLoggingManager* This) {
949     return This->lpVtbl->AddRef(This);
950 }
951 static FORCEINLINE ULONG IRDPSRAPIPerfCounterLoggingManager_Release(IRDPSRAPIPerfCounterLoggingManager* This) {
952     return This->lpVtbl->Release(This);
953 }
954 /*** IRDPSRAPIPerfCounterLoggingManager methods ***/
955 static FORCEINLINE HRESULT IRDPSRAPIPerfCounterLoggingManager_CreateLogger(IRDPSRAPIPerfCounterLoggingManager* This,BSTR bstrCounterName,IRDPSRAPIPerfCounterLogger **ppLogger) {
956     return This->lpVtbl->CreateLogger(This,bstrCounterName,ppLogger);
957 }
958 #endif
959 #endif
960 
961 #endif
962 
963 
964 #endif  /* __IRDPSRAPIPerfCounterLoggingManager_INTERFACE_DEFINED__ */
965 
966 /*****************************************************************************
967  * IRDPSRAPIAudioStream interface
968  */
969 #ifndef __IRDPSRAPIAudioStream_INTERFACE_DEFINED__
970 #define __IRDPSRAPIAudioStream_INTERFACE_DEFINED__
971 
972 DEFINE_GUID(IID_IRDPSRAPIAudioStream, 0xe3e30ef9, 0x89c6, 0x4541, 0xba,0x3b, 0x19,0x33,0x6a,0xc6,0xd3,0x1c);
973 #if defined(__cplusplus) && !defined(CINTERFACE)
974 MIDL_INTERFACE("e3e30ef9-89c6-4541-ba3b-19336ac6d31c")
975 IRDPSRAPIAudioStream : public IUnknown
976 {
977     virtual HRESULT STDMETHODCALLTYPE Initialize(
978         INT64 *pnPeriodInHundredNsIntervals) = 0;
979 
980     virtual HRESULT STDMETHODCALLTYPE Start(
981         ) = 0;
982 
983     virtual HRESULT STDMETHODCALLTYPE Stop(
984         ) = 0;
985 
986     virtual HRESULT STDMETHODCALLTYPE GetBuffer(
987         BYTE **ppbData,
988         UINT32 *pcbData,
989         UINT64 *pTimestamp) = 0;
990 
991     virtual HRESULT STDMETHODCALLTYPE FreeBuffer(
992         ) = 0;
993 
994 };
995 #ifdef __CRT_UUID_DECL
996 __CRT_UUID_DECL(IRDPSRAPIAudioStream, 0xe3e30ef9, 0x89c6, 0x4541, 0xba,0x3b, 0x19,0x33,0x6a,0xc6,0xd3,0x1c)
997 #endif
998 #else
999 typedef struct IRDPSRAPIAudioStreamVtbl {
1000     BEGIN_INTERFACE
1001 
1002     /*** IUnknown methods ***/
1003     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1004         IRDPSRAPIAudioStream *This,
1005         REFIID riid,
1006         void **ppvObject);
1007 
1008     ULONG (STDMETHODCALLTYPE *AddRef)(
1009         IRDPSRAPIAudioStream *This);
1010 
1011     ULONG (STDMETHODCALLTYPE *Release)(
1012         IRDPSRAPIAudioStream *This);
1013 
1014     /*** IRDPSRAPIAudioStream methods ***/
1015     HRESULT (STDMETHODCALLTYPE *Initialize)(
1016         IRDPSRAPIAudioStream *This,
1017         INT64 *pnPeriodInHundredNsIntervals);
1018 
1019     HRESULT (STDMETHODCALLTYPE *Start)(
1020         IRDPSRAPIAudioStream *This);
1021 
1022     HRESULT (STDMETHODCALLTYPE *Stop)(
1023         IRDPSRAPIAudioStream *This);
1024 
1025     HRESULT (STDMETHODCALLTYPE *GetBuffer)(
1026         IRDPSRAPIAudioStream *This,
1027         BYTE **ppbData,
1028         UINT32 *pcbData,
1029         UINT64 *pTimestamp);
1030 
1031     HRESULT (STDMETHODCALLTYPE *FreeBuffer)(
1032         IRDPSRAPIAudioStream *This);
1033 
1034     END_INTERFACE
1035 } IRDPSRAPIAudioStreamVtbl;
1036 
1037 interface IRDPSRAPIAudioStream {
1038     CONST_VTBL IRDPSRAPIAudioStreamVtbl* lpVtbl;
1039 };
1040 
1041 #ifdef COBJMACROS
1042 #ifndef WIDL_C_INLINE_WRAPPERS
1043 /*** IUnknown methods ***/
1044 #define IRDPSRAPIAudioStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1045 #define IRDPSRAPIAudioStream_AddRef(This) (This)->lpVtbl->AddRef(This)
1046 #define IRDPSRAPIAudioStream_Release(This) (This)->lpVtbl->Release(This)
1047 /*** IRDPSRAPIAudioStream methods ***/
1048 #define IRDPSRAPIAudioStream_Initialize(This,pnPeriodInHundredNsIntervals) (This)->lpVtbl->Initialize(This,pnPeriodInHundredNsIntervals)
1049 #define IRDPSRAPIAudioStream_Start(This) (This)->lpVtbl->Start(This)
1050 #define IRDPSRAPIAudioStream_Stop(This) (This)->lpVtbl->Stop(This)
1051 #define IRDPSRAPIAudioStream_GetBuffer(This,ppbData,pcbData,pTimestamp) (This)->lpVtbl->GetBuffer(This,ppbData,pcbData,pTimestamp)
1052 #define IRDPSRAPIAudioStream_FreeBuffer(This) (This)->lpVtbl->FreeBuffer(This)
1053 #else
1054 /*** IUnknown methods ***/
1055 static FORCEINLINE HRESULT IRDPSRAPIAudioStream_QueryInterface(IRDPSRAPIAudioStream* This,REFIID riid,void **ppvObject) {
1056     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1057 }
1058 static FORCEINLINE ULONG IRDPSRAPIAudioStream_AddRef(IRDPSRAPIAudioStream* This) {
1059     return This->lpVtbl->AddRef(This);
1060 }
1061 static FORCEINLINE ULONG IRDPSRAPIAudioStream_Release(IRDPSRAPIAudioStream* This) {
1062     return This->lpVtbl->Release(This);
1063 }
1064 /*** IRDPSRAPIAudioStream methods ***/
1065 static FORCEINLINE HRESULT IRDPSRAPIAudioStream_Initialize(IRDPSRAPIAudioStream* This,INT64 *pnPeriodInHundredNsIntervals) {
1066     return This->lpVtbl->Initialize(This,pnPeriodInHundredNsIntervals);
1067 }
1068 static FORCEINLINE HRESULT IRDPSRAPIAudioStream_Start(IRDPSRAPIAudioStream* This) {
1069     return This->lpVtbl->Start(This);
1070 }
1071 static FORCEINLINE HRESULT IRDPSRAPIAudioStream_Stop(IRDPSRAPIAudioStream* This) {
1072     return This->lpVtbl->Stop(This);
1073 }
1074 static FORCEINLINE HRESULT IRDPSRAPIAudioStream_GetBuffer(IRDPSRAPIAudioStream* This,BYTE **ppbData,UINT32 *pcbData,UINT64 *pTimestamp) {
1075     return This->lpVtbl->GetBuffer(This,ppbData,pcbData,pTimestamp);
1076 }
1077 static FORCEINLINE HRESULT IRDPSRAPIAudioStream_FreeBuffer(IRDPSRAPIAudioStream* This) {
1078     return This->lpVtbl->FreeBuffer(This);
1079 }
1080 #endif
1081 #endif
1082 
1083 #endif
1084 
1085 
1086 #endif  /* __IRDPSRAPIAudioStream_INTERFACE_DEFINED__ */
1087 
1088 /*****************************************************************************
1089  * IRDPSRAPIClipboardUseEvents interface
1090  */
1091 #ifndef __IRDPSRAPIClipboardUseEvents_INTERFACE_DEFINED__
1092 #define __IRDPSRAPIClipboardUseEvents_INTERFACE_DEFINED__
1093 
1094 DEFINE_GUID(IID_IRDPSRAPIClipboardUseEvents, 0xd559f59a, 0x7a27, 0x4138, 0x87,0x63, 0x24,0x7c,0xe5,0xf6,0x59,0xa8);
1095 #if defined(__cplusplus) && !defined(CINTERFACE)
1096 MIDL_INTERFACE("d559f59a-7a27-4138-8763-247ce5f659a8")
1097 IRDPSRAPIClipboardUseEvents : public IUnknown
1098 {
1099     virtual HRESULT STDMETHODCALLTYPE OnPasteFromClipboard(
1100         UINT clipboardFormat,
1101         IDispatch *pAttendee,
1102         VARIANT_BOOL *pRetVal) = 0;
1103 
1104 };
1105 #ifdef __CRT_UUID_DECL
1106 __CRT_UUID_DECL(IRDPSRAPIClipboardUseEvents, 0xd559f59a, 0x7a27, 0x4138, 0x87,0x63, 0x24,0x7c,0xe5,0xf6,0x59,0xa8)
1107 #endif
1108 #else
1109 typedef struct IRDPSRAPIClipboardUseEventsVtbl {
1110     BEGIN_INTERFACE
1111 
1112     /*** IUnknown methods ***/
1113     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1114         IRDPSRAPIClipboardUseEvents *This,
1115         REFIID riid,
1116         void **ppvObject);
1117 
1118     ULONG (STDMETHODCALLTYPE *AddRef)(
1119         IRDPSRAPIClipboardUseEvents *This);
1120 
1121     ULONG (STDMETHODCALLTYPE *Release)(
1122         IRDPSRAPIClipboardUseEvents *This);
1123 
1124     /*** IRDPSRAPIClipboardUseEvents methods ***/
1125     HRESULT (STDMETHODCALLTYPE *OnPasteFromClipboard)(
1126         IRDPSRAPIClipboardUseEvents *This,
1127         UINT clipboardFormat,
1128         IDispatch *pAttendee,
1129         VARIANT_BOOL *pRetVal);
1130 
1131     END_INTERFACE
1132 } IRDPSRAPIClipboardUseEventsVtbl;
1133 
1134 interface IRDPSRAPIClipboardUseEvents {
1135     CONST_VTBL IRDPSRAPIClipboardUseEventsVtbl* lpVtbl;
1136 };
1137 
1138 #ifdef COBJMACROS
1139 #ifndef WIDL_C_INLINE_WRAPPERS
1140 /*** IUnknown methods ***/
1141 #define IRDPSRAPIClipboardUseEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1142 #define IRDPSRAPIClipboardUseEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
1143 #define IRDPSRAPIClipboardUseEvents_Release(This) (This)->lpVtbl->Release(This)
1144 /*** IRDPSRAPIClipboardUseEvents methods ***/
1145 #define IRDPSRAPIClipboardUseEvents_OnPasteFromClipboard(This,clipboardFormat,pAttendee,pRetVal) (This)->lpVtbl->OnPasteFromClipboard(This,clipboardFormat,pAttendee,pRetVal)
1146 #else
1147 /*** IUnknown methods ***/
1148 static FORCEINLINE HRESULT IRDPSRAPIClipboardUseEvents_QueryInterface(IRDPSRAPIClipboardUseEvents* This,REFIID riid,void **ppvObject) {
1149     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1150 }
1151 static FORCEINLINE ULONG IRDPSRAPIClipboardUseEvents_AddRef(IRDPSRAPIClipboardUseEvents* This) {
1152     return This->lpVtbl->AddRef(This);
1153 }
1154 static FORCEINLINE ULONG IRDPSRAPIClipboardUseEvents_Release(IRDPSRAPIClipboardUseEvents* This) {
1155     return This->lpVtbl->Release(This);
1156 }
1157 /*** IRDPSRAPIClipboardUseEvents methods ***/
1158 static FORCEINLINE HRESULT IRDPSRAPIClipboardUseEvents_OnPasteFromClipboard(IRDPSRAPIClipboardUseEvents* This,UINT clipboardFormat,IDispatch *pAttendee,VARIANT_BOOL *pRetVal) {
1159     return This->lpVtbl->OnPasteFromClipboard(This,clipboardFormat,pAttendee,pRetVal);
1160 }
1161 #endif
1162 #endif
1163 
1164 #endif
1165 
1166 
1167 #endif  /* __IRDPSRAPIClipboardUseEvents_INTERFACE_DEFINED__ */
1168 
1169 #ifndef __IRDPSRAPIApplication_FWD_DEFINED__
1170 #define __IRDPSRAPIApplication_FWD_DEFINED__
1171 typedef interface IRDPSRAPIApplication IRDPSRAPIApplication;
1172 #ifdef __cplusplus
1173 interface IRDPSRAPIApplication;
1174 #endif /* __cplusplus */
1175 #endif
1176 
1177 /*****************************************************************************
1178  * IRDPSRAPIWindow interface
1179  */
1180 #ifndef __IRDPSRAPIWindow_INTERFACE_DEFINED__
1181 #define __IRDPSRAPIWindow_INTERFACE_DEFINED__
1182 
1183 DEFINE_GUID(IID_IRDPSRAPIWindow, 0xbeafe0f9, 0xc77b, 0x4933, 0xba,0x9f, 0xa2,0x4c,0xdd,0xcc,0x27,0xcf);
1184 #if defined(__cplusplus) && !defined(CINTERFACE)
1185 MIDL_INTERFACE("beafe0f9-c77b-4933-ba9f-a24cddcc27cf")
1186 IRDPSRAPIWindow : public IDispatch
1187 {
1188     virtual HRESULT STDMETHODCALLTYPE get_Id(
1189         LONG *pRetVal) = 0;
1190 
1191     virtual HRESULT STDMETHODCALLTYPE get_Application(
1192         IRDPSRAPIApplication **pApplication) = 0;
1193 
1194     virtual HRESULT STDMETHODCALLTYPE get_Shared(
1195         VARIANT_BOOL *pRetVal) = 0;
1196 
1197     virtual HRESULT STDMETHODCALLTYPE put_Shared(
1198         VARIANT_BOOL NewVal) = 0;
1199 
1200     virtual HRESULT STDMETHODCALLTYPE get_Name(
1201         BSTR *pRetVal) = 0;
1202 
1203     virtual HRESULT STDMETHODCALLTYPE Show(
1204         ) = 0;
1205 
1206     virtual HRESULT STDMETHODCALLTYPE get_Flags(
1207         ULONG *pdwFlags) = 0;
1208 
1209 };
1210 #ifdef __CRT_UUID_DECL
1211 __CRT_UUID_DECL(IRDPSRAPIWindow, 0xbeafe0f9, 0xc77b, 0x4933, 0xba,0x9f, 0xa2,0x4c,0xdd,0xcc,0x27,0xcf)
1212 #endif
1213 #else
1214 typedef struct IRDPSRAPIWindowVtbl {
1215     BEGIN_INTERFACE
1216 
1217     /*** IUnknown methods ***/
1218     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1219         IRDPSRAPIWindow *This,
1220         REFIID riid,
1221         void **ppvObject);
1222 
1223     ULONG (STDMETHODCALLTYPE *AddRef)(
1224         IRDPSRAPIWindow *This);
1225 
1226     ULONG (STDMETHODCALLTYPE *Release)(
1227         IRDPSRAPIWindow *This);
1228 
1229     /*** IDispatch methods ***/
1230     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1231         IRDPSRAPIWindow *This,
1232         UINT *pctinfo);
1233 
1234     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1235         IRDPSRAPIWindow *This,
1236         UINT iTInfo,
1237         LCID lcid,
1238         ITypeInfo **ppTInfo);
1239 
1240     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1241         IRDPSRAPIWindow *This,
1242         REFIID riid,
1243         LPOLESTR *rgszNames,
1244         UINT cNames,
1245         LCID lcid,
1246         DISPID *rgDispId);
1247 
1248     HRESULT (STDMETHODCALLTYPE *Invoke)(
1249         IRDPSRAPIWindow *This,
1250         DISPID dispIdMember,
1251         REFIID riid,
1252         LCID lcid,
1253         WORD wFlags,
1254         DISPPARAMS *pDispParams,
1255         VARIANT *pVarResult,
1256         EXCEPINFO *pExcepInfo,
1257         UINT *puArgErr);
1258 
1259     /*** IRDPSRAPIWindow methods ***/
1260     HRESULT (STDMETHODCALLTYPE *get_Id)(
1261         IRDPSRAPIWindow *This,
1262         LONG *pRetVal);
1263 
1264     HRESULT (STDMETHODCALLTYPE *get_Application)(
1265         IRDPSRAPIWindow *This,
1266         IRDPSRAPIApplication **pApplication);
1267 
1268     HRESULT (STDMETHODCALLTYPE *get_Shared)(
1269         IRDPSRAPIWindow *This,
1270         VARIANT_BOOL *pRetVal);
1271 
1272     HRESULT (STDMETHODCALLTYPE *put_Shared)(
1273         IRDPSRAPIWindow *This,
1274         VARIANT_BOOL NewVal);
1275 
1276     HRESULT (STDMETHODCALLTYPE *get_Name)(
1277         IRDPSRAPIWindow *This,
1278         BSTR *pRetVal);
1279 
1280     HRESULT (STDMETHODCALLTYPE *Show)(
1281         IRDPSRAPIWindow *This);
1282 
1283     HRESULT (STDMETHODCALLTYPE *get_Flags)(
1284         IRDPSRAPIWindow *This,
1285         ULONG *pdwFlags);
1286 
1287     END_INTERFACE
1288 } IRDPSRAPIWindowVtbl;
1289 
1290 interface IRDPSRAPIWindow {
1291     CONST_VTBL IRDPSRAPIWindowVtbl* lpVtbl;
1292 };
1293 
1294 #ifdef COBJMACROS
1295 #ifndef WIDL_C_INLINE_WRAPPERS
1296 /*** IUnknown methods ***/
1297 #define IRDPSRAPIWindow_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1298 #define IRDPSRAPIWindow_AddRef(This) (This)->lpVtbl->AddRef(This)
1299 #define IRDPSRAPIWindow_Release(This) (This)->lpVtbl->Release(This)
1300 /*** IDispatch methods ***/
1301 #define IRDPSRAPIWindow_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1302 #define IRDPSRAPIWindow_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1303 #define IRDPSRAPIWindow_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1304 #define IRDPSRAPIWindow_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1305 /*** IRDPSRAPIWindow methods ***/
1306 #define IRDPSRAPIWindow_get_Id(This,pRetVal) (This)->lpVtbl->get_Id(This,pRetVal)
1307 #define IRDPSRAPIWindow_get_Application(This,pApplication) (This)->lpVtbl->get_Application(This,pApplication)
1308 #define IRDPSRAPIWindow_get_Shared(This,pRetVal) (This)->lpVtbl->get_Shared(This,pRetVal)
1309 #define IRDPSRAPIWindow_put_Shared(This,NewVal) (This)->lpVtbl->put_Shared(This,NewVal)
1310 #define IRDPSRAPIWindow_get_Name(This,pRetVal) (This)->lpVtbl->get_Name(This,pRetVal)
1311 #define IRDPSRAPIWindow_Show(This) (This)->lpVtbl->Show(This)
1312 #define IRDPSRAPIWindow_get_Flags(This,pdwFlags) (This)->lpVtbl->get_Flags(This,pdwFlags)
1313 #else
1314 /*** IUnknown methods ***/
1315 static FORCEINLINE HRESULT IRDPSRAPIWindow_QueryInterface(IRDPSRAPIWindow* This,REFIID riid,void **ppvObject) {
1316     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1317 }
1318 static FORCEINLINE ULONG IRDPSRAPIWindow_AddRef(IRDPSRAPIWindow* This) {
1319     return This->lpVtbl->AddRef(This);
1320 }
1321 static FORCEINLINE ULONG IRDPSRAPIWindow_Release(IRDPSRAPIWindow* This) {
1322     return This->lpVtbl->Release(This);
1323 }
1324 /*** IDispatch methods ***/
1325 static FORCEINLINE HRESULT IRDPSRAPIWindow_GetTypeInfoCount(IRDPSRAPIWindow* This,UINT *pctinfo) {
1326     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1327 }
1328 static FORCEINLINE HRESULT IRDPSRAPIWindow_GetTypeInfo(IRDPSRAPIWindow* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1329     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1330 }
1331 static FORCEINLINE HRESULT IRDPSRAPIWindow_GetIDsOfNames(IRDPSRAPIWindow* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1332     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1333 }
1334 static FORCEINLINE HRESULT IRDPSRAPIWindow_Invoke(IRDPSRAPIWindow* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1335     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1336 }
1337 /*** IRDPSRAPIWindow methods ***/
1338 static FORCEINLINE HRESULT IRDPSRAPIWindow_get_Id(IRDPSRAPIWindow* This,LONG *pRetVal) {
1339     return This->lpVtbl->get_Id(This,pRetVal);
1340 }
1341 static FORCEINLINE HRESULT IRDPSRAPIWindow_get_Application(IRDPSRAPIWindow* This,IRDPSRAPIApplication **pApplication) {
1342     return This->lpVtbl->get_Application(This,pApplication);
1343 }
1344 static FORCEINLINE HRESULT IRDPSRAPIWindow_get_Shared(IRDPSRAPIWindow* This,VARIANT_BOOL *pRetVal) {
1345     return This->lpVtbl->get_Shared(This,pRetVal);
1346 }
1347 static FORCEINLINE HRESULT IRDPSRAPIWindow_put_Shared(IRDPSRAPIWindow* This,VARIANT_BOOL NewVal) {
1348     return This->lpVtbl->put_Shared(This,NewVal);
1349 }
1350 static FORCEINLINE HRESULT IRDPSRAPIWindow_get_Name(IRDPSRAPIWindow* This,BSTR *pRetVal) {
1351     return This->lpVtbl->get_Name(This,pRetVal);
1352 }
1353 static FORCEINLINE HRESULT IRDPSRAPIWindow_Show(IRDPSRAPIWindow* This) {
1354     return This->lpVtbl->Show(This);
1355 }
1356 static FORCEINLINE HRESULT IRDPSRAPIWindow_get_Flags(IRDPSRAPIWindow* This,ULONG *pdwFlags) {
1357     return This->lpVtbl->get_Flags(This,pdwFlags);
1358 }
1359 #endif
1360 #endif
1361 
1362 #endif
1363 
1364 
1365 #endif  /* __IRDPSRAPIWindow_INTERFACE_DEFINED__ */
1366 
1367 /*****************************************************************************
1368  * IRDPSRAPIWindowList interface
1369  */
1370 #ifndef __IRDPSRAPIWindowList_INTERFACE_DEFINED__
1371 #define __IRDPSRAPIWindowList_INTERFACE_DEFINED__
1372 
1373 DEFINE_GUID(IID_IRDPSRAPIWindowList, 0x8a05ce44, 0x715a, 0x4116, 0xa1,0x89, 0xa1,0x18,0xf3,0x0a,0x07,0xbd);
1374 #if defined(__cplusplus) && !defined(CINTERFACE)
1375 MIDL_INTERFACE("8a05ce44-715a-4116-a189-a118f30a07bd")
1376 IRDPSRAPIWindowList : public IDispatch
1377 {
1378     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
1379         IUnknown **retval) = 0;
1380 
1381     virtual HRESULT STDMETHODCALLTYPE get_Item(
1382         LONG item,
1383         IRDPSRAPIWindow **pWindow) = 0;
1384 
1385 };
1386 #ifdef __CRT_UUID_DECL
1387 __CRT_UUID_DECL(IRDPSRAPIWindowList, 0x8a05ce44, 0x715a, 0x4116, 0xa1,0x89, 0xa1,0x18,0xf3,0x0a,0x07,0xbd)
1388 #endif
1389 #else
1390 typedef struct IRDPSRAPIWindowListVtbl {
1391     BEGIN_INTERFACE
1392 
1393     /*** IUnknown methods ***/
1394     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1395         IRDPSRAPIWindowList *This,
1396         REFIID riid,
1397         void **ppvObject);
1398 
1399     ULONG (STDMETHODCALLTYPE *AddRef)(
1400         IRDPSRAPIWindowList *This);
1401 
1402     ULONG (STDMETHODCALLTYPE *Release)(
1403         IRDPSRAPIWindowList *This);
1404 
1405     /*** IDispatch methods ***/
1406     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1407         IRDPSRAPIWindowList *This,
1408         UINT *pctinfo);
1409 
1410     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1411         IRDPSRAPIWindowList *This,
1412         UINT iTInfo,
1413         LCID lcid,
1414         ITypeInfo **ppTInfo);
1415 
1416     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1417         IRDPSRAPIWindowList *This,
1418         REFIID riid,
1419         LPOLESTR *rgszNames,
1420         UINT cNames,
1421         LCID lcid,
1422         DISPID *rgDispId);
1423 
1424     HRESULT (STDMETHODCALLTYPE *Invoke)(
1425         IRDPSRAPIWindowList *This,
1426         DISPID dispIdMember,
1427         REFIID riid,
1428         LCID lcid,
1429         WORD wFlags,
1430         DISPPARAMS *pDispParams,
1431         VARIANT *pVarResult,
1432         EXCEPINFO *pExcepInfo,
1433         UINT *puArgErr);
1434 
1435     /*** IRDPSRAPIWindowList methods ***/
1436     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
1437         IRDPSRAPIWindowList *This,
1438         IUnknown **retval);
1439 
1440     HRESULT (STDMETHODCALLTYPE *get_Item)(
1441         IRDPSRAPIWindowList *This,
1442         LONG item,
1443         IRDPSRAPIWindow **pWindow);
1444 
1445     END_INTERFACE
1446 } IRDPSRAPIWindowListVtbl;
1447 
1448 interface IRDPSRAPIWindowList {
1449     CONST_VTBL IRDPSRAPIWindowListVtbl* lpVtbl;
1450 };
1451 
1452 #ifdef COBJMACROS
1453 #ifndef WIDL_C_INLINE_WRAPPERS
1454 /*** IUnknown methods ***/
1455 #define IRDPSRAPIWindowList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1456 #define IRDPSRAPIWindowList_AddRef(This) (This)->lpVtbl->AddRef(This)
1457 #define IRDPSRAPIWindowList_Release(This) (This)->lpVtbl->Release(This)
1458 /*** IDispatch methods ***/
1459 #define IRDPSRAPIWindowList_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1460 #define IRDPSRAPIWindowList_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1461 #define IRDPSRAPIWindowList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1462 #define IRDPSRAPIWindowList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1463 /*** IRDPSRAPIWindowList methods ***/
1464 #define IRDPSRAPIWindowList_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval)
1465 #define IRDPSRAPIWindowList_get_Item(This,item,pWindow) (This)->lpVtbl->get_Item(This,item,pWindow)
1466 #else
1467 /*** IUnknown methods ***/
1468 static FORCEINLINE HRESULT IRDPSRAPIWindowList_QueryInterface(IRDPSRAPIWindowList* This,REFIID riid,void **ppvObject) {
1469     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1470 }
1471 static FORCEINLINE ULONG IRDPSRAPIWindowList_AddRef(IRDPSRAPIWindowList* This) {
1472     return This->lpVtbl->AddRef(This);
1473 }
1474 static FORCEINLINE ULONG IRDPSRAPIWindowList_Release(IRDPSRAPIWindowList* This) {
1475     return This->lpVtbl->Release(This);
1476 }
1477 /*** IDispatch methods ***/
1478 static FORCEINLINE HRESULT IRDPSRAPIWindowList_GetTypeInfoCount(IRDPSRAPIWindowList* This,UINT *pctinfo) {
1479     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1480 }
1481 static FORCEINLINE HRESULT IRDPSRAPIWindowList_GetTypeInfo(IRDPSRAPIWindowList* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1482     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1483 }
1484 static FORCEINLINE HRESULT IRDPSRAPIWindowList_GetIDsOfNames(IRDPSRAPIWindowList* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1485     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1486 }
1487 static FORCEINLINE HRESULT IRDPSRAPIWindowList_Invoke(IRDPSRAPIWindowList* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1488     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1489 }
1490 /*** IRDPSRAPIWindowList methods ***/
1491 static FORCEINLINE HRESULT IRDPSRAPIWindowList_get__NewEnum(IRDPSRAPIWindowList* This,IUnknown **retval) {
1492     return This->lpVtbl->get__NewEnum(This,retval);
1493 }
1494 static FORCEINLINE HRESULT IRDPSRAPIWindowList_get_Item(IRDPSRAPIWindowList* This,LONG item,IRDPSRAPIWindow **pWindow) {
1495     return This->lpVtbl->get_Item(This,item,pWindow);
1496 }
1497 #endif
1498 #endif
1499 
1500 #endif
1501 
1502 
1503 #endif  /* __IRDPSRAPIWindowList_INTERFACE_DEFINED__ */
1504 
1505 /*****************************************************************************
1506  * IRDPSRAPIApplication interface
1507  */
1508 #ifndef __IRDPSRAPIApplication_INTERFACE_DEFINED__
1509 #define __IRDPSRAPIApplication_INTERFACE_DEFINED__
1510 
1511 DEFINE_GUID(IID_IRDPSRAPIApplication, 0x41e7a09d, 0xeb7a, 0x436e, 0x93,0x5d, 0x78,0x0c,0xa2,0x62,0x83,0x24);
1512 #if defined(__cplusplus) && !defined(CINTERFACE)
1513 MIDL_INTERFACE("41e7a09d-eb7a-436e-935d-780ca2628324")
1514 IRDPSRAPIApplication : public IDispatch
1515 {
1516     virtual HRESULT STDMETHODCALLTYPE get_Windows(
1517         IRDPSRAPIWindowList **pWindowList) = 0;
1518 
1519     virtual HRESULT STDMETHODCALLTYPE get_Id(
1520         LONG *pRetVal) = 0;
1521 
1522     virtual HRESULT STDMETHODCALLTYPE get_Shared(
1523         VARIANT_BOOL *pRetVal) = 0;
1524 
1525     virtual HRESULT STDMETHODCALLTYPE put_Shared(
1526         VARIANT_BOOL NewVal) = 0;
1527 
1528     virtual HRESULT STDMETHODCALLTYPE get_Name(
1529         BSTR *pRetVal) = 0;
1530 
1531     virtual HRESULT STDMETHODCALLTYPE get_Flags(
1532         ULONG *pdwFlags) = 0;
1533 
1534 };
1535 #ifdef __CRT_UUID_DECL
1536 __CRT_UUID_DECL(IRDPSRAPIApplication, 0x41e7a09d, 0xeb7a, 0x436e, 0x93,0x5d, 0x78,0x0c,0xa2,0x62,0x83,0x24)
1537 #endif
1538 #else
1539 typedef struct IRDPSRAPIApplicationVtbl {
1540     BEGIN_INTERFACE
1541 
1542     /*** IUnknown methods ***/
1543     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1544         IRDPSRAPIApplication *This,
1545         REFIID riid,
1546         void **ppvObject);
1547 
1548     ULONG (STDMETHODCALLTYPE *AddRef)(
1549         IRDPSRAPIApplication *This);
1550 
1551     ULONG (STDMETHODCALLTYPE *Release)(
1552         IRDPSRAPIApplication *This);
1553 
1554     /*** IDispatch methods ***/
1555     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1556         IRDPSRAPIApplication *This,
1557         UINT *pctinfo);
1558 
1559     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1560         IRDPSRAPIApplication *This,
1561         UINT iTInfo,
1562         LCID lcid,
1563         ITypeInfo **ppTInfo);
1564 
1565     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1566         IRDPSRAPIApplication *This,
1567         REFIID riid,
1568         LPOLESTR *rgszNames,
1569         UINT cNames,
1570         LCID lcid,
1571         DISPID *rgDispId);
1572 
1573     HRESULT (STDMETHODCALLTYPE *Invoke)(
1574         IRDPSRAPIApplication *This,
1575         DISPID dispIdMember,
1576         REFIID riid,
1577         LCID lcid,
1578         WORD wFlags,
1579         DISPPARAMS *pDispParams,
1580         VARIANT *pVarResult,
1581         EXCEPINFO *pExcepInfo,
1582         UINT *puArgErr);
1583 
1584     /*** IRDPSRAPIApplication methods ***/
1585     HRESULT (STDMETHODCALLTYPE *get_Windows)(
1586         IRDPSRAPIApplication *This,
1587         IRDPSRAPIWindowList **pWindowList);
1588 
1589     HRESULT (STDMETHODCALLTYPE *get_Id)(
1590         IRDPSRAPIApplication *This,
1591         LONG *pRetVal);
1592 
1593     HRESULT (STDMETHODCALLTYPE *get_Shared)(
1594         IRDPSRAPIApplication *This,
1595         VARIANT_BOOL *pRetVal);
1596 
1597     HRESULT (STDMETHODCALLTYPE *put_Shared)(
1598         IRDPSRAPIApplication *This,
1599         VARIANT_BOOL NewVal);
1600 
1601     HRESULT (STDMETHODCALLTYPE *get_Name)(
1602         IRDPSRAPIApplication *This,
1603         BSTR *pRetVal);
1604 
1605     HRESULT (STDMETHODCALLTYPE *get_Flags)(
1606         IRDPSRAPIApplication *This,
1607         ULONG *pdwFlags);
1608 
1609     END_INTERFACE
1610 } IRDPSRAPIApplicationVtbl;
1611 
1612 interface IRDPSRAPIApplication {
1613     CONST_VTBL IRDPSRAPIApplicationVtbl* lpVtbl;
1614 };
1615 
1616 #ifdef COBJMACROS
1617 #ifndef WIDL_C_INLINE_WRAPPERS
1618 /*** IUnknown methods ***/
1619 #define IRDPSRAPIApplication_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1620 #define IRDPSRAPIApplication_AddRef(This) (This)->lpVtbl->AddRef(This)
1621 #define IRDPSRAPIApplication_Release(This) (This)->lpVtbl->Release(This)
1622 /*** IDispatch methods ***/
1623 #define IRDPSRAPIApplication_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1624 #define IRDPSRAPIApplication_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1625 #define IRDPSRAPIApplication_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1626 #define IRDPSRAPIApplication_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1627 /*** IRDPSRAPIApplication methods ***/
1628 #define IRDPSRAPIApplication_get_Windows(This,pWindowList) (This)->lpVtbl->get_Windows(This,pWindowList)
1629 #define IRDPSRAPIApplication_get_Id(This,pRetVal) (This)->lpVtbl->get_Id(This,pRetVal)
1630 #define IRDPSRAPIApplication_get_Shared(This,pRetVal) (This)->lpVtbl->get_Shared(This,pRetVal)
1631 #define IRDPSRAPIApplication_put_Shared(This,NewVal) (This)->lpVtbl->put_Shared(This,NewVal)
1632 #define IRDPSRAPIApplication_get_Name(This,pRetVal) (This)->lpVtbl->get_Name(This,pRetVal)
1633 #define IRDPSRAPIApplication_get_Flags(This,pdwFlags) (This)->lpVtbl->get_Flags(This,pdwFlags)
1634 #else
1635 /*** IUnknown methods ***/
1636 static FORCEINLINE HRESULT IRDPSRAPIApplication_QueryInterface(IRDPSRAPIApplication* This,REFIID riid,void **ppvObject) {
1637     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1638 }
1639 static FORCEINLINE ULONG IRDPSRAPIApplication_AddRef(IRDPSRAPIApplication* This) {
1640     return This->lpVtbl->AddRef(This);
1641 }
1642 static FORCEINLINE ULONG IRDPSRAPIApplication_Release(IRDPSRAPIApplication* This) {
1643     return This->lpVtbl->Release(This);
1644 }
1645 /*** IDispatch methods ***/
1646 static FORCEINLINE HRESULT IRDPSRAPIApplication_GetTypeInfoCount(IRDPSRAPIApplication* This,UINT *pctinfo) {
1647     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1648 }
1649 static FORCEINLINE HRESULT IRDPSRAPIApplication_GetTypeInfo(IRDPSRAPIApplication* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1650     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1651 }
1652 static FORCEINLINE HRESULT IRDPSRAPIApplication_GetIDsOfNames(IRDPSRAPIApplication* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1653     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1654 }
1655 static FORCEINLINE HRESULT IRDPSRAPIApplication_Invoke(IRDPSRAPIApplication* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1656     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1657 }
1658 /*** IRDPSRAPIApplication methods ***/
1659 static FORCEINLINE HRESULT IRDPSRAPIApplication_get_Windows(IRDPSRAPIApplication* This,IRDPSRAPIWindowList **pWindowList) {
1660     return This->lpVtbl->get_Windows(This,pWindowList);
1661 }
1662 static FORCEINLINE HRESULT IRDPSRAPIApplication_get_Id(IRDPSRAPIApplication* This,LONG *pRetVal) {
1663     return This->lpVtbl->get_Id(This,pRetVal);
1664 }
1665 static FORCEINLINE HRESULT IRDPSRAPIApplication_get_Shared(IRDPSRAPIApplication* This,VARIANT_BOOL *pRetVal) {
1666     return This->lpVtbl->get_Shared(This,pRetVal);
1667 }
1668 static FORCEINLINE HRESULT IRDPSRAPIApplication_put_Shared(IRDPSRAPIApplication* This,VARIANT_BOOL NewVal) {
1669     return This->lpVtbl->put_Shared(This,NewVal);
1670 }
1671 static FORCEINLINE HRESULT IRDPSRAPIApplication_get_Name(IRDPSRAPIApplication* This,BSTR *pRetVal) {
1672     return This->lpVtbl->get_Name(This,pRetVal);
1673 }
1674 static FORCEINLINE HRESULT IRDPSRAPIApplication_get_Flags(IRDPSRAPIApplication* This,ULONG *pdwFlags) {
1675     return This->lpVtbl->get_Flags(This,pdwFlags);
1676 }
1677 #endif
1678 #endif
1679 
1680 #endif
1681 
1682 
1683 #endif  /* __IRDPSRAPIApplication_INTERFACE_DEFINED__ */
1684 
1685 /*****************************************************************************
1686  * IRDPSRAPIApplicationList interface
1687  */
1688 #ifndef __IRDPSRAPIApplicationList_INTERFACE_DEFINED__
1689 #define __IRDPSRAPIApplicationList_INTERFACE_DEFINED__
1690 
1691 DEFINE_GUID(IID_IRDPSRAPIApplicationList, 0xd4b4aeb3, 0x22dc, 0x4837, 0xb3,0xb6, 0x42,0xea,0x25,0x17,0x84,0x9a);
1692 #if defined(__cplusplus) && !defined(CINTERFACE)
1693 MIDL_INTERFACE("d4b4aeb3-22dc-4837-b3b6-42ea2517849a")
1694 IRDPSRAPIApplicationList : public IDispatch
1695 {
1696     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
1697         IUnknown **retval) = 0;
1698 
1699     virtual HRESULT STDMETHODCALLTYPE get_Item(
1700         LONG item,
1701         IRDPSRAPIApplication **pApplication) = 0;
1702 
1703 };
1704 #ifdef __CRT_UUID_DECL
1705 __CRT_UUID_DECL(IRDPSRAPIApplicationList, 0xd4b4aeb3, 0x22dc, 0x4837, 0xb3,0xb6, 0x42,0xea,0x25,0x17,0x84,0x9a)
1706 #endif
1707 #else
1708 typedef struct IRDPSRAPIApplicationListVtbl {
1709     BEGIN_INTERFACE
1710 
1711     /*** IUnknown methods ***/
1712     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1713         IRDPSRAPIApplicationList *This,
1714         REFIID riid,
1715         void **ppvObject);
1716 
1717     ULONG (STDMETHODCALLTYPE *AddRef)(
1718         IRDPSRAPIApplicationList *This);
1719 
1720     ULONG (STDMETHODCALLTYPE *Release)(
1721         IRDPSRAPIApplicationList *This);
1722 
1723     /*** IDispatch methods ***/
1724     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1725         IRDPSRAPIApplicationList *This,
1726         UINT *pctinfo);
1727 
1728     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1729         IRDPSRAPIApplicationList *This,
1730         UINT iTInfo,
1731         LCID lcid,
1732         ITypeInfo **ppTInfo);
1733 
1734     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1735         IRDPSRAPIApplicationList *This,
1736         REFIID riid,
1737         LPOLESTR *rgszNames,
1738         UINT cNames,
1739         LCID lcid,
1740         DISPID *rgDispId);
1741 
1742     HRESULT (STDMETHODCALLTYPE *Invoke)(
1743         IRDPSRAPIApplicationList *This,
1744         DISPID dispIdMember,
1745         REFIID riid,
1746         LCID lcid,
1747         WORD wFlags,
1748         DISPPARAMS *pDispParams,
1749         VARIANT *pVarResult,
1750         EXCEPINFO *pExcepInfo,
1751         UINT *puArgErr);
1752 
1753     /*** IRDPSRAPIApplicationList methods ***/
1754     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
1755         IRDPSRAPIApplicationList *This,
1756         IUnknown **retval);
1757 
1758     HRESULT (STDMETHODCALLTYPE *get_Item)(
1759         IRDPSRAPIApplicationList *This,
1760         LONG item,
1761         IRDPSRAPIApplication **pApplication);
1762 
1763     END_INTERFACE
1764 } IRDPSRAPIApplicationListVtbl;
1765 
1766 interface IRDPSRAPIApplicationList {
1767     CONST_VTBL IRDPSRAPIApplicationListVtbl* lpVtbl;
1768 };
1769 
1770 #ifdef COBJMACROS
1771 #ifndef WIDL_C_INLINE_WRAPPERS
1772 /*** IUnknown methods ***/
1773 #define IRDPSRAPIApplicationList_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1774 #define IRDPSRAPIApplicationList_AddRef(This) (This)->lpVtbl->AddRef(This)
1775 #define IRDPSRAPIApplicationList_Release(This) (This)->lpVtbl->Release(This)
1776 /*** IDispatch methods ***/
1777 #define IRDPSRAPIApplicationList_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1778 #define IRDPSRAPIApplicationList_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1779 #define IRDPSRAPIApplicationList_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1780 #define IRDPSRAPIApplicationList_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1781 /*** IRDPSRAPIApplicationList methods ***/
1782 #define IRDPSRAPIApplicationList_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval)
1783 #define IRDPSRAPIApplicationList_get_Item(This,item,pApplication) (This)->lpVtbl->get_Item(This,item,pApplication)
1784 #else
1785 /*** IUnknown methods ***/
1786 static FORCEINLINE HRESULT IRDPSRAPIApplicationList_QueryInterface(IRDPSRAPIApplicationList* This,REFIID riid,void **ppvObject) {
1787     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1788 }
1789 static FORCEINLINE ULONG IRDPSRAPIApplicationList_AddRef(IRDPSRAPIApplicationList* This) {
1790     return This->lpVtbl->AddRef(This);
1791 }
1792 static FORCEINLINE ULONG IRDPSRAPIApplicationList_Release(IRDPSRAPIApplicationList* This) {
1793     return This->lpVtbl->Release(This);
1794 }
1795 /*** IDispatch methods ***/
1796 static FORCEINLINE HRESULT IRDPSRAPIApplicationList_GetTypeInfoCount(IRDPSRAPIApplicationList* This,UINT *pctinfo) {
1797     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1798 }
1799 static FORCEINLINE HRESULT IRDPSRAPIApplicationList_GetTypeInfo(IRDPSRAPIApplicationList* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1800     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1801 }
1802 static FORCEINLINE HRESULT IRDPSRAPIApplicationList_GetIDsOfNames(IRDPSRAPIApplicationList* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1803     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1804 }
1805 static FORCEINLINE HRESULT IRDPSRAPIApplicationList_Invoke(IRDPSRAPIApplicationList* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1806     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1807 }
1808 /*** IRDPSRAPIApplicationList methods ***/
1809 static FORCEINLINE HRESULT IRDPSRAPIApplicationList_get__NewEnum(IRDPSRAPIApplicationList* This,IUnknown **retval) {
1810     return This->lpVtbl->get__NewEnum(This,retval);
1811 }
1812 static FORCEINLINE HRESULT IRDPSRAPIApplicationList_get_Item(IRDPSRAPIApplicationList* This,LONG item,IRDPSRAPIApplication **pApplication) {
1813     return This->lpVtbl->get_Item(This,item,pApplication);
1814 }
1815 #endif
1816 #endif
1817 
1818 #endif
1819 
1820 
1821 #endif  /* __IRDPSRAPIApplicationList_INTERFACE_DEFINED__ */
1822 
1823 /*****************************************************************************
1824  * IRDPSRAPIApplicationFilter interface
1825  */
1826 #ifndef __IRDPSRAPIApplicationFilter_INTERFACE_DEFINED__
1827 #define __IRDPSRAPIApplicationFilter_INTERFACE_DEFINED__
1828 
1829 DEFINE_GUID(IID_IRDPSRAPIApplicationFilter, 0xd20f10ca, 0x6637, 0x4f06, 0xb1,0xd5, 0x27,0x7e,0xa7,0xe5,0x16,0x0d);
1830 #if defined(__cplusplus) && !defined(CINTERFACE)
1831 MIDL_INTERFACE("d20f10ca-6637-4f06-b1d5-277ea7e5160d")
1832 IRDPSRAPIApplicationFilter : public IDispatch
1833 {
1834     virtual HRESULT STDMETHODCALLTYPE get_Applications(
1835         IRDPSRAPIApplicationList **pApplications) = 0;
1836 
1837     virtual HRESULT STDMETHODCALLTYPE get_Windows(
1838         IRDPSRAPIWindowList **pWindows) = 0;
1839 
1840     virtual HRESULT STDMETHODCALLTYPE get_Enabled(
1841         VARIANT_BOOL *pRetVal) = 0;
1842 
1843     virtual HRESULT STDMETHODCALLTYPE put_Enabled(
1844         VARIANT_BOOL NewVal) = 0;
1845 
1846 };
1847 #ifdef __CRT_UUID_DECL
1848 __CRT_UUID_DECL(IRDPSRAPIApplicationFilter, 0xd20f10ca, 0x6637, 0x4f06, 0xb1,0xd5, 0x27,0x7e,0xa7,0xe5,0x16,0x0d)
1849 #endif
1850 #else
1851 typedef struct IRDPSRAPIApplicationFilterVtbl {
1852     BEGIN_INTERFACE
1853 
1854     /*** IUnknown methods ***/
1855     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1856         IRDPSRAPIApplicationFilter *This,
1857         REFIID riid,
1858         void **ppvObject);
1859 
1860     ULONG (STDMETHODCALLTYPE *AddRef)(
1861         IRDPSRAPIApplicationFilter *This);
1862 
1863     ULONG (STDMETHODCALLTYPE *Release)(
1864         IRDPSRAPIApplicationFilter *This);
1865 
1866     /*** IDispatch methods ***/
1867     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
1868         IRDPSRAPIApplicationFilter *This,
1869         UINT *pctinfo);
1870 
1871     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
1872         IRDPSRAPIApplicationFilter *This,
1873         UINT iTInfo,
1874         LCID lcid,
1875         ITypeInfo **ppTInfo);
1876 
1877     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
1878         IRDPSRAPIApplicationFilter *This,
1879         REFIID riid,
1880         LPOLESTR *rgszNames,
1881         UINT cNames,
1882         LCID lcid,
1883         DISPID *rgDispId);
1884 
1885     HRESULT (STDMETHODCALLTYPE *Invoke)(
1886         IRDPSRAPIApplicationFilter *This,
1887         DISPID dispIdMember,
1888         REFIID riid,
1889         LCID lcid,
1890         WORD wFlags,
1891         DISPPARAMS *pDispParams,
1892         VARIANT *pVarResult,
1893         EXCEPINFO *pExcepInfo,
1894         UINT *puArgErr);
1895 
1896     /*** IRDPSRAPIApplicationFilter methods ***/
1897     HRESULT (STDMETHODCALLTYPE *get_Applications)(
1898         IRDPSRAPIApplicationFilter *This,
1899         IRDPSRAPIApplicationList **pApplications);
1900 
1901     HRESULT (STDMETHODCALLTYPE *get_Windows)(
1902         IRDPSRAPIApplicationFilter *This,
1903         IRDPSRAPIWindowList **pWindows);
1904 
1905     HRESULT (STDMETHODCALLTYPE *get_Enabled)(
1906         IRDPSRAPIApplicationFilter *This,
1907         VARIANT_BOOL *pRetVal);
1908 
1909     HRESULT (STDMETHODCALLTYPE *put_Enabled)(
1910         IRDPSRAPIApplicationFilter *This,
1911         VARIANT_BOOL NewVal);
1912 
1913     END_INTERFACE
1914 } IRDPSRAPIApplicationFilterVtbl;
1915 
1916 interface IRDPSRAPIApplicationFilter {
1917     CONST_VTBL IRDPSRAPIApplicationFilterVtbl* lpVtbl;
1918 };
1919 
1920 #ifdef COBJMACROS
1921 #ifndef WIDL_C_INLINE_WRAPPERS
1922 /*** IUnknown methods ***/
1923 #define IRDPSRAPIApplicationFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1924 #define IRDPSRAPIApplicationFilter_AddRef(This) (This)->lpVtbl->AddRef(This)
1925 #define IRDPSRAPIApplicationFilter_Release(This) (This)->lpVtbl->Release(This)
1926 /*** IDispatch methods ***/
1927 #define IRDPSRAPIApplicationFilter_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
1928 #define IRDPSRAPIApplicationFilter_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
1929 #define IRDPSRAPIApplicationFilter_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
1930 #define IRDPSRAPIApplicationFilter_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
1931 /*** IRDPSRAPIApplicationFilter methods ***/
1932 #define IRDPSRAPIApplicationFilter_get_Applications(This,pApplications) (This)->lpVtbl->get_Applications(This,pApplications)
1933 #define IRDPSRAPIApplicationFilter_get_Windows(This,pWindows) (This)->lpVtbl->get_Windows(This,pWindows)
1934 #define IRDPSRAPIApplicationFilter_get_Enabled(This,pRetVal) (This)->lpVtbl->get_Enabled(This,pRetVal)
1935 #define IRDPSRAPIApplicationFilter_put_Enabled(This,NewVal) (This)->lpVtbl->put_Enabled(This,NewVal)
1936 #else
1937 /*** IUnknown methods ***/
1938 static FORCEINLINE HRESULT IRDPSRAPIApplicationFilter_QueryInterface(IRDPSRAPIApplicationFilter* This,REFIID riid,void **ppvObject) {
1939     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1940 }
1941 static FORCEINLINE ULONG IRDPSRAPIApplicationFilter_AddRef(IRDPSRAPIApplicationFilter* This) {
1942     return This->lpVtbl->AddRef(This);
1943 }
1944 static FORCEINLINE ULONG IRDPSRAPIApplicationFilter_Release(IRDPSRAPIApplicationFilter* This) {
1945     return This->lpVtbl->Release(This);
1946 }
1947 /*** IDispatch methods ***/
1948 static FORCEINLINE HRESULT IRDPSRAPIApplicationFilter_GetTypeInfoCount(IRDPSRAPIApplicationFilter* This,UINT *pctinfo) {
1949     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
1950 }
1951 static FORCEINLINE HRESULT IRDPSRAPIApplicationFilter_GetTypeInfo(IRDPSRAPIApplicationFilter* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
1952     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
1953 }
1954 static FORCEINLINE HRESULT IRDPSRAPIApplicationFilter_GetIDsOfNames(IRDPSRAPIApplicationFilter* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
1955     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
1956 }
1957 static FORCEINLINE HRESULT IRDPSRAPIApplicationFilter_Invoke(IRDPSRAPIApplicationFilter* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
1958     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
1959 }
1960 /*** IRDPSRAPIApplicationFilter methods ***/
1961 static FORCEINLINE HRESULT IRDPSRAPIApplicationFilter_get_Applications(IRDPSRAPIApplicationFilter* This,IRDPSRAPIApplicationList **pApplications) {
1962     return This->lpVtbl->get_Applications(This,pApplications);
1963 }
1964 static FORCEINLINE HRESULT IRDPSRAPIApplicationFilter_get_Windows(IRDPSRAPIApplicationFilter* This,IRDPSRAPIWindowList **pWindows) {
1965     return This->lpVtbl->get_Windows(This,pWindows);
1966 }
1967 static FORCEINLINE HRESULT IRDPSRAPIApplicationFilter_get_Enabled(IRDPSRAPIApplicationFilter* This,VARIANT_BOOL *pRetVal) {
1968     return This->lpVtbl->get_Enabled(This,pRetVal);
1969 }
1970 static FORCEINLINE HRESULT IRDPSRAPIApplicationFilter_put_Enabled(IRDPSRAPIApplicationFilter* This,VARIANT_BOOL NewVal) {
1971     return This->lpVtbl->put_Enabled(This,NewVal);
1972 }
1973 #endif
1974 #endif
1975 
1976 #endif
1977 
1978 
1979 #endif  /* __IRDPSRAPIApplicationFilter_INTERFACE_DEFINED__ */
1980 
1981 /*****************************************************************************
1982  * IRDPSRAPISessionProperties interface
1983  */
1984 #ifndef __IRDPSRAPISessionProperties_INTERFACE_DEFINED__
1985 #define __IRDPSRAPISessionProperties_INTERFACE_DEFINED__
1986 
1987 DEFINE_GUID(IID_IRDPSRAPISessionProperties, 0x339b24f2, 0x9bc0, 0x4f16, 0x9a,0xac, 0xf1,0x65,0x43,0x3d,0x13,0xd4);
1988 #if defined(__cplusplus) && !defined(CINTERFACE)
1989 MIDL_INTERFACE("339b24f2-9bc0-4f16-9aac-f165433d13d4")
1990 IRDPSRAPISessionProperties : public IDispatch
1991 {
1992     virtual HRESULT STDMETHODCALLTYPE get_Property(
1993         BSTR PropertyName,
1994         VARIANT *pVal) = 0;
1995 
1996     virtual HRESULT STDMETHODCALLTYPE put_Property(
1997         BSTR PropertyName,
1998         VARIANT newVal) = 0;
1999 
2000 };
2001 #ifdef __CRT_UUID_DECL
2002 __CRT_UUID_DECL(IRDPSRAPISessionProperties, 0x339b24f2, 0x9bc0, 0x4f16, 0x9a,0xac, 0xf1,0x65,0x43,0x3d,0x13,0xd4)
2003 #endif
2004 #else
2005 typedef struct IRDPSRAPISessionPropertiesVtbl {
2006     BEGIN_INTERFACE
2007 
2008     /*** IUnknown methods ***/
2009     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2010         IRDPSRAPISessionProperties *This,
2011         REFIID riid,
2012         void **ppvObject);
2013 
2014     ULONG (STDMETHODCALLTYPE *AddRef)(
2015         IRDPSRAPISessionProperties *This);
2016 
2017     ULONG (STDMETHODCALLTYPE *Release)(
2018         IRDPSRAPISessionProperties *This);
2019 
2020     /*** IDispatch methods ***/
2021     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2022         IRDPSRAPISessionProperties *This,
2023         UINT *pctinfo);
2024 
2025     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2026         IRDPSRAPISessionProperties *This,
2027         UINT iTInfo,
2028         LCID lcid,
2029         ITypeInfo **ppTInfo);
2030 
2031     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2032         IRDPSRAPISessionProperties *This,
2033         REFIID riid,
2034         LPOLESTR *rgszNames,
2035         UINT cNames,
2036         LCID lcid,
2037         DISPID *rgDispId);
2038 
2039     HRESULT (STDMETHODCALLTYPE *Invoke)(
2040         IRDPSRAPISessionProperties *This,
2041         DISPID dispIdMember,
2042         REFIID riid,
2043         LCID lcid,
2044         WORD wFlags,
2045         DISPPARAMS *pDispParams,
2046         VARIANT *pVarResult,
2047         EXCEPINFO *pExcepInfo,
2048         UINT *puArgErr);
2049 
2050     /*** IRDPSRAPISessionProperties methods ***/
2051     HRESULT (STDMETHODCALLTYPE *get_Property)(
2052         IRDPSRAPISessionProperties *This,
2053         BSTR PropertyName,
2054         VARIANT *pVal);
2055 
2056     HRESULT (STDMETHODCALLTYPE *put_Property)(
2057         IRDPSRAPISessionProperties *This,
2058         BSTR PropertyName,
2059         VARIANT newVal);
2060 
2061     END_INTERFACE
2062 } IRDPSRAPISessionPropertiesVtbl;
2063 
2064 interface IRDPSRAPISessionProperties {
2065     CONST_VTBL IRDPSRAPISessionPropertiesVtbl* lpVtbl;
2066 };
2067 
2068 #ifdef COBJMACROS
2069 #ifndef WIDL_C_INLINE_WRAPPERS
2070 /*** IUnknown methods ***/
2071 #define IRDPSRAPISessionProperties_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2072 #define IRDPSRAPISessionProperties_AddRef(This) (This)->lpVtbl->AddRef(This)
2073 #define IRDPSRAPISessionProperties_Release(This) (This)->lpVtbl->Release(This)
2074 /*** IDispatch methods ***/
2075 #define IRDPSRAPISessionProperties_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2076 #define IRDPSRAPISessionProperties_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2077 #define IRDPSRAPISessionProperties_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2078 #define IRDPSRAPISessionProperties_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2079 /*** IRDPSRAPISessionProperties methods ***/
2080 #define IRDPSRAPISessionProperties_get_Property(This,PropertyName,pVal) (This)->lpVtbl->get_Property(This,PropertyName,pVal)
2081 #define IRDPSRAPISessionProperties_put_Property(This,PropertyName,newVal) (This)->lpVtbl->put_Property(This,PropertyName,newVal)
2082 #else
2083 /*** IUnknown methods ***/
2084 static FORCEINLINE HRESULT IRDPSRAPISessionProperties_QueryInterface(IRDPSRAPISessionProperties* This,REFIID riid,void **ppvObject) {
2085     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2086 }
2087 static FORCEINLINE ULONG IRDPSRAPISessionProperties_AddRef(IRDPSRAPISessionProperties* This) {
2088     return This->lpVtbl->AddRef(This);
2089 }
2090 static FORCEINLINE ULONG IRDPSRAPISessionProperties_Release(IRDPSRAPISessionProperties* This) {
2091     return This->lpVtbl->Release(This);
2092 }
2093 /*** IDispatch methods ***/
2094 static FORCEINLINE HRESULT IRDPSRAPISessionProperties_GetTypeInfoCount(IRDPSRAPISessionProperties* This,UINT *pctinfo) {
2095     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2096 }
2097 static FORCEINLINE HRESULT IRDPSRAPISessionProperties_GetTypeInfo(IRDPSRAPISessionProperties* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2098     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2099 }
2100 static FORCEINLINE HRESULT IRDPSRAPISessionProperties_GetIDsOfNames(IRDPSRAPISessionProperties* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2101     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2102 }
2103 static FORCEINLINE HRESULT IRDPSRAPISessionProperties_Invoke(IRDPSRAPISessionProperties* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2104     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2105 }
2106 /*** IRDPSRAPISessionProperties methods ***/
2107 static FORCEINLINE HRESULT IRDPSRAPISessionProperties_get_Property(IRDPSRAPISessionProperties* This,BSTR PropertyName,VARIANT *pVal) {
2108     return This->lpVtbl->get_Property(This,PropertyName,pVal);
2109 }
2110 static FORCEINLINE HRESULT IRDPSRAPISessionProperties_put_Property(IRDPSRAPISessionProperties* This,BSTR PropertyName,VARIANT newVal) {
2111     return This->lpVtbl->put_Property(This,PropertyName,newVal);
2112 }
2113 #endif
2114 #endif
2115 
2116 #endif
2117 
2118 
2119 #endif  /* __IRDPSRAPISessionProperties_INTERFACE_DEFINED__ */
2120 
2121 /*****************************************************************************
2122  * IRDPSRAPIInvitation interface
2123  */
2124 #ifndef __IRDPSRAPIInvitation_INTERFACE_DEFINED__
2125 #define __IRDPSRAPIInvitation_INTERFACE_DEFINED__
2126 
2127 DEFINE_GUID(IID_IRDPSRAPIInvitation, 0x4fac1d43, 0xfc51, 0x45bb, 0xb1,0xb4, 0x2b,0x53,0xaa,0x56,0x2f,0xa3);
2128 #if defined(__cplusplus) && !defined(CINTERFACE)
2129 MIDL_INTERFACE("4fac1d43-fc51-45bb-b1b4-2b53aa562fa3")
2130 IRDPSRAPIInvitation : public IDispatch
2131 {
2132     virtual HRESULT STDMETHODCALLTYPE get_ConnectionString(
2133         BSTR *pbstrVal) = 0;
2134 
2135     virtual HRESULT STDMETHODCALLTYPE get_GroupName(
2136         BSTR *pbstrVal) = 0;
2137 
2138     virtual HRESULT STDMETHODCALLTYPE get_Password(
2139         BSTR *pbstrVal) = 0;
2140 
2141     virtual HRESULT STDMETHODCALLTYPE get_AttendeeLimit(
2142         LONG *pRetVal) = 0;
2143 
2144     virtual HRESULT STDMETHODCALLTYPE put_AttendeeLimit(
2145         LONG NewVal) = 0;
2146 
2147     virtual HRESULT STDMETHODCALLTYPE get_Revoked(
2148         VARIANT_BOOL *pRetVal) = 0;
2149 
2150     virtual HRESULT STDMETHODCALLTYPE put_Revoked(
2151         VARIANT_BOOL NewVal) = 0;
2152 
2153 };
2154 #ifdef __CRT_UUID_DECL
2155 __CRT_UUID_DECL(IRDPSRAPIInvitation, 0x4fac1d43, 0xfc51, 0x45bb, 0xb1,0xb4, 0x2b,0x53,0xaa,0x56,0x2f,0xa3)
2156 #endif
2157 #else
2158 typedef struct IRDPSRAPIInvitationVtbl {
2159     BEGIN_INTERFACE
2160 
2161     /*** IUnknown methods ***/
2162     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2163         IRDPSRAPIInvitation *This,
2164         REFIID riid,
2165         void **ppvObject);
2166 
2167     ULONG (STDMETHODCALLTYPE *AddRef)(
2168         IRDPSRAPIInvitation *This);
2169 
2170     ULONG (STDMETHODCALLTYPE *Release)(
2171         IRDPSRAPIInvitation *This);
2172 
2173     /*** IDispatch methods ***/
2174     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2175         IRDPSRAPIInvitation *This,
2176         UINT *pctinfo);
2177 
2178     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2179         IRDPSRAPIInvitation *This,
2180         UINT iTInfo,
2181         LCID lcid,
2182         ITypeInfo **ppTInfo);
2183 
2184     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2185         IRDPSRAPIInvitation *This,
2186         REFIID riid,
2187         LPOLESTR *rgszNames,
2188         UINT cNames,
2189         LCID lcid,
2190         DISPID *rgDispId);
2191 
2192     HRESULT (STDMETHODCALLTYPE *Invoke)(
2193         IRDPSRAPIInvitation *This,
2194         DISPID dispIdMember,
2195         REFIID riid,
2196         LCID lcid,
2197         WORD wFlags,
2198         DISPPARAMS *pDispParams,
2199         VARIANT *pVarResult,
2200         EXCEPINFO *pExcepInfo,
2201         UINT *puArgErr);
2202 
2203     /*** IRDPSRAPIInvitation methods ***/
2204     HRESULT (STDMETHODCALLTYPE *get_ConnectionString)(
2205         IRDPSRAPIInvitation *This,
2206         BSTR *pbstrVal);
2207 
2208     HRESULT (STDMETHODCALLTYPE *get_GroupName)(
2209         IRDPSRAPIInvitation *This,
2210         BSTR *pbstrVal);
2211 
2212     HRESULT (STDMETHODCALLTYPE *get_Password)(
2213         IRDPSRAPIInvitation *This,
2214         BSTR *pbstrVal);
2215 
2216     HRESULT (STDMETHODCALLTYPE *get_AttendeeLimit)(
2217         IRDPSRAPIInvitation *This,
2218         LONG *pRetVal);
2219 
2220     HRESULT (STDMETHODCALLTYPE *put_AttendeeLimit)(
2221         IRDPSRAPIInvitation *This,
2222         LONG NewVal);
2223 
2224     HRESULT (STDMETHODCALLTYPE *get_Revoked)(
2225         IRDPSRAPIInvitation *This,
2226         VARIANT_BOOL *pRetVal);
2227 
2228     HRESULT (STDMETHODCALLTYPE *put_Revoked)(
2229         IRDPSRAPIInvitation *This,
2230         VARIANT_BOOL NewVal);
2231 
2232     END_INTERFACE
2233 } IRDPSRAPIInvitationVtbl;
2234 
2235 interface IRDPSRAPIInvitation {
2236     CONST_VTBL IRDPSRAPIInvitationVtbl* lpVtbl;
2237 };
2238 
2239 #ifdef COBJMACROS
2240 #ifndef WIDL_C_INLINE_WRAPPERS
2241 /*** IUnknown methods ***/
2242 #define IRDPSRAPIInvitation_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2243 #define IRDPSRAPIInvitation_AddRef(This) (This)->lpVtbl->AddRef(This)
2244 #define IRDPSRAPIInvitation_Release(This) (This)->lpVtbl->Release(This)
2245 /*** IDispatch methods ***/
2246 #define IRDPSRAPIInvitation_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2247 #define IRDPSRAPIInvitation_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2248 #define IRDPSRAPIInvitation_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2249 #define IRDPSRAPIInvitation_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2250 /*** IRDPSRAPIInvitation methods ***/
2251 #define IRDPSRAPIInvitation_get_ConnectionString(This,pbstrVal) (This)->lpVtbl->get_ConnectionString(This,pbstrVal)
2252 #define IRDPSRAPIInvitation_get_GroupName(This,pbstrVal) (This)->lpVtbl->get_GroupName(This,pbstrVal)
2253 #define IRDPSRAPIInvitation_get_Password(This,pbstrVal) (This)->lpVtbl->get_Password(This,pbstrVal)
2254 #define IRDPSRAPIInvitation_get_AttendeeLimit(This,pRetVal) (This)->lpVtbl->get_AttendeeLimit(This,pRetVal)
2255 #define IRDPSRAPIInvitation_put_AttendeeLimit(This,NewVal) (This)->lpVtbl->put_AttendeeLimit(This,NewVal)
2256 #define IRDPSRAPIInvitation_get_Revoked(This,pRetVal) (This)->lpVtbl->get_Revoked(This,pRetVal)
2257 #define IRDPSRAPIInvitation_put_Revoked(This,NewVal) (This)->lpVtbl->put_Revoked(This,NewVal)
2258 #else
2259 /*** IUnknown methods ***/
2260 static FORCEINLINE HRESULT IRDPSRAPIInvitation_QueryInterface(IRDPSRAPIInvitation* This,REFIID riid,void **ppvObject) {
2261     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2262 }
2263 static FORCEINLINE ULONG IRDPSRAPIInvitation_AddRef(IRDPSRAPIInvitation* This) {
2264     return This->lpVtbl->AddRef(This);
2265 }
2266 static FORCEINLINE ULONG IRDPSRAPIInvitation_Release(IRDPSRAPIInvitation* This) {
2267     return This->lpVtbl->Release(This);
2268 }
2269 /*** IDispatch methods ***/
2270 static FORCEINLINE HRESULT IRDPSRAPIInvitation_GetTypeInfoCount(IRDPSRAPIInvitation* This,UINT *pctinfo) {
2271     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2272 }
2273 static FORCEINLINE HRESULT IRDPSRAPIInvitation_GetTypeInfo(IRDPSRAPIInvitation* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2274     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2275 }
2276 static FORCEINLINE HRESULT IRDPSRAPIInvitation_GetIDsOfNames(IRDPSRAPIInvitation* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2277     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2278 }
2279 static FORCEINLINE HRESULT IRDPSRAPIInvitation_Invoke(IRDPSRAPIInvitation* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2280     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2281 }
2282 /*** IRDPSRAPIInvitation methods ***/
2283 static FORCEINLINE HRESULT IRDPSRAPIInvitation_get_ConnectionString(IRDPSRAPIInvitation* This,BSTR *pbstrVal) {
2284     return This->lpVtbl->get_ConnectionString(This,pbstrVal);
2285 }
2286 static FORCEINLINE HRESULT IRDPSRAPIInvitation_get_GroupName(IRDPSRAPIInvitation* This,BSTR *pbstrVal) {
2287     return This->lpVtbl->get_GroupName(This,pbstrVal);
2288 }
2289 static FORCEINLINE HRESULT IRDPSRAPIInvitation_get_Password(IRDPSRAPIInvitation* This,BSTR *pbstrVal) {
2290     return This->lpVtbl->get_Password(This,pbstrVal);
2291 }
2292 static FORCEINLINE HRESULT IRDPSRAPIInvitation_get_AttendeeLimit(IRDPSRAPIInvitation* This,LONG *pRetVal) {
2293     return This->lpVtbl->get_AttendeeLimit(This,pRetVal);
2294 }
2295 static FORCEINLINE HRESULT IRDPSRAPIInvitation_put_AttendeeLimit(IRDPSRAPIInvitation* This,LONG NewVal) {
2296     return This->lpVtbl->put_AttendeeLimit(This,NewVal);
2297 }
2298 static FORCEINLINE HRESULT IRDPSRAPIInvitation_get_Revoked(IRDPSRAPIInvitation* This,VARIANT_BOOL *pRetVal) {
2299     return This->lpVtbl->get_Revoked(This,pRetVal);
2300 }
2301 static FORCEINLINE HRESULT IRDPSRAPIInvitation_put_Revoked(IRDPSRAPIInvitation* This,VARIANT_BOOL NewVal) {
2302     return This->lpVtbl->put_Revoked(This,NewVal);
2303 }
2304 #endif
2305 #endif
2306 
2307 #endif
2308 
2309 
2310 #endif  /* __IRDPSRAPIInvitation_INTERFACE_DEFINED__ */
2311 
2312 /*****************************************************************************
2313  * IRDPSRAPIInvitationManager interface
2314  */
2315 #ifndef __IRDPSRAPIInvitationManager_INTERFACE_DEFINED__
2316 #define __IRDPSRAPIInvitationManager_INTERFACE_DEFINED__
2317 
2318 DEFINE_GUID(IID_IRDPSRAPIInvitationManager, 0x4722b049, 0x92c3, 0x4c2d, 0x8a,0x65, 0xf7,0x34,0x8f,0x64,0x4d,0xcf);
2319 #if defined(__cplusplus) && !defined(CINTERFACE)
2320 MIDL_INTERFACE("4722b049-92c3-4c2d-8a65-f7348f644dcf")
2321 IRDPSRAPIInvitationManager : public IDispatch
2322 {
2323     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
2324         IUnknown **retval) = 0;
2325 
2326     virtual HRESULT STDMETHODCALLTYPE get_Item(
2327         VARIANT item,
2328         IRDPSRAPIInvitation **ppInvitation) = 0;
2329 
2330     virtual HRESULT STDMETHODCALLTYPE get_Count(
2331         LONG *pRetVal) = 0;
2332 
2333     virtual HRESULT STDMETHODCALLTYPE CreateInvitation(
2334         BSTR bstrAuthString,
2335         BSTR bstrGroupName,
2336         BSTR bstrPassword,
2337         LONG AttendeeLimit,
2338         IRDPSRAPIInvitation **ppInvitation) = 0;
2339 
2340 };
2341 #ifdef __CRT_UUID_DECL
2342 __CRT_UUID_DECL(IRDPSRAPIInvitationManager, 0x4722b049, 0x92c3, 0x4c2d, 0x8a,0x65, 0xf7,0x34,0x8f,0x64,0x4d,0xcf)
2343 #endif
2344 #else
2345 typedef struct IRDPSRAPIInvitationManagerVtbl {
2346     BEGIN_INTERFACE
2347 
2348     /*** IUnknown methods ***/
2349     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2350         IRDPSRAPIInvitationManager *This,
2351         REFIID riid,
2352         void **ppvObject);
2353 
2354     ULONG (STDMETHODCALLTYPE *AddRef)(
2355         IRDPSRAPIInvitationManager *This);
2356 
2357     ULONG (STDMETHODCALLTYPE *Release)(
2358         IRDPSRAPIInvitationManager *This);
2359 
2360     /*** IDispatch methods ***/
2361     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2362         IRDPSRAPIInvitationManager *This,
2363         UINT *pctinfo);
2364 
2365     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2366         IRDPSRAPIInvitationManager *This,
2367         UINT iTInfo,
2368         LCID lcid,
2369         ITypeInfo **ppTInfo);
2370 
2371     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2372         IRDPSRAPIInvitationManager *This,
2373         REFIID riid,
2374         LPOLESTR *rgszNames,
2375         UINT cNames,
2376         LCID lcid,
2377         DISPID *rgDispId);
2378 
2379     HRESULT (STDMETHODCALLTYPE *Invoke)(
2380         IRDPSRAPIInvitationManager *This,
2381         DISPID dispIdMember,
2382         REFIID riid,
2383         LCID lcid,
2384         WORD wFlags,
2385         DISPPARAMS *pDispParams,
2386         VARIANT *pVarResult,
2387         EXCEPINFO *pExcepInfo,
2388         UINT *puArgErr);
2389 
2390     /*** IRDPSRAPIInvitationManager methods ***/
2391     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
2392         IRDPSRAPIInvitationManager *This,
2393         IUnknown **retval);
2394 
2395     HRESULT (STDMETHODCALLTYPE *get_Item)(
2396         IRDPSRAPIInvitationManager *This,
2397         VARIANT item,
2398         IRDPSRAPIInvitation **ppInvitation);
2399 
2400     HRESULT (STDMETHODCALLTYPE *get_Count)(
2401         IRDPSRAPIInvitationManager *This,
2402         LONG *pRetVal);
2403 
2404     HRESULT (STDMETHODCALLTYPE *CreateInvitation)(
2405         IRDPSRAPIInvitationManager *This,
2406         BSTR bstrAuthString,
2407         BSTR bstrGroupName,
2408         BSTR bstrPassword,
2409         LONG AttendeeLimit,
2410         IRDPSRAPIInvitation **ppInvitation);
2411 
2412     END_INTERFACE
2413 } IRDPSRAPIInvitationManagerVtbl;
2414 
2415 interface IRDPSRAPIInvitationManager {
2416     CONST_VTBL IRDPSRAPIInvitationManagerVtbl* lpVtbl;
2417 };
2418 
2419 #ifdef COBJMACROS
2420 #ifndef WIDL_C_INLINE_WRAPPERS
2421 /*** IUnknown methods ***/
2422 #define IRDPSRAPIInvitationManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2423 #define IRDPSRAPIInvitationManager_AddRef(This) (This)->lpVtbl->AddRef(This)
2424 #define IRDPSRAPIInvitationManager_Release(This) (This)->lpVtbl->Release(This)
2425 /*** IDispatch methods ***/
2426 #define IRDPSRAPIInvitationManager_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2427 #define IRDPSRAPIInvitationManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2428 #define IRDPSRAPIInvitationManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2429 #define IRDPSRAPIInvitationManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2430 /*** IRDPSRAPIInvitationManager methods ***/
2431 #define IRDPSRAPIInvitationManager_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval)
2432 #define IRDPSRAPIInvitationManager_get_Item(This,item,ppInvitation) (This)->lpVtbl->get_Item(This,item,ppInvitation)
2433 #define IRDPSRAPIInvitationManager_get_Count(This,pRetVal) (This)->lpVtbl->get_Count(This,pRetVal)
2434 #define IRDPSRAPIInvitationManager_CreateInvitation(This,bstrAuthString,bstrGroupName,bstrPassword,AttendeeLimit,ppInvitation) (This)->lpVtbl->CreateInvitation(This,bstrAuthString,bstrGroupName,bstrPassword,AttendeeLimit,ppInvitation)
2435 #else
2436 /*** IUnknown methods ***/
2437 static FORCEINLINE HRESULT IRDPSRAPIInvitationManager_QueryInterface(IRDPSRAPIInvitationManager* This,REFIID riid,void **ppvObject) {
2438     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2439 }
2440 static FORCEINLINE ULONG IRDPSRAPIInvitationManager_AddRef(IRDPSRAPIInvitationManager* This) {
2441     return This->lpVtbl->AddRef(This);
2442 }
2443 static FORCEINLINE ULONG IRDPSRAPIInvitationManager_Release(IRDPSRAPIInvitationManager* This) {
2444     return This->lpVtbl->Release(This);
2445 }
2446 /*** IDispatch methods ***/
2447 static FORCEINLINE HRESULT IRDPSRAPIInvitationManager_GetTypeInfoCount(IRDPSRAPIInvitationManager* This,UINT *pctinfo) {
2448     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2449 }
2450 static FORCEINLINE HRESULT IRDPSRAPIInvitationManager_GetTypeInfo(IRDPSRAPIInvitationManager* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2451     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2452 }
2453 static FORCEINLINE HRESULT IRDPSRAPIInvitationManager_GetIDsOfNames(IRDPSRAPIInvitationManager* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2454     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2455 }
2456 static FORCEINLINE HRESULT IRDPSRAPIInvitationManager_Invoke(IRDPSRAPIInvitationManager* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2457     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2458 }
2459 /*** IRDPSRAPIInvitationManager methods ***/
2460 static FORCEINLINE HRESULT IRDPSRAPIInvitationManager_get__NewEnum(IRDPSRAPIInvitationManager* This,IUnknown **retval) {
2461     return This->lpVtbl->get__NewEnum(This,retval);
2462 }
2463 static FORCEINLINE HRESULT IRDPSRAPIInvitationManager_get_Item(IRDPSRAPIInvitationManager* This,VARIANT item,IRDPSRAPIInvitation **ppInvitation) {
2464     return This->lpVtbl->get_Item(This,item,ppInvitation);
2465 }
2466 static FORCEINLINE HRESULT IRDPSRAPIInvitationManager_get_Count(IRDPSRAPIInvitationManager* This,LONG *pRetVal) {
2467     return This->lpVtbl->get_Count(This,pRetVal);
2468 }
2469 static FORCEINLINE HRESULT IRDPSRAPIInvitationManager_CreateInvitation(IRDPSRAPIInvitationManager* This,BSTR bstrAuthString,BSTR bstrGroupName,BSTR bstrPassword,LONG AttendeeLimit,IRDPSRAPIInvitation **ppInvitation) {
2470     return This->lpVtbl->CreateInvitation(This,bstrAuthString,bstrGroupName,bstrPassword,AttendeeLimit,ppInvitation);
2471 }
2472 #endif
2473 #endif
2474 
2475 #endif
2476 
2477 
2478 #endif  /* __IRDPSRAPIInvitationManager_INTERFACE_DEFINED__ */
2479 
2480 /*****************************************************************************
2481  * IRDPSRAPITcpConnectionInfo interface
2482  */
2483 #ifndef __IRDPSRAPITcpConnectionInfo_INTERFACE_DEFINED__
2484 #define __IRDPSRAPITcpConnectionInfo_INTERFACE_DEFINED__
2485 
2486 DEFINE_GUID(IID_IRDPSRAPITcpConnectionInfo, 0xf74049a4, 0x3d06, 0x4028, 0x81,0x93, 0x0a,0x8c,0x29,0xbc,0x24,0x52);
2487 #if defined(__cplusplus) && !defined(CINTERFACE)
2488 MIDL_INTERFACE("f74049a4-3d06-4028-8193-0a8c29bc2452")
2489 IRDPSRAPITcpConnectionInfo : public IDispatch
2490 {
2491     virtual HRESULT STDMETHODCALLTYPE get_Protocol(
2492         LONG *plProtocol) = 0;
2493 
2494     virtual HRESULT STDMETHODCALLTYPE get_LocalPort(
2495         LONG *plPort) = 0;
2496 
2497     virtual HRESULT STDMETHODCALLTYPE get_LocalIP(
2498         BSTR *pbsrLocalIP) = 0;
2499 
2500     virtual HRESULT STDMETHODCALLTYPE get_PeerPort(
2501         LONG *plPort) = 0;
2502 
2503     virtual HRESULT STDMETHODCALLTYPE get_PeerIP(
2504         BSTR *pbstrIP) = 0;
2505 
2506 };
2507 #ifdef __CRT_UUID_DECL
2508 __CRT_UUID_DECL(IRDPSRAPITcpConnectionInfo, 0xf74049a4, 0x3d06, 0x4028, 0x81,0x93, 0x0a,0x8c,0x29,0xbc,0x24,0x52)
2509 #endif
2510 #else
2511 typedef struct IRDPSRAPITcpConnectionInfoVtbl {
2512     BEGIN_INTERFACE
2513 
2514     /*** IUnknown methods ***/
2515     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2516         IRDPSRAPITcpConnectionInfo *This,
2517         REFIID riid,
2518         void **ppvObject);
2519 
2520     ULONG (STDMETHODCALLTYPE *AddRef)(
2521         IRDPSRAPITcpConnectionInfo *This);
2522 
2523     ULONG (STDMETHODCALLTYPE *Release)(
2524         IRDPSRAPITcpConnectionInfo *This);
2525 
2526     /*** IDispatch methods ***/
2527     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2528         IRDPSRAPITcpConnectionInfo *This,
2529         UINT *pctinfo);
2530 
2531     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2532         IRDPSRAPITcpConnectionInfo *This,
2533         UINT iTInfo,
2534         LCID lcid,
2535         ITypeInfo **ppTInfo);
2536 
2537     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2538         IRDPSRAPITcpConnectionInfo *This,
2539         REFIID riid,
2540         LPOLESTR *rgszNames,
2541         UINT cNames,
2542         LCID lcid,
2543         DISPID *rgDispId);
2544 
2545     HRESULT (STDMETHODCALLTYPE *Invoke)(
2546         IRDPSRAPITcpConnectionInfo *This,
2547         DISPID dispIdMember,
2548         REFIID riid,
2549         LCID lcid,
2550         WORD wFlags,
2551         DISPPARAMS *pDispParams,
2552         VARIANT *pVarResult,
2553         EXCEPINFO *pExcepInfo,
2554         UINT *puArgErr);
2555 
2556     /*** IRDPSRAPITcpConnectionInfo methods ***/
2557     HRESULT (STDMETHODCALLTYPE *get_Protocol)(
2558         IRDPSRAPITcpConnectionInfo *This,
2559         LONG *plProtocol);
2560 
2561     HRESULT (STDMETHODCALLTYPE *get_LocalPort)(
2562         IRDPSRAPITcpConnectionInfo *This,
2563         LONG *plPort);
2564 
2565     HRESULT (STDMETHODCALLTYPE *get_LocalIP)(
2566         IRDPSRAPITcpConnectionInfo *This,
2567         BSTR *pbsrLocalIP);
2568 
2569     HRESULT (STDMETHODCALLTYPE *get_PeerPort)(
2570         IRDPSRAPITcpConnectionInfo *This,
2571         LONG *plPort);
2572 
2573     HRESULT (STDMETHODCALLTYPE *get_PeerIP)(
2574         IRDPSRAPITcpConnectionInfo *This,
2575         BSTR *pbstrIP);
2576 
2577     END_INTERFACE
2578 } IRDPSRAPITcpConnectionInfoVtbl;
2579 
2580 interface IRDPSRAPITcpConnectionInfo {
2581     CONST_VTBL IRDPSRAPITcpConnectionInfoVtbl* lpVtbl;
2582 };
2583 
2584 #ifdef COBJMACROS
2585 #ifndef WIDL_C_INLINE_WRAPPERS
2586 /*** IUnknown methods ***/
2587 #define IRDPSRAPITcpConnectionInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2588 #define IRDPSRAPITcpConnectionInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
2589 #define IRDPSRAPITcpConnectionInfo_Release(This) (This)->lpVtbl->Release(This)
2590 /*** IDispatch methods ***/
2591 #define IRDPSRAPITcpConnectionInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2592 #define IRDPSRAPITcpConnectionInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2593 #define IRDPSRAPITcpConnectionInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2594 #define IRDPSRAPITcpConnectionInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2595 /*** IRDPSRAPITcpConnectionInfo methods ***/
2596 #define IRDPSRAPITcpConnectionInfo_get_Protocol(This,plProtocol) (This)->lpVtbl->get_Protocol(This,plProtocol)
2597 #define IRDPSRAPITcpConnectionInfo_get_LocalPort(This,plPort) (This)->lpVtbl->get_LocalPort(This,plPort)
2598 #define IRDPSRAPITcpConnectionInfo_get_LocalIP(This,pbsrLocalIP) (This)->lpVtbl->get_LocalIP(This,pbsrLocalIP)
2599 #define IRDPSRAPITcpConnectionInfo_get_PeerPort(This,plPort) (This)->lpVtbl->get_PeerPort(This,plPort)
2600 #define IRDPSRAPITcpConnectionInfo_get_PeerIP(This,pbstrIP) (This)->lpVtbl->get_PeerIP(This,pbstrIP)
2601 #else
2602 /*** IUnknown methods ***/
2603 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_QueryInterface(IRDPSRAPITcpConnectionInfo* This,REFIID riid,void **ppvObject) {
2604     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2605 }
2606 static FORCEINLINE ULONG IRDPSRAPITcpConnectionInfo_AddRef(IRDPSRAPITcpConnectionInfo* This) {
2607     return This->lpVtbl->AddRef(This);
2608 }
2609 static FORCEINLINE ULONG IRDPSRAPITcpConnectionInfo_Release(IRDPSRAPITcpConnectionInfo* This) {
2610     return This->lpVtbl->Release(This);
2611 }
2612 /*** IDispatch methods ***/
2613 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_GetTypeInfoCount(IRDPSRAPITcpConnectionInfo* This,UINT *pctinfo) {
2614     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2615 }
2616 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_GetTypeInfo(IRDPSRAPITcpConnectionInfo* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2617     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2618 }
2619 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_GetIDsOfNames(IRDPSRAPITcpConnectionInfo* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2620     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2621 }
2622 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_Invoke(IRDPSRAPITcpConnectionInfo* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2623     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2624 }
2625 /*** IRDPSRAPITcpConnectionInfo methods ***/
2626 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_get_Protocol(IRDPSRAPITcpConnectionInfo* This,LONG *plProtocol) {
2627     return This->lpVtbl->get_Protocol(This,plProtocol);
2628 }
2629 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_get_LocalPort(IRDPSRAPITcpConnectionInfo* This,LONG *plPort) {
2630     return This->lpVtbl->get_LocalPort(This,plPort);
2631 }
2632 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_get_LocalIP(IRDPSRAPITcpConnectionInfo* This,BSTR *pbsrLocalIP) {
2633     return This->lpVtbl->get_LocalIP(This,pbsrLocalIP);
2634 }
2635 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_get_PeerPort(IRDPSRAPITcpConnectionInfo* This,LONG *plPort) {
2636     return This->lpVtbl->get_PeerPort(This,plPort);
2637 }
2638 static FORCEINLINE HRESULT IRDPSRAPITcpConnectionInfo_get_PeerIP(IRDPSRAPITcpConnectionInfo* This,BSTR *pbstrIP) {
2639     return This->lpVtbl->get_PeerIP(This,pbstrIP);
2640 }
2641 #endif
2642 #endif
2643 
2644 #endif
2645 
2646 
2647 #endif  /* __IRDPSRAPITcpConnectionInfo_INTERFACE_DEFINED__ */
2648 
2649 /*****************************************************************************
2650  * IRDPSRAPIAttendee interface
2651  */
2652 #ifndef __IRDPSRAPIAttendee_INTERFACE_DEFINED__
2653 #define __IRDPSRAPIAttendee_INTERFACE_DEFINED__
2654 
2655 DEFINE_GUID(IID_IRDPSRAPIAttendee, 0xec0671b3, 0x1b78, 0x4b80, 0xa4,0x64, 0x91,0x32,0x24,0x75,0x43,0xe3);
2656 #if defined(__cplusplus) && !defined(CINTERFACE)
2657 MIDL_INTERFACE("ec0671b3-1b78-4b80-a464-9132247543e3")
2658 IRDPSRAPIAttendee : public IDispatch
2659 {
2660     virtual HRESULT STDMETHODCALLTYPE get_Id(
2661         LONG *pId) = 0;
2662 
2663     virtual HRESULT STDMETHODCALLTYPE get_RemoteName(
2664         BSTR *pVal) = 0;
2665 
2666     virtual HRESULT STDMETHODCALLTYPE get_ControlLevel(
2667         CTRL_LEVEL *pVal) = 0;
2668 
2669     virtual HRESULT STDMETHODCALLTYPE put_ControlLevel(
2670         CTRL_LEVEL pNewVal) = 0;
2671 
2672     virtual HRESULT STDMETHODCALLTYPE get_Invitation(
2673         IRDPSRAPIInvitation **ppVal) = 0;
2674 
2675     virtual HRESULT STDMETHODCALLTYPE TerminateConnection(
2676         ) = 0;
2677 
2678     virtual HRESULT STDMETHODCALLTYPE get_Flags(
2679         LONG *plFlags) = 0;
2680 
2681     virtual HRESULT STDMETHODCALLTYPE get_ConnectivityInfo(
2682         IUnknown **ppVal) = 0;
2683 
2684 };
2685 #ifdef __CRT_UUID_DECL
2686 __CRT_UUID_DECL(IRDPSRAPIAttendee, 0xec0671b3, 0x1b78, 0x4b80, 0xa4,0x64, 0x91,0x32,0x24,0x75,0x43,0xe3)
2687 #endif
2688 #else
2689 typedef struct IRDPSRAPIAttendeeVtbl {
2690     BEGIN_INTERFACE
2691 
2692     /*** IUnknown methods ***/
2693     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2694         IRDPSRAPIAttendee *This,
2695         REFIID riid,
2696         void **ppvObject);
2697 
2698     ULONG (STDMETHODCALLTYPE *AddRef)(
2699         IRDPSRAPIAttendee *This);
2700 
2701     ULONG (STDMETHODCALLTYPE *Release)(
2702         IRDPSRAPIAttendee *This);
2703 
2704     /*** IDispatch methods ***/
2705     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2706         IRDPSRAPIAttendee *This,
2707         UINT *pctinfo);
2708 
2709     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2710         IRDPSRAPIAttendee *This,
2711         UINT iTInfo,
2712         LCID lcid,
2713         ITypeInfo **ppTInfo);
2714 
2715     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2716         IRDPSRAPIAttendee *This,
2717         REFIID riid,
2718         LPOLESTR *rgszNames,
2719         UINT cNames,
2720         LCID lcid,
2721         DISPID *rgDispId);
2722 
2723     HRESULT (STDMETHODCALLTYPE *Invoke)(
2724         IRDPSRAPIAttendee *This,
2725         DISPID dispIdMember,
2726         REFIID riid,
2727         LCID lcid,
2728         WORD wFlags,
2729         DISPPARAMS *pDispParams,
2730         VARIANT *pVarResult,
2731         EXCEPINFO *pExcepInfo,
2732         UINT *puArgErr);
2733 
2734     /*** IRDPSRAPIAttendee methods ***/
2735     HRESULT (STDMETHODCALLTYPE *get_Id)(
2736         IRDPSRAPIAttendee *This,
2737         LONG *pId);
2738 
2739     HRESULT (STDMETHODCALLTYPE *get_RemoteName)(
2740         IRDPSRAPIAttendee *This,
2741         BSTR *pVal);
2742 
2743     HRESULT (STDMETHODCALLTYPE *get_ControlLevel)(
2744         IRDPSRAPIAttendee *This,
2745         CTRL_LEVEL *pVal);
2746 
2747     HRESULT (STDMETHODCALLTYPE *put_ControlLevel)(
2748         IRDPSRAPIAttendee *This,
2749         CTRL_LEVEL pNewVal);
2750 
2751     HRESULT (STDMETHODCALLTYPE *get_Invitation)(
2752         IRDPSRAPIAttendee *This,
2753         IRDPSRAPIInvitation **ppVal);
2754 
2755     HRESULT (STDMETHODCALLTYPE *TerminateConnection)(
2756         IRDPSRAPIAttendee *This);
2757 
2758     HRESULT (STDMETHODCALLTYPE *get_Flags)(
2759         IRDPSRAPIAttendee *This,
2760         LONG *plFlags);
2761 
2762     HRESULT (STDMETHODCALLTYPE *get_ConnectivityInfo)(
2763         IRDPSRAPIAttendee *This,
2764         IUnknown **ppVal);
2765 
2766     END_INTERFACE
2767 } IRDPSRAPIAttendeeVtbl;
2768 
2769 interface IRDPSRAPIAttendee {
2770     CONST_VTBL IRDPSRAPIAttendeeVtbl* lpVtbl;
2771 };
2772 
2773 #ifdef COBJMACROS
2774 #ifndef WIDL_C_INLINE_WRAPPERS
2775 /*** IUnknown methods ***/
2776 #define IRDPSRAPIAttendee_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2777 #define IRDPSRAPIAttendee_AddRef(This) (This)->lpVtbl->AddRef(This)
2778 #define IRDPSRAPIAttendee_Release(This) (This)->lpVtbl->Release(This)
2779 /*** IDispatch methods ***/
2780 #define IRDPSRAPIAttendee_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2781 #define IRDPSRAPIAttendee_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2782 #define IRDPSRAPIAttendee_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2783 #define IRDPSRAPIAttendee_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2784 /*** IRDPSRAPIAttendee methods ***/
2785 #define IRDPSRAPIAttendee_get_Id(This,pId) (This)->lpVtbl->get_Id(This,pId)
2786 #define IRDPSRAPIAttendee_get_RemoteName(This,pVal) (This)->lpVtbl->get_RemoteName(This,pVal)
2787 #define IRDPSRAPIAttendee_get_ControlLevel(This,pVal) (This)->lpVtbl->get_ControlLevel(This,pVal)
2788 #define IRDPSRAPIAttendee_put_ControlLevel(This,pNewVal) (This)->lpVtbl->put_ControlLevel(This,pNewVal)
2789 #define IRDPSRAPIAttendee_get_Invitation(This,ppVal) (This)->lpVtbl->get_Invitation(This,ppVal)
2790 #define IRDPSRAPIAttendee_TerminateConnection(This) (This)->lpVtbl->TerminateConnection(This)
2791 #define IRDPSRAPIAttendee_get_Flags(This,plFlags) (This)->lpVtbl->get_Flags(This,plFlags)
2792 #define IRDPSRAPIAttendee_get_ConnectivityInfo(This,ppVal) (This)->lpVtbl->get_ConnectivityInfo(This,ppVal)
2793 #else
2794 /*** IUnknown methods ***/
2795 static FORCEINLINE HRESULT IRDPSRAPIAttendee_QueryInterface(IRDPSRAPIAttendee* This,REFIID riid,void **ppvObject) {
2796     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2797 }
2798 static FORCEINLINE ULONG IRDPSRAPIAttendee_AddRef(IRDPSRAPIAttendee* This) {
2799     return This->lpVtbl->AddRef(This);
2800 }
2801 static FORCEINLINE ULONG IRDPSRAPIAttendee_Release(IRDPSRAPIAttendee* This) {
2802     return This->lpVtbl->Release(This);
2803 }
2804 /*** IDispatch methods ***/
2805 static FORCEINLINE HRESULT IRDPSRAPIAttendee_GetTypeInfoCount(IRDPSRAPIAttendee* This,UINT *pctinfo) {
2806     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2807 }
2808 static FORCEINLINE HRESULT IRDPSRAPIAttendee_GetTypeInfo(IRDPSRAPIAttendee* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2809     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2810 }
2811 static FORCEINLINE HRESULT IRDPSRAPIAttendee_GetIDsOfNames(IRDPSRAPIAttendee* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2812     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2813 }
2814 static FORCEINLINE HRESULT IRDPSRAPIAttendee_Invoke(IRDPSRAPIAttendee* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2815     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2816 }
2817 /*** IRDPSRAPIAttendee methods ***/
2818 static FORCEINLINE HRESULT IRDPSRAPIAttendee_get_Id(IRDPSRAPIAttendee* This,LONG *pId) {
2819     return This->lpVtbl->get_Id(This,pId);
2820 }
2821 static FORCEINLINE HRESULT IRDPSRAPIAttendee_get_RemoteName(IRDPSRAPIAttendee* This,BSTR *pVal) {
2822     return This->lpVtbl->get_RemoteName(This,pVal);
2823 }
2824 static FORCEINLINE HRESULT IRDPSRAPIAttendee_get_ControlLevel(IRDPSRAPIAttendee* This,CTRL_LEVEL *pVal) {
2825     return This->lpVtbl->get_ControlLevel(This,pVal);
2826 }
2827 static FORCEINLINE HRESULT IRDPSRAPIAttendee_put_ControlLevel(IRDPSRAPIAttendee* This,CTRL_LEVEL pNewVal) {
2828     return This->lpVtbl->put_ControlLevel(This,pNewVal);
2829 }
2830 static FORCEINLINE HRESULT IRDPSRAPIAttendee_get_Invitation(IRDPSRAPIAttendee* This,IRDPSRAPIInvitation **ppVal) {
2831     return This->lpVtbl->get_Invitation(This,ppVal);
2832 }
2833 static FORCEINLINE HRESULT IRDPSRAPIAttendee_TerminateConnection(IRDPSRAPIAttendee* This) {
2834     return This->lpVtbl->TerminateConnection(This);
2835 }
2836 static FORCEINLINE HRESULT IRDPSRAPIAttendee_get_Flags(IRDPSRAPIAttendee* This,LONG *plFlags) {
2837     return This->lpVtbl->get_Flags(This,plFlags);
2838 }
2839 static FORCEINLINE HRESULT IRDPSRAPIAttendee_get_ConnectivityInfo(IRDPSRAPIAttendee* This,IUnknown **ppVal) {
2840     return This->lpVtbl->get_ConnectivityInfo(This,ppVal);
2841 }
2842 #endif
2843 #endif
2844 
2845 #endif
2846 
2847 
2848 #endif  /* __IRDPSRAPIAttendee_INTERFACE_DEFINED__ */
2849 
2850 /*****************************************************************************
2851  * IRDPSRAPIAttendeeManager interface
2852  */
2853 #ifndef __IRDPSRAPIAttendeeManager_INTERFACE_DEFINED__
2854 #define __IRDPSRAPIAttendeeManager_INTERFACE_DEFINED__
2855 
2856 DEFINE_GUID(IID_IRDPSRAPIAttendeeManager, 0xba3a37e8, 0x33da, 0x4749, 0x8d,0xa0, 0x07,0xfa,0x34,0xda,0x79,0x44);
2857 #if defined(__cplusplus) && !defined(CINTERFACE)
2858 MIDL_INTERFACE("ba3a37e8-33da-4749-8da0-07fa34da7944")
2859 IRDPSRAPIAttendeeManager : public IDispatch
2860 {
2861     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
2862         IUnknown **retval) = 0;
2863 
2864     virtual HRESULT STDMETHODCALLTYPE get_Item(
2865         LONG id,
2866         IRDPSRAPIAttendee **ppItem) = 0;
2867 
2868 };
2869 #ifdef __CRT_UUID_DECL
2870 __CRT_UUID_DECL(IRDPSRAPIAttendeeManager, 0xba3a37e8, 0x33da, 0x4749, 0x8d,0xa0, 0x07,0xfa,0x34,0xda,0x79,0x44)
2871 #endif
2872 #else
2873 typedef struct IRDPSRAPIAttendeeManagerVtbl {
2874     BEGIN_INTERFACE
2875 
2876     /*** IUnknown methods ***/
2877     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2878         IRDPSRAPIAttendeeManager *This,
2879         REFIID riid,
2880         void **ppvObject);
2881 
2882     ULONG (STDMETHODCALLTYPE *AddRef)(
2883         IRDPSRAPIAttendeeManager *This);
2884 
2885     ULONG (STDMETHODCALLTYPE *Release)(
2886         IRDPSRAPIAttendeeManager *This);
2887 
2888     /*** IDispatch methods ***/
2889     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
2890         IRDPSRAPIAttendeeManager *This,
2891         UINT *pctinfo);
2892 
2893     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
2894         IRDPSRAPIAttendeeManager *This,
2895         UINT iTInfo,
2896         LCID lcid,
2897         ITypeInfo **ppTInfo);
2898 
2899     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
2900         IRDPSRAPIAttendeeManager *This,
2901         REFIID riid,
2902         LPOLESTR *rgszNames,
2903         UINT cNames,
2904         LCID lcid,
2905         DISPID *rgDispId);
2906 
2907     HRESULT (STDMETHODCALLTYPE *Invoke)(
2908         IRDPSRAPIAttendeeManager *This,
2909         DISPID dispIdMember,
2910         REFIID riid,
2911         LCID lcid,
2912         WORD wFlags,
2913         DISPPARAMS *pDispParams,
2914         VARIANT *pVarResult,
2915         EXCEPINFO *pExcepInfo,
2916         UINT *puArgErr);
2917 
2918     /*** IRDPSRAPIAttendeeManager methods ***/
2919     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
2920         IRDPSRAPIAttendeeManager *This,
2921         IUnknown **retval);
2922 
2923     HRESULT (STDMETHODCALLTYPE *get_Item)(
2924         IRDPSRAPIAttendeeManager *This,
2925         LONG id,
2926         IRDPSRAPIAttendee **ppItem);
2927 
2928     END_INTERFACE
2929 } IRDPSRAPIAttendeeManagerVtbl;
2930 
2931 interface IRDPSRAPIAttendeeManager {
2932     CONST_VTBL IRDPSRAPIAttendeeManagerVtbl* lpVtbl;
2933 };
2934 
2935 #ifdef COBJMACROS
2936 #ifndef WIDL_C_INLINE_WRAPPERS
2937 /*** IUnknown methods ***/
2938 #define IRDPSRAPIAttendeeManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2939 #define IRDPSRAPIAttendeeManager_AddRef(This) (This)->lpVtbl->AddRef(This)
2940 #define IRDPSRAPIAttendeeManager_Release(This) (This)->lpVtbl->Release(This)
2941 /*** IDispatch methods ***/
2942 #define IRDPSRAPIAttendeeManager_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
2943 #define IRDPSRAPIAttendeeManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
2944 #define IRDPSRAPIAttendeeManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
2945 #define IRDPSRAPIAttendeeManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
2946 /*** IRDPSRAPIAttendeeManager methods ***/
2947 #define IRDPSRAPIAttendeeManager_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval)
2948 #define IRDPSRAPIAttendeeManager_get_Item(This,id,ppItem) (This)->lpVtbl->get_Item(This,id,ppItem)
2949 #else
2950 /*** IUnknown methods ***/
2951 static FORCEINLINE HRESULT IRDPSRAPIAttendeeManager_QueryInterface(IRDPSRAPIAttendeeManager* This,REFIID riid,void **ppvObject) {
2952     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2953 }
2954 static FORCEINLINE ULONG IRDPSRAPIAttendeeManager_AddRef(IRDPSRAPIAttendeeManager* This) {
2955     return This->lpVtbl->AddRef(This);
2956 }
2957 static FORCEINLINE ULONG IRDPSRAPIAttendeeManager_Release(IRDPSRAPIAttendeeManager* This) {
2958     return This->lpVtbl->Release(This);
2959 }
2960 /*** IDispatch methods ***/
2961 static FORCEINLINE HRESULT IRDPSRAPIAttendeeManager_GetTypeInfoCount(IRDPSRAPIAttendeeManager* This,UINT *pctinfo) {
2962     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
2963 }
2964 static FORCEINLINE HRESULT IRDPSRAPIAttendeeManager_GetTypeInfo(IRDPSRAPIAttendeeManager* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
2965     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
2966 }
2967 static FORCEINLINE HRESULT IRDPSRAPIAttendeeManager_GetIDsOfNames(IRDPSRAPIAttendeeManager* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
2968     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
2969 }
2970 static FORCEINLINE HRESULT IRDPSRAPIAttendeeManager_Invoke(IRDPSRAPIAttendeeManager* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
2971     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
2972 }
2973 /*** IRDPSRAPIAttendeeManager methods ***/
2974 static FORCEINLINE HRESULT IRDPSRAPIAttendeeManager_get__NewEnum(IRDPSRAPIAttendeeManager* This,IUnknown **retval) {
2975     return This->lpVtbl->get__NewEnum(This,retval);
2976 }
2977 static FORCEINLINE HRESULT IRDPSRAPIAttendeeManager_get_Item(IRDPSRAPIAttendeeManager* This,LONG id,IRDPSRAPIAttendee **ppItem) {
2978     return This->lpVtbl->get_Item(This,id,ppItem);
2979 }
2980 #endif
2981 #endif
2982 
2983 #endif
2984 
2985 
2986 #endif  /* __IRDPSRAPIAttendeeManager_INTERFACE_DEFINED__ */
2987 
2988 /*****************************************************************************
2989  * IRDPSRAPIAttendeeDisconnectInfo interface
2990  */
2991 #ifndef __IRDPSRAPIAttendeeDisconnectInfo_INTERFACE_DEFINED__
2992 #define __IRDPSRAPIAttendeeDisconnectInfo_INTERFACE_DEFINED__
2993 
2994 DEFINE_GUID(IID_IRDPSRAPIAttendeeDisconnectInfo, 0xc187689f, 0x447c, 0x44a1, 0x9c,0x14, 0xff,0xfb,0xb3,0xb7,0xec,0x17);
2995 #if defined(__cplusplus) && !defined(CINTERFACE)
2996 MIDL_INTERFACE("c187689f-447c-44a1-9c14-fffbb3b7ec17")
2997 IRDPSRAPIAttendeeDisconnectInfo : public IDispatch
2998 {
2999     virtual HRESULT STDMETHODCALLTYPE get_Attendee(
3000         IRDPSRAPIAttendee **retval) = 0;
3001 
3002     virtual HRESULT STDMETHODCALLTYPE get_Reason(
3003         ATTENDEE_DISCONNECT_REASON *pReason) = 0;
3004 
3005     virtual HRESULT STDMETHODCALLTYPE get_Code(
3006         LONG *pVal) = 0;
3007 
3008 };
3009 #ifdef __CRT_UUID_DECL
3010 __CRT_UUID_DECL(IRDPSRAPIAttendeeDisconnectInfo, 0xc187689f, 0x447c, 0x44a1, 0x9c,0x14, 0xff,0xfb,0xb3,0xb7,0xec,0x17)
3011 #endif
3012 #else
3013 typedef struct IRDPSRAPIAttendeeDisconnectInfoVtbl {
3014     BEGIN_INTERFACE
3015 
3016     /*** IUnknown methods ***/
3017     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3018         IRDPSRAPIAttendeeDisconnectInfo *This,
3019         REFIID riid,
3020         void **ppvObject);
3021 
3022     ULONG (STDMETHODCALLTYPE *AddRef)(
3023         IRDPSRAPIAttendeeDisconnectInfo *This);
3024 
3025     ULONG (STDMETHODCALLTYPE *Release)(
3026         IRDPSRAPIAttendeeDisconnectInfo *This);
3027 
3028     /*** IDispatch methods ***/
3029     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
3030         IRDPSRAPIAttendeeDisconnectInfo *This,
3031         UINT *pctinfo);
3032 
3033     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
3034         IRDPSRAPIAttendeeDisconnectInfo *This,
3035         UINT iTInfo,
3036         LCID lcid,
3037         ITypeInfo **ppTInfo);
3038 
3039     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
3040         IRDPSRAPIAttendeeDisconnectInfo *This,
3041         REFIID riid,
3042         LPOLESTR *rgszNames,
3043         UINT cNames,
3044         LCID lcid,
3045         DISPID *rgDispId);
3046 
3047     HRESULT (STDMETHODCALLTYPE *Invoke)(
3048         IRDPSRAPIAttendeeDisconnectInfo *This,
3049         DISPID dispIdMember,
3050         REFIID riid,
3051         LCID lcid,
3052         WORD wFlags,
3053         DISPPARAMS *pDispParams,
3054         VARIANT *pVarResult,
3055         EXCEPINFO *pExcepInfo,
3056         UINT *puArgErr);
3057 
3058     /*** IRDPSRAPIAttendeeDisconnectInfo methods ***/
3059     HRESULT (STDMETHODCALLTYPE *get_Attendee)(
3060         IRDPSRAPIAttendeeDisconnectInfo *This,
3061         IRDPSRAPIAttendee **retval);
3062 
3063     HRESULT (STDMETHODCALLTYPE *get_Reason)(
3064         IRDPSRAPIAttendeeDisconnectInfo *This,
3065         ATTENDEE_DISCONNECT_REASON *pReason);
3066 
3067     HRESULT (STDMETHODCALLTYPE *get_Code)(
3068         IRDPSRAPIAttendeeDisconnectInfo *This,
3069         LONG *pVal);
3070 
3071     END_INTERFACE
3072 } IRDPSRAPIAttendeeDisconnectInfoVtbl;
3073 
3074 interface IRDPSRAPIAttendeeDisconnectInfo {
3075     CONST_VTBL IRDPSRAPIAttendeeDisconnectInfoVtbl* lpVtbl;
3076 };
3077 
3078 #ifdef COBJMACROS
3079 #ifndef WIDL_C_INLINE_WRAPPERS
3080 /*** IUnknown methods ***/
3081 #define IRDPSRAPIAttendeeDisconnectInfo_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3082 #define IRDPSRAPIAttendeeDisconnectInfo_AddRef(This) (This)->lpVtbl->AddRef(This)
3083 #define IRDPSRAPIAttendeeDisconnectInfo_Release(This) (This)->lpVtbl->Release(This)
3084 /*** IDispatch methods ***/
3085 #define IRDPSRAPIAttendeeDisconnectInfo_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3086 #define IRDPSRAPIAttendeeDisconnectInfo_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3087 #define IRDPSRAPIAttendeeDisconnectInfo_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3088 #define IRDPSRAPIAttendeeDisconnectInfo_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3089 /*** IRDPSRAPIAttendeeDisconnectInfo methods ***/
3090 #define IRDPSRAPIAttendeeDisconnectInfo_get_Attendee(This,retval) (This)->lpVtbl->get_Attendee(This,retval)
3091 #define IRDPSRAPIAttendeeDisconnectInfo_get_Reason(This,pReason) (This)->lpVtbl->get_Reason(This,pReason)
3092 #define IRDPSRAPIAttendeeDisconnectInfo_get_Code(This,pVal) (This)->lpVtbl->get_Code(This,pVal)
3093 #else
3094 /*** IUnknown methods ***/
3095 static FORCEINLINE HRESULT IRDPSRAPIAttendeeDisconnectInfo_QueryInterface(IRDPSRAPIAttendeeDisconnectInfo* This,REFIID riid,void **ppvObject) {
3096     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3097 }
3098 static FORCEINLINE ULONG IRDPSRAPIAttendeeDisconnectInfo_AddRef(IRDPSRAPIAttendeeDisconnectInfo* This) {
3099     return This->lpVtbl->AddRef(This);
3100 }
3101 static FORCEINLINE ULONG IRDPSRAPIAttendeeDisconnectInfo_Release(IRDPSRAPIAttendeeDisconnectInfo* This) {
3102     return This->lpVtbl->Release(This);
3103 }
3104 /*** IDispatch methods ***/
3105 static FORCEINLINE HRESULT IRDPSRAPIAttendeeDisconnectInfo_GetTypeInfoCount(IRDPSRAPIAttendeeDisconnectInfo* This,UINT *pctinfo) {
3106     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
3107 }
3108 static FORCEINLINE HRESULT IRDPSRAPIAttendeeDisconnectInfo_GetTypeInfo(IRDPSRAPIAttendeeDisconnectInfo* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
3109     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
3110 }
3111 static FORCEINLINE HRESULT IRDPSRAPIAttendeeDisconnectInfo_GetIDsOfNames(IRDPSRAPIAttendeeDisconnectInfo* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
3112     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
3113 }
3114 static FORCEINLINE HRESULT IRDPSRAPIAttendeeDisconnectInfo_Invoke(IRDPSRAPIAttendeeDisconnectInfo* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
3115     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
3116 }
3117 /*** IRDPSRAPIAttendeeDisconnectInfo methods ***/
3118 static FORCEINLINE HRESULT IRDPSRAPIAttendeeDisconnectInfo_get_Attendee(IRDPSRAPIAttendeeDisconnectInfo* This,IRDPSRAPIAttendee **retval) {
3119     return This->lpVtbl->get_Attendee(This,retval);
3120 }
3121 static FORCEINLINE HRESULT IRDPSRAPIAttendeeDisconnectInfo_get_Reason(IRDPSRAPIAttendeeDisconnectInfo* This,ATTENDEE_DISCONNECT_REASON *pReason) {
3122     return This->lpVtbl->get_Reason(This,pReason);
3123 }
3124 static FORCEINLINE HRESULT IRDPSRAPIAttendeeDisconnectInfo_get_Code(IRDPSRAPIAttendeeDisconnectInfo* This,LONG *pVal) {
3125     return This->lpVtbl->get_Code(This,pVal);
3126 }
3127 #endif
3128 #endif
3129 
3130 #endif
3131 
3132 
3133 #endif  /* __IRDPSRAPIAttendeeDisconnectInfo_INTERFACE_DEFINED__ */
3134 
3135 /*****************************************************************************
3136  * IRDPSRAPIVirtualChannel interface
3137  */
3138 #ifndef __IRDPSRAPIVirtualChannel_INTERFACE_DEFINED__
3139 #define __IRDPSRAPIVirtualChannel_INTERFACE_DEFINED__
3140 
3141 DEFINE_GUID(IID_IRDPSRAPIVirtualChannel, 0x05e12f95, 0x28b3, 0x4c9a, 0x87,0x80, 0xd0,0x24,0x85,0x74,0xa1,0xe0);
3142 #if defined(__cplusplus) && !defined(CINTERFACE)
3143 MIDL_INTERFACE("05e12f95-28b3-4c9a-8780-d0248574a1e0")
3144 IRDPSRAPIVirtualChannel : public IDispatch
3145 {
3146     virtual HRESULT STDMETHODCALLTYPE SendData(
3147         BSTR bstrData,
3148         LONG lAttendeeId,
3149         ULONG ChannelSendFlags) = 0;
3150 
3151     virtual HRESULT STDMETHODCALLTYPE SetAccess(
3152         LONG lAttendeeId,
3153         CHANNEL_ACCESS_ENUM AccessType) = 0;
3154 
3155     virtual HRESULT STDMETHODCALLTYPE get_Name(
3156         BSTR *pbstrName) = 0;
3157 
3158     virtual HRESULT STDMETHODCALLTYPE get_Flags(
3159         LONG *plFlags) = 0;
3160 
3161     virtual HRESULT STDMETHODCALLTYPE get_Priority(
3162         CHANNEL_PRIORITY *pPriority) = 0;
3163 
3164 };
3165 #ifdef __CRT_UUID_DECL
3166 __CRT_UUID_DECL(IRDPSRAPIVirtualChannel, 0x05e12f95, 0x28b3, 0x4c9a, 0x87,0x80, 0xd0,0x24,0x85,0x74,0xa1,0xe0)
3167 #endif
3168 #else
3169 typedef struct IRDPSRAPIVirtualChannelVtbl {
3170     BEGIN_INTERFACE
3171 
3172     /*** IUnknown methods ***/
3173     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3174         IRDPSRAPIVirtualChannel *This,
3175         REFIID riid,
3176         void **ppvObject);
3177 
3178     ULONG (STDMETHODCALLTYPE *AddRef)(
3179         IRDPSRAPIVirtualChannel *This);
3180 
3181     ULONG (STDMETHODCALLTYPE *Release)(
3182         IRDPSRAPIVirtualChannel *This);
3183 
3184     /*** IDispatch methods ***/
3185     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
3186         IRDPSRAPIVirtualChannel *This,
3187         UINT *pctinfo);
3188 
3189     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
3190         IRDPSRAPIVirtualChannel *This,
3191         UINT iTInfo,
3192         LCID lcid,
3193         ITypeInfo **ppTInfo);
3194 
3195     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
3196         IRDPSRAPIVirtualChannel *This,
3197         REFIID riid,
3198         LPOLESTR *rgszNames,
3199         UINT cNames,
3200         LCID lcid,
3201         DISPID *rgDispId);
3202 
3203     HRESULT (STDMETHODCALLTYPE *Invoke)(
3204         IRDPSRAPIVirtualChannel *This,
3205         DISPID dispIdMember,
3206         REFIID riid,
3207         LCID lcid,
3208         WORD wFlags,
3209         DISPPARAMS *pDispParams,
3210         VARIANT *pVarResult,
3211         EXCEPINFO *pExcepInfo,
3212         UINT *puArgErr);
3213 
3214     /*** IRDPSRAPIVirtualChannel methods ***/
3215     HRESULT (STDMETHODCALLTYPE *SendData)(
3216         IRDPSRAPIVirtualChannel *This,
3217         BSTR bstrData,
3218         LONG lAttendeeId,
3219         ULONG ChannelSendFlags);
3220 
3221     HRESULT (STDMETHODCALLTYPE *SetAccess)(
3222         IRDPSRAPIVirtualChannel *This,
3223         LONG lAttendeeId,
3224         CHANNEL_ACCESS_ENUM AccessType);
3225 
3226     HRESULT (STDMETHODCALLTYPE *get_Name)(
3227         IRDPSRAPIVirtualChannel *This,
3228         BSTR *pbstrName);
3229 
3230     HRESULT (STDMETHODCALLTYPE *get_Flags)(
3231         IRDPSRAPIVirtualChannel *This,
3232         LONG *plFlags);
3233 
3234     HRESULT (STDMETHODCALLTYPE *get_Priority)(
3235         IRDPSRAPIVirtualChannel *This,
3236         CHANNEL_PRIORITY *pPriority);
3237 
3238     END_INTERFACE
3239 } IRDPSRAPIVirtualChannelVtbl;
3240 
3241 interface IRDPSRAPIVirtualChannel {
3242     CONST_VTBL IRDPSRAPIVirtualChannelVtbl* lpVtbl;
3243 };
3244 
3245 #ifdef COBJMACROS
3246 #ifndef WIDL_C_INLINE_WRAPPERS
3247 /*** IUnknown methods ***/
3248 #define IRDPSRAPIVirtualChannel_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3249 #define IRDPSRAPIVirtualChannel_AddRef(This) (This)->lpVtbl->AddRef(This)
3250 #define IRDPSRAPIVirtualChannel_Release(This) (This)->lpVtbl->Release(This)
3251 /*** IDispatch methods ***/
3252 #define IRDPSRAPIVirtualChannel_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3253 #define IRDPSRAPIVirtualChannel_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3254 #define IRDPSRAPIVirtualChannel_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3255 #define IRDPSRAPIVirtualChannel_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3256 /*** IRDPSRAPIVirtualChannel methods ***/
3257 #define IRDPSRAPIVirtualChannel_SendData(This,bstrData,lAttendeeId,ChannelSendFlags) (This)->lpVtbl->SendData(This,bstrData,lAttendeeId,ChannelSendFlags)
3258 #define IRDPSRAPIVirtualChannel_SetAccess(This,lAttendeeId,AccessType) (This)->lpVtbl->SetAccess(This,lAttendeeId,AccessType)
3259 #define IRDPSRAPIVirtualChannel_get_Name(This,pbstrName) (This)->lpVtbl->get_Name(This,pbstrName)
3260 #define IRDPSRAPIVirtualChannel_get_Flags(This,plFlags) (This)->lpVtbl->get_Flags(This,plFlags)
3261 #define IRDPSRAPIVirtualChannel_get_Priority(This,pPriority) (This)->lpVtbl->get_Priority(This,pPriority)
3262 #else
3263 /*** IUnknown methods ***/
3264 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_QueryInterface(IRDPSRAPIVirtualChannel* This,REFIID riid,void **ppvObject) {
3265     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3266 }
3267 static FORCEINLINE ULONG IRDPSRAPIVirtualChannel_AddRef(IRDPSRAPIVirtualChannel* This) {
3268     return This->lpVtbl->AddRef(This);
3269 }
3270 static FORCEINLINE ULONG IRDPSRAPIVirtualChannel_Release(IRDPSRAPIVirtualChannel* This) {
3271     return This->lpVtbl->Release(This);
3272 }
3273 /*** IDispatch methods ***/
3274 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_GetTypeInfoCount(IRDPSRAPIVirtualChannel* This,UINT *pctinfo) {
3275     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
3276 }
3277 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_GetTypeInfo(IRDPSRAPIVirtualChannel* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
3278     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
3279 }
3280 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_GetIDsOfNames(IRDPSRAPIVirtualChannel* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
3281     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
3282 }
3283 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_Invoke(IRDPSRAPIVirtualChannel* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
3284     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
3285 }
3286 /*** IRDPSRAPIVirtualChannel methods ***/
3287 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_SendData(IRDPSRAPIVirtualChannel* This,BSTR bstrData,LONG lAttendeeId,ULONG ChannelSendFlags) {
3288     return This->lpVtbl->SendData(This,bstrData,lAttendeeId,ChannelSendFlags);
3289 }
3290 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_SetAccess(IRDPSRAPIVirtualChannel* This,LONG lAttendeeId,CHANNEL_ACCESS_ENUM AccessType) {
3291     return This->lpVtbl->SetAccess(This,lAttendeeId,AccessType);
3292 }
3293 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_get_Name(IRDPSRAPIVirtualChannel* This,BSTR *pbstrName) {
3294     return This->lpVtbl->get_Name(This,pbstrName);
3295 }
3296 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_get_Flags(IRDPSRAPIVirtualChannel* This,LONG *plFlags) {
3297     return This->lpVtbl->get_Flags(This,plFlags);
3298 }
3299 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannel_get_Priority(IRDPSRAPIVirtualChannel* This,CHANNEL_PRIORITY *pPriority) {
3300     return This->lpVtbl->get_Priority(This,pPriority);
3301 }
3302 #endif
3303 #endif
3304 
3305 #endif
3306 
3307 
3308 #endif  /* __IRDPSRAPIVirtualChannel_INTERFACE_DEFINED__ */
3309 
3310 /*****************************************************************************
3311  * IRDPSRAPIVirtualChannelManager interface
3312  */
3313 #ifndef __IRDPSRAPIVirtualChannelManager_INTERFACE_DEFINED__
3314 #define __IRDPSRAPIVirtualChannelManager_INTERFACE_DEFINED__
3315 
3316 DEFINE_GUID(IID_IRDPSRAPIVirtualChannelManager, 0x0d11c661, 0x5d0d, 0x4ee4, 0x89,0xdf, 0x21,0x66,0xae,0x1f,0xdf,0xed);
3317 #if defined(__cplusplus) && !defined(CINTERFACE)
3318 MIDL_INTERFACE("0d11c661-5d0d-4ee4-89df-2166ae1fdfed")
3319 IRDPSRAPIVirtualChannelManager : public IDispatch
3320 {
3321     virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
3322         IUnknown **retval) = 0;
3323 
3324     virtual HRESULT STDMETHODCALLTYPE get_Item(
3325         VARIANT item,
3326         IRDPSRAPIVirtualChannel **pChannel) = 0;
3327 
3328     virtual HRESULT STDMETHODCALLTYPE CreateVirtualChannel(
3329         BSTR bstrChannelName,
3330         CHANNEL_PRIORITY Priority,
3331         ULONG ChannelFlags,
3332         IRDPSRAPIVirtualChannel **ppChannel) = 0;
3333 
3334 };
3335 #ifdef __CRT_UUID_DECL
3336 __CRT_UUID_DECL(IRDPSRAPIVirtualChannelManager, 0x0d11c661, 0x5d0d, 0x4ee4, 0x89,0xdf, 0x21,0x66,0xae,0x1f,0xdf,0xed)
3337 #endif
3338 #else
3339 typedef struct IRDPSRAPIVirtualChannelManagerVtbl {
3340     BEGIN_INTERFACE
3341 
3342     /*** IUnknown methods ***/
3343     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3344         IRDPSRAPIVirtualChannelManager *This,
3345         REFIID riid,
3346         void **ppvObject);
3347 
3348     ULONG (STDMETHODCALLTYPE *AddRef)(
3349         IRDPSRAPIVirtualChannelManager *This);
3350 
3351     ULONG (STDMETHODCALLTYPE *Release)(
3352         IRDPSRAPIVirtualChannelManager *This);
3353 
3354     /*** IDispatch methods ***/
3355     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
3356         IRDPSRAPIVirtualChannelManager *This,
3357         UINT *pctinfo);
3358 
3359     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
3360         IRDPSRAPIVirtualChannelManager *This,
3361         UINT iTInfo,
3362         LCID lcid,
3363         ITypeInfo **ppTInfo);
3364 
3365     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
3366         IRDPSRAPIVirtualChannelManager *This,
3367         REFIID riid,
3368         LPOLESTR *rgszNames,
3369         UINT cNames,
3370         LCID lcid,
3371         DISPID *rgDispId);
3372 
3373     HRESULT (STDMETHODCALLTYPE *Invoke)(
3374         IRDPSRAPIVirtualChannelManager *This,
3375         DISPID dispIdMember,
3376         REFIID riid,
3377         LCID lcid,
3378         WORD wFlags,
3379         DISPPARAMS *pDispParams,
3380         VARIANT *pVarResult,
3381         EXCEPINFO *pExcepInfo,
3382         UINT *puArgErr);
3383 
3384     /*** IRDPSRAPIVirtualChannelManager methods ***/
3385     HRESULT (STDMETHODCALLTYPE *get__NewEnum)(
3386         IRDPSRAPIVirtualChannelManager *This,
3387         IUnknown **retval);
3388 
3389     HRESULT (STDMETHODCALLTYPE *get_Item)(
3390         IRDPSRAPIVirtualChannelManager *This,
3391         VARIANT item,
3392         IRDPSRAPIVirtualChannel **pChannel);
3393 
3394     HRESULT (STDMETHODCALLTYPE *CreateVirtualChannel)(
3395         IRDPSRAPIVirtualChannelManager *This,
3396         BSTR bstrChannelName,
3397         CHANNEL_PRIORITY Priority,
3398         ULONG ChannelFlags,
3399         IRDPSRAPIVirtualChannel **ppChannel);
3400 
3401     END_INTERFACE
3402 } IRDPSRAPIVirtualChannelManagerVtbl;
3403 
3404 interface IRDPSRAPIVirtualChannelManager {
3405     CONST_VTBL IRDPSRAPIVirtualChannelManagerVtbl* lpVtbl;
3406 };
3407 
3408 #ifdef COBJMACROS
3409 #ifndef WIDL_C_INLINE_WRAPPERS
3410 /*** IUnknown methods ***/
3411 #define IRDPSRAPIVirtualChannelManager_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3412 #define IRDPSRAPIVirtualChannelManager_AddRef(This) (This)->lpVtbl->AddRef(This)
3413 #define IRDPSRAPIVirtualChannelManager_Release(This) (This)->lpVtbl->Release(This)
3414 /*** IDispatch methods ***/
3415 #define IRDPSRAPIVirtualChannelManager_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3416 #define IRDPSRAPIVirtualChannelManager_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3417 #define IRDPSRAPIVirtualChannelManager_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3418 #define IRDPSRAPIVirtualChannelManager_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3419 /*** IRDPSRAPIVirtualChannelManager methods ***/
3420 #define IRDPSRAPIVirtualChannelManager_get__NewEnum(This,retval) (This)->lpVtbl->get__NewEnum(This,retval)
3421 #define IRDPSRAPIVirtualChannelManager_get_Item(This,item,pChannel) (This)->lpVtbl->get_Item(This,item,pChannel)
3422 #define IRDPSRAPIVirtualChannelManager_CreateVirtualChannel(This,bstrChannelName,Priority,ChannelFlags,ppChannel) (This)->lpVtbl->CreateVirtualChannel(This,bstrChannelName,Priority,ChannelFlags,ppChannel)
3423 #else
3424 /*** IUnknown methods ***/
3425 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannelManager_QueryInterface(IRDPSRAPIVirtualChannelManager* This,REFIID riid,void **ppvObject) {
3426     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3427 }
3428 static FORCEINLINE ULONG IRDPSRAPIVirtualChannelManager_AddRef(IRDPSRAPIVirtualChannelManager* This) {
3429     return This->lpVtbl->AddRef(This);
3430 }
3431 static FORCEINLINE ULONG IRDPSRAPIVirtualChannelManager_Release(IRDPSRAPIVirtualChannelManager* This) {
3432     return This->lpVtbl->Release(This);
3433 }
3434 /*** IDispatch methods ***/
3435 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannelManager_GetTypeInfoCount(IRDPSRAPIVirtualChannelManager* This,UINT *pctinfo) {
3436     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
3437 }
3438 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannelManager_GetTypeInfo(IRDPSRAPIVirtualChannelManager* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
3439     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
3440 }
3441 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannelManager_GetIDsOfNames(IRDPSRAPIVirtualChannelManager* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
3442     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
3443 }
3444 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannelManager_Invoke(IRDPSRAPIVirtualChannelManager* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
3445     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
3446 }
3447 /*** IRDPSRAPIVirtualChannelManager methods ***/
3448 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannelManager_get__NewEnum(IRDPSRAPIVirtualChannelManager* This,IUnknown **retval) {
3449     return This->lpVtbl->get__NewEnum(This,retval);
3450 }
3451 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannelManager_get_Item(IRDPSRAPIVirtualChannelManager* This,VARIANT item,IRDPSRAPIVirtualChannel **pChannel) {
3452     return This->lpVtbl->get_Item(This,item,pChannel);
3453 }
3454 static FORCEINLINE HRESULT IRDPSRAPIVirtualChannelManager_CreateVirtualChannel(IRDPSRAPIVirtualChannelManager* This,BSTR bstrChannelName,CHANNEL_PRIORITY Priority,ULONG ChannelFlags,IRDPSRAPIVirtualChannel **ppChannel) {
3455     return This->lpVtbl->CreateVirtualChannel(This,bstrChannelName,Priority,ChannelFlags,ppChannel);
3456 }
3457 #endif
3458 #endif
3459 
3460 #endif
3461 
3462 
3463 #endif  /* __IRDPSRAPIVirtualChannelManager_INTERFACE_DEFINED__ */
3464 
3465 /*****************************************************************************
3466  * IRDPSRAPIViewer interface
3467  */
3468 #ifndef __IRDPSRAPIViewer_INTERFACE_DEFINED__
3469 #define __IRDPSRAPIViewer_INTERFACE_DEFINED__
3470 
3471 DEFINE_GUID(IID_IRDPSRAPIViewer, 0xc6bfcd38, 0x8ce9, 0x404d, 0x8a,0xe8, 0xf3,0x1d,0x00,0xc6,0x5c,0xb5);
3472 #if defined(__cplusplus) && !defined(CINTERFACE)
3473 MIDL_INTERFACE("c6bfcd38-8ce9-404d-8ae8-f31d00c65cb5")
3474 IRDPSRAPIViewer : public IDispatch
3475 {
3476     virtual HRESULT STDMETHODCALLTYPE Connect(
3477         BSTR bstrConnectionString,
3478         BSTR bstrName,
3479         BSTR bstrPassword) = 0;
3480 
3481     virtual HRESULT STDMETHODCALLTYPE Disconnect(
3482         ) = 0;
3483 
3484     virtual HRESULT STDMETHODCALLTYPE get_Attendees(
3485         IRDPSRAPIAttendeeManager **ppVal) = 0;
3486 
3487     virtual HRESULT STDMETHODCALLTYPE get_Invitations(
3488         IRDPSRAPIInvitationManager **ppVal) = 0;
3489 
3490     virtual HRESULT STDMETHODCALLTYPE get_ApplicationFilter(
3491         IRDPSRAPIApplicationFilter **ppVal) = 0;
3492 
3493     virtual HRESULT STDMETHODCALLTYPE get_VirtualChannelManager(
3494         IRDPSRAPIVirtualChannelManager **ppVal) = 0;
3495 
3496     virtual HRESULT STDMETHODCALLTYPE put_SmartSizing(
3497         VARIANT_BOOL vbSmartSizing) = 0;
3498 
3499     virtual HRESULT STDMETHODCALLTYPE get_SmartSizing(
3500         VARIANT_BOOL *pvbSmartSizing) = 0;
3501 
3502     virtual HRESULT STDMETHODCALLTYPE RequestControl(
3503         CTRL_LEVEL CtrlLevel) = 0;
3504 
3505     virtual HRESULT STDMETHODCALLTYPE put_DisconnectedText(
3506         BSTR bstrDisconnectedText) = 0;
3507 
3508     virtual HRESULT STDMETHODCALLTYPE get_DisconnectedText(
3509         BSTR *pbstrDisconnectedText) = 0;
3510 
3511     virtual HRESULT STDMETHODCALLTYPE RequestColorDepthChange(
3512         LONG Bpp) = 0;
3513 
3514     virtual HRESULT STDMETHODCALLTYPE get_Properties(
3515         IRDPSRAPISessionProperties **ppVal) = 0;
3516 
3517     virtual HRESULT STDMETHODCALLTYPE StartReverseConnectListener(
3518         BSTR bstrConnectionString,
3519         BSTR bstrUserName,
3520         BSTR bstrPassword,
3521         BSTR *pbstrReverseConnectString) = 0;
3522 
3523 };
3524 #ifdef __CRT_UUID_DECL
3525 __CRT_UUID_DECL(IRDPSRAPIViewer, 0xc6bfcd38, 0x8ce9, 0x404d, 0x8a,0xe8, 0xf3,0x1d,0x00,0xc6,0x5c,0xb5)
3526 #endif
3527 #else
3528 typedef struct IRDPSRAPIViewerVtbl {
3529     BEGIN_INTERFACE
3530 
3531     /*** IUnknown methods ***/
3532     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3533         IRDPSRAPIViewer *This,
3534         REFIID riid,
3535         void **ppvObject);
3536 
3537     ULONG (STDMETHODCALLTYPE *AddRef)(
3538         IRDPSRAPIViewer *This);
3539 
3540     ULONG (STDMETHODCALLTYPE *Release)(
3541         IRDPSRAPIViewer *This);
3542 
3543     /*** IDispatch methods ***/
3544     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
3545         IRDPSRAPIViewer *This,
3546         UINT *pctinfo);
3547 
3548     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
3549         IRDPSRAPIViewer *This,
3550         UINT iTInfo,
3551         LCID lcid,
3552         ITypeInfo **ppTInfo);
3553 
3554     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
3555         IRDPSRAPIViewer *This,
3556         REFIID riid,
3557         LPOLESTR *rgszNames,
3558         UINT cNames,
3559         LCID lcid,
3560         DISPID *rgDispId);
3561 
3562     HRESULT (STDMETHODCALLTYPE *Invoke)(
3563         IRDPSRAPIViewer *This,
3564         DISPID dispIdMember,
3565         REFIID riid,
3566         LCID lcid,
3567         WORD wFlags,
3568         DISPPARAMS *pDispParams,
3569         VARIANT *pVarResult,
3570         EXCEPINFO *pExcepInfo,
3571         UINT *puArgErr);
3572 
3573     /*** IRDPSRAPIViewer methods ***/
3574     HRESULT (STDMETHODCALLTYPE *Connect)(
3575         IRDPSRAPIViewer *This,
3576         BSTR bstrConnectionString,
3577         BSTR bstrName,
3578         BSTR bstrPassword);
3579 
3580     HRESULT (STDMETHODCALLTYPE *Disconnect)(
3581         IRDPSRAPIViewer *This);
3582 
3583     HRESULT (STDMETHODCALLTYPE *get_Attendees)(
3584         IRDPSRAPIViewer *This,
3585         IRDPSRAPIAttendeeManager **ppVal);
3586 
3587     HRESULT (STDMETHODCALLTYPE *get_Invitations)(
3588         IRDPSRAPIViewer *This,
3589         IRDPSRAPIInvitationManager **ppVal);
3590 
3591     HRESULT (STDMETHODCALLTYPE *get_ApplicationFilter)(
3592         IRDPSRAPIViewer *This,
3593         IRDPSRAPIApplicationFilter **ppVal);
3594 
3595     HRESULT (STDMETHODCALLTYPE *get_VirtualChannelManager)(
3596         IRDPSRAPIViewer *This,
3597         IRDPSRAPIVirtualChannelManager **ppVal);
3598 
3599     HRESULT (STDMETHODCALLTYPE *put_SmartSizing)(
3600         IRDPSRAPIViewer *This,
3601         VARIANT_BOOL vbSmartSizing);
3602 
3603     HRESULT (STDMETHODCALLTYPE *get_SmartSizing)(
3604         IRDPSRAPIViewer *This,
3605         VARIANT_BOOL *pvbSmartSizing);
3606 
3607     HRESULT (STDMETHODCALLTYPE *RequestControl)(
3608         IRDPSRAPIViewer *This,
3609         CTRL_LEVEL CtrlLevel);
3610 
3611     HRESULT (STDMETHODCALLTYPE *put_DisconnectedText)(
3612         IRDPSRAPIViewer *This,
3613         BSTR bstrDisconnectedText);
3614 
3615     HRESULT (STDMETHODCALLTYPE *get_DisconnectedText)(
3616         IRDPSRAPIViewer *This,
3617         BSTR *pbstrDisconnectedText);
3618 
3619     HRESULT (STDMETHODCALLTYPE *RequestColorDepthChange)(
3620         IRDPSRAPIViewer *This,
3621         LONG Bpp);
3622 
3623     HRESULT (STDMETHODCALLTYPE *get_Properties)(
3624         IRDPSRAPIViewer *This,
3625         IRDPSRAPISessionProperties **ppVal);
3626 
3627     HRESULT (STDMETHODCALLTYPE *StartReverseConnectListener)(
3628         IRDPSRAPIViewer *This,
3629         BSTR bstrConnectionString,
3630         BSTR bstrUserName,
3631         BSTR bstrPassword,
3632         BSTR *pbstrReverseConnectString);
3633 
3634     END_INTERFACE
3635 } IRDPSRAPIViewerVtbl;
3636 
3637 interface IRDPSRAPIViewer {
3638     CONST_VTBL IRDPSRAPIViewerVtbl* lpVtbl;
3639 };
3640 
3641 #ifdef COBJMACROS
3642 #ifndef WIDL_C_INLINE_WRAPPERS
3643 /*** IUnknown methods ***/
3644 #define IRDPSRAPIViewer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3645 #define IRDPSRAPIViewer_AddRef(This) (This)->lpVtbl->AddRef(This)
3646 #define IRDPSRAPIViewer_Release(This) (This)->lpVtbl->Release(This)
3647 /*** IDispatch methods ***/
3648 #define IRDPSRAPIViewer_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
3649 #define IRDPSRAPIViewer_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
3650 #define IRDPSRAPIViewer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
3651 #define IRDPSRAPIViewer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
3652 /*** IRDPSRAPIViewer methods ***/
3653 #define IRDPSRAPIViewer_Connect(This,bstrConnectionString,bstrName,bstrPassword) (This)->lpVtbl->Connect(This,bstrConnectionString,bstrName,bstrPassword)
3654 #define IRDPSRAPIViewer_Disconnect(This) (This)->lpVtbl->Disconnect(This)
3655 #define IRDPSRAPIViewer_get_Attendees(This,ppVal) (This)->lpVtbl->get_Attendees(This,ppVal)
3656 #define IRDPSRAPIViewer_get_Invitations(This,ppVal) (This)->lpVtbl->get_Invitations(This,ppVal)
3657 #define IRDPSRAPIViewer_get_ApplicationFilter(This,ppVal) (This)->lpVtbl->get_ApplicationFilter(This,ppVal)
3658 #define IRDPSRAPIViewer_get_VirtualChannelManager(This,ppVal) (This)->lpVtbl->get_VirtualChannelManager(This,ppVal)
3659 #define IRDPSRAPIViewer_put_SmartSizing(This,vbSmartSizing) (This)->lpVtbl->put_SmartSizing(This,vbSmartSizing)
3660 #define IRDPSRAPIViewer_get_SmartSizing(This,pvbSmartSizing) (This)->lpVtbl->get_SmartSizing(This,pvbSmartSizing)
3661 #define IRDPSRAPIViewer_RequestControl(This,CtrlLevel) (This)->lpVtbl->RequestControl(This,CtrlLevel)
3662 #define IRDPSRAPIViewer_put_DisconnectedText(This,bstrDisconnectedText) (This)->lpVtbl->put_DisconnectedText(This,bstrDisconnectedText)
3663 #define IRDPSRAPIViewer_get_DisconnectedText(This,pbstrDisconnectedText) (This)->lpVtbl->get_DisconnectedText(This,pbstrDisconnectedText)
3664 #define IRDPSRAPIViewer_RequestColorDepthChange(This,Bpp) (This)->lpVtbl->RequestColorDepthChange(This,Bpp)
3665 #define IRDPSRAPIViewer_get_Properties(This,ppVal) (This)->lpVtbl->get_Properties(This,ppVal)
3666 #define IRDPSRAPIViewer_StartReverseConnectListener(This,bstrConnectionString,bstrUserName,bstrPassword,pbstrReverseConnectString) (This)->lpVtbl->StartReverseConnectListener(This,bstrConnectionString,bstrUserName,bstrPassword,pbstrReverseConnectString)
3667 #else
3668 /*** IUnknown methods ***/
3669 static FORCEINLINE HRESULT IRDPSRAPIViewer_QueryInterface(IRDPSRAPIViewer* This,REFIID riid,void **ppvObject) {
3670     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3671 }
3672 static FORCEINLINE ULONG IRDPSRAPIViewer_AddRef(IRDPSRAPIViewer* This) {
3673     return This->lpVtbl->AddRef(This);
3674 }
3675 static FORCEINLINE ULONG IRDPSRAPIViewer_Release(IRDPSRAPIViewer* This) {
3676     return This->lpVtbl->Release(This);
3677 }
3678 /*** IDispatch methods ***/
3679 static FORCEINLINE HRESULT IRDPSRAPIViewer_GetTypeInfoCount(IRDPSRAPIViewer* This,UINT *pctinfo) {
3680     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
3681 }
3682 static FORCEINLINE HRESULT IRDPSRAPIViewer_GetTypeInfo(IRDPSRAPIViewer* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
3683     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
3684 }
3685 static FORCEINLINE HRESULT IRDPSRAPIViewer_GetIDsOfNames(IRDPSRAPIViewer* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
3686     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
3687 }
3688 static FORCEINLINE HRESULT IRDPSRAPIViewer_Invoke(IRDPSRAPIViewer* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
3689     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
3690 }
3691 /*** IRDPSRAPIViewer methods ***/
3692 static FORCEINLINE HRESULT IRDPSRAPIViewer_Connect(IRDPSRAPIViewer* This,BSTR bstrConnectionString,BSTR bstrName,BSTR bstrPassword) {
3693     return This->lpVtbl->Connect(This,bstrConnectionString,bstrName,bstrPassword);
3694 }
3695 static FORCEINLINE HRESULT IRDPSRAPIViewer_Disconnect(IRDPSRAPIViewer* This) {
3696     return This->lpVtbl->Disconnect(This);
3697 }
3698 static FORCEINLINE HRESULT IRDPSRAPIViewer_get_Attendees(IRDPSRAPIViewer* This,IRDPSRAPIAttendeeManager **ppVal) {
3699     return This->lpVtbl->get_Attendees(This,ppVal);
3700 }
3701 static FORCEINLINE HRESULT IRDPSRAPIViewer_get_Invitations(IRDPSRAPIViewer* This,IRDPSRAPIInvitationManager **ppVal) {
3702     return This->lpVtbl->get_Invitations(This,ppVal);
3703 }
3704 static FORCEINLINE HRESULT IRDPSRAPIViewer_get_ApplicationFilter(IRDPSRAPIViewer* This,IRDPSRAPIApplicationFilter **ppVal) {
3705     return This->lpVtbl->get_ApplicationFilter(This,ppVal);
3706 }
3707 static FORCEINLINE HRESULT IRDPSRAPIViewer_get_VirtualChannelManager(IRDPSRAPIViewer* This,IRDPSRAPIVirtualChannelManager **ppVal) {
3708     return This->lpVtbl->get_VirtualChannelManager(This,ppVal);
3709 }
3710 static FORCEINLINE HRESULT IRDPSRAPIViewer_put_SmartSizing(IRDPSRAPIViewer* This,VARIANT_BOOL vbSmartSizing) {
3711     return This->lpVtbl->put_SmartSizing(This,vbSmartSizing);
3712 }
3713 static FORCEINLINE HRESULT IRDPSRAPIViewer_get_SmartSizing(IRDPSRAPIViewer* This,VARIANT_BOOL *pvbSmartSizing) {
3714     return This->lpVtbl->get_SmartSizing(This,pvbSmartSizing);
3715 }
3716 static FORCEINLINE HRESULT IRDPSRAPIViewer_RequestControl(IRDPSRAPIViewer* This,CTRL_LEVEL CtrlLevel) {
3717     return This->lpVtbl->RequestControl(This,CtrlLevel);
3718 }
3719 static FORCEINLINE HRESULT IRDPSRAPIViewer_put_DisconnectedText(IRDPSRAPIViewer* This,BSTR bstrDisconnectedText) {
3720     return This->lpVtbl->put_DisconnectedText(This,bstrDisconnectedText);
3721 }
3722 static FORCEINLINE HRESULT IRDPSRAPIViewer_get_DisconnectedText(IRDPSRAPIViewer* This,BSTR *pbstrDisconnectedText) {
3723     return This->lpVtbl->get_DisconnectedText(This,pbstrDisconnectedText);
3724 }
3725 static FORCEINLINE HRESULT IRDPSRAPIViewer_RequestColorDepthChange(IRDPSRAPIViewer* This,LONG Bpp) {
3726     return This->lpVtbl->RequestColorDepthChange(This,Bpp);
3727 }
3728 static FORCEINLINE HRESULT IRDPSRAPIViewer_get_Properties(IRDPSRAPIViewer* This,IRDPSRAPISessionProperties **ppVal) {
3729     return This->lpVtbl->get_Properties(This,ppVal);
3730 }
3731 static FORCEINLINE HRESULT IRDPSRAPIViewer_StartReverseConnectListener(IRDPSRAPIViewer* This,BSTR bstrConnectionString,BSTR bstrUserName,BSTR bstrPassword,BSTR *pbstrReverseConnectString) {
3732     return This->lpVtbl->StartReverseConnectListener(This,bstrConnectionString,bstrUserName,bstrPassword,pbstrReverseConnectString);
3733 }
3734 #endif
3735 #endif
3736 
3737 #endif
3738 
3739 
3740 #endif  /* __IRDPSRAPIViewer_INTERFACE_DEFINED__ */
3741 
3742 /*****************************************************************************
3743  * IRDPViewerRenderingSurface interface
3744  */
3745 #ifndef __IRDPViewerRenderingSurface_INTERFACE_DEFINED__
3746 #define __IRDPViewerRenderingSurface_INTERFACE_DEFINED__
3747 
3748 DEFINE_GUID(IID_IRDPViewerRenderingSurface, 0x56bfce32, 0x83e9, 0x414d, 0x82,0xe8, 0xf3,0x1d,0x01,0xc6,0x2c,0xb5);
3749 #if defined(__cplusplus) && !defined(CINTERFACE)
3750 MIDL_INTERFACE("56bfce32-83e9-414d-82e8-f31d01c62cb5")
3751 IRDPViewerRenderingSurface : public IUnknown
3752 {
3753     virtual HRESULT STDMETHODCALLTYPE SetRenderingSurface(
3754         IUnknown *pRenderingSurface,
3755         LONG surfaceWidth,
3756         LONG surfaceHeight) = 0;
3757 
3758 };
3759 #ifdef __CRT_UUID_DECL
3760 __CRT_UUID_DECL(IRDPViewerRenderingSurface, 0x56bfce32, 0x83e9, 0x414d, 0x82,0xe8, 0xf3,0x1d,0x01,0xc6,0x2c,0xb5)
3761 #endif
3762 #else
3763 typedef struct IRDPViewerRenderingSurfaceVtbl {
3764     BEGIN_INTERFACE
3765 
3766     /*** IUnknown methods ***/
3767     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3768         IRDPViewerRenderingSurface *This,
3769         REFIID riid,
3770         void **ppvObject);
3771 
3772     ULONG (STDMETHODCALLTYPE *AddRef)(
3773         IRDPViewerRenderingSurface *This);
3774 
3775     ULONG (STDMETHODCALLTYPE *Release)(
3776         IRDPViewerRenderingSurface *This);
3777 
3778     /*** IRDPViewerRenderingSurface methods ***/
3779     HRESULT (STDMETHODCALLTYPE *SetRenderingSurface)(
3780         IRDPViewerRenderingSurface *This,
3781         IUnknown *pRenderingSurface,
3782         LONG surfaceWidth,
3783         LONG surfaceHeight);
3784 
3785     END_INTERFACE
3786 } IRDPViewerRenderingSurfaceVtbl;
3787 
3788 interface IRDPViewerRenderingSurface {
3789     CONST_VTBL IRDPViewerRenderingSurfaceVtbl* lpVtbl;
3790 };
3791 
3792 #ifdef COBJMACROS
3793 #ifndef WIDL_C_INLINE_WRAPPERS
3794 /*** IUnknown methods ***/
3795 #define IRDPViewerRenderingSurface_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3796 #define IRDPViewerRenderingSurface_AddRef(This) (This)->lpVtbl->AddRef(This)
3797 #define IRDPViewerRenderingSurface_Release(This) (This)->lpVtbl->Release(This)
3798 /*** IRDPViewerRenderingSurface methods ***/
3799 #define IRDPViewerRenderingSurface_SetRenderingSurface(This,pRenderingSurface,surfaceWidth,surfaceHeight) (This)->lpVtbl->SetRenderingSurface(This,pRenderingSurface,surfaceWidth,surfaceHeight)
3800 #else
3801 /*** IUnknown methods ***/
3802 static FORCEINLINE HRESULT IRDPViewerRenderingSurface_QueryInterface(IRDPViewerRenderingSurface* This,REFIID riid,void **ppvObject) {
3803     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3804 }
3805 static FORCEINLINE ULONG IRDPViewerRenderingSurface_AddRef(IRDPViewerRenderingSurface* This) {
3806     return This->lpVtbl->AddRef(This);
3807 }
3808 static FORCEINLINE ULONG IRDPViewerRenderingSurface_Release(IRDPViewerRenderingSurface* This) {
3809     return This->lpVtbl->Release(This);
3810 }
3811 /*** IRDPViewerRenderingSurface methods ***/
3812 static FORCEINLINE HRESULT IRDPViewerRenderingSurface_SetRenderingSurface(IRDPViewerRenderingSurface* This,IUnknown *pRenderingSurface,LONG surfaceWidth,LONG surfaceHeight) {
3813     return This->lpVtbl->SetRenderingSurface(This,pRenderingSurface,surfaceWidth,surfaceHeight);
3814 }
3815 #endif
3816 #endif
3817 
3818 #endif
3819 
3820 
3821 #endif  /* __IRDPViewerRenderingSurface_INTERFACE_DEFINED__ */
3822 
3823 /*****************************************************************************
3824  * IRDPViewerInputSink interface
3825  */
3826 #ifndef __IRDPViewerInputSink_INTERFACE_DEFINED__
3827 #define __IRDPViewerInputSink_INTERFACE_DEFINED__
3828 
3829 DEFINE_GUID(IID_IRDPViewerInputSink, 0xbb590853, 0xa6c5, 0x4a7b, 0x8d,0xd4, 0x76,0xb6,0x9e,0xea,0x12,0xd5);
3830 #if defined(__cplusplus) && !defined(CINTERFACE)
3831 MIDL_INTERFACE("bb590853-a6c5-4a7b-8dd4-76b69eea12d5")
3832 IRDPViewerInputSink : public IUnknown
3833 {
3834     virtual HRESULT STDMETHODCALLTYPE SendMouseButtonEvent(
3835         RDPSRAPI_MOUSE_BUTTON_TYPE buttonType,
3836         VARIANT_BOOL vbButtonDown,
3837         ULONG xPos,
3838         ULONG yPos) = 0;
3839 
3840     virtual HRESULT STDMETHODCALLTYPE SendMouseMoveEvent(
3841         ULONG xPos,
3842         ULONG yPos) = 0;
3843 
3844     virtual HRESULT STDMETHODCALLTYPE SendMouseWheelEvent(
3845         UINT16 wheelRotation) = 0;
3846 
3847     virtual HRESULT STDMETHODCALLTYPE SendKeyboardEvent(
3848         RDPSRAPI_KBD_CODE_TYPE codeType,
3849         UINT16 keycode,
3850         VARIANT_BOOL vbKeyUp,
3851         VARIANT_BOOL vbRepeat,
3852         VARIANT_BOOL vbExtended) = 0;
3853 
3854     virtual HRESULT STDMETHODCALLTYPE SendSyncEvent(
3855         ULONG syncFlags) = 0;
3856 
3857     virtual HRESULT STDMETHODCALLTYPE BeginTouchFrame(
3858         ) = 0;
3859 
3860     virtual HRESULT STDMETHODCALLTYPE AddTouchInput(
3861         UINT32 contactId,
3862         UINT32 evnt,
3863         INT32 x,
3864         INT32 y) = 0;
3865 
3866     virtual HRESULT STDMETHODCALLTYPE EndTouchFrame(
3867         ) = 0;
3868 
3869 };
3870 #ifdef __CRT_UUID_DECL
3871 __CRT_UUID_DECL(IRDPViewerInputSink, 0xbb590853, 0xa6c5, 0x4a7b, 0x8d,0xd4, 0x76,0xb6,0x9e,0xea,0x12,0xd5)
3872 #endif
3873 #else
3874 typedef struct IRDPViewerInputSinkVtbl {
3875     BEGIN_INTERFACE
3876 
3877     /*** IUnknown methods ***/
3878     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
3879         IRDPViewerInputSink *This,
3880         REFIID riid,
3881         void **ppvObject);
3882 
3883     ULONG (STDMETHODCALLTYPE *AddRef)(
3884         IRDPViewerInputSink *This);
3885 
3886     ULONG (STDMETHODCALLTYPE *Release)(
3887         IRDPViewerInputSink *This);
3888 
3889     /*** IRDPViewerInputSink methods ***/
3890     HRESULT (STDMETHODCALLTYPE *SendMouseButtonEvent)(
3891         IRDPViewerInputSink *This,
3892         RDPSRAPI_MOUSE_BUTTON_TYPE buttonType,
3893         VARIANT_BOOL vbButtonDown,
3894         ULONG xPos,
3895         ULONG yPos);
3896 
3897     HRESULT (STDMETHODCALLTYPE *SendMouseMoveEvent)(
3898         IRDPViewerInputSink *This,
3899         ULONG xPos,
3900         ULONG yPos);
3901 
3902     HRESULT (STDMETHODCALLTYPE *SendMouseWheelEvent)(
3903         IRDPViewerInputSink *This,
3904         UINT16 wheelRotation);
3905 
3906     HRESULT (STDMETHODCALLTYPE *SendKeyboardEvent)(
3907         IRDPViewerInputSink *This,
3908         RDPSRAPI_KBD_CODE_TYPE codeType,
3909         UINT16 keycode,
3910         VARIANT_BOOL vbKeyUp,
3911         VARIANT_BOOL vbRepeat,
3912         VARIANT_BOOL vbExtended);
3913 
3914     HRESULT (STDMETHODCALLTYPE *SendSyncEvent)(
3915         IRDPViewerInputSink *This,
3916         ULONG syncFlags);
3917 
3918     HRESULT (STDMETHODCALLTYPE *BeginTouchFrame)(
3919         IRDPViewerInputSink *This);
3920 
3921     HRESULT (STDMETHODCALLTYPE *AddTouchInput)(
3922         IRDPViewerInputSink *This,
3923         UINT32 contactId,
3924         UINT32 evnt,
3925         INT32 x,
3926         INT32 y);
3927 
3928     HRESULT (STDMETHODCALLTYPE *EndTouchFrame)(
3929         IRDPViewerInputSink *This);
3930 
3931     END_INTERFACE
3932 } IRDPViewerInputSinkVtbl;
3933 
3934 interface IRDPViewerInputSink {
3935     CONST_VTBL IRDPViewerInputSinkVtbl* lpVtbl;
3936 };
3937 
3938 #ifdef COBJMACROS
3939 #ifndef WIDL_C_INLINE_WRAPPERS
3940 /*** IUnknown methods ***/
3941 #define IRDPViewerInputSink_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
3942 #define IRDPViewerInputSink_AddRef(This) (This)->lpVtbl->AddRef(This)
3943 #define IRDPViewerInputSink_Release(This) (This)->lpVtbl->Release(This)
3944 /*** IRDPViewerInputSink methods ***/
3945 #define IRDPViewerInputSink_SendMouseButtonEvent(This,buttonType,vbButtonDown,xPos,yPos) (This)->lpVtbl->SendMouseButtonEvent(This,buttonType,vbButtonDown,xPos,yPos)
3946 #define IRDPViewerInputSink_SendMouseMoveEvent(This,xPos,yPos) (This)->lpVtbl->SendMouseMoveEvent(This,xPos,yPos)
3947 #define IRDPViewerInputSink_SendMouseWheelEvent(This,wheelRotation) (This)->lpVtbl->SendMouseWheelEvent(This,wheelRotation)
3948 #define IRDPViewerInputSink_SendKeyboardEvent(This,codeType,keycode,vbKeyUp,vbRepeat,vbExtended) (This)->lpVtbl->SendKeyboardEvent(This,codeType,keycode,vbKeyUp,vbRepeat,vbExtended)
3949 #define IRDPViewerInputSink_SendSyncEvent(This,syncFlags) (This)->lpVtbl->SendSyncEvent(This,syncFlags)
3950 #define IRDPViewerInputSink_BeginTouchFrame(This) (This)->lpVtbl->BeginTouchFrame(This)
3951 #define IRDPViewerInputSink_AddTouchInput(This,contactId,evnt,x,y) (This)->lpVtbl->AddTouchInput(This,contactId,evnt,x,y)
3952 #define IRDPViewerInputSink_EndTouchFrame(This) (This)->lpVtbl->EndTouchFrame(This)
3953 #else
3954 /*** IUnknown methods ***/
3955 static FORCEINLINE HRESULT IRDPViewerInputSink_QueryInterface(IRDPViewerInputSink* This,REFIID riid,void **ppvObject) {
3956     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
3957 }
3958 static FORCEINLINE ULONG IRDPViewerInputSink_AddRef(IRDPViewerInputSink* This) {
3959     return This->lpVtbl->AddRef(This);
3960 }
3961 static FORCEINLINE ULONG IRDPViewerInputSink_Release(IRDPViewerInputSink* This) {
3962     return This->lpVtbl->Release(This);
3963 }
3964 /*** IRDPViewerInputSink methods ***/
3965 static FORCEINLINE HRESULT IRDPViewerInputSink_SendMouseButtonEvent(IRDPViewerInputSink* This,RDPSRAPI_MOUSE_BUTTON_TYPE buttonType,VARIANT_BOOL vbButtonDown,ULONG xPos,ULONG yPos) {
3966     return This->lpVtbl->SendMouseButtonEvent(This,buttonType,vbButtonDown,xPos,yPos);
3967 }
3968 static FORCEINLINE HRESULT IRDPViewerInputSink_SendMouseMoveEvent(IRDPViewerInputSink* This,ULONG xPos,ULONG yPos) {
3969     return This->lpVtbl->SendMouseMoveEvent(This,xPos,yPos);
3970 }
3971 static FORCEINLINE HRESULT IRDPViewerInputSink_SendMouseWheelEvent(IRDPViewerInputSink* This,UINT16 wheelRotation) {
3972     return This->lpVtbl->SendMouseWheelEvent(This,wheelRotation);
3973 }
3974 static FORCEINLINE HRESULT IRDPViewerInputSink_SendKeyboardEvent(IRDPViewerInputSink* This,RDPSRAPI_KBD_CODE_TYPE codeType,UINT16 keycode,VARIANT_BOOL vbKeyUp,VARIANT_BOOL vbRepeat,VARIANT_BOOL vbExtended) {
3975     return This->lpVtbl->SendKeyboardEvent(This,codeType,keycode,vbKeyUp,vbRepeat,vbExtended);
3976 }
3977 static FORCEINLINE HRESULT IRDPViewerInputSink_SendSyncEvent(IRDPViewerInputSink* This,ULONG syncFlags) {
3978     return This->lpVtbl->SendSyncEvent(This,syncFlags);
3979 }
3980 static FORCEINLINE HRESULT IRDPViewerInputSink_BeginTouchFrame(IRDPViewerInputSink* This) {
3981     return This->lpVtbl->BeginTouchFrame(This);
3982 }
3983 static FORCEINLINE HRESULT IRDPViewerInputSink_AddTouchInput(IRDPViewerInputSink* This,UINT32 contactId,UINT32 evnt,INT32 x,INT32 y) {
3984     return This->lpVtbl->AddTouchInput(This,contactId,evnt,x,y);
3985 }
3986 static FORCEINLINE HRESULT IRDPViewerInputSink_EndTouchFrame(IRDPViewerInputSink* This) {
3987     return This->lpVtbl->EndTouchFrame(This);
3988 }
3989 #endif
3990 #endif
3991 
3992 #endif
3993 
3994 
3995 #endif  /* __IRDPViewerInputSink_INTERFACE_DEFINED__ */
3996 
3997 /*****************************************************************************
3998  * IRDPSRAPIFrameBuffer interface
3999  */
4000 #ifndef __IRDPSRAPIFrameBuffer_INTERFACE_DEFINED__
4001 #define __IRDPSRAPIFrameBuffer_INTERFACE_DEFINED__
4002 
4003 DEFINE_GUID(IID_IRDPSRAPIFrameBuffer, 0x3d67e7d2, 0xb27b, 0x448e, 0x81,0xb3, 0xc6,0x11,0x0e,0xd8,0xb4,0xbe);
4004 #if defined(__cplusplus) && !defined(CINTERFACE)
4005 MIDL_INTERFACE("3d67e7d2-b27b-448e-81b3-c6110ed8b4be")
4006 IRDPSRAPIFrameBuffer : public IDispatch
4007 {
4008     virtual HRESULT STDMETHODCALLTYPE get_Width(
4009         LONG *plWidth) = 0;
4010 
4011     virtual HRESULT STDMETHODCALLTYPE get_Height(
4012         LONG *plHeight) = 0;
4013 
4014     virtual HRESULT STDMETHODCALLTYPE get_Bpp(
4015         LONG *plBpp) = 0;
4016 
4017     virtual HRESULT STDMETHODCALLTYPE GetFrameBufferBits(
4018         LONG x,
4019         LONG y,
4020         LONG Width,
4021         LONG Heigth,
4022         SAFEARRAY **ppBits) = 0;
4023 
4024 };
4025 #ifdef __CRT_UUID_DECL
4026 __CRT_UUID_DECL(IRDPSRAPIFrameBuffer, 0x3d67e7d2, 0xb27b, 0x448e, 0x81,0xb3, 0xc6,0x11,0x0e,0xd8,0xb4,0xbe)
4027 #endif
4028 #else
4029 typedef struct IRDPSRAPIFrameBufferVtbl {
4030     BEGIN_INTERFACE
4031 
4032     /*** IUnknown methods ***/
4033     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4034         IRDPSRAPIFrameBuffer *This,
4035         REFIID riid,
4036         void **ppvObject);
4037 
4038     ULONG (STDMETHODCALLTYPE *AddRef)(
4039         IRDPSRAPIFrameBuffer *This);
4040 
4041     ULONG (STDMETHODCALLTYPE *Release)(
4042         IRDPSRAPIFrameBuffer *This);
4043 
4044     /*** IDispatch methods ***/
4045     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4046         IRDPSRAPIFrameBuffer *This,
4047         UINT *pctinfo);
4048 
4049     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4050         IRDPSRAPIFrameBuffer *This,
4051         UINT iTInfo,
4052         LCID lcid,
4053         ITypeInfo **ppTInfo);
4054 
4055     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4056         IRDPSRAPIFrameBuffer *This,
4057         REFIID riid,
4058         LPOLESTR *rgszNames,
4059         UINT cNames,
4060         LCID lcid,
4061         DISPID *rgDispId);
4062 
4063     HRESULT (STDMETHODCALLTYPE *Invoke)(
4064         IRDPSRAPIFrameBuffer *This,
4065         DISPID dispIdMember,
4066         REFIID riid,
4067         LCID lcid,
4068         WORD wFlags,
4069         DISPPARAMS *pDispParams,
4070         VARIANT *pVarResult,
4071         EXCEPINFO *pExcepInfo,
4072         UINT *puArgErr);
4073 
4074     /*** IRDPSRAPIFrameBuffer methods ***/
4075     HRESULT (STDMETHODCALLTYPE *get_Width)(
4076         IRDPSRAPIFrameBuffer *This,
4077         LONG *plWidth);
4078 
4079     HRESULT (STDMETHODCALLTYPE *get_Height)(
4080         IRDPSRAPIFrameBuffer *This,
4081         LONG *plHeight);
4082 
4083     HRESULT (STDMETHODCALLTYPE *get_Bpp)(
4084         IRDPSRAPIFrameBuffer *This,
4085         LONG *plBpp);
4086 
4087     HRESULT (STDMETHODCALLTYPE *GetFrameBufferBits)(
4088         IRDPSRAPIFrameBuffer *This,
4089         LONG x,
4090         LONG y,
4091         LONG Width,
4092         LONG Heigth,
4093         SAFEARRAY **ppBits);
4094 
4095     END_INTERFACE
4096 } IRDPSRAPIFrameBufferVtbl;
4097 
4098 interface IRDPSRAPIFrameBuffer {
4099     CONST_VTBL IRDPSRAPIFrameBufferVtbl* lpVtbl;
4100 };
4101 
4102 #ifdef COBJMACROS
4103 #ifndef WIDL_C_INLINE_WRAPPERS
4104 /*** IUnknown methods ***/
4105 #define IRDPSRAPIFrameBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4106 #define IRDPSRAPIFrameBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
4107 #define IRDPSRAPIFrameBuffer_Release(This) (This)->lpVtbl->Release(This)
4108 /*** IDispatch methods ***/
4109 #define IRDPSRAPIFrameBuffer_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4110 #define IRDPSRAPIFrameBuffer_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4111 #define IRDPSRAPIFrameBuffer_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4112 #define IRDPSRAPIFrameBuffer_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4113 /*** IRDPSRAPIFrameBuffer methods ***/
4114 #define IRDPSRAPIFrameBuffer_get_Width(This,plWidth) (This)->lpVtbl->get_Width(This,plWidth)
4115 #define IRDPSRAPIFrameBuffer_get_Height(This,plHeight) (This)->lpVtbl->get_Height(This,plHeight)
4116 #define IRDPSRAPIFrameBuffer_get_Bpp(This,plBpp) (This)->lpVtbl->get_Bpp(This,plBpp)
4117 #define IRDPSRAPIFrameBuffer_GetFrameBufferBits(This,x,y,Width,Heigth,ppBits) (This)->lpVtbl->GetFrameBufferBits(This,x,y,Width,Heigth,ppBits)
4118 #else
4119 /*** IUnknown methods ***/
4120 static FORCEINLINE HRESULT IRDPSRAPIFrameBuffer_QueryInterface(IRDPSRAPIFrameBuffer* This,REFIID riid,void **ppvObject) {
4121     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4122 }
4123 static FORCEINLINE ULONG IRDPSRAPIFrameBuffer_AddRef(IRDPSRAPIFrameBuffer* This) {
4124     return This->lpVtbl->AddRef(This);
4125 }
4126 static FORCEINLINE ULONG IRDPSRAPIFrameBuffer_Release(IRDPSRAPIFrameBuffer* This) {
4127     return This->lpVtbl->Release(This);
4128 }
4129 /*** IDispatch methods ***/
4130 static FORCEINLINE HRESULT IRDPSRAPIFrameBuffer_GetTypeInfoCount(IRDPSRAPIFrameBuffer* This,UINT *pctinfo) {
4131     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
4132 }
4133 static FORCEINLINE HRESULT IRDPSRAPIFrameBuffer_GetTypeInfo(IRDPSRAPIFrameBuffer* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
4134     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
4135 }
4136 static FORCEINLINE HRESULT IRDPSRAPIFrameBuffer_GetIDsOfNames(IRDPSRAPIFrameBuffer* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
4137     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
4138 }
4139 static FORCEINLINE HRESULT IRDPSRAPIFrameBuffer_Invoke(IRDPSRAPIFrameBuffer* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
4140     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
4141 }
4142 /*** IRDPSRAPIFrameBuffer methods ***/
4143 static FORCEINLINE HRESULT IRDPSRAPIFrameBuffer_get_Width(IRDPSRAPIFrameBuffer* This,LONG *plWidth) {
4144     return This->lpVtbl->get_Width(This,plWidth);
4145 }
4146 static FORCEINLINE HRESULT IRDPSRAPIFrameBuffer_get_Height(IRDPSRAPIFrameBuffer* This,LONG *plHeight) {
4147     return This->lpVtbl->get_Height(This,plHeight);
4148 }
4149 static FORCEINLINE HRESULT IRDPSRAPIFrameBuffer_get_Bpp(IRDPSRAPIFrameBuffer* This,LONG *plBpp) {
4150     return This->lpVtbl->get_Bpp(This,plBpp);
4151 }
4152 static FORCEINLINE HRESULT IRDPSRAPIFrameBuffer_GetFrameBufferBits(IRDPSRAPIFrameBuffer* This,LONG x,LONG y,LONG Width,LONG Heigth,SAFEARRAY **ppBits) {
4153     return This->lpVtbl->GetFrameBufferBits(This,x,y,Width,Heigth,ppBits);
4154 }
4155 #endif
4156 #endif
4157 
4158 #endif
4159 
4160 
4161 #endif  /* __IRDPSRAPIFrameBuffer_INTERFACE_DEFINED__ */
4162 
4163 /*****************************************************************************
4164  * IRDPSRAPITransportStreamBuffer interface
4165  */
4166 #ifndef __IRDPSRAPITransportStreamBuffer_INTERFACE_DEFINED__
4167 #define __IRDPSRAPITransportStreamBuffer_INTERFACE_DEFINED__
4168 
4169 DEFINE_GUID(IID_IRDPSRAPITransportStreamBuffer, 0x81c80290, 0x5085, 0x44b0, 0xb4,0x60, 0xf8,0x65,0xc3,0x9c,0xb4,0xa9);
4170 #if defined(__cplusplus) && !defined(CINTERFACE)
4171 MIDL_INTERFACE("81c80290-5085-44b0-b460-f865c39cb4a9")
4172 IRDPSRAPITransportStreamBuffer : public IUnknown
4173 {
4174     virtual HRESULT STDMETHODCALLTYPE get_Storage(
4175         BYTE **ppbStorage) = 0;
4176 
4177     virtual HRESULT STDMETHODCALLTYPE get_StorageSize(
4178         LONG *plMaxStore) = 0;
4179 
4180     virtual HRESULT STDMETHODCALLTYPE get_PayloadSize(
4181         LONG *plRetVal) = 0;
4182 
4183     virtual HRESULT STDMETHODCALLTYPE put_PayloadSize(
4184         LONG lVal) = 0;
4185 
4186     virtual HRESULT STDMETHODCALLTYPE get_PayloadOffset(
4187         LONG *plRetVal) = 0;
4188 
4189     virtual HRESULT STDMETHODCALLTYPE put_PayloadOffset(
4190         LONG lRetVal) = 0;
4191 
4192     virtual HRESULT STDMETHODCALLTYPE get_Flags(
4193         LONG *plFlags) = 0;
4194 
4195     virtual HRESULT STDMETHODCALLTYPE put_Flags(
4196         LONG lFlags) = 0;
4197 
4198     virtual HRESULT STDMETHODCALLTYPE get_Context(
4199         IUnknown **ppContext) = 0;
4200 
4201     virtual HRESULT STDMETHODCALLTYPE put_Context(
4202         IUnknown *pContext) = 0;
4203 
4204 };
4205 #ifdef __CRT_UUID_DECL
4206 __CRT_UUID_DECL(IRDPSRAPITransportStreamBuffer, 0x81c80290, 0x5085, 0x44b0, 0xb4,0x60, 0xf8,0x65,0xc3,0x9c,0xb4,0xa9)
4207 #endif
4208 #else
4209 typedef struct IRDPSRAPITransportStreamBufferVtbl {
4210     BEGIN_INTERFACE
4211 
4212     /*** IUnknown methods ***/
4213     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4214         IRDPSRAPITransportStreamBuffer *This,
4215         REFIID riid,
4216         void **ppvObject);
4217 
4218     ULONG (STDMETHODCALLTYPE *AddRef)(
4219         IRDPSRAPITransportStreamBuffer *This);
4220 
4221     ULONG (STDMETHODCALLTYPE *Release)(
4222         IRDPSRAPITransportStreamBuffer *This);
4223 
4224     /*** IRDPSRAPITransportStreamBuffer methods ***/
4225     HRESULT (STDMETHODCALLTYPE *get_Storage)(
4226         IRDPSRAPITransportStreamBuffer *This,
4227         BYTE **ppbStorage);
4228 
4229     HRESULT (STDMETHODCALLTYPE *get_StorageSize)(
4230         IRDPSRAPITransportStreamBuffer *This,
4231         LONG *plMaxStore);
4232 
4233     HRESULT (STDMETHODCALLTYPE *get_PayloadSize)(
4234         IRDPSRAPITransportStreamBuffer *This,
4235         LONG *plRetVal);
4236 
4237     HRESULT (STDMETHODCALLTYPE *put_PayloadSize)(
4238         IRDPSRAPITransportStreamBuffer *This,
4239         LONG lVal);
4240 
4241     HRESULT (STDMETHODCALLTYPE *get_PayloadOffset)(
4242         IRDPSRAPITransportStreamBuffer *This,
4243         LONG *plRetVal);
4244 
4245     HRESULT (STDMETHODCALLTYPE *put_PayloadOffset)(
4246         IRDPSRAPITransportStreamBuffer *This,
4247         LONG lRetVal);
4248 
4249     HRESULT (STDMETHODCALLTYPE *get_Flags)(
4250         IRDPSRAPITransportStreamBuffer *This,
4251         LONG *plFlags);
4252 
4253     HRESULT (STDMETHODCALLTYPE *put_Flags)(
4254         IRDPSRAPITransportStreamBuffer *This,
4255         LONG lFlags);
4256 
4257     HRESULT (STDMETHODCALLTYPE *get_Context)(
4258         IRDPSRAPITransportStreamBuffer *This,
4259         IUnknown **ppContext);
4260 
4261     HRESULT (STDMETHODCALLTYPE *put_Context)(
4262         IRDPSRAPITransportStreamBuffer *This,
4263         IUnknown *pContext);
4264 
4265     END_INTERFACE
4266 } IRDPSRAPITransportStreamBufferVtbl;
4267 
4268 interface IRDPSRAPITransportStreamBuffer {
4269     CONST_VTBL IRDPSRAPITransportStreamBufferVtbl* lpVtbl;
4270 };
4271 
4272 #ifdef COBJMACROS
4273 #ifndef WIDL_C_INLINE_WRAPPERS
4274 /*** IUnknown methods ***/
4275 #define IRDPSRAPITransportStreamBuffer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4276 #define IRDPSRAPITransportStreamBuffer_AddRef(This) (This)->lpVtbl->AddRef(This)
4277 #define IRDPSRAPITransportStreamBuffer_Release(This) (This)->lpVtbl->Release(This)
4278 /*** IRDPSRAPITransportStreamBuffer methods ***/
4279 #define IRDPSRAPITransportStreamBuffer_get_Storage(This,ppbStorage) (This)->lpVtbl->get_Storage(This,ppbStorage)
4280 #define IRDPSRAPITransportStreamBuffer_get_StorageSize(This,plMaxStore) (This)->lpVtbl->get_StorageSize(This,plMaxStore)
4281 #define IRDPSRAPITransportStreamBuffer_get_PayloadSize(This,plRetVal) (This)->lpVtbl->get_PayloadSize(This,plRetVal)
4282 #define IRDPSRAPITransportStreamBuffer_put_PayloadSize(This,lVal) (This)->lpVtbl->put_PayloadSize(This,lVal)
4283 #define IRDPSRAPITransportStreamBuffer_get_PayloadOffset(This,plRetVal) (This)->lpVtbl->get_PayloadOffset(This,plRetVal)
4284 #define IRDPSRAPITransportStreamBuffer_put_PayloadOffset(This,lRetVal) (This)->lpVtbl->put_PayloadOffset(This,lRetVal)
4285 #define IRDPSRAPITransportStreamBuffer_get_Flags(This,plFlags) (This)->lpVtbl->get_Flags(This,plFlags)
4286 #define IRDPSRAPITransportStreamBuffer_put_Flags(This,lFlags) (This)->lpVtbl->put_Flags(This,lFlags)
4287 #define IRDPSRAPITransportStreamBuffer_get_Context(This,ppContext) (This)->lpVtbl->get_Context(This,ppContext)
4288 #define IRDPSRAPITransportStreamBuffer_put_Context(This,pContext) (This)->lpVtbl->put_Context(This,pContext)
4289 #else
4290 /*** IUnknown methods ***/
4291 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_QueryInterface(IRDPSRAPITransportStreamBuffer* This,REFIID riid,void **ppvObject) {
4292     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4293 }
4294 static FORCEINLINE ULONG IRDPSRAPITransportStreamBuffer_AddRef(IRDPSRAPITransportStreamBuffer* This) {
4295     return This->lpVtbl->AddRef(This);
4296 }
4297 static FORCEINLINE ULONG IRDPSRAPITransportStreamBuffer_Release(IRDPSRAPITransportStreamBuffer* This) {
4298     return This->lpVtbl->Release(This);
4299 }
4300 /*** IRDPSRAPITransportStreamBuffer methods ***/
4301 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_get_Storage(IRDPSRAPITransportStreamBuffer* This,BYTE **ppbStorage) {
4302     return This->lpVtbl->get_Storage(This,ppbStorage);
4303 }
4304 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_get_StorageSize(IRDPSRAPITransportStreamBuffer* This,LONG *plMaxStore) {
4305     return This->lpVtbl->get_StorageSize(This,plMaxStore);
4306 }
4307 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_get_PayloadSize(IRDPSRAPITransportStreamBuffer* This,LONG *plRetVal) {
4308     return This->lpVtbl->get_PayloadSize(This,plRetVal);
4309 }
4310 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_put_PayloadSize(IRDPSRAPITransportStreamBuffer* This,LONG lVal) {
4311     return This->lpVtbl->put_PayloadSize(This,lVal);
4312 }
4313 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_get_PayloadOffset(IRDPSRAPITransportStreamBuffer* This,LONG *plRetVal) {
4314     return This->lpVtbl->get_PayloadOffset(This,plRetVal);
4315 }
4316 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_put_PayloadOffset(IRDPSRAPITransportStreamBuffer* This,LONG lRetVal) {
4317     return This->lpVtbl->put_PayloadOffset(This,lRetVal);
4318 }
4319 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_get_Flags(IRDPSRAPITransportStreamBuffer* This,LONG *plFlags) {
4320     return This->lpVtbl->get_Flags(This,plFlags);
4321 }
4322 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_put_Flags(IRDPSRAPITransportStreamBuffer* This,LONG lFlags) {
4323     return This->lpVtbl->put_Flags(This,lFlags);
4324 }
4325 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_get_Context(IRDPSRAPITransportStreamBuffer* This,IUnknown **ppContext) {
4326     return This->lpVtbl->get_Context(This,ppContext);
4327 }
4328 static FORCEINLINE HRESULT IRDPSRAPITransportStreamBuffer_put_Context(IRDPSRAPITransportStreamBuffer* This,IUnknown *pContext) {
4329     return This->lpVtbl->put_Context(This,pContext);
4330 }
4331 #endif
4332 #endif
4333 
4334 #endif
4335 
4336 
4337 #endif  /* __IRDPSRAPITransportStreamBuffer_INTERFACE_DEFINED__ */
4338 
4339 /*****************************************************************************
4340  * IRDPSRAPITransportStreamEvents interface
4341  */
4342 #ifndef __IRDPSRAPITransportStreamEvents_INTERFACE_DEFINED__
4343 #define __IRDPSRAPITransportStreamEvents_INTERFACE_DEFINED__
4344 
4345 DEFINE_GUID(IID_IRDPSRAPITransportStreamEvents, 0xea81c254, 0xf5af, 0x4e40, 0x98,0x2e, 0x3e,0x63,0xbb,0x59,0x52,0x76);
4346 #if defined(__cplusplus) && !defined(CINTERFACE)
4347 MIDL_INTERFACE("ea81c254-f5af-4e40-982e-3e63bb595276")
4348 IRDPSRAPITransportStreamEvents : public IUnknown
4349 {
4350     virtual void STDMETHODCALLTYPE OnWriteCompleted(
4351         IRDPSRAPITransportStreamBuffer *pBuffer) = 0;
4352 
4353     virtual void STDMETHODCALLTYPE OnReadCompleted(
4354         IRDPSRAPITransportStreamBuffer *pBuffer) = 0;
4355 
4356     virtual void STDMETHODCALLTYPE OnStreamClosed(
4357         HRESULT hrReason) = 0;
4358 
4359 };
4360 #ifdef __CRT_UUID_DECL
4361 __CRT_UUID_DECL(IRDPSRAPITransportStreamEvents, 0xea81c254, 0xf5af, 0x4e40, 0x98,0x2e, 0x3e,0x63,0xbb,0x59,0x52,0x76)
4362 #endif
4363 #else
4364 typedef struct IRDPSRAPITransportStreamEventsVtbl {
4365     BEGIN_INTERFACE
4366 
4367     /*** IUnknown methods ***/
4368     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4369         IRDPSRAPITransportStreamEvents *This,
4370         REFIID riid,
4371         void **ppvObject);
4372 
4373     ULONG (STDMETHODCALLTYPE *AddRef)(
4374         IRDPSRAPITransportStreamEvents *This);
4375 
4376     ULONG (STDMETHODCALLTYPE *Release)(
4377         IRDPSRAPITransportStreamEvents *This);
4378 
4379     /*** IRDPSRAPITransportStreamEvents methods ***/
4380     void (STDMETHODCALLTYPE *OnWriteCompleted)(
4381         IRDPSRAPITransportStreamEvents *This,
4382         IRDPSRAPITransportStreamBuffer *pBuffer);
4383 
4384     void (STDMETHODCALLTYPE *OnReadCompleted)(
4385         IRDPSRAPITransportStreamEvents *This,
4386         IRDPSRAPITransportStreamBuffer *pBuffer);
4387 
4388     void (STDMETHODCALLTYPE *OnStreamClosed)(
4389         IRDPSRAPITransportStreamEvents *This,
4390         HRESULT hrReason);
4391 
4392     END_INTERFACE
4393 } IRDPSRAPITransportStreamEventsVtbl;
4394 
4395 interface IRDPSRAPITransportStreamEvents {
4396     CONST_VTBL IRDPSRAPITransportStreamEventsVtbl* lpVtbl;
4397 };
4398 
4399 #ifdef COBJMACROS
4400 #ifndef WIDL_C_INLINE_WRAPPERS
4401 /*** IUnknown methods ***/
4402 #define IRDPSRAPITransportStreamEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4403 #define IRDPSRAPITransportStreamEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
4404 #define IRDPSRAPITransportStreamEvents_Release(This) (This)->lpVtbl->Release(This)
4405 /*** IRDPSRAPITransportStreamEvents methods ***/
4406 #define IRDPSRAPITransportStreamEvents_OnWriteCompleted(This,pBuffer) (This)->lpVtbl->OnWriteCompleted(This,pBuffer)
4407 #define IRDPSRAPITransportStreamEvents_OnReadCompleted(This,pBuffer) (This)->lpVtbl->OnReadCompleted(This,pBuffer)
4408 #define IRDPSRAPITransportStreamEvents_OnStreamClosed(This,hrReason) (This)->lpVtbl->OnStreamClosed(This,hrReason)
4409 #else
4410 /*** IUnknown methods ***/
4411 static FORCEINLINE HRESULT IRDPSRAPITransportStreamEvents_QueryInterface(IRDPSRAPITransportStreamEvents* This,REFIID riid,void **ppvObject) {
4412     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4413 }
4414 static FORCEINLINE ULONG IRDPSRAPITransportStreamEvents_AddRef(IRDPSRAPITransportStreamEvents* This) {
4415     return This->lpVtbl->AddRef(This);
4416 }
4417 static FORCEINLINE ULONG IRDPSRAPITransportStreamEvents_Release(IRDPSRAPITransportStreamEvents* This) {
4418     return This->lpVtbl->Release(This);
4419 }
4420 /*** IRDPSRAPITransportStreamEvents methods ***/
4421 static FORCEINLINE void IRDPSRAPITransportStreamEvents_OnWriteCompleted(IRDPSRAPITransportStreamEvents* This,IRDPSRAPITransportStreamBuffer *pBuffer) {
4422     This->lpVtbl->OnWriteCompleted(This,pBuffer);
4423 }
4424 static FORCEINLINE void IRDPSRAPITransportStreamEvents_OnReadCompleted(IRDPSRAPITransportStreamEvents* This,IRDPSRAPITransportStreamBuffer *pBuffer) {
4425     This->lpVtbl->OnReadCompleted(This,pBuffer);
4426 }
4427 static FORCEINLINE void IRDPSRAPITransportStreamEvents_OnStreamClosed(IRDPSRAPITransportStreamEvents* This,HRESULT hrReason) {
4428     This->lpVtbl->OnStreamClosed(This,hrReason);
4429 }
4430 #endif
4431 #endif
4432 
4433 #endif
4434 
4435 
4436 #endif  /* __IRDPSRAPITransportStreamEvents_INTERFACE_DEFINED__ */
4437 
4438 /*****************************************************************************
4439  * IRDPSRAPITransportStream interface
4440  */
4441 #ifndef __IRDPSRAPITransportStream_INTERFACE_DEFINED__
4442 #define __IRDPSRAPITransportStream_INTERFACE_DEFINED__
4443 
4444 DEFINE_GUID(IID_IRDPSRAPITransportStream, 0x36cfa065, 0x43bb, 0x4ef7, 0xae,0xd7, 0x9b,0x88,0xa5,0x05,0x30,0x36);
4445 #if defined(__cplusplus) && !defined(CINTERFACE)
4446 MIDL_INTERFACE("36cfa065-43bb-4ef7-aed7-9b88a5053036")
4447 IRDPSRAPITransportStream : public IUnknown
4448 {
4449     virtual HRESULT STDMETHODCALLTYPE AllocBuffer(
4450         LONG maxPayload,
4451         IRDPSRAPITransportStreamBuffer **ppBuffer) = 0;
4452 
4453     virtual HRESULT STDMETHODCALLTYPE FreeBuffer(
4454         IRDPSRAPITransportStreamBuffer *pBuffer) = 0;
4455 
4456     virtual HRESULT STDMETHODCALLTYPE WriteBuffer(
4457         IRDPSRAPITransportStreamBuffer *pBuffer) = 0;
4458 
4459     virtual HRESULT STDMETHODCALLTYPE ReadBuffer(
4460         IRDPSRAPITransportStreamBuffer *pBuffer) = 0;
4461 
4462     virtual HRESULT STDMETHODCALLTYPE Open(
4463         IRDPSRAPITransportStreamEvents *pCallbacks) = 0;
4464 
4465     virtual HRESULT STDMETHODCALLTYPE Close(
4466         ) = 0;
4467 
4468 };
4469 #ifdef __CRT_UUID_DECL
4470 __CRT_UUID_DECL(IRDPSRAPITransportStream, 0x36cfa065, 0x43bb, 0x4ef7, 0xae,0xd7, 0x9b,0x88,0xa5,0x05,0x30,0x36)
4471 #endif
4472 #else
4473 typedef struct IRDPSRAPITransportStreamVtbl {
4474     BEGIN_INTERFACE
4475 
4476     /*** IUnknown methods ***/
4477     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4478         IRDPSRAPITransportStream *This,
4479         REFIID riid,
4480         void **ppvObject);
4481 
4482     ULONG (STDMETHODCALLTYPE *AddRef)(
4483         IRDPSRAPITransportStream *This);
4484 
4485     ULONG (STDMETHODCALLTYPE *Release)(
4486         IRDPSRAPITransportStream *This);
4487 
4488     /*** IRDPSRAPITransportStream methods ***/
4489     HRESULT (STDMETHODCALLTYPE *AllocBuffer)(
4490         IRDPSRAPITransportStream *This,
4491         LONG maxPayload,
4492         IRDPSRAPITransportStreamBuffer **ppBuffer);
4493 
4494     HRESULT (STDMETHODCALLTYPE *FreeBuffer)(
4495         IRDPSRAPITransportStream *This,
4496         IRDPSRAPITransportStreamBuffer *pBuffer);
4497 
4498     HRESULT (STDMETHODCALLTYPE *WriteBuffer)(
4499         IRDPSRAPITransportStream *This,
4500         IRDPSRAPITransportStreamBuffer *pBuffer);
4501 
4502     HRESULT (STDMETHODCALLTYPE *ReadBuffer)(
4503         IRDPSRAPITransportStream *This,
4504         IRDPSRAPITransportStreamBuffer *pBuffer);
4505 
4506     HRESULT (STDMETHODCALLTYPE *Open)(
4507         IRDPSRAPITransportStream *This,
4508         IRDPSRAPITransportStreamEvents *pCallbacks);
4509 
4510     HRESULT (STDMETHODCALLTYPE *Close)(
4511         IRDPSRAPITransportStream *This);
4512 
4513     END_INTERFACE
4514 } IRDPSRAPITransportStreamVtbl;
4515 
4516 interface IRDPSRAPITransportStream {
4517     CONST_VTBL IRDPSRAPITransportStreamVtbl* lpVtbl;
4518 };
4519 
4520 #ifdef COBJMACROS
4521 #ifndef WIDL_C_INLINE_WRAPPERS
4522 /*** IUnknown methods ***/
4523 #define IRDPSRAPITransportStream_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4524 #define IRDPSRAPITransportStream_AddRef(This) (This)->lpVtbl->AddRef(This)
4525 #define IRDPSRAPITransportStream_Release(This) (This)->lpVtbl->Release(This)
4526 /*** IRDPSRAPITransportStream methods ***/
4527 #define IRDPSRAPITransportStream_AllocBuffer(This,maxPayload,ppBuffer) (This)->lpVtbl->AllocBuffer(This,maxPayload,ppBuffer)
4528 #define IRDPSRAPITransportStream_FreeBuffer(This,pBuffer) (This)->lpVtbl->FreeBuffer(This,pBuffer)
4529 #define IRDPSRAPITransportStream_WriteBuffer(This,pBuffer) (This)->lpVtbl->WriteBuffer(This,pBuffer)
4530 #define IRDPSRAPITransportStream_ReadBuffer(This,pBuffer) (This)->lpVtbl->ReadBuffer(This,pBuffer)
4531 #define IRDPSRAPITransportStream_Open(This,pCallbacks) (This)->lpVtbl->Open(This,pCallbacks)
4532 #define IRDPSRAPITransportStream_Close(This) (This)->lpVtbl->Close(This)
4533 #else
4534 /*** IUnknown methods ***/
4535 static FORCEINLINE HRESULT IRDPSRAPITransportStream_QueryInterface(IRDPSRAPITransportStream* This,REFIID riid,void **ppvObject) {
4536     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4537 }
4538 static FORCEINLINE ULONG IRDPSRAPITransportStream_AddRef(IRDPSRAPITransportStream* This) {
4539     return This->lpVtbl->AddRef(This);
4540 }
4541 static FORCEINLINE ULONG IRDPSRAPITransportStream_Release(IRDPSRAPITransportStream* This) {
4542     return This->lpVtbl->Release(This);
4543 }
4544 /*** IRDPSRAPITransportStream methods ***/
4545 static FORCEINLINE HRESULT IRDPSRAPITransportStream_AllocBuffer(IRDPSRAPITransportStream* This,LONG maxPayload,IRDPSRAPITransportStreamBuffer **ppBuffer) {
4546     return This->lpVtbl->AllocBuffer(This,maxPayload,ppBuffer);
4547 }
4548 static FORCEINLINE HRESULT IRDPSRAPITransportStream_FreeBuffer(IRDPSRAPITransportStream* This,IRDPSRAPITransportStreamBuffer *pBuffer) {
4549     return This->lpVtbl->FreeBuffer(This,pBuffer);
4550 }
4551 static FORCEINLINE HRESULT IRDPSRAPITransportStream_WriteBuffer(IRDPSRAPITransportStream* This,IRDPSRAPITransportStreamBuffer *pBuffer) {
4552     return This->lpVtbl->WriteBuffer(This,pBuffer);
4553 }
4554 static FORCEINLINE HRESULT IRDPSRAPITransportStream_ReadBuffer(IRDPSRAPITransportStream* This,IRDPSRAPITransportStreamBuffer *pBuffer) {
4555     return This->lpVtbl->ReadBuffer(This,pBuffer);
4556 }
4557 static FORCEINLINE HRESULT IRDPSRAPITransportStream_Open(IRDPSRAPITransportStream* This,IRDPSRAPITransportStreamEvents *pCallbacks) {
4558     return This->lpVtbl->Open(This,pCallbacks);
4559 }
4560 static FORCEINLINE HRESULT IRDPSRAPITransportStream_Close(IRDPSRAPITransportStream* This) {
4561     return This->lpVtbl->Close(This);
4562 }
4563 #endif
4564 #endif
4565 
4566 #endif
4567 
4568 
4569 #endif  /* __IRDPSRAPITransportStream_INTERFACE_DEFINED__ */
4570 
4571 /*****************************************************************************
4572  * IRDPSRAPISharingSession interface
4573  */
4574 #ifndef __IRDPSRAPISharingSession_INTERFACE_DEFINED__
4575 #define __IRDPSRAPISharingSession_INTERFACE_DEFINED__
4576 
4577 DEFINE_GUID(IID_IRDPSRAPISharingSession, 0xeeb20886, 0xe470, 0x4cf6, 0x84,0x2b, 0x27,0x39,0xc0,0xec,0x5c,0xfb);
4578 #if defined(__cplusplus) && !defined(CINTERFACE)
4579 MIDL_INTERFACE("eeb20886-e470-4cf6-842b-2739c0ec5cfb")
4580 IRDPSRAPISharingSession : public IDispatch
4581 {
4582     virtual HRESULT STDMETHODCALLTYPE Open(
4583         ) = 0;
4584 
4585     virtual HRESULT STDMETHODCALLTYPE Close(
4586         ) = 0;
4587 
4588     virtual HRESULT STDMETHODCALLTYPE put_ColorDepth(
4589         LONG colorDepth) = 0;
4590 
4591     virtual HRESULT STDMETHODCALLTYPE get_ColorDepth(
4592         LONG *pColorDepth) = 0;
4593 
4594     virtual HRESULT STDMETHODCALLTYPE get_Properties(
4595         IRDPSRAPISessionProperties **ppVal) = 0;
4596 
4597     virtual HRESULT STDMETHODCALLTYPE get_Attendees(
4598         IRDPSRAPIAttendeeManager **ppVal) = 0;
4599 
4600     virtual HRESULT STDMETHODCALLTYPE get_Invitations(
4601         IRDPSRAPIInvitationManager **ppVal) = 0;
4602 
4603     virtual HRESULT STDMETHODCALLTYPE get_ApplicationFilter(
4604         IRDPSRAPIApplicationFilter **ppVal) = 0;
4605 
4606     virtual HRESULT STDMETHODCALLTYPE get_VirtualChannelManager(
4607         IRDPSRAPIVirtualChannelManager **ppVal) = 0;
4608 
4609     virtual HRESULT STDMETHODCALLTYPE Pause(
4610         ) = 0;
4611 
4612     virtual HRESULT STDMETHODCALLTYPE Resume(
4613         ) = 0;
4614 
4615     virtual HRESULT STDMETHODCALLTYPE ConnectToClient(
4616         BSTR bstrConnectionString) = 0;
4617 
4618     virtual HRESULT STDMETHODCALLTYPE SetDesktopSharedRect(
4619         LONG left,
4620         LONG top,
4621         LONG right,
4622         LONG bottom) = 0;
4623 
4624     virtual HRESULT STDMETHODCALLTYPE GetDesktopSharedRect(
4625         LONG *pleft,
4626         LONG *ptop,
4627         LONG *pright,
4628         LONG *pbottom) = 0;
4629 
4630 };
4631 #ifdef __CRT_UUID_DECL
4632 __CRT_UUID_DECL(IRDPSRAPISharingSession, 0xeeb20886, 0xe470, 0x4cf6, 0x84,0x2b, 0x27,0x39,0xc0,0xec,0x5c,0xfb)
4633 #endif
4634 #else
4635 typedef struct IRDPSRAPISharingSessionVtbl {
4636     BEGIN_INTERFACE
4637 
4638     /*** IUnknown methods ***/
4639     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4640         IRDPSRAPISharingSession *This,
4641         REFIID riid,
4642         void **ppvObject);
4643 
4644     ULONG (STDMETHODCALLTYPE *AddRef)(
4645         IRDPSRAPISharingSession *This);
4646 
4647     ULONG (STDMETHODCALLTYPE *Release)(
4648         IRDPSRAPISharingSession *This);
4649 
4650     /*** IDispatch methods ***/
4651     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4652         IRDPSRAPISharingSession *This,
4653         UINT *pctinfo);
4654 
4655     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4656         IRDPSRAPISharingSession *This,
4657         UINT iTInfo,
4658         LCID lcid,
4659         ITypeInfo **ppTInfo);
4660 
4661     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4662         IRDPSRAPISharingSession *This,
4663         REFIID riid,
4664         LPOLESTR *rgszNames,
4665         UINT cNames,
4666         LCID lcid,
4667         DISPID *rgDispId);
4668 
4669     HRESULT (STDMETHODCALLTYPE *Invoke)(
4670         IRDPSRAPISharingSession *This,
4671         DISPID dispIdMember,
4672         REFIID riid,
4673         LCID lcid,
4674         WORD wFlags,
4675         DISPPARAMS *pDispParams,
4676         VARIANT *pVarResult,
4677         EXCEPINFO *pExcepInfo,
4678         UINT *puArgErr);
4679 
4680     /*** IRDPSRAPISharingSession methods ***/
4681     HRESULT (STDMETHODCALLTYPE *Open)(
4682         IRDPSRAPISharingSession *This);
4683 
4684     HRESULT (STDMETHODCALLTYPE *Close)(
4685         IRDPSRAPISharingSession *This);
4686 
4687     HRESULT (STDMETHODCALLTYPE *put_ColorDepth)(
4688         IRDPSRAPISharingSession *This,
4689         LONG colorDepth);
4690 
4691     HRESULT (STDMETHODCALLTYPE *get_ColorDepth)(
4692         IRDPSRAPISharingSession *This,
4693         LONG *pColorDepth);
4694 
4695     HRESULT (STDMETHODCALLTYPE *get_Properties)(
4696         IRDPSRAPISharingSession *This,
4697         IRDPSRAPISessionProperties **ppVal);
4698 
4699     HRESULT (STDMETHODCALLTYPE *get_Attendees)(
4700         IRDPSRAPISharingSession *This,
4701         IRDPSRAPIAttendeeManager **ppVal);
4702 
4703     HRESULT (STDMETHODCALLTYPE *get_Invitations)(
4704         IRDPSRAPISharingSession *This,
4705         IRDPSRAPIInvitationManager **ppVal);
4706 
4707     HRESULT (STDMETHODCALLTYPE *get_ApplicationFilter)(
4708         IRDPSRAPISharingSession *This,
4709         IRDPSRAPIApplicationFilter **ppVal);
4710 
4711     HRESULT (STDMETHODCALLTYPE *get_VirtualChannelManager)(
4712         IRDPSRAPISharingSession *This,
4713         IRDPSRAPIVirtualChannelManager **ppVal);
4714 
4715     HRESULT (STDMETHODCALLTYPE *Pause)(
4716         IRDPSRAPISharingSession *This);
4717 
4718     HRESULT (STDMETHODCALLTYPE *Resume)(
4719         IRDPSRAPISharingSession *This);
4720 
4721     HRESULT (STDMETHODCALLTYPE *ConnectToClient)(
4722         IRDPSRAPISharingSession *This,
4723         BSTR bstrConnectionString);
4724 
4725     HRESULT (STDMETHODCALLTYPE *SetDesktopSharedRect)(
4726         IRDPSRAPISharingSession *This,
4727         LONG left,
4728         LONG top,
4729         LONG right,
4730         LONG bottom);
4731 
4732     HRESULT (STDMETHODCALLTYPE *GetDesktopSharedRect)(
4733         IRDPSRAPISharingSession *This,
4734         LONG *pleft,
4735         LONG *ptop,
4736         LONG *pright,
4737         LONG *pbottom);
4738 
4739     END_INTERFACE
4740 } IRDPSRAPISharingSessionVtbl;
4741 
4742 interface IRDPSRAPISharingSession {
4743     CONST_VTBL IRDPSRAPISharingSessionVtbl* lpVtbl;
4744 };
4745 
4746 #ifdef COBJMACROS
4747 #ifndef WIDL_C_INLINE_WRAPPERS
4748 /*** IUnknown methods ***/
4749 #define IRDPSRAPISharingSession_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
4750 #define IRDPSRAPISharingSession_AddRef(This) (This)->lpVtbl->AddRef(This)
4751 #define IRDPSRAPISharingSession_Release(This) (This)->lpVtbl->Release(This)
4752 /*** IDispatch methods ***/
4753 #define IRDPSRAPISharingSession_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
4754 #define IRDPSRAPISharingSession_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
4755 #define IRDPSRAPISharingSession_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
4756 #define IRDPSRAPISharingSession_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
4757 /*** IRDPSRAPISharingSession methods ***/
4758 #define IRDPSRAPISharingSession_Open(This) (This)->lpVtbl->Open(This)
4759 #define IRDPSRAPISharingSession_Close(This) (This)->lpVtbl->Close(This)
4760 #define IRDPSRAPISharingSession_put_ColorDepth(This,colorDepth) (This)->lpVtbl->put_ColorDepth(This,colorDepth)
4761 #define IRDPSRAPISharingSession_get_ColorDepth(This,pColorDepth) (This)->lpVtbl->get_ColorDepth(This,pColorDepth)
4762 #define IRDPSRAPISharingSession_get_Properties(This,ppVal) (This)->lpVtbl->get_Properties(This,ppVal)
4763 #define IRDPSRAPISharingSession_get_Attendees(This,ppVal) (This)->lpVtbl->get_Attendees(This,ppVal)
4764 #define IRDPSRAPISharingSession_get_Invitations(This,ppVal) (This)->lpVtbl->get_Invitations(This,ppVal)
4765 #define IRDPSRAPISharingSession_get_ApplicationFilter(This,ppVal) (This)->lpVtbl->get_ApplicationFilter(This,ppVal)
4766 #define IRDPSRAPISharingSession_get_VirtualChannelManager(This,ppVal) (This)->lpVtbl->get_VirtualChannelManager(This,ppVal)
4767 #define IRDPSRAPISharingSession_Pause(This) (This)->lpVtbl->Pause(This)
4768 #define IRDPSRAPISharingSession_Resume(This) (This)->lpVtbl->Resume(This)
4769 #define IRDPSRAPISharingSession_ConnectToClient(This,bstrConnectionString) (This)->lpVtbl->ConnectToClient(This,bstrConnectionString)
4770 #define IRDPSRAPISharingSession_SetDesktopSharedRect(This,left,top,right,bottom) (This)->lpVtbl->SetDesktopSharedRect(This,left,top,right,bottom)
4771 #define IRDPSRAPISharingSession_GetDesktopSharedRect(This,pleft,ptop,pright,pbottom) (This)->lpVtbl->GetDesktopSharedRect(This,pleft,ptop,pright,pbottom)
4772 #else
4773 /*** IUnknown methods ***/
4774 static FORCEINLINE HRESULT IRDPSRAPISharingSession_QueryInterface(IRDPSRAPISharingSession* This,REFIID riid,void **ppvObject) {
4775     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
4776 }
4777 static FORCEINLINE ULONG IRDPSRAPISharingSession_AddRef(IRDPSRAPISharingSession* This) {
4778     return This->lpVtbl->AddRef(This);
4779 }
4780 static FORCEINLINE ULONG IRDPSRAPISharingSession_Release(IRDPSRAPISharingSession* This) {
4781     return This->lpVtbl->Release(This);
4782 }
4783 /*** IDispatch methods ***/
4784 static FORCEINLINE HRESULT IRDPSRAPISharingSession_GetTypeInfoCount(IRDPSRAPISharingSession* This,UINT *pctinfo) {
4785     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
4786 }
4787 static FORCEINLINE HRESULT IRDPSRAPISharingSession_GetTypeInfo(IRDPSRAPISharingSession* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
4788     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
4789 }
4790 static FORCEINLINE HRESULT IRDPSRAPISharingSession_GetIDsOfNames(IRDPSRAPISharingSession* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
4791     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
4792 }
4793 static FORCEINLINE HRESULT IRDPSRAPISharingSession_Invoke(IRDPSRAPISharingSession* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
4794     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
4795 }
4796 /*** IRDPSRAPISharingSession methods ***/
4797 static FORCEINLINE HRESULT IRDPSRAPISharingSession_Open(IRDPSRAPISharingSession* This) {
4798     return This->lpVtbl->Open(This);
4799 }
4800 static FORCEINLINE HRESULT IRDPSRAPISharingSession_Close(IRDPSRAPISharingSession* This) {
4801     return This->lpVtbl->Close(This);
4802 }
4803 static FORCEINLINE HRESULT IRDPSRAPISharingSession_put_ColorDepth(IRDPSRAPISharingSession* This,LONG colorDepth) {
4804     return This->lpVtbl->put_ColorDepth(This,colorDepth);
4805 }
4806 static FORCEINLINE HRESULT IRDPSRAPISharingSession_get_ColorDepth(IRDPSRAPISharingSession* This,LONG *pColorDepth) {
4807     return This->lpVtbl->get_ColorDepth(This,pColorDepth);
4808 }
4809 static FORCEINLINE HRESULT IRDPSRAPISharingSession_get_Properties(IRDPSRAPISharingSession* This,IRDPSRAPISessionProperties **ppVal) {
4810     return This->lpVtbl->get_Properties(This,ppVal);
4811 }
4812 static FORCEINLINE HRESULT IRDPSRAPISharingSession_get_Attendees(IRDPSRAPISharingSession* This,IRDPSRAPIAttendeeManager **ppVal) {
4813     return This->lpVtbl->get_Attendees(This,ppVal);
4814 }
4815 static FORCEINLINE HRESULT IRDPSRAPISharingSession_get_Invitations(IRDPSRAPISharingSession* This,IRDPSRAPIInvitationManager **ppVal) {
4816     return This->lpVtbl->get_Invitations(This,ppVal);
4817 }
4818 static FORCEINLINE HRESULT IRDPSRAPISharingSession_get_ApplicationFilter(IRDPSRAPISharingSession* This,IRDPSRAPIApplicationFilter **ppVal) {
4819     return This->lpVtbl->get_ApplicationFilter(This,ppVal);
4820 }
4821 static FORCEINLINE HRESULT IRDPSRAPISharingSession_get_VirtualChannelManager(IRDPSRAPISharingSession* This,IRDPSRAPIVirtualChannelManager **ppVal) {
4822     return This->lpVtbl->get_VirtualChannelManager(This,ppVal);
4823 }
4824 static FORCEINLINE HRESULT IRDPSRAPISharingSession_Pause(IRDPSRAPISharingSession* This) {
4825     return This->lpVtbl->Pause(This);
4826 }
4827 static FORCEINLINE HRESULT IRDPSRAPISharingSession_Resume(IRDPSRAPISharingSession* This) {
4828     return This->lpVtbl->Resume(This);
4829 }
4830 static FORCEINLINE HRESULT IRDPSRAPISharingSession_ConnectToClient(IRDPSRAPISharingSession* This,BSTR bstrConnectionString) {
4831     return This->lpVtbl->ConnectToClient(This,bstrConnectionString);
4832 }
4833 static FORCEINLINE HRESULT IRDPSRAPISharingSession_SetDesktopSharedRect(IRDPSRAPISharingSession* This,LONG left,LONG top,LONG right,LONG bottom) {
4834     return This->lpVtbl->SetDesktopSharedRect(This,left,top,right,bottom);
4835 }
4836 static FORCEINLINE HRESULT IRDPSRAPISharingSession_GetDesktopSharedRect(IRDPSRAPISharingSession* This,LONG *pleft,LONG *ptop,LONG *pright,LONG *pbottom) {
4837     return This->lpVtbl->GetDesktopSharedRect(This,pleft,ptop,pright,pbottom);
4838 }
4839 #endif
4840 #endif
4841 
4842 #endif
4843 
4844 
4845 #endif  /* __IRDPSRAPISharingSession_INTERFACE_DEFINED__ */
4846 
4847 /*****************************************************************************
4848  * IRDPSRAPISharingSession2 interface
4849  */
4850 #ifndef __IRDPSRAPISharingSession2_INTERFACE_DEFINED__
4851 #define __IRDPSRAPISharingSession2_INTERFACE_DEFINED__
4852 
4853 DEFINE_GUID(IID_IRDPSRAPISharingSession2, 0xfee4ee57, 0xe3e8, 0x4205, 0x8f,0xb0, 0x8f,0xd1,0xd0,0x67,0x5c,0x21);
4854 #if defined(__cplusplus) && !defined(CINTERFACE)
4855 MIDL_INTERFACE("fee4ee57-e3e8-4205-8fb0-8fd1d0675c21")
4856 IRDPSRAPISharingSession2 : public IRDPSRAPISharingSession
4857 {
4858     virtual HRESULT STDMETHODCALLTYPE ConnectUsingTransportStream(
4859         IRDPSRAPITransportStream *pStream,
4860         BSTR bstrGroup,
4861         BSTR bstrAuthenticatedAttendeeName) = 0;
4862 
4863     virtual HRESULT STDMETHODCALLTYPE get_FrameBuffer(
4864         IRDPSRAPIFrameBuffer **ppVal) = 0;
4865 
4866     virtual HRESULT STDMETHODCALLTYPE SendControlLevelChangeResponse(
4867         IRDPSRAPIAttendee *pAttendee,
4868         CTRL_LEVEL RequestedLevel,
4869         LONG ReasonCode) = 0;
4870 
4871 };
4872 #ifdef __CRT_UUID_DECL
4873 __CRT_UUID_DECL(IRDPSRAPISharingSession2, 0xfee4ee57, 0xe3e8, 0x4205, 0x8f,0xb0, 0x8f,0xd1,0xd0,0x67,0x5c,0x21)
4874 #endif
4875 #else
4876 typedef struct IRDPSRAPISharingSession2Vtbl {
4877     BEGIN_INTERFACE
4878 
4879     /*** IUnknown methods ***/
4880     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
4881         IRDPSRAPISharingSession2 *This,
4882         REFIID riid,
4883         void **ppvObject);
4884 
4885     ULONG (STDMETHODCALLTYPE *AddRef)(
4886         IRDPSRAPISharingSession2 *This);
4887 
4888     ULONG (STDMETHODCALLTYPE *Release)(
4889         IRDPSRAPISharingSession2 *This);
4890 
4891     /*** IDispatch methods ***/
4892     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
4893         IRDPSRAPISharingSession2 *This,
4894         UINT *pctinfo);
4895 
4896     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
4897         IRDPSRAPISharingSession2 *This,
4898         UINT iTInfo,
4899         LCID lcid,
4900         ITypeInfo **ppTInfo);
4901 
4902     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
4903         IRDPSRAPISharingSession2 *This,
4904         REFIID riid,
4905         LPOLESTR *rgszNames,
4906         UINT cNames,
4907         LCID lcid,
4908         DISPID *rgDispId);
4909 
4910     HRESULT (STDMETHODCALLTYPE *Invoke)(
4911         IRDPSRAPISharingSession2 *This,
4912         DISPID dispIdMember,
4913         REFIID riid,
4914         LCID lcid,
4915         WORD wFlags,
4916         DISPPARAMS *pDispParams,
4917         VARIANT *pVarResult,
4918         EXCEPINFO *pExcepInfo,
4919         UINT *puArgErr);
4920 
4921     /*** IRDPSRAPISharingSession methods ***/
4922     HRESULT (STDMETHODCALLTYPE *Open)(
4923         IRDPSRAPISharingSession2 *This);
4924 
4925     HRESULT (STDMETHODCALLTYPE *Close)(
4926         IRDPSRAPISharingSession2 *This);
4927 
4928     HRESULT (STDMETHODCALLTYPE *put_ColorDepth)(
4929         IRDPSRAPISharingSession2 *This,
4930         LONG colorDepth);
4931 
4932     HRESULT (STDMETHODCALLTYPE *get_ColorDepth)(
4933         IRDPSRAPISharingSession2 *This,
4934         LONG *pColorDepth);
4935 
4936     HRESULT (STDMETHODCALLTYPE *get_Properties)(
4937         IRDPSRAPISharingSession2 *This,
4938         IRDPSRAPISessionProperties **ppVal);
4939 
4940     HRESULT (STDMETHODCALLTYPE *get_Attendees)(
4941         IRDPSRAPISharingSession2 *This,
4942         IRDPSRAPIAttendeeManager **ppVal);
4943 
4944     HRESULT (STDMETHODCALLTYPE *get_Invitations)(
4945         IRDPSRAPISharingSession2 *This,
4946         IRDPSRAPIInvitationManager **ppVal);
4947 
4948     HRESULT (STDMETHODCALLTYPE *get_ApplicationFilter)(
4949         IRDPSRAPISharingSession2 *This,
4950         IRDPSRAPIApplicationFilter **ppVal);
4951 
4952     HRESULT (STDMETHODCALLTYPE *get_VirtualChannelManager)(
4953         IRDPSRAPISharingSession2 *This,
4954         IRDPSRAPIVirtualChannelManager **ppVal);
4955 
4956     HRESULT (STDMETHODCALLTYPE *Pause)(
4957         IRDPSRAPISharingSession2 *This);
4958 
4959     HRESULT (STDMETHODCALLTYPE *Resume)(
4960         IRDPSRAPISharingSession2 *This);
4961 
4962     HRESULT (STDMETHODCALLTYPE *ConnectToClient)(
4963         IRDPSRAPISharingSession2 *This,
4964         BSTR bstrConnectionString);
4965 
4966     HRESULT (STDMETHODCALLTYPE *SetDesktopSharedRect)(
4967         IRDPSRAPISharingSession2 *This,
4968         LONG left,
4969         LONG top,
4970         LONG right,
4971         LONG bottom);
4972 
4973     HRESULT (STDMETHODCALLTYPE *GetDesktopSharedRect)(
4974         IRDPSRAPISharingSession2 *This,
4975         LONG *pleft,
4976         LONG *ptop,
4977         LONG *pright,
4978         LONG *pbottom);
4979 
4980     /*** IRDPSRAPISharingSession2 methods ***/
4981     HRESULT (STDMETHODCALLTYPE *ConnectUsingTransportStream)(
4982         IRDPSRAPISharingSession2 *This,
4983         IRDPSRAPITransportStream *pStream,
4984         BSTR bstrGroup,
4985         BSTR bstrAuthenticatedAttendeeName);
4986 
4987     HRESULT (STDMETHODCALLTYPE *get_FrameBuffer)(
4988         IRDPSRAPISharingSession2 *This,
4989         IRDPSRAPIFrameBuffer **ppVal);
4990 
4991     HRESULT (STDMETHODCALLTYPE *SendControlLevelChangeResponse)(
4992         IRDPSRAPISharingSession2 *This,
4993         IRDPSRAPIAttendee *pAttendee,
4994         CTRL_LEVEL RequestedLevel,
4995         LONG ReasonCode);
4996 
4997     END_INTERFACE
4998 } IRDPSRAPISharingSession2Vtbl;
4999 
5000 interface IRDPSRAPISharingSession2 {
5001     CONST_VTBL IRDPSRAPISharingSession2Vtbl* lpVtbl;
5002 };
5003 
5004 #ifdef COBJMACROS
5005 #ifndef WIDL_C_INLINE_WRAPPERS
5006 /*** IUnknown methods ***/
5007 #define IRDPSRAPISharingSession2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5008 #define IRDPSRAPISharingSession2_AddRef(This) (This)->lpVtbl->AddRef(This)
5009 #define IRDPSRAPISharingSession2_Release(This) (This)->lpVtbl->Release(This)
5010 /*** IDispatch methods ***/
5011 #define IRDPSRAPISharingSession2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5012 #define IRDPSRAPISharingSession2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5013 #define IRDPSRAPISharingSession2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5014 #define IRDPSRAPISharingSession2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5015 /*** IRDPSRAPISharingSession methods ***/
5016 #define IRDPSRAPISharingSession2_Open(This) (This)->lpVtbl->Open(This)
5017 #define IRDPSRAPISharingSession2_Close(This) (This)->lpVtbl->Close(This)
5018 #define IRDPSRAPISharingSession2_put_ColorDepth(This,colorDepth) (This)->lpVtbl->put_ColorDepth(This,colorDepth)
5019 #define IRDPSRAPISharingSession2_get_ColorDepth(This,pColorDepth) (This)->lpVtbl->get_ColorDepth(This,pColorDepth)
5020 #define IRDPSRAPISharingSession2_get_Properties(This,ppVal) (This)->lpVtbl->get_Properties(This,ppVal)
5021 #define IRDPSRAPISharingSession2_get_Attendees(This,ppVal) (This)->lpVtbl->get_Attendees(This,ppVal)
5022 #define IRDPSRAPISharingSession2_get_Invitations(This,ppVal) (This)->lpVtbl->get_Invitations(This,ppVal)
5023 #define IRDPSRAPISharingSession2_get_ApplicationFilter(This,ppVal) (This)->lpVtbl->get_ApplicationFilter(This,ppVal)
5024 #define IRDPSRAPISharingSession2_get_VirtualChannelManager(This,ppVal) (This)->lpVtbl->get_VirtualChannelManager(This,ppVal)
5025 #define IRDPSRAPISharingSession2_Pause(This) (This)->lpVtbl->Pause(This)
5026 #define IRDPSRAPISharingSession2_Resume(This) (This)->lpVtbl->Resume(This)
5027 #define IRDPSRAPISharingSession2_ConnectToClient(This,bstrConnectionString) (This)->lpVtbl->ConnectToClient(This,bstrConnectionString)
5028 #define IRDPSRAPISharingSession2_SetDesktopSharedRect(This,left,top,right,bottom) (This)->lpVtbl->SetDesktopSharedRect(This,left,top,right,bottom)
5029 #define IRDPSRAPISharingSession2_GetDesktopSharedRect(This,pleft,ptop,pright,pbottom) (This)->lpVtbl->GetDesktopSharedRect(This,pleft,ptop,pright,pbottom)
5030 /*** IRDPSRAPISharingSession2 methods ***/
5031 #define IRDPSRAPISharingSession2_ConnectUsingTransportStream(This,pStream,bstrGroup,bstrAuthenticatedAttendeeName) (This)->lpVtbl->ConnectUsingTransportStream(This,pStream,bstrGroup,bstrAuthenticatedAttendeeName)
5032 #define IRDPSRAPISharingSession2_get_FrameBuffer(This,ppVal) (This)->lpVtbl->get_FrameBuffer(This,ppVal)
5033 #define IRDPSRAPISharingSession2_SendControlLevelChangeResponse(This,pAttendee,RequestedLevel,ReasonCode) (This)->lpVtbl->SendControlLevelChangeResponse(This,pAttendee,RequestedLevel,ReasonCode)
5034 #else
5035 /*** IUnknown methods ***/
5036 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_QueryInterface(IRDPSRAPISharingSession2* This,REFIID riid,void **ppvObject) {
5037     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5038 }
5039 static FORCEINLINE ULONG IRDPSRAPISharingSession2_AddRef(IRDPSRAPISharingSession2* This) {
5040     return This->lpVtbl->AddRef(This);
5041 }
5042 static FORCEINLINE ULONG IRDPSRAPISharingSession2_Release(IRDPSRAPISharingSession2* This) {
5043     return This->lpVtbl->Release(This);
5044 }
5045 /*** IDispatch methods ***/
5046 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_GetTypeInfoCount(IRDPSRAPISharingSession2* This,UINT *pctinfo) {
5047     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
5048 }
5049 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_GetTypeInfo(IRDPSRAPISharingSession2* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
5050     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
5051 }
5052 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_GetIDsOfNames(IRDPSRAPISharingSession2* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
5053     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
5054 }
5055 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_Invoke(IRDPSRAPISharingSession2* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
5056     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
5057 }
5058 /*** IRDPSRAPISharingSession methods ***/
5059 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_Open(IRDPSRAPISharingSession2* This) {
5060     return This->lpVtbl->Open(This);
5061 }
5062 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_Close(IRDPSRAPISharingSession2* This) {
5063     return This->lpVtbl->Close(This);
5064 }
5065 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_put_ColorDepth(IRDPSRAPISharingSession2* This,LONG colorDepth) {
5066     return This->lpVtbl->put_ColorDepth(This,colorDepth);
5067 }
5068 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_get_ColorDepth(IRDPSRAPISharingSession2* This,LONG *pColorDepth) {
5069     return This->lpVtbl->get_ColorDepth(This,pColorDepth);
5070 }
5071 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_get_Properties(IRDPSRAPISharingSession2* This,IRDPSRAPISessionProperties **ppVal) {
5072     return This->lpVtbl->get_Properties(This,ppVal);
5073 }
5074 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_get_Attendees(IRDPSRAPISharingSession2* This,IRDPSRAPIAttendeeManager **ppVal) {
5075     return This->lpVtbl->get_Attendees(This,ppVal);
5076 }
5077 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_get_Invitations(IRDPSRAPISharingSession2* This,IRDPSRAPIInvitationManager **ppVal) {
5078     return This->lpVtbl->get_Invitations(This,ppVal);
5079 }
5080 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_get_ApplicationFilter(IRDPSRAPISharingSession2* This,IRDPSRAPIApplicationFilter **ppVal) {
5081     return This->lpVtbl->get_ApplicationFilter(This,ppVal);
5082 }
5083 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_get_VirtualChannelManager(IRDPSRAPISharingSession2* This,IRDPSRAPIVirtualChannelManager **ppVal) {
5084     return This->lpVtbl->get_VirtualChannelManager(This,ppVal);
5085 }
5086 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_Pause(IRDPSRAPISharingSession2* This) {
5087     return This->lpVtbl->Pause(This);
5088 }
5089 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_Resume(IRDPSRAPISharingSession2* This) {
5090     return This->lpVtbl->Resume(This);
5091 }
5092 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_ConnectToClient(IRDPSRAPISharingSession2* This,BSTR bstrConnectionString) {
5093     return This->lpVtbl->ConnectToClient(This,bstrConnectionString);
5094 }
5095 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_SetDesktopSharedRect(IRDPSRAPISharingSession2* This,LONG left,LONG top,LONG right,LONG bottom) {
5096     return This->lpVtbl->SetDesktopSharedRect(This,left,top,right,bottom);
5097 }
5098 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_GetDesktopSharedRect(IRDPSRAPISharingSession2* This,LONG *pleft,LONG *ptop,LONG *pright,LONG *pbottom) {
5099     return This->lpVtbl->GetDesktopSharedRect(This,pleft,ptop,pright,pbottom);
5100 }
5101 /*** IRDPSRAPISharingSession2 methods ***/
5102 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_ConnectUsingTransportStream(IRDPSRAPISharingSession2* This,IRDPSRAPITransportStream *pStream,BSTR bstrGroup,BSTR bstrAuthenticatedAttendeeName) {
5103     return This->lpVtbl->ConnectUsingTransportStream(This,pStream,bstrGroup,bstrAuthenticatedAttendeeName);
5104 }
5105 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_get_FrameBuffer(IRDPSRAPISharingSession2* This,IRDPSRAPIFrameBuffer **ppVal) {
5106     return This->lpVtbl->get_FrameBuffer(This,ppVal);
5107 }
5108 static FORCEINLINE HRESULT IRDPSRAPISharingSession2_SendControlLevelChangeResponse(IRDPSRAPISharingSession2* This,IRDPSRAPIAttendee *pAttendee,CTRL_LEVEL RequestedLevel,LONG ReasonCode) {
5109     return This->lpVtbl->SendControlLevelChangeResponse(This,pAttendee,RequestedLevel,ReasonCode);
5110 }
5111 #endif
5112 #endif
5113 
5114 #endif
5115 
5116 
5117 #endif  /* __IRDPSRAPISharingSession2_INTERFACE_DEFINED__ */
5118 
5119 #ifndef __RDPCOMAPILib_LIBRARY_DEFINED__
5120 #define __RDPCOMAPILib_LIBRARY_DEFINED__
5121 
5122 DEFINE_GUID(LIBID_RDPCOMAPILib, 0xcc802d05, 0xae07, 0x4c15, 0xb4,0x96, 0xdb,0x9d,0x22,0xaa,0x0a,0x84);
5123 
5124 typedef enum __WIDL_rdpencomapi_generated_name_0000002B {
5125     CONST_MAX_CHANNEL_MESSAGE_SIZE = 1024,
5126     CONST_MAX_CHANNEL_NAME_LEN = 8,
5127     CONST_MAX_LEGACY_CHANNEL_MESSAGE_SIZE = 409600,
5128     CONST_ATTENDEE_ID_EVERYONE = -1,
5129     CONST_ATTENDEE_ID_HOST = 0,
5130     CONST_CONN_INTERVAL = 50,
5131     CONST_ATTENDEE_ID_DEFAULT = 0xffffffff
5132 } RDPENCOMAPI_CONSTANTS;
5133 /*****************************************************************************
5134  * _IRDPSessionEvents dispinterface
5135  */
5136 #ifndef ___IRDPSessionEvents_DISPINTERFACE_DEFINED__
5137 #define ___IRDPSessionEvents_DISPINTERFACE_DEFINED__
5138 
5139 DEFINE_GUID(DIID__IRDPSessionEvents, 0x98a97042, 0x6698, 0x40e9, 0x8e,0xfd, 0xb3,0x20,0x09,0x90,0x00,0x4b);
5140 #if defined(__cplusplus) && !defined(CINTERFACE)
5141 MIDL_INTERFACE("98a97042-6698-40e9-8efd-b3200990004b")
5142 _IRDPSessionEvents : public IDispatch
5143 {
5144 };
5145 #ifdef __CRT_UUID_DECL
5146 __CRT_UUID_DECL(_IRDPSessionEvents, 0x98a97042, 0x6698, 0x40e9, 0x8e,0xfd, 0xb3,0x20,0x09,0x90,0x00,0x4b)
5147 #endif
5148 #else
5149 typedef struct _IRDPSessionEventsVtbl {
5150     BEGIN_INTERFACE
5151 
5152     /*** IUnknown methods ***/
5153     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
5154         _IRDPSessionEvents *This,
5155         REFIID riid,
5156         void **ppvObject);
5157 
5158     ULONG (STDMETHODCALLTYPE *AddRef)(
5159         _IRDPSessionEvents *This);
5160 
5161     ULONG (STDMETHODCALLTYPE *Release)(
5162         _IRDPSessionEvents *This);
5163 
5164     /*** IDispatch methods ***/
5165     HRESULT (STDMETHODCALLTYPE *GetTypeInfoCount)(
5166         _IRDPSessionEvents *This,
5167         UINT *pctinfo);
5168 
5169     HRESULT (STDMETHODCALLTYPE *GetTypeInfo)(
5170         _IRDPSessionEvents *This,
5171         UINT iTInfo,
5172         LCID lcid,
5173         ITypeInfo **ppTInfo);
5174 
5175     HRESULT (STDMETHODCALLTYPE *GetIDsOfNames)(
5176         _IRDPSessionEvents *This,
5177         REFIID riid,
5178         LPOLESTR *rgszNames,
5179         UINT cNames,
5180         LCID lcid,
5181         DISPID *rgDispId);
5182 
5183     HRESULT (STDMETHODCALLTYPE *Invoke)(
5184         _IRDPSessionEvents *This,
5185         DISPID dispIdMember,
5186         REFIID riid,
5187         LCID lcid,
5188         WORD wFlags,
5189         DISPPARAMS *pDispParams,
5190         VARIANT *pVarResult,
5191         EXCEPINFO *pExcepInfo,
5192         UINT *puArgErr);
5193 
5194     END_INTERFACE
5195 } _IRDPSessionEventsVtbl;
5196 
5197 interface _IRDPSessionEvents {
5198     CONST_VTBL _IRDPSessionEventsVtbl* lpVtbl;
5199 };
5200 
5201 #ifdef COBJMACROS
5202 #ifndef WIDL_C_INLINE_WRAPPERS
5203 /*** IUnknown methods ***/
5204 #define _IRDPSessionEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
5205 #define _IRDPSessionEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
5206 #define _IRDPSessionEvents_Release(This) (This)->lpVtbl->Release(This)
5207 /*** IDispatch methods ***/
5208 #define _IRDPSessionEvents_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
5209 #define _IRDPSessionEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
5210 #define _IRDPSessionEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
5211 #define _IRDPSessionEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
5212 #else
5213 /*** IUnknown methods ***/
5214 static FORCEINLINE HRESULT _IRDPSessionEvents_QueryInterface(_IRDPSessionEvents* This,REFIID riid,void **ppvObject) {
5215     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
5216 }
5217 static FORCEINLINE ULONG _IRDPSessionEvents_AddRef(_IRDPSessionEvents* This) {
5218     return This->lpVtbl->AddRef(This);
5219 }
5220 static FORCEINLINE ULONG _IRDPSessionEvents_Release(_IRDPSessionEvents* This) {
5221     return This->lpVtbl->Release(This);
5222 }
5223 /*** IDispatch methods ***/
5224 static FORCEINLINE HRESULT _IRDPSessionEvents_GetTypeInfoCount(_IRDPSessionEvents* This,UINT *pctinfo) {
5225     return This->lpVtbl->GetTypeInfoCount(This,pctinfo);
5226 }
5227 static FORCEINLINE HRESULT _IRDPSessionEvents_GetTypeInfo(_IRDPSessionEvents* This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo) {
5228     return This->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo);
5229 }
5230 static FORCEINLINE HRESULT _IRDPSessionEvents_GetIDsOfNames(_IRDPSessionEvents* This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId) {
5231     return This->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId);
5232 }
5233 static FORCEINLINE HRESULT _IRDPSessionEvents_Invoke(_IRDPSessionEvents* This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr) {
5234     return This->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr);
5235 }
5236 #endif
5237 #endif
5238 
5239 #endif
5240 
5241 #endif  /* ___IRDPSessionEvents_DISPINTERFACE_DEFINED__ */
5242 
5243 typedef struct __ReferenceRemainingTypes__ {
5244     CTRL_LEVEL __ctrlLevel__;
5245     ATTENDEE_DISCONNECT_REASON __attendeeDisconnectReason__;
5246     CHANNEL_PRIORITY __channelPriority__;
5247     CHANNEL_FLAGS __channelFlags__;
5248     CHANNEL_ACCESS_ENUM __channelAccessEnum__;
5249     RDPENCOMAPI_ATTENDEE_FLAGS __rdpencomapiAttendeeFlags__;
5250     RDPSRAPI_WND_FLAGS __rdpsrapiWndFlags__;
5251     RDPSRAPI_APP_FLAGS __rdpsrapiAppFlags__;
5252 } __ReferenceRemainingTypes__;
5253 #ifndef __IRDPViewerRenderingSurface_FWD_DEFINED__
5254 #define __IRDPViewerRenderingSurface_FWD_DEFINED__
5255 typedef interface IRDPViewerRenderingSurface IRDPViewerRenderingSurface;
5256 #ifdef __cplusplus
5257 interface IRDPViewerRenderingSurface;
5258 #endif /* __cplusplus */
5259 #endif
5260 
5261 #ifndef __IRDPViewerInputSink_FWD_DEFINED__
5262 #define __IRDPViewerInputSink_FWD_DEFINED__
5263 typedef interface IRDPViewerInputSink IRDPViewerInputSink;
5264 #ifdef __cplusplus
5265 interface IRDPViewerInputSink;
5266 #endif /* __cplusplus */
5267 #endif
5268 
5269 #ifndef __IRDPSRAPIAudioStream_FWD_DEFINED__
5270 #define __IRDPSRAPIAudioStream_FWD_DEFINED__
5271 typedef interface IRDPSRAPIAudioStream IRDPSRAPIAudioStream;
5272 #ifdef __cplusplus
5273 interface IRDPSRAPIAudioStream;
5274 #endif /* __cplusplus */
5275 #endif
5276 
5277 #ifndef __IRDPSRAPIPerfCounterLoggingManager_FWD_DEFINED__
5278 #define __IRDPSRAPIPerfCounterLoggingManager_FWD_DEFINED__
5279 typedef interface IRDPSRAPIPerfCounterLoggingManager IRDPSRAPIPerfCounterLoggingManager;
5280 #ifdef __cplusplus
5281 interface IRDPSRAPIPerfCounterLoggingManager;
5282 #endif /* __cplusplus */
5283 #endif
5284 
5285 /*****************************************************************************
5286  * RDPViewer coclass
5287  */
5288 
5289 DEFINE_GUID(CLSID_RDPViewer, 0x32be5ed2, 0x5c86, 0x480f, 0xa9,0x14, 0x0f,0xf8,0x88,0x5a,0x1b,0x3f);
5290 
5291 #ifdef __cplusplus
5292 class DECLSPEC_UUID("32be5ed2-5c86-480f-a914-0ff8885a1b3f") RDPViewer;
5293 #ifdef __CRT_UUID_DECL
5294 __CRT_UUID_DECL(RDPViewer, 0x32be5ed2, 0x5c86, 0x480f, 0xa9,0x14, 0x0f,0xf8,0x88,0x5a,0x1b,0x3f)
5295 #endif
5296 #endif
5297 
5298 /*****************************************************************************
5299  * RDPSRAPISessionProperties coclass
5300  */
5301 
5302 DEFINE_GUID(CLSID_RDPSRAPISessionProperties, 0xdd7594ff, 0xea2a, 0x4c06, 0x8f,0xdf, 0x13,0x2d,0xe4,0x8b,0x65,0x10);
5303 
5304 #ifdef __cplusplus
5305 class DECLSPEC_UUID("dd7594ff-ea2a-4c06-8fdf-132de48b6510") RDPSRAPISessionProperties;
5306 #ifdef __CRT_UUID_DECL
5307 __CRT_UUID_DECL(RDPSRAPISessionProperties, 0xdd7594ff, 0xea2a, 0x4c06, 0x8f,0xdf, 0x13,0x2d,0xe4,0x8b,0x65,0x10)
5308 #endif
5309 #endif
5310 
5311 /*****************************************************************************
5312  * RDPSRAPIInvitationManager coclass
5313  */
5314 
5315 DEFINE_GUID(CLSID_RDPSRAPIInvitationManager, 0x53d9c9db, 0x75ab, 0x4271, 0x94,0x8a, 0x4c,0x4e,0xb3,0x6a,0x8f,0x2b);
5316 
5317 #ifdef __cplusplus
5318 class DECLSPEC_UUID("53d9c9db-75ab-4271-948a-4c4eb36a8f2b") RDPSRAPIInvitationManager;
5319 #ifdef __CRT_UUID_DECL
5320 __CRT_UUID_DECL(RDPSRAPIInvitationManager, 0x53d9c9db, 0x75ab, 0x4271, 0x94,0x8a, 0x4c,0x4e,0xb3,0x6a,0x8f,0x2b)
5321 #endif
5322 #endif
5323 
5324 /*****************************************************************************
5325  * RDPSRAPIInvitation coclass
5326  */
5327 
5328 DEFINE_GUID(CLSID_RDPSRAPIInvitation, 0x49174dc6, 0x0731, 0x4b5e, 0x8e,0xe1, 0x83,0xa6,0x3d,0x38,0x68,0xfa);
5329 
5330 #ifdef __cplusplus
5331 class DECLSPEC_UUID("49174dc6-0731-4b5e-8ee1-83a63d3868fa") RDPSRAPIInvitation;
5332 #ifdef __CRT_UUID_DECL
5333 __CRT_UUID_DECL(RDPSRAPIInvitation, 0x49174dc6, 0x0731, 0x4b5e, 0x8e,0xe1, 0x83,0xa6,0x3d,0x38,0x68,0xfa)
5334 #endif
5335 #endif
5336 
5337 /*****************************************************************************
5338  * RDPSRAPIAttendeeManager coclass
5339  */
5340 
5341 DEFINE_GUID(CLSID_RDPSRAPIAttendeeManager, 0xd7b13a01, 0xf7d4, 0x42a6, 0x85,0x95, 0x12,0xfc,0x8c,0x24,0xe8,0x51);
5342 
5343 #ifdef __cplusplus
5344 class DECLSPEC_UUID("d7b13a01-f7d4-42a6-8595-12fc8c24e851") RDPSRAPIAttendeeManager;
5345 #ifdef __CRT_UUID_DECL
5346 __CRT_UUID_DECL(RDPSRAPIAttendeeManager, 0xd7b13a01, 0xf7d4, 0x42a6, 0x85,0x95, 0x12,0xfc,0x8c,0x24,0xe8,0x51)
5347 #endif
5348 #endif
5349 
5350 /*****************************************************************************
5351  * RDPSRAPIAttendee coclass
5352  */
5353 
5354 DEFINE_GUID(CLSID_RDPSRAPIAttendee, 0x74f93bb5, 0x755f, 0x488e, 0x8a,0x29, 0x23,0x90,0x10,0x8a,0xef,0x55);
5355 
5356 #ifdef __cplusplus
5357 class DECLSPEC_UUID("74f93bb5-755f-488e-8a29-2390108aef55") RDPSRAPIAttendee;
5358 #ifdef __CRT_UUID_DECL
5359 __CRT_UUID_DECL(RDPSRAPIAttendee, 0x74f93bb5, 0x755f, 0x488e, 0x8a,0x29, 0x23,0x90,0x10,0x8a,0xef,0x55)
5360 #endif
5361 #endif
5362 
5363 /*****************************************************************************
5364  * RDPSRAPIAttendeeDisconnectInfo coclass
5365  */
5366 
5367 DEFINE_GUID(CLSID_RDPSRAPIAttendeeDisconnectInfo, 0xb47d7250, 0x5bdb, 0x405d, 0xb4,0x87, 0xca,0xad,0x9c,0x56,0xf4,0xf8);
5368 
5369 #ifdef __cplusplus
5370 class DECLSPEC_UUID("b47d7250-5bdb-405d-b487-caad9c56f4f8") RDPSRAPIAttendeeDisconnectInfo;
5371 #ifdef __CRT_UUID_DECL
5372 __CRT_UUID_DECL(RDPSRAPIAttendeeDisconnectInfo, 0xb47d7250, 0x5bdb, 0x405d, 0xb4,0x87, 0xca,0xad,0x9c,0x56,0xf4,0xf8)
5373 #endif
5374 #endif
5375 
5376 /*****************************************************************************
5377  * RDPSRAPIApplicationFilter coclass
5378  */
5379 
5380 DEFINE_GUID(CLSID_RDPSRAPIApplicationFilter, 0xe35ace89, 0xc7e8, 0x427e, 0xa4,0xf9, 0xb9,0xda,0x07,0x28,0x26,0xbd);
5381 
5382 #ifdef __cplusplus
5383 class DECLSPEC_UUID("e35ace89-c7e8-427e-a4f9-b9da072826bd") RDPSRAPIApplicationFilter;
5384 #ifdef __CRT_UUID_DECL
5385 __CRT_UUID_DECL(RDPSRAPIApplicationFilter, 0xe35ace89, 0xc7e8, 0x427e, 0xa4,0xf9, 0xb9,0xda,0x07,0x28,0x26,0xbd)
5386 #endif
5387 #endif
5388 
5389 /*****************************************************************************
5390  * RDPSRAPIApplicationList coclass
5391  */
5392 
5393 DEFINE_GUID(CLSID_RDPSRAPIApplicationList, 0x9e31c815, 0x7433, 0x4876, 0x97,0xfb, 0xed,0x59,0xfe,0x2b,0xaa,0x22);
5394 
5395 #ifdef __cplusplus
5396 class DECLSPEC_UUID("9e31c815-7433-4876-97fb-ed59fe2baa22") RDPSRAPIApplicationList;
5397 #ifdef __CRT_UUID_DECL
5398 __CRT_UUID_DECL(RDPSRAPIApplicationList, 0x9e31c815, 0x7433, 0x4876, 0x97,0xfb, 0xed,0x59,0xfe,0x2b,0xaa,0x22)
5399 #endif
5400 #endif
5401 
5402 /*****************************************************************************
5403  * RDPSRAPIApplication coclass
5404  */
5405 
5406 DEFINE_GUID(CLSID_RDPSRAPIApplication, 0xc116a484, 0x4b25, 0x4b9f, 0x8a,0x54, 0xb9,0x34,0xb0,0x6e,0x57,0xfa);
5407 
5408 #ifdef __cplusplus
5409 class DECLSPEC_UUID("c116a484-4b25-4b9f-8a54-b934b06e57fa") RDPSRAPIApplication;
5410 #ifdef __CRT_UUID_DECL
5411 __CRT_UUID_DECL(RDPSRAPIApplication, 0xc116a484, 0x4b25, 0x4b9f, 0x8a,0x54, 0xb9,0x34,0xb0,0x6e,0x57,0xfa)
5412 #endif
5413 #endif
5414 
5415 /*****************************************************************************
5416  * RDPSRAPIWindowList coclass
5417  */
5418 
5419 DEFINE_GUID(CLSID_RDPSRAPIWindowList, 0x9c21e2b8, 0x5dd4, 0x42cc, 0x81,0xba, 0x1c,0x09,0x98,0x52,0xe6,0xfa);
5420 
5421 #ifdef __cplusplus
5422 class DECLSPEC_UUID("9c21e2b8-5dd4-42cc-81ba-1c099852e6fa") RDPSRAPIWindowList;
5423 #ifdef __CRT_UUID_DECL
5424 __CRT_UUID_DECL(RDPSRAPIWindowList, 0x9c21e2b8, 0x5dd4, 0x42cc, 0x81,0xba, 0x1c,0x09,0x98,0x52,0xe6,0xfa)
5425 #endif
5426 #endif
5427 
5428 /*****************************************************************************
5429  * RDPSRAPIWindow coclass
5430  */
5431 
5432 DEFINE_GUID(CLSID_RDPSRAPIWindow, 0x03cf46db, 0xce45, 0x4d36, 0x86,0xed, 0xed,0x28,0xb7,0x43,0x98,0xbf);
5433 
5434 #ifdef __cplusplus
5435 class DECLSPEC_UUID("03cf46db-ce45-4d36-86ed-ed28b74398bf") RDPSRAPIWindow;
5436 #ifdef __CRT_UUID_DECL
5437 __CRT_UUID_DECL(RDPSRAPIWindow, 0x03cf46db, 0xce45, 0x4d36, 0x86,0xed, 0xed,0x28,0xb7,0x43,0x98,0xbf)
5438 #endif
5439 #endif
5440 
5441 /*****************************************************************************
5442  * RDPSRAPITcpConnectionInfo coclass
5443  */
5444 
5445 DEFINE_GUID(CLSID_RDPSRAPITcpConnectionInfo, 0xbe49db3f, 0xebb6, 0x4278, 0x8c,0xe0, 0xd5,0x45,0x58,0x33,0xea,0xee);
5446 
5447 #ifdef __cplusplus
5448 class DECLSPEC_UUID("be49db3f-ebb6-4278-8ce0-d5455833eaee") RDPSRAPITcpConnectionInfo;
5449 #ifdef __CRT_UUID_DECL
5450 __CRT_UUID_DECL(RDPSRAPITcpConnectionInfo, 0xbe49db3f, 0xebb6, 0x4278, 0x8c,0xe0, 0xd5,0x45,0x58,0x33,0xea,0xee)
5451 #endif
5452 #endif
5453 
5454 /*****************************************************************************
5455  * RDPSession coclass
5456  */
5457 
5458 DEFINE_GUID(CLSID_RDPSession, 0x9b78f0e6, 0x3e05, 0x4a5b, 0xb2,0xe8, 0xe7,0x43,0xa8,0x95,0x6b,0x65);
5459 
5460 #ifdef __cplusplus
5461 class DECLSPEC_UUID("9b78f0e6-3e05-4a5b-b2e8-e743a8956b65") RDPSession;
5462 #ifdef __CRT_UUID_DECL
5463 __CRT_UUID_DECL(RDPSession, 0x9b78f0e6, 0x3e05, 0x4a5b, 0xb2,0xe8, 0xe7,0x43,0xa8,0x95,0x6b,0x65)
5464 #endif
5465 #endif
5466 
5467 /*****************************************************************************
5468  * RDPSRAPIFrameBuffer coclass
5469  */
5470 
5471 DEFINE_GUID(CLSID_RDPSRAPIFrameBuffer, 0xa4f66bcc, 0x538e, 0x4101, 0x95,0x1d, 0x30,0x84,0x7a,0xdb,0x51,0x01);
5472 
5473 #ifdef __cplusplus
5474 class DECLSPEC_UUID("a4f66bcc-538e-4101-951d-30847adb5101") RDPSRAPIFrameBuffer;
5475 #ifdef __CRT_UUID_DECL
5476 __CRT_UUID_DECL(RDPSRAPIFrameBuffer, 0xa4f66bcc, 0x538e, 0x4101, 0x95,0x1d, 0x30,0x84,0x7a,0xdb,0x51,0x01)
5477 #endif
5478 #endif
5479 
5480 /*****************************************************************************
5481  * RDPTransportStreamBuffer coclass
5482  */
5483 
5484 DEFINE_GUID(CLSID_RDPTransportStreamBuffer, 0x8d4a1c69, 0xf17f, 0x4549, 0xa6,0x99, 0x76,0x1c,0x6e,0x6b,0x5c,0x0a);
5485 
5486 #ifdef __cplusplus
5487 class DECLSPEC_UUID("8d4a1c69-f17f-4549-a699-761c6e6b5c0a") RDPTransportStreamBuffer;
5488 #ifdef __CRT_UUID_DECL
5489 __CRT_UUID_DECL(RDPTransportStreamBuffer, 0x8d4a1c69, 0xf17f, 0x4549, 0xa6,0x99, 0x76,0x1c,0x6e,0x6b,0x5c,0x0a)
5490 #endif
5491 #endif
5492 
5493 /*****************************************************************************
5494  * RDPTransportStreamEvents coclass
5495  */
5496 
5497 DEFINE_GUID(CLSID_RDPTransportStreamEvents, 0x31e3ab20, 0x5350, 0x483f, 0x9d,0xc6, 0x67,0x48,0x66,0x5e,0xfd,0xeb);
5498 
5499 #ifdef __cplusplus
5500 class DECLSPEC_UUID("31e3ab20-5350-483f-9dc6-6748665efdeb") RDPTransportStreamEvents;
5501 #ifdef __CRT_UUID_DECL
5502 __CRT_UUID_DECL(RDPTransportStreamEvents, 0x31e3ab20, 0x5350, 0x483f, 0x9d,0xc6, 0x67,0x48,0x66,0x5e,0xfd,0xeb)
5503 #endif
5504 #endif
5505 
5506 #endif /* __RDPCOMAPILib_LIBRARY_DEFINED__ */
5507 #endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) */
5508 /* Begin additional prototypes for all interfaces */
5509 
5510 ULONG           __RPC_USER BSTR_UserSize     (ULONG *, ULONG, BSTR *);
5511 unsigned char * __RPC_USER BSTR_UserMarshal  (ULONG *, unsigned char *, BSTR *);
5512 unsigned char * __RPC_USER BSTR_UserUnmarshal(ULONG *, unsigned char *, BSTR *);
5513 void            __RPC_USER BSTR_UserFree     (ULONG *, BSTR *);
5514 ULONG           __RPC_USER VARIANT_UserSize     (ULONG *, ULONG, VARIANT *);
5515 unsigned char * __RPC_USER VARIANT_UserMarshal  (ULONG *, unsigned char *, VARIANT *);
5516 unsigned char * __RPC_USER VARIANT_UserUnmarshal(ULONG *, unsigned char *, VARIANT *);
5517 void            __RPC_USER VARIANT_UserFree     (ULONG *, VARIANT *);
5518 
5519 /* End additional prototypes */
5520 
5521 #ifdef __cplusplus
5522 }
5523 #endif
5524 
5525 #endif /* __rdpencomapi_h__ */
5526