Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1772 lines
88 KiB

  1. //+----------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1998 - 2000
  6. //
  7. // IDL File for MS RDP Control
  8. //
  9. // File: mstsax.idl
  10. //
  11. //----------------------------------------------------------------------------
  12. #include <olectl.h>
  13. // This file will be processed by the MIDL tool to
  14. // produce the type library (mstsax.tlb) and marshalling code.
  15. import "oaidl.idl";
  16. import "ocidl.idl";
  17. // ----------------------------------------------------------------------------
  18. // Method DISPIDs
  19. //
  20. //IMsTscAx interface
  21. const int DISPID_METHOD_CONNECT = 30;
  22. const int DISPID_METHOD_DISCONNECT = 31;
  23. const int DISPID_METHOD_CREATEVIRTUALCHANNELS = 33;
  24. const int DISPID_METHOD_SENDONVIRTUALCHANNEL = 34;
  25. //IMsRdpClient interface
  26. const int DISPID_METHOD_SET_VIRTUALCHANNELOPTIONS = 35;
  27. const int DISPID_METHOD_GET_VIRTUALCHANNELOPTIONS = 36;
  28. const int DISPID_METHOD_REQUESTCLOSE = 37;
  29. // ----------------------------------------------------------------------------
  30. // Root interface property DISPIDs
  31. //
  32. //IMsTscAx interface
  33. const int DISPID_PROP_SERVER = 1;
  34. const int DISPID_PROP_DOMAIN = 2;
  35. const int DISPID_PROP_USERNAME = 3;
  36. const int DISPID_PROP_DISCONNECTED_TEXT = 4;
  37. const int DISPID_PROP_CONNECTING_TEXT = 5;
  38. const int DISPID_PROP_CONNECTED = 6;
  39. const int DISPID_PROP_DESKTOPWIDTH = 12;
  40. const int DISPID_PROP_DESKTOPHEIGHT = 13;
  41. const int DISPID_PROP_STARTCONNECTED = 16;
  42. const int DISPID_PROP_HORIZSCROLLBAR = 17;
  43. const int DISPID_PROP_VERTSCROLLBAR = 18;
  44. const int DISPID_PROP_FULLSCREENTITLE = 19;
  45. const int DISPID_PROP_CIPHERSTRENGTH = 20;
  46. const int DISPID_PROP_VERSION = 21;
  47. const int DISPID_PROP_SECUREDSETTINGSENABLED = 22;
  48. const int DISPID_PROP_SECUREDSETTINGS = 97;
  49. const int DISPID_PROP_ADVSETTINGS = 98;
  50. const int DISPID_PROP_DEBUGGER = 99;
  51. //IMsRdpClient interface
  52. const int DISPID_PROP_COLORDEPTH = 100;
  53. const int DISPID_PROP_ADVSETTINGS2 = 101;
  54. const int DISPID_PROP_SECUREDSETTINGS2 = 102;
  55. const int DISPID_PROP_EXTENDEDDISCONNECTREASON = 103;
  56. const int DISPID_PROP_FULLSCREEN = 104;
  57. //
  58. // IMsRdpClient2 interface
  59. //
  60. const int DISPID_PROP_ADVSETTINGS3 = 200;
  61. const int DISPID_PROP_CONNECTED_STATUS_TEXT = 201;
  62. //
  63. // IMsRdpClient3 interface
  64. //
  65. const int DISPID_PROP_ADVSETTINGS4 = 300;
  66. // ----------------------------------------------------------------------------
  67. // Advanced property DISPIDs
  68. //
  69. //IMsTscAdvancedSettings interface
  70. const int DISPID_PROP_ADV_COMPRESS = 121;
  71. const int DISPID_PROP_ADV_BITMAPPERISTENCE = 122;
  72. const int DISPID_PROP_ADV_ALLOWBACKGROUNDINPUT = 161;
  73. const int DISPID_PROP_ADV_KEYBOARDLAYOUTSTR = 162;
  74. const int DISPID_PROP_ADV_PLUGINDLLS = 170;
  75. const int DISPID_PROP_ADV_ICONFILE = 171;
  76. const int DISPID_PROP_ADV_ICONINDEX = 172;
  77. const int DISPID_PROP_ADV_CONTAINER_FULLSCREEN = 173;
  78. const int DISPID_PROP_ADV_DISABLE_RDPDR = 174;
  79. //IMsRdpClientAdvancedSettings (this is IMsTscAdvancedSettings2)
  80. const int DISPID_PROP_ADV_SMOOTHSCROLL = 101;
  81. const int DISPID_PROP_ADV_ACCELERATORPASSTHROUGH = 102;
  82. const int DISPID_PROP_ADV_SHADOWBITMAP = 103;
  83. const int DISPID_PROP_ADV_TRANSPORTTYPE = 104;
  84. const int DISPID_PROP_ADV_SASSEQUENCE = 105;
  85. const int DISPID_PROP_ADV_ENCRYPTIONENABLED = 106;
  86. const int DISPID_PROP_ADV_DEDICATEDTERMINAL = 107;
  87. const int DISPID_PROP_ADV_RDPPORT = 108;
  88. const int DISPID_PROP_ADV_ENABLEMOUSE = 109;
  89. const int DISPID_PROP_ADV_DISABLECTRLALTDEL = 110;
  90. const int DISPID_PROP_ADV_ENABLEWINDOWSKEY = 111;
  91. const int DISPID_PROP_ADV_DOUBLECLICKDETECT = 112;
  92. const int DISPID_PROP_ADV_MAXIMIZESHELL = 113;
  93. const int DISPID_PROP_ADV_HOTKEYFULLSCREEN = 114;
  94. const int DISPID_PROP_ADV_HOTKEYCTRLESC = 115;
  95. const int DISPID_PROP_ADV_HOTKEYALTESC = 116;
  96. const int DISPID_PROP_ADV_HOTKEYALTTAB = 117;
  97. const int DISPID_PROP_ADV_HOTKEYALTSHIFTTAB = 118;
  98. const int DISPID_PROP_ADV_HOTKEYALTSPACE = 119;
  99. const int DISPID_PROP_ADV_HOTKEYCTRLALTDEL = 120;
  100. const int DISPID_PROP_ADV_ORDERDRAWTHRESHOLD = 123;
  101. const int DISPID_PROP_ADV_BITMAPCACHESIZE = 124;
  102. const int DISPID_PROP_ADV_BITMAPVIRTUALCACHESIZE = 125;
  103. const int DISPID_PROP_ADV_NUMBITMAPCACHES = 126;
  104. const int DISPID_PROP_ADV_CACHEPERSISTENCEACTIVE = 127;
  105. #ifdef ENABLE_PERF_TUNING_OPTIONS
  106. const int DISPID_PROP_ADV_BITMAPCACHEPROPORTION1 = 128;
  107. const int DISPID_PROP_ADV_BITMAPCACHEPROPORTION2 = 129;
  108. const int DISPID_PROP_ADV_BITMAPCACHEPROPORTION3 = 130;
  109. const int DISPID_PROP_ADV_BITMAPCACHEPROPORTION4 = 131;
  110. const int DISPID_PROP_ADV_BITMAPCACHEPROPORTION5 = 132;
  111. const int DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES1 = 133;
  112. const int DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES2 = 134;
  113. const int DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES3 = 135;
  114. const int DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES4 = 136;
  115. const int DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES5 = 137;
  116. #endif //ENABLE_PERF_TUNING_OPTIONS
  117. const int DISPID_PROP_ADV_PERSISTCACHEDIRECTORY = 138;
  118. #ifdef ENABLE_PERF_TUNING_OPTIONS
  119. const int DISPID_PROP_ADV_BSENDBITMAPKEYS1 = 139;
  120. const int DISPID_PROP_ADV_BSENDBITMAPKEYS2 = 140;
  121. const int DISPID_PROP_ADV_BSENDBITMAPKEYS3 = 141;
  122. const int DISPID_PROP_ADV_BSENDBITMAPKEYS4 = 142;
  123. const int DISPID_PROP_ADV_BSENDBITMAPKEYS5 = 143;
  124. const int DISPID_PROP_ADV_GLYPHSUPPORTLEVEL = 144;
  125. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE1 = 145;
  126. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE2 = 146;
  127. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE3 = 147;
  128. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE4 = 148;
  129. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE5 = 149;
  130. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE6 = 150;
  131. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE7 = 151;
  132. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE8 = 152;
  133. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE9 = 153;
  134. const int DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE10 = 154;
  135. const int DISPID_PROP_ADV_FRAGCELLSIZE = 155;
  136. #endif //ENABLE_PERF_TUNING_OPTIONS
  137. const int DISPID_PROP_ADV_BRUSHSUPPORTLEVEL = 156;
  138. const int DISPID_PROP_ADV_MININPUTSENDINTERVAL = 157;
  139. const int DISPID_PROP_ADV_INPUTEVENTSATONCE = 158;
  140. const int DISPID_PROP_ADV_MAXEVENTCOUNT = 159;
  141. const int DISPID_PROP_ADV_KEEPALIVEINTERVAL = 160;
  142. const int DISPID_PROP_ADV_SHUTDOWNTIMEOUT = 163;
  143. const int DISPID_PROP_ADV_OVERALLCONNECTIONTIMEOUT = 164;
  144. const int DISPID_PROP_ADV_SINGLECONNECTIONTIMEOUT = 165;
  145. const int DISPID_PROP_ADV_KEYBOARDTYPE = 166; // WINCE ONLY
  146. const int DISPID_PROP_ADV_KEYBOARDSUBTYPE = 167; // WINCE ONLY
  147. const int DISPID_PROP_ADV_KEYBOARDFUNCTIONKEY = 168; // WINCE ONLY
  148. const int DISPID_PROP_ADV_WINCEFIXEDPALETTE = 169; // WINCE ONLY
  149. const int DISPID_PROP_ADV_SCALEBITMAPCACHESBYBPP = 175;
  150. const int DISPID_PROP_ADV_CONNECT_TO_SERVER_CONSOLE= 178;
  151. const int DISPID_PROP_ADV_BITMAPPERSISTENCE = 182;
  152. const int DISPID_PROP_ADV_MINUTESTOIDLETIMEOUT = 183;
  153. #ifdef SMART_SIZING
  154. const int DISPID_PROP_ADV_SMART_SIZING = 184;
  155. #endif // SMART_SIZING
  156. const int DISPID_PROP_ADV_RDPDR_LOCALPRINTINGDOCNAME = 185;
  157. const int DISPID_PROP_ADV_CLEARTEXTPASSWORD = 186;
  158. const int DISPID_PROP_ADV_DISPLAYCONNECTIONBAR = 187;
  159. const int DISPID_PROP_ADV_PINCONNECTIONBAR = 188;
  160. const int DISPID_PROP_ADV_GRABFOCUSONCONNECT = 189;
  161. const int DISPID_PROP_ADV_LOADBALANCE_INFO = 190;
  162. const int DISPID_PROP_ADV_REDIRECT_DRIVES = 191;
  163. const int DISPID_PROP_ADV_REDIRECT_PRINTERS = 192;
  164. const int DISPID_PROP_ADV_REDIRECT_PORTS = 193;
  165. const int DISPID_PROP_ADV_REDIRECT_SMARTCARDS = 194;
  166. const int DISPID_PROP_ADV_BITMAPVIRTUALCACHE16BPPSIZE = 195;
  167. const int DISPID_PROP_ADV_BITMAPVIRTUALCACHE24BPPSIZE = 196;
  168. #ifdef PROXY_SERVER
  169. //
  170. //proxy server properties
  171. //
  172. const int DISPID_PROP_ADV_PROXYSERVER = 197;
  173. const int DISPID_PROP_ADV_PROXYUSEHTTPS = 198;
  174. const int DISPID_PROP_ADV_PROXYURL = 199;
  175. #endif //PROXY_SERVER
  176. const int DISIPD_PROP_ADV_PERFORMANCEFLAGS = 200;
  177. const int DISPID_PROP_ADV_RDPDR_CLIPCLEANTEMPDIR_STRING = 201;
  178. const int DISPID_PROP_ADV_RDPDR_CLIPPASTEINFO_STRING = 202;
  179. // Special salem connection socket
  180. const int DISPID_PROP_ADV_CONNECTIONSOCKET = 203;
  181. const int DISPID_PROP_ADV_NOTIFYTSPUBLICKEY = 204;
  182. // ----------------------------------------------------------------------------
  183. // IMsRdpClientAdvancedSettings2
  184. //
  185. // Autoreconnection properties
  186. const int DISPID_PROP_ADV_CANAUTORECONNECT = 205;
  187. const int DISPID_PROP_ADV_ENABLEAUTORECONNECT = 206;
  188. const int DISPID_PROP_ADV_MAXRECONNECTATTEMPTS = 207;
  189. // ----------------------------------------------------------------------------
  190. // IMsRdpClientAdvancedSettings3
  191. //
  192. // Autoreconnection properties
  193. const int DISPID_PROP_ADV_CONBAR_SHOWMINIMIZE = 210;
  194. const int DISPID_PROP_ADV_CONBAR_SHOWRESTORE = 211;
  195. // ----------------------------------------------------------------------------
  196. // SecuredSettings (secured for scripting from web browser) property dispids
  197. //
  198. const int DISPID_PROP_SECURED_STARTPROGRAM = 1;
  199. const int DISPID_PROP_SECURED_WORKDIR = 2;
  200. const int DISPID_PROP_SECURED_FULLSCREEN = 3;
  201. // ----------------------------------------------------------------------------
  202. // SecuredSettings v2 interface
  203. //
  204. const int DISPID_PROP_SECURED_KEYBOARD_HOOKING_MODE = 4;
  205. const int DISPID_PROP_SECURED_AUDIO_REDIRECTION_MODE = 5;
  206. // ----------------------------------------------------------------------------
  207. // Debug interface propid's
  208. //
  209. const int DISPID_PROP_DBG_HATCH_BMP_PDU = 200;
  210. const int DISPID_PROP_DBG_HATCH_SSB_ORDER = 201;
  211. const int DISPID_PROP_DBG_HATCH_MEMBLT_ORDER = 202;
  212. const int DISPID_PROP_DBG_HATCH_INDEX_PDU = 203;
  213. const int DISPID_PROP_DBG_LABEL_MEMBLT = 204;
  214. const int DISPID_PROP_DBG_BMP_CACHE_MON = 205;
  215. const int DISPID_PROP_DBG_MALLOC_FAILURES = 206;
  216. const int DISPID_PROP_DBG_MALLOC_HUGE_FAILURES = 207;
  217. const int DISPID_PROP_DBG_NET_THRUPUT = 208;
  218. const int DISPID_PROP_DBG_CLX_CMDLINE = 209;
  219. const int DISPID_PROP_DBG_CLX_CLXDLL = 210;
  220. // ----------------------------------------------------------------------------
  221. // Const defines
  222. const int AUDIOREDIRECT_TO_CLIENT = 0;
  223. const int AUDIOREDIRECT_ON_SERVER = 1;
  224. const int AUDIOREDIRECT_NOAUDIO = 2;
  225. // ----------------------------------------------------------------------------
  226. // Non Scriptable interface
  227. //
  228. const int DISPID_PROP_CLEARTEXTPASSWORD = 1;
  229. const int DISPID_PROP_PORTABLEPASSWORD = 2;
  230. const int DISPID_PROP_PORTABLESALT = 3;
  231. const int DISPID_PROP_BINARYPASSWORD = 4;
  232. const int DISPID_PROP_BINARYSALT = 5;
  233. const int DISPID_METHOD_RESETPASSWORD = 10;
  234. // ----------------------------------------------------------------------------
  235. // Non Scriptable V2 interface
  236. //
  237. const int DISPID_METHOD_NOTIFY_REDIRECT_DEVICE_CHANGE = 11;
  238. const int DISPID_METHOD_SENDKEYS = 12;
  239. // ----------------------------------------------------------------------------
  240. // Event DISPIDs
  241. //
  242. const int DISPID_CONNECTING = 1;
  243. const int DISPID_CONNECTED = 2;
  244. const int DISPID_LOGINCOMPLETE = 3;
  245. const int DISPID_DISCONNECTED = 4;
  246. const int DISPID_ENTERFULLSCREENMODE = 5;
  247. const int DISPID_LEAVEFULLSCREENMODE = 6;
  248. const int DISPID_CHANNELRECEIVEDDATA = 7;
  249. const int DISPID_REQUESTGOFULLSCREEN = 8;
  250. const int DISPID_REQUESTLEAVEFULLSCREEN = 9;
  251. const int DISPID_FATALERROR = 10;
  252. const int DISPID_WARNING = 11;
  253. const int DISPID_REMOTEDESKTOPSIZECHANGE = 12;
  254. const int DISPID_IDLETIMEOUTNOTIFICATION = 13;
  255. const int DISPID_REQUESTCONTAINERMINIMIZE = 14;
  256. const int DISPID_CONFIRMCLOSE = 15;
  257. const int DISPID_RECEVIEDTSPUBLICKEY = 16;
  258. const int DISPID_AUTORECONNECTING = 17;
  259. // ----------------------------------------------------------------------------
  260. // NonScriptable interface (for settings that can only be accessed through
  261. // the vtable interface).
  262. // Can't change this - shipped as part of TSAC.
  263. //
  264. [
  265. object,
  266. uuid(c1e6743a-41c1-4a74-832a-0dd06c1c7a0e),
  267. helpstring("IMsTscNonScriptable Interface"),
  268. pointer_default(unique)
  269. ]
  270. interface IMsTscNonScriptable : IUnknown
  271. {
  272. [propput, id(DISPID_PROP_CLEARTEXTPASSWORD),
  273. helpstring("property (set only) ClearTextPassword")]
  274. HRESULT ClearTextPassword([in] BSTR newClearTextPass);
  275. [propput, id(DISPID_PROP_PORTABLEPASSWORD),
  276. helpstring("propterty PortablePassword")]
  277. HRESULT PortablePassword([in] BSTR newPortablePassVal);
  278. [propget, id(DISPID_PROP_PORTABLEPASSWORD),
  279. helpstring("propterty PortablePassword")]
  280. HRESULT PortablePassword(
  281. [out, retval] BSTR* pPortablePass);
  282. [propput, id(DISPID_PROP_PORTABLESALT),
  283. helpstring("propterty PortableSalt")]
  284. HRESULT PortableSalt([in] BSTR newPortableSalt);
  285. [propget, id(DISPID_PROP_PORTABLESALT),
  286. helpstring("propterty PortableSalt")]
  287. HRESULT PortableSalt(
  288. [out, retval] BSTR* pPortableSalt);
  289. [propput, id(DISPID_PROP_BINARYPASSWORD),
  290. helpstring("propterty BinaryPassword")]
  291. HRESULT BinaryPassword([in] BSTR newPassword);
  292. [propget, id(DISPID_PROP_BINARYPASSWORD),
  293. helpstring("propterty BinaryPassword")]
  294. HRESULT BinaryPassword([out, retval]
  295. BSTR* pBinaryPassword);
  296. [propput, id(DISPID_PROP_BINARYSALT),
  297. helpstring("property BinarySalt")]
  298. HRESULT BinarySalt([in] BSTR newSalt);
  299. [propget, id(DISPID_PROP_BINARYSALT),
  300. helpstring("property BinarySalt")]
  301. HRESULT BinarySalt([out, retval] BSTR* pSalt);
  302. [ id(DISPID_METHOD_RESETPASSWORD),
  303. helpstring("Method ResetPassword")]
  304. HRESULT ResetPassword();
  305. };
  306. // ----------------------------------------------------------------------------
  307. // NonScriptable V2 interface (for settings that can only be accessed through
  308. // the vtable interface).
  309. //
  310. [
  311. object,
  312. uuid(2f079c4c-87b2-4afd-97ab-20cdb43038ae),
  313. helpstring("IMsRdpClientNonScriptable Interface"),
  314. pointer_default(unique)
  315. ]
  316. interface IMsRdpClientNonScriptable : IMsTscNonScriptable
  317. {
  318. [id(DISPID_METHOD_NOTIFY_REDIRECT_DEVICE_CHANGE),
  319. helpstring("Method NotifyRedirectDeviceChange(wParam, lParam)")]
  320. HRESULT NotifyRedirectDeviceChange(
  321. [in] WPARAM wParam, [in] LPARAM lParam);
  322. [id(DISPID_METHOD_SENDKEYS),
  323. helpstring("Method SendKeys")]
  324. HRESULT SendKeys(
  325. [in] LONG numKeys,
  326. [in] VARIANT_BOOL* pbArrayKeyUp,
  327. [in] LONG* plKeyData);
  328. };
  329. // ----------------------------------------------------------------------------
  330. // AdvancedSettings interface.
  331. // Can't change this shipped as part of TSAC.
  332. //
  333. [
  334. object,
  335. uuid(809945cc-4b3b-4a92-a6b0-dbf9b5f2ef2d),
  336. dual,
  337. helpstring("IMsTscAdvancedSettings Interface"),
  338. pointer_default(unique)
  339. ]
  340. interface IMsTscAdvancedSettings : IDispatch
  341. {
  342. //
  343. // Advanced properties
  344. //
  345. [propput, id(DISPID_PROP_ADV_COMPRESS),
  346. helpstring("property Compress")]
  347. HRESULT Compress([in] LONG compress);
  348. [propget, id(DISPID_PROP_ADV_COMPRESS),
  349. helpstring("property Compress")]
  350. HRESULT Compress([out, retval] LONG* pcompress);
  351. [propput, id(DISPID_PROP_ADV_BITMAPPERISTENCE),
  352. helpstring("property BitmapPeristence")]
  353. HRESULT BitmapPeristence([in] LONG bitmapPeristence);
  354. [propget, id(DISPID_PROP_ADV_BITMAPPERISTENCE),
  355. helpstring("property BitmapPeristence")]
  356. HRESULT BitmapPeristence(
  357. [out, retval] LONG* pbitmapPeristence);
  358. [propput, id(DISPID_PROP_ADV_ALLOWBACKGROUNDINPUT),
  359. helpstring("property allowBackgroundInput")]
  360. HRESULT allowBackgroundInput(
  361. [in] LONG allowBackgroundInput);
  362. [propget, id(DISPID_PROP_ADV_ALLOWBACKGROUNDINPUT),
  363. helpstring("property allowBackgroundInput")]
  364. HRESULT allowBackgroundInput(
  365. [out, retval] LONG* pallowBackgroundInput);
  366. [propput, id(DISPID_PROP_ADV_KEYBOARDLAYOUTSTR),
  367. helpstring("property KeyBoardLayoutStr")]
  368. HRESULT KeyBoardLayoutStr([in] BSTR KeyBoardLayoutStr);
  369. [propput, id(DISPID_PROP_ADV_PLUGINDLLS),
  370. helpstring("property PluginDlls")]
  371. HRESULT PluginDlls([in] BSTR PluginDlls);
  372. [propput, id(DISPID_PROP_ADV_ICONFILE),
  373. helpstring("property IconFile")]
  374. HRESULT IconFile([in] BSTR IconFile);
  375. [propput, id(DISPID_PROP_ADV_ICONINDEX),
  376. helpstring("property IconIndex")]
  377. HRESULT IconIndex([in] LONG IconIndex);
  378. [propput, id(DISPID_PROP_ADV_CONTAINER_FULLSCREEN),
  379. helpstring("property ContainerHandledFullScreen")]
  380. HRESULT ContainerHandledFullScreen(
  381. [in] BOOL ContainerHandledFullScreen);
  382. [propget, id(DISPID_PROP_ADV_CONTAINER_FULLSCREEN),
  383. helpstring("property ContainerHandledFullScreen")]
  384. HRESULT ContainerHandledFullScreen(
  385. [out, retval] BOOL* pContainerHandledFullScreen);
  386. [propput, id(DISPID_PROP_ADV_DISABLE_RDPDR),
  387. helpstring("property DisableRdpdr")]
  388. HRESULT DisableRdpdr([in] BOOL DisableRdpdr);
  389. [propget, id(DISPID_PROP_ADV_DISABLE_RDPDR),
  390. helpstring("property DisableRdpdr")]
  391. HRESULT DisableRdpdr(
  392. [out, retval] BOOL* pDisableRdpdr);
  393. };
  394. // ----------------------------------------------------------------------------
  395. // Advanced settings interface v2.
  396. // Extends IMsTscAdvancedSettings - LOCKED as of WindowsXP
  397. //
  398. [
  399. object,
  400. uuid(3c65b4ab-12b3-465b-acd4-b8dad3bff9e2),
  401. dual,
  402. helpstring("IMsRdpClientAdvancedSettings Interface"),
  403. pointer_default(unique)
  404. ]
  405. interface IMsRdpClientAdvancedSettings : IMsTscAdvancedSettings
  406. {
  407. //
  408. // Advanced properties
  409. //
  410. [propput, id(DISPID_PROP_ADV_SMOOTHSCROLL), helpstring("property SmoothScroll")]
  411. HRESULT SmoothScroll([in] LONG smoothScroll);
  412. [propget, id(DISPID_PROP_ADV_SMOOTHSCROLL), helpstring("property SmoothScroll")]
  413. HRESULT SmoothScroll([out, retval] LONG* psmoothScroll);
  414. [propput, id(DISPID_PROP_ADV_ACCELERATORPASSTHROUGH), helpstring("property AcceleratorPassthrough")]
  415. HRESULT AcceleratorPassthrough([in] LONG acceleratorPassthrough);
  416. [propget, id(DISPID_PROP_ADV_ACCELERATORPASSTHROUGH), helpstring("property AcceleratorPassthrough")]
  417. HRESULT AcceleratorPassthrough([out, retval] LONG* pacceleratorPassthrough);
  418. [propput, id(DISPID_PROP_ADV_SHADOWBITMAP), helpstring("property ShadowBitmap")]
  419. HRESULT ShadowBitmap([in] LONG shadowBitmap);
  420. [propget, id(DISPID_PROP_ADV_SHADOWBITMAP), helpstring("property ShadowBitmap")]
  421. HRESULT ShadowBitmap([out, retval] LONG* pshadowBitmap);
  422. [propput, id(DISPID_PROP_ADV_TRANSPORTTYPE), helpstring("property TransportType")]
  423. HRESULT TransportType([in] LONG transportType);
  424. [propget, id(DISPID_PROP_ADV_TRANSPORTTYPE), helpstring("property TransportType")]
  425. HRESULT TransportType([out, retval] LONG* ptransportType);
  426. [propput, id(DISPID_PROP_ADV_SASSEQUENCE), helpstring("property SasSequence")]
  427. HRESULT SasSequence([in] LONG sasSequence);
  428. [propget, id(DISPID_PROP_ADV_SASSEQUENCE), helpstring("property SasSequence")]
  429. HRESULT SasSequence([out, retval] LONG* psasSequence);
  430. [propput, id(DISPID_PROP_ADV_ENCRYPTIONENABLED), helpstring("property EncryptionEnabled")]
  431. HRESULT EncryptionEnabled([in] LONG encryptionEnabled);
  432. [propget, id(DISPID_PROP_ADV_ENCRYPTIONENABLED), helpstring("property EncryptionEnabled")]
  433. HRESULT EncryptionEnabled([out, retval] LONG* pencryptionEnabled);
  434. [propput, id(DISPID_PROP_ADV_DEDICATEDTERMINAL), helpstring("property DedicatedTerminal")]
  435. HRESULT DedicatedTerminal([in] LONG dedicatedTerminal);
  436. [propget, id(DISPID_PROP_ADV_DEDICATEDTERMINAL), helpstring("property DedicatedTerminal")]
  437. HRESULT DedicatedTerminal([out, retval] LONG* pdedicatedTerminal);
  438. [propput, id(DISPID_PROP_ADV_RDPPORT), helpstring("property RDPPort")]
  439. HRESULT RDPPort([in] LONG rdpPort);
  440. [propget, id(DISPID_PROP_ADV_RDPPORT), helpstring("property RDPPort")]
  441. HRESULT RDPPort([out, retval] LONG* prdpPort);
  442. [propput, id(DISPID_PROP_ADV_ENABLEMOUSE), helpstring("property EnableMouse")]
  443. HRESULT EnableMouse([in] LONG enableMouse);
  444. [propget, id(DISPID_PROP_ADV_ENABLEMOUSE), helpstring("property EnableMouse")]
  445. HRESULT EnableMouse([out, retval] LONG* penableMouse);
  446. [propput, id(DISPID_PROP_ADV_DISABLECTRLALTDEL), helpstring("property DisableCtrlAltDel")]
  447. HRESULT DisableCtrlAltDel([in] LONG disableCtrlAltDel);
  448. [propget, id(DISPID_PROP_ADV_DISABLECTRLALTDEL), helpstring("property DisableCtrlAltDel")]
  449. HRESULT DisableCtrlAltDel([out, retval] LONG* pdisableCtrlAltDel);
  450. [propput, id(DISPID_PROP_ADV_ENABLEWINDOWSKEY), helpstring("property EnableWindowsKey")]
  451. HRESULT EnableWindowsKey([in] LONG enableWindowsKey);
  452. [propget, id(DISPID_PROP_ADV_ENABLEWINDOWSKEY), helpstring("property EnableWindowsKey")]
  453. HRESULT EnableWindowsKey([out, retval] LONG* penableWindowsKey);
  454. [propput, id(DISPID_PROP_ADV_DOUBLECLICKDETECT), helpstring("property DoubleClickDetect")]
  455. HRESULT DoubleClickDetect([in] LONG doubleClickDetect);
  456. [propget, id(DISPID_PROP_ADV_DOUBLECLICKDETECT), helpstring("property DoubleClickDetect")]
  457. HRESULT DoubleClickDetect([out, retval] LONG* pdoubleClickDetect);
  458. [propput, id(DISPID_PROP_ADV_MAXIMIZESHELL), helpstring("property MaximizeShell")]
  459. HRESULT MaximizeShell([in] LONG maximizeShell);
  460. [propget, id(DISPID_PROP_ADV_MAXIMIZESHELL), helpstring("property MaximizeShell")]
  461. HRESULT MaximizeShell([out, retval] LONG* pmaximizeShell);
  462. [propput, id(DISPID_PROP_ADV_HOTKEYFULLSCREEN), helpstring("property HotKeyFullScreen")]
  463. HRESULT HotKeyFullScreen([in] LONG hotKeyFullScreen);
  464. [propget, id(DISPID_PROP_ADV_HOTKEYFULLSCREEN), helpstring("property HotKeyFullScreen")]
  465. HRESULT HotKeyFullScreen([out, retval] LONG* photKeyFullScreen);
  466. [propput, id(DISPID_PROP_ADV_HOTKEYCTRLESC), helpstring("property HotKeyCtrlEsc")]
  467. HRESULT HotKeyCtrlEsc([in] LONG hotKeyCtrlEsc);
  468. [propget, id(DISPID_PROP_ADV_HOTKEYCTRLESC), helpstring("property HotKeyCtrlEsc")]
  469. HRESULT HotKeyCtrlEsc([out, retval] LONG* photKeyCtrlEsc);
  470. [propput, id(DISPID_PROP_ADV_HOTKEYALTESC), helpstring("property HotKeyAltEsc")]
  471. HRESULT HotKeyAltEsc([in] LONG hotKeyAltEsc);
  472. [propget, id(DISPID_PROP_ADV_HOTKEYALTESC), helpstring("property HotKeyAltEsc")]
  473. HRESULT HotKeyAltEsc([out, retval] LONG* photKeyAltEsc);
  474. [propput, id(DISPID_PROP_ADV_HOTKEYALTTAB), helpstring("property HotKeyAltTab")]
  475. HRESULT HotKeyAltTab([in] LONG hotKeyAltTab);
  476. [propget, id(DISPID_PROP_ADV_HOTKEYALTTAB), helpstring("property HotKeyAltTab")]
  477. HRESULT HotKeyAltTab([out, retval] LONG* photKeyAltTab);
  478. [propput, id(DISPID_PROP_ADV_HOTKEYALTSHIFTTAB), helpstring("property HotKeyAltShiftTab")]
  479. HRESULT HotKeyAltShiftTab([in] LONG hotKeyAltShiftTab);
  480. [propget, id(DISPID_PROP_ADV_HOTKEYALTSHIFTTAB), helpstring("property HotKeyAltShiftTab")]
  481. HRESULT HotKeyAltShiftTab([out, retval] LONG* photKeyAltShiftTab);
  482. [propput, id(DISPID_PROP_ADV_HOTKEYALTSPACE), helpstring("property HotKeyAltSpace")]
  483. HRESULT HotKeyAltSpace([in] LONG hotKeyAltSpace);
  484. [propget, id(DISPID_PROP_ADV_HOTKEYALTSPACE), helpstring("property HotKeyAltSpace")]
  485. HRESULT HotKeyAltSpace([out, retval] LONG* photKeyAltSpace);
  486. [propput, id(DISPID_PROP_ADV_HOTKEYCTRLALTDEL), helpstring("property HotKeyCtrlAltDel")]
  487. HRESULT HotKeyCtrlAltDel([in] LONG hotKeyCtrlAltDel);
  488. [propget, id(DISPID_PROP_ADV_HOTKEYCTRLALTDEL), helpstring("property HotKeyCtrlAltDel")]
  489. HRESULT HotKeyCtrlAltDel([out, retval] LONG* photKeyCtrlAltDel);
  490. [propput, id(DISPID_PROP_ADV_ORDERDRAWTHRESHOLD), helpstring("property orderDrawThreshold")]
  491. HRESULT orderDrawThreshold([in] LONG orderDrawThreshold);
  492. [propget, id(DISPID_PROP_ADV_ORDERDRAWTHRESHOLD), helpstring("property orderDrawThreshold")]
  493. HRESULT orderDrawThreshold([out, retval] LONG* porderDrawThreshold);
  494. [propput, id(DISPID_PROP_ADV_BITMAPCACHESIZE), helpstring("property BitmapCacheSize")]
  495. HRESULT BitmapCacheSize([in] LONG bitmapCacheSize);
  496. [propget, id(DISPID_PROP_ADV_BITMAPCACHESIZE), helpstring("property BitmapCacheSize")]
  497. HRESULT BitmapCacheSize([out, retval] LONG* pbitmapCacheSize);
  498. [propput, id(DISPID_PROP_ADV_BITMAPVIRTUALCACHESIZE), helpstring("property BitmapVirtualCacheSize")]
  499. HRESULT BitmapVirtualCacheSize([in] LONG bitmapVirtualCacheSize);
  500. [propget, id(DISPID_PROP_ADV_BITMAPVIRTUALCACHESIZE), helpstring("property BitmapVirtualCacheSize")]
  501. HRESULT BitmapVirtualCacheSize([out, retval] LONG* pbitmapVirtualCacheSize);
  502. [propput, id(DISPID_PROP_ADV_SCALEBITMAPCACHESBYBPP), helpstring("property ScaleBitmapCachesByBPP")]
  503. HRESULT ScaleBitmapCachesByBPP([in] LONG bScale);
  504. [propget, id(DISPID_PROP_ADV_SCALEBITMAPCACHESBYBPP), helpstring("property ScaleBitmapCachesByBPP")]
  505. HRESULT ScaleBitmapCachesByBPP([out, retval] LONG *pbScale);
  506. [propput, id(DISPID_PROP_ADV_NUMBITMAPCACHES), helpstring("property NumBitmapCaches")]
  507. HRESULT NumBitmapCaches([in] LONG numBitmapCaches);
  508. [propget, id(DISPID_PROP_ADV_NUMBITMAPCACHES), helpstring("property NumBitmapCaches")]
  509. HRESULT NumBitmapCaches([out, retval] LONG* pnumBitmapCaches);
  510. [propput, id(DISPID_PROP_ADV_CACHEPERSISTENCEACTIVE), helpstring("property CachePersistenceActive")]
  511. HRESULT CachePersistenceActive([in] LONG cachePersistenceActive);
  512. [propget, id(DISPID_PROP_ADV_CACHEPERSISTENCEACTIVE), helpstring("property CachePersistenceActive")]
  513. HRESULT CachePersistenceActive([out, retval] LONG* pcachePersistenceActive);
  514. #ifdef ENABLE_PERF_TUNING_OPTIONS
  515. [propput, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION1), helpstring("property BitmapCacheProportion1")]
  516. HRESULT BitmapCacheProportion1([in] LONG bitmapCacheProportion1);
  517. [propget, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION1), helpstring("property BitmapCacheProportion1")]
  518. HRESULT BitmapCacheProportion1([out, retval] LONG* pbitmapCacheProportion1);
  519. [propput, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION2), helpstring("property BitmapCacheProportion2")]
  520. HRESULT BitmapCacheProportion2([in] LONG bitmapCacheProportion2);
  521. [propget, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION2), helpstring("property BitmapCacheProportion2")]
  522. HRESULT BitmapCacheProportion2([out, retval] LONG* pbitmapCacheProportion2);
  523. [propput, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION3), helpstring("property BitmapCacheProportion3")]
  524. HRESULT BitmapCacheProportion3([in] LONG bitmapCacheProportion3);
  525. [propget, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION3), helpstring("property BitmapCacheProportion3")]
  526. HRESULT BitmapCacheProportion3([out, retval] LONG* pbitmapCacheProportion3);
  527. [propput, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION4), helpstring("property BitmapCacheProportion4")]
  528. HRESULT BitmapCacheProportion4([in] LONG bitmapCacheProportion4);
  529. [propget, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION4), helpstring("property BitmapCacheProportion4")]
  530. HRESULT BitmapCacheProportion4([out, retval] LONG* pbitmapCacheProportion4);
  531. [propput, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION5), helpstring("property BitmapCacheProportion5")]
  532. HRESULT BitmapCacheProportion5([in] LONG bitmapCacheProportion5);
  533. [propget, id(DISPID_PROP_ADV_BITMAPCACHEPROPORTION5), helpstring("property BitmapCacheProportion5")]
  534. HRESULT BitmapCacheProportion5([out, retval] LONG* pbitmapCacheProportion5);
  535. [propput, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES1), helpstring("property BitmapCacheMaxEntries1")]
  536. HRESULT BitmapCacheMaxEntries1([in] LONG bitmapCacheMaxEntries1);
  537. [propget, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES1), helpstring("property BitmapCacheMaxEntries1")]
  538. HRESULT BitmapCacheMaxEntries1([out, retval] LONG* pbitmapCacheMaxEntries1);
  539. [propput, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES2), helpstring("property BitmapCacheMaxEntries2")]
  540. HRESULT BitmapCacheMaxEntries2([in] LONG bitmapCacheMaxEntries2);
  541. [propget, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES2), helpstring("property BitmapCacheMaxEntries2")]
  542. HRESULT BitmapCacheMaxEntries2([out, retval] LONG* pbitmapCacheMaxEntries2);
  543. [propput, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES3), helpstring("property BitmapCacheMaxEntries3")]
  544. HRESULT BitmapCacheMaxEntries3([in] LONG bitmapCacheMaxEntries3);
  545. [propget, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES3), helpstring("property BitmapCacheMaxEntries3")]
  546. HRESULT BitmapCacheMaxEntries3([out, retval] LONG* pbitmapCacheMaxEntries3);
  547. [propput, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES4), helpstring("property BitmapCacheMaxEntries4")]
  548. HRESULT BitmapCacheMaxEntries4([in] LONG bitmapCacheMaxEntries4);
  549. [propget, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES4), helpstring("property BitmapCacheMaxEntries4")]
  550. HRESULT BitmapCacheMaxEntries4([out, retval] LONG* pbitmapCacheMaxEntries4);
  551. [propput, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES5), helpstring("property BitmapCacheMaxEntries5")]
  552. HRESULT BitmapCacheMaxEntries5([in] LONG bitmapCacheMaxEntries5);
  553. [propget, id(DISPID_PROP_ADV_BITMAPCACHEMAXENTRIES5), helpstring("property BitmapCacheMaxEntries5")]
  554. HRESULT BitmapCacheMaxEntries5([out, retval] LONG* pbitmapCacheMaxEntries5);
  555. #endif // ENABLE_PERF_TUNING_OPTIONS
  556. [propput, id(DISPID_PROP_ADV_PERSISTCACHEDIRECTORY),
  557. helpstring("property PersistCacheDirectory")]
  558. HRESULT PersistCacheDirectory([in] BSTR PersistCacheDirectory);
  559. #ifdef ENABLE_PERF_TUNING_OPTIONS
  560. [propput, id(DISPID_PROP_ADV_BSENDBITMAPKEYS1), helpstring("property bSendBitmapKeys1")]
  561. HRESULT bSendBitmapKeys1([in] LONG bSendBitmapKeys1);
  562. [propget, id(DISPID_PROP_ADV_BSENDBITMAPKEYS1), helpstring("property bSendBitmapKeys1")]
  563. HRESULT bSendBitmapKeys1([out, retval] LONG* pbSendBitmapKeys1);
  564. [propput, id(DISPID_PROP_ADV_BSENDBITMAPKEYS2), helpstring("property bSendBitmapKeys2")]
  565. HRESULT bSendBitmapKeys2([in] LONG bSendBitmapKeys2);
  566. [propget, id(DISPID_PROP_ADV_BSENDBITMAPKEYS2), helpstring("property bSendBitmapKeys2")]
  567. HRESULT bSendBitmapKeys2([out, retval] LONG* pbSendBitmapKeys2);
  568. [propput, id(DISPID_PROP_ADV_BSENDBITMAPKEYS3), helpstring("property bSendBitmapKeys3")]
  569. HRESULT bSendBitmapKeys3([in] LONG bSendBitmapKeys3);
  570. [propget, id(DISPID_PROP_ADV_BSENDBITMAPKEYS3), helpstring("property bSendBitmapKeys3")]
  571. HRESULT bSendBitmapKeys3([out, retval] LONG* pbSendBitmapKeys3);
  572. [propput, id(DISPID_PROP_ADV_BSENDBITMAPKEYS4), helpstring("property bSendBitmapKeys4")]
  573. HRESULT bSendBitmapKeys4([in] LONG bSendBitmapKeys4);
  574. [propget, id(DISPID_PROP_ADV_BSENDBITMAPKEYS4), helpstring("property bSendBitmapKeys4")]
  575. HRESULT bSendBitmapKeys4([out, retval] LONG* pbSendBitmapKeys4);
  576. [propput, id(DISPID_PROP_ADV_BSENDBITMAPKEYS5), helpstring("property bSendBitmapKeys5")]
  577. HRESULT bSendBitmapKeys5([in] LONG bSendBitmapKeys5);
  578. [propget, id(DISPID_PROP_ADV_BSENDBITMAPKEYS5), helpstring("property bSendBitmapKeys5")]
  579. HRESULT bSendBitmapKeys5([out, retval] LONG* pbSendBitmapKeys5);
  580. [propput, id(DISPID_PROP_ADV_GLYPHSUPPORTLEVEL), helpstring("property GlyphSupportLevel")]
  581. HRESULT GlyphSupportLevel([in] LONG glyphSupportLevel);
  582. [propget, id(DISPID_PROP_ADV_GLYPHSUPPORTLEVEL), helpstring("property GlyphSupportLevel")]
  583. HRESULT GlyphSupportLevel([out, retval] LONG* pglyphSupportLevel);
  584. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE1), helpstring("property cbGlyphCacheEntrySize1")]
  585. HRESULT cbGlyphCacheEntrySize1([in] LONG cbGlyphCacheEntrySize1);
  586. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE1), helpstring("property cbGlyphCacheEntrySize1")]
  587. HRESULT cbGlyphCacheEntrySize1([out, retval] LONG* pcbGlyphCacheEntrySize1);
  588. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE2), helpstring("property cbGlyphCacheEntrySize2")]
  589. HRESULT cbGlyphCacheEntrySize2([in] LONG cbGlyphCacheEntrySize2);
  590. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE2), helpstring("property cbGlyphCacheEntrySize2")]
  591. HRESULT cbGlyphCacheEntrySize2([out, retval] LONG* pcbGlyphCacheEntrySize2);
  592. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE3), helpstring("property cbGlyphCacheEntrySize3")]
  593. HRESULT cbGlyphCacheEntrySize3([in] LONG cbGlyphCacheEntrySize3);
  594. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE3), helpstring("property cbGlyphCacheEntrySize3")]
  595. HRESULT cbGlyphCacheEntrySize3([out, retval] LONG* pcbGlyphCacheEntrySize3);
  596. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE4), helpstring("property cbGlyphCacheEntrySize4")]
  597. HRESULT cbGlyphCacheEntrySize4([in] LONG cbGlyphCacheEntrySize4);
  598. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE4), helpstring("property cbGlyphCacheEntrySize4")]
  599. HRESULT cbGlyphCacheEntrySize4([out, retval] LONG* pcbGlyphCacheEntrySize4);
  600. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE5), helpstring("property cbGlyphCacheEntrySize5")]
  601. HRESULT cbGlyphCacheEntrySize5([in] LONG cbGlyphCacheEntrySize5);
  602. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE5), helpstring("property cbGlyphCacheEntrySize5")]
  603. HRESULT cbGlyphCacheEntrySize5([out, retval] LONG* pcbGlyphCacheEntrySize5);
  604. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE6), helpstring("property cbGlyphCacheEntrySize6")]
  605. HRESULT cbGlyphCacheEntrySize6([in] LONG cbGlyphCacheEntrySize6);
  606. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE6), helpstring("property cbGlyphCacheEntrySize6")]
  607. HRESULT cbGlyphCacheEntrySize6([out, retval] LONG* pcbGlyphCacheEntrySize6);
  608. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE7), helpstring("property cbGlyphCacheEntrySize7")]
  609. HRESULT cbGlyphCacheEntrySize7([in] LONG cbGlyphCacheEntrySize7);
  610. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE7), helpstring("property cbGlyphCacheEntrySize7")]
  611. HRESULT cbGlyphCacheEntrySize7([out, retval] LONG* pcbGlyphCacheEntrySize7);
  612. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE8), helpstring("property cbGlyphCacheEntrySize8")]
  613. HRESULT cbGlyphCacheEntrySize8([in] LONG cbGlyphCacheEntrySize8);
  614. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE8), helpstring("property cbGlyphCacheEntrySize8")]
  615. HRESULT cbGlyphCacheEntrySize8([out, retval] LONG* pcbGlyphCacheEntrySize8);
  616. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE9), helpstring("property cbGlyphCacheEntrySize9")]
  617. HRESULT cbGlyphCacheEntrySize9([in] LONG cbGlyphCacheEntrySize9);
  618. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE9), helpstring("property cbGlyphCacheEntrySize9")]
  619. HRESULT cbGlyphCacheEntrySize9([out, retval] LONG* pcbGlyphCacheEntrySize9);
  620. [propput, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE10), helpstring("property cbGlyphCacheEntrySize10")]
  621. HRESULT cbGlyphCacheEntrySize10([in] LONG cbGlyphCacheEntrySize10);
  622. [propget, id(DISPID_PROP_ADV_CBGLYPHCACHEENTRYSIZE10), helpstring("property cbGlyphCacheEntrySize10")]
  623. HRESULT cbGlyphCacheEntrySize10([out, retval] LONG* pcbGlyphCacheEntrySize10);
  624. [propput, id(DISPID_PROP_ADV_FRAGCELLSIZE), helpstring("property fragCellSize")]
  625. HRESULT fragCellSize([in] LONG fragCellSize);
  626. [propget, id(DISPID_PROP_ADV_FRAGCELLSIZE), helpstring("property fragCellSize")]
  627. HRESULT fragCellSize([out, retval] LONG* pfragCellSize);
  628. #endif //ENABLE_PERF_TUNING_OPTIONS
  629. [propput, id(DISPID_PROP_ADV_BRUSHSUPPORTLEVEL), helpstring("property brushSupportLevel")]
  630. HRESULT brushSupportLevel([in] LONG brushSupportLevel);
  631. [propget, id(DISPID_PROP_ADV_BRUSHSUPPORTLEVEL), helpstring("property brushSupportLevel")]
  632. HRESULT brushSupportLevel([out, retval] LONG* pbrushSupportLevel);
  633. [propput, id(DISPID_PROP_ADV_MININPUTSENDINTERVAL), helpstring("property minInputSendInterval")]
  634. HRESULT minInputSendInterval([in] LONG minInputSendInterval);
  635. [propget, id(DISPID_PROP_ADV_MININPUTSENDINTERVAL), helpstring("property minInputSendInterval")]
  636. HRESULT minInputSendInterval([out, retval] LONG* pminInputSendInterval);
  637. [propput, id(DISPID_PROP_ADV_INPUTEVENTSATONCE), helpstring("property InputEventsAtOnce")]
  638. HRESULT InputEventsAtOnce([in] LONG inputEventsAtOnce);
  639. [propget, id(DISPID_PROP_ADV_INPUTEVENTSATONCE), helpstring("property InputEventsAtOnce")]
  640. HRESULT InputEventsAtOnce([out, retval] LONG* pinputEventsAtOnce);
  641. [propput, id(DISPID_PROP_ADV_MAXEVENTCOUNT), helpstring("property maxEventCount")]
  642. HRESULT maxEventCount([in] LONG maxEventCount);
  643. [propget, id(DISPID_PROP_ADV_MAXEVENTCOUNT), helpstring("property maxEventCount")]
  644. HRESULT maxEventCount([out, retval] LONG* pmaxEventCount);
  645. [propput, id(DISPID_PROP_ADV_KEEPALIVEINTERVAL), helpstring("property keepAliveInterval")]
  646. HRESULT keepAliveInterval([in] LONG keepAliveInterval);
  647. [propget, id(DISPID_PROP_ADV_KEEPALIVEINTERVAL), helpstring("property keepAliveInterval")]
  648. HRESULT keepAliveInterval([out, retval] LONG* pkeepAliveInterval);
  649. [propput, id(DISPID_PROP_ADV_SHUTDOWNTIMEOUT), helpstring("property shutdownTimeout")]
  650. HRESULT shutdownTimeout([in] LONG shutdownTimeout);
  651. [propget, id(DISPID_PROP_ADV_SHUTDOWNTIMEOUT), helpstring("property shutdownTimeout")]
  652. HRESULT shutdownTimeout([out, retval] LONG* pshutdownTimeout);
  653. [propput, id(DISPID_PROP_ADV_OVERALLCONNECTIONTIMEOUT), helpstring("property overallConnectionTimeout")]
  654. HRESULT overallConnectionTimeout([in] LONG overallConnectionTimeout);
  655. [propget, id(DISPID_PROP_ADV_OVERALLCONNECTIONTIMEOUT), helpstring("property overallConnectionTimeout")]
  656. HRESULT overallConnectionTimeout([out, retval] LONG* poverallConnectionTimeout);
  657. [propput, id(DISPID_PROP_ADV_SINGLECONNECTIONTIMEOUT), helpstring("property singleConnectionTimeout")]
  658. HRESULT singleConnectionTimeout([in] LONG singleConnectionTimeout);
  659. [propget, id(DISPID_PROP_ADV_SINGLECONNECTIONTIMEOUT), helpstring("property singleConnectionTimeout")]
  660. HRESULT singleConnectionTimeout([out, retval] LONG* psingleConnectionTimeout);
  661. [propput, id(DISPID_PROP_ADV_KEYBOARDTYPE), helpstring("property KeyboardType")]
  662. HRESULT KeyboardType([in] LONG keyboardType);
  663. [propget, id(DISPID_PROP_ADV_KEYBOARDTYPE), helpstring("property KeyboardType")]
  664. HRESULT KeyboardType([out, retval] LONG* pkeyboardType);
  665. [propput, id(DISPID_PROP_ADV_KEYBOARDSUBTYPE), helpstring("property KeyboardSubType")]
  666. HRESULT KeyboardSubType([in] LONG keyboardSubType);
  667. [propget, id(DISPID_PROP_ADV_KEYBOARDSUBTYPE), helpstring("property KeyboardSubType")]
  668. HRESULT KeyboardSubType([out, retval] LONG* pkeyboardSubType);
  669. [propput, id(DISPID_PROP_ADV_KEYBOARDFUNCTIONKEY), helpstring("property KeyboardFunctionKey")]
  670. HRESULT KeyboardFunctionKey([in] LONG keyboardFunctionKey);
  671. [propget, id(DISPID_PROP_ADV_KEYBOARDFUNCTIONKEY), helpstring("property KeyboardFunctionKey")]
  672. HRESULT KeyboardFunctionKey([out, retval] LONG* pkeyboardFunctionKey);
  673. [propput, id(DISPID_PROP_ADV_WINCEFIXEDPALETTE), helpstring("property WinceFixedPalette")]
  674. HRESULT WinceFixedPalette([in] LONG winceFixedPalette);
  675. [propget, id(DISPID_PROP_ADV_WINCEFIXEDPALETTE), helpstring("property WinceFixedPalette")]
  676. HRESULT WinceFixedPalette([out, retval] LONG* pwinceFixedPalette);
  677. [propput, id(DISPID_PROP_ADV_CONNECT_TO_SERVER_CONSOLE), helpstring("property ConnectToServerConsole")]
  678. HRESULT ConnectToServerConsole([in] VARIANT_BOOL connectToServerConsole);
  679. [propget, id(DISPID_PROP_ADV_CONNECT_TO_SERVER_CONSOLE), helpstring("property ConnectToServerConsole")]
  680. HRESULT ConnectToServerConsole([out, retval] VARIANT_BOOL* pConnectToConsole);
  681. [propput, id(DISPID_PROP_ADV_BITMAPPERSISTENCE), helpstring("property BitmapPersistence")]
  682. HRESULT BitmapPersistence([in] LONG bitmapPeristence);
  683. [propget, id(DISPID_PROP_ADV_BITMAPPERSISTENCE), helpstring("property BitmapPersistence")]
  684. HRESULT BitmapPersistence([out, retval] LONG* pbitmapPersistence);
  685. [propput, id(DISPID_PROP_ADV_MINUTESTOIDLETIMEOUT), helpstring("property MinutesToIdleTimeout")]
  686. HRESULT MinutesToIdleTimeout([in] LONG minutesToIdleTimeout);
  687. [propget, id(DISPID_PROP_ADV_MINUTESTOIDLETIMEOUT), helpstring("property MinutesToIdleTimeout")]
  688. HRESULT MinutesToIdleTimeout([out, retval] LONG* pminutesToIdleTimeout);
  689. #ifdef SMART_SIZING
  690. [propput, id(DISPID_PROP_ADV_SMART_SIZING),
  691. helpstring("property SmartSizing")]
  692. HRESULT SmartSizing (
  693. [in] VARIANT_BOOL fSmartSizing);
  694. [propget, id(DISPID_PROP_ADV_SMART_SIZING),
  695. helpstring("property SmartSizing")]
  696. HRESULT SmartSizing (
  697. [out,retval] VARIANT_BOOL* pfSmartSizing);
  698. #endif // SMART_SIZING
  699. [propput, id(DISPID_PROP_ADV_RDPDR_LOCALPRINTINGDOCNAME),
  700. helpstring("property RDPDR Local Printing Doc Name")]
  701. HRESULT RdpdrLocalPrintingDocName ([in] BSTR localPrintingDocName);
  702. [propget, id(DISPID_PROP_ADV_RDPDR_LOCALPRINTINGDOCNAME),
  703. helpstring("property Working Directory")]
  704. HRESULT RdpdrLocalPrintingDocName (
  705. [out,retval] BSTR* pLocalPrintingDocName);
  706. [propput, id(DISPID_PROP_ADV_RDPDR_CLIPCLEANTEMPDIR_STRING),
  707. helpstring("property RDPDR clean temp directory string")]
  708. HRESULT RdpdrClipCleanTempDirString ([in] BSTR clipCleanTempDirString);
  709. [propget, id(DISPID_PROP_ADV_RDPDR_CLIPCLEANTEMPDIR_STRING),
  710. helpstring("property RDPDR clean temp directory string")]
  711. HRESULT RdpdrClipCleanTempDirString (
  712. [out,retval] BSTR* clipCleanTempDirString);
  713. [propput, id(DISPID_PROP_ADV_RDPDR_CLIPPASTEINFO_STRING),
  714. helpstring("property RDPDR clip paste string")]
  715. HRESULT RdpdrClipPasteInfoString ([in] BSTR clipPasteInfoString);
  716. [propget, id(DISPID_PROP_ADV_RDPDR_CLIPPASTEINFO_STRING),
  717. helpstring("property RDPDR clip paste string")]
  718. HRESULT RdpdrClipPasteInfoString (
  719. [out,retval] BSTR* clipPasteInfoString);
  720. [propput, id(DISPID_PROP_ADV_CLEARTEXTPASSWORD),
  721. helpstring("property clear text password (write only)")]
  722. HRESULT ClearTextPassword ([in] BSTR clearTextPassword);
  723. [propput, id(DISPID_PROP_ADV_DISPLAYCONNECTIONBAR),
  724. helpstring("property DisplayConnectionBar")]
  725. HRESULT DisplayConnectionBar (
  726. [in] VARIANT_BOOL fDisplayConnectionBar);
  727. [propget, id(DISPID_PROP_ADV_DISPLAYCONNECTIONBAR),
  728. helpstring("property DisplayConnectionBar")]
  729. HRESULT DisplayConnectionBar (
  730. [out,retval] VARIANT_BOOL* pDisplayConnectionBar);
  731. [propput, id(DISPID_PROP_ADV_PINCONNECTIONBAR),
  732. helpstring("property PinConnectionBar")]
  733. HRESULT PinConnectionBar (
  734. [in] VARIANT_BOOL fPinConnectionBar);
  735. [propget, id(DISPID_PROP_ADV_PINCONNECTIONBAR),
  736. helpstring("property PinConnectionBar")]
  737. HRESULT PinConnectionBar (
  738. [out,retval] VARIANT_BOOL* pPinConnectionBar);
  739. [propput, id(DISPID_PROP_ADV_GRABFOCUSONCONNECT),
  740. helpstring("property GrabFocusOnConnect")]
  741. HRESULT GrabFocusOnConnect (
  742. [in] VARIANT_BOOL fGrabFocusOnConnect);
  743. [propget, id(DISPID_PROP_ADV_GRABFOCUSONCONNECT),
  744. helpstring("property GrabFocusOnConnect")]
  745. HRESULT GrabFocusOnConnect (
  746. [out,retval] VARIANT_BOOL* pfGrabFocusOnConnect);
  747. [propput, id(DISPID_PROP_ADV_LOADBALANCE_INFO),
  748. helpstring("property LoadBalanceInfo")]
  749. HRESULT LoadBalanceInfo([in] BSTR newLBInfo);
  750. [propget, id(DISPID_PROP_ADV_LOADBALANCE_INFO),
  751. helpstring("property LoadBalanceInfo")]
  752. HRESULT LoadBalanceInfo([out, retval] BSTR* pLBInfo);
  753. [propput, id(DISPID_PROP_ADV_REDIRECT_DRIVES), helpstring("property RedirectDrives")]
  754. HRESULT RedirectDrives([in] VARIANT_BOOL redirectDrives);
  755. [propget, id(DISPID_PROP_ADV_REDIRECT_DRIVES), helpstring("property RedirectDrives")]
  756. HRESULT RedirectDrives([out, retval] VARIANT_BOOL* pRedirectDrives);
  757. [propput, id(DISPID_PROP_ADV_REDIRECT_PRINTERS), helpstring("property RedirectPrinters")]
  758. HRESULT RedirectPrinters([in] VARIANT_BOOL redirectPrinters);
  759. [propget, id(DISPID_PROP_ADV_REDIRECT_PRINTERS), helpstring("property RedirectPrinters")]
  760. HRESULT RedirectPrinters([out, retval] VARIANT_BOOL* pRedirectPrinters);
  761. [propput, id(DISPID_PROP_ADV_REDIRECT_PORTS), helpstring("property RedirectPorts")]
  762. HRESULT RedirectPorts([in] VARIANT_BOOL redirectPorts);
  763. [propget, id(DISPID_PROP_ADV_REDIRECT_PORTS), helpstring("property RedirectPorts")]
  764. HRESULT RedirectPorts([out, retval] VARIANT_BOOL* pRedirectPorts);
  765. [propput, id(DISPID_PROP_ADV_REDIRECT_SMARTCARDS), helpstring("property RedirectSmartCards")]
  766. HRESULT RedirectSmartCards([in] VARIANT_BOOL redirectSmartCards);
  767. [propget, id(DISPID_PROP_ADV_REDIRECT_SMARTCARDS), helpstring("property RedirectSmartCards")]
  768. HRESULT RedirectSmartCards([out, retval] VARIANT_BOOL* pRedirectSmartCards);
  769. [propput, id(DISPID_PROP_ADV_BITMAPVIRTUALCACHE16BPPSIZE),
  770. helpstring("property BitmapVirtualCache16BppSize")]
  771. HRESULT BitmapVirtualCache16BppSize(
  772. [in] LONG bitmapVirtualCache16BppSize);
  773. [propget, id(DISPID_PROP_ADV_BITMAPVIRTUALCACHE16BPPSIZE),
  774. helpstring("property BitmapVirtualCache16BppSize")]
  775. HRESULT BitmapVirtualCache16BppSize(
  776. [out, retval] LONG* pBitmapVirtualCache16BppSize);
  777. [propput, id(DISPID_PROP_ADV_BITMAPVIRTUALCACHE24BPPSIZE),
  778. helpstring("property BitmapVirtualCache24BppSize")]
  779. HRESULT BitmapVirtualCache24BppSize(
  780. [in] LONG bitmapVirtualCache24BppSize);
  781. [propget, id(DISPID_PROP_ADV_BITMAPVIRTUALCACHE24BPPSIZE),
  782. helpstring("property BitmapVirtualCache24BppSize")]
  783. HRESULT BitmapVirtualCache24BppSize(
  784. [out, retval] LONG* pBitmapVirtualCache24BppSize);
  785. #ifdef PROXY_SERVER
  786. [propput, id(DISPID_PROP_ADV_PROXYSERVER), helpstring("property ProxyServer")]
  787. HRESULT ProxyServer ([in] BSTR newVal);
  788. [propget, id(DISPID_PROP_ADV_PROXYSERVER), helpstring("property ProxyServer")]
  789. HRESULT ProxyServer ([out,retval] BSTR* pProxyServer);
  790. [propput, id(DISPID_PROP_ADV_PROXYUSEHTTPS), helpstring("property ProxyUseHttps")]
  791. HRESULT ProxyUseHttps ([in] BOOL newVal);
  792. [propget, id(DISPID_PROP_ADV_PROXYUSEHTTPS), helpstring("property ProxyUseHttps")]
  793. HRESULT ProxyUseHttps ([out,retval] BOOL* pUseHttps);
  794. [propput, id(DISPID_PROP_ADV_PROXYURL), helpstring("property ProxyUrl")]
  795. HRESULT ProxyUrl ([in] BSTR newVal);
  796. [propget, id(DISPID_PROP_ADV_PROXYURL), helpstring("property ProxyUrl")]
  797. HRESULT ProxyUrl ([out,retval] BSTR* pProxyUrl);
  798. #endif //PROXY_SERVER
  799. //
  800. // Performance disabled feature list
  801. // enables or disables certain shell settings.
  802. // The flags are defined in tsperf.h
  803. //
  804. [propput, id(DISIPD_PROP_ADV_PERFORMANCEFLAGS),
  805. helpstring("property PerformanceFlags")]
  806. HRESULT PerformanceFlags(
  807. [in] LONG DisableList);
  808. [propget, id(DISIPD_PROP_ADV_PERFORMANCEFLAGS),
  809. helpstring("property PerformanceFlags")]
  810. HRESULT PerformanceFlags(
  811. [out,retval] LONG *pDisableList);
  812. [propput, id(DISPID_PROP_ADV_CONNECTIONSOCKET),
  813. helpstring("property ConnectWithEndpoint")]
  814. HRESULT ConnectWithEndpoint(
  815. [in] VARIANT* ConnectEndpoint );
  816. [propput, id(DISPID_PROP_ADV_NOTIFYTSPUBLICKEY),
  817. helpstring("property NotifyTSPublicKey")]
  818. HRESULT NotifyTSPublicKey(
  819. [in] VARIANT_BOOL fNotify );
  820. [propget, id(DISPID_PROP_ADV_NOTIFYTSPUBLICKEY),
  821. helpstring("property NotifyTSPublicKey")]
  822. HRESULT NotifyTSPublicKey(
  823. [out, retval] VARIANT_BOOL* pfNotify );
  824. };
  825. // ----------------------------------------------------------------------------
  826. // Advanced settings interface v3.
  827. // Extends IMsRdpClientAdvancedSettings - LOCKED down for XPSP1
  828. //
  829. [
  830. object,
  831. uuid(9ac42117-2b76-4320-aa44-0e616ab8437b),
  832. dual,
  833. helpstring("IMsRdpClientAdvancedSettings2 Interface"),
  834. pointer_default(unique)
  835. ]
  836. interface IMsRdpClientAdvancedSettings2 : IMsRdpClientAdvancedSettings
  837. {
  838. //
  839. // Autoreconnection properties
  840. //
  841. // Can auto reconnect? Read only property that returns
  842. // TRUE if autoreconnection information is available for this
  843. // connection
  844. [propget, id(DISPID_PROP_ADV_CANAUTORECONNECT),
  845. helpstring("property CanAutoReconnect")]
  846. HRESULT CanAutoReconnect(
  847. [out, retval] VARIANT_BOOL* pfCanAutoReconnect );
  848. [propput, id(DISPID_PROP_ADV_ENABLEAUTORECONNECT),
  849. helpstring("property EnableAutoReconnect")]
  850. HRESULT EnableAutoReconnect(
  851. [in] VARIANT_BOOL fEnableAutoReconnect );
  852. [propget, id(DISPID_PROP_ADV_ENABLEAUTORECONNECT),
  853. helpstring("property EnableAutoReconnect")]
  854. HRESULT EnableAutoReconnect(
  855. [out, retval] VARIANT_BOOL* pfEnableAutoReconnect );
  856. [propput, id(DISPID_PROP_ADV_MAXRECONNECTATTEMPTS),
  857. helpstring("MaxReconnectAttempts sets number of times to try during autoreconnection")]
  858. HRESULT MaxReconnectAttempts(
  859. [in] LONG MaxReconnectAttempts );
  860. [propget, id(DISPID_PROP_ADV_MAXRECONNECTATTEMPTS),
  861. helpstring("MaxReconnectAttempts sets number of times to try during autoreconnection")]
  862. HRESULT MaxReconnectAttempts(
  863. [out, retval] LONG* pMaxReconnectAttempts );
  864. };
  865. // ----------------------------------------------------------------------------
  866. // Secured settings. Shipped as part of TSAC.
  867. //
  868. [
  869. object,
  870. uuid(c9d65442-a0f9-45b2-8f73-d61d2db8cbb6),
  871. dual,
  872. helpstring("IMsTscSecuredSettings Interface"),
  873. pointer_default(unique)
  874. ]
  875. interface IMsTscSecuredSettings : IDispatch
  876. {
  877. [propput, id(DISPID_PROP_SECURED_STARTPROGRAM),
  878. helpstring("property StartProgram")]
  879. HRESULT StartProgram ([in] BSTR newVal);
  880. [propget, id(DISPID_PROP_SECURED_STARTPROGRAM),
  881. helpstring("property StartProgram")]
  882. HRESULT StartProgram([out,retval] BSTR* pStartProgram);
  883. [propput, id(DISPID_PROP_SECURED_WORKDIR),
  884. helpstring("property Working Directory")]
  885. HRESULT WorkDir ([in] BSTR newVal);
  886. [propget, id(DISPID_PROP_SECURED_WORKDIR),
  887. helpstring("property Working Directory")]
  888. HRESULT WorkDir ([out,retval] BSTR* pWorkDir);
  889. [propput, id(DISPID_PROP_SECURED_FULLSCREEN),
  890. helpstring("propery full screen mode")]
  891. HRESULT FullScreen([in] BOOL fFullScreen);
  892. [propget, id(DISPID_PROP_SECURED_FULLSCREEN),
  893. helpstring("propery full screen mode")]
  894. HRESULT FullScreen([out,retval] BOOL* pfFullScreen);
  895. };
  896. // ----------------------------------------------------------------------------
  897. // Secured settings (V2 interface).
  898. //
  899. [
  900. object,
  901. uuid(605befcf-39c1-45cc-a811-068fb7be346d),
  902. dual,
  903. helpstring("IMsRdpClientSecuredSettings Interface"),
  904. pointer_default(unique)
  905. ]
  906. interface IMsRdpClientSecuredSettings : IMsTscSecuredSettings
  907. {
  908. [propput, id(DISPID_PROP_SECURED_KEYBOARD_HOOKING_MODE), helpstring("property KeyboardHookMode")]
  909. HRESULT KeyboardHookMode([in] LONG keyboardHookMode);
  910. [propget, id(DISPID_PROP_SECURED_KEYBOARD_HOOKING_MODE), helpstring("property KeyboardHookMode")]
  911. HRESULT KeyboardHookMode([out, retval] LONG* pkeyboardHookMode);
  912. [propput, id(DISPID_PROP_SECURED_AUDIO_REDIRECTION_MODE), helpstring("property AudioRedirectionMode")]
  913. HRESULT AudioRedirectionMode([in] LONG audioRedirectionMode);
  914. [propget, id(DISPID_PROP_SECURED_AUDIO_REDIRECTION_MODE), helpstring("property AudioRedirectionMode")]
  915. HRESULT AudioRedirectionMode([out, retval] LONG* pAudioRedirectionMode);
  916. };
  917. // ----------------------------------------------------------------------------
  918. // Debug settings. Shipped as part of TSAC.
  919. //
  920. [
  921. object,
  922. uuid(209d0eb9-6254-47b1-9033-a98dae55bb27),
  923. hidden,
  924. dual,
  925. helpstring("IMsTscDebug Interface"),
  926. pointer_default(unique)
  927. ]
  928. interface IMsTscDebug : IDispatch
  929. {
  930. //
  931. // Properties
  932. //
  933. [propput, id(DISPID_PROP_DBG_HATCH_BMP_PDU),
  934. helpstring("property HatchBitmapPDU")]
  935. HRESULT HatchBitmapPDU ([in] BOOL hatchBitmapPDU);
  936. [propget, id(DISPID_PROP_DBG_HATCH_BMP_PDU),
  937. helpstring("property HatchBitmapPDU")]
  938. HRESULT HatchBitmapPDU (
  939. [out,retval] BOOL* phatchBitmapPDU);
  940. [propput, id(DISPID_PROP_DBG_HATCH_SSB_ORDER),
  941. helpstring("property HatchSSBOrder")]
  942. HRESULT HatchSSBOrder (
  943. [in] BOOL hatchSSBOrder);
  944. [propget, id(DISPID_PROP_DBG_HATCH_SSB_ORDER),
  945. helpstring("property HatchSSBOrder")]
  946. HRESULT HatchSSBOrder (
  947. [out,retval] BOOL* phatchSSBOrder);
  948. [propput, id(DISPID_PROP_DBG_HATCH_MEMBLT_ORDER),
  949. helpstring("property HatchMembltOrder")]
  950. HRESULT HatchMembltOrder (
  951. [in] BOOL hatchMembltOrder);
  952. [propget, id(DISPID_PROP_DBG_HATCH_MEMBLT_ORDER),
  953. helpstring("property HatchMembltOrder")]
  954. HRESULT HatchMembltOrder (
  955. [out,retval] BOOL* phatchMembltOrder);
  956. [propput, id(DISPID_PROP_DBG_HATCH_INDEX_PDU),
  957. helpstring("property HatchIndexPDU")]
  958. HRESULT HatchIndexPDU (
  959. [in] BOOL hatchIndexPDU);
  960. [propget, id(DISPID_PROP_DBG_HATCH_INDEX_PDU),
  961. helpstring("property HatchIndexPDU")]
  962. HRESULT HatchIndexPDU (
  963. [out,retval] BOOL* phatchIndexPDU);
  964. [propput, id(DISPID_PROP_DBG_LABEL_MEMBLT),
  965. helpstring("property LabelMemblt")]
  966. HRESULT LabelMemblt (
  967. [in] BOOL labelMemblt);
  968. [propget, id(DISPID_PROP_DBG_LABEL_MEMBLT),
  969. helpstring("property LabelMemblt")]
  970. HRESULT LabelMemblt (
  971. [out,retval] BOOL* plabelMemblt);
  972. [propput, id(DISPID_PROP_DBG_BMP_CACHE_MON),
  973. helpstring("property BitmapCacheMonitor")]
  974. HRESULT BitmapCacheMonitor (
  975. [in] BOOL bitmapCacheMonitor);
  976. [propget, id(DISPID_PROP_DBG_BMP_CACHE_MON),
  977. helpstring("property BitmapCacheMonitor")]
  978. HRESULT BitmapCacheMonitor (
  979. [out,retval] BOOL* pbitmapCacheMonitor);
  980. [propput, id(DISPID_PROP_DBG_MALLOC_FAILURES),
  981. helpstring("property MallocFailuresPercent")]
  982. HRESULT MallocFailuresPercent (
  983. [in] LONG mallocFailures);
  984. [propget, id(DISPID_PROP_DBG_MALLOC_FAILURES),
  985. helpstring("property MallocFailuresPercent")]
  986. HRESULT MallocFailuresPercent (
  987. [out,retval] LONG* pmallocFailuresPercent);
  988. [propput, id(DISPID_PROP_DBG_MALLOC_HUGE_FAILURES),
  989. helpstring("property MallocHugeFailuresPercent")]
  990. HRESULT MallocHugeFailuresPercent (
  991. [in] LONG mallocHugeFailures);
  992. [propget, id(DISPID_PROP_DBG_MALLOC_HUGE_FAILURES),
  993. helpstring("property MallocHugeFailuresPercent")]
  994. HRESULT MallocHugeFailuresPercent (
  995. [out,retval] LONG* pmallocHugeFailuresPercent);
  996. [propput, id(DISPID_PROP_DBG_NET_THRUPUT),
  997. helpstring("property NetThroughput")]
  998. HRESULT NetThroughput (
  999. [in] LONG netThroughput);
  1000. [propget, id(DISPID_PROP_DBG_NET_THRUPUT),
  1001. helpstring("property NetThroughput")]
  1002. HRESULT NetThroughput (
  1003. [out,retval] LONG* netThroughput);
  1004. [propput, id(DISPID_PROP_DBG_CLX_CMDLINE),
  1005. helpstring("property CLXCmdLine")]
  1006. HRESULT CLXCmdLine ([in] BSTR CLXCmdLine);
  1007. [propget, id(DISPID_PROP_DBG_CLX_CMDLINE),
  1008. helpstring("property CLXCmdLine")]
  1009. HRESULT CLXCmdLine ([out,retval] BSTR* pCLXCmdLine);
  1010. [propput, id(DISPID_PROP_DBG_CLX_CLXDLL),
  1011. helpstring("property CLXDll")]
  1012. HRESULT CLXDll ([in] BSTR CLXDll);
  1013. [propget, id(DISPID_PROP_DBG_CLX_CLXDLL),
  1014. helpstring("property CLXDll")]
  1015. HRESULT CLXDll ([out,retval] BSTR* pCLXDll);
  1016. };
  1017. // ----------------------------------------------------------------------------
  1018. // Advanced settings interface v3.
  1019. // Extends IMsRdpClientAdvancedSettings - Make updates here.
  1020. //
  1021. [
  1022. object,
  1023. uuid(19cd856b-c542-4c53-acee-f127e3be1a59),
  1024. dual,
  1025. helpstring("IMsRdpClientAdvancedSettings3 Interface"),
  1026. pointer_default(unique)
  1027. ]
  1028. interface IMsRdpClientAdvancedSettings3 : IMsRdpClientAdvancedSettings2
  1029. {
  1030. //
  1031. // BBar properties
  1032. //
  1033. [propput, id(DISPID_PROP_ADV_CONBAR_SHOWMINIMIZE),
  1034. helpstring("property ConnectionBarShowMinimize")]
  1035. HRESULT ConnectionBarShowMinimizeButton(
  1036. [in] VARIANT_BOOL fShowMinimize );
  1037. [propget, id(DISPID_PROP_ADV_CONBAR_SHOWMINIMIZE),
  1038. helpstring("property ConnectionBarShowMinimize")]
  1039. HRESULT ConnectionBarShowMinimizeButton(
  1040. [out, retval] VARIANT_BOOL* pfShowMinimize );
  1041. [propput, id(DISPID_PROP_ADV_CONBAR_SHOWRESTORE),
  1042. helpstring("property ConnectionBarShowRestore")]
  1043. HRESULT ConnectionBarShowRestoreButton(
  1044. [in] VARIANT_BOOL fShowRestore );
  1045. [propget, id(DISPID_PROP_ADV_CONBAR_SHOWRESTORE),
  1046. helpstring("property ConnectionBarShowRestore")]
  1047. HRESULT ConnectionBarShowRestoreButton(
  1048. [out, retval] VARIANT_BOOL* pfShowRestore );
  1049. };
  1050. // ----------------------------------------------------------------------------
  1051. // IMsTscAx (root interface) v1.
  1052. // Shipped as part of TSAC. Do not change this interface.
  1053. //
  1054. [
  1055. object,
  1056. #ifndef REDIST_CONTROL
  1057. uuid(8C11EFAE-92C3-11D1-BC1E-00C04FA31489),
  1058. #else
  1059. uuid(327bb5cd-834e-4400-aef2-b30e15e5d682),
  1060. #endif
  1061. dual,
  1062. helpstring("IMsTscAx Interface"),
  1063. pointer_default(unique)
  1064. ]
  1065. interface IMsTscAx : IDispatch
  1066. {
  1067. //
  1068. // Properties
  1069. //
  1070. [propput, id(DISPID_PROP_SERVER), helpstring("property Server")]
  1071. HRESULT Server ([in] BSTR newVal);
  1072. [propget, id(DISPID_PROP_SERVER), helpstring("property Server")]
  1073. HRESULT Server ([out,retval] BSTR* pServer);
  1074. [propput, id(DISPID_PROP_DOMAIN), helpstring("property Domain")]
  1075. HRESULT Domain ([in] BSTR newVal);
  1076. [propget, id(DISPID_PROP_DOMAIN), helpstring("property Domain")]
  1077. HRESULT Domain ([out,retval] BSTR* pDomain);
  1078. [propput, id(DISPID_PROP_USERNAME), helpstring("property UserName")]
  1079. HRESULT UserName([in] BSTR newVal);
  1080. [propget, id(DISPID_PROP_USERNAME), helpstring("property UserName")]
  1081. HRESULT UserName([out,retval] BSTR* pUserName);
  1082. [propput, id(DISPID_PROP_DISCONNECTED_TEXT),
  1083. helpstring("property DisconnectedText")]
  1084. HRESULT DisconnectedText([in] BSTR newVal);
  1085. [propget, id(DISPID_PROP_DISCONNECTED_TEXT),
  1086. helpstring("property DisconnectedText")]
  1087. HRESULT DisconnectedText(
  1088. [out,retval] BSTR* pDisconnectedText);
  1089. [propput, id(DISPID_PROP_CONNECTING_TEXT),
  1090. helpstring("property ConnectingText")]
  1091. HRESULT ConnectingText([in] BSTR newVal);
  1092. [propget, id(DISPID_PROP_CONNECTING_TEXT),
  1093. helpstring("property ConnectingText")]
  1094. HRESULT ConnectingText(
  1095. [out,retval] BSTR* pConnectingText);
  1096. [propget, id(DISPID_PROP_CONNECTED), helpstring("property Connected")]
  1097. HRESULT Connected ([out, retval] short *pIsConnected);
  1098. [propput, id(DISPID_PROP_DESKTOPWIDTH),
  1099. helpstring("propery Desktop width")]
  1100. HRESULT DesktopWidth ([in] LONG newVal);
  1101. [propget, id(DISPID_PROP_DESKTOPWIDTH),
  1102. helpstring("propery Desktop width")]
  1103. HRESULT DesktopWidth ([out,retval] LONG* pVal);
  1104. [propput, id(DISPID_PROP_DESKTOPHEIGHT),
  1105. helpstring("propery Desktop Height")]
  1106. HRESULT DesktopHeight ([in] LONG newVal);
  1107. [propget, id(DISPID_PROP_DESKTOPHEIGHT),
  1108. helpstring("propery Desktop Height")]
  1109. HRESULT DesktopHeight ([out,retval] LONG* pVal);
  1110. [propput, id(DISPID_PROP_STARTCONNECTED),
  1111. helpstring("propery start connected")]
  1112. HRESULT StartConnected([in] BOOL fStartConnected);
  1113. [propget, id(DISPID_PROP_STARTCONNECTED),
  1114. helpstring("propery start connected")]
  1115. HRESULT StartConnected(
  1116. [out,retval] BOOL* pfStartConnected);
  1117. [propget, id(DISPID_PROP_HORIZSCROLLBAR),
  1118. helpstring("propery HorizontalScrollBarVisible")]
  1119. HRESULT HorizontalScrollBarVisible(
  1120. [out,retval] BOOL* pfHScrollVisible);
  1121. [propget, id(DISPID_PROP_VERTSCROLLBAR),
  1122. helpstring("propery VerticalScrollBarVisible")]
  1123. HRESULT VerticalScrollBarVisible(
  1124. [out,retval] BOOL* pfVScrollVisible);
  1125. [propput, id(DISPID_PROP_FULLSCREENTITLE),
  1126. helpstring("propery FullScreenTitle")]
  1127. HRESULT FullScreenTitle([in] BSTR fullScreenTitle);
  1128. [propget, id(DISPID_PROP_CIPHERSTRENGTH),
  1129. helpstring("propery CipherStrength")]
  1130. HRESULT CipherStrength(
  1131. [out, retval] LONG* pCipherStrength);
  1132. [propget, id(DISPID_PROP_VERSION),
  1133. helpstring("propery Version")]
  1134. HRESULT Version([out, retval] BSTR* pVersion);
  1135. [propget, id(DISPID_PROP_SECUREDSETTINGSENABLED),
  1136. helpstring("propery SecuredSettingsEnabled")]
  1137. HRESULT SecuredSettingsEnabled(
  1138. [out, retval] BOOL* pSecuredSettingsEnabled);
  1139. [propget, id(DISPID_PROP_SECUREDSETTINGS),
  1140. helpstring("propery get secured settings")]
  1141. HRESULT SecuredSettings( [out,retval]
  1142. IMsTscSecuredSettings** ppSecuredSettings);
  1143. [propget, id(DISPID_PROP_ADVSETTINGS),
  1144. helpstring("propery get advanced settings")]
  1145. HRESULT AdvancedSettings(
  1146. [out,retval] IMsTscAdvancedSettings** ppAdvSettings);
  1147. [propget, id(DISPID_PROP_DEBUGGER),
  1148. helpstring("propery get debugger interface"), hidden]
  1149. HRESULT Debugger( [out,retval]
  1150. IMsTscDebug** ppDebugger);
  1151. //
  1152. // Methods
  1153. //
  1154. [id(DISPID_METHOD_CONNECT), helpstring("Method Connect")]
  1155. HRESULT Connect();
  1156. [id(DISPID_METHOD_DISCONNECT), helpstring("Method Disconnect")]
  1157. HRESULT Disconnect();
  1158. [id(DISPID_METHOD_CREATEVIRTUALCHANNELS),
  1159. helpstring("Method CreateVirtualChannels")]
  1160. HRESULT CreateVirtualChannels ([in] BSTR newVal);
  1161. [id(DISPID_METHOD_SENDONVIRTUALCHANNEL),
  1162. helpstring("Method SendOnVirtualChannel(chan name, data)")]
  1163. HRESULT SendOnVirtualChannel ([in] BSTR ChanName,
  1164. [in] BSTR ChanData);
  1165. };
  1166. // ----------------------------------------------------------------------------
  1167. // IMsRdpClient (root interface) v2 - extends IMsTscAx.
  1168. // Updates to the root interface go here.
  1169. [
  1170. object,
  1171. uuid(92b4a539-7115-4b7c-a5a9-e5d9efc2780a),
  1172. dual,
  1173. //This is the renamed IMsTscAx2 interface
  1174. helpstring("IMsRdpClient Interface"),
  1175. pointer_default(unique)
  1176. ]
  1177. interface IMsRdpClient : IMsTscAx
  1178. {
  1179. //
  1180. // Properties
  1181. //
  1182. [propput, id(DISPID_PROP_COLORDEPTH),
  1183. helpstring("property ColorDepth")]
  1184. HRESULT ColorDepth([in] LONG colorDepth);
  1185. [propget, id(DISPID_PROP_COLORDEPTH),
  1186. helpstring("property ColorDepth")]
  1187. HRESULT ColorDepth([out, retval] LONG* pcolorDepth);
  1188. [propget, id(DISPID_PROP_ADVSETTINGS2),
  1189. helpstring("propery get advanced settings2")]
  1190. HRESULT AdvancedSettings2(
  1191. [out,retval]
  1192. IMsRdpClientAdvancedSettings** ppAdvSettings);
  1193. [propget, id(DISPID_PROP_SECUREDSETTINGS2),
  1194. helpstring("propery get secured settings2")]
  1195. HRESULT SecuredSettings2( [out,retval]
  1196. IMsRdpClientSecuredSettings** ppSecuredSettings);
  1197. // Extended Disconnect Reason
  1198. // enum values are mapped from values
  1199. // from the published header tserrs.h
  1200. //
  1201. typedef enum {
  1202. exDiscReasonNoInfo = 0x0000,
  1203. exDiscReasonAPIInitiatedDisconnect = 0x0001,
  1204. exDiscReasonAPIInitiatedLogoff = 0x0002,
  1205. exDiscReasonServerIdleTimeout = 0x0003,
  1206. exDiscReasonServerLogonTimeout = 0x0004,
  1207. exDiscReasonReplacedByOtherConnection = 0x0005,
  1208. exDiscReasonOutOfMemory = 0x0006,
  1209. exDiscReasonServerDeniedConnection = 0x0007,
  1210. exDiscReasonServerDeniedConnectionFips = 0x0008,
  1211. exDiscReasonLicenseInternal = 0x0100,
  1212. exDiscReasonLicenseNoLicenseServer = 0x0101,
  1213. exDiscReasonLicenseNoLicense = 0x0102,
  1214. exDiscReasonLicenseErrClientMsg = 0x0103,
  1215. exDiscReasonLicenseHwidDoesntMatchLicense = 0x0104,
  1216. exDiscReasonLicenseErrClientLicense = 0x0105,
  1217. exDiscReasonLicenseCantFinishProtocol = 0x0106,
  1218. exDiscReasonLicenseClientEndedProtocol= 0x0107,
  1219. exDiscReasonLicenseErrClientEncryption= 0x0108,
  1220. exDiscReasonLicenseCantUpgradeLicense = 0x0109,
  1221. exDiscReasonLicenseNoRemoteConnections= 0x010A,
  1222. exDiscReasonProtocolRangeStart = 0x1000,
  1223. exDiscReasonProtocolRangeEnd = 0x7FFF
  1224. } ExtendedDisconnectReasonCode;
  1225. [propget, id(DISPID_PROP_EXTENDEDDISCONNECTREASON),
  1226. helpstring("property get extended disconnect reason")]
  1227. HRESULT ExtendedDisconnectReason(
  1228. [out, retval]
  1229. ExtendedDisconnectReasonCode* pExtendedDisconnectReason);
  1230. [propput, id(DISPID_PROP_FULLSCREEN),
  1231. helpstring("propery full screen")]
  1232. HRESULT FullScreen([in] VARIANT_BOOL fFullScreen);
  1233. [propget, id(DISPID_PROP_FULLSCREEN),
  1234. helpstring("propery full screen")]
  1235. HRESULT FullScreen([out,retval] VARIANT_BOOL* pfFullScreen);
  1236. //
  1237. // Methods
  1238. //
  1239. [ id(DISPID_METHOD_SET_VIRTUALCHANNELOPTIONS),
  1240. helpstring("Method SetVirtualChannelOptions(chan name, options)")]
  1241. HRESULT SetVirtualChannelOptions([in] BSTR ChanName,
  1242. [in] LONG chanOptions);
  1243. [ id(DISPID_METHOD_GET_VIRTUALCHANNELOPTIONS),
  1244. helpstring("Method GetVirtualChannelOptions(chan name, options)")]
  1245. HRESULT GetVirtualChannelOptions([in] BSTR ChanName,
  1246. [out, retval] LONG* pChanOptions);
  1247. typedef enum {
  1248. controlCloseCanProceed = 0x0000,
  1249. controlCloseWaitForEvents = 0x0001
  1250. } ControlCloseStatus;
  1251. [ id(DISPID_METHOD_REQUESTCLOSE),
  1252. helpstring("Method RequestClose()")]
  1253. HRESULT RequestClose( [out, retval]
  1254. ControlCloseStatus* pCloseStatus );
  1255. };
  1256. //
  1257. // These codes come from tscerrs.h, they are the expanded out form
  1258. // of the bitfields that define error codes from different components
  1259. //
  1260. //
  1261. // Disconnect reason code for OnDisconnected event
  1262. // These are generated from the internal header tscerrs.h
  1263. //
  1264. typedef enum {
  1265. disconnectReasonNoInfo = 0,
  1266. disconnectReasonLocalNotError = 1,
  1267. disconnectReasonRemoteByUser = 2,
  1268. disconnectReasonByServer = 3,
  1269. disconnectReasonDNSLookupFailed = 260,
  1270. disconnectReasonOutOfMemory = 262,
  1271. disconnectReasonConnectionTimedOut = 264,
  1272. disconnectReasonSocketConnectFailed = 516,
  1273. disconnectReasonOutOfMemory2 = 518,
  1274. disconnectReasonHostNotFound = 520,
  1275. disconnectReasonWinsockSendFailed = 772,
  1276. disconnectReasonOutOfMemory3 = 774,
  1277. disconnectReasonInvalidIPAddr = 776,
  1278. disconnectReasonSocketRecvFailed = 1028,
  1279. disconnectReasonInvalidSecurityData = 1030,
  1280. disconnectReasonInternalError = 1032,
  1281. disconnectReasonInvalidEncryption = 1286,
  1282. disconnectReasonDNSLookupFailed2 = 1288,
  1283. disconnectReasonGetHostByNameFailed = 1540,
  1284. disconnectReasonInvalidServerSecurityInfo = 1542,
  1285. disconnectReasonTimerError = 1544,
  1286. disconnectReasonTimeoutOccurred = 1796,
  1287. disconnectReasonServerCertificateUnpackErr = 1798,
  1288. disconnectReasonInvalidIP = 2052,
  1289. disconnectReasonLicensingFailed = 2056,
  1290. disconnectReasonInternalSecurityError = 2310,
  1291. disconnectReasonAtClientWinsockFDCLOSE = 2308,
  1292. disconnectReasonLicensingTimeout = 2312,
  1293. disconnectReasonInternalSecurityError2 = 2566,
  1294. disconnectReasonEncryptionError = 2822,
  1295. disconnectReasonDecryptionError = 3078,
  1296. disconnectReasonClientDecompressionError = 3080
  1297. } DisconnectReasonCode;
  1298. // ----------------------------------------------------------------------------
  1299. // IMsRdpClient2 (root interface) v3 - extends IMsRdpClient.
  1300. // Make updates here
  1301. [
  1302. object,
  1303. uuid(e7e17dc4-3b71-4ba7-a8e6-281ffadca28f),
  1304. dual,
  1305. //This is the renamed IMsTscAx2 interface
  1306. helpstring("IMsRdpClient2 Interface"),
  1307. pointer_default(unique)
  1308. ]
  1309. interface IMsRdpClient2 : IMsRdpClient
  1310. {
  1311. //
  1312. // Properties
  1313. //
  1314. [propget, id(DISPID_PROP_ADVSETTINGS3),
  1315. helpstring("propery get advanced settings3")]
  1316. HRESULT AdvancedSettings3(
  1317. [out,retval]
  1318. IMsRdpClientAdvancedSettings2** ppAdvSettings);
  1319. [propput, id(DISPID_PROP_CONNECTED_STATUS_TEXT),
  1320. helpstring("property ConnectedStatusText")]
  1321. HRESULT ConnectedStatusText([in] BSTR newVal);
  1322. [propget, id(DISPID_PROP_CONNECTED_STATUS_TEXT),
  1323. helpstring("property ConnectedStatusText")]
  1324. HRESULT ConnectedStatusText(
  1325. [out,retval] BSTR* pConnectedStatusText);
  1326. };
  1327. //
  1328. // Autoreconnect continue states for OnAutoReconnecting
  1329. //
  1330. typedef enum {
  1331. autoReconnectContinueAutomatic = 0,
  1332. autoReconnectContinueStop = 1,
  1333. autoReconnectContinueManual = 2
  1334. } AutoReconnectContinueState;
  1335. // ----------------------------------------------------------------------------
  1336. // IMsRdpClient3 (root interface) v3 - extends IMsRdpClient.
  1337. // LOCKED DOWN FOR SP1
  1338. [
  1339. object,
  1340. uuid(91b7cbc5-a72e-4fa0-9300-d647d7e897ff),
  1341. dual,
  1342. helpstring("IMsRdpClient3 Interface"),
  1343. pointer_default(unique)
  1344. ]
  1345. interface IMsRdpClient3 : IMsRdpClient2
  1346. {
  1347. //
  1348. // Properties
  1349. //
  1350. [propget, id(DISPID_PROP_ADVSETTINGS4),
  1351. helpstring("propery get advanced settings4")]
  1352. HRESULT AdvancedSettings4(
  1353. [out,retval]
  1354. IMsRdpClientAdvancedSettings3** ppAdvSettings);
  1355. };
  1356. [
  1357. #ifndef REDIST_CONTROL
  1358. uuid(8C11EFA1-92C3-11D1-BC1E-00C04FA31489),
  1359. version(1.0),
  1360. helpstring("Microsoft Terminal Services Active Client 1.0 Type Library")
  1361. #else
  1362. uuid(af586aae-b62a-420e-b796-294e7ee64c70),
  1363. version(1.0),
  1364. helpstring("Microsoft Terminal Services Control (redist)")
  1365. #endif
  1366. ]
  1367. library MSTSCLib
  1368. {
  1369. importlib("stdole2.tlb");
  1370. [
  1371. uuid(336d5562-efa8-482e-8cb3-c5c0fc7a7db6),
  1372. helpstring("IMsTscAxEvents Interface")
  1373. ]
  1374. //
  1375. // Events
  1376. //
  1377. dispinterface IMsTscAxEvents
  1378. {
  1379. properties:
  1380. methods:
  1381. [id(DISPID_CONNECTING)] void OnConnecting();
  1382. [id(DISPID_CONNECTED)] void OnConnected();
  1383. [id(DISPID_LOGINCOMPLETE)] void OnLoginComplete();
  1384. [id(DISPID_DISCONNECTED)] void OnDisconnected(
  1385. [in] long discReason
  1386. );
  1387. [id(DISPID_ENTERFULLSCREENMODE)] void OnEnterFullScreenMode();
  1388. [id(DISPID_LEAVEFULLSCREENMODE)] void OnLeaveFullScreenMode();
  1389. [id(DISPID_CHANNELRECEIVEDDATA)] void OnChannelReceivedData(
  1390. [in] BSTR chanName,
  1391. [in] BSTR data
  1392. );
  1393. [id(DISPID_REQUESTGOFULLSCREEN)] void OnRequestGoFullScreen();
  1394. [id(DISPID_REQUESTLEAVEFULLSCREEN)] void OnRequestLeaveFullScreen();
  1395. [id(DISPID_FATALERROR)] void OnFatalError(
  1396. [in] long errorCode
  1397. );
  1398. [id(DISPID_WARNING)] void OnWarning(
  1399. [in] long warningCode
  1400. );
  1401. [id(DISPID_REMOTEDESKTOPSIZECHANGE)] void OnRemoteDesktopSizeChange(
  1402. [in] long width,
  1403. [in] long height
  1404. );
  1405. [id(DISPID_IDLETIMEOUTNOTIFICATION)] void OnIdleTimeoutNotification();
  1406. [id(DISPID_REQUESTCONTAINERMINIMIZE)] void OnRequestContainerMinimize();
  1407. [id(DISPID_CONFIRMCLOSE)] void OnConfirmClose(
  1408. [out, retval] VARIANT_BOOL* pfAllowClose
  1409. );
  1410. [id(DISPID_RECEVIEDTSPUBLICKEY)] void OnReceivedTSPublicKey(
  1411. [in] BSTR publicKey,
  1412. [out, retval] VARIANT_BOOL* pfContinueLogon
  1413. );
  1414. [id(DISPID_AUTORECONNECTING)] void OnAutoReconnecting(
  1415. [in] long disconnectReason,
  1416. [in] long attemptCount,
  1417. [out, retval] AutoReconnectContinueState* pArcContinueStatus
  1418. );
  1419. };
  1420. //
  1421. // V1 (TSAC) compatability coclass
  1422. //
  1423. [
  1424. #ifndef REDIST_CONTROL
  1425. uuid(a41a4187-5a86-4e26-b40a-856f9035d9cb),
  1426. helpstring("Microsoft Terminal Services Client Control")
  1427. #else
  1428. uuid(1fb464c8-09bb-4017-a2f5-eb742f04392f),
  1429. helpstring("Microsoft Terminal Services Client Control (redist)")
  1430. #endif
  1431. ]
  1432. coclass MsTscAx
  1433. {
  1434. interface IMsRdpClient;
  1435. [default] interface IMsTscAx;
  1436. [default, source] dispinterface IMsTscAxEvents;
  1437. interface IMsTscNonScriptable;
  1438. interface IMsRdpClientNonScriptable;
  1439. };
  1440. //
  1441. // V2 (whistler) coclass
  1442. //
  1443. [
  1444. #ifndef REDIST_CONTROL
  1445. uuid(7cacbd7b-0d99-468f-ac33-22e495c0afe5),
  1446. helpstring("Microsoft RDP Client Control")
  1447. #else
  1448. uuid(791fa017-2de3-492e-acc5-53c67a2b94d0),
  1449. helpstring("Microsoft RDP Client Control (redist)")
  1450. #endif
  1451. ]
  1452. coclass MsRdpClient
  1453. {
  1454. [default] interface IMsRdpClient;
  1455. interface IMsTscAx;
  1456. [default, source] dispinterface IMsTscAxEvents;
  1457. interface IMsTscNonScriptable;
  1458. interface IMsRdpClientNonScriptable;
  1459. };
  1460. //
  1461. // V3 (XPSP1) coclass
  1462. //
  1463. [
  1464. #ifndef REDIST_CONTROL
  1465. uuid(3523c2fb-4031-44e4-9a3b-f1e94986ee7f),
  1466. helpstring("Microsoft RDP Client Control")
  1467. #else
  1468. uuid(9059f30f-4eb1-4bd2-9fdc-36f43a218f4a),
  1469. helpstring("Microsoft RDP Client Control (redist)")
  1470. #endif
  1471. ]
  1472. coclass MsRdpClient2
  1473. {
  1474. [default] interface IMsRdpClient2;
  1475. interface IMsRdpClient;
  1476. interface IMsTscAx;
  1477. [default, source] dispinterface IMsTscAxEvents;
  1478. interface IMsTscNonScriptable;
  1479. interface IMsRdpClientNonScriptable;
  1480. };
  1481. //
  1482. // V4 (.NET server) coclass
  1483. //
  1484. [
  1485. #ifndef REDIST_CONTROL
  1486. uuid(ace575fd-1fcf-4074-9401-ebab990fa9de),
  1487. helpstring("Microsoft RDP Client Control")
  1488. #else
  1489. uuid(7584c670-2274-4efb-b00b-d6aaba6d3850),
  1490. helpstring("Microsoft RDP Client Control (redist)")
  1491. #endif
  1492. ]
  1493. coclass MsRdpClient3
  1494. {
  1495. [default] interface IMsRdpClient3;
  1496. interface IMsRdpClient2;
  1497. interface IMsRdpClient;
  1498. interface IMsTscAx;
  1499. [default, source] dispinterface IMsTscAxEvents;
  1500. interface IMsTscNonScriptable;
  1501. interface IMsRdpClientNonScriptable;
  1502. };
  1503. };