Public paste
Precompiled bcc32c
By: Guest | Date: May 5 2020 05:45 | Format: None | Expires: never | Size: 2.7 MB | Hits: 906

  1. # 1 "proxy.c"
  2. # 1 "<built-in>" 1
  3. # 1 "<built-in>" 3
  4. # 316 "<built-in>" 3
  5. # 1 "<command line>" 1
  6. # 1 "<built-in>" 2
  7. # 1 "proxy.c" 2
  8. # 22 "proxy.c"
  9. #pragma warning(disable: 4049)
  10.  
  11.  
  12.  
  13.  
  14. #pragma warning(disable: 4211)
  15. #pragma warning(disable: 4232)
  16. #pragma warning(disable: 4024)
  17. #pragma warning(disable: 4152)
  18. #pragma warning(disable: 4100)
  19.  
  20. #pragma optimize("", off )
  21. # 44 "proxy.c"
  22. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 1 3
  23. #pragma option push -b -a8 -pc -A- -w-pun
  24. # 44 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 3
  25. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winapifamily.h" 1 3
  26. # 16 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winapifamily.h" 3
  27. #pragma option push -b -a8 -pc -A- -w-pun
  28. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winapifamily.h" 3
  29. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winpackagefamily.h" 1 3
  30. # 16 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winpackagefamily.h" 3
  31. #pragma option push -b -a8 -pc -A- -w-pun
  32. # 92 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winpackagefamily.h" 3
  33. #pragma option pop
  34. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winapifamily.h" 2 3
  35. # 241 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winapifamily.h" 3
  36. #pragma option pop
  37. # 44 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 2 3
  38. # 67 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 3
  39. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 1 3
  40. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 3
  41. #pragma option push -b -a8 -pc -A- -w-pun
  42. # 46 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 3
  43.  typedef unsigned long POINTER_64_INT;
  44. # 76 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 3
  45. typedef signed char INT8, *PINT8;
  46. typedef signed short INT16, *PINT16;
  47. typedef signed int INT32, *PINT32;
  48. typedef signed __int64 INT64, *PINT64;
  49. typedef unsigned char UINT8, *PUINT8;
  50. typedef unsigned short UINT16, *PUINT16;
  51. typedef unsigned int UINT32, *PUINT32;
  52. typedef unsigned __int64 UINT64, *PUINT64;
  53.  
  54.  
  55.  
  56.  
  57.  
  58. typedef signed int LONG32, *PLONG32;
  59.  
  60.  
  61.  
  62.  
  63.  
  64. typedef unsigned int ULONG32, *PULONG32;
  65. typedef unsigned int DWORD32, *PDWORD32;
  66. # 135 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 3
  67.     typedef int INT_PTR, *PINT_PTR;
  68.     typedef unsigned int UINT_PTR, *PUINT_PTR;
  69.  
  70.     typedef long LONG_PTR, *PLONG_PTR;
  71.     typedef unsigned long ULONG_PTR, *PULONG_PTR;
  72. # 336 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 3
  73. typedef unsigned short UHALF_PTR, *PUHALF_PTR;
  74. typedef short HALF_PTR, *PHALF_PTR;
  75. typedef long SHANDLE_PTR;
  76. typedef unsigned long HANDLE_PTR;
  77. # 357 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 3
  78. __inline
  79. void *
  80. PtrToPtr64(
  81.     const void *p
  82.     )
  83. {
  84.     return((void * ) (unsigned __int64) (ULONG_PTR)p );
  85. }
  86.  
  87. __inline
  88. void *
  89. Ptr64ToPtr(
  90.     const void * p
  91.     )
  92. {
  93.     return((void *) (ULONG_PTR) (unsigned __int64) p);
  94. }
  95.  
  96. __inline
  97. void *
  98. HandleToHandle64(
  99.     const void *h
  100.     )
  101. {
  102.     return((void * )(__int64)(LONG_PTR)h );
  103. }
  104.  
  105. __inline
  106. void *
  107. Handle64ToHandle(
  108.     const void * h
  109.     )
  110. {
  111.     return((void *) (ULONG_PTR) (unsigned __int64) h );
  112. }
  113. # 423 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 3
  114. typedef ULONG_PTR SIZE_T, *PSIZE_T;
  115. typedef LONG_PTR SSIZE_T, *PSSIZE_T;
  116. # 472 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 3
  117. typedef ULONG_PTR DWORD_PTR, *PDWORD_PTR;
  118.  
  119.  
  120.  
  121.  
  122.  
  123. typedef __int64 LONG64, *PLONG64;
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130. typedef unsigned __int64 ULONG64, *PULONG64;
  131. typedef unsigned __int64 DWORD64, *PDWORD64;
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139. typedef ULONG_PTR KAFFINITY;
  140. typedef KAFFINITY *PKAFFINITY;
  141. # 507 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\basetsd.h" 3
  142. #pragma option pop
  143. # 67 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 2 3
  144. # 78 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 3
  145. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\guiddef.h" 1 3
  146. #pragma option push -b -a8 -pc -A- -w-pun
  147. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\guiddef.h" 3
  148. typedef struct _GUID {
  149.     unsigned long Data1;
  150.     unsigned short Data2;
  151.     unsigned short Data3;
  152.     unsigned char Data4[ 8 ];
  153. } GUID;
  154. # 76 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\guiddef.h" 3
  155. typedef GUID *LPGUID;
  156.  
  157.  
  158.  
  159.  
  160. typedef const GUID *LPCGUID;
  161.  
  162.  
  163.  
  164.  
  165.  
  166. typedef GUID IID;
  167. typedef IID *LPIID;
  168.  
  169.  
  170. typedef GUID CLSID;
  171. typedef CLSID *LPCLSID;
  172.  
  173.  
  174. typedef GUID FMTID;
  175. typedef FMTID *LPFMTID;
  176. # 147 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\guiddef.h" 3
  177. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\string.h" 1 3
  178. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\string.h" 3
  179. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 1 3
  180. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 3
  181. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  182. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 3
  183. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_defs.h" 1 3
  184. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 2 3
  185.  
  186.  
  187.  
  188.  
  189. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_null.h" 1 3
  190. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 2 3
  191. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 3
  192. typedef int ssize_t;
  193. # 80 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 3
  194.    typedef unsigned int size_t;
  195. # 95 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 3
  196. typedef size_t rsize_t;
  197.  
  198.  
  199.  
  200.  
  201. typedef int errno_t;
  202. # 116 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 3
  203. typedef int ptrdiff_t;
  204. # 130 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 3
  205. typedef unsigned short wchar_t;
  206. # 140 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 3
  207. typedef wchar_t wint_t;
  208. # 149 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 3
  209. typedef wchar_t wctype_t;
  210.  
  211.  
  212.  
  213.  
  214. typedef double max_align_t;
  215. # 165 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 3
  216. extern unsigned long __cdecl __threadid(void);
  217. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 2 3
  218.  
  219.  
  220.  
  221.  
  222.  
  223. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\locale.h" 1 3
  224. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\locale.h" 3
  225. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_loc.h" 1 3
  226. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_loc.h" 3
  227. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  228. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_loc.h" 2 3
  229. # 54 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_loc.h" 3
  230. struct lconv {
  231.  
  232.    char *decimal_point;
  233.    char *thousands_sep;
  234.    char *grouping;
  235.    char *int_curr_symbol;
  236.    char *currency_symbol;
  237.    char *mon_decimal_point;
  238.    char *mon_thousands_sep;
  239.    char *mon_grouping;
  240.    char *positive_sign;
  241.    char *negative_sign;
  242.    char int_frac_digits;
  243.    char frac_digits;
  244.    char p_cs_precedes;
  245.    char p_sep_by_space;
  246.    char n_cs_precedes;
  247.    char n_sep_by_space;
  248.    char p_sign_posn;
  249.    char n_sign_posn;
  250. };
  251.  
  252.  
  253. #pragma pack(push, 1)
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.  
  262. char * __cdecl setlocale( int __category, const char *__locale );
  263. wchar_t * __cdecl _wsetlocale( int __category, const wchar_t *__locale );
  264.  
  265. char * __cdecl _lsetlocale( int __category, const char *__locale );
  266. struct lconv * __cdecl localeconv( void );
  267. struct lconv * __cdecl _llocaleconv( void );
  268. wchar_t * __cdecl _lwsetlocale( int __category, const wchar_t *__locale );
  269.  
  270.  
  271.  
  272.  
  273. #pragma pack(pop)
  274. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\locale.h" 2 3
  275. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 2 3
  276. # 53 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 3
  277. size_t __cdecl strnlen_s(const char *__s, size_t __maxlen);
  278. size_t __cdecl wcsnlen_s(const wchar_t *__s, size_t __maxlen);
  279. errno_t __cdecl strerror_s(char *__s, rsize_t __maxsize, errno_t __errnum);
  280. errno_t __cdecl _wcserror_s(wchar_t *__s, rsize_t __maxsize, errno_t __errnum);
  281. size_t __cdecl strerrorlen_s(errno_t errnum);
  282. errno_t __cdecl strncpy_s(char * dest, rsize_t destmax,
  283.         const char * src, rsize_t n);
  284. errno_t __cdecl wcsncpy_s(wchar_t * dest, rsize_t destmax,
  285.         const wchar_t * src, rsize_t n);
  286. errno_t __cdecl strcpy_s(char * dest, rsize_t destmax,
  287.        const char * src);
  288. errno_t __cdecl wcscpy_s(wchar_t * dest, rsize_t destmax,
  289.        const wchar_t * src);
  290. errno_t __cdecl strncat_s(char * dest, rsize_t destmax,
  291.         const char * src, rsize_t n);
  292. errno_t __cdecl wcsncat_s(wchar_t * dest, rsize_t destmax,
  293.         const wchar_t * src, rsize_t n);
  294. errno_t __cdecl strcat_s(char * dest, rsize_t destmax,
  295.        const char * src);
  296. errno_t __cdecl wcscat_s(wchar_t * dest, rsize_t destmax,
  297.        const wchar_t * src);
  298. char * __cdecl strtok_s(char * __s1, rsize_t * __s1max,
  299.        const char * __s2, char ** __ptr);
  300. wchar_t * __cdecl wcstok_s(wchar_t * __s1, rsize_t * __s1max,
  301.        const wchar_t * __s2, wchar_t ** __ptr);
  302.  
  303.  
  304. size_t __cdecl wcslen(const wchar_t *__s);
  305. wchar_t * __cdecl wcscpy(wchar_t *__dst, const wchar_t *__src);
  306. wchar_t * __cdecl wcscat(wchar_t *__dest, const wchar_t *__src);
  307. int __cdecl wcscmp(const wchar_t *__s1, const wchar_t *__s2);
  308. int __cdecl wcscoll(const wchar_t * __s1, const wchar_t * __s2);
  309. size_t __cdecl wcscspn(const wchar_t *__s1, const wchar_t *__s2);
  310. wchar_t * __cdecl _wcsdup(const wchar_t *__s);
  311. int __cdecl wcsncmp(const wchar_t *__s1, const wchar_t *__s2, size_t __maxlen);
  312. wchar_t * __cdecl wcsncpy(wchar_t *__dest, const wchar_t *__src, size_t __maxlen);
  313. wchar_t * __cdecl _wcsnset(wchar_t *__s, wchar_t __ch, size_t __n);
  314. wchar_t * __cdecl wcspbrk(const wchar_t *__s1, const wchar_t *__s2);
  315. wchar_t * __cdecl wcsrchr(const wchar_t *__s, wchar_t __c);
  316. wchar_t * __cdecl _wcsrev(wchar_t *__s);
  317. wchar_t * __cdecl _wcsset(wchar_t*__s, wchar_t __ch);
  318. size_t __cdecl wcsspn(const wchar_t *__s1, const wchar_t *__s2);
  319. wchar_t * __cdecl wcsstr(const wchar_t *__s1, const wchar_t *__s2);
  320. wchar_t * __cdecl wcstok(wchar_t *__s1, const wchar_t *__s2);
  321. wchar_t * __cdecl wcsncat(wchar_t *__dest, const wchar_t *__src, size_t __maxlen);
  322. wchar_t * __cdecl wcspcpy(wchar_t *__dest, const wchar_t *__src);
  323. wchar_t * __cdecl _wcspcpy(wchar_t *__dest, const wchar_t *__src);
  324. int __cdecl _wcsicmp(const wchar_t *__s1, const wchar_t *__s2);
  325. int __cdecl _wcsnicmp(const wchar_t *__s1, const wchar_t *__s2, size_t __maxlen);
  326. wchar_t * __cdecl _wcslwr(wchar_t *__s);
  327. wchar_t * __cdecl _wcsupr(wchar_t *__s);
  328. wchar_t * __cdecl _lwcslwr(wchar_t *__s);
  329. wchar_t * __cdecl _lwcsupr(wchar_t *__s);
  330. wchar_t * __cdecl __wcserror(const wchar_t *__s);
  331. wchar_t * __cdecl _wcserror(int __errnum);
  332.  
  333.  
  334. wchar_t * __cdecl wcschr(const wchar_t *__s, wchar_t __c);
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342. char * __cdecl strcat(char *__dest, const char *__src);
  343. int __cdecl strcmp(const char *__s1, const char *__s2);
  344. char * __cdecl strcpy(char *__dest, const char *__src);
  345. size_t __cdecl strlen(const char *__s);
  346. char * __cdecl strncat(char *__dest, const char *__src,
  347.                                         size_t __maxlen);
  348. int __cdecl strncmp(const char *__s1, const char *__s2,
  349.                                         size_t __maxlen);
  350. char * __cdecl strncpy(char *__dest, const char *__src,
  351.                                         size_t __maxlen);
  352. size_t __cdecl strcspn(const char *__s1, const char *__s2);
  353. char * __cdecl strerror(int __errnum);
  354. size_t __cdecl strspn(const char *__s1, const char *__s2);
  355. char * __cdecl strtok(char *__s1, const char *__s2);
  356. char * __cdecl _strerror(const char *__s);
  357.  
  358.  
  359.  
  360.  
  361.  
  362.  
  363. char * __cdecl _lstrlwr(char *__s);
  364. char * __cdecl _lstrupr(char *__s);
  365. char * __cdecl stpcpy(char *__dest, const char *__src);
  366. char * __cdecl _stpcpy(char *__dest, const char *__src);
  367. char * __cdecl strdup(const char *__s);
  368. int __cdecl stricmp(const char *__s1, const char *__s2);
  369. char * __cdecl strlwr(char *__s);
  370. int __cdecl strnicmp(const char *__s1, const char *__s2,
  371.                                            size_t __maxlen);
  372. char * __cdecl strnset(char *__s, int __ch, size_t __n);
  373. char * __cdecl strrev(char *__s);
  374. char * __cdecl strset(char *__s, int __ch);
  375. char * __cdecl strupr(char *__s);
  376. # 171 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 3
  377.           char * __cdecl strchr(const char * __s, int __c);
  378.           char * __cdecl strrchr(const char *__s, int __c);
  379.           char * __cdecl strpbrk(const char *__s1, const char *__s2);
  380.           char * __cdecl strstr(const char *__s1, const char *__s2);
  381. # 350 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 3
  382. int __cdecl _lstrcoll(const char * __s1, const char * __s2);
  383. int __cdecl _lstricoll(const char * __s1, const char * __s2);
  384. int __cdecl _lstrncoll(const char * __s1, const char * __s2, const int __len);
  385. int __cdecl _lstrnicoll(const char * __s1, const char * __s2, int __len);
  386. size_t __cdecl _lstrxfrm(char * __s1, const char * __s2,size_t __n );
  387. int __cdecl _stricoll(const char * __s1, const char * __s2);
  388. int __cdecl _strncoll(const char * __s1, const char * __s2, size_t __n);
  389. int __cdecl _strnicoll(const char * __s1, const char * __s2, int __len);
  390.  
  391.  
  392.  
  393.  
  394.  
  395. int __cdecl strcoll(const char * __s1, const char * __s2);
  396. size_t __cdecl strxfrm(char * __s1, const char * __s2,size_t __n );
  397.  
  398.  
  399.  
  400.  
  401.  
  402. int __cdecl _lwcscoll(const wchar_t * __s1, const wchar_t * __s2);
  403. int __cdecl _lwcsicoll(const wchar_t * __s1, const wchar_t * __s2);
  404. int __cdecl _lwcsncoll(const wchar_t * __s1, const wchar_t * __s2, const int __len);
  405. int __cdecl _lwcsnicoll(const wchar_t * __s1, const wchar_t * __s2, int __len);
  406. size_t __cdecl _lwcsxfrm(wchar_t * __s1, const wchar_t * __s2,size_t __n );
  407. int __cdecl wcscoll(const wchar_t * __s1, const wchar_t * __s2);
  408. int __cdecl _wcsicoll(const wchar_t * __s1, const wchar_t * __s2);
  409. int __cdecl _wcsncoll(const wchar_t * __s1, const wchar_t * __s2, size_t __n);
  410. int __cdecl _wcsnicoll(const wchar_t * __s1, const wchar_t * __s2, int __len);
  411. size_t __cdecl wcsxfrm(wchar_t * __s1, const wchar_t * __s2, size_t __n );
  412. # 454 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 3
  413. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mem.h" 1 3
  414. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mem.h" 3
  415. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  416. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mem.h" 2 3
  417. # 40 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mem.h" 3
  418. errno_t __cdecl memcpy_s(void * __dest, rsize_t __destmax,
  419.          const void * __src, rsize_t __n);
  420. errno_t __cdecl memmove_s(void * __dest, rsize_t __destmax,
  421.           const void * __src, rsize_t __n);
  422. errno_t __cdecl memset_s(void * __dest, rsize_t __destmax,
  423.          int __c, rsize_t __n);
  424. errno_t __cdecl wmemcpy_s(wchar_t * __dest, rsize_t __destmax,
  425.           const wchar_t * __src, rsize_t __n);
  426. errno_t __cdecl wmemmove_s(wchar_t * __dest, rsize_t __destmax,
  427.            const wchar_t * __src, rsize_t __n);
  428. errno_t __cdecl wmemset_s(wchar_t * __dest, rsize_t __destmax,
  429.          wchar_t __c, rsize_t __n);
  430.  
  431.  
  432. void * __cdecl memccpy(void *__dest, const void *__src,
  433.                                         int __c, size_t __n);
  434. int __cdecl memcmp(const void *__s1, const void *__s2,
  435.                                        size_t __n);
  436. void * __cdecl memcpy(void *__dest, const void *__src,
  437.                                        size_t __n);
  438. int __cdecl memicmp(const void *__s1, const void *__s2,
  439.                                         size_t __n);
  440. void * __cdecl memmove(void *__dest, const void *__src,
  441.                                         size_t __n);
  442. void * __cdecl memset(void *__s, int __c, size_t __n);
  443.  
  444. wchar_t * __cdecl wmemset(wchar_t *__s, int __c, size_t __n);
  445. wchar_t * __cdecl wmemcpy(wchar_t *__dest, const wchar_t *__src, size_t __n);
  446. wchar_t * __cdecl wmemmove(wchar_t *__dest, const wchar_t *__src, size_t __n);
  447. wchar_t * __cdecl wmemchr(const wchar_t *__s, wchar_t __c, size_t __n);
  448. int __cdecl wmemcmp(const wchar_t *__s1, const wchar_t *__s2, size_t __n);
  449.  
  450.  
  451. wchar_t * __cdecl _wmemset(wchar_t *__s, int __c, size_t __n);
  452. wchar_t * __cdecl _wmemcpy(wchar_t *__dest, const wchar_t *__src, size_t __n);
  453. # 85 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mem.h" 3
  454.           void * __cdecl memchr(const void *__s, int __c, size_t __n);
  455.           wchar_t * __cdecl _wmemchr(const wchar_t *__s, int __c, size_t __n);
  456. # 454 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 2 3
  457. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\string.h" 2 3
  458. # 147 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\guiddef.h" 2 3
  459. # 217 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\guiddef.h" 3
  460. #pragma option pop
  461. # 78 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 2 3
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470. #pragma region Application or OneCore Family
  471.  
  472.  
  473.  
  474. struct tagCInterfaceStubVtbl;
  475. struct tagCInterfaceProxyVtbl;
  476.  
  477. typedef struct tagCInterfaceStubVtbl * PCInterfaceStubVtblList;
  478. typedef struct tagCInterfaceProxyVtbl * PCInterfaceProxyVtblList;
  479. typedef const char * PCInterfaceName;
  480. typedef int __stdcall IIDLookupRtn( const IID * pIID, int * pIndex );
  481. typedef IIDLookupRtn * PIIDLookup;
  482. # 107 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 3
  483. typedef struct tagProxyFileInfo
  484. {
  485.     const PCInterfaceProxyVtblList *pProxyVtblList;
  486.     const PCInterfaceStubVtblList *pStubVtblList;
  487.     const PCInterfaceName * pNamesArray;
  488.     const IID ** pDelegatedIIDs;
  489.     const PIIDLookup pIIDLookupRtn;
  490.     unsigned short TableSize;
  491.     unsigned short TableVersion;
  492.     const IID ** pAsyncIIDLookup;
  493.     LONG_PTR Filler2;
  494.     LONG_PTR Filler3;
  495.     LONG_PTR Filler4;
  496. }ProxyFileInfo;
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503. typedef ProxyFileInfo ExtendedProxyFileInfo;
  504.  
  505.  
  506. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 1 3
  507. #pragma option push -b -a8 -pc -A- -w-pun
  508. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 3
  509. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 1 3
  510. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 3
  511. #pragma defineonoption __BOROPT_A -A
  512. #pragma defineonoption __BOROPT_H -H
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520. #pragma option push -b -a8 -pc -A- -w-pun
  521.  
  522.  
  523. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sdkddkver.h" 1 3
  524. # 16 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sdkddkver.h" 3
  525. #pragma option push -b -a8 -pc -A- -w-pun
  526. # 307 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sdkddkver.h" 3
  527. #pragma option pop
  528. # 33 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  529. # 42 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 3
  530. #pragma region Application Family or OneCore Family
  531. # 187 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 3
  532. #pragma warning(disable: 4514)
  533.  
  534. #pragma warning(disable: 4103)
  535.  
  536.  
  537.  
  538.  
  539. #pragma warning(disable: 4001)
  540. #pragma warning(disable: 4201)
  541. #pragma warning(disable: 4214)
  542.  
  543.  
  544. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\excpt.h" 1 3
  545. # 12 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\excpt.h" 3
  546. #pragma option push -b -a8 -pc -A-
  547. # 50 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\excpt.h" 3
  548. typedef enum _EXCEPTION_DISPOSITION {
  549.     ExceptionContinueExecution,
  550.     ExceptionContinueSearch,
  551.     ExceptionNestedException,
  552.     ExceptionCollidedUnwind
  553. } EXCEPTION_DISPOSITION;
  554. # 67 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\excpt.h" 3
  555. struct _EXCEPTION_RECORD;
  556. struct _CONTEXT;
  557.  
  558. EXCEPTION_DISPOSITION __cdecl _except_handler (
  559.         struct _EXCEPTION_RECORD *ExceptionRecord,
  560.         void *EstablisherFrame,
  561.         struct _CONTEXT *ContextRecord,
  562.         void *DispatcherContext
  563.         );
  564. # 117 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\excpt.h" 3
  565. int __exception_code();
  566. struct _EXCEPTION_RECORD * __exception_info();
  567.  
  568.  
  569.  
  570. int AbnormalTermination(void);
  571. # 187 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\excpt.h" 3
  572. #pragma option pop
  573. # 198 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  574.  
  575. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\DE\\stdarg.h" 1 3
  576. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\DE\\stdarg.h" 3
  577. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  578. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\DE\\stdarg.h" 2 3
  579. # 35 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\DE\\stdarg.h" 3
  580. typedef __builtin_va_list va_list;
  581. # 199 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  582.  
  583.  
  584.  
  585. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windef.h" 1 3
  586. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windef.h" 3
  587. #pragma option push -b -a8 -pc -A- -w-pun
  588. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windef.h" 3
  589. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 1 3
  590. # 11 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 3
  591. #pragma option push -b -a8 -pc -A- -w-pun
  592.  
  593.  
  594.  
  595.  
  596. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings.h" 1 3
  597.  
  598. #pragma option push -b -a8 -pc -A- -w-pun
  599. # 62 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings.h" 3
  600. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sal.h" 1 3
  601. #pragma option push -b -a8 -pc -A- -w-pun
  602. # 718 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sal.h" 3
  603. #pragma region Input Buffer SAL 1 compatibility macros
  604. # 1482 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sal.h" 3
  605. #pragma endregion Input Buffer SAL 1 compatibility macros
  606. # 2995 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sal.h" 3
  607. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ConcurrencySal.h" 1 3
  608. # 17 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ConcurrencySal.h" 3
  609. #pragma option push -b -a8 -pc -A- -w-pun
  610. # 358 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ConcurrencySal.h" 3
  611. #pragma option pop
  612. # 2995 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sal.h" 2 3
  613.  
  614.  
  615. #pragma option pop
  616. # 62 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings.h" 2 3
  617. # 675 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings.h" 3
  618. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings_strict.h" 1 3
  619. #pragma option push -b -a8 -pc -A- -w-pun
  620. # 1192 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings_strict.h" 3
  621. #pragma option pop
  622. # 675 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings.h" 2 3
  623. # 696 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings.h" 3
  624. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\driverspecs.h" 1 3
  625. # 118 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\driverspecs.h" 3
  626. #pragma option push -b -a8 -pc -A- -w-pun
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/sdv_driverspecs.h" 1 3
  636. #pragma option push -b -a8 -pc -A- -w-pun
  637. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/sdv_driverspecs.h" 3
  638. #pragma option pop
  639. # 126 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\driverspecs.h" 2 3
  640. # 901 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\driverspecs.h" 3
  641. #pragma option pop
  642. # 696 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings.h" 2 3
  643. # 708 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings.h" 3
  644. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\no_sal2.h" 1 3
  645. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\no_sal2.h" 3
  646. #pragma option push -b -a8 -pc -A- -w-pun
  647. # 1043 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\no_sal2.h" 3
  648. #pragma option pop
  649. # 708 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\specstrings.h" 2 3
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657. #pragma option pop
  658. # 15 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 2 3
  659.  
  660.  
  661.  
  662.  
  663. #pragma region Application Family or OneCore Family
  664. # 52 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 3
  665. typedef unsigned long ULONG;
  666. typedef ULONG *PULONG;
  667. typedef unsigned short USHORT;
  668. typedef USHORT *PUSHORT;
  669. typedef unsigned char UCHAR;
  670. typedef UCHAR *PUCHAR;
  671. typedef char *PSZ;
  672. # 157 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 3
  673. typedef unsigned long DWORD;
  674. typedef int BOOL;
  675. typedef unsigned char BYTE;
  676. typedef unsigned short WORD;
  677. typedef float FLOAT;
  678. typedef FLOAT *PFLOAT;
  679. typedef BOOL *PBOOL;
  680. typedef BOOL *LPBOOL;
  681. typedef BYTE *PBYTE;
  682. typedef BYTE *LPBYTE;
  683. typedef int *PINT;
  684. typedef int *LPINT;
  685. typedef WORD *PWORD;
  686. typedef WORD *LPWORD;
  687. typedef long *LPLONG;
  688. typedef DWORD *PDWORD;
  689. typedef DWORD *LPDWORD;
  690. typedef void *LPVOID;
  691. typedef const void *LPCVOID;
  692.  
  693. typedef int INT;
  694. typedef unsigned int UINT;
  695. typedef unsigned int *PUINT;
  696.  
  697.  
  698.  
  699.  
  700. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 1 3
  701. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  702. #pragma option push -b -a8 -pc -A- -w-pun -w-inl
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710. #pragma warning(disable: 4200)
  711. #pragma warning(disable: 4201)
  712. #pragma warning(disable: 4214)
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\ctype.h" 1 3
  720. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\ctype.h" 3
  721. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  722. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\ctype.h" 2 3
  723.  
  724.  
  725.  
  726.  
  727. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mbctype.h" 1 3
  728. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mbctype.h" 3
  729. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  730. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mbctype.h" 2 3
  731. # 32 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mbctype.h" 3
  732. extern unsigned char __cdecl _mbctype[];
  733. # 53 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mbctype.h" 3
  734. int __cdecl _setmbcp(int newCodePage);
  735. int __cdecl _getmbcp(void);
  736.  
  737. int __cdecl _ismbbkalpha(unsigned int __c);
  738. int __cdecl _ismbbkpunct(unsigned int __c);
  739. int __cdecl _ismbbkana (unsigned int __c);
  740. int __cdecl _ismbbalpha (unsigned int __c);
  741. int __cdecl _ismbbpunct (unsigned int __c);
  742. int __cdecl _ismbbalnum (unsigned int __c);
  743. int __cdecl _ismbbprint (unsigned int __c);
  744. int __cdecl _ismbbgraph (unsigned int __c);
  745.  
  746.  
  747.  
  748. int __cdecl _ismbblead (unsigned int __c);
  749. int __cdecl _ismbbtrail (unsigned int __c);
  750. int __cdecl _ismbslead (const unsigned char *__s1, const unsigned char *__s2);
  751. int __cdecl _ismbstrail (const unsigned char *__s1, const unsigned char *__s2);
  752. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\ctype.h" 2 3
  753. # 47 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\ctype.h" 3
  754. extern unsigned short __cdecl _chartype[ 257 ];
  755. extern unsigned char __cdecl _lower[ 256 ];
  756. extern unsigned char __cdecl _upper[ 256 ];
  757.  
  758. int __cdecl isalnum (int __c);
  759. int __cdecl isalpha (int __c);
  760. int __cdecl isblank (int __c);
  761. int __cdecl iscntrl (int __c);
  762. int __cdecl isdigit (int __c);
  763. int __cdecl isgraph (int __c);
  764. int __cdecl islower (int __c);
  765. int __cdecl isprint (int __c);
  766. int __cdecl ispunct (int __c);
  767. int __cdecl isspace (int __c);
  768. int __cdecl isupper (int __c);
  769. int __cdecl isxdigit(int __c);
  770. int __cdecl isascii (int __c);
  771.  
  772. int __cdecl iswalnum (wint_t __c);
  773. int __cdecl iswalpha (wint_t __c);
  774. int __cdecl iswblank (wint_t __c);
  775. int __cdecl iswcntrl (wint_t __c);
  776. int __cdecl iswdigit (wint_t __c);
  777. int __cdecl iswgraph (wint_t __c);
  778. int __cdecl iswlower (wint_t __c);
  779. int __cdecl iswprint (wint_t __c);
  780. int __cdecl iswpunct (wint_t __c);
  781. int __cdecl iswspace (wint_t __c);
  782. int __cdecl iswupper (wint_t __c);
  783. int __cdecl iswxdigit(wint_t __c);
  784. int __cdecl iswascii (wint_t __c);
  785. # 148 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\ctype.h" 3
  786. int __cdecl _ltolower(int __ch);
  787. int __cdecl _ltolower_lcid(int __ch, unsigned long __handle);
  788. int __cdecl _ltoupper(int __ch);
  789. int __cdecl _ltoupper_lcid(int __ch, unsigned long __handle);
  790. wchar_t __cdecl _ltowupper(wchar_t __ch);
  791. wchar_t __cdecl _ltowlower(wchar_t __ch);
  792. # 175 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\ctype.h" 3
  793. #pragma option push -vi
  794.  
  795.  
  796. __inline
  797.  
  798. int __cdecl tolower(int __ch) { return _ltolower(__ch); }
  799.  
  800.  
  801. __inline
  802.  
  803. int __cdecl toupper(int __ch) { return _ltoupper(__ch); }
  804.  
  805.  
  806. __inline
  807.  
  808. wint_t __cdecl towlower(wint_t __ch) { return _ltowlower(__ch); }
  809.  
  810.  
  811. __inline
  812.  
  813. wint_t __cdecl towupper(wint_t __ch) { return _ltowupper(__ch); }
  814.  
  815. #pragma option pop
  816. # 35 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  817. # 87 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  818. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\kernelspecs.h" 1 3
  819. # 34 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\kernelspecs.h" 3
  820. #pragma option push -b -a8 -pc -A- -w-pun
  821. # 263 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\kernelspecs.h" 3
  822. #pragma option pop
  823. # 87 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  824. # 396 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  825. typedef void *PVOID;
  826. typedef void * PVOID64;
  827. # 438 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  828. typedef char CHAR;
  829. typedef short SHORT;
  830. typedef long LONG;
  831.  
  832. typedef int INT;
  833. # 451 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  834. typedef wchar_t WCHAR;
  835.  
  836.  
  837.  
  838.  
  839.  
  840. typedef WCHAR *PWCHAR, *LPWCH, *PWCH;
  841. typedef const WCHAR *LPCWCH, *PCWCH;
  842.  
  843. typedef WCHAR *NWPSTR, *LPWSTR, *PWSTR;
  844. typedef PWSTR *PZPWSTR;
  845. typedef const PWSTR *PCZPWSTR;
  846. typedef WCHAR *LPUWSTR, *PUWSTR;
  847. typedef const WCHAR *LPCWSTR, *PCWSTR;
  848. typedef PCWSTR *PZPCWSTR;
  849. typedef const PCWSTR *PCZPCWSTR;
  850. typedef const WCHAR *LPCUWSTR, *PCUWSTR;
  851.  
  852. typedef WCHAR *PZZWSTR;
  853. typedef const WCHAR *PCZZWSTR;
  854. typedef WCHAR *PUZZWSTR;
  855. typedef const WCHAR *PCUZZWSTR;
  856.  
  857. typedef WCHAR *PNZWCH;
  858. typedef const WCHAR *PCNZWCH;
  859. typedef WCHAR *PUNZWCH;
  860. typedef const WCHAR *PCUNZWCH;
  861.  
  862.  
  863.  
  864. typedef const WCHAR *LPCWCHAR, *PCWCHAR;
  865. typedef const WCHAR *LPCUWCHAR, *PCUWCHAR;
  866.  
  867.  
  868.  
  869.  
  870.  
  871. typedef unsigned long UCSCHAR;
  872. # 508 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  873. typedef UCSCHAR *PUCSCHAR;
  874. typedef const UCSCHAR *PCUCSCHAR;
  875.  
  876. typedef UCSCHAR *PUCSSTR;
  877. typedef UCSCHAR *PUUCSSTR;
  878.  
  879. typedef const UCSCHAR *PCUCSSTR;
  880. typedef const UCSCHAR *PCUUCSSTR;
  881.  
  882. typedef UCSCHAR *PUUCSCHAR;
  883. typedef const UCSCHAR *PCUUCSCHAR;
  884.  
  885.  
  886.  
  887.  
  888.  
  889.  
  890.  
  891. typedef CHAR *PCHAR, *LPCH, *PCH;
  892. typedef const CHAR *LPCCH, *PCCH;
  893.  
  894. typedef CHAR *NPSTR, *LPSTR, *PSTR;
  895. typedef PSTR *PZPSTR;
  896. typedef const PSTR *PCZPSTR;
  897. typedef const CHAR *LPCSTR, *PCSTR;
  898. typedef PCSTR *PZPCSTR;
  899. typedef const PCSTR *PCZPCSTR;
  900.  
  901. typedef CHAR *PZZSTR;
  902. typedef const CHAR *PCZZSTR;
  903.  
  904. typedef CHAR *PNZCH;
  905. typedef const CHAR *PCNZCH;
  906. # 574 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  907. typedef char TCHAR, *PTCHAR;
  908. typedef unsigned char TBYTE , *PTBYTE ;
  909.  
  910.  
  911.  
  912. typedef LPCH LPTCH, PTCH;
  913. typedef LPCCH LPCTCH, PCTCH;
  914. typedef LPSTR PTSTR, LPTSTR, PUTSTR, LPUTSTR;
  915. typedef LPCSTR PCTSTR, LPCTSTR, PCUTSTR, LPCUTSTR;
  916. typedef PZZSTR PZZTSTR, PUZZTSTR;
  917. typedef PCZZSTR PCZZTSTR, PCUZZTSTR;
  918. typedef PZPSTR PZPTSTR;
  919. typedef PNZCH PNZTCH, PUNZTCH;
  920. typedef PCNZCH PCNZTCH, PCUNZTCH;
  921.  
  922.  
  923.  
  924.  
  925.  
  926.  
  927. typedef SHORT *PSHORT;
  928. typedef LONG *PLONG;
  929. # 604 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  930. typedef struct _PROCESSOR_NUMBER {
  931.     WORD Group;
  932.     BYTE Number;
  933.     BYTE Reserved;
  934. } PROCESSOR_NUMBER, *PPROCESSOR_NUMBER;
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941. typedef struct _GROUP_AFFINITY {
  942.     KAFFINITY Mask;
  943.     WORD Group;
  944.     WORD Reserved[3];
  945. } GROUP_AFFINITY, *PGROUP_AFFINITY;
  946. # 640 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  947. typedef void *HANDLE;
  948. # 650 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  949. typedef HANDLE *PHANDLE;
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957. typedef BYTE FCHAR;
  958. typedef WORD FSHORT;
  959. typedef DWORD FLONG;
  960. # 671 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  961. typedef long HRESULT;
  962. # 738 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  963. typedef char CCHAR;
  964. typedef DWORD LCID;
  965. typedef PDWORD PLCID;
  966. typedef WORD LANGID;
  967. # 750 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  968. typedef enum {
  969.     UNSPECIFIED_COMPARTMENT_ID = 0,
  970.     DEFAULT_COMPARTMENT_ID
  971. } COMPARTMENT_ID, *PCOMPARTMENT_ID;
  972. # 781 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  973. typedef struct _FLOAT128 {
  974.     __int64 LowPart;
  975.     __int64 HighPart;
  976. } FLOAT128;
  977.  
  978. typedef FLOAT128 *PFLOAT128;
  979. # 796 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  980. typedef __int64 LONGLONG;
  981. typedef unsigned __int64 ULONGLONG;
  982. # 818 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  983. typedef LONGLONG *PLONGLONG;
  984. typedef ULONGLONG *PULONGLONG;
  985.  
  986.  
  987.  
  988. typedef LONGLONG USN;
  989.  
  990.  
  991.  
  992.  
  993.  
  994.  
  995. typedef union _LARGE_INTEGER {
  996.     struct {
  997.         DWORD LowPart;
  998.         LONG HighPart;
  999.     } ;
  1000.     struct {
  1001.         DWORD LowPart;
  1002.         LONG HighPart;
  1003.     } u;
  1004.     LONGLONG QuadPart;
  1005. } LARGE_INTEGER;
  1006.  
  1007.  
  1008. typedef LARGE_INTEGER *PLARGE_INTEGER;
  1009.  
  1010.  
  1011.  
  1012.  
  1013.  
  1014.  
  1015. typedef union _ULARGE_INTEGER {
  1016.     struct {
  1017.         DWORD LowPart;
  1018.         DWORD HighPart;
  1019.     } ;
  1020.     struct {
  1021.         DWORD LowPart;
  1022.         DWORD HighPart;
  1023.     } u;
  1024.     ULONGLONG QuadPart;
  1025. } ULARGE_INTEGER;
  1026.  
  1027.  
  1028. typedef ULARGE_INTEGER *PULARGE_INTEGER;
  1029.  
  1030.  
  1031.  
  1032.  
  1033.  
  1034. typedef LONG_PTR RTL_REFERENCE_COUNT, *PRTL_REFERENCE_COUNT;
  1035. typedef LONG RTL_REFERENCE_COUNT32, *PRTL_REFERENCE_COUNT32;
  1036. # 880 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1037. typedef struct _LUID {
  1038.     DWORD LowPart;
  1039.     LONG HighPart;
  1040. } LUID, *PLUID;
  1041.  
  1042.  
  1043. typedef ULONGLONG DWORDLONG;
  1044. typedef DWORDLONG *PDWORDLONG;
  1045. # 1130 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1046. typedef BYTE BOOLEAN;
  1047. typedef BOOLEAN *PBOOLEAN;
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053. typedef struct _LIST_ENTRY {
  1054.    struct _LIST_ENTRY *Flink;
  1055.    struct _LIST_ENTRY *Blink;
  1056. } LIST_ENTRY, *PLIST_ENTRY, * PRLIST_ENTRY;
  1057.  
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063. typedef struct _SINGLE_LIST_ENTRY {
  1064.     struct _SINGLE_LIST_ENTRY *Next;
  1065. } SINGLE_LIST_ENTRY, *PSINGLE_LIST_ENTRY;
  1066. # 1158 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1067. typedef struct LIST_ENTRY32 {
  1068.     DWORD Flink;
  1069.     DWORD Blink;
  1070. } LIST_ENTRY32;
  1071. typedef LIST_ENTRY32 *PLIST_ENTRY32;
  1072.  
  1073. typedef struct LIST_ENTRY64 {
  1074.     ULONGLONG Flink;
  1075.     ULONGLONG Blink;
  1076. } LIST_ENTRY64;
  1077. typedef LIST_ENTRY64 *PLIST_ENTRY64;
  1078.  
  1079.  
  1080.  
  1081. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\guiddef.h" 1 3
  1082. #pragma option push -b -a8 -pc -A- -w-pun
  1083. # 217 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\guiddef.h" 3
  1084. #pragma option pop
  1085. # 1171 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091. typedef struct _OBJECTID {
  1092.     GUID Lineage;
  1093.     DWORD Uniquifier;
  1094. } OBJECTID;
  1095. # 1401 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1096. typedef
  1097.  
  1098.  
  1099. EXCEPTION_DISPOSITION
  1100. __stdcall
  1101. EXCEPTION_ROUTINE (
  1102.             struct _EXCEPTION_RECORD *ExceptionRecord,
  1103.          PVOID EstablisherFrame,
  1104.             struct _CONTEXT *ContextRecord,
  1105.          PVOID DispatcherContext
  1106.     );
  1107.  
  1108. typedef EXCEPTION_ROUTINE *PEXCEPTION_ROUTINE;
  1109. # 2540 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1110. typedef ULONG_PTR KSPIN_LOCK;
  1111. typedef KSPIN_LOCK *PKSPIN_LOCK;
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119. typedef struct __attribute__((aligned(16))) _M128A {
  1120.     ULONGLONG Low;
  1121.     LONGLONG High;
  1122. } M128A, *PM128A;
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128. typedef struct __attribute__((aligned(16))) _XSAVE_FORMAT {
  1129.     WORD ControlWord;
  1130.     WORD StatusWord;
  1131.     BYTE TagWord;
  1132.     BYTE Reserved1;
  1133.     WORD ErrorOpcode;
  1134.     DWORD ErrorOffset;
  1135.     WORD ErrorSelector;
  1136.     WORD Reserved2;
  1137.     DWORD DataOffset;
  1138.     WORD DataSelector;
  1139.     WORD Reserved3;
  1140.     DWORD MxCsr;
  1141.     DWORD MxCsr_Mask;
  1142.     M128A FloatRegisters[8];
  1143. # 2581 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1144.     M128A XmmRegisters[8];
  1145.     BYTE Reserved4[224];
  1146.  
  1147.  
  1148.  
  1149. } XSAVE_FORMAT, *PXSAVE_FORMAT;
  1150.  
  1151.  
  1152.  
  1153. typedef struct __attribute__((aligned(8))) _XSAVE_AREA_HEADER {
  1154.     DWORD64 Mask;
  1155.     DWORD64 CompactionMask;
  1156.     DWORD64 Reserved2[6];
  1157. } XSAVE_AREA_HEADER, *PXSAVE_AREA_HEADER;
  1158.  
  1159. typedef struct __attribute__((aligned(16))) _XSAVE_AREA {
  1160.     XSAVE_FORMAT LegacyState;
  1161.     XSAVE_AREA_HEADER Header;
  1162. } XSAVE_AREA, *PXSAVE_AREA;
  1163.  
  1164. typedef struct _XSTATE_CONTEXT {
  1165.     DWORD64 Mask;
  1166.     DWORD Length;
  1167.     DWORD Reserved1;
  1168.                                    PXSAVE_AREA Area;
  1169.  
  1170.  
  1171.     DWORD Reserved2;
  1172.  
  1173.  
  1174.     PVOID Buffer;
  1175.  
  1176.  
  1177.     DWORD Reserved3;
  1178.  
  1179.  
  1180. } XSTATE_CONTEXT, *PXSTATE_CONTEXT;
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186. typedef struct _SCOPE_TABLE_AMD64 {
  1187.     DWORD Count;
  1188.     struct {
  1189.         DWORD BeginAddress;
  1190.         DWORD EndAddress;
  1191.         DWORD HandlerAddress;
  1192.         DWORD JumpTarget;
  1193.     } ScopeRecord[1];
  1194. } SCOPE_TABLE_AMD64, *PSCOPE_TABLE_AMD64;
  1195. # 4230 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1196. typedef struct _SCOPE_TABLE_ARM {
  1197.     DWORD Count;
  1198.     struct
  1199.     {
  1200.         DWORD BeginAddress;
  1201.         DWORD EndAddress;
  1202.         DWORD HandlerAddress;
  1203.         DWORD JumpTarget;
  1204.     } ScopeRecord[1];
  1205. } SCOPE_TABLE_ARM, *PSCOPE_TABLE_ARM;
  1206. # 5202 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1207. typedef struct _SCOPE_TABLE_ARM64 {
  1208.     DWORD Count;
  1209.     struct
  1210.     {
  1211.         DWORD BeginAddress;
  1212.         DWORD EndAddress;
  1213.         DWORD HandlerAddress;
  1214.         DWORD JumpTarget;
  1215.     } ScopeRecord[1];
  1216. } SCOPE_TABLE_ARM64, *PSCOPE_TABLE_ARM64;
  1217. # 6389 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1218. typedef struct _KNONVOLATILE_CONTEXT_POINTERS_ARM64 {
  1219.  
  1220.     PDWORD64 X19;
  1221.     PDWORD64 X20;
  1222.     PDWORD64 X21;
  1223.     PDWORD64 X22;
  1224.     PDWORD64 X23;
  1225.     PDWORD64 X24;
  1226.     PDWORD64 X25;
  1227.     PDWORD64 X26;
  1228.     PDWORD64 X27;
  1229.     PDWORD64 X28;
  1230.     PDWORD64 Fp;
  1231.     PDWORD64 Lr;
  1232.  
  1233.     PDWORD64 D8;
  1234.     PDWORD64 D9;
  1235.     PDWORD64 D10;
  1236.     PDWORD64 D11;
  1237.     PDWORD64 D12;
  1238.     PDWORD64 D13;
  1239.     PDWORD64 D14;
  1240.     PDWORD64 D15;
  1241.  
  1242. } KNONVOLATILE_CONTEXT_POINTERS_ARM64, *PKNONVOLATILE_CONTEXT_POINTERS_ARM64;
  1243. # 6499 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1244. #pragma warning(push)
  1245. #pragma warning(disable: 4793)
  1246. # 6519 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1247. #pragma warning(pop)
  1248. # 6629 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1249. #pragma warning(default: 4164)
  1250. # 6752 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1251. BOOLEAN
  1252. _BitScanForward (
  1253.           DWORD *Index,
  1254.          DWORD Mask
  1255.     );
  1256.  
  1257.  
  1258. BOOLEAN
  1259. _BitScanReverse (
  1260.           DWORD *Index,
  1261.          DWORD Mask
  1262.     );
  1263. # 7105 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1264. CHAR
  1265. _InterlockedExchange8 (
  1266.                                   CHAR volatile *Target,
  1267.          CHAR Value
  1268.     );
  1269.  
  1270. SHORT
  1271. _InterlockedExchange16 (
  1272.                                   SHORT volatile *Destination,
  1273.          SHORT ExChange
  1274.     );
  1275. # 7147 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1276. char
  1277. _InterlockedExchangeAdd8 (
  1278.                                   char volatile * _Addend,
  1279.          char _Value
  1280.     );
  1281.  
  1282. char
  1283. _InterlockedAnd8 (
  1284.                                   char volatile *Destination,
  1285.          char Value
  1286.     );
  1287.  
  1288. char
  1289. _InterlockedOr8 (
  1290.                                   char volatile *Destination,
  1291.          char Value
  1292.     );
  1293.  
  1294. char
  1295. _InterlockedXor8 (
  1296.                                   char volatile *Destination,
  1297.          char Value
  1298.     );
  1299.  
  1300. SHORT
  1301. _InterlockedAnd16 (
  1302.                                   SHORT volatile *Destination,
  1303.          SHORT Value
  1304.     );
  1305.  
  1306. SHORT
  1307. _InterlockedXor16(
  1308.                                   SHORT volatile *Destination,
  1309.          SHORT Value
  1310.     );
  1311.  
  1312. SHORT
  1313. _InterlockedCompareExchange16 (
  1314.                                   SHORT volatile *Destination,
  1315.          SHORT ExChange,
  1316.          SHORT Comperand
  1317.     );
  1318.  
  1319. SHORT
  1320. _InterlockedOr16 (
  1321.                                   SHORT volatile *Destination,
  1322.          SHORT Value
  1323.     );
  1324.  
  1325. SHORT
  1326. _InterlockedIncrement16 (
  1327.                                   SHORT volatile *Destination
  1328.     );
  1329.  
  1330. SHORT
  1331. _InterlockedDecrement16 (
  1332.                                   SHORT volatile *Destination
  1333.     );
  1334. # 7228 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1335. __inline
  1336. LONG64
  1337. _InlineInterlockedAnd64 (
  1338.                                   LONG64 volatile *Destination,
  1339.          LONG64 Value
  1340.     )
  1341. {
  1342.     LONG64 Old;
  1343.  
  1344.     do {
  1345.         Old = *Destination;
  1346.     } while (_InterlockedCompareExchange64(Destination,
  1347.                                           Old & Value,
  1348.                                           Old) != Old);
  1349.  
  1350.     return Old;
  1351. }
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358. __inline
  1359. LONG64
  1360. _InlineInterlockedAdd64 (
  1361.                                   LONG64 volatile *Addend,
  1362.          LONG64 Value
  1363.     )
  1364. {
  1365.     LONG64 Old;
  1366.  
  1367.     do {
  1368.         Old = *Addend;
  1369.     } while (_InterlockedCompareExchange64(Addend,
  1370.                                           Old + Value,
  1371.                                           Old) != Old);
  1372.  
  1373.     return Old + Value;
  1374. }
  1375. # 7303 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1376. LONGLONG
  1377. __inline
  1378. _InlineInterlockedOr64 (
  1379.                                   LONGLONG volatile *Destination,
  1380.          LONGLONG Value
  1381.     )
  1382. {
  1383.     LONGLONG Old;
  1384.  
  1385.     do {
  1386.         Old = *Destination;
  1387.     } while (_InterlockedCompareExchange64(Destination,
  1388.                                           Old | Value,
  1389.                                           Old) != Old);
  1390.  
  1391.     return Old;
  1392. }
  1393.  
  1394.  
  1395.  
  1396. __inline
  1397. LONG64
  1398. _InlineInterlockedXor64 (
  1399.                                   LONG64 volatile *Destination,
  1400.          LONG64 Value
  1401.     )
  1402. {
  1403.     LONG64 Old;
  1404.  
  1405.     do {
  1406.         Old = *Destination;
  1407.     } while (_InterlockedCompareExchange64(Destination,
  1408.                                           Old ^ Value,
  1409.                                           Old) != Old);
  1410.  
  1411.     return Old;
  1412. }
  1413.  
  1414.  
  1415.  
  1416. LONGLONG
  1417. __inline
  1418. _InlineInterlockedIncrement64 (
  1419.                                   LONGLONG volatile *Addend
  1420.     )
  1421. {
  1422.     LONGLONG Old;
  1423.  
  1424.     do {
  1425.         Old = *Addend;
  1426.     } while (_InterlockedCompareExchange64(Addend,
  1427.                                           Old + 1,
  1428.                                           Old) != Old);
  1429.  
  1430.     return Old + 1;
  1431. }
  1432.  
  1433.  
  1434.  
  1435.  
  1436.  
  1437.  
  1438. __inline
  1439. LONGLONG
  1440. _InlineInterlockedDecrement64 (
  1441.                                   LONGLONG volatile *Addend
  1442.     )
  1443. {
  1444.     LONGLONG Old;
  1445.  
  1446.     do {
  1447.         Old = *Addend;
  1448.     } while (_InterlockedCompareExchange64(Addend,
  1449.                                           Old - 1,
  1450.                                           Old) != Old);
  1451.  
  1452.     return Old - 1;
  1453. }
  1454.  
  1455.  
  1456.  
  1457.  
  1458.  
  1459.  
  1460. __inline
  1461. LONGLONG
  1462. _InlineInterlockedExchange64 (
  1463.                                   LONGLONG volatile *Target,
  1464.          LONGLONG Value
  1465.     )
  1466. {
  1467.     LONGLONG Old;
  1468.  
  1469.     do {
  1470.         Old = *Target;
  1471.     } while (_InterlockedCompareExchange64(Target,
  1472.                                           Value,
  1473.                                           Old) != Old);
  1474.  
  1475.     return Old;
  1476. }
  1477.  
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483. __inline
  1484. LONGLONG
  1485. _InlineInterlockedExchangeAdd64 (
  1486.                                   LONGLONG volatile *Addend,
  1487.          LONGLONG Value
  1488.     )
  1489. {
  1490.     LONGLONG Old;
  1491.  
  1492.     do {
  1493.         Old = *Addend;
  1494.     } while (_InterlockedCompareExchange64(Addend,
  1495.                                           Old + Value,
  1496.                                           Old) != Old);
  1497.  
  1498.     return Old;
  1499. }
  1500. # 7676 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1501. PVOID GetFiberData( void );
  1502. PVOID GetCurrentFiber( void );
  1503. # 7747 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1504. typedef struct _FLOATING_SAVE_AREA {
  1505.     DWORD ControlWord;
  1506.     DWORD StatusWord;
  1507.     DWORD TagWord;
  1508.     DWORD ErrorOffset;
  1509.     DWORD ErrorSelector;
  1510.     DWORD DataOffset;
  1511.     DWORD DataSelector;
  1512.     BYTE RegisterArea[80];
  1513.     DWORD Spare0;
  1514. } FLOATING_SAVE_AREA;
  1515.  
  1516. typedef FLOATING_SAVE_AREA *PFLOATING_SAVE_AREA;
  1517. # 7769 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1518. typedef char __C_ASSERT__[(sizeof(XSAVE_FORMAT) == 512)?1:-1];
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.  
  1526. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack4.h" 1 3
  1527. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack4.h" 3
  1528. #pragma warning(disable: 4103)
  1529.  
  1530. #pragma pack(push,4)
  1531. # 7776 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  1532. # 7788 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1533. typedef struct _CONTEXT {
  1534. # 7808 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1535.     DWORD ContextFlags;
  1536.  
  1537.  
  1538.  
  1539.  
  1540.  
  1541.  
  1542.  
  1543.     DWORD Dr0;
  1544.     DWORD Dr1;
  1545.     DWORD Dr2;
  1546.     DWORD Dr3;
  1547.     DWORD Dr6;
  1548.     DWORD Dr7;
  1549.  
  1550.  
  1551.  
  1552.  
  1553.  
  1554.  
  1555.     FLOATING_SAVE_AREA FloatSave;
  1556.  
  1557.  
  1558.  
  1559.  
  1560.  
  1561.  
  1562.     DWORD SegGs;
  1563.     DWORD SegFs;
  1564.     DWORD SegEs;
  1565.     DWORD SegDs;
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.     DWORD Edi;
  1573.     DWORD Esi;
  1574.     DWORD Ebx;
  1575.     DWORD Edx;
  1576.     DWORD Ecx;
  1577.     DWORD Eax;
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.     DWORD Ebp;
  1585.     DWORD Eip;
  1586.     DWORD SegCs;
  1587.     DWORD EFlags;
  1588.     DWORD Esp;
  1589.     DWORD SegSs;
  1590.  
  1591.  
  1592.  
  1593.  
  1594.  
  1595.  
  1596.  
  1597.     BYTE ExtendedRegisters[512];
  1598.  
  1599. } CONTEXT;
  1600.  
  1601. typedef CONTEXT *PCONTEXT;
  1602.  
  1603.  
  1604. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/poppack.h" 1 3
  1605. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/poppack.h" 3
  1606. #pragma warning(disable: 4103)
  1607.  
  1608. #pragma pack(pop)
  1609. # 7876 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  1610. # 7886 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1611. typedef struct _LDT_ENTRY {
  1612.     WORD LimitLow;
  1613.     WORD BaseLow;
  1614.     union {
  1615.         struct {
  1616.             BYTE BaseMid;
  1617.             BYTE Flags1;
  1618.             BYTE Flags2;
  1619.             BYTE BaseHi;
  1620.         } Bytes;
  1621.         struct {
  1622.             DWORD BaseMid : 8;
  1623.             DWORD Type : 5;
  1624.             DWORD Dpl : 2;
  1625.             DWORD Pres : 1;
  1626.             DWORD LimitHi : 4;
  1627.             DWORD Sys : 1;
  1628.             DWORD Reserved_0 : 1;
  1629.             DWORD Default_Big : 1;
  1630.             DWORD Granularity : 1;
  1631.             DWORD BaseHi : 8;
  1632.         } Bits;
  1633.     } HighWord;
  1634. } LDT_ENTRY, *PLDT_ENTRY;
  1635. # 7923 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1636. __inline
  1637. CHAR
  1638. ReadAcquire8 (
  1639.                                CHAR const volatile *Source
  1640.     )
  1641.  
  1642. {
  1643.  
  1644.     CHAR Value;
  1645.  
  1646.     Value = *Source;
  1647.     return Value;
  1648. }
  1649.  
  1650. __inline
  1651. CHAR
  1652. ReadNoFence8 (
  1653.                                CHAR const volatile *Source
  1654.     )
  1655.  
  1656. {
  1657.  
  1658.     CHAR Value;
  1659.  
  1660.     Value = *Source;
  1661.     return Value;
  1662. }
  1663.  
  1664. __inline
  1665. void
  1666. WriteRelease8 (
  1667.                                 CHAR volatile *Destination,
  1668.          CHAR Value
  1669.     )
  1670.  
  1671. {
  1672.  
  1673.     *Destination = Value;
  1674.     return;
  1675. }
  1676.  
  1677. __inline
  1678. void
  1679. WriteNoFence8 (
  1680.                                 CHAR volatile *Destination,
  1681.          CHAR Value
  1682.     )
  1683.  
  1684. {
  1685.  
  1686.     *Destination = Value;
  1687.     return;
  1688. }
  1689.  
  1690. __inline
  1691. SHORT
  1692. ReadAcquire16 (
  1693.                                SHORT const volatile *Source
  1694.     )
  1695.  
  1696. {
  1697.  
  1698.     SHORT Value;
  1699.  
  1700.     Value = *Source;
  1701.     return Value;
  1702. }
  1703.  
  1704. __inline
  1705. SHORT
  1706. ReadNoFence16 (
  1707.                                SHORT const volatile *Source
  1708.     )
  1709.  
  1710. {
  1711.  
  1712.     SHORT Value;
  1713.  
  1714.     Value = *Source;
  1715.     return Value;
  1716. }
  1717.  
  1718. __inline
  1719. void
  1720. WriteRelease16 (
  1721.                                 SHORT volatile *Destination,
  1722.          SHORT Value
  1723.     )
  1724.  
  1725. {
  1726.  
  1727.     *Destination = Value;
  1728.     return;
  1729. }
  1730.  
  1731. __inline
  1732. void
  1733. WriteNoFence16 (
  1734.                                 SHORT volatile *Destination,
  1735.          SHORT Value
  1736.     )
  1737.  
  1738. {
  1739.  
  1740.     *Destination = Value;
  1741.     return;
  1742. }
  1743.  
  1744. __inline
  1745. LONG
  1746. ReadAcquire (
  1747.                                LONG const volatile *Source
  1748.     )
  1749.  
  1750. {
  1751.  
  1752.     LONG Value;
  1753.  
  1754.     Value = *Source;
  1755.     return Value;
  1756. }
  1757.  
  1758. __inline
  1759. LONG
  1760. ReadNoFence (
  1761.                                LONG const volatile *Source
  1762.     )
  1763.  
  1764. {
  1765.  
  1766.     LONG Value;
  1767.  
  1768.     Value = *Source;
  1769.     return Value;
  1770. }
  1771.  
  1772. __inline
  1773. void
  1774. WriteRelease (
  1775.                                 LONG volatile *Destination,
  1776.          LONG Value
  1777.     )
  1778.  
  1779. {
  1780.  
  1781.     *Destination = Value;
  1782.     return;
  1783. }
  1784.  
  1785. __inline
  1786. void
  1787. WriteNoFence (
  1788.                                 LONG volatile *Destination,
  1789.          LONG Value
  1790.     )
  1791.  
  1792. {
  1793.  
  1794.     *Destination = Value;
  1795.     return;
  1796. }
  1797.  
  1798. __inline
  1799. LONG64
  1800. ReadAcquire64 (
  1801.                                LONG64 const volatile *Source
  1802.     )
  1803.  
  1804. {
  1805.  
  1806.     LONG64 Value;
  1807.  
  1808.     Value = *Source;
  1809.     return Value;
  1810. }
  1811.  
  1812. __inline
  1813. LONG64
  1814. ReadNoFence64 (
  1815.                                LONG64 const volatile *Source
  1816.     )
  1817.  
  1818. {
  1819.  
  1820.     LONG64 Value;
  1821.  
  1822.     Value = *Source;
  1823.     return Value;
  1824. }
  1825.  
  1826. __inline
  1827. void
  1828. WriteRelease64 (
  1829.                                 LONG64 volatile *Destination,
  1830.          LONG64 Value
  1831.     )
  1832.  
  1833. {
  1834.  
  1835.     *Destination = Value;
  1836.     return;
  1837. }
  1838.  
  1839. __inline
  1840. void
  1841. WriteNoFence64 (
  1842.                                 LONG64 volatile *Destination,
  1843.          LONG64 Value
  1844.     )
  1845.  
  1846. {
  1847.  
  1848.     *Destination = Value;
  1849.     return;
  1850. }
  1851. # 8149 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  1852. __inline
  1853. CHAR
  1854. ReadRaw8 (
  1855.                                CHAR const volatile *Source
  1856.     )
  1857.  
  1858. {
  1859.  
  1860.     CHAR Value;
  1861.  
  1862.     Value = *(CHAR *)Source;
  1863.     return Value;
  1864. }
  1865.  
  1866. __inline
  1867. void
  1868. WriteRaw8 (
  1869.                                 CHAR volatile *Destination,
  1870.          CHAR Value
  1871.     )
  1872.  
  1873. {
  1874.  
  1875.     *(CHAR *)Destination = Value;
  1876.     return;
  1877. }
  1878.  
  1879. __inline
  1880. SHORT
  1881. ReadRaw16 (
  1882.                                SHORT const volatile *Source
  1883.     )
  1884.  
  1885. {
  1886.  
  1887.     SHORT Value;
  1888.  
  1889.     Value = *(SHORT *)Source;
  1890.     return Value;
  1891. }
  1892.  
  1893. __inline
  1894. void
  1895. WriteRaw16 (
  1896.                                 SHORT volatile *Destination,
  1897.          SHORT Value
  1898.     )
  1899.  
  1900. {
  1901.  
  1902.     *(SHORT *)Destination = Value;
  1903.     return;
  1904. }
  1905.  
  1906. __inline
  1907. LONG
  1908. ReadRaw (
  1909.                                LONG const volatile *Source
  1910.     )
  1911.  
  1912. {
  1913.  
  1914.     LONG Value;
  1915.  
  1916.     Value = *(LONG *)Source;
  1917.     return Value;
  1918. }
  1919.  
  1920. __inline
  1921. void
  1922. WriteRaw (
  1923.                                 LONG volatile *Destination,
  1924.          LONG Value
  1925.     )
  1926.  
  1927. {
  1928.  
  1929.     *(LONG *)Destination = Value;
  1930.     return;
  1931. }
  1932.  
  1933. __inline
  1934. LONG64
  1935. ReadRaw64 (
  1936.                                LONG64 const volatile *Source
  1937.     )
  1938.  
  1939. {
  1940.  
  1941.     LONG64 Value;
  1942.  
  1943.     Value = *(LONG64 *)Source;
  1944.     return Value;
  1945. }
  1946.  
  1947. __inline
  1948. void
  1949. WriteRaw64 (
  1950.                                 LONG64 volatile *Destination,
  1951.          LONG64 Value
  1952.     )
  1953.  
  1954. {
  1955.  
  1956.     *(LONG64 *)Destination = Value;
  1957.     return;
  1958. }
  1959.  
  1960.  
  1961.  
  1962.  
  1963.  
  1964. __inline
  1965. BYTE
  1966. ReadUCharAcquire (
  1967.                                BYTE const volatile *Source
  1968.     )
  1969.  
  1970. {
  1971.  
  1972.     return (BYTE )ReadAcquire8((PCHAR)Source);
  1973. }
  1974.  
  1975. __inline
  1976. BYTE
  1977. ReadUCharNoFence (
  1978.                                BYTE const volatile *Source
  1979.     )
  1980.  
  1981. {
  1982.  
  1983.     return (BYTE )ReadNoFence8((PCHAR)Source);
  1984. }
  1985.  
  1986. __inline
  1987. BYTE
  1988. ReadBooleanAcquire (
  1989.                                BOOLEAN const volatile *Source
  1990.     )
  1991.  
  1992. {
  1993.  
  1994.     return (BOOLEAN)ReadAcquire8((PCHAR)Source);
  1995. }
  1996.  
  1997. __inline
  1998. BYTE
  1999. ReadBooleanNoFence (
  2000.                                BOOLEAN const volatile *Source
  2001.     )
  2002.  
  2003. {
  2004.  
  2005.     return (BOOLEAN)ReadNoFence8((PCHAR)Source);
  2006. }
  2007.  
  2008. __inline
  2009. BYTE
  2010. ReadUCharRaw (
  2011.                                BYTE const volatile *Source
  2012.     )
  2013.  
  2014. {
  2015.  
  2016.     return (BYTE )ReadRaw8((PCHAR)Source);
  2017. }
  2018.  
  2019. __inline
  2020. void
  2021. WriteUCharRelease (
  2022.                                 BYTE volatile *Destination,
  2023.          BYTE Value
  2024.     )
  2025.  
  2026. {
  2027.  
  2028.     WriteRelease8((PCHAR)Destination, (CHAR)Value);
  2029.     return;
  2030. }
  2031.  
  2032. __inline
  2033. void
  2034. WriteUCharNoFence (
  2035.                                 BYTE volatile *Destination,
  2036.          BYTE Value
  2037.     )
  2038.  
  2039. {
  2040.  
  2041.     WriteNoFence8((PCHAR)Destination, (CHAR)Value);
  2042.     return;
  2043. }
  2044.  
  2045. __inline
  2046. void
  2047. WriteBooleanRelease (
  2048.                                 BOOLEAN volatile *Destination,
  2049.          BOOLEAN Value
  2050.     )
  2051.  
  2052. {
  2053.  
  2054.     WriteRelease8((PCHAR)Destination, (CHAR)Value);
  2055.     return;
  2056. }
  2057.  
  2058. __inline
  2059. void
  2060. WriteBooleanNoFence (
  2061.                                 BOOLEAN volatile *Destination,
  2062.          BOOLEAN Value
  2063.     )
  2064.  
  2065. {
  2066.  
  2067.     WriteNoFence8((PCHAR)Destination, (CHAR)Value);
  2068.     return;
  2069. }
  2070.  
  2071. __inline
  2072. void
  2073. WriteUCharRaw (
  2074.                                 BYTE volatile *Destination,
  2075.          BYTE Value
  2076.     )
  2077.  
  2078. {
  2079.  
  2080.     WriteRaw8((PCHAR)Destination, (CHAR)Value);
  2081.     return;
  2082. }
  2083.  
  2084. __inline
  2085. WORD
  2086. ReadUShortAcquire (
  2087.                                WORD const volatile *Source
  2088.     )
  2089.  
  2090. {
  2091.  
  2092.     return (WORD )ReadAcquire16((PSHORT)Source);
  2093. }
  2094.  
  2095. __inline
  2096. WORD
  2097. ReadUShortNoFence (
  2098.                                WORD const volatile *Source
  2099.     )
  2100.  
  2101. {
  2102.  
  2103.     return (WORD )ReadNoFence16((PSHORT)Source);
  2104. }
  2105.  
  2106. __inline
  2107. WORD
  2108. ReadUShortRaw (
  2109.                                WORD const volatile *Source
  2110.     )
  2111.  
  2112. {
  2113.  
  2114.     return (WORD )ReadRaw16((PSHORT)Source);
  2115. }
  2116.  
  2117. __inline
  2118. void
  2119. WriteUShortRelease (
  2120.                                 WORD volatile *Destination,
  2121.          WORD Value
  2122.     )
  2123.  
  2124. {
  2125.  
  2126.     WriteRelease16((PSHORT)Destination, (SHORT)Value);
  2127.     return;
  2128. }
  2129.  
  2130. __inline
  2131. void
  2132. WriteUShortNoFence (
  2133.                                 WORD volatile *Destination,
  2134.          WORD Value
  2135.     )
  2136.  
  2137. {
  2138.  
  2139.     WriteNoFence16((PSHORT)Destination, (SHORT)Value);
  2140.     return;
  2141. }
  2142.  
  2143. __inline
  2144. void
  2145. WriteUShortRaw (
  2146.                                 WORD volatile *Destination,
  2147.          WORD Value
  2148.     )
  2149.  
  2150. {
  2151.  
  2152.     WriteRaw16((PSHORT)Destination, (SHORT)Value);
  2153.     return;
  2154. }
  2155.  
  2156. __inline
  2157. DWORD
  2158. ReadULongAcquire (
  2159.                                DWORD const volatile *Source
  2160.     )
  2161.  
  2162. {
  2163.  
  2164.     return (DWORD)ReadAcquire((PLONG)Source);
  2165. }
  2166.  
  2167. __inline
  2168. DWORD
  2169. ReadULongNoFence (
  2170.                                DWORD const volatile *Source
  2171.     )
  2172.  
  2173. {
  2174.  
  2175.     return (DWORD)ReadNoFence((PLONG)Source);
  2176. }
  2177.  
  2178. __inline
  2179. DWORD
  2180. ReadULongRaw (
  2181.                                DWORD const volatile *Source
  2182.     )
  2183.  
  2184. {
  2185.  
  2186.     return (DWORD)ReadRaw((PLONG)Source);
  2187. }
  2188.  
  2189. __inline
  2190. void
  2191. WriteULongRelease (
  2192.                                 DWORD volatile *Destination,
  2193.          DWORD Value
  2194.     )
  2195.  
  2196. {
  2197.  
  2198.     WriteRelease((PLONG)Destination, (LONG)Value);
  2199.     return;
  2200. }
  2201.  
  2202. __inline
  2203. void
  2204. WriteULongNoFence (
  2205.                                 DWORD volatile *Destination,
  2206.          DWORD Value
  2207.     )
  2208.  
  2209. {
  2210.  
  2211.     WriteNoFence((PLONG)Destination, (LONG)Value);
  2212.     return;
  2213. }
  2214.  
  2215. __inline
  2216. void
  2217. WriteULongRaw (
  2218.                                 DWORD volatile *Destination,
  2219.          DWORD Value
  2220.     )
  2221.  
  2222. {
  2223.  
  2224.     WriteRaw((PLONG)Destination, (LONG)Value);
  2225.     return;
  2226. }
  2227.  
  2228. __inline
  2229. DWORD64
  2230. ReadULong64Acquire (
  2231.                                DWORD64 const volatile *Source
  2232.     )
  2233.  
  2234. {
  2235.  
  2236.     return (DWORD64)ReadAcquire64((PLONG64)Source);
  2237. }
  2238.  
  2239. __inline
  2240. DWORD64
  2241. ReadULong64NoFence (
  2242.                                DWORD64 const volatile *Source
  2243.     )
  2244.  
  2245. {
  2246.  
  2247.     return (DWORD64)ReadNoFence64((PLONG64)Source);
  2248. }
  2249.  
  2250. __inline
  2251. DWORD64
  2252. ReadULong64Raw (
  2253.                                DWORD64 const volatile *Source
  2254.     )
  2255.  
  2256. {
  2257.  
  2258.     return (DWORD64)ReadRaw64((PLONG64)Source);
  2259. }
  2260.  
  2261. __inline
  2262. void
  2263. WriteULong64Release (
  2264.                                 DWORD64 volatile *Destination,
  2265.          DWORD64 Value
  2266.     )
  2267.  
  2268. {
  2269.  
  2270.     WriteRelease64((PLONG64)Destination, (LONG64)Value);
  2271.     return;
  2272. }
  2273.  
  2274. __inline
  2275. void
  2276. WriteULong64NoFence (
  2277.                                 DWORD64 volatile *Destination,
  2278.          DWORD64 Value
  2279.     )
  2280.  
  2281. {
  2282.  
  2283.     WriteNoFence64((PLONG64)Destination, (LONG64)Value);
  2284.     return;
  2285. }
  2286.  
  2287. __inline
  2288. void
  2289. WriteULong64Raw (
  2290.                                 DWORD64 volatile *Destination,
  2291.          DWORD64 Value
  2292.     )
  2293.  
  2294. {
  2295.  
  2296.     WriteRaw64((PLONG64)Destination, (LONG64)Value);
  2297.     return;
  2298. }
  2299. # 8611 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2300. __inline
  2301. PVOID
  2302. ReadPointerAcquire (
  2303.                                PVOID const volatile *Source
  2304.     )
  2305.  
  2306. {
  2307.  
  2308.     return (PVOID)ReadAcquire((PLONG)Source);
  2309. }
  2310.  
  2311. __inline
  2312. PVOID
  2313. ReadPointerNoFence (
  2314.                                PVOID const volatile *Source
  2315.     )
  2316.  
  2317. {
  2318.  
  2319.     return (PVOID)ReadNoFence((PLONG)Source);
  2320. }
  2321.  
  2322. __inline
  2323. PVOID
  2324. ReadPointerRaw (
  2325.                                PVOID const volatile *Source
  2326.     )
  2327.  
  2328. {
  2329.  
  2330.     return (PVOID)ReadRaw((PLONG)Source);
  2331. }
  2332.  
  2333. __inline
  2334. void
  2335. WritePointerRelease (
  2336.                                 PVOID volatile *Destination,
  2337.          PVOID Value
  2338.     )
  2339.  
  2340. {
  2341.  
  2342.     WriteRelease((PLONG)Destination, (LONG)Value);
  2343.     return;
  2344. }
  2345.  
  2346. __inline
  2347. void
  2348. WritePointerNoFence (
  2349.                                 PVOID volatile *Destination,
  2350.              PVOID Value
  2351.     )
  2352.  
  2353. {
  2354.  
  2355.     WriteNoFence((PLONG)Destination, (LONG)Value);
  2356.     return;
  2357. }
  2358.  
  2359. __inline
  2360. void
  2361. WritePointerRaw (
  2362.                                 PVOID volatile *Destination,
  2363.              PVOID Value
  2364.     )
  2365.  
  2366. {
  2367.  
  2368.     WriteRaw((PLONG)Destination, (LONG)Value);
  2369.     return;
  2370. }
  2371. # 8847 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2372. typedef struct _WOW64_FLOATING_SAVE_AREA {
  2373.     DWORD ControlWord;
  2374.     DWORD StatusWord;
  2375.     DWORD TagWord;
  2376.     DWORD ErrorOffset;
  2377.     DWORD ErrorSelector;
  2378.     DWORD DataOffset;
  2379.     DWORD DataSelector;
  2380.     BYTE RegisterArea[80];
  2381.     DWORD Cr0NpxState;
  2382. } WOW64_FLOATING_SAVE_AREA;
  2383.  
  2384. typedef WOW64_FLOATING_SAVE_AREA *PWOW64_FLOATING_SAVE_AREA;
  2385.  
  2386.  
  2387. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack4.h" 1 3
  2388. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack4.h" 3
  2389. #pragma warning(disable: 4103)
  2390.  
  2391. #pragma pack(push,4)
  2392. # 8861 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  2393. # 8873 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2394. typedef struct _WOW64_CONTEXT {
  2395. # 8893 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2396.     DWORD ContextFlags;
  2397.  
  2398.  
  2399.  
  2400.  
  2401.  
  2402.  
  2403.  
  2404.     DWORD Dr0;
  2405.     DWORD Dr1;
  2406.     DWORD Dr2;
  2407.     DWORD Dr3;
  2408.     DWORD Dr6;
  2409.     DWORD Dr7;
  2410.  
  2411.  
  2412.  
  2413.  
  2414.  
  2415.  
  2416.     WOW64_FLOATING_SAVE_AREA FloatSave;
  2417.  
  2418.  
  2419.  
  2420.  
  2421.  
  2422.  
  2423.     DWORD SegGs;
  2424.     DWORD SegFs;
  2425.     DWORD SegEs;
  2426.     DWORD SegDs;
  2427.  
  2428.  
  2429.  
  2430.  
  2431.  
  2432.  
  2433.     DWORD Edi;
  2434.     DWORD Esi;
  2435.     DWORD Ebx;
  2436.     DWORD Edx;
  2437.     DWORD Ecx;
  2438.     DWORD Eax;
  2439.  
  2440.  
  2441.  
  2442.  
  2443.  
  2444.  
  2445.     DWORD Ebp;
  2446.     DWORD Eip;
  2447.     DWORD SegCs;
  2448.     DWORD EFlags;
  2449.     DWORD Esp;
  2450.     DWORD SegSs;
  2451.  
  2452.  
  2453.  
  2454.  
  2455.  
  2456.  
  2457.  
  2458.     BYTE ExtendedRegisters[512];
  2459.  
  2460. } WOW64_CONTEXT;
  2461.  
  2462. typedef WOW64_CONTEXT *PWOW64_CONTEXT;
  2463.  
  2464.  
  2465. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/poppack.h" 1 3
  2466. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/poppack.h" 3
  2467. #pragma warning(disable: 4103)
  2468.  
  2469. #pragma pack(pop)
  2470. # 8961 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  2471.  
  2472.  
  2473.  
  2474. typedef struct _WOW64_LDT_ENTRY {
  2475.     WORD LimitLow;
  2476.     WORD BaseLow;
  2477.     union {
  2478.         struct {
  2479.             BYTE BaseMid;
  2480.             BYTE Flags1;
  2481.             BYTE Flags2;
  2482.             BYTE BaseHi;
  2483.         } Bytes;
  2484.         struct {
  2485.             DWORD BaseMid : 8;
  2486.             DWORD Type : 5;
  2487.             DWORD Dpl : 2;
  2488.             DWORD Pres : 1;
  2489.             DWORD LimitHi : 4;
  2490.             DWORD Sys : 1;
  2491.             DWORD Reserved_0 : 1;
  2492.             DWORD Default_Big : 1;
  2493.             DWORD Granularity : 1;
  2494.             DWORD BaseHi : 8;
  2495.         } Bits;
  2496.     } HighWord;
  2497. } WOW64_LDT_ENTRY, *PWOW64_LDT_ENTRY;
  2498.  
  2499. typedef struct _WOW64_DESCRIPTOR_TABLE_ENTRY {
  2500.     DWORD Selector;
  2501.     WOW64_LDT_ENTRY Descriptor;
  2502. } WOW64_DESCRIPTOR_TABLE_ENTRY, *PWOW64_DESCRIPTOR_TABLE_ENTRY;
  2503. # 9015 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2504. typedef struct _EXCEPTION_RECORD {
  2505.     DWORD ExceptionCode;
  2506.     DWORD ExceptionFlags;
  2507.     struct _EXCEPTION_RECORD *ExceptionRecord;
  2508.     PVOID ExceptionAddress;
  2509.     DWORD NumberParameters;
  2510.     ULONG_PTR ExceptionInformation[15];
  2511.     } EXCEPTION_RECORD;
  2512.  
  2513. typedef EXCEPTION_RECORD *PEXCEPTION_RECORD;
  2514.  
  2515. typedef struct _EXCEPTION_RECORD32 {
  2516.     DWORD ExceptionCode;
  2517.     DWORD ExceptionFlags;
  2518.     DWORD ExceptionRecord;
  2519.     DWORD ExceptionAddress;
  2520.     DWORD NumberParameters;
  2521.     DWORD ExceptionInformation[15];
  2522. } EXCEPTION_RECORD32, *PEXCEPTION_RECORD32;
  2523.  
  2524. typedef struct _EXCEPTION_RECORD64 {
  2525.     DWORD ExceptionCode;
  2526.     DWORD ExceptionFlags;
  2527.     DWORD64 ExceptionRecord;
  2528.     DWORD64 ExceptionAddress;
  2529.     DWORD NumberParameters;
  2530.     DWORD __unusedAlignment;
  2531.     DWORD64 ExceptionInformation[15];
  2532. } EXCEPTION_RECORD64, *PEXCEPTION_RECORD64;
  2533.  
  2534.  
  2535.  
  2536.  
  2537.  
  2538. typedef struct _EXCEPTION_POINTERS {
  2539.     PEXCEPTION_RECORD ExceptionRecord;
  2540.     PCONTEXT ContextRecord;
  2541. } EXCEPTION_POINTERS, *PEXCEPTION_POINTERS;
  2542. # 9073 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2543. typedef PVOID PACCESS_TOKEN;
  2544. typedef PVOID PSECURITY_DESCRIPTOR;
  2545. typedef PVOID PSID;
  2546. typedef PVOID PCLAIMS_BLOB;
  2547. # 9117 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2548. typedef DWORD ACCESS_MASK;
  2549. typedef ACCESS_MASK *PACCESS_MASK;
  2550. # 9176 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2551. typedef struct _GENERIC_MAPPING {
  2552.     ACCESS_MASK GenericRead;
  2553.     ACCESS_MASK GenericWrite;
  2554.     ACCESS_MASK GenericExecute;
  2555.     ACCESS_MASK GenericAll;
  2556. } GENERIC_MAPPING;
  2557. typedef GENERIC_MAPPING *PGENERIC_MAPPING;
  2558. # 9195 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2559. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 1 3
  2560. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 3
  2561. #pragma warning(disable: 4103)
  2562.  
  2563. #pragma pack(push,4)
  2564. # 9195 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  2565.  
  2566.  
  2567. typedef struct _LUID_AND_ATTRIBUTES {
  2568.     LUID Luid;
  2569.     DWORD Attributes;
  2570.     } LUID_AND_ATTRIBUTES, * PLUID_AND_ATTRIBUTES;
  2571. typedef LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[1];
  2572. typedef LUID_AND_ATTRIBUTES_ARRAY *PLUID_AND_ATTRIBUTES_ARRAY;
  2573.  
  2574.  
  2575. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  2576. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  2577. #pragma warning(disable: 4103)
  2578.  
  2579. #pragma pack(pop)
  2580. # 9204 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  2581. # 9239 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2582. typedef struct _SID_IDENTIFIER_AUTHORITY {
  2583.     BYTE Value[6];
  2584. } SID_IDENTIFIER_AUTHORITY, *PSID_IDENTIFIER_AUTHORITY;
  2585.  
  2586.  
  2587.  
  2588.  
  2589.  
  2590. typedef struct _SID {
  2591.    BYTE Revision;
  2592.    BYTE SubAuthorityCount;
  2593.    SID_IDENTIFIER_AUTHORITY IdentifierAuthority;
  2594.  
  2595.  
  2596.  
  2597.    DWORD SubAuthority[1];
  2598.  
  2599. } SID, *PISID;
  2600. # 9287 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2601. typedef union _SE_SID {
  2602.     SID Sid;
  2603.     BYTE Buffer[(sizeof(SID) - sizeof(DWORD) + ((15) * sizeof(DWORD)))];
  2604. } SE_SID, *PSE_SID;
  2605.  
  2606.  
  2607.  
  2608.  
  2609. typedef enum _SID_NAME_USE {
  2610.     SidTypeUser = 1,
  2611.     SidTypeGroup,
  2612.     SidTypeDomain,
  2613.     SidTypeAlias,
  2614.     SidTypeWellKnownGroup,
  2615.     SidTypeDeletedAccount,
  2616.     SidTypeInvalid,
  2617.     SidTypeUnknown,
  2618.     SidTypeComputer,
  2619.     SidTypeLabel,
  2620.     SidTypeLogonSession
  2621. } SID_NAME_USE, *PSID_NAME_USE;
  2622.  
  2623. typedef struct _SID_AND_ATTRIBUTES {
  2624.  
  2625.  
  2626.  
  2627.     PSID Sid;
  2628.  
  2629.     DWORD Attributes;
  2630.     } SID_AND_ATTRIBUTES, * PSID_AND_ATTRIBUTES;
  2631.  
  2632. typedef SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES_ARRAY[1];
  2633. typedef SID_AND_ATTRIBUTES_ARRAY *PSID_AND_ATTRIBUTES_ARRAY;
  2634.  
  2635.  
  2636. typedef ULONG_PTR SID_HASH_ENTRY, *PSID_HASH_ENTRY;
  2637.  
  2638. typedef struct _SID_AND_ATTRIBUTES_HASH {
  2639.     DWORD SidCount;
  2640.     PSID_AND_ATTRIBUTES SidAttr;
  2641.     SID_HASH_ENTRY Hash[32];
  2642. } SID_AND_ATTRIBUTES_HASH, *PSID_AND_ATTRIBUTES_HASH;
  2643. # 9729 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2644. typedef enum {
  2645.  
  2646.     WinNullSid = 0,
  2647.     WinWorldSid = 1,
  2648.     WinLocalSid = 2,
  2649.     WinCreatorOwnerSid = 3,
  2650.     WinCreatorGroupSid = 4,
  2651.     WinCreatorOwnerServerSid = 5,
  2652.     WinCreatorGroupServerSid = 6,
  2653.     WinNtAuthoritySid = 7,
  2654.     WinDialupSid = 8,
  2655.     WinNetworkSid = 9,
  2656.     WinBatchSid = 10,
  2657.     WinInteractiveSid = 11,
  2658.     WinServiceSid = 12,
  2659.     WinAnonymousSid = 13,
  2660.     WinProxySid = 14,
  2661.     WinEnterpriseControllersSid = 15,
  2662.     WinSelfSid = 16,
  2663.     WinAuthenticatedUserSid = 17,
  2664.     WinRestrictedCodeSid = 18,
  2665.     WinTerminalServerSid = 19,
  2666.     WinRemoteLogonIdSid = 20,
  2667.     WinLogonIdsSid = 21,
  2668.     WinLocalSystemSid = 22,
  2669.     WinLocalServiceSid = 23,
  2670.     WinNetworkServiceSid = 24,
  2671.     WinBuiltinDomainSid = 25,
  2672.     WinBuiltinAdministratorsSid = 26,
  2673.     WinBuiltinUsersSid = 27,
  2674.     WinBuiltinGuestsSid = 28,
  2675.     WinBuiltinPowerUsersSid = 29,
  2676.     WinBuiltinAccountOperatorsSid = 30,
  2677.     WinBuiltinSystemOperatorsSid = 31,
  2678.     WinBuiltinPrintOperatorsSid = 32,
  2679.     WinBuiltinBackupOperatorsSid = 33,
  2680.     WinBuiltinReplicatorSid = 34,
  2681.     WinBuiltinPreWindows2000CompatibleAccessSid = 35,
  2682.     WinBuiltinRemoteDesktopUsersSid = 36,
  2683.     WinBuiltinNetworkConfigurationOperatorsSid = 37,
  2684.     WinAccountAdministratorSid = 38,
  2685.     WinAccountGuestSid = 39,
  2686.     WinAccountKrbtgtSid = 40,
  2687.     WinAccountDomainAdminsSid = 41,
  2688.     WinAccountDomainUsersSid = 42,
  2689.     WinAccountDomainGuestsSid = 43,
  2690.     WinAccountComputersSid = 44,
  2691.     WinAccountControllersSid = 45,
  2692.     WinAccountCertAdminsSid = 46,
  2693.     WinAccountSchemaAdminsSid = 47,
  2694.     WinAccountEnterpriseAdminsSid = 48,
  2695.     WinAccountPolicyAdminsSid = 49,
  2696.     WinAccountRasAndIasServersSid = 50,
  2697.     WinNTLMAuthenticationSid = 51,
  2698.     WinDigestAuthenticationSid = 52,
  2699.     WinSChannelAuthenticationSid = 53,
  2700.     WinThisOrganizationSid = 54,
  2701.     WinOtherOrganizationSid = 55,
  2702.     WinBuiltinIncomingForestTrustBuildersSid = 56,
  2703.     WinBuiltinPerfMonitoringUsersSid = 57,
  2704.     WinBuiltinPerfLoggingUsersSid = 58,
  2705.     WinBuiltinAuthorizationAccessSid = 59,
  2706.     WinBuiltinTerminalServerLicenseServersSid = 60,
  2707.     WinBuiltinDCOMUsersSid = 61,
  2708.     WinBuiltinIUsersSid = 62,
  2709.     WinIUserSid = 63,
  2710.     WinBuiltinCryptoOperatorsSid = 64,
  2711.     WinUntrustedLabelSid = 65,
  2712.     WinLowLabelSid = 66,
  2713.     WinMediumLabelSid = 67,
  2714.     WinHighLabelSid = 68,
  2715.     WinSystemLabelSid = 69,
  2716.     WinWriteRestrictedCodeSid = 70,
  2717.     WinCreatorOwnerRightsSid = 71,
  2718.     WinCacheablePrincipalsGroupSid = 72,
  2719.     WinNonCacheablePrincipalsGroupSid = 73,
  2720.     WinEnterpriseReadonlyControllersSid = 74,
  2721.     WinAccountReadonlyControllersSid = 75,
  2722.     WinBuiltinEventLogReadersGroup = 76,
  2723.     WinNewEnterpriseReadonlyControllersSid = 77,
  2724.     WinBuiltinCertSvcDComAccessGroup = 78,
  2725.     WinMediumPlusLabelSid = 79,
  2726.     WinLocalLogonSid = 80,
  2727.     WinConsoleLogonSid = 81,
  2728.     WinThisOrganizationCertificateSid = 82,
  2729.     WinApplicationPackageAuthoritySid = 83,
  2730.     WinBuiltinAnyPackageSid = 84,
  2731.     WinCapabilityInternetClientSid = 85,
  2732.     WinCapabilityInternetClientServerSid = 86,
  2733.     WinCapabilityPrivateNetworkClientServerSid = 87,
  2734.     WinCapabilityPicturesLibrarySid = 88,
  2735.     WinCapabilityVideosLibrarySid = 89,
  2736.     WinCapabilityMusicLibrarySid = 90,
  2737.     WinCapabilityDocumentsLibrarySid = 91,
  2738.     WinCapabilitySharedUserCertificatesSid = 92,
  2739.     WinCapabilityEnterpriseAuthenticationSid = 93,
  2740.     WinCapabilityRemovableStorageSid = 94,
  2741.     WinBuiltinRDSRemoteAccessServersSid = 95,
  2742.     WinBuiltinRDSEndpointServersSid = 96,
  2743.     WinBuiltinRDSManagementServersSid = 97,
  2744.     WinUserModeDriversSid = 98,
  2745.     WinBuiltinHyperVAdminsSid = 99,
  2746.     WinAccountCloneableControllersSid = 100,
  2747.     WinBuiltinAccessControlAssistanceOperatorsSid = 101,
  2748.     WinBuiltinRemoteManagementUsersSid = 102,
  2749.     WinAuthenticationAuthorityAssertedSid = 103,
  2750.     WinAuthenticationServiceAssertedSid = 104,
  2751.     WinLocalAccountSid = 105,
  2752.     WinLocalAccountAndAdministratorSid = 106,
  2753.     WinAccountProtectedUsersSid = 107,
  2754.     WinCapabilityAppointmentsSid = 108,
  2755.     WinCapabilityContactsSid = 109,
  2756.     WinAccountDefaultSystemManagedSid = 110,
  2757.     WinBuiltinDefaultSystemManagedGroupSid = 111,
  2758.     WinBuiltinStorageReplicaAdminsSid = 112,
  2759.     WinAccountKeyAdminsSid = 113,
  2760.     WinAccountEnterpriseKeyAdminsSid = 114,
  2761.     WinAuthenticationKeyTrustSid = 115,
  2762.     WinAuthenticationKeyPropertyMFASid = 116,
  2763.     WinAuthenticationKeyPropertyAttestationSid = 117,
  2764.     WinAuthenticationFreshKeyAuthSid = 118,
  2765.     WinBuiltinDeviceOwnersSid = 119,
  2766. } WELL_KNOWN_SID_TYPE;
  2767. # 9948 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2768. typedef struct _ACL {
  2769.     BYTE AclRevision;
  2770.     BYTE Sbz1;
  2771.     WORD AclSize;
  2772.     WORD AceCount;
  2773.     WORD Sbz2;
  2774. } ACL;
  2775. typedef ACL *PACL;
  2776. # 9978 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2777. typedef struct _ACE_HEADER {
  2778.     BYTE AceType;
  2779.     BYTE AceFlags;
  2780.     WORD AceSize;
  2781. } ACE_HEADER;
  2782. typedef ACE_HEADER *PACE_HEADER;
  2783. # 10107 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2784. typedef struct _ACCESS_ALLOWED_ACE {
  2785.     ACE_HEADER Header;
  2786.     ACCESS_MASK Mask;
  2787.     DWORD SidStart;
  2788. } ACCESS_ALLOWED_ACE;
  2789.  
  2790. typedef ACCESS_ALLOWED_ACE *PACCESS_ALLOWED_ACE;
  2791.  
  2792. typedef struct _ACCESS_DENIED_ACE {
  2793.     ACE_HEADER Header;
  2794.     ACCESS_MASK Mask;
  2795.     DWORD SidStart;
  2796. } ACCESS_DENIED_ACE;
  2797. typedef ACCESS_DENIED_ACE *PACCESS_DENIED_ACE;
  2798.  
  2799. typedef struct _SYSTEM_AUDIT_ACE {
  2800.     ACE_HEADER Header;
  2801.     ACCESS_MASK Mask;
  2802.     DWORD SidStart;
  2803. } SYSTEM_AUDIT_ACE;
  2804. typedef SYSTEM_AUDIT_ACE *PSYSTEM_AUDIT_ACE;
  2805.  
  2806. typedef struct _SYSTEM_ALARM_ACE {
  2807.     ACE_HEADER Header;
  2808.     ACCESS_MASK Mask;
  2809.     DWORD SidStart;
  2810. } SYSTEM_ALARM_ACE;
  2811. typedef SYSTEM_ALARM_ACE *PSYSTEM_ALARM_ACE;
  2812.  
  2813. typedef struct _SYSTEM_RESOURCE_ATTRIBUTE_ACE {
  2814.     ACE_HEADER Header;
  2815.     ACCESS_MASK Mask;
  2816.     DWORD SidStart;
  2817.  
  2818. } SYSTEM_RESOURCE_ATTRIBUTE_ACE, *PSYSTEM_RESOURCE_ATTRIBUTE_ACE;
  2819.  
  2820. typedef struct _SYSTEM_SCOPED_POLICY_ID_ACE {
  2821.     ACE_HEADER Header;
  2822.     ACCESS_MASK Mask;
  2823.     DWORD SidStart;
  2824. } SYSTEM_SCOPED_POLICY_ID_ACE, *PSYSTEM_SCOPED_POLICY_ID_ACE;
  2825.  
  2826. typedef struct _SYSTEM_MANDATORY_LABEL_ACE {
  2827.     ACE_HEADER Header;
  2828.     ACCESS_MASK Mask;
  2829.     DWORD SidStart;
  2830. } SYSTEM_MANDATORY_LABEL_ACE, *PSYSTEM_MANDATORY_LABEL_ACE;
  2831.  
  2832. typedef struct _SYSTEM_PROCESS_TRUST_LABEL_ACE {
  2833.     ACE_HEADER Header;
  2834.     ACCESS_MASK Mask;
  2835.     DWORD SidStart;
  2836. } SYSTEM_PROCESS_TRUST_LABEL_ACE, *PSYSTEM_PROCESS_TRUST_LABEL_ACE;
  2837.  
  2838. typedef struct _SYSTEM_ACCESS_FILTER_ACE {
  2839.     ACE_HEADER Header;
  2840.     ACCESS_MASK Mask;
  2841.     DWORD SidStart;
  2842.  
  2843. } SYSTEM_ACCESS_FILTER_ACE, *PSYSTEM_ACCESS_FILTER_ACE;
  2844. # 10184 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2845. typedef struct _ACCESS_ALLOWED_OBJECT_ACE {
  2846.     ACE_HEADER Header;
  2847.     ACCESS_MASK Mask;
  2848.     DWORD Flags;
  2849.     GUID ObjectType;
  2850.     GUID InheritedObjectType;
  2851.     DWORD SidStart;
  2852. } ACCESS_ALLOWED_OBJECT_ACE, *PACCESS_ALLOWED_OBJECT_ACE;
  2853.  
  2854. typedef struct _ACCESS_DENIED_OBJECT_ACE {
  2855.     ACE_HEADER Header;
  2856.     ACCESS_MASK Mask;
  2857.     DWORD Flags;
  2858.     GUID ObjectType;
  2859.     GUID InheritedObjectType;
  2860.     DWORD SidStart;
  2861. } ACCESS_DENIED_OBJECT_ACE, *PACCESS_DENIED_OBJECT_ACE;
  2862.  
  2863. typedef struct _SYSTEM_AUDIT_OBJECT_ACE {
  2864.     ACE_HEADER Header;
  2865.     ACCESS_MASK Mask;
  2866.     DWORD Flags;
  2867.     GUID ObjectType;
  2868.     GUID InheritedObjectType;
  2869.     DWORD SidStart;
  2870. } SYSTEM_AUDIT_OBJECT_ACE, *PSYSTEM_AUDIT_OBJECT_ACE;
  2871.  
  2872. typedef struct _SYSTEM_ALARM_OBJECT_ACE {
  2873.     ACE_HEADER Header;
  2874.     ACCESS_MASK Mask;
  2875.     DWORD Flags;
  2876.     GUID ObjectType;
  2877.     GUID InheritedObjectType;
  2878.     DWORD SidStart;
  2879. } SYSTEM_ALARM_OBJECT_ACE, *PSYSTEM_ALARM_OBJECT_ACE;
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886. typedef struct _ACCESS_ALLOWED_CALLBACK_ACE {
  2887.     ACE_HEADER Header;
  2888.     ACCESS_MASK Mask;
  2889.     DWORD SidStart;
  2890.  
  2891. } ACCESS_ALLOWED_CALLBACK_ACE, *PACCESS_ALLOWED_CALLBACK_ACE;
  2892.  
  2893. typedef struct _ACCESS_DENIED_CALLBACK_ACE {
  2894.     ACE_HEADER Header;
  2895.     ACCESS_MASK Mask;
  2896.     DWORD SidStart;
  2897.  
  2898. } ACCESS_DENIED_CALLBACK_ACE, *PACCESS_DENIED_CALLBACK_ACE;
  2899.  
  2900. typedef struct _SYSTEM_AUDIT_CALLBACK_ACE {
  2901.     ACE_HEADER Header;
  2902.     ACCESS_MASK Mask;
  2903.     DWORD SidStart;
  2904.  
  2905. } SYSTEM_AUDIT_CALLBACK_ACE, *PSYSTEM_AUDIT_CALLBACK_ACE;
  2906.  
  2907. typedef struct _SYSTEM_ALARM_CALLBACK_ACE {
  2908.     ACE_HEADER Header;
  2909.     ACCESS_MASK Mask;
  2910.     DWORD SidStart;
  2911.  
  2912. } SYSTEM_ALARM_CALLBACK_ACE, *PSYSTEM_ALARM_CALLBACK_ACE;
  2913.  
  2914. typedef struct _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE {
  2915.     ACE_HEADER Header;
  2916.     ACCESS_MASK Mask;
  2917.     DWORD Flags;
  2918.     GUID ObjectType;
  2919.     GUID InheritedObjectType;
  2920.     DWORD SidStart;
  2921.  
  2922. } ACCESS_ALLOWED_CALLBACK_OBJECT_ACE, *PACCESS_ALLOWED_CALLBACK_OBJECT_ACE;
  2923.  
  2924. typedef struct _ACCESS_DENIED_CALLBACK_OBJECT_ACE {
  2925.     ACE_HEADER Header;
  2926.     ACCESS_MASK Mask;
  2927.     DWORD Flags;
  2928.     GUID ObjectType;
  2929.     GUID InheritedObjectType;
  2930.     DWORD SidStart;
  2931.  
  2932. } ACCESS_DENIED_CALLBACK_OBJECT_ACE, *PACCESS_DENIED_CALLBACK_OBJECT_ACE;
  2933.  
  2934. typedef struct _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE {
  2935.     ACE_HEADER Header;
  2936.     ACCESS_MASK Mask;
  2937.     DWORD Flags;
  2938.     GUID ObjectType;
  2939.     GUID InheritedObjectType;
  2940.     DWORD SidStart;
  2941.  
  2942. } SYSTEM_AUDIT_CALLBACK_OBJECT_ACE, *PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE;
  2943.  
  2944. typedef struct _SYSTEM_ALARM_CALLBACK_OBJECT_ACE {
  2945.     ACE_HEADER Header;
  2946.     ACCESS_MASK Mask;
  2947.     DWORD Flags;
  2948.     GUID ObjectType;
  2949.     GUID InheritedObjectType;
  2950.     DWORD SidStart;
  2951.  
  2952. } SYSTEM_ALARM_CALLBACK_OBJECT_ACE, *PSYSTEM_ALARM_CALLBACK_OBJECT_ACE;
  2953. # 10307 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2954. typedef enum _ACL_INFORMATION_CLASS {
  2955.     AclRevisionInformation = 1,
  2956.     AclSizeInformation
  2957. } ACL_INFORMATION_CLASS;
  2958.  
  2959.  
  2960.  
  2961.  
  2962.  
  2963.  
  2964. typedef struct _ACL_REVISION_INFORMATION {
  2965.     DWORD AclRevision;
  2966. } ACL_REVISION_INFORMATION;
  2967. typedef ACL_REVISION_INFORMATION *PACL_REVISION_INFORMATION;
  2968.  
  2969.  
  2970.  
  2971.  
  2972.  
  2973. typedef struct _ACL_SIZE_INFORMATION {
  2974.     DWORD AceCount;
  2975.     DWORD AclBytesInUse;
  2976.     DWORD AclBytesFree;
  2977. } ACL_SIZE_INFORMATION;
  2978. typedef ACL_SIZE_INFORMATION *PACL_SIZE_INFORMATION;
  2979. # 10358 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2980. typedef WORD SECURITY_DESCRIPTOR_CONTROL, *PSECURITY_DESCRIPTOR_CONTROL;
  2981. # 10448 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  2982. typedef struct _SECURITY_DESCRIPTOR_RELATIVE {
  2983.     BYTE Revision;
  2984.     BYTE Sbz1;
  2985.     SECURITY_DESCRIPTOR_CONTROL Control;
  2986.     DWORD Owner;
  2987.     DWORD Group;
  2988.     DWORD Sacl;
  2989.     DWORD Dacl;
  2990.     } SECURITY_DESCRIPTOR_RELATIVE, *PISECURITY_DESCRIPTOR_RELATIVE;
  2991.  
  2992. typedef struct _SECURITY_DESCRIPTOR {
  2993.    BYTE Revision;
  2994.    BYTE Sbz1;
  2995.    SECURITY_DESCRIPTOR_CONTROL Control;
  2996.    PSID Owner;
  2997.    PSID Group;
  2998.    PACL Sacl;
  2999.    PACL Dacl;
  3000.  
  3001.    } SECURITY_DESCRIPTOR, *PISECURITY_DESCRIPTOR;
  3002.  
  3003.  
  3004. typedef struct _SECURITY_OBJECT_AI_PARAMS {
  3005.     DWORD Size;
  3006.     DWORD ConstraintMask;
  3007. } SECURITY_OBJECT_AI_PARAMS, *PSECURITY_OBJECT_AI_PARAMS;
  3008. # 10525 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3009. typedef struct _OBJECT_TYPE_LIST {
  3010.     WORD Level;
  3011.     WORD Sbz;
  3012.     GUID *ObjectType;
  3013. } OBJECT_TYPE_LIST, *POBJECT_TYPE_LIST;
  3014. # 10545 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3015. typedef enum _AUDIT_EVENT_TYPE {
  3016.     AuditEventObjectAccess,
  3017.     AuditEventDirectoryServiceAccess
  3018. } AUDIT_EVENT_TYPE, *PAUDIT_EVENT_TYPE;
  3019. # 10599 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3020. typedef struct _PRIVILEGE_SET {
  3021.     DWORD PrivilegeCount;
  3022.     DWORD Control;
  3023.     LUID_AND_ATTRIBUTES Privilege[1];
  3024.     } PRIVILEGE_SET, * PPRIVILEGE_SET;
  3025. # 10620 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3026. typedef enum _ACCESS_REASON_TYPE{
  3027.  
  3028.     AccessReasonNone = 0x00000000,
  3029.  
  3030.  
  3031.  
  3032.  
  3033.  
  3034.  
  3035.     AccessReasonAllowedAce = 0x00010000,
  3036.     AccessReasonDeniedAce = 0x00020000,
  3037.  
  3038.     AccessReasonAllowedParentAce = 0x00030000,
  3039.     AccessReasonDeniedParentAce = 0x00040000,
  3040.  
  3041.     AccessReasonNotGrantedByCape = 0x00050000,
  3042.     AccessReasonNotGrantedByParentCape = 0x00060000,
  3043.  
  3044.     AccessReasonNotGrantedToAppContainer = 0x00070000,
  3045.  
  3046.     AccessReasonMissingPrivilege = 0x00100000,
  3047.     AccessReasonFromPrivilege = 0x00200000,
  3048.  
  3049.  
  3050.     AccessReasonIntegrityLevel = 0x00300000,
  3051.  
  3052.     AccessReasonOwnership = 0x00400000,
  3053.  
  3054.     AccessReasonNullDacl = 0x00500000,
  3055.     AccessReasonEmptyDacl = 0x00600000,
  3056.  
  3057.     AccessReasonNoSD = 0x00700000,
  3058.     AccessReasonNoGrant = 0x00800000,
  3059.  
  3060.     AccessReasonTrustLabel = 0x00900000,
  3061.  
  3062.     AccessReasonFilterAce = 0x00a00000
  3063. }
  3064. ACCESS_REASON_TYPE;
  3065. # 10673 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3066. typedef DWORD ACCESS_REASON;
  3067.  
  3068. typedef struct _ACCESS_REASONS{
  3069.         ACCESS_REASON Data[32];
  3070. } ACCESS_REASONS, *PACCESS_REASONS;
  3071. # 10704 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3072. typedef struct _SE_SECURITY_DESCRIPTOR
  3073. {
  3074.     DWORD Size;
  3075.     DWORD Flags;
  3076.     PSECURITY_DESCRIPTOR SecurityDescriptor;
  3077. } SE_SECURITY_DESCRIPTOR, *PSE_SECURITY_DESCRIPTOR;
  3078.  
  3079. typedef struct _SE_ACCESS_REQUEST
  3080. {
  3081.     DWORD Size;
  3082.     PSE_SECURITY_DESCRIPTOR SeSecurityDescriptor;
  3083.     ACCESS_MASK DesiredAccess;
  3084.     ACCESS_MASK PreviouslyGrantedAccess;
  3085.     PSID PrincipalSelfSid;
  3086.     PGENERIC_MAPPING GenericMapping;
  3087.     DWORD ObjectTypeListCount;
  3088.     POBJECT_TYPE_LIST ObjectTypeList;
  3089. } SE_ACCESS_REQUEST, *PSE_ACCESS_REQUEST;
  3090.  
  3091.  
  3092. typedef struct _SE_ACCESS_REPLY
  3093. {
  3094.     DWORD Size;
  3095.     DWORD ResultListCount;
  3096.     PACCESS_MASK GrantedAccess;
  3097.     PDWORD AccessStatus;
  3098.     PACCESS_REASONS AccessReason;
  3099.     PPRIVILEGE_SET* Privileges;
  3100. } SE_ACCESS_REPLY, *PSE_ACCESS_REPLY;
  3101. # 10809 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3102. typedef enum _SECURITY_IMPERSONATION_LEVEL {
  3103.     SecurityAnonymous,
  3104.     SecurityIdentification,
  3105.     SecurityImpersonation,
  3106.     SecurityDelegation
  3107.     } SECURITY_IMPERSONATION_LEVEL, * PSECURITY_IMPERSONATION_LEVEL;
  3108. # 10891 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3109. typedef enum _TOKEN_TYPE {
  3110.     TokenPrimary = 1,
  3111.     TokenImpersonation
  3112.     } TOKEN_TYPE;
  3113. typedef TOKEN_TYPE *PTOKEN_TYPE;
  3114.  
  3115.  
  3116.  
  3117.  
  3118.  
  3119.  
  3120.  
  3121. typedef enum _TOKEN_ELEVATION_TYPE {
  3122.     TokenElevationTypeDefault = 1,
  3123.     TokenElevationTypeFull,
  3124.     TokenElevationTypeLimited,
  3125. } TOKEN_ELEVATION_TYPE, *PTOKEN_ELEVATION_TYPE;
  3126.  
  3127.  
  3128.  
  3129.  
  3130.  
  3131.  
  3132. typedef enum _TOKEN_INFORMATION_CLASS {
  3133.     TokenUser = 1,
  3134.     TokenGroups,
  3135.     TokenPrivileges,
  3136.     TokenOwner,
  3137.     TokenPrimaryGroup,
  3138.     TokenDefaultDacl,
  3139.     TokenSource,
  3140.     TokenType,
  3141.     TokenImpersonationLevel,
  3142.     TokenStatistics,
  3143.     TokenRestrictedSids,
  3144.     TokenSessionId,
  3145.     TokenGroupsAndPrivileges,
  3146.     TokenSessionReference,
  3147.     TokenSandBoxInert,
  3148.     TokenAuditPolicy,
  3149.     TokenOrigin,
  3150.     TokenElevationType,
  3151.     TokenLinkedToken,
  3152.     TokenElevation,
  3153.     TokenHasRestrictions,
  3154.     TokenAccessInformation,
  3155.     TokenVirtualizationAllowed,
  3156.     TokenVirtualizationEnabled,
  3157.     TokenIntegrityLevel,
  3158.     TokenUIAccess,
  3159.     TokenMandatoryPolicy,
  3160.     TokenLogonSid,
  3161.     TokenIsAppContainer,
  3162.     TokenCapabilities,
  3163.     TokenAppContainerSid,
  3164.     TokenAppContainerNumber,
  3165.     TokenUserClaimAttributes,
  3166.     TokenDeviceClaimAttributes,
  3167.     TokenRestrictedUserClaimAttributes,
  3168.     TokenRestrictedDeviceClaimAttributes,
  3169.     TokenDeviceGroups,
  3170.     TokenRestrictedDeviceGroups,
  3171.     TokenSecurityAttributes,
  3172.     TokenIsRestricted,
  3173.     TokenProcessTrustLevel,
  3174.     TokenPrivateNameSpace,
  3175.     TokenSingletonAttributes,
  3176.     TokenBnoIsolation,
  3177.     TokenChildProcessFlags,
  3178.     MaxTokenInfoClass
  3179. } TOKEN_INFORMATION_CLASS, *PTOKEN_INFORMATION_CLASS;
  3180.  
  3181.  
  3182.  
  3183.  
  3184.  
  3185. typedef struct _TOKEN_USER {
  3186.     SID_AND_ATTRIBUTES User;
  3187. } TOKEN_USER, *PTOKEN_USER;
  3188.  
  3189.  
  3190.  
  3191. typedef struct _SE_TOKEN_USER {
  3192.     union {
  3193.         TOKEN_USER TokenUser;
  3194.         SID_AND_ATTRIBUTES User;
  3195.     } ;
  3196.  
  3197.     union {
  3198.         SID Sid;
  3199.         BYTE Buffer[(sizeof(SID) - sizeof(DWORD) + ((15) * sizeof(DWORD)))];
  3200.     } ;
  3201.  
  3202. } SE_TOKEN_USER , PSE_TOKEN_USER;
  3203.  
  3204.  
  3205.  
  3206.  
  3207.  
  3208.  
  3209. typedef struct _TOKEN_GROUPS {
  3210.     DWORD GroupCount;
  3211.  
  3212.  
  3213.  
  3214.     SID_AND_ATTRIBUTES Groups[1];
  3215.  
  3216. } TOKEN_GROUPS, *PTOKEN_GROUPS;
  3217.  
  3218. typedef struct _TOKEN_PRIVILEGES {
  3219.     DWORD PrivilegeCount;
  3220.     LUID_AND_ATTRIBUTES Privileges[1];
  3221. } TOKEN_PRIVILEGES, *PTOKEN_PRIVILEGES;
  3222.  
  3223.  
  3224. typedef struct _TOKEN_OWNER {
  3225.     PSID Owner;
  3226. } TOKEN_OWNER, *PTOKEN_OWNER;
  3227.  
  3228.  
  3229.  
  3230.  
  3231.  
  3232. typedef struct _TOKEN_PRIMARY_GROUP {
  3233.     PSID PrimaryGroup;
  3234. } TOKEN_PRIMARY_GROUP, *PTOKEN_PRIMARY_GROUP;
  3235.  
  3236.  
  3237. typedef struct _TOKEN_DEFAULT_DACL {
  3238.     PACL DefaultDacl;
  3239. } TOKEN_DEFAULT_DACL, *PTOKEN_DEFAULT_DACL;
  3240.  
  3241. typedef struct _TOKEN_USER_CLAIMS {
  3242.     PCLAIMS_BLOB UserClaims;
  3243. } TOKEN_USER_CLAIMS, *PTOKEN_USER_CLAIMS;
  3244.  
  3245. typedef struct _TOKEN_DEVICE_CLAIMS {
  3246.     PCLAIMS_BLOB DeviceClaims;
  3247. } TOKEN_DEVICE_CLAIMS, *PTOKEN_DEVICE_CLAIMS;
  3248.  
  3249. typedef struct _TOKEN_GROUPS_AND_PRIVILEGES {
  3250.     DWORD SidCount;
  3251.     DWORD SidLength;
  3252.     PSID_AND_ATTRIBUTES Sids;
  3253.     DWORD RestrictedSidCount;
  3254.     DWORD RestrictedSidLength;
  3255.     PSID_AND_ATTRIBUTES RestrictedSids;
  3256.     DWORD PrivilegeCount;
  3257.     DWORD PrivilegeLength;
  3258.     PLUID_AND_ATTRIBUTES Privileges;
  3259.     LUID AuthenticationId;
  3260. } TOKEN_GROUPS_AND_PRIVILEGES, *PTOKEN_GROUPS_AND_PRIVILEGES;
  3261.  
  3262. typedef struct _TOKEN_LINKED_TOKEN {
  3263.     HANDLE LinkedToken;
  3264. } TOKEN_LINKED_TOKEN, *PTOKEN_LINKED_TOKEN;
  3265.  
  3266. typedef struct _TOKEN_ELEVATION {
  3267.     DWORD TokenIsElevated;
  3268. } TOKEN_ELEVATION, *PTOKEN_ELEVATION;
  3269.  
  3270. typedef struct _TOKEN_MANDATORY_LABEL {
  3271.     SID_AND_ATTRIBUTES Label;
  3272. } TOKEN_MANDATORY_LABEL, *PTOKEN_MANDATORY_LABEL;
  3273. # 11067 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3274. typedef struct _TOKEN_MANDATORY_POLICY {
  3275.     DWORD Policy;
  3276. } TOKEN_MANDATORY_POLICY, *PTOKEN_MANDATORY_POLICY;
  3277.  
  3278. typedef PVOID PSECURITY_ATTRIBUTES_OPAQUE;
  3279.  
  3280. typedef struct _TOKEN_ACCESS_INFORMATION {
  3281.     PSID_AND_ATTRIBUTES_HASH SidHash;
  3282.     PSID_AND_ATTRIBUTES_HASH RestrictedSidHash;
  3283.     PTOKEN_PRIVILEGES Privileges;
  3284.     LUID AuthenticationId;
  3285.     TOKEN_TYPE TokenType;
  3286.     SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
  3287.     TOKEN_MANDATORY_POLICY MandatoryPolicy;
  3288.     DWORD Flags;
  3289.     DWORD AppContainerNumber;
  3290.     PSID PackageSid;
  3291.     PSID_AND_ATTRIBUTES_HASH CapabilitiesHash;
  3292.     PSID TrustLevelSid;
  3293.     PSECURITY_ATTRIBUTES_OPAQUE SecurityAttributes;
  3294. } TOKEN_ACCESS_INFORMATION, *PTOKEN_ACCESS_INFORMATION;
  3295.  
  3296.  
  3297.  
  3298.  
  3299.  
  3300.  
  3301.  
  3302. typedef struct _TOKEN_AUDIT_POLICY {
  3303.     BYTE PerUserPolicy[(((59)) >> 1) + 1];
  3304. } TOKEN_AUDIT_POLICY, *PTOKEN_AUDIT_POLICY;
  3305.  
  3306.  
  3307.  
  3308. typedef struct _TOKEN_SOURCE {
  3309.     CHAR SourceName[8];
  3310.     LUID SourceIdentifier;
  3311. } TOKEN_SOURCE, *PTOKEN_SOURCE;
  3312.  
  3313.  
  3314. typedef struct _TOKEN_STATISTICS {
  3315.     LUID TokenId;
  3316.     LUID AuthenticationId;
  3317.     LARGE_INTEGER ExpirationTime;
  3318.     TOKEN_TYPE TokenType;
  3319.     SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
  3320.     DWORD DynamicCharged;
  3321.     DWORD DynamicAvailable;
  3322.     DWORD GroupCount;
  3323.     DWORD PrivilegeCount;
  3324.     LUID ModifiedId;
  3325. } TOKEN_STATISTICS, *PTOKEN_STATISTICS;
  3326.  
  3327.  
  3328.  
  3329. typedef struct _TOKEN_CONTROL {
  3330.     LUID TokenId;
  3331.     LUID AuthenticationId;
  3332.     LUID ModifiedId;
  3333.     TOKEN_SOURCE TokenSource;
  3334. } TOKEN_CONTROL, *PTOKEN_CONTROL;
  3335.  
  3336. typedef struct _TOKEN_ORIGIN {
  3337.     LUID OriginatingLogonSession ;
  3338. } TOKEN_ORIGIN, * PTOKEN_ORIGIN ;
  3339.  
  3340.  
  3341. typedef enum _MANDATORY_LEVEL {
  3342.     MandatoryLevelUntrusted = 0,
  3343.     MandatoryLevelLow,
  3344.     MandatoryLevelMedium,
  3345.     MandatoryLevelHigh,
  3346.     MandatoryLevelSystem,
  3347.     MandatoryLevelSecureProcess,
  3348.     MandatoryLevelCount
  3349. } MANDATORY_LEVEL, *PMANDATORY_LEVEL;
  3350.  
  3351. typedef struct _TOKEN_APPCONTAINER_INFORMATION {
  3352.     PSID TokenAppContainer;
  3353. } TOKEN_APPCONTAINER_INFORMATION, *PTOKEN_APPCONTAINER_INFORMATION;
  3354.  
  3355.  
  3356.  
  3357.  
  3358.  
  3359. typedef struct _TOKEN_SID_INFORMATION {
  3360.     PSID Sid;
  3361. } TOKEN_SID_INFORMATION, *PTOKEN_SID_INFORMATION;
  3362.  
  3363. typedef struct _TOKEN_BNO_ISOLATION_INFORMATION {
  3364.     PWSTR IsolationPrefix;
  3365.     BOOLEAN IsolationEnabled;
  3366. } TOKEN_BNO_ISOLATION_INFORMATION, *PTOKEN_BNO_ISOLATION_INFORMATION;
  3367. # 11190 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3368. typedef struct _CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE {
  3369.     DWORD64 Version;
  3370.     PWSTR Name;
  3371. } CLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE, *PCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE;
  3372. # 11202 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3373. typedef struct _CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE {
  3374.     PVOID pValue;
  3375.     DWORD ValueLength;
  3376. } CLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE,
  3377.     *PCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE;
  3378. # 11274 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3379. typedef struct _CLAIM_SECURITY_ATTRIBUTE_V1 {
  3380.  
  3381.  
  3382.  
  3383.  
  3384.  
  3385.  
  3386.     PWSTR Name;
  3387.  
  3388.  
  3389.  
  3390.  
  3391.  
  3392.     WORD ValueType;
  3393.  
  3394.  
  3395.  
  3396.  
  3397.  
  3398.  
  3399.     WORD Reserved;
  3400.  
  3401.  
  3402.  
  3403.  
  3404.  
  3405.     DWORD Flags;
  3406.  
  3407.  
  3408.  
  3409.  
  3410.  
  3411.     DWORD ValueCount;
  3412.  
  3413.  
  3414.  
  3415.  
  3416.  
  3417.     union {
  3418.         PLONG64 pInt64;
  3419.         PDWORD64 pUint64;
  3420.         PWSTR *ppString;
  3421.         PCLAIM_SECURITY_ATTRIBUTE_FQBN_VALUE pFqbn;
  3422.         PCLAIM_SECURITY_ATTRIBUTE_OCTET_STRING_VALUE pOctetString;
  3423.     } Values;
  3424. } CLAIM_SECURITY_ATTRIBUTE_V1, *PCLAIM_SECURITY_ATTRIBUTE_V1;
  3425.  
  3426.  
  3427.  
  3428.  
  3429.  
  3430.  
  3431. typedef struct _CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1 {
  3432.  
  3433.  
  3434.  
  3435.  
  3436.  
  3437.  
  3438.     DWORD Name;
  3439.  
  3440.  
  3441.  
  3442.  
  3443.  
  3444.     WORD ValueType;
  3445.  
  3446.  
  3447.  
  3448.  
  3449.  
  3450.  
  3451.     WORD Reserved;
  3452.  
  3453.  
  3454.  
  3455.  
  3456.  
  3457.     DWORD Flags;
  3458.  
  3459.  
  3460.  
  3461.  
  3462.  
  3463.     DWORD ValueCount;
  3464.  
  3465.  
  3466.  
  3467.  
  3468.  
  3469.     union {
  3470.         DWORD pInt64[1];
  3471.         DWORD pUint64[1];
  3472.         DWORD ppString[1];
  3473.         DWORD pFqbn[1];
  3474.         DWORD pOctetString[1];
  3475.     } Values;
  3476. } CLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1, *PCLAIM_SECURITY_ATTRIBUTE_RELATIVE_V1;
  3477. # 11393 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3478. typedef struct _CLAIM_SECURITY_ATTRIBUTES_INFORMATION {
  3479.  
  3480.  
  3481.  
  3482.  
  3483.  
  3484.     WORD Version;
  3485.  
  3486.  
  3487.  
  3488.  
  3489.  
  3490.     WORD Reserved;
  3491.  
  3492.     DWORD AttributeCount;
  3493.     union {
  3494.         PCLAIM_SECURITY_ATTRIBUTE_V1 pAttributeV1;
  3495.     } Attribute;
  3496. } CLAIM_SECURITY_ATTRIBUTES_INFORMATION, *PCLAIM_SECURITY_ATTRIBUTES_INFORMATION;
  3497. # 11420 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3498. typedef BOOLEAN SECURITY_CONTEXT_TRACKING_MODE,
  3499.                     * PSECURITY_CONTEXT_TRACKING_MODE;
  3500.  
  3501.  
  3502.  
  3503.  
  3504.  
  3505.  
  3506.  
  3507. typedef struct _SECURITY_QUALITY_OF_SERVICE {
  3508.     DWORD Length;
  3509.     SECURITY_IMPERSONATION_LEVEL ImpersonationLevel;
  3510.     SECURITY_CONTEXT_TRACKING_MODE ContextTrackingMode;
  3511.     BOOLEAN EffectiveOnly;
  3512.     } SECURITY_QUALITY_OF_SERVICE, * PSECURITY_QUALITY_OF_SERVICE;
  3513.  
  3514.  
  3515.  
  3516.  
  3517.  
  3518.  
  3519. typedef struct _SE_IMPERSONATION_STATE {
  3520.     PACCESS_TOKEN Token;
  3521.     BOOLEAN CopyOnOpen;
  3522.     BOOLEAN EffectiveOnly;
  3523.     SECURITY_IMPERSONATION_LEVEL Level;
  3524. } SE_IMPERSONATION_STATE, *PSE_IMPERSONATION_STATE;
  3525.  
  3526.  
  3527.  
  3528.  
  3529.  
  3530.  
  3531. typedef DWORD SECURITY_INFORMATION, *PSECURITY_INFORMATION;
  3532. # 11476 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3533. typedef BYTE SE_SIGNING_LEVEL, *PSE_SIGNING_LEVEL;
  3534. # 11500 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3535. typedef enum _SE_IMAGE_SIGNATURE_TYPE
  3536. {
  3537.     SeImageSignatureNone = 0,
  3538.     SeImageSignatureEmbedded,
  3539.     SeImageSignatureCache,
  3540.     SeImageSignatureCatalogCached,
  3541.     SeImageSignatureCatalogNotCached,
  3542.     SeImageSignatureCatalogHint,
  3543.     SeImageSignaturePackageCatalog,
  3544. } SE_IMAGE_SIGNATURE_TYPE, *PSE_IMAGE_SIGNATURE_TYPE;
  3545.  
  3546.  
  3547.  
  3548.  
  3549.  
  3550.  
  3551. typedef enum _SE_LEARNING_MODE_DATA_TYPE {
  3552.     SeLearningModeInvalidType = 0,
  3553.     SeLearningModeSettings,
  3554.     SeLearningModeMax
  3555. } SE_LEARNING_MODE_DATA_TYPE;
  3556.  
  3557.  
  3558.  
  3559. typedef struct _SECURITY_CAPABILITIES {
  3560.  
  3561.  
  3562.  
  3563.  
  3564.     PSID AppContainerSid;
  3565.     PSID_AND_ATTRIBUTES Capabilities;
  3566.  
  3567.     DWORD CapabilityCount;
  3568.     DWORD Reserved;
  3569. } SECURITY_CAPABILITIES, *PSECURITY_CAPABILITIES, *LPSECURITY_CAPABILITIES;
  3570. # 11590 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3571. typedef struct _JOB_SET_ARRAY {
  3572.     HANDLE JobHandle;
  3573.     DWORD MemberLevel;
  3574.     DWORD Flags;
  3575. } JOB_SET_ARRAY, *PJOB_SET_ARRAY;
  3576.  
  3577.  
  3578.  
  3579.  
  3580. typedef struct _EXCEPTION_REGISTRATION_RECORD {
  3581.     struct _EXCEPTION_REGISTRATION_RECORD *Next;
  3582.     PEXCEPTION_ROUTINE Handler;
  3583. } EXCEPTION_REGISTRATION_RECORD;
  3584.  
  3585. typedef EXCEPTION_REGISTRATION_RECORD *PEXCEPTION_REGISTRATION_RECORD;
  3586.  
  3587. typedef struct _NT_TIB {
  3588.     struct _EXCEPTION_REGISTRATION_RECORD *ExceptionList;
  3589.     PVOID StackBase;
  3590.     PVOID StackLimit;
  3591.     PVOID SubSystemTib;
  3592.  
  3593.  
  3594.  
  3595.  
  3596.  
  3597.  
  3598.     PVOID FiberData;
  3599.  
  3600.     PVOID ArbitraryUserPointer;
  3601.     struct _NT_TIB *Self;
  3602. } NT_TIB;
  3603. typedef NT_TIB *PNT_TIB;
  3604.  
  3605.  
  3606.  
  3607.  
  3608. typedef struct _NT_TIB32 {
  3609.     DWORD ExceptionList;
  3610.     DWORD StackBase;
  3611.     DWORD StackLimit;
  3612.     DWORD SubSystemTib;
  3613.  
  3614.  
  3615.  
  3616.  
  3617.  
  3618.  
  3619.  
  3620.     DWORD FiberData;
  3621.  
  3622.  
  3623.     DWORD ArbitraryUserPointer;
  3624.     DWORD Self;
  3625. } NT_TIB32, *PNT_TIB32;
  3626.  
  3627. typedef struct _NT_TIB64 {
  3628.     DWORD64 ExceptionList;
  3629.     DWORD64 StackBase;
  3630.     DWORD64 StackLimit;
  3631.     DWORD64 SubSystemTib;
  3632. # 11659 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3633.     DWORD64 FiberData;
  3634.  
  3635.  
  3636.     DWORD64 ArbitraryUserPointer;
  3637.     DWORD64 Self;
  3638. } NT_TIB64, *PNT_TIB64;
  3639. # 11675 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3640. typedef struct _UMS_CREATE_THREAD_ATTRIBUTES {
  3641.     DWORD UmsVersion;
  3642.         PVOID UmsContext;
  3643.         PVOID UmsCompletionList;
  3644. } UMS_CREATE_THREAD_ATTRIBUTES, *PUMS_CREATE_THREAD_ATTRIBUTES;
  3645.  
  3646. typedef struct _WOW64_ARCHITECTURE_INFORMATION {
  3647.     DWORD Machine : 16;
  3648.     DWORD KernelMode : 1;
  3649.     DWORD UserMode : 1;
  3650.     DWORD Native : 1;
  3651.     DWORD Process : 1;
  3652.     DWORD ReservedZero0 : 12;
  3653. } WOW64_ARCHITECTURE_INFORMATION;
  3654. # 11703 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  3655. typedef struct _QUOTA_LIMITS {
  3656.     SIZE_T PagedPoolLimit;
  3657.     SIZE_T NonPagedPoolLimit;
  3658.     SIZE_T MinimumWorkingSetSize;
  3659.     SIZE_T MaximumWorkingSetSize;
  3660.     SIZE_T PagefileLimit;
  3661.     LARGE_INTEGER TimeLimit;
  3662. } QUOTA_LIMITS, *PQUOTA_LIMITS;
  3663.  
  3664.  
  3665.  
  3666.  
  3667.  
  3668.  
  3669.  
  3670. typedef union _RATE_QUOTA_LIMIT {
  3671.     DWORD RateData;
  3672.     struct {
  3673.         DWORD RatePercent : 7;
  3674.         DWORD Reserved0 : 25;
  3675.     } ;
  3676. } RATE_QUOTA_LIMIT, *PRATE_QUOTA_LIMIT;
  3677.  
  3678. typedef struct _QUOTA_LIMITS_EX {
  3679.     SIZE_T PagedPoolLimit;
  3680.     SIZE_T NonPagedPoolLimit;
  3681.     SIZE_T MinimumWorkingSetSize;
  3682.     SIZE_T MaximumWorkingSetSize;
  3683.     SIZE_T PagefileLimit;
  3684.     LARGE_INTEGER TimeLimit;
  3685.     SIZE_T WorkingSetLimit;
  3686.     SIZE_T Reserved2;
  3687.     SIZE_T Reserved3;
  3688.     SIZE_T Reserved4;
  3689.     DWORD Flags;
  3690.     RATE_QUOTA_LIMIT CpuRateLimit;
  3691. } QUOTA_LIMITS_EX, *PQUOTA_LIMITS_EX;
  3692.  
  3693. typedef struct _IO_COUNTERS {
  3694.     ULONGLONG ReadOperationCount;
  3695.     ULONGLONG WriteOperationCount;
  3696.     ULONGLONG OtherOperationCount;
  3697.     ULONGLONG ReadTransferCount;
  3698.     ULONGLONG WriteTransferCount;
  3699.     ULONGLONG OtherTransferCount;
  3700. } IO_COUNTERS;
  3701. typedef IO_COUNTERS *PIO_COUNTERS;
  3702.  
  3703.  
  3704.  
  3705.  
  3706. typedef enum _HARDWARE_COUNTER_TYPE {
  3707.     PMCCounter,
  3708.     MaxHardwareCounterType
  3709. } HARDWARE_COUNTER_TYPE, *PHARDWARE_COUNTER_TYPE;
  3710. typedef enum _PROCESS_MITIGATION_POLICY {
  3711.     ProcessDEPPolicy,
  3712.     ProcessASLRPolicy,
  3713.     ProcessDynamicCodePolicy,
  3714.     ProcessStrictHandleCheckPolicy,
  3715.     ProcessSystemCallDisablePolicy,
  3716.     ProcessMitigationOptionsMask,
  3717.     ProcessExtensionPointDisablePolicy,
  3718.     ProcessControlFlowGuardPolicy,
  3719.     ProcessSignaturePolicy,
  3720.     ProcessFontDisablePolicy,
  3721.     ProcessImageLoadPolicy,
  3722.     ProcessSystemCallFilterPolicy,
  3723.     ProcessPayloadRestrictionPolicy,
  3724.     ProcessChildProcessPolicy,
  3725.     MaxProcessMitigationPolicy
  3726. } PROCESS_MITIGATION_POLICY, *PPROCESS_MITIGATION_POLICY;
  3727.  
  3728.  
  3729.  
  3730.  
  3731.  
  3732.  
  3733. typedef struct _PROCESS_MITIGATION_ASLR_POLICY {
  3734.     union {
  3735.         DWORD Flags;
  3736.         struct {
  3737.             DWORD EnableBottomUpRandomization : 1;
  3738.             DWORD EnableForceRelocateImages : 1;
  3739.             DWORD EnableHighEntropy : 1;
  3740.             DWORD DisallowStrippedImages : 1;
  3741.             DWORD ReservedFlags : 28;
  3742.         } ;
  3743.     } ;
  3744. } PROCESS_MITIGATION_ASLR_POLICY, *PPROCESS_MITIGATION_ASLR_POLICY;
  3745.  
  3746. typedef struct _PROCESS_MITIGATION_DEP_POLICY {
  3747.     union {
  3748.         DWORD Flags;
  3749.         struct {
  3750.             DWORD Enable : 1;
  3751.             DWORD DisableAtlThunkEmulation : 1;
  3752.             DWORD ReservedFlags : 30;
  3753.         } ;
  3754.     } ;
  3755.     BOOLEAN Permanent;
  3756. } PROCESS_MITIGATION_DEP_POLICY, *PPROCESS_MITIGATION_DEP_POLICY;
  3757.  
  3758. typedef struct _PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY {
  3759.     union {
  3760.         DWORD Flags;
  3761.         struct {
  3762.             DWORD RaiseExceptionOnInvalidHandleReference : 1;
  3763.             DWORD HandleExceptionsPermanentlyEnabled : 1;
  3764.             DWORD ReservedFlags : 30;
  3765.         } ;
  3766.     } ;
  3767. } PROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY, *PPROCESS_MITIGATION_STRICT_HANDLE_CHECK_POLICY;
  3768.  
  3769. typedef struct _PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY {
  3770.     union {
  3771.         DWORD Flags;
  3772.         struct {
  3773.             DWORD DisallowWin32kSystemCalls : 1;
  3774.             DWORD AuditDisallowWin32kSystemCalls : 1;
  3775.             DWORD ReservedFlags : 30;
  3776.         } ;
  3777.     } ;
  3778. } PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY, *PPROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY;
  3779.  
  3780. typedef struct _PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY {
  3781.     union {
  3782.         DWORD Flags;
  3783.         struct {
  3784.             DWORD DisableExtensionPoints : 1;
  3785.             DWORD ReservedFlags : 31;
  3786.         } ;
  3787.     } ;
  3788. } PROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY, *PPROCESS_MITIGATION_EXTENSION_POINT_DISABLE_POLICY;
  3789.  
  3790. typedef struct _PROCESS_MITIGATION_DYNAMIC_CODE_POLICY {
  3791.     union {
  3792.         DWORD Flags;
  3793.         struct {
  3794.             DWORD ProhibitDynamicCode : 1;
  3795.             DWORD AllowThreadOptOut : 1;
  3796.             DWORD AllowRemoteDowngrade : 1;
  3797.             DWORD AuditProhibitDynamicCode : 1;
  3798.             DWORD ReservedFlags : 28;
  3799.         } ;
  3800.     } ;
  3801. } PROCESS_MITIGATION_DYNAMIC_CODE_POLICY, *PPROCESS_MITIGATION_DYNAMIC_CODE_POLICY;
  3802.  
  3803. typedef struct _PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY {
  3804.     union {
  3805.         DWORD Flags;
  3806.         struct {
  3807.             DWORD EnableControlFlowGuard : 1;
  3808.             DWORD EnableExportSuppression : 1;
  3809.             DWORD StrictMode : 1;
  3810.             DWORD ReservedFlags : 29;
  3811.         } ;
  3812.     } ;
  3813. } PROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY, *PPROCESS_MITIGATION_CONTROL_FLOW_GUARD_POLICY;
  3814.  
  3815. typedef struct _PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY {
  3816.     union {
  3817.         DWORD Flags;
  3818.         struct {
  3819.             DWORD MicrosoftSignedOnly : 1;
  3820.             DWORD StoreSignedOnly : 1;
  3821.             DWORD MitigationOptIn : 1;
  3822.             DWORD AuditMicrosoftSignedOnly : 1;
  3823.             DWORD AuditStoreSignedOnly : 1;
  3824.             DWORD ReservedFlags : 27;
  3825.         } ;
  3826.     } ;
  3827. } PROCESS_MITIGATION_BINARY_SIGNATURE_POLICY, *PPROCESS_MITIGATION_BINARY_SIGNATURE_POLICY;
  3828.  
  3829. typedef struct _PROCESS_MITIGATION_FONT_DISABLE_POLICY {
  3830.     union {
  3831.         DWORD Flags;
  3832.         struct {
  3833.             DWORD DisableNonSystemFonts : 1;
  3834.             DWORD AuditNonSystemFontLoading : 1;
  3835.             DWORD ReservedFlags : 30;
  3836.         } ;
  3837.     } ;
  3838. } PROCESS_MITIGATION_FONT_DISABLE_POLICY, *PPROCESS_MITIGATION_FONT_DISABLE_POLICY;
  3839.  
  3840. typedef struct _PROCESS_MITIGATION_IMAGE_LOAD_POLICY {
  3841.     union {
  3842.         DWORD Flags;
  3843.         struct {
  3844.             DWORD NoRemoteImages : 1;
  3845.             DWORD NoLowMandatoryLabelImages : 1;
  3846.             DWORD PreferSystem32Images : 1;
  3847.             DWORD AuditNoRemoteImages : 1;
  3848.             DWORD AuditNoLowMandatoryLabelImages : 1;
  3849.             DWORD ReservedFlags : 27;
  3850.         } ;
  3851.     } ;
  3852. } PROCESS_MITIGATION_IMAGE_LOAD_POLICY, *PPROCESS_MITIGATION_IMAGE_LOAD_POLICY;
  3853.  
  3854. typedef struct _PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY {
  3855.     union {
  3856.         DWORD Flags;
  3857.         struct {
  3858.             DWORD FilterId: 4;
  3859.             DWORD ReservedFlags : 28;
  3860.         } ;
  3861.     } ;
  3862. } PROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY, *PPROCESS_MITIGATION_SYSTEM_CALL_FILTER_POLICY;
  3863.  
  3864. typedef struct _PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY {
  3865.     union {
  3866.         DWORD Flags;
  3867.         struct {
  3868.             DWORD EnableExportAddressFilter : 1;
  3869.             DWORD AuditExportAddressFilter : 1;
  3870.  
  3871.             DWORD EnableExportAddressFilterPlus : 1;
  3872.             DWORD AuditExportAddressFilterPlus : 1;
  3873.  
  3874.             DWORD EnableImportAddressFilter : 1;
  3875.             DWORD AuditImportAddressFilter : 1;
  3876.  
  3877.             DWORD EnableRopStackPivot : 1;
  3878.             DWORD AuditRopStackPivot : 1;
  3879.  
  3880.             DWORD EnableRopCallerCheck : 1;
  3881.             DWORD AuditRopCallerCheck : 1;
  3882.  
  3883.             DWORD EnableRopSimExec : 1;
  3884.             DWORD AuditRopSimExec : 1;
  3885.  
  3886.             DWORD ReservedFlags : 20;
  3887.         } ;
  3888.     } ;
  3889. } PROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY, *PPROCESS_MITIGATION_PAYLOAD_RESTRICTION_POLICY;
  3890.  
  3891. typedef struct _PROCESS_MITIGATION_CHILD_PROCESS_POLICY {
  3892.     union {
  3893.         DWORD Flags;
  3894.         struct {
  3895.             DWORD NoChildProcessCreation : 1;
  3896.             DWORD AuditNoChildProcessCreation : 1;
  3897.             DWORD AllowSecureProcessCreation : 1;
  3898.             DWORD ReservedFlags : 29;
  3899.         } ;
  3900.     } ;
  3901. } PROCESS_MITIGATION_CHILD_PROCESS_POLICY, *PPROCESS_MITIGATION_CHILD_PROCESS_POLICY;
  3902.  
  3903.  
  3904. typedef struct _JOBOBJECT_BASIC_ACCOUNTING_INFORMATION {
  3905.     LARGE_INTEGER TotalUserTime;
  3906.     LARGE_INTEGER TotalKernelTime;
  3907.     LARGE_INTEGER ThisPeriodTotalUserTime;
  3908.     LARGE_INTEGER ThisPeriodTotalKernelTime;
  3909.     DWORD TotalPageFaultCount;
  3910.     DWORD TotalProcesses;
  3911.     DWORD ActiveProcesses;
  3912.     DWORD TotalTerminatedProcesses;
  3913. } JOBOBJECT_BASIC_ACCOUNTING_INFORMATION, *PJOBOBJECT_BASIC_ACCOUNTING_INFORMATION;
  3914.  
  3915. typedef struct _JOBOBJECT_BASIC_LIMIT_INFORMATION {
  3916.     LARGE_INTEGER PerProcessUserTimeLimit;
  3917.     LARGE_INTEGER PerJobUserTimeLimit;
  3918.     DWORD LimitFlags;
  3919.     SIZE_T MinimumWorkingSetSize;
  3920.     SIZE_T MaximumWorkingSetSize;
  3921.     DWORD ActiveProcessLimit;
  3922.     ULONG_PTR Affinity;
  3923.     DWORD PriorityClass;
  3924.     DWORD SchedulingClass;
  3925. } JOBOBJECT_BASIC_LIMIT_INFORMATION, *PJOBOBJECT_BASIC_LIMIT_INFORMATION;
  3926.  
  3927. typedef struct _JOBOBJECT_EXTENDED_LIMIT_INFORMATION {
  3928.     JOBOBJECT_BASIC_LIMIT_INFORMATION BasicLimitInformation;
  3929.     IO_COUNTERS IoInfo;
  3930.     SIZE_T ProcessMemoryLimit;
  3931.     SIZE_T JobMemoryLimit;
  3932.     SIZE_T PeakProcessMemoryUsed;
  3933.     SIZE_T PeakJobMemoryUsed;
  3934. } JOBOBJECT_EXTENDED_LIMIT_INFORMATION, *PJOBOBJECT_EXTENDED_LIMIT_INFORMATION;
  3935.  
  3936.  
  3937. typedef struct _JOBOBJECT_BASIC_PROCESS_ID_LIST {
  3938.     DWORD NumberOfAssignedProcesses;
  3939.     DWORD NumberOfProcessIdsInList;
  3940.     ULONG_PTR ProcessIdList[1];
  3941. } JOBOBJECT_BASIC_PROCESS_ID_LIST, *PJOBOBJECT_BASIC_PROCESS_ID_LIST;
  3942.  
  3943. typedef struct _JOBOBJECT_BASIC_UI_RESTRICTIONS {
  3944.     DWORD UIRestrictionsClass;
  3945. } JOBOBJECT_BASIC_UI_RESTRICTIONS, *PJOBOBJECT_BASIC_UI_RESTRICTIONS;
  3946.  
  3947.  
  3948.  
  3949.  
  3950.  
  3951. typedef struct _JOBOBJECT_SECURITY_LIMIT_INFORMATION {
  3952.     DWORD SecurityLimitFlags ;
  3953.     HANDLE JobToken ;
  3954.     PTOKEN_GROUPS SidsToDisable ;
  3955.     PTOKEN_PRIVILEGES PrivilegesToDelete ;
  3956.     PTOKEN_GROUPS RestrictedSids ;
  3957. } JOBOBJECT_SECURITY_LIMIT_INFORMATION, *PJOBOBJECT_SECURITY_LIMIT_INFORMATION ;
  3958.  
  3959. typedef struct _JOBOBJECT_END_OF_JOB_TIME_INFORMATION {
  3960.     DWORD EndOfJobTimeAction;
  3961. } JOBOBJECT_END_OF_JOB_TIME_INFORMATION, *PJOBOBJECT_END_OF_JOB_TIME_INFORMATION;
  3962.  
  3963. typedef struct _JOBOBJECT_ASSOCIATE_COMPLETION_PORT {
  3964.     PVOID CompletionKey;
  3965.     HANDLE CompletionPort;
  3966. } JOBOBJECT_ASSOCIATE_COMPLETION_PORT, *PJOBOBJECT_ASSOCIATE_COMPLETION_PORT;
  3967.  
  3968. typedef struct _JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION {
  3969.     JOBOBJECT_BASIC_ACCOUNTING_INFORMATION BasicInfo;
  3970.     IO_COUNTERS IoInfo;
  3971. } JOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION, *PJOBOBJECT_BASIC_AND_IO_ACCOUNTING_INFORMATION;
  3972.  
  3973. typedef struct _JOBOBJECT_JOBSET_INFORMATION {
  3974.     DWORD MemberLevel;
  3975. } JOBOBJECT_JOBSET_INFORMATION, *PJOBOBJECT_JOBSET_INFORMATION;
  3976.  
  3977. typedef enum _JOBOBJECT_RATE_CONTROL_TOLERANCE {
  3978.     ToleranceLow = 1,
  3979.     ToleranceMedium,
  3980.     ToleranceHigh
  3981. } JOBOBJECT_RATE_CONTROL_TOLERANCE, *PJOBOBJECT_RATE_CONTROL_TOLERANCE;
  3982.  
  3983. typedef enum _JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL {
  3984.     ToleranceIntervalShort = 1,
  3985.     ToleranceIntervalMedium,
  3986.     ToleranceIntervalLong
  3987. } JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL,
  3988.   *PJOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL;
  3989.  
  3990. typedef struct _JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION {
  3991.     DWORD64 IoReadBytesLimit;
  3992.     DWORD64 IoWriteBytesLimit;
  3993.     LARGE_INTEGER PerJobUserTimeLimit;
  3994.     DWORD64 JobMemoryLimit;
  3995.     JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
  3996.     JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL RateControlToleranceInterval;
  3997.     DWORD LimitFlags;
  3998. } JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION, *PJOBOBJECT_NOTIFICATION_LIMIT_INFORMATION;
  3999.  
  4000. typedef struct JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION_2 {
  4001.     DWORD64 IoReadBytesLimit;
  4002.     DWORD64 IoWriteBytesLimit;
  4003.     LARGE_INTEGER PerJobUserTimeLimit;
  4004.     union {
  4005.         DWORD64 JobHighMemoryLimit;
  4006.         DWORD64 JobMemoryLimit;
  4007.     } ;
  4008.  
  4009.     union {
  4010.         JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
  4011.         JOBOBJECT_RATE_CONTROL_TOLERANCE CpuRateControlTolerance;
  4012.     } ;
  4013.  
  4014.     union {
  4015.         JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL RateControlToleranceInterval;
  4016.         JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL
  4017.             CpuRateControlToleranceInterval;
  4018.     } ;
  4019.  
  4020.     DWORD LimitFlags;
  4021.     JOBOBJECT_RATE_CONTROL_TOLERANCE IoRateControlTolerance;
  4022.     DWORD64 JobLowMemoryLimit;
  4023.     JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL IoRateControlToleranceInterval;
  4024.     JOBOBJECT_RATE_CONTROL_TOLERANCE NetRateControlTolerance;
  4025.     JOBOBJECT_RATE_CONTROL_TOLERANCE_INTERVAL NetRateControlToleranceInterval;
  4026. } JOBOBJECT_NOTIFICATION_LIMIT_INFORMATION_2;
  4027.  
  4028.  
  4029. typedef struct _JOBOBJECT_LIMIT_VIOLATION_INFORMATION {
  4030.     DWORD LimitFlags;
  4031.     DWORD ViolationLimitFlags;
  4032.     DWORD64 IoReadBytes;
  4033.     DWORD64 IoReadBytesLimit;
  4034.     DWORD64 IoWriteBytes;
  4035.     DWORD64 IoWriteBytesLimit;
  4036.     LARGE_INTEGER PerJobUserTime;
  4037.     LARGE_INTEGER PerJobUserTimeLimit;
  4038.     DWORD64 JobMemory;
  4039.     DWORD64 JobMemoryLimit;
  4040.     JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
  4041.     JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlToleranceLimit;
  4042. } JOBOBJECT_LIMIT_VIOLATION_INFORMATION, *PJOBOBJECT_LIMIT_VIOLATION_INFORMATION;
  4043.  
  4044. typedef struct JOBOBJECT_LIMIT_VIOLATION_INFORMATION_2 {
  4045.     DWORD LimitFlags;
  4046.     DWORD ViolationLimitFlags;
  4047.     DWORD64 IoReadBytes;
  4048.     DWORD64 IoReadBytesLimit;
  4049.     DWORD64 IoWriteBytes;
  4050.     DWORD64 IoWriteBytesLimit;
  4051.     LARGE_INTEGER PerJobUserTime;
  4052.     LARGE_INTEGER PerJobUserTimeLimit;
  4053.     DWORD64 JobMemory;
  4054.     union {
  4055.         DWORD64 JobHighMemoryLimit;
  4056.         DWORD64 JobMemoryLimit;
  4057.     } ;
  4058.  
  4059.     union {
  4060.         JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlTolerance;
  4061.         JOBOBJECT_RATE_CONTROL_TOLERANCE CpuRateControlTolerance;
  4062.     } ;
  4063.  
  4064.     union {
  4065.         JOBOBJECT_RATE_CONTROL_TOLERANCE RateControlToleranceLimit;
  4066.         JOBOBJECT_RATE_CONTROL_TOLERANCE CpuRateControlToleranceLimit;
  4067.     } ;
  4068.  
  4069.     DWORD64 JobLowMemoryLimit;
  4070.     JOBOBJECT_RATE_CONTROL_TOLERANCE IoRateControlTolerance;
  4071.     JOBOBJECT_RATE_CONTROL_TOLERANCE IoRateControlToleranceLimit;
  4072.     JOBOBJECT_RATE_CONTROL_TOLERANCE NetRateControlTolerance;
  4073.     JOBOBJECT_RATE_CONTROL_TOLERANCE NetRateControlToleranceLimit;
  4074. } JOBOBJECT_LIMIT_VIOLATION_INFORMATION_2;
  4075.  
  4076.  
  4077. typedef struct _JOBOBJECT_CPU_RATE_CONTROL_INFORMATION {
  4078.     DWORD ControlFlags;
  4079.     union {
  4080.         DWORD CpuRate;
  4081.         DWORD Weight;
  4082.         struct {
  4083.             WORD MinRate;
  4084.             WORD MaxRate;
  4085.         } ;
  4086.     } ;
  4087. } JOBOBJECT_CPU_RATE_CONTROL_INFORMATION, *PJOBOBJECT_CPU_RATE_CONTROL_INFORMATION;
  4088.  
  4089.  
  4090.  
  4091.  
  4092.  
  4093. typedef enum JOB_OBJECT_NET_RATE_CONTROL_FLAGS {
  4094.     JOB_OBJECT_NET_RATE_CONTROL_ENABLE = 0x1,
  4095.     JOB_OBJECT_NET_RATE_CONTROL_MAX_BANDWIDTH = 0x2,
  4096.     JOB_OBJECT_NET_RATE_CONTROL_DSCP_TAG = 0x4,
  4097.     JOB_OBJECT_NET_RATE_CONTROL_VALID_FLAGS = 0x7
  4098. } JOB_OBJECT_NET_RATE_CONTROL_FLAGS;
  4099.  
  4100.  
  4101.  
  4102.  
  4103. typedef char __C_ASSERT__[(JOB_OBJECT_NET_RATE_CONTROL_VALID_FLAGS == (JOB_OBJECT_NET_RATE_CONTROL_ENABLE + JOB_OBJECT_NET_RATE_CONTROL_MAX_BANDWIDTH + JOB_OBJECT_NET_RATE_CONTROL_DSCP_TAG))?1:-1];
  4104. # 12160 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4105. typedef struct JOBOBJECT_NET_RATE_CONTROL_INFORMATION {
  4106.     DWORD64 MaxBandwidth;
  4107.     JOB_OBJECT_NET_RATE_CONTROL_FLAGS ControlFlags;
  4108.     BYTE DscpTag;
  4109. } JOBOBJECT_NET_RATE_CONTROL_INFORMATION;
  4110. # 12173 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4111. typedef enum JOB_OBJECT_IO_RATE_CONTROL_FLAGS {
  4112.     JOB_OBJECT_IO_RATE_CONTROL_ENABLE = 0x1,
  4113.     JOB_OBJECT_IO_RATE_CONTROL_STANDALONE_VOLUME = 0x2,
  4114.     JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ALL = 0x4,
  4115.     JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ON_SOFT_CAP = 0x8,
  4116.     JOB_OBJECT_IO_RATE_CONTROL_VALID_FLAGS = JOB_OBJECT_IO_RATE_CONTROL_ENABLE |
  4117.                                              JOB_OBJECT_IO_RATE_CONTROL_STANDALONE_VOLUME |
  4118.                                              JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ALL |
  4119.                                              JOB_OBJECT_IO_RATE_CONTROL_FORCE_UNIT_ACCESS_ON_SOFT_CAP
  4120. } JOB_OBJECT_IO_RATE_CONTROL_FLAGS;
  4121.  
  4122.  
  4123.  
  4124.  
  4125.  
  4126.  
  4127.  
  4128. typedef struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE {
  4129.     LONG64 MaxIops;
  4130.     LONG64 MaxBandwidth;
  4131.     LONG64 ReservationIops;
  4132.     PWSTR VolumeName;
  4133.     DWORD BaseIoSize;
  4134.     JOB_OBJECT_IO_RATE_CONTROL_FLAGS ControlFlags;
  4135.     WORD VolumeNameLength;
  4136. } JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE;
  4137.  
  4138. typedef JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE
  4139.     JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE_V1;
  4140.  
  4141. typedef struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE_V2 {
  4142.     LONG64 MaxIops;
  4143.     LONG64 MaxBandwidth;
  4144.     LONG64 ReservationIops;
  4145.     PWSTR VolumeName;
  4146.     DWORD BaseIoSize;
  4147.     JOB_OBJECT_IO_RATE_CONTROL_FLAGS ControlFlags;
  4148.     WORD VolumeNameLength;
  4149.     LONG64 CriticalReservationIops;
  4150.     LONG64 ReservationBandwidth;
  4151.     LONG64 CriticalReservationBandwidth;
  4152.     LONG64 MaxTimePercent;
  4153.     LONG64 ReservationTimePercent;
  4154.     LONG64 CriticalReservationTimePercent;
  4155. } JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE_V2;
  4156.  
  4157. typedef struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE_V3 {
  4158.     LONG64 MaxIops;
  4159.     LONG64 MaxBandwidth;
  4160.     LONG64 ReservationIops;
  4161.     PWSTR VolumeName;
  4162.     DWORD BaseIoSize;
  4163.     JOB_OBJECT_IO_RATE_CONTROL_FLAGS ControlFlags;
  4164.     WORD VolumeNameLength;
  4165.     LONG64 CriticalReservationIops;
  4166.     LONG64 ReservationBandwidth;
  4167.     LONG64 CriticalReservationBandwidth;
  4168.     LONG64 MaxTimePercent;
  4169.     LONG64 ReservationTimePercent;
  4170.     LONG64 CriticalReservationTimePercent;
  4171.     LONG64 SoftMaxIops;
  4172.     LONG64 SoftMaxBandwidth;
  4173.     LONG64 SoftMaxTimePercent;
  4174.     LONG64 LimitExcessNotifyIops;
  4175.     LONG64 LimitExcessNotifyBandwidth;
  4176.     LONG64 LimitExcessNotifyTimePercent;
  4177. } JOBOBJECT_IO_RATE_CONTROL_INFORMATION_NATIVE_V3;
  4178.  
  4179.  
  4180.  
  4181. typedef enum JOBOBJECT_IO_ATTRIBUTION_CONTROL_FLAGS {
  4182.     JOBOBJECT_IO_ATTRIBUTION_CONTROL_ENABLE = 0x1,
  4183.     JOBOBJECT_IO_ATTRIBUTION_CONTROL_DISABLE = 0x2,
  4184.     JOBOBJECT_IO_ATTRIBUTION_CONTROL_VALID_FLAGS = 0x3
  4185. } JOBOBJECT_IO_ATTRIBUTION_CONTROL_FLAGS;
  4186.  
  4187. typedef struct _JOBOBJECT_IO_ATTRIBUTION_STATS {
  4188.  
  4189.     ULONG_PTR IoCount;
  4190.     ULONGLONG TotalNonOverlappedQueueTime;
  4191.     ULONGLONG TotalNonOverlappedServiceTime;
  4192.     ULONGLONG TotalSize;
  4193.  
  4194. } JOBOBJECT_IO_ATTRIBUTION_STATS, *PJOBOBJECT_IO_ATTRIBUTION_STATS;
  4195.  
  4196. typedef struct _JOBOBJECT_IO_ATTRIBUTION_INFORMATION {
  4197.     DWORD ControlFlags;
  4198.  
  4199.     JOBOBJECT_IO_ATTRIBUTION_STATS ReadStats;
  4200.     JOBOBJECT_IO_ATTRIBUTION_STATS WriteStats;
  4201.  
  4202. } JOBOBJECT_IO_ATTRIBUTION_INFORMATION, *PJOBOBJECT_IO_ATTRIBUTION_INFORMATION;
  4203. # 12393 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4204. typedef enum _JOBOBJECTINFOCLASS {
  4205.     JobObjectBasicAccountingInformation = 1,
  4206.     JobObjectBasicLimitInformation,
  4207.     JobObjectBasicProcessIdList,
  4208.     JobObjectBasicUIRestrictions,
  4209.     JobObjectSecurityLimitInformation,
  4210.     JobObjectEndOfJobTimeInformation,
  4211.     JobObjectAssociateCompletionPortInformation,
  4212.     JobObjectBasicAndIoAccountingInformation,
  4213.     JobObjectExtendedLimitInformation,
  4214.     JobObjectJobSetInformation,
  4215.     JobObjectGroupInformation,
  4216.     JobObjectNotificationLimitInformation,
  4217.     JobObjectLimitViolationInformation,
  4218.     JobObjectGroupInformationEx,
  4219.     JobObjectCpuRateControlInformation,
  4220.     JobObjectCompletionFilter,
  4221.     JobObjectCompletionCounter,
  4222.     JobObjectReserved1Information = 18,
  4223.     JobObjectReserved2Information,
  4224.     JobObjectReserved3Information,
  4225.     JobObjectReserved4Information,
  4226.     JobObjectReserved5Information,
  4227.     JobObjectReserved6Information,
  4228.     JobObjectReserved7Information,
  4229.     JobObjectReserved8Information,
  4230.     JobObjectReserved9Information,
  4231.     JobObjectReserved10Information,
  4232.     JobObjectReserved11Information,
  4233.     JobObjectReserved12Information,
  4234.     JobObjectReserved13Information,
  4235.     JobObjectReserved14Information = 31,
  4236.     JobObjectNetRateControlInformation,
  4237.     JobObjectNotificationLimitInformation2,
  4238.     JobObjectLimitViolationInformation2,
  4239.     JobObjectCreateSilo,
  4240.     JobObjectSiloBasicInformation,
  4241.     JobObjectReserved15Information = 37,
  4242.     JobObjectReserved16Information = 38,
  4243.     JobObjectReserved17Information = 39,
  4244.     JobObjectReserved18Information = 40,
  4245.     JobObjectReserved19Information = 41,
  4246.     JobObjectReserved20Information = 42,
  4247.     JobObjectReserved21Information = 43,
  4248.     JobObjectReserved22Information = 44,
  4249.     JobObjectReserved23Information = 45,
  4250.     JobObjectReserved24Information = 46,
  4251.     JobObjectReserved25Information = 47,
  4252.     MaxJobObjectInfoClass
  4253. } JOBOBJECTINFOCLASS;
  4254.  
  4255.  
  4256.  
  4257. typedef struct _SILOOBJECT_BASIC_INFORMATION {
  4258.     DWORD SiloId;
  4259.     DWORD SiloParentId;
  4260.     DWORD NumberOfProcesses;
  4261.     BOOLEAN IsInServerSilo;
  4262.     BYTE Reserved[3];
  4263. } SILOOBJECT_BASIC_INFORMATION, *PSILOOBJECT_BASIC_INFORMATION;
  4264.  
  4265. typedef enum _SERVERSILO_STATE {
  4266.     SERVERSILO_INITING = 0,
  4267.     SERVERSILO_STARTED,
  4268.     SERVERSILO_SHUTTING_DOWN,
  4269.     SERVERSILO_TERMINATING,
  4270.     SERVERSILO_TERMINATED,
  4271. } SERVERSILO_STATE, *PSERVERSILO_STATE;
  4272.  
  4273. typedef struct _SERVERSILO_BASIC_INFORMATION {
  4274.     DWORD ServiceSessionId;
  4275.     SERVERSILO_STATE State;
  4276.     DWORD ExitStatus;
  4277. } SERVERSILO_BASIC_INFORMATION, *PSERVERSILO_BASIC_INFORMATION;
  4278.  
  4279.  
  4280. typedef enum _FIRMWARE_TYPE {
  4281.     FirmwareTypeUnknown,
  4282.     FirmwareTypeBios,
  4283.     FirmwareTypeUefi,
  4284.     FirmwareTypeMax
  4285. } FIRMWARE_TYPE, *PFIRMWARE_TYPE;
  4286. # 12508 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4287. typedef enum _LOGICAL_PROCESSOR_RELATIONSHIP {
  4288.     RelationProcessorCore,
  4289.     RelationNumaNode,
  4290.     RelationCache,
  4291.     RelationProcessorPackage,
  4292.     RelationGroup,
  4293.     RelationAll = 0xffff
  4294. } LOGICAL_PROCESSOR_RELATIONSHIP;
  4295.  
  4296.  
  4297.  
  4298. typedef enum _PROCESSOR_CACHE_TYPE {
  4299.     CacheUnified,
  4300.     CacheInstruction,
  4301.     CacheData,
  4302.     CacheTrace
  4303. } PROCESSOR_CACHE_TYPE;
  4304.  
  4305.  
  4306.  
  4307. typedef struct _CACHE_DESCRIPTOR {
  4308.     BYTE Level;
  4309.     BYTE Associativity;
  4310.     WORD LineSize;
  4311.     DWORD Size;
  4312.     PROCESSOR_CACHE_TYPE Type;
  4313. } CACHE_DESCRIPTOR, *PCACHE_DESCRIPTOR;
  4314.  
  4315. typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION {
  4316.     ULONG_PTR ProcessorMask;
  4317.     LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
  4318.     union {
  4319.         struct {
  4320.             BYTE Flags;
  4321.         } ProcessorCore;
  4322.         struct {
  4323.             DWORD NodeNumber;
  4324.         } NumaNode;
  4325.         CACHE_DESCRIPTOR Cache;
  4326.         ULONGLONG Reserved[2];
  4327.     } ;
  4328. } SYSTEM_LOGICAL_PROCESSOR_INFORMATION, *PSYSTEM_LOGICAL_PROCESSOR_INFORMATION;
  4329.  
  4330. typedef struct _PROCESSOR_RELATIONSHIP {
  4331.     BYTE Flags;
  4332.     BYTE EfficiencyClass;
  4333.     BYTE Reserved[20];
  4334.     WORD GroupCount;
  4335.                              GROUP_AFFINITY GroupMask[1];
  4336. } PROCESSOR_RELATIONSHIP, *PPROCESSOR_RELATIONSHIP;
  4337.  
  4338. typedef struct _NUMA_NODE_RELATIONSHIP {
  4339.     DWORD NodeNumber;
  4340.     BYTE Reserved[20];
  4341.     GROUP_AFFINITY GroupMask;
  4342. } NUMA_NODE_RELATIONSHIP, *PNUMA_NODE_RELATIONSHIP;
  4343.  
  4344. typedef struct _CACHE_RELATIONSHIP {
  4345.     BYTE Level;
  4346.     BYTE Associativity;
  4347.     WORD LineSize;
  4348.     DWORD CacheSize;
  4349.     PROCESSOR_CACHE_TYPE Type;
  4350.     BYTE Reserved[20];
  4351.     GROUP_AFFINITY GroupMask;
  4352. } CACHE_RELATIONSHIP, *PCACHE_RELATIONSHIP;
  4353.  
  4354. typedef struct _PROCESSOR_GROUP_INFO {
  4355.     BYTE MaximumProcessorCount;
  4356.     BYTE ActiveProcessorCount;
  4357.     BYTE Reserved[38];
  4358.     KAFFINITY ActiveProcessorMask;
  4359. } PROCESSOR_GROUP_INFO, *PPROCESSOR_GROUP_INFO;
  4360.  
  4361. typedef struct _GROUP_RELATIONSHIP {
  4362.     WORD MaximumGroupCount;
  4363.     WORD ActiveGroupCount;
  4364.     BYTE Reserved[20];
  4365.     PROCESSOR_GROUP_INFO GroupInfo[1];
  4366. } GROUP_RELATIONSHIP, *PGROUP_RELATIONSHIP;
  4367.  
  4368.                           struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX {
  4369.     LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
  4370.     DWORD Size;
  4371.     union {
  4372.         PROCESSOR_RELATIONSHIP Processor;
  4373.         NUMA_NODE_RELATIONSHIP NumaNode;
  4374.         CACHE_RELATIONSHIP Cache;
  4375.         GROUP_RELATIONSHIP Group;
  4376.     } ;
  4377. };
  4378.  
  4379. typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX, *PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX;
  4380.  
  4381. typedef enum _CPU_SET_INFORMATION_TYPE {
  4382.     CpuSetInformation
  4383. } CPU_SET_INFORMATION_TYPE, *PCPU_SET_INFORMATION_TYPE;
  4384.  
  4385.                           struct _SYSTEM_CPU_SET_INFORMATION {
  4386.     DWORD Size;
  4387.     CPU_SET_INFORMATION_TYPE Type;
  4388.     union {
  4389.         struct {
  4390.             DWORD Id;
  4391.             WORD Group;
  4392.             BYTE LogicalProcessorIndex;
  4393.             BYTE CoreIndex;
  4394.             BYTE LastLevelCacheIndex;
  4395.             BYTE NumaNodeIndex;
  4396.             BYTE EfficiencyClass;
  4397.             union {
  4398.  
  4399.  
  4400.  
  4401.  
  4402.  
  4403.  
  4404.                 BYTE AllFlags;
  4405.                 struct {
  4406.                     BYTE Parked : 1;
  4407.                     BYTE Allocated : 1;
  4408.                     BYTE AllocatedToTargetProcess : 1;
  4409.                     BYTE RealTime : 1;
  4410.                     BYTE ReservedFlags : 4;
  4411.                 } ;
  4412.             } ;
  4413.  
  4414.             union {
  4415.                 DWORD Reserved;
  4416.                 BYTE SchedulingClass;
  4417.             };
  4418.  
  4419.             DWORD64 AllocationTag;
  4420.         } CpuSet;
  4421.     } ;
  4422. };
  4423.  
  4424. typedef struct _SYSTEM_CPU_SET_INFORMATION SYSTEM_CPU_SET_INFORMATION, *PSYSTEM_CPU_SET_INFORMATION;
  4425.  
  4426.  
  4427.  
  4428. typedef struct _SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION {
  4429.     DWORD64 CycleTime;
  4430. } SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION, *PSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION;
  4431. # 12810 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4432. typedef struct _XSTATE_FEATURE {
  4433.     DWORD Offset;
  4434.     DWORD Size;
  4435. } XSTATE_FEATURE, *PXSTATE_FEATURE;
  4436.  
  4437. typedef struct _XSTATE_CONFIGURATION {
  4438.  
  4439.     DWORD64 EnabledFeatures;
  4440.  
  4441.  
  4442.     DWORD64 EnabledVolatileFeatures;
  4443.  
  4444.  
  4445.     DWORD Size;
  4446.  
  4447.  
  4448.     union {
  4449.         DWORD ControlFlags;
  4450.         struct
  4451.         {
  4452.             DWORD OptimizedSave : 1;
  4453.             DWORD CompactionEnabled : 1;
  4454.         };
  4455.     };
  4456.  
  4457.  
  4458.     XSTATE_FEATURE Features[(64)];
  4459.  
  4460.  
  4461.     DWORD64 EnabledSupervisorFeatures;
  4462.  
  4463.  
  4464.     DWORD64 AlignedFeatures;
  4465.  
  4466.  
  4467.     DWORD AllFeatureSize;
  4468.  
  4469.  
  4470.     DWORD AllFeatures[(64)];
  4471.  
  4472. } XSTATE_CONFIGURATION, *PXSTATE_CONFIGURATION;
  4473.  
  4474.  
  4475.  
  4476. typedef struct _MEMORY_BASIC_INFORMATION {
  4477.     PVOID BaseAddress;
  4478.     PVOID AllocationBase;
  4479.     DWORD AllocationProtect;
  4480.     SIZE_T RegionSize;
  4481.     DWORD State;
  4482.     DWORD Protect;
  4483.     DWORD Type;
  4484. } MEMORY_BASIC_INFORMATION, *PMEMORY_BASIC_INFORMATION;
  4485.  
  4486.  
  4487.  
  4488. typedef struct _MEMORY_BASIC_INFORMATION32 {
  4489.     DWORD BaseAddress;
  4490.     DWORD AllocationBase;
  4491.     DWORD AllocationProtect;
  4492.     DWORD RegionSize;
  4493.     DWORD State;
  4494.     DWORD Protect;
  4495.     DWORD Type;
  4496. } MEMORY_BASIC_INFORMATION32, *PMEMORY_BASIC_INFORMATION32;
  4497.  
  4498. typedef struct __attribute__((aligned(16))) _MEMORY_BASIC_INFORMATION64 {
  4499.     ULONGLONG BaseAddress;
  4500.     ULONGLONG AllocationBase;
  4501.     DWORD AllocationProtect;
  4502.     DWORD __alignment1;
  4503.     ULONGLONG RegionSize;
  4504.     DWORD State;
  4505.     DWORD Protect;
  4506.     DWORD Type;
  4507.     DWORD __alignment2;
  4508. } MEMORY_BASIC_INFORMATION64, *PMEMORY_BASIC_INFORMATION64;
  4509. # 12916 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4510. typedef struct _CFG_CALL_TARGET_INFO {
  4511.     ULONG_PTR Offset;
  4512.     ULONG_PTR Flags;
  4513. } CFG_CALL_TARGET_INFO, *PCFG_CALL_TARGET_INFO;
  4514. # 12984 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4515. typedef struct MEM_ADDRESS_REQUIREMENTS {
  4516.     PVOID LowestStartingAddress;
  4517.     PVOID HighestEndingAddress;
  4518.     SIZE_T Alignment;
  4519. } MEM_ADDRESS_REQUIREMENTS, *PMEM_ADDRESS_REQUIREMENTS;
  4520.  
  4521. typedef enum MEM_EXTENDED_PARAMETER_TYPE {
  4522.     MemExtendedParameterInvalidType = 0,
  4523.     MemExtendedParameterAddressRequirements,
  4524.     MemExtendedParameterNumaNode,
  4525.     MemExtendedParameterPartitionHandle,
  4526.     MemExtendedParameterMax
  4527. } MEM_EXTENDED_PARAMETER_TYPE, *PMEM_EXTENDED_PARAMETER_TYPE;
  4528.  
  4529.  
  4530.  
  4531. typedef struct __attribute__((aligned(8))) MEM_EXTENDED_PARAMETER {
  4532.  
  4533.     struct {
  4534.         DWORD64 Type : 8;
  4535.         DWORD64 Reserved : 64 - 8;
  4536.     } ;
  4537.  
  4538.     union {
  4539.         DWORD64 ULong64;
  4540.         PVOID Pointer;
  4541.         SIZE_T Size;
  4542.         HANDLE Handle;
  4543.         DWORD ULong;
  4544.     } ;
  4545.  
  4546. } MEM_EXTENDED_PARAMETER, *PMEM_EXTENDED_PARAMETER;
  4547. # 13036 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4548. typedef struct _ENCLAVE_CREATE_INFO_SGX {
  4549.     BYTE Secs[4096];
  4550. } ENCLAVE_CREATE_INFO_SGX, *PENCLAVE_CREATE_INFO_SGX;
  4551.  
  4552. typedef struct _ENCLAVE_INIT_INFO_SGX {
  4553.     BYTE SigStruct[1808];
  4554.     BYTE Reserved1[240];
  4555.     BYTE EInitToken[304];
  4556.     BYTE Reserved2[1744];
  4557. } ENCLAVE_INIT_INFO_SGX, *PENCLAVE_INIT_INFO_SGX;
  4558.  
  4559.  
  4560.  
  4561. typedef struct _ENCLAVE_CREATE_INFO_VBS {
  4562.     DWORD Flags;
  4563.     BYTE OwnerID[32];
  4564. } ENCLAVE_CREATE_INFO_VBS, *PENCLAVE_CREATE_INFO_VBS;
  4565.  
  4566.  
  4567.  
  4568.  
  4569. typedef struct _ENCLAVE_INIT_INFO_VBS {
  4570.     DWORD Length;
  4571.     DWORD ThreadCount;
  4572. } ENCLAVE_INIT_INFO_VBS, *PENCLAVE_INIT_INFO_VBS;
  4573.  
  4574.  
  4575.  
  4576. typedef PVOID (ENCLAVE_TARGET_FUNCTION)(PVOID);
  4577. typedef ENCLAVE_TARGET_FUNCTION (*PENCLAVE_TARGET_FUNCTION);
  4578. typedef PENCLAVE_TARGET_FUNCTION LPENCLAVE_TARGET_FUNCTION;
  4579. # 13208 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4580. typedef struct _FILE_ID_128 {
  4581.     BYTE Identifier[16];
  4582. } FILE_ID_128, *PFILE_ID_128;
  4583.  
  4584.  
  4585.  
  4586.  
  4587.  
  4588. typedef struct _FILE_NOTIFY_INFORMATION {
  4589.     DWORD NextEntryOffset;
  4590.     DWORD Action;
  4591.     DWORD FileNameLength;
  4592.     WCHAR FileName[1];
  4593. } FILE_NOTIFY_INFORMATION, *PFILE_NOTIFY_INFORMATION;
  4594.  
  4595.  
  4596. typedef struct _FILE_NOTIFY_EXTENDED_INFORMATION {
  4597.     DWORD NextEntryOffset;
  4598.     DWORD Action;
  4599.     LARGE_INTEGER CreationTime;
  4600.     LARGE_INTEGER LastModificationTime;
  4601.     LARGE_INTEGER LastChangeTime;
  4602.     LARGE_INTEGER LastAccessTime;
  4603.     LARGE_INTEGER AllocatedLength;
  4604.     LARGE_INTEGER FileSize;
  4605.     DWORD FileAttributes;
  4606.     DWORD ReparsePointTag;
  4607.     LARGE_INTEGER FileId;
  4608.     LARGE_INTEGER ParentFileId;
  4609.     DWORD FileNameLength;
  4610.     WCHAR FileName[1];
  4611. } FILE_NOTIFY_EXTENDED_INFORMATION, *PFILE_NOTIFY_EXTENDED_INFORMATION;
  4612.  
  4613.  
  4614.  
  4615.  
  4616.  
  4617.  
  4618.  
  4619. typedef union _FILE_SEGMENT_ELEMENT {
  4620.     PVOID64 Buffer;
  4621.     ULONGLONG Alignment;
  4622. }FILE_SEGMENT_ELEMENT, *PFILE_SEGMENT_ELEMENT;
  4623. # 13321 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4624. typedef struct _REPARSE_GUID_DATA_BUFFER {
  4625.     DWORD ReparseTag;
  4626.     WORD ReparseDataLength;
  4627.     WORD Reserved;
  4628.     GUID ReparseGuid;
  4629.     struct {
  4630.         BYTE DataBuffer[1];
  4631.     } GenericReparseBuffer;
  4632. } REPARSE_GUID_DATA_BUFFER, *PREPARSE_GUID_DATA_BUFFER;
  4633. # 13470 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4634. typedef struct _SCRUB_DATA_INPUT {
  4635.  
  4636.  
  4637.  
  4638.  
  4639.  
  4640.     DWORD Size;
  4641. # 13485 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4642.     DWORD Flags;
  4643.  
  4644.  
  4645.  
  4646.  
  4647.  
  4648.  
  4649.  
  4650.     DWORD MaximumIos;
  4651.  
  4652.  
  4653.  
  4654.  
  4655.  
  4656.  
  4657.  
  4658.     DWORD ObjectId[4];
  4659.  
  4660.  
  4661.  
  4662.  
  4663.  
  4664.     DWORD Reserved[13];
  4665.  
  4666.  
  4667.  
  4668.  
  4669.  
  4670.  
  4671.  
  4672.     BYTE ResumeContext[816];
  4673.  
  4674. } SCRUB_DATA_INPUT, *PSCRUB_DATA_INPUT;
  4675.  
  4676.  
  4677.  
  4678. typedef struct _SCRUB_PARITY_EXTENT {
  4679.  
  4680.     LONGLONG Offset;
  4681.  
  4682.     ULONGLONG Length;
  4683.  
  4684. } SCRUB_PARITY_EXTENT, *PSCRUB_PARITY_EXTENT;
  4685.  
  4686. typedef struct _SCRUB_PARITY_EXTENT_DATA {
  4687.  
  4688.  
  4689.  
  4690.  
  4691.  
  4692.     WORD Size;
  4693.  
  4694.  
  4695.  
  4696.  
  4697.  
  4698.     WORD Flags;
  4699.  
  4700.  
  4701.  
  4702.  
  4703.  
  4704.     WORD NumberOfParityExtents;
  4705.  
  4706.  
  4707.  
  4708.  
  4709.  
  4710.     WORD MaximumNumberOfParityExtents;
  4711.  
  4712.  
  4713.  
  4714.  
  4715.  
  4716.     SCRUB_PARITY_EXTENT ParityExtents[1];
  4717.  
  4718. } SCRUB_PARITY_EXTENT_DATA, *PSCRUB_PARITY_EXTENT_DATA;
  4719.  
  4720.  
  4721.  
  4722. typedef struct _SCRUB_DATA_OUTPUT {
  4723.  
  4724.  
  4725.  
  4726.  
  4727.  
  4728.     DWORD Size;
  4729. # 13581 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4730.     DWORD Flags;
  4731.  
  4732.  
  4733.  
  4734.  
  4735.  
  4736.     DWORD Status;
  4737.  
  4738.  
  4739.  
  4740.  
  4741.  
  4742.  
  4743.     ULONGLONG ErrorFileOffset;
  4744.  
  4745.  
  4746.  
  4747.  
  4748.  
  4749.  
  4750.     ULONGLONG ErrorLength;
  4751.  
  4752.  
  4753.  
  4754.  
  4755.  
  4756.     ULONGLONG NumberOfBytesRepaired;
  4757.  
  4758.  
  4759.  
  4760.  
  4761.  
  4762.     ULONGLONG NumberOfBytesFailed;
  4763.  
  4764.  
  4765.  
  4766.  
  4767.  
  4768.     ULONGLONG InternalFileReference;
  4769. # 13630 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4770.     WORD ResumeContextLength;
  4771.  
  4772.  
  4773.  
  4774.  
  4775.  
  4776.  
  4777.  
  4778.     WORD ParityExtentDataOffset;
  4779.  
  4780.  
  4781.  
  4782.  
  4783.  
  4784.     DWORD Reserved[5];
  4785. # 13669 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4786.     BYTE ResumeContext[816];
  4787.  
  4788. } SCRUB_DATA_OUTPUT, *PSCRUB_DATA_OUTPUT;
  4789. # 13683 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4790. typedef enum _SharedVirtualDiskSupportType
  4791. {
  4792.  
  4793.  
  4794.  
  4795.     SharedVirtualDisksUnsupported = 0,
  4796.  
  4797.  
  4798.  
  4799.  
  4800.     SharedVirtualDisksSupported = 1,
  4801.  
  4802.  
  4803.  
  4804.  
  4805.  
  4806.     SharedVirtualDiskSnapshotsSupported = 3,
  4807.  
  4808.  
  4809.  
  4810.  
  4811.  
  4812.     SharedVirtualDiskCDPSnapshotsSupported = 7
  4813. } SharedVirtualDiskSupportType;
  4814.  
  4815. typedef enum _SharedVirtualDiskHandleState
  4816. {
  4817.  
  4818.  
  4819.  
  4820.     SharedVirtualDiskHandleStateNone = 0,
  4821.  
  4822.  
  4823.  
  4824.  
  4825.  
  4826.     SharedVirtualDiskHandleStateFileShared = 1,
  4827.  
  4828.  
  4829.  
  4830.  
  4831.  
  4832.     SharedVirtualDiskHandleStateHandleShared = 3
  4833. } SharedVirtualDiskHandleState;
  4834.  
  4835.  
  4836.  
  4837.  
  4838.  
  4839. typedef struct _SHARED_VIRTUAL_DISK_SUPPORT {
  4840.  
  4841.  
  4842.  
  4843.  
  4844.     SharedVirtualDiskSupportType SharedVirtualDiskSupport;
  4845.  
  4846.  
  4847.  
  4848.  
  4849.  
  4850.     SharedVirtualDiskHandleState HandleState;
  4851. } SHARED_VIRTUAL_DISK_SUPPORT, *PSHARED_VIRTUAL_DISK_SUPPORT;
  4852. # 13796 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4853. typedef struct _NETWORK_APP_INSTANCE_EA {
  4854.  
  4855.  
  4856.  
  4857.  
  4858.  
  4859.  
  4860.     GUID AppInstanceID;
  4861.  
  4862.  
  4863.  
  4864.  
  4865.  
  4866.     DWORD CsvFlags;
  4867.  
  4868. } NETWORK_APP_INSTANCE_EA, *PNETWORK_APP_INSTANCE_EA;
  4869. # 13838 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4870. extern const GUID GUID_MAX_POWER_SAVINGS;
  4871.  
  4872.  
  4873.  
  4874.  
  4875.  
  4876.  
  4877. extern const GUID GUID_MIN_POWER_SAVINGS;
  4878.  
  4879.  
  4880.  
  4881.  
  4882.  
  4883.  
  4884. extern const GUID GUID_TYPICAL_POWER_SAVINGS;
  4885.  
  4886.  
  4887.  
  4888.  
  4889.  
  4890.  
  4891.  
  4892. extern const GUID NO_SUBGROUP_GUID;
  4893.  
  4894.  
  4895.  
  4896.  
  4897.  
  4898.  
  4899.  
  4900. extern const GUID ALL_POWERSCHEMES_GUID;
  4901. # 13905 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4902. extern const GUID GUID_POWERSCHEME_PERSONALITY;
  4903. # 13914 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4904. extern const GUID GUID_ACTIVE_POWERSCHEME;
  4905. # 13929 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4906. extern const GUID GUID_IDLE_RESILIENCY_SUBGROUP;
  4907.  
  4908.  
  4909.  
  4910.  
  4911.  
  4912.  
  4913.  
  4914. extern const GUID GUID_IDLE_RESILIENCY_PERIOD;
  4915.  
  4916.  
  4917.  
  4918.  
  4919.  
  4920. extern const GUID GUID_DEEP_SLEEP_ENABLED;
  4921. # 13952 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4922. extern const GUID GUID_DEEP_SLEEP_PLATFORM_STATE;
  4923.  
  4924.  
  4925.  
  4926.  
  4927.  
  4928.  
  4929. extern const GUID GUID_DISK_COALESCING_POWERDOWN_TIMEOUT;
  4930. # 13972 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4931. extern const GUID GUID_EXECUTION_REQUIRED_REQUEST_TIMEOUT;
  4932. # 13983 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4933. extern const GUID GUID_VIDEO_SUBGROUP;
  4934.  
  4935.  
  4936.  
  4937.  
  4938.  
  4939.  
  4940.  
  4941. extern const GUID GUID_VIDEO_POWERDOWN_TIMEOUT;
  4942. # 14000 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4943. extern const GUID GUID_VIDEO_ANNOYANCE_TIMEOUT;
  4944. # 14009 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  4945. extern const GUID GUID_VIDEO_ADAPTIVE_PERCENT_INCREASE;
  4946.  
  4947.  
  4948.  
  4949.  
  4950.  
  4951.  
  4952.  
  4953. extern const GUID GUID_VIDEO_DIM_TIMEOUT;
  4954.  
  4955.  
  4956.  
  4957.  
  4958.  
  4959.  
  4960.  
  4961. extern const GUID GUID_VIDEO_ADAPTIVE_POWERDOWN;
  4962.  
  4963.  
  4964.  
  4965.  
  4966.  
  4967.  
  4968. extern const GUID GUID_MONITOR_POWER_ON;
  4969.  
  4970.  
  4971.  
  4972.  
  4973.  
  4974.  
  4975. extern const GUID GUID_DEVICE_POWER_POLICY_VIDEO_BRIGHTNESS;
  4976.  
  4977.  
  4978.  
  4979.  
  4980.  
  4981.  
  4982. extern const GUID GUID_DEVICE_POWER_POLICY_VIDEO_DIM_BRIGHTNESS;
  4983.  
  4984.  
  4985.  
  4986.  
  4987.  
  4988.  
  4989. extern const GUID GUID_VIDEO_CURRENT_MONITOR_BRIGHTNESS;
  4990.  
  4991.  
  4992.  
  4993.  
  4994.  
  4995.  
  4996.  
  4997. extern const GUID GUID_VIDEO_ADAPTIVE_DISPLAY_BRIGHTNESS;
  4998.  
  4999.  
  5000.  
  5001.  
  5002.  
  5003.  
  5004. extern const GUID GUID_CONSOLE_DISPLAY_STATE;
  5005.  
  5006.  
  5007.  
  5008.  
  5009.  
  5010.  
  5011.  
  5012. extern const GUID GUID_ALLOW_DISPLAY_REQUIRED;
  5013. # 14085 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5014. extern const GUID GUID_VIDEO_CONSOLE_LOCK_TIMEOUT;
  5015.  
  5016.  
  5017.  
  5018.  
  5019.  
  5020.  
  5021. extern const GUID GUID_ADAPTIVE_POWER_BEHAVIOR_SUBGROUP;
  5022.  
  5023.  
  5024.  
  5025.  
  5026.  
  5027.  
  5028. extern const GUID GUID_NON_ADAPTIVE_INPUT_TIMEOUT;
  5029.  
  5030.  
  5031.  
  5032.  
  5033.  
  5034.  
  5035. extern const GUID GUID_ADAPTIVE_INPUT_CONTROLLER_STATE;
  5036.  
  5037.  
  5038.  
  5039.  
  5040.  
  5041.  
  5042.  
  5043. extern const GUID GUID_DISK_SUBGROUP;
  5044.  
  5045.  
  5046.  
  5047.  
  5048. extern const GUID GUID_DISK_MAX_POWER;
  5049.  
  5050.  
  5051.  
  5052.  
  5053.  
  5054. extern const GUID GUID_DISK_POWERDOWN_TIMEOUT;
  5055.  
  5056.  
  5057.  
  5058.  
  5059.  
  5060.  
  5061. extern const GUID GUID_DISK_IDLE_TIMEOUT;
  5062. # 14141 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5063. extern const GUID GUID_DISK_BURST_IGNORE_THRESHOLD;
  5064.  
  5065.  
  5066.  
  5067.  
  5068.  
  5069. extern const GUID GUID_DISK_ADAPTIVE_POWERDOWN;
  5070. # 14156 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5071. extern const GUID GUID_SLEEP_SUBGROUP;
  5072.  
  5073.  
  5074.  
  5075.  
  5076.  
  5077.  
  5078.  
  5079. extern const GUID GUID_SLEEP_IDLE_THRESHOLD;
  5080.  
  5081.  
  5082.  
  5083.  
  5084.  
  5085. extern const GUID GUID_STANDBY_TIMEOUT;
  5086. # 14179 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5087. extern const GUID GUID_UNATTEND_SLEEP_TIMEOUT;
  5088.  
  5089.  
  5090.  
  5091.  
  5092.  
  5093. extern const GUID GUID_HIBERNATE_TIMEOUT;
  5094.  
  5095.  
  5096.  
  5097.  
  5098.  
  5099. extern const GUID GUID_HIBERNATE_FASTS4_POLICY;
  5100. # 14200 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5101. extern const GUID GUID_CRITICAL_POWER_TRANSITION;
  5102.  
  5103.  
  5104.  
  5105.  
  5106.  
  5107. extern const GUID GUID_SYSTEM_AWAYMODE;
  5108.  
  5109.  
  5110.  
  5111.  
  5112.  
  5113.  
  5114. extern const GUID GUID_ALLOW_AWAYMODE;
  5115.  
  5116.  
  5117.  
  5118.  
  5119.  
  5120.  
  5121. extern const GUID GUID_USER_PRESENCE_PREDICTION;
  5122.  
  5123.  
  5124.  
  5125.  
  5126.  
  5127.  
  5128. extern const GUID GUID_STANDBY_BUDGET_GRACE_PERIOD;
  5129.  
  5130.  
  5131.  
  5132.  
  5133.  
  5134.  
  5135. extern const GUID GUID_STANDBY_BUDGET_PERCENT;
  5136.  
  5137.  
  5138.  
  5139.  
  5140.  
  5141.  
  5142. extern const GUID GUID_STANDBY_RESERVE_GRACE_PERIOD;
  5143.  
  5144.  
  5145.  
  5146.  
  5147.  
  5148.  
  5149. extern const GUID GUID_STANDBY_RESERVE_TIME;
  5150.  
  5151.  
  5152.  
  5153.  
  5154.  
  5155.  
  5156. extern const GUID GUID_STANDBY_RESET_PERCENT;
  5157.  
  5158.  
  5159.  
  5160.  
  5161.  
  5162.  
  5163.  
  5164. extern const GUID GUID_ALLOW_STANDBY_STATES;
  5165.  
  5166.  
  5167.  
  5168.  
  5169.  
  5170.  
  5171. extern const GUID GUID_ALLOW_RTC_WAKE;
  5172.  
  5173.  
  5174.  
  5175.  
  5176.  
  5177.  
  5178. extern const GUID GUID_LEGACY_RTC_MITIGATION;
  5179.  
  5180.  
  5181.  
  5182.  
  5183.  
  5184.  
  5185.  
  5186. extern const GUID GUID_ALLOW_SYSTEM_REQUIRED;
  5187. # 14294 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5188. extern const GUID GUID_POWER_SAVING_STATUS;
  5189.  
  5190.  
  5191.  
  5192.  
  5193.  
  5194.  
  5195.  
  5196. extern const GUID GUID_ENERGY_SAVER_SUBGROUP;
  5197.  
  5198.  
  5199.  
  5200.  
  5201.  
  5202.  
  5203. extern const GUID GUID_ENERGY_SAVER_BATTERY_THRESHOLD;
  5204.  
  5205.  
  5206.  
  5207.  
  5208.  
  5209.  
  5210. extern const GUID GUID_ENERGY_SAVER_BRIGHTNESS;
  5211.  
  5212.  
  5213.  
  5214.  
  5215.  
  5216.  
  5217. extern const GUID GUID_ENERGY_SAVER_POLICY;
  5218. # 14332 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5219. extern const GUID GUID_SYSTEM_BUTTON_SUBGROUP;
  5220. # 14353 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5221. extern const GUID GUID_POWERBUTTON_ACTION;
  5222.  
  5223.  
  5224.  
  5225.  
  5226.  
  5227. extern const GUID GUID_SLEEPBUTTON_ACTION;
  5228.  
  5229.  
  5230.  
  5231.  
  5232.  
  5233.  
  5234. extern const GUID GUID_USERINTERFACEBUTTON_ACTION;
  5235.  
  5236.  
  5237.  
  5238.  
  5239.  
  5240. extern const GUID GUID_LIDCLOSE_ACTION;
  5241. extern const GUID GUID_LIDOPEN_POWERSTATE;
  5242. # 14382 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5243. extern const GUID GUID_BATTERY_SUBGROUP;
  5244. # 14394 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5245. extern const GUID GUID_BATTERY_DISCHARGE_ACTION_0;
  5246. extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_0;
  5247. extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_0;
  5248.  
  5249. extern const GUID GUID_BATTERY_DISCHARGE_ACTION_1;
  5250. extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_1;
  5251. extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_1;
  5252.  
  5253. extern const GUID GUID_BATTERY_DISCHARGE_ACTION_2;
  5254. extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_2;
  5255. extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_2;
  5256.  
  5257. extern const GUID GUID_BATTERY_DISCHARGE_ACTION_3;
  5258. extern const GUID GUID_BATTERY_DISCHARGE_LEVEL_3;
  5259. extern const GUID GUID_BATTERY_DISCHARGE_FLAGS_3;
  5260. # 14419 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5261. extern const GUID GUID_PROCESSOR_SETTINGS_SUBGROUP;
  5262.  
  5263.  
  5264.  
  5265.  
  5266.  
  5267. extern const GUID GUID_PROCESSOR_THROTTLE_POLICY;
  5268. # 14443 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5269. extern const GUID GUID_PROCESSOR_THROTTLE_MAXIMUM;
  5270. # 14453 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5271. extern const GUID GUID_PROCESSOR_THROTTLE_MAXIMUM_1;
  5272. # 14463 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5273. extern const GUID GUID_PROCESSOR_THROTTLE_MINIMUM;
  5274. # 14473 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5275. extern const GUID GUID_PROCESSOR_THROTTLE_MINIMUM_1;
  5276.  
  5277.  
  5278.  
  5279.  
  5280.  
  5281.  
  5282. extern const GUID GUID_PROCESSOR_FREQUENCY_LIMIT;
  5283.  
  5284.  
  5285.  
  5286. extern const GUID GUID_PROCESSOR_FREQUENCY_LIMIT_1;
  5287. # 14493 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5288. extern const GUID GUID_PROCESSOR_ALLOW_THROTTLING;
  5289. # 14503 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5290. extern const GUID GUID_PROCESSOR_IDLESTATE_POLICY;
  5291.  
  5292.  
  5293.  
  5294.  
  5295.  
  5296. extern const GUID GUID_PROCESSOR_PERFSTATE_POLICY;
  5297.  
  5298.  
  5299.  
  5300.  
  5301.  
  5302.  
  5303.  
  5304. extern const GUID GUID_PROCESSOR_PERF_INCREASE_THRESHOLD;
  5305. # 14526 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5306. extern const GUID GUID_PROCESSOR_PERF_INCREASE_THRESHOLD_1;
  5307.  
  5308.  
  5309.  
  5310.  
  5311.  
  5312.  
  5313.  
  5314. extern const GUID GUID_PROCESSOR_PERF_DECREASE_THRESHOLD;
  5315. # 14543 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5316. extern const GUID GUID_PROCESSOR_PERF_DECREASE_THRESHOLD_1;
  5317.  
  5318.  
  5319.  
  5320.  
  5321.  
  5322.  
  5323.  
  5324. extern const GUID GUID_PROCESSOR_PERF_INCREASE_POLICY;
  5325. # 14560 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5326. extern const GUID GUID_PROCESSOR_PERF_INCREASE_POLICY_1;
  5327.  
  5328.  
  5329.  
  5330.  
  5331.  
  5332.  
  5333.  
  5334. extern const GUID GUID_PROCESSOR_PERF_DECREASE_POLICY;
  5335. # 14577 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5336. extern const GUID GUID_PROCESSOR_PERF_DECREASE_POLICY_1;
  5337. # 14586 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5338. extern const GUID GUID_PROCESSOR_PERF_INCREASE_TIME;
  5339. # 14595 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5340. extern const GUID GUID_PROCESSOR_PERF_INCREASE_TIME_1;
  5341. # 14604 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5342. extern const GUID GUID_PROCESSOR_PERF_DECREASE_TIME;
  5343. # 14613 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5344. extern const GUID GUID_PROCESSOR_PERF_DECREASE_TIME_1;
  5345.  
  5346.  
  5347.  
  5348.  
  5349.  
  5350.  
  5351.  
  5352. extern const GUID GUID_PROCESSOR_PERF_TIME_CHECK;
  5353.  
  5354.  
  5355.  
  5356.  
  5357.  
  5358.  
  5359.  
  5360. extern const GUID GUID_PROCESSOR_PERF_BOOST_POLICY;
  5361. # 14641 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5362. extern const GUID GUID_PROCESSOR_PERF_BOOST_MODE;
  5363. # 14659 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5364. extern const GUID GUID_PROCESSOR_PERF_AUTONOMOUS_MODE;
  5365. # 14670 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5366. extern const GUID GUID_PROCESSOR_PERF_ENERGY_PERFORMANCE_PREFERENCE;
  5367. # 14681 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5368. extern const GUID GUID_PROCESSOR_PERF_AUTONOMOUS_ACTIVITY_WINDOW;
  5369. # 14691 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5370. extern const GUID GUID_PROCESSOR_DUTY_CYCLING;
  5371. # 14703 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5372. extern const GUID GUID_PROCESSOR_IDLE_ALLOW_SCALING;
  5373.  
  5374.  
  5375.  
  5376.  
  5377.  
  5378.  
  5379. extern const GUID GUID_PROCESSOR_IDLE_DISABLE;
  5380. # 14719 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5381. extern const GUID GUID_PROCESSOR_IDLE_STATE_MAXIMUM;
  5382. # 14728 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5383. extern const GUID GUID_PROCESSOR_IDLE_TIME_CHECK;
  5384. # 14737 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5385. extern const GUID GUID_PROCESSOR_IDLE_DEMOTE_THRESHOLD;
  5386.  
  5387.  
  5388.  
  5389.  
  5390.  
  5391.  
  5392.  
  5393. extern const GUID GUID_PROCESSOR_IDLE_PROMOTE_THRESHOLD;
  5394. # 14754 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5395. extern const GUID GUID_PROCESSOR_CORE_PARKING_INCREASE_THRESHOLD;
  5396. # 14763 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5397. extern const GUID GUID_PROCESSOR_CORE_PARKING_DECREASE_THRESHOLD;
  5398.  
  5399.  
  5400.  
  5401.  
  5402.  
  5403.  
  5404. extern const GUID GUID_PROCESSOR_CORE_PARKING_INCREASE_POLICY;
  5405. # 14783 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5406. extern const GUID GUID_PROCESSOR_CORE_PARKING_DECREASE_POLICY;
  5407.  
  5408.  
  5409.  
  5410.  
  5411.  
  5412.  
  5413. extern const GUID GUID_PROCESSOR_CORE_PARKING_MAX_CORES;
  5414.  
  5415.  
  5416.  
  5417.  
  5418.  
  5419.  
  5420.  
  5421. extern const GUID GUID_PROCESSOR_CORE_PARKING_MAX_CORES_1;
  5422.  
  5423.  
  5424.  
  5425.  
  5426.  
  5427.  
  5428. extern const GUID GUID_PROCESSOR_CORE_PARKING_MIN_CORES;
  5429.  
  5430.  
  5431.  
  5432.  
  5433.  
  5434.  
  5435.  
  5436. extern const GUID GUID_PROCESSOR_CORE_PARKING_MIN_CORES_1;
  5437.  
  5438.  
  5439.  
  5440.  
  5441.  
  5442.  
  5443. extern const GUID GUID_PROCESSOR_CORE_PARKING_INCREASE_TIME;
  5444.  
  5445.  
  5446.  
  5447.  
  5448.  
  5449.  
  5450. extern const GUID GUID_PROCESSOR_CORE_PARKING_DECREASE_TIME;
  5451.  
  5452.  
  5453.  
  5454.  
  5455.  
  5456.  
  5457. extern const GUID GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_DECREASE_FACTOR;
  5458.  
  5459.  
  5460.  
  5461.  
  5462.  
  5463.  
  5464. extern const GUID GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_THRESHOLD;
  5465.  
  5466.  
  5467.  
  5468.  
  5469.  
  5470.  
  5471. extern const GUID GUID_PROCESSOR_CORE_PARKING_AFFINITY_WEIGHTING;
  5472.  
  5473.  
  5474.  
  5475.  
  5476.  
  5477.  
  5478. extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_DECREASE_FACTOR;
  5479.  
  5480.  
  5481.  
  5482.  
  5483.  
  5484.  
  5485. extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_THRESHOLD;
  5486.  
  5487.  
  5488.  
  5489.  
  5490.  
  5491.  
  5492. extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_WEIGHTING;
  5493.  
  5494.  
  5495.  
  5496.  
  5497.  
  5498.  
  5499. extern const GUID GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_THRESHOLD;
  5500.  
  5501.  
  5502.  
  5503.  
  5504.  
  5505.  
  5506.  
  5507. extern const GUID GUID_PROCESSOR_PARKING_CORE_OVERRIDE;
  5508.  
  5509.  
  5510.  
  5511.  
  5512.  
  5513.  
  5514.  
  5515. extern const GUID GUID_PROCESSOR_PARKING_PERF_STATE;
  5516.  
  5517.  
  5518.  
  5519.  
  5520.  
  5521.  
  5522.  
  5523. extern const GUID GUID_PROCESSOR_PARKING_PERF_STATE_1;
  5524.  
  5525.  
  5526.  
  5527.  
  5528.  
  5529.  
  5530.  
  5531. extern const GUID GUID_PROCESSOR_PARKING_CONCURRENCY_THRESHOLD;
  5532.  
  5533.  
  5534.  
  5535.  
  5536.  
  5537.  
  5538.  
  5539. extern const GUID GUID_PROCESSOR_PARKING_HEADROOM_THRESHOLD;
  5540.  
  5541.  
  5542.  
  5543.  
  5544.  
  5545.  
  5546.  
  5547. extern const GUID GUID_PROCESSOR_PARKING_DISTRIBUTION_THRESHOLD;
  5548.  
  5549.  
  5550.  
  5551.  
  5552.  
  5553.  
  5554. extern const GUID GUID_PROCESSOR_PERF_HISTORY;
  5555.  
  5556.  
  5557.  
  5558.  
  5559.  
  5560.  
  5561.  
  5562. extern const GUID GUID_PROCESSOR_PERF_HISTORY_1;
  5563. # 14949 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5564. extern const GUID GUID_PROCESSOR_PERF_INCREASE_HISTORY;
  5565. # 14959 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5566. extern const GUID GUID_PROCESSOR_PERF_DECREASE_HISTORY;
  5567. # 14969 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5568. extern const GUID GUID_PROCESSOR_PERF_CORE_PARKING_HISTORY;
  5569. # 14979 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5570. extern const GUID GUID_PROCESSOR_PERF_LATENCY_HINT;
  5571.  
  5572.  
  5573.  
  5574.  
  5575.  
  5576.  
  5577. extern const GUID GUID_PROCESSOR_PERF_LATENCY_HINT_PERF;
  5578.  
  5579.  
  5580.  
  5581.  
  5582.  
  5583.  
  5584.  
  5585. extern const GUID GUID_PROCESSOR_PERF_LATENCY_HINT_PERF_1;
  5586.  
  5587.  
  5588.  
  5589.  
  5590.  
  5591.  
  5592.  
  5593. extern const GUID GUID_PROCESSOR_LATENCY_HINT_MIN_UNPARK;
  5594.  
  5595.  
  5596.  
  5597.  
  5598.  
  5599.  
  5600.  
  5601. extern const GUID GUID_PROCESSOR_LATENCY_HINT_MIN_UNPARK_1;
  5602.  
  5603.  
  5604.  
  5605.  
  5606.  
  5607.  
  5608.  
  5609. extern const GUID GUID_PROCESSOR_DISTRIBUTE_UTILITY;
  5610. # 15029 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5611. extern const GUID GUID_PROCESSOR_HETEROGENEOUS_POLICY;
  5612.  
  5613.  
  5614.  
  5615.  
  5616.  
  5617.  
  5618.  
  5619. extern const GUID GUID_PROCESSOR_HETERO_DECREASE_TIME;
  5620.  
  5621.  
  5622.  
  5623.  
  5624.  
  5625.  
  5626.  
  5627. extern const GUID GUID_PROCESSOR_HETERO_INCREASE_TIME;
  5628. # 15054 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5629. extern const GUID GUID_PROCESSOR_HETERO_DECREASE_THRESHOLD;
  5630. # 15063 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5631. extern const GUID GUID_PROCESSOR_HETERO_INCREASE_THRESHOLD;
  5632. # 15072 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5633. extern const GUID GUID_PROCESSOR_CLASS0_FLOOR_PERF;
  5634. # 15081 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5635. extern const GUID GUID_PROCESSOR_CLASS1_INITIAL_PERF;
  5636.  
  5637.  
  5638.  
  5639.  
  5640.  
  5641.  
  5642. extern const GUID GUID_PROCESSOR_THREAD_SCHEDULING_POLICY;
  5643. # 15097 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5644. extern const GUID GUID_PROCESSOR_SHORT_THREAD_SCHEDULING_POLICY;
  5645. # 15106 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5646. extern const GUID GUID_SYSTEM_COOLING_POLICY;
  5647. # 15116 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5648. extern const GUID GUID_LOCK_CONSOLE_ON_WAKE;
  5649. # 15126 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5650. extern const GUID GUID_DEVICE_IDLE_POLICY;
  5651. # 15135 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5652. extern const GUID GUID_CONNECTIVITY_IN_STANDBY;
  5653. # 15145 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5654. extern const GUID GUID_DISCONNECTED_STANDBY_MODE;
  5655. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5656. extern const GUID GUID_ACDC_POWER_SOURCE;
  5657. # 15182 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5658. extern const GUID GUID_LIDSWITCH_STATE_CHANGE;
  5659. # 15199 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5660. extern const GUID GUID_BATTERY_PERCENTAGE_REMAINING;
  5661. # 15212 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5662. extern const GUID GUID_BATTERY_COUNT;
  5663.  
  5664.  
  5665.  
  5666.  
  5667.  
  5668.  
  5669. extern const GUID GUID_GLOBAL_USER_PRESENCE;
  5670. # 15230 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5671. extern const GUID GUID_SESSION_DISPLAY_STATUS;
  5672. # 15240 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5673. extern const GUID GUID_SESSION_USER_PRESENCE;
  5674.  
  5675.  
  5676.  
  5677.  
  5678.  
  5679.  
  5680. extern const GUID GUID_IDLE_BACKGROUND_TASK;
  5681.  
  5682.  
  5683.  
  5684.  
  5685.  
  5686.  
  5687. extern const GUID GUID_BACKGROUND_TASK_NOTIFICATION;
  5688.  
  5689.  
  5690.  
  5691.  
  5692.  
  5693.  
  5694.  
  5695. extern const GUID GUID_APPLAUNCH_BUTTON;
  5696. # 15273 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5697. extern const GUID GUID_PCIEXPRESS_SETTINGS_SUBGROUP;
  5698.  
  5699.  
  5700.  
  5701.  
  5702.  
  5703. extern const GUID GUID_PCIEXPRESS_ASPM_POLICY;
  5704. # 15291 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5705. extern const GUID GUID_ENABLE_SWITCH_FORCED_SHUTDOWN;
  5706.  
  5707.  
  5708.  
  5709.  
  5710.  
  5711.  
  5712. extern const GUID GUID_INTSTEER_SUBGROUP;
  5713.  
  5714.  
  5715.  
  5716. extern const GUID GUID_INTSTEER_MODE;
  5717.  
  5718.  
  5719.  
  5720. extern const GUID GUID_INTSTEER_LOAD_PER_PROC_TRIGGER;
  5721.  
  5722.  
  5723.  
  5724. extern const GUID GUID_INTSTEER_TIME_UNPARK_TRIGGER;
  5725. # 15321 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5726. extern const GUID GUID_GRAPHICS_SUBGROUP;
  5727.  
  5728.  
  5729.  
  5730.  
  5731.  
  5732. extern const GUID GUID_GPU_PREFERENCE_POLICY;
  5733. # 15338 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5734. extern const GUID GUID_MIXED_REALITY_MODE;
  5735.  
  5736.  
  5737.  
  5738.  
  5739.  
  5740.  
  5741.  
  5742. extern const GUID GUID_SPR_ACTIVE_SESSION_CHANGE;
  5743.  
  5744.  
  5745.  
  5746. typedef enum _SYSTEM_POWER_STATE {
  5747.     PowerSystemUnspecified = 0,
  5748.     PowerSystemWorking = 1,
  5749.     PowerSystemSleeping1 = 2,
  5750.     PowerSystemSleeping2 = 3,
  5751.     PowerSystemSleeping3 = 4,
  5752.     PowerSystemHibernate = 5,
  5753.     PowerSystemShutdown = 6,
  5754.     PowerSystemMaximum = 7
  5755. } SYSTEM_POWER_STATE, *PSYSTEM_POWER_STATE;
  5756.  
  5757.  
  5758.  
  5759. typedef enum {
  5760.     PowerActionNone = 0,
  5761.     PowerActionReserved,
  5762.     PowerActionSleep,
  5763.     PowerActionHibernate,
  5764.     PowerActionShutdown,
  5765.     PowerActionShutdownReset,
  5766.     PowerActionShutdownOff,
  5767.     PowerActionWarmEject,
  5768.     PowerActionDisplayOff
  5769. } POWER_ACTION, *PPOWER_ACTION;
  5770.  
  5771. typedef enum _DEVICE_POWER_STATE {
  5772.     PowerDeviceUnspecified = 0,
  5773.     PowerDeviceD0,
  5774.     PowerDeviceD1,
  5775.     PowerDeviceD2,
  5776.     PowerDeviceD3,
  5777.     PowerDeviceMaximum
  5778. } DEVICE_POWER_STATE, *PDEVICE_POWER_STATE;
  5779.  
  5780. typedef enum _MONITOR_DISPLAY_STATE {
  5781.     PowerMonitorOff = 0,
  5782.     PowerMonitorOn,
  5783.     PowerMonitorDim
  5784. } MONITOR_DISPLAY_STATE, *PMONITOR_DISPLAY_STATE;
  5785.  
  5786. typedef enum _USER_ACTIVITY_PRESENCE {
  5787.     PowerUserPresent = 0,
  5788.     PowerUserNotPresent,
  5789.     PowerUserInactive,
  5790.     PowerUserMaximum,
  5791.     PowerUserInvalid = PowerUserMaximum
  5792. } USER_ACTIVITY_PRESENCE, *PUSER_ACTIVITY_PRESENCE;
  5793. # 15406 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5794. typedef DWORD EXECUTION_STATE, *PEXECUTION_STATE;
  5795.  
  5796. typedef enum {
  5797.     LT_DONT_CARE,
  5798.     LT_LOWEST_LATENCY
  5799. } LATENCY_TIME;
  5800. # 15430 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5801. typedef enum _POWER_REQUEST_TYPE {
  5802.     PowerRequestDisplayRequired,
  5803.     PowerRequestSystemRequired,
  5804.     PowerRequestAwayModeRequired,
  5805.     PowerRequestExecutionRequired
  5806. } POWER_REQUEST_TYPE, *PPOWER_REQUEST_TYPE;
  5807. # 15456 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  5808. typedef struct CM_Power_Data_s {
  5809.     DWORD PD_Size;
  5810.     DEVICE_POWER_STATE PD_MostRecentPowerState;
  5811.     DWORD PD_Capabilities;
  5812.     DWORD PD_D1Latency;
  5813.     DWORD PD_D2Latency;
  5814.     DWORD PD_D3Latency;
  5815.     DEVICE_POWER_STATE PD_PowerStateMapping[7];
  5816.     SYSTEM_POWER_STATE PD_DeepestSystemWake;
  5817. } CM_POWER_DATA, *PCM_POWER_DATA;
  5818.  
  5819.  
  5820.  
  5821.  
  5822.  
  5823. typedef enum {
  5824.     SystemPowerPolicyAc,
  5825.     SystemPowerPolicyDc,
  5826.     VerifySystemPolicyAc,
  5827.     VerifySystemPolicyDc,
  5828.     SystemPowerCapabilities,
  5829.     SystemBatteryState,
  5830.     SystemPowerStateHandler,
  5831.     ProcessorStateHandler,
  5832.     SystemPowerPolicyCurrent,
  5833.     AdministratorPowerPolicy,
  5834.     SystemReserveHiberFile,
  5835.     ProcessorInformation,
  5836.     SystemPowerInformation,
  5837.     ProcessorStateHandler2,
  5838.     LastWakeTime,
  5839.     LastSleepTime,
  5840.     SystemExecutionState,
  5841.     SystemPowerStateNotifyHandler,
  5842.     ProcessorPowerPolicyAc,
  5843.     ProcessorPowerPolicyDc,
  5844.     VerifyProcessorPowerPolicyAc,
  5845.     VerifyProcessorPowerPolicyDc,
  5846.     ProcessorPowerPolicyCurrent,
  5847.     SystemPowerStateLogging,
  5848.     SystemPowerLoggingEntry,
  5849.     SetPowerSettingValue,
  5850.     NotifyUserPowerSetting,
  5851.     PowerInformationLevelUnused0,
  5852.     SystemMonitorHiberBootPowerOff,
  5853.     SystemVideoState,
  5854.     TraceApplicationPowerMessage,
  5855.     TraceApplicationPowerMessageEnd,
  5856.     ProcessorPerfStates,
  5857.     ProcessorIdleStates,
  5858.     ProcessorCap,
  5859.     SystemWakeSource,
  5860.     SystemHiberFileInformation,
  5861.     TraceServicePowerMessage,
  5862.     ProcessorLoad,
  5863.     PowerShutdownNotification,
  5864.     MonitorCapabilities,
  5865.     SessionPowerInit,
  5866.     SessionDisplayState,
  5867.     PowerRequestCreate,
  5868.     PowerRequestAction,
  5869.     GetPowerRequestList,
  5870.     ProcessorInformationEx,
  5871.     NotifyUserModeLegacyPowerEvent,
  5872.     GroupPark,
  5873.     ProcessorIdleDomains,
  5874.     WakeTimerList,
  5875.     SystemHiberFileSize,
  5876.     ProcessorIdleStatesHv,
  5877.     ProcessorPerfStatesHv,
  5878.     ProcessorPerfCapHv,
  5879.     ProcessorSetIdle,
  5880.     LogicalProcessorIdling,
  5881.     UserPresence,
  5882.     PowerSettingNotificationName,
  5883.     GetPowerSettingValue,
  5884.     IdleResiliency,
  5885.     SessionRITState,
  5886.     SessionConnectNotification,
  5887.     SessionPowerCleanup,
  5888.     SessionLockState,
  5889.     SystemHiberbootState,
  5890.     PlatformInformation,
  5891.     PdcInvocation,
  5892.     MonitorInvocation,
  5893.     FirmwareTableInformationRegistered,
  5894.     SetShutdownSelectedTime,
  5895.     SuspendResumeInvocation,
  5896.     PlmPowerRequestCreate,
  5897.     ScreenOff,
  5898.     CsDeviceNotification,
  5899.     PlatformRole,
  5900.     LastResumePerformance,
  5901.     DisplayBurst,
  5902.     ExitLatencySamplingPercentage,
  5903.     RegisterSpmPowerSettings,
  5904.     PlatformIdleStates,
  5905.     ProcessorIdleVeto,
  5906.     PlatformIdleVeto,
  5907.     SystemBatteryStatePrecise,
  5908.     ThermalEvent,
  5909.     PowerRequestActionInternal,
  5910.     BatteryDeviceState,
  5911.     PowerInformationInternal,
  5912.     ThermalStandby,
  5913.     SystemHiberFileType,
  5914.     PhysicalPowerButtonPress,
  5915.     QueryPotentialDripsConstraint,
  5916.     EnergyTrackerCreate,
  5917.     EnergyTrackerQuery,
  5918.     UpdateBlackBoxRecorder,
  5919.     PowerInformationLevelMaximum
  5920. } POWER_INFORMATION_LEVEL;
  5921.  
  5922.  
  5923.  
  5924.  
  5925.  
  5926. typedef enum {
  5927.     UserNotPresent = 0,
  5928.     UserPresent = 1,
  5929.     UserUnknown = 0xff
  5930. } POWER_USER_PRESENCE_TYPE, *PPOWER_USER_PRESENCE_TYPE;
  5931.  
  5932. typedef struct _POWER_USER_PRESENCE {
  5933.     POWER_USER_PRESENCE_TYPE UserPresence;
  5934. } POWER_USER_PRESENCE, *PPOWER_USER_PRESENCE;
  5935.  
  5936.  
  5937.  
  5938.  
  5939. typedef struct _POWER_SESSION_CONNECT {
  5940.     BOOLEAN Connected;
  5941.     BOOLEAN Console;
  5942. } POWER_SESSION_CONNECT, *PPOWER_SESSION_CONNECT;
  5943.  
  5944. typedef struct _POWER_SESSION_TIMEOUTS {
  5945.     DWORD InputTimeout;
  5946.     DWORD DisplayTimeout;
  5947. } POWER_SESSION_TIMEOUTS, *PPOWER_SESSION_TIMEOUTS;
  5948.  
  5949.  
  5950.  
  5951.  
  5952. typedef struct _POWER_SESSION_RIT_STATE {
  5953.     BOOLEAN Active;
  5954.     DWORD LastInputTime;
  5955. } POWER_SESSION_RIT_STATE, *PPOWER_SESSION_RIT_STATE;
  5956.  
  5957.  
  5958.  
  5959.  
  5960. typedef struct _POWER_SESSION_WINLOGON {
  5961.     DWORD SessionId;
  5962.     BOOLEAN Console;
  5963.     BOOLEAN Locked;
  5964. } POWER_SESSION_WINLOGON, *PPOWER_SESSION_WINLOGON;
  5965.  
  5966.  
  5967.  
  5968.  
  5969. typedef struct _POWER_IDLE_RESILIENCY {
  5970.     DWORD CoalescingTimeout;
  5971.     DWORD IdleResiliencyPeriod;
  5972. } POWER_IDLE_RESILIENCY, *PPOWER_IDLE_RESILIENCY;
  5973.  
  5974.  
  5975.  
  5976.  
  5977.  
  5978.  
  5979. typedef enum {
  5980.     MonitorRequestReasonUnknown,
  5981.     MonitorRequestReasonPowerButton,
  5982.     MonitorRequestReasonRemoteConnection,
  5983.     MonitorRequestReasonScMonitorpower,
  5984.     MonitorRequestReasonUserInput,
  5985.     MonitorRequestReasonAcDcDisplayBurst,
  5986.     MonitorRequestReasonUserDisplayBurst,
  5987.     MonitorRequestReasonPoSetSystemState,
  5988.     MonitorRequestReasonSetThreadExecutionState,
  5989.     MonitorRequestReasonFullWake,
  5990.     MonitorRequestReasonSessionUnlock,
  5991.     MonitorRequestReasonScreenOffRequest,
  5992.     MonitorRequestReasonIdleTimeout,
  5993.     MonitorRequestReasonPolicyChange,
  5994.     MonitorRequestReasonSleepButton,
  5995.     MonitorRequestReasonLid,
  5996.     MonitorRequestReasonBatteryCountChange,
  5997.     MonitorRequestReasonGracePeriod,
  5998.     MonitorRequestReasonPnP,
  5999.     MonitorRequestReasonDP,
  6000.     MonitorRequestReasonSxTransition,
  6001.     MonitorRequestReasonSystemIdle,
  6002.     MonitorRequestReasonNearProximity,
  6003.     MonitorRequestReasonThermalStandby,
  6004.     MonitorRequestReasonResumePdc,
  6005.     MonitorRequestReasonResumeS4,
  6006.     MonitorRequestReasonTerminal,
  6007.     MonitorRequestReasonPdcSignal,
  6008.     MonitorRequestReasonAcDcDisplayBurstSuppressed,
  6009.     MonitorRequestReasonSystemStateEntered,
  6010.  
  6011.  
  6012.     MonitorRequestReasonWinrt,
  6013.     MonitorRequestReasonUserInputKeyboard,
  6014.     MonitorRequestReasonUserInputMouse,
  6015.     MonitorRequestReasonUserInputTouch,
  6016.     MonitorRequestReasonUserInputPen,
  6017.     MonitorRequestReasonUserInputAccelerometer,
  6018.     MonitorRequestReasonUserInputHid,
  6019.     MonitorRequestReasonUserInputPoUserPresent,
  6020.     MonitorRequestReasonUserInputSessionSwitch,
  6021.     MonitorRequestReasonUserInputInitialization,
  6022.     MonitorRequestReasonPdcSignalWindowsMobilePwrNotif,
  6023.     MonitorRequestReasonPdcSignalWindowsMobileShell,
  6024.     MonitorRequestReasonPdcSignalHeyCortana,
  6025.     MonitorRequestReasonPdcSignalHolographicShell,
  6026.     MonitorRequestReasonPdcSignalFingerprint,
  6027.     MonitorRequestReasonMax
  6028. } POWER_MONITOR_REQUEST_REASON;
  6029.  
  6030. typedef enum _POWER_MONITOR_REQUEST_TYPE {
  6031.     MonitorRequestTypeOff,
  6032.     MonitorRequestTypeOnAndPresent,
  6033.     MonitorRequestTypeToggleOn
  6034. } POWER_MONITOR_REQUEST_TYPE;
  6035.  
  6036.  
  6037.  
  6038.  
  6039. typedef struct _POWER_MONITOR_INVOCATION {
  6040.     BOOLEAN Console;
  6041.     POWER_MONITOR_REQUEST_REASON RequestReason;
  6042. } POWER_MONITOR_INVOCATION, *PPOWER_MONITOR_INVOCATION;
  6043.  
  6044.  
  6045.  
  6046.  
  6047.  
  6048. typedef struct _RESUME_PERFORMANCE {
  6049.     DWORD PostTimeMs;
  6050.     ULONGLONG TotalResumeTimeMs;
  6051.     ULONGLONG ResumeCompleteTimestamp;
  6052. } RESUME_PERFORMANCE, *PRESUME_PERFORMANCE;
  6053.  
  6054.  
  6055.  
  6056.  
  6057.  
  6058. typedef enum {
  6059.     PoAc,
  6060.     PoDc,
  6061.     PoHot,
  6062.     PoConditionMaximum
  6063. } SYSTEM_POWER_CONDITION;
  6064.  
  6065. typedef struct {
  6066.  
  6067.  
  6068.  
  6069.  
  6070.  
  6071.     DWORD Version;
  6072.  
  6073.  
  6074.  
  6075.  
  6076.  
  6077.     GUID Guid;
  6078.  
  6079.  
  6080.  
  6081.  
  6082.  
  6083.  
  6084.     SYSTEM_POWER_CONDITION PowerCondition;
  6085.  
  6086.  
  6087.  
  6088.  
  6089.     DWORD DataLength;
  6090.  
  6091.  
  6092.  
  6093.  
  6094.     BYTE Data[1];
  6095. } SET_POWER_SETTING_VALUE, *PSET_POWER_SETTING_VALUE;
  6096.  
  6097.  
  6098.  
  6099. typedef struct {
  6100.     GUID Guid;
  6101. } NOTIFY_USER_POWER_SETTING, *PNOTIFY_USER_POWER_SETTING;
  6102.  
  6103.  
  6104.  
  6105.  
  6106.  
  6107.  
  6108. typedef struct _APPLICATIONLAUNCH_SETTING_VALUE {
  6109.  
  6110.  
  6111.  
  6112.  
  6113.  
  6114.     LARGE_INTEGER ActivationTime;
  6115.  
  6116.  
  6117.  
  6118.  
  6119.     DWORD Flags;
  6120.  
  6121.  
  6122.  
  6123.  
  6124.     DWORD ButtonInstanceID;
  6125.  
  6126.  
  6127. } APPLICATIONLAUNCH_SETTING_VALUE, *PAPPLICATIONLAUNCH_SETTING_VALUE;
  6128.  
  6129.  
  6130.  
  6131.  
  6132.  
  6133. typedef enum _POWER_PLATFORM_ROLE {
  6134.     PlatformRoleUnspecified = 0,
  6135.     PlatformRoleDesktop,
  6136.     PlatformRoleMobile,
  6137.     PlatformRoleWorkstation,
  6138.     PlatformRoleEnterpriseServer,
  6139.     PlatformRoleSOHOServer,
  6140.     PlatformRoleAppliancePC,
  6141.     PlatformRolePerformanceServer,
  6142.     PlatformRoleSlate,
  6143.     PlatformRoleMaximum
  6144. } POWER_PLATFORM_ROLE, *PPOWER_PLATFORM_ROLE;
  6145. # 15812 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6146. typedef struct _POWER_PLATFORM_INFORMATION {
  6147.     BOOLEAN AoAc;
  6148. } POWER_PLATFORM_INFORMATION, *PPOWER_PLATFORM_INFORMATION;
  6149.  
  6150.  
  6151.  
  6152.  
  6153.  
  6154.  
  6155. typedef struct {
  6156.     DWORD Granularity;
  6157.     DWORD Capacity;
  6158. } BATTERY_REPORTING_SCALE, *PBATTERY_REPORTING_SCALE;
  6159.  
  6160.  
  6161.  
  6162.  
  6163. typedef struct {
  6164.     DWORD Frequency;
  6165.     DWORD Flags;
  6166.     DWORD PercentFrequency;
  6167. } PPM_WMI_LEGACY_PERFSTATE, *PPPM_WMI_LEGACY_PERFSTATE;
  6168.  
  6169. typedef struct {
  6170.     DWORD Latency;
  6171.     DWORD Power;
  6172.     DWORD TimeCheck;
  6173.     BYTE PromotePercent;
  6174.     BYTE DemotePercent;
  6175.     BYTE StateType;
  6176.     BYTE Reserved;
  6177.     DWORD StateFlags;
  6178.     DWORD Context;
  6179.     DWORD IdleHandler;
  6180.     DWORD Reserved1;
  6181. } PPM_WMI_IDLE_STATE, *PPPM_WMI_IDLE_STATE;
  6182.  
  6183. typedef struct {
  6184.     DWORD Type;
  6185.     DWORD Count;
  6186.     DWORD TargetState;
  6187.     DWORD OldState;
  6188.     DWORD64 TargetProcessors;
  6189.     PPM_WMI_IDLE_STATE State[1];
  6190. } PPM_WMI_IDLE_STATES, *PPPM_WMI_IDLE_STATES;
  6191.  
  6192. typedef struct {
  6193.     DWORD Type;
  6194.     DWORD Count;
  6195.     DWORD TargetState;
  6196.     DWORD OldState;
  6197.     PVOID TargetProcessors;
  6198.     PPM_WMI_IDLE_STATE State[1];
  6199. } PPM_WMI_IDLE_STATES_EX, *PPPM_WMI_IDLE_STATES_EX;
  6200.  
  6201. typedef struct {
  6202.     DWORD Frequency;
  6203.     DWORD Power;
  6204.     BYTE PercentFrequency;
  6205.     BYTE IncreaseLevel;
  6206.     BYTE DecreaseLevel;
  6207.     BYTE Type;
  6208.     DWORD IncreaseTime;
  6209.     DWORD DecreaseTime;
  6210.     DWORD64 Control;
  6211.     DWORD64 Status;
  6212.     DWORD HitCount;
  6213.     DWORD Reserved1;
  6214.     DWORD64 Reserved2;
  6215.     DWORD64 Reserved3;
  6216. } PPM_WMI_PERF_STATE, *PPPM_WMI_PERF_STATE;
  6217.  
  6218. typedef struct {
  6219.     DWORD Count;
  6220.     DWORD MaxFrequency;
  6221.     DWORD CurrentState;
  6222.     DWORD MaxPerfState;
  6223.     DWORD MinPerfState;
  6224.     DWORD LowestPerfState;
  6225.     DWORD ThermalConstraint;
  6226.     BYTE BusyAdjThreshold;
  6227.     BYTE PolicyType;
  6228.     BYTE Type;
  6229.     BYTE Reserved;
  6230.     DWORD TimerInterval;
  6231.     DWORD64 TargetProcessors;
  6232.     DWORD PStateHandler;
  6233.     DWORD PStateContext;
  6234.     DWORD TStateHandler;
  6235.     DWORD TStateContext;
  6236.     DWORD FeedbackHandler;
  6237.     DWORD Reserved1;
  6238.     DWORD64 Reserved2;
  6239.     PPM_WMI_PERF_STATE State[1];
  6240. } PPM_WMI_PERF_STATES, *PPPM_WMI_PERF_STATES;
  6241.  
  6242. typedef struct {
  6243.     DWORD Count;
  6244.     DWORD MaxFrequency;
  6245.     DWORD CurrentState;
  6246.     DWORD MaxPerfState;
  6247.     DWORD MinPerfState;
  6248.     DWORD LowestPerfState;
  6249.     DWORD ThermalConstraint;
  6250.     BYTE BusyAdjThreshold;
  6251.     BYTE PolicyType;
  6252.     BYTE Type;
  6253.     BYTE Reserved;
  6254.     DWORD TimerInterval;
  6255.     PVOID TargetProcessors;
  6256.     DWORD PStateHandler;
  6257.     DWORD PStateContext;
  6258.     DWORD TStateHandler;
  6259.     DWORD TStateContext;
  6260.     DWORD FeedbackHandler;
  6261.     DWORD Reserved1;
  6262.     DWORD64 Reserved2;
  6263.     PPM_WMI_PERF_STATE State[1];
  6264. } PPM_WMI_PERF_STATES_EX, *PPPM_WMI_PERF_STATES_EX;
  6265.  
  6266.  
  6267.  
  6268.  
  6269.  
  6270.  
  6271.  
  6272. typedef struct {
  6273.     DWORD IdleTransitions;
  6274.     DWORD FailedTransitions;
  6275.     DWORD InvalidBucketIndex;
  6276.     DWORD64 TotalTime;
  6277.     DWORD IdleTimeBuckets[6];
  6278. } PPM_IDLE_STATE_ACCOUNTING, *PPPM_IDLE_STATE_ACCOUNTING;
  6279.  
  6280. typedef struct {
  6281.     DWORD StateCount;
  6282.     DWORD TotalTransitions;
  6283.     DWORD ResetCount;
  6284.     DWORD64 StartTime;
  6285.     PPM_IDLE_STATE_ACCOUNTING State[1];
  6286. } PPM_IDLE_ACCOUNTING, *PPPM_IDLE_ACCOUNTING;
  6287.  
  6288.  
  6289.  
  6290.  
  6291.  
  6292.  
  6293.  
  6294. typedef struct {
  6295.     DWORD64 TotalTimeUs;
  6296.     DWORD MinTimeUs;
  6297.     DWORD MaxTimeUs;
  6298.     DWORD Count;
  6299. } PPM_IDLE_STATE_BUCKET_EX, *PPPM_IDLE_STATE_BUCKET_EX;
  6300.  
  6301. typedef struct {
  6302.     DWORD64 TotalTime;
  6303.     DWORD IdleTransitions;
  6304.     DWORD FailedTransitions;
  6305.     DWORD InvalidBucketIndex;
  6306.     DWORD MinTimeUs;
  6307.     DWORD MaxTimeUs;
  6308.     DWORD CancelledTransitions;
  6309.     PPM_IDLE_STATE_BUCKET_EX IdleTimeBuckets[16];
  6310. } PPM_IDLE_STATE_ACCOUNTING_EX, *PPPM_IDLE_STATE_ACCOUNTING_EX;
  6311.  
  6312. typedef struct {
  6313.     DWORD StateCount;
  6314.     DWORD TotalTransitions;
  6315.     DWORD ResetCount;
  6316.     DWORD AbortCount;
  6317.     DWORD64 StartTime;
  6318.                              PPM_IDLE_STATE_ACCOUNTING_EX State[1];
  6319. } PPM_IDLE_ACCOUNTING_EX, *PPPM_IDLE_ACCOUNTING_EX;
  6320. # 16048 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6321. extern const GUID PPM_PERFSTATE_CHANGE_GUID;
  6322.  
  6323.  
  6324.  
  6325. extern const GUID PPM_PERFSTATE_DOMAIN_CHANGE_GUID;
  6326.  
  6327.  
  6328.  
  6329. extern const GUID PPM_IDLESTATE_CHANGE_GUID;
  6330.  
  6331.  
  6332.  
  6333. extern const GUID PPM_PERFSTATES_DATA_GUID;
  6334.  
  6335.  
  6336.  
  6337. extern const GUID PPM_IDLESTATES_DATA_GUID;
  6338.  
  6339.  
  6340.  
  6341. extern const GUID PPM_IDLE_ACCOUNTING_GUID;
  6342.  
  6343.  
  6344.  
  6345. extern const GUID PPM_IDLE_ACCOUNTING_EX_GUID;
  6346.  
  6347.  
  6348.  
  6349. extern const GUID PPM_THERMALCONSTRAINT_GUID;
  6350.  
  6351.  
  6352.  
  6353. extern const GUID PPM_PERFMON_PERFSTATE_GUID;
  6354.  
  6355.  
  6356.  
  6357. extern const GUID PPM_THERMAL_POLICY_CHANGE_GUID;
  6358.  
  6359.  
  6360.  
  6361. typedef struct {
  6362.     DWORD State;
  6363.     DWORD Status;
  6364.     DWORD Latency;
  6365.     DWORD Speed;
  6366.     DWORD Processor;
  6367. } PPM_PERFSTATE_EVENT, *PPPM_PERFSTATE_EVENT;
  6368.  
  6369. typedef struct {
  6370.     DWORD State;
  6371.     DWORD Latency;
  6372.     DWORD Speed;
  6373.     DWORD64 Processors;
  6374. } PPM_PERFSTATE_DOMAIN_EVENT, *PPPM_PERFSTATE_DOMAIN_EVENT;
  6375.  
  6376. typedef struct {
  6377.     DWORD NewState;
  6378.     DWORD OldState;
  6379.     DWORD64 Processors;
  6380. } PPM_IDLESTATE_EVENT, *PPPM_IDLESTATE_EVENT;
  6381.  
  6382. typedef struct {
  6383.     DWORD ThermalConstraint;
  6384.     DWORD64 Processors;
  6385. } PPM_THERMALCHANGE_EVENT, *PPPM_THERMALCHANGE_EVENT;
  6386.  
  6387. #pragma warning(push)
  6388. #pragma warning(disable: 4121)
  6389.  
  6390. typedef struct {
  6391.     BYTE Mode;
  6392.     DWORD64 Processors;
  6393. } PPM_THERMAL_POLICY_EVENT, *PPPM_THERMAL_POLICY_EVENT;
  6394.  
  6395. #pragma warning(pop)
  6396.  
  6397.  
  6398.  
  6399.  
  6400. typedef struct {
  6401.     POWER_ACTION Action;
  6402.     DWORD Flags;
  6403.     DWORD EventCode;
  6404. } POWER_ACTION_POLICY, *PPOWER_ACTION_POLICY;
  6405. # 16169 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6406. typedef struct {
  6407.     BOOLEAN Enable;
  6408.     BYTE Spare[3];
  6409.     DWORD BatteryLevel;
  6410.     POWER_ACTION_POLICY PowerPolicy;
  6411.     SYSTEM_POWER_STATE MinSystemState;
  6412. } SYSTEM_POWER_LEVEL, *PSYSTEM_POWER_LEVEL;
  6413. # 16184 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6414. typedef struct _SYSTEM_POWER_POLICY {
  6415.     DWORD Revision;
  6416.  
  6417.  
  6418.     POWER_ACTION_POLICY PowerButton;
  6419.     POWER_ACTION_POLICY SleepButton;
  6420.     POWER_ACTION_POLICY LidClose;
  6421.     SYSTEM_POWER_STATE LidOpenWake;
  6422.     DWORD Reserved;
  6423.  
  6424.  
  6425.     POWER_ACTION_POLICY Idle;
  6426.     DWORD IdleTimeout;
  6427.     BYTE IdleSensitivity;
  6428.  
  6429.     BYTE DynamicThrottle;
  6430.     BYTE Spare2[2];
  6431.  
  6432.  
  6433.     SYSTEM_POWER_STATE MinSleep;
  6434.     SYSTEM_POWER_STATE MaxSleep;
  6435.     SYSTEM_POWER_STATE ReducedLatencySleep;
  6436.     DWORD WinLogonFlags;
  6437.  
  6438.     DWORD Spare3;
  6439.  
  6440.  
  6441.  
  6442.     DWORD DozeS4Timeout;
  6443.  
  6444.  
  6445.     DWORD BroadcastCapacityResolution;
  6446.     SYSTEM_POWER_LEVEL DischargePolicy[4];
  6447.  
  6448.  
  6449.     DWORD VideoTimeout;
  6450.     BOOLEAN VideoDimDisplay;
  6451.     DWORD VideoReserved[3];
  6452.  
  6453.  
  6454.     DWORD SpindownTimeout;
  6455.  
  6456.  
  6457.     BOOLEAN OptimizeForPower;
  6458.     BYTE FanThrottleTolerance;
  6459.     BYTE ForcedThrottle;
  6460.     BYTE MinThrottle;
  6461.     POWER_ACTION_POLICY OverThrottled;
  6462.  
  6463. } SYSTEM_POWER_POLICY, *PSYSTEM_POWER_POLICY;
  6464. # 16244 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6465. typedef struct {
  6466.     DWORD TimeCheck;
  6467.     BYTE DemotePercent;
  6468.     BYTE PromotePercent;
  6469.     BYTE Spare[2];
  6470. } PROCESSOR_IDLESTATE_INFO, *PPROCESSOR_IDLESTATE_INFO;
  6471.  
  6472. typedef struct {
  6473.     WORD Revision;
  6474.     union {
  6475.         WORD AsWORD ;
  6476.         struct {
  6477.             WORD AllowScaling : 1;
  6478.             WORD Disabled : 1;
  6479.             WORD Reserved : 14;
  6480.         } ;
  6481.     } Flags;
  6482.  
  6483.     DWORD PolicyCount;
  6484.     PROCESSOR_IDLESTATE_INFO Policy[0x3];
  6485. } PROCESSOR_IDLESTATE_POLICY, *PPROCESSOR_IDLESTATE_POLICY;
  6486. # 16279 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6487. typedef struct _PROCESSOR_POWER_POLICY_INFO {
  6488.  
  6489.  
  6490.     DWORD TimeCheck;
  6491.     DWORD DemoteLimit;
  6492.     DWORD PromoteLimit;
  6493.  
  6494.  
  6495.     BYTE DemotePercent;
  6496.     BYTE PromotePercent;
  6497.     BYTE Spare[2];
  6498.  
  6499.  
  6500.     DWORD AllowDemotion:1;
  6501.     DWORD AllowPromotion:1;
  6502.     DWORD Reserved:30;
  6503.  
  6504. } PROCESSOR_POWER_POLICY_INFO, *PPROCESSOR_POWER_POLICY_INFO;
  6505.  
  6506.  
  6507. typedef struct _PROCESSOR_POWER_POLICY {
  6508.     DWORD Revision;
  6509.  
  6510.  
  6511.     BYTE DynamicThrottle;
  6512.     BYTE Spare[3];
  6513.  
  6514.  
  6515.     DWORD DisableCStates:1;
  6516.     DWORD Reserved:31;
  6517.  
  6518.  
  6519.  
  6520.  
  6521.     DWORD PolicyCount;
  6522.     PROCESSOR_POWER_POLICY_INFO Policy[3];
  6523.  
  6524. } PROCESSOR_POWER_POLICY, *PPROCESSOR_POWER_POLICY;
  6525.  
  6526.  
  6527.  
  6528.  
  6529.  
  6530. typedef struct {
  6531.     DWORD Revision;
  6532.     BYTE MaxThrottle;
  6533.     BYTE MinThrottle;
  6534.     BYTE BusyAdjThreshold;
  6535.     union {
  6536.         BYTE Spare;
  6537.         union {
  6538.             BYTE AsBYTE ;
  6539.             struct {
  6540.                 BYTE NoDomainAccounting : 1;
  6541.                 BYTE IncreasePolicy: 2;
  6542.                 BYTE DecreasePolicy: 2;
  6543.                 BYTE Reserved : 3;
  6544.             } ;
  6545.         } Flags;
  6546.     } ;
  6547.  
  6548.     DWORD TimeCheck;
  6549.     DWORD IncreaseTime;
  6550.     DWORD DecreaseTime;
  6551.     DWORD IncreasePercent;
  6552.     DWORD DecreasePercent;
  6553. } PROCESSOR_PERFSTATE_POLICY, *PPROCESSOR_PERFSTATE_POLICY;
  6554.  
  6555.  
  6556. typedef struct _ADMINISTRATOR_POWER_POLICY {
  6557.  
  6558.  
  6559.     SYSTEM_POWER_STATE MinSleep;
  6560.     SYSTEM_POWER_STATE MaxSleep;
  6561.  
  6562.  
  6563.     DWORD MinVideoTimeout;
  6564.     DWORD MaxVideoTimeout;
  6565.  
  6566.  
  6567.     DWORD MinSpindownTimeout;
  6568.     DWORD MaxSpindownTimeout;
  6569. } ADMINISTRATOR_POWER_POLICY, *PADMINISTRATOR_POWER_POLICY;
  6570.  
  6571.  
  6572. typedef enum _HIBERFILE_BUCKET_SIZE {
  6573.     HiberFileBucket1GB = 0,
  6574.     HiberFileBucket2GB,
  6575.     HiberFileBucket4GB,
  6576.     HiberFileBucket8GB,
  6577.     HiberFileBucket16GB,
  6578.     HiberFileBucket32GB,
  6579.     HiberFileBucketUnlimited,
  6580.     HiberFileBucketMax
  6581. } HIBERFILE_BUCKET_SIZE, *PHIBERFILE_BUCKET_SIZE;
  6582.  
  6583.  
  6584.  
  6585.  
  6586.  
  6587.  
  6588. typedef struct _HIBERFILE_BUCKET {
  6589.     DWORD64 MaxPhysicalMemory;
  6590.     DWORD PhysicalMemoryPercent[0x03];
  6591. } HIBERFILE_BUCKET, *PHIBERFILE_BUCKET;
  6592.  
  6593. typedef struct {
  6594.  
  6595.     BOOLEAN PowerButtonPresent;
  6596.     BOOLEAN SleepButtonPresent;
  6597.     BOOLEAN LidPresent;
  6598.     BOOLEAN SystemS1;
  6599.     BOOLEAN SystemS2;
  6600.     BOOLEAN SystemS3;
  6601.     BOOLEAN SystemS4;
  6602.     BOOLEAN SystemS5;
  6603.     BOOLEAN HiberFilePresent;
  6604.     BOOLEAN FullWake;
  6605.     BOOLEAN VideoDimPresent;
  6606.     BOOLEAN ApmPresent;
  6607.     BOOLEAN UpsPresent;
  6608.  
  6609.  
  6610.     BOOLEAN ThermalControl;
  6611.     BOOLEAN ProcessorThrottle;
  6612.     BYTE ProcessorMinThrottle;
  6613.  
  6614.  
  6615.  
  6616.  
  6617.  
  6618.     BYTE ProcessorMaxThrottle;
  6619.     BOOLEAN FastSystemS4;
  6620.     BOOLEAN Hiberboot;
  6621.     BOOLEAN WakeAlarmPresent;
  6622.     BOOLEAN AoAc;
  6623.  
  6624.  
  6625.  
  6626.     BOOLEAN DiskSpinDown;
  6627.  
  6628.  
  6629.  
  6630.  
  6631.  
  6632.     BYTE HiberFileType;
  6633.     BOOLEAN AoAcConnectivitySupported;
  6634.     BYTE spare3[6];
  6635.  
  6636.  
  6637.  
  6638.     BOOLEAN SystemBatteriesPresent;
  6639.     BOOLEAN BatteriesAreShortTerm;
  6640.     BATTERY_REPORTING_SCALE BatteryScale[3];
  6641.  
  6642.  
  6643.     SYSTEM_POWER_STATE AcOnLineWake;
  6644.     SYSTEM_POWER_STATE SoftLidWake;
  6645.     SYSTEM_POWER_STATE RtcWake;
  6646.     SYSTEM_POWER_STATE MinDeviceWakeState;
  6647.     SYSTEM_POWER_STATE DefaultLowLatencyWake;
  6648. } SYSTEM_POWER_CAPABILITIES, *PSYSTEM_POWER_CAPABILITIES;
  6649.  
  6650. typedef struct {
  6651.     BOOLEAN AcOnLine;
  6652.     BOOLEAN BatteryPresent;
  6653.     BOOLEAN Charging;
  6654.     BOOLEAN Discharging;
  6655.     BOOLEAN Spare1[3];
  6656.  
  6657.     BYTE Tag;
  6658.  
  6659.     DWORD MaxCapacity;
  6660.     DWORD RemainingCapacity;
  6661.     DWORD Rate;
  6662.     DWORD EstimatedTime;
  6663.  
  6664.     DWORD DefaultAlert1;
  6665.     DWORD DefaultAlert2;
  6666. } SYSTEM_BATTERY_STATE, *PSYSTEM_BATTERY_STATE;
  6667. # 16469 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6668. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 1 3
  6669. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 3
  6670. #pragma warning(disable: 4103)
  6671.  
  6672. #pragma pack(push,4)
  6673. # 16469 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  6674.  
  6675.  
  6676.  
  6677.  
  6678.  
  6679.  
  6680.  
  6681.  
  6682. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack2.h" 1 3
  6683. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack2.h" 3
  6684. #pragma warning(disable: 4103)
  6685.  
  6686. #pragma pack(push,2)
  6687. # 16477 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  6688. # 16489 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6689. typedef struct _IMAGE_DOS_HEADER {
  6690.     WORD e_magic;
  6691.     WORD e_cblp;
  6692.     WORD e_cp;
  6693.     WORD e_crlc;
  6694.     WORD e_cparhdr;
  6695.     WORD e_minalloc;
  6696.     WORD e_maxalloc;
  6697.     WORD e_ss;
  6698.     WORD e_sp;
  6699.     WORD e_csum;
  6700.     WORD e_ip;
  6701.     WORD e_cs;
  6702.     WORD e_lfarlc;
  6703.     WORD e_ovno;
  6704.     WORD e_res[4];
  6705.     WORD e_oemid;
  6706.     WORD e_oeminfo;
  6707.     WORD e_res2[10];
  6708.     LONG e_lfanew;
  6709.   } IMAGE_DOS_HEADER, *PIMAGE_DOS_HEADER;
  6710.  
  6711. typedef struct _IMAGE_OS2_HEADER {
  6712.     WORD ne_magic;
  6713.     CHAR ne_ver;
  6714.     CHAR ne_rev;
  6715.     WORD ne_enttab;
  6716.     WORD ne_cbenttab;
  6717.     LONG ne_crc;
  6718.     WORD ne_flags;
  6719.     WORD ne_autodata;
  6720.     WORD ne_heap;
  6721.     WORD ne_stack;
  6722.     LONG ne_csip;
  6723.     LONG ne_sssp;
  6724.     WORD ne_cseg;
  6725.     WORD ne_cmod;
  6726.     WORD ne_cbnrestab;
  6727.     WORD ne_segtab;
  6728.     WORD ne_rsrctab;
  6729.     WORD ne_restab;
  6730.     WORD ne_modtab;
  6731.     WORD ne_imptab;
  6732.     LONG ne_nrestab;
  6733.     WORD ne_cmovent;
  6734.     WORD ne_align;
  6735.     WORD ne_cres;
  6736.     BYTE ne_exetyp;
  6737.     BYTE ne_flagsothers;
  6738.     WORD ne_pretthunks;
  6739.     WORD ne_psegrefbytes;
  6740.     WORD ne_swaparea;
  6741.     WORD ne_expver;
  6742.   } IMAGE_OS2_HEADER, *PIMAGE_OS2_HEADER;
  6743.  
  6744. typedef struct _IMAGE_VXD_HEADER {
  6745.     WORD e32_magic;
  6746.     BYTE e32_border;
  6747.     BYTE e32_worder;
  6748.     DWORD e32_level;
  6749.     WORD e32_cpu;
  6750.     WORD e32_os;
  6751.     DWORD e32_ver;
  6752.     DWORD e32_mflags;
  6753.     DWORD e32_mpages;
  6754.     DWORD e32_startobj;
  6755.     DWORD e32_eip;
  6756.     DWORD e32_stackobj;
  6757.     DWORD e32_esp;
  6758.     DWORD e32_pagesize;
  6759.     DWORD e32_lastpagesize;
  6760.     DWORD e32_fixupsize;
  6761.     DWORD e32_fixupsum;
  6762.     DWORD e32_ldrsize;
  6763.     DWORD e32_ldrsum;
  6764.     DWORD e32_objtab;
  6765.     DWORD e32_objcnt;
  6766.     DWORD e32_objmap;
  6767.     DWORD e32_itermap;
  6768.     DWORD e32_rsrctab;
  6769.     DWORD e32_rsrccnt;
  6770.     DWORD e32_restab;
  6771.     DWORD e32_enttab;
  6772.     DWORD e32_dirtab;
  6773.     DWORD e32_dircnt;
  6774.     DWORD e32_fpagetab;
  6775.     DWORD e32_frectab;
  6776.     DWORD e32_impmod;
  6777.     DWORD e32_impmodcnt;
  6778.     DWORD e32_impproc;
  6779.     DWORD e32_pagesum;
  6780.     DWORD e32_datapage;
  6781.     DWORD e32_preload;
  6782.     DWORD e32_nrestab;
  6783.     DWORD e32_cbnrestab;
  6784.     DWORD e32_nressum;
  6785.     DWORD e32_autodata;
  6786.     DWORD e32_debuginfo;
  6787.     DWORD e32_debuglen;
  6788.     DWORD e32_instpreload;
  6789.     DWORD e32_instdemand;
  6790.     DWORD e32_heapsize;
  6791.     BYTE e32_res3[12];
  6792.     DWORD e32_winresoff;
  6793.     DWORD e32_winreslen;
  6794.     WORD e32_devid;
  6795.     WORD e32_ddkver;
  6796.   } IMAGE_VXD_HEADER, *PIMAGE_VXD_HEADER;
  6797.  
  6798.  
  6799.  
  6800. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  6801. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  6802. #pragma warning(disable: 4103)
  6803.  
  6804. #pragma pack(pop)
  6805. # 16599 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  6806.  
  6807.  
  6808.  
  6809.  
  6810.  
  6811.  
  6812.  
  6813. typedef struct _IMAGE_FILE_HEADER {
  6814.     WORD Machine;
  6815.     WORD NumberOfSections;
  6816.     DWORD TimeDateStamp;
  6817.     DWORD PointerToSymbolTable;
  6818.     DWORD NumberOfSymbols;
  6819.     WORD SizeOfOptionalHeader;
  6820.     WORD Characteristics;
  6821. } IMAGE_FILE_HEADER, *PIMAGE_FILE_HEADER;
  6822. # 16672 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6823. typedef struct _IMAGE_DATA_DIRECTORY {
  6824.     DWORD VirtualAddress;
  6825.     DWORD Size;
  6826. } IMAGE_DATA_DIRECTORY, *PIMAGE_DATA_DIRECTORY;
  6827.  
  6828.  
  6829.  
  6830.  
  6831.  
  6832.  
  6833.  
  6834. typedef struct _IMAGE_OPTIONAL_HEADER {
  6835.  
  6836.  
  6837.  
  6838.  
  6839.     WORD Magic;
  6840.     BYTE MajorLinkerVersion;
  6841.     BYTE MinorLinkerVersion;
  6842.     DWORD SizeOfCode;
  6843.     DWORD SizeOfInitializedData;
  6844.     DWORD SizeOfUninitializedData;
  6845.     DWORD AddressOfEntryPoint;
  6846.     DWORD BaseOfCode;
  6847.     DWORD BaseOfData;
  6848.  
  6849.  
  6850.  
  6851.  
  6852.  
  6853.     DWORD ImageBase;
  6854.     DWORD SectionAlignment;
  6855.     DWORD FileAlignment;
  6856.     WORD MajorOperatingSystemVersion;
  6857.     WORD MinorOperatingSystemVersion;
  6858.     WORD MajorImageVersion;
  6859.     WORD MinorImageVersion;
  6860.     WORD MajorSubsystemVersion;
  6861.     WORD MinorSubsystemVersion;
  6862.     DWORD Win32VersionValue;
  6863.     DWORD SizeOfImage;
  6864.     DWORD SizeOfHeaders;
  6865.     DWORD CheckSum;
  6866.     WORD Subsystem;
  6867.     WORD DllCharacteristics;
  6868.     DWORD SizeOfStackReserve;
  6869.     DWORD SizeOfStackCommit;
  6870.     DWORD SizeOfHeapReserve;
  6871.     DWORD SizeOfHeapCommit;
  6872.     DWORD LoaderFlags;
  6873.     DWORD NumberOfRvaAndSizes;
  6874.     IMAGE_DATA_DIRECTORY DataDirectory[16];
  6875. } IMAGE_OPTIONAL_HEADER32, *PIMAGE_OPTIONAL_HEADER32;
  6876.  
  6877. typedef struct _IMAGE_ROM_OPTIONAL_HEADER {
  6878.     WORD Magic;
  6879.     BYTE MajorLinkerVersion;
  6880.     BYTE MinorLinkerVersion;
  6881.     DWORD SizeOfCode;
  6882.     DWORD SizeOfInitializedData;
  6883.     DWORD SizeOfUninitializedData;
  6884.     DWORD AddressOfEntryPoint;
  6885.     DWORD BaseOfCode;
  6886.     DWORD BaseOfData;
  6887.     DWORD BaseOfBss;
  6888.     DWORD GprMask;
  6889.     DWORD CprMask[4];
  6890.     DWORD GpValue;
  6891. } IMAGE_ROM_OPTIONAL_HEADER, *PIMAGE_ROM_OPTIONAL_HEADER;
  6892.  
  6893. typedef struct _IMAGE_OPTIONAL_HEADER64 {
  6894.     WORD Magic;
  6895.     BYTE MajorLinkerVersion;
  6896.     BYTE MinorLinkerVersion;
  6897.     DWORD SizeOfCode;
  6898.     DWORD SizeOfInitializedData;
  6899.     DWORD SizeOfUninitializedData;
  6900.     DWORD AddressOfEntryPoint;
  6901.     DWORD BaseOfCode;
  6902.     ULONGLONG ImageBase;
  6903.     DWORD SectionAlignment;
  6904.     DWORD FileAlignment;
  6905.     WORD MajorOperatingSystemVersion;
  6906.     WORD MinorOperatingSystemVersion;
  6907.     WORD MajorImageVersion;
  6908.     WORD MinorImageVersion;
  6909.     WORD MajorSubsystemVersion;
  6910.     WORD MinorSubsystemVersion;
  6911.     DWORD Win32VersionValue;
  6912.     DWORD SizeOfImage;
  6913.     DWORD SizeOfHeaders;
  6914.     DWORD CheckSum;
  6915.     WORD Subsystem;
  6916.     WORD DllCharacteristics;
  6917.     ULONGLONG SizeOfStackReserve;
  6918.     ULONGLONG SizeOfStackCommit;
  6919.     ULONGLONG SizeOfHeapReserve;
  6920.     ULONGLONG SizeOfHeapCommit;
  6921.     DWORD LoaderFlags;
  6922.     DWORD NumberOfRvaAndSizes;
  6923.     IMAGE_DATA_DIRECTORY DataDirectory[16];
  6924. } IMAGE_OPTIONAL_HEADER64, *PIMAGE_OPTIONAL_HEADER64;
  6925. # 16784 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6926. typedef IMAGE_OPTIONAL_HEADER32 IMAGE_OPTIONAL_HEADER;
  6927. typedef PIMAGE_OPTIONAL_HEADER32 PIMAGE_OPTIONAL_HEADER;
  6928.  
  6929.  
  6930.  
  6931. typedef struct _IMAGE_NT_HEADERS64 {
  6932.     DWORD Signature;
  6933.     IMAGE_FILE_HEADER FileHeader;
  6934.     IMAGE_OPTIONAL_HEADER64 OptionalHeader;
  6935. } IMAGE_NT_HEADERS64, *PIMAGE_NT_HEADERS64;
  6936.  
  6937. typedef struct _IMAGE_NT_HEADERS {
  6938.     DWORD Signature;
  6939.     IMAGE_FILE_HEADER FileHeader;
  6940.     IMAGE_OPTIONAL_HEADER32 OptionalHeader;
  6941. } IMAGE_NT_HEADERS32, *PIMAGE_NT_HEADERS32;
  6942.  
  6943. typedef struct _IMAGE_ROM_HEADERS {
  6944.     IMAGE_FILE_HEADER FileHeader;
  6945.     IMAGE_ROM_OPTIONAL_HEADER OptionalHeader;
  6946. } IMAGE_ROM_HEADERS, *PIMAGE_ROM_HEADERS;
  6947.  
  6948.  
  6949.  
  6950.  
  6951.  
  6952. typedef IMAGE_NT_HEADERS32 IMAGE_NT_HEADERS;
  6953. typedef PIMAGE_NT_HEADERS32 PIMAGE_NT_HEADERS;
  6954. # 16881 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  6955. typedef struct ANON_OBJECT_HEADER {
  6956.     WORD Sig1;
  6957.     WORD Sig2;
  6958.     WORD Version;
  6959.     WORD Machine;
  6960.     DWORD TimeDateStamp;
  6961.     CLSID ClassID;
  6962.     DWORD SizeOfData;
  6963. } ANON_OBJECT_HEADER;
  6964.  
  6965. typedef struct ANON_OBJECT_HEADER_V2 {
  6966.     WORD Sig1;
  6967.     WORD Sig2;
  6968.     WORD Version;
  6969.     WORD Machine;
  6970.     DWORD TimeDateStamp;
  6971.     CLSID ClassID;
  6972.     DWORD SizeOfData;
  6973.     DWORD Flags;
  6974.     DWORD MetaDataSize;
  6975.     DWORD MetaDataOffset;
  6976. } ANON_OBJECT_HEADER_V2;
  6977.  
  6978. typedef struct ANON_OBJECT_HEADER_BIGOBJ {
  6979.  
  6980.     WORD Sig1;
  6981.     WORD Sig2;
  6982.     WORD Version;
  6983.     WORD Machine;
  6984.     DWORD TimeDateStamp;
  6985.     CLSID ClassID;
  6986.     DWORD SizeOfData;
  6987.     DWORD Flags;
  6988.     DWORD MetaDataSize;
  6989.     DWORD MetaDataOffset;
  6990.  
  6991.  
  6992.     DWORD NumberOfSections;
  6993.     DWORD PointerToSymbolTable;
  6994.     DWORD NumberOfSymbols;
  6995. } ANON_OBJECT_HEADER_BIGOBJ;
  6996.  
  6997.  
  6998.  
  6999.  
  7000.  
  7001.  
  7002.  
  7003. typedef struct _IMAGE_SECTION_HEADER {
  7004.     BYTE Name[8];
  7005.     union {
  7006.             DWORD PhysicalAddress;
  7007.             DWORD VirtualSize;
  7008.     } Misc;
  7009.     DWORD VirtualAddress;
  7010.     DWORD SizeOfRawData;
  7011.     DWORD PointerToRawData;
  7012.     DWORD PointerToRelocations;
  7013.     DWORD PointerToLinenumbers;
  7014.     WORD NumberOfRelocations;
  7015.     WORD NumberOfLinenumbers;
  7016.     DWORD Characteristics;
  7017. } IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER;
  7018. # 17009 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7019. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack2.h" 1 3
  7020. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack2.h" 3
  7021. #pragma warning(disable: 4103)
  7022.  
  7023. #pragma pack(push,2)
  7024. # 17009 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7025.  
  7026.  
  7027.  
  7028.  
  7029.  
  7030.  
  7031.  
  7032. typedef struct _IMAGE_SYMBOL {
  7033.     union {
  7034.         BYTE ShortName[8];
  7035.         struct {
  7036.             DWORD Short;
  7037.             DWORD Long;
  7038.         } Name;
  7039.         DWORD LongName[2];
  7040.     } N;
  7041.     DWORD Value;
  7042.     SHORT SectionNumber;
  7043.     WORD Type;
  7044.     BYTE StorageClass;
  7045.     BYTE NumberOfAuxSymbols;
  7046. } IMAGE_SYMBOL;
  7047. typedef IMAGE_SYMBOL *PIMAGE_SYMBOL;
  7048.  
  7049.  
  7050.  
  7051. typedef struct _IMAGE_SYMBOL_EX {
  7052.     union {
  7053.         BYTE ShortName[8];
  7054.         struct {
  7055.             DWORD Short;
  7056.             DWORD Long;
  7057.         } Name;
  7058.         DWORD LongName[2];
  7059.     } N;
  7060.     DWORD Value;
  7061.     LONG SectionNumber;
  7062.     WORD Type;
  7063.     BYTE StorageClass;
  7064.     BYTE NumberOfAuxSymbols;
  7065. } IMAGE_SYMBOL_EX;
  7066. typedef IMAGE_SYMBOL_EX *PIMAGE_SYMBOL_EX;
  7067. # 17172 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7068. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack2.h" 1 3
  7069. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack2.h" 3
  7070. #pragma warning(disable: 4103)
  7071.  
  7072. #pragma pack(push,2)
  7073. # 17172 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7074.  
  7075.  
  7076. typedef struct IMAGE_AUX_SYMBOL_TOKEN_DEF {
  7077.     BYTE bAuxType;
  7078.     BYTE bReserved;
  7079.     DWORD SymbolTableIndex;
  7080.     BYTE rgbReserved[12];
  7081. } IMAGE_AUX_SYMBOL_TOKEN_DEF;
  7082.  
  7083. typedef IMAGE_AUX_SYMBOL_TOKEN_DEF *PIMAGE_AUX_SYMBOL_TOKEN_DEF;
  7084.  
  7085.  
  7086. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  7087. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  7088. #pragma warning(disable: 4103)
  7089.  
  7090. #pragma pack(pop)
  7091. # 17183 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7092.  
  7093.  
  7094.  
  7095.  
  7096.  
  7097.  
  7098. typedef union _IMAGE_AUX_SYMBOL {
  7099.     struct {
  7100.         DWORD TagIndex;
  7101.         union {
  7102.             struct {
  7103.                 WORD Linenumber;
  7104.                 WORD Size;
  7105.             } LnSz;
  7106.            DWORD TotalSize;
  7107.         } Misc;
  7108.         union {
  7109.             struct {
  7110.                 DWORD PointerToLinenumber;
  7111.                 DWORD PointerToNextFunction;
  7112.             } Function;
  7113.             struct {
  7114.                 WORD Dimension[4];
  7115.             } Array;
  7116.         } FcnAry;
  7117.         WORD TvIndex;
  7118.     } Sym;
  7119.     struct {
  7120.         BYTE Name[18];
  7121.     } File;
  7122.     struct {
  7123.         DWORD Length;
  7124.         WORD NumberOfRelocations;
  7125.         WORD NumberOfLinenumbers;
  7126.         DWORD CheckSum;
  7127.         SHORT Number;
  7128.         BYTE Selection;
  7129.  BYTE bReserved;
  7130.  SHORT HighNumber;
  7131.     } Section;
  7132.     IMAGE_AUX_SYMBOL_TOKEN_DEF TokenDef;
  7133.     struct {
  7134.         DWORD crc;
  7135.         BYTE rgbReserved[14];
  7136.     } CRC;
  7137. } IMAGE_AUX_SYMBOL;
  7138. typedef IMAGE_AUX_SYMBOL *PIMAGE_AUX_SYMBOL;
  7139.  
  7140. typedef union _IMAGE_AUX_SYMBOL_EX {
  7141.     struct {
  7142.         DWORD WeakDefaultSymIndex;
  7143.         DWORD WeakSearchType;
  7144.         BYTE rgbReserved[12];
  7145.     } Sym;
  7146.     struct {
  7147.         BYTE Name[sizeof(IMAGE_SYMBOL_EX)];
  7148.     } File;
  7149.     struct {
  7150.         DWORD Length;
  7151.         WORD NumberOfRelocations;
  7152.         WORD NumberOfLinenumbers;
  7153.         DWORD CheckSum;
  7154.         SHORT Number;
  7155.         BYTE Selection;
  7156.         BYTE bReserved;
  7157.         SHORT HighNumber;
  7158.         BYTE rgbReserved[2];
  7159.     } Section;
  7160.     struct{
  7161.         IMAGE_AUX_SYMBOL_TOKEN_DEF TokenDef;
  7162.         BYTE rgbReserved[2];
  7163.     } ;
  7164.     struct {
  7165.         DWORD crc;
  7166.         BYTE rgbReserved[16];
  7167.     } CRC;
  7168. } IMAGE_AUX_SYMBOL_EX;
  7169. typedef IMAGE_AUX_SYMBOL_EX *PIMAGE_AUX_SYMBOL_EX;
  7170.  
  7171. typedef enum IMAGE_AUX_SYMBOL_TYPE {
  7172.     IMAGE_AUX_SYMBOL_TYPE_TOKEN_DEF = 1,
  7173. } IMAGE_AUX_SYMBOL_TYPE;
  7174. # 17288 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7175. typedef struct _IMAGE_RELOCATION {
  7176.     union {
  7177.         DWORD VirtualAddress;
  7178.         DWORD RelocCount;
  7179.     } ;
  7180.     DWORD SymbolTableIndex;
  7181.     WORD Type;
  7182. } IMAGE_RELOCATION;
  7183. typedef IMAGE_RELOCATION *PIMAGE_RELOCATION;
  7184. # 17690 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7185. typedef struct _IMAGE_LINENUMBER {
  7186.     union {
  7187.         DWORD SymbolTableIndex;
  7188.         DWORD VirtualAddress;
  7189.     } Type;
  7190.     WORD Linenumber;
  7191. } IMAGE_LINENUMBER;
  7192. typedef IMAGE_LINENUMBER *PIMAGE_LINENUMBER;
  7193.  
  7194.  
  7195.  
  7196. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  7197. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  7198. #pragma warning(disable: 4103)
  7199.  
  7200. #pragma pack(pop)
  7201. # 17700 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7202.  
  7203.  
  7204.  
  7205.  
  7206.  
  7207.  
  7208.  
  7209. typedef struct _IMAGE_BASE_RELOCATION {
  7210.     DWORD VirtualAddress;
  7211.     DWORD SizeOfBlock;
  7212.  
  7213. } IMAGE_BASE_RELOCATION;
  7214. typedef IMAGE_BASE_RELOCATION * PIMAGE_BASE_RELOCATION;
  7215. # 17756 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7216. typedef struct _IMAGE_ARCHIVE_MEMBER_HEADER {
  7217.     BYTE Name[16];
  7218.     BYTE Date[12];
  7219.     BYTE UserID[6];
  7220.     BYTE GroupID[6];
  7221.     BYTE Mode[8];
  7222.     BYTE Size[10];
  7223.     BYTE EndHeader[2];
  7224. } IMAGE_ARCHIVE_MEMBER_HEADER, *PIMAGE_ARCHIVE_MEMBER_HEADER;
  7225. # 17776 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7226. typedef struct _IMAGE_EXPORT_DIRECTORY {
  7227.     DWORD Characteristics;
  7228.     DWORD TimeDateStamp;
  7229.     WORD MajorVersion;
  7230.     WORD MinorVersion;
  7231.     DWORD Name;
  7232.     DWORD Base;
  7233.     DWORD NumberOfFunctions;
  7234.     DWORD NumberOfNames;
  7235.     DWORD AddressOfFunctions;
  7236.     DWORD AddressOfNames;
  7237.     DWORD AddressOfNameOrdinals;
  7238. } IMAGE_EXPORT_DIRECTORY, *PIMAGE_EXPORT_DIRECTORY;
  7239.  
  7240.  
  7241.  
  7242.  
  7243.  
  7244. typedef struct _IMAGE_IMPORT_BY_NAME {
  7245.     WORD Hint;
  7246.     CHAR Name[1];
  7247. } IMAGE_IMPORT_BY_NAME, *PIMAGE_IMPORT_BY_NAME;
  7248.  
  7249.  
  7250. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack8.h" 1 3
  7251. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack8.h" 3
  7252. #pragma warning(disable: 4103)
  7253.  
  7254. #pragma pack(push,8)
  7255. # 17799 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7256.  
  7257.  
  7258. typedef struct _IMAGE_THUNK_DATA64 {
  7259.     union {
  7260.         ULONGLONG ForwarderString;
  7261.         ULONGLONG Function;
  7262.         ULONGLONG Ordinal;
  7263.         ULONGLONG AddressOfData;
  7264.     } u1;
  7265. } IMAGE_THUNK_DATA64;
  7266. typedef IMAGE_THUNK_DATA64 * PIMAGE_THUNK_DATA64;
  7267.  
  7268.  
  7269. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  7270. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  7271. #pragma warning(disable: 4103)
  7272.  
  7273. #pragma pack(pop)
  7274. # 17811 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7275.  
  7276.  
  7277. typedef struct _IMAGE_THUNK_DATA32 {
  7278.     union {
  7279.         DWORD ForwarderString;
  7280.         DWORD Function;
  7281.         DWORD Ordinal;
  7282.         DWORD AddressOfData;
  7283.     } u1;
  7284. } IMAGE_THUNK_DATA32;
  7285. typedef IMAGE_THUNK_DATA32 * PIMAGE_THUNK_DATA32;
  7286. # 17834 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7287. typedef void
  7288. (__stdcall *PIMAGE_TLS_CALLBACK) (
  7289.     PVOID DllHandle,
  7290.     DWORD Reason,
  7291.     PVOID Reserved
  7292.     );
  7293.  
  7294. typedef struct _IMAGE_TLS_DIRECTORY64 {
  7295.     ULONGLONG StartAddressOfRawData;
  7296.     ULONGLONG EndAddressOfRawData;
  7297.     ULONGLONG AddressOfIndex;
  7298.     ULONGLONG AddressOfCallBacks;
  7299.     DWORD SizeOfZeroFill;
  7300.     union {
  7301.         DWORD Characteristics;
  7302.         struct {
  7303.             DWORD Reserved0 : 20;
  7304.             DWORD Alignment : 4;
  7305.             DWORD Reserved1 : 8;
  7306.         } ;
  7307.     } ;
  7308.  
  7309. } IMAGE_TLS_DIRECTORY64;
  7310.  
  7311. typedef IMAGE_TLS_DIRECTORY64 * PIMAGE_TLS_DIRECTORY64;
  7312.  
  7313. typedef struct _IMAGE_TLS_DIRECTORY32 {
  7314.     DWORD StartAddressOfRawData;
  7315.     DWORD EndAddressOfRawData;
  7316.     DWORD AddressOfIndex;
  7317.     DWORD AddressOfCallBacks;
  7318.     DWORD SizeOfZeroFill;
  7319.     union {
  7320.         DWORD Characteristics;
  7321.         struct {
  7322.             DWORD Reserved0 : 20;
  7323.             DWORD Alignment : 4;
  7324.             DWORD Reserved1 : 8;
  7325.         } ;
  7326.     } ;
  7327.  
  7328. } IMAGE_TLS_DIRECTORY32;
  7329. typedef IMAGE_TLS_DIRECTORY32 * PIMAGE_TLS_DIRECTORY32;
  7330. # 17889 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7331. typedef IMAGE_THUNK_DATA32 IMAGE_THUNK_DATA;
  7332. typedef PIMAGE_THUNK_DATA32 PIMAGE_THUNK_DATA;
  7333.  
  7334. typedef IMAGE_TLS_DIRECTORY32 IMAGE_TLS_DIRECTORY;
  7335. typedef PIMAGE_TLS_DIRECTORY32 PIMAGE_TLS_DIRECTORY;
  7336.  
  7337.  
  7338. typedef struct _IMAGE_IMPORT_DESCRIPTOR {
  7339.     union {
  7340.         DWORD Characteristics;
  7341.         DWORD OriginalFirstThunk;
  7342.     } ;
  7343.     DWORD TimeDateStamp;
  7344.  
  7345.  
  7346.  
  7347.  
  7348.     DWORD ForwarderChain;
  7349.     DWORD Name;
  7350.     DWORD FirstThunk;
  7351. } IMAGE_IMPORT_DESCRIPTOR;
  7352. typedef IMAGE_IMPORT_DESCRIPTOR *PIMAGE_IMPORT_DESCRIPTOR;
  7353.  
  7354.  
  7355.  
  7356.  
  7357.  
  7358. typedef struct _IMAGE_BOUND_IMPORT_DESCRIPTOR {
  7359.     DWORD TimeDateStamp;
  7360.     WORD OffsetModuleName;
  7361.     WORD NumberOfModuleForwarderRefs;
  7362.  
  7363. } IMAGE_BOUND_IMPORT_DESCRIPTOR, *PIMAGE_BOUND_IMPORT_DESCRIPTOR;
  7364.  
  7365. typedef struct _IMAGE_BOUND_FORWARDER_REF {
  7366.     DWORD TimeDateStamp;
  7367.     WORD OffsetModuleName;
  7368.     WORD Reserved;
  7369. } IMAGE_BOUND_FORWARDER_REF, *PIMAGE_BOUND_FORWARDER_REF;
  7370.  
  7371. typedef struct _IMAGE_DELAYLOAD_DESCRIPTOR {
  7372.     union {
  7373.         DWORD AllAttributes;
  7374.         struct {
  7375.             DWORD RvaBased : 1;
  7376.             DWORD ReservedAttributes : 31;
  7377.         } ;
  7378.     } Attributes;
  7379.  
  7380.     DWORD DllNameRVA;
  7381.     DWORD ModuleHandleRVA;
  7382.     DWORD ImportAddressTableRVA;
  7383.     DWORD ImportNameTableRVA;
  7384.     DWORD BoundImportAddressTableRVA;
  7385.     DWORD UnloadInformationTableRVA;
  7386.     DWORD TimeDateStamp;
  7387.  
  7388.  
  7389. } IMAGE_DELAYLOAD_DESCRIPTOR, *PIMAGE_DELAYLOAD_DESCRIPTOR;
  7390.  
  7391. typedef const IMAGE_DELAYLOAD_DESCRIPTOR *PCIMAGE_DELAYLOAD_DESCRIPTOR;
  7392. # 17969 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7393. typedef struct _IMAGE_RESOURCE_DIRECTORY {
  7394.     DWORD Characteristics;
  7395.     DWORD TimeDateStamp;
  7396.     WORD MajorVersion;
  7397.     WORD MinorVersion;
  7398.     WORD NumberOfNamedEntries;
  7399.     WORD NumberOfIdEntries;
  7400.  
  7401. } IMAGE_RESOURCE_DIRECTORY, *PIMAGE_RESOURCE_DIRECTORY;
  7402. # 17996 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7403. typedef struct _IMAGE_RESOURCE_DIRECTORY_ENTRY {
  7404.     union {
  7405.         struct {
  7406.             DWORD NameOffset:31;
  7407.             DWORD NameIsString:1;
  7408.         } ;
  7409.         DWORD Name;
  7410.         WORD Id;
  7411.     } ;
  7412.     union {
  7413.         DWORD OffsetToData;
  7414.         struct {
  7415.             DWORD OffsetToDirectory:31;
  7416.             DWORD DataIsDirectory:1;
  7417.         } ;
  7418.     } ;
  7419. } IMAGE_RESOURCE_DIRECTORY_ENTRY, *PIMAGE_RESOURCE_DIRECTORY_ENTRY;
  7420. # 18023 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7421. typedef struct _IMAGE_RESOURCE_DIRECTORY_STRING {
  7422.     WORD Length;
  7423.     CHAR NameString[ 1 ];
  7424. } IMAGE_RESOURCE_DIRECTORY_STRING, *PIMAGE_RESOURCE_DIRECTORY_STRING;
  7425.  
  7426.  
  7427. typedef struct _IMAGE_RESOURCE_DIR_STRING_U {
  7428.     WORD Length;
  7429.     WCHAR NameString[ 1 ];
  7430. } IMAGE_RESOURCE_DIR_STRING_U, *PIMAGE_RESOURCE_DIR_STRING_U;
  7431. # 18044 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7432. typedef struct _IMAGE_RESOURCE_DATA_ENTRY {
  7433.     DWORD OffsetToData;
  7434.     DWORD Size;
  7435.     DWORD CodePage;
  7436.     DWORD Reserved;
  7437. } IMAGE_RESOURCE_DATA_ENTRY, *PIMAGE_RESOURCE_DATA_ENTRY;
  7438.  
  7439.  
  7440.  
  7441.  
  7442.  
  7443.  
  7444.  
  7445. typedef struct _IMAGE_LOAD_CONFIG_CODE_INTEGRITY {
  7446.     WORD Flags;
  7447.     WORD Catalog;
  7448.     DWORD CatalogOffset;
  7449.     DWORD Reserved;
  7450. } IMAGE_LOAD_CONFIG_CODE_INTEGRITY, *PIMAGE_LOAD_CONFIG_CODE_INTEGRITY;
  7451.  
  7452.  
  7453.  
  7454.  
  7455.  
  7456. typedef struct _IMAGE_DYNAMIC_RELOCATION_TABLE {
  7457.     DWORD Version;
  7458.     DWORD Size;
  7459.  
  7460. } IMAGE_DYNAMIC_RELOCATION_TABLE, *PIMAGE_DYNAMIC_RELOCATION_TABLE;
  7461.  
  7462.  
  7463.  
  7464.  
  7465.  
  7466.  
  7467. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack1.h" 1 3
  7468. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack1.h" 3
  7469. #pragma warning(disable: 4103)
  7470.  
  7471. #pragma pack(push,1)
  7472. # 18078 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7473.  
  7474.  
  7475. typedef struct _IMAGE_DYNAMIC_RELOCATION32 {
  7476.     DWORD Symbol;
  7477.     DWORD BaseRelocSize;
  7478.  
  7479. } IMAGE_DYNAMIC_RELOCATION32, *PIMAGE_DYNAMIC_RELOCATION32;
  7480.  
  7481. typedef struct _IMAGE_DYNAMIC_RELOCATION64 {
  7482.     ULONGLONG Symbol;
  7483.     DWORD BaseRelocSize;
  7484.  
  7485. } IMAGE_DYNAMIC_RELOCATION64, *PIMAGE_DYNAMIC_RELOCATION64;
  7486.  
  7487. typedef struct _IMAGE_DYNAMIC_RELOCATION32_V2 {
  7488.     DWORD HeaderSize;
  7489.     DWORD FixupInfoSize;
  7490.     DWORD Symbol;
  7491.     DWORD SymbolGroup;
  7492.     DWORD Flags;
  7493.  
  7494.  
  7495. } IMAGE_DYNAMIC_RELOCATION32_V2, *PIMAGE_DYNAMIC_RELOCATION32_V2;
  7496.  
  7497. typedef struct _IMAGE_DYNAMIC_RELOCATION64_V2 {
  7498.     DWORD HeaderSize;
  7499.     DWORD FixupInfoSize;
  7500.     ULONGLONG Symbol;
  7501.     DWORD SymbolGroup;
  7502.     DWORD Flags;
  7503.  
  7504.  
  7505. } IMAGE_DYNAMIC_RELOCATION64_V2, *PIMAGE_DYNAMIC_RELOCATION64_V2;
  7506.  
  7507.  
  7508. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  7509. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  7510. #pragma warning(disable: 4103)
  7511.  
  7512. #pragma pack(pop)
  7513. # 18112 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7514.  
  7515.  
  7516.  
  7517.  
  7518.  
  7519.  
  7520.  
  7521.  
  7522. typedef IMAGE_DYNAMIC_RELOCATION32 IMAGE_DYNAMIC_RELOCATION;
  7523. typedef PIMAGE_DYNAMIC_RELOCATION32 PIMAGE_DYNAMIC_RELOCATION;
  7524. typedef IMAGE_DYNAMIC_RELOCATION32_V2 IMAGE_DYNAMIC_RELOCATION_V2;
  7525. typedef PIMAGE_DYNAMIC_RELOCATION32_V2 PIMAGE_DYNAMIC_RELOCATION_V2;
  7526. # 18133 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7527. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack1.h" 1 3
  7528. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/pshpack1.h" 3
  7529. #pragma warning(disable: 4103)
  7530.  
  7531. #pragma pack(push,1)
  7532. # 18133 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7533.  
  7534.  
  7535. typedef struct _IMAGE_PROLOGUE_DYNAMIC_RELOCATION_HEADER {
  7536.     BYTE PrologueByteCount;
  7537.  
  7538. } IMAGE_PROLOGUE_DYNAMIC_RELOCATION_HEADER;
  7539. typedef IMAGE_PROLOGUE_DYNAMIC_RELOCATION_HEADER * PIMAGE_PROLOGUE_DYNAMIC_RELOCATION_HEADER;
  7540.  
  7541. typedef struct _IMAGE_EPILOGUE_DYNAMIC_RELOCATION_HEADER {
  7542.     DWORD EpilogueCount;
  7543.     BYTE EpilogueByteCount;
  7544.     BYTE BranchDescriptorElementSize;
  7545.     WORD BranchDescriptorCount;
  7546.  
  7547.  
  7548. } IMAGE_EPILOGUE_DYNAMIC_RELOCATION_HEADER;
  7549. typedef IMAGE_EPILOGUE_DYNAMIC_RELOCATION_HEADER * PIMAGE_EPILOGUE_DYNAMIC_RELOCATION_HEADER;
  7550.  
  7551.  
  7552. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  7553. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  7554. #pragma warning(disable: 4103)
  7555.  
  7556. #pragma pack(pop)
  7557. # 18151 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7558.  
  7559.  
  7560.  
  7561.  
  7562.  
  7563.  
  7564. typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY32 {
  7565.     DWORD Size;
  7566.     DWORD TimeDateStamp;
  7567.     WORD MajorVersion;
  7568.     WORD MinorVersion;
  7569.     DWORD GlobalFlagsClear;
  7570.     DWORD GlobalFlagsSet;
  7571.     DWORD CriticalSectionDefaultTimeout;
  7572.     DWORD DeCommitFreeBlockThreshold;
  7573.     DWORD DeCommitTotalFreeThreshold;
  7574.     DWORD LockPrefixTable;
  7575.     DWORD MaximumAllocationSize;
  7576.     DWORD VirtualMemoryThreshold;
  7577.     DWORD ProcessHeapFlags;
  7578.     DWORD ProcessAffinityMask;
  7579.     WORD CSDVersion;
  7580.     WORD DependentLoadFlags;
  7581.     DWORD EditList;
  7582.     DWORD SecurityCookie;
  7583.     DWORD SEHandlerTable;
  7584.     DWORD SEHandlerCount;
  7585.     DWORD GuardCFCheckFunctionPointer;
  7586.     DWORD GuardCFDispatchFunctionPointer;
  7587.     DWORD GuardCFFunctionTable;
  7588.     DWORD GuardCFFunctionCount;
  7589.     DWORD GuardFlags;
  7590.     IMAGE_LOAD_CONFIG_CODE_INTEGRITY CodeIntegrity;
  7591.     DWORD GuardAddressTakenIatEntryTable;
  7592.     DWORD GuardAddressTakenIatEntryCount;
  7593.     DWORD GuardLongJumpTargetTable;
  7594.     DWORD GuardLongJumpTargetCount;
  7595.     DWORD DynamicValueRelocTable;
  7596.     DWORD CHPEMetadataPointer;
  7597.     DWORD GuardRFFailureRoutine;
  7598.     DWORD GuardRFFailureRoutineFunctionPointer;
  7599.     DWORD DynamicValueRelocTableOffset;
  7600.     WORD DynamicValueRelocTableSection;
  7601.     WORD Reserved2;
  7602.     DWORD GuardRFVerifyStackPointerFunctionPointer;
  7603.     DWORD HotPatchTableOffset;
  7604.     DWORD Reserved3;
  7605.     DWORD EnclaveConfigurationPointer;
  7606. } IMAGE_LOAD_CONFIG_DIRECTORY32, *PIMAGE_LOAD_CONFIG_DIRECTORY32;
  7607.  
  7608. typedef struct _IMAGE_LOAD_CONFIG_DIRECTORY64 {
  7609.     DWORD Size;
  7610.     DWORD TimeDateStamp;
  7611.     WORD MajorVersion;
  7612.     WORD MinorVersion;
  7613.     DWORD GlobalFlagsClear;
  7614.     DWORD GlobalFlagsSet;
  7615.     DWORD CriticalSectionDefaultTimeout;
  7616.     ULONGLONG DeCommitFreeBlockThreshold;
  7617.     ULONGLONG DeCommitTotalFreeThreshold;
  7618.     ULONGLONG LockPrefixTable;
  7619.     ULONGLONG MaximumAllocationSize;
  7620.     ULONGLONG VirtualMemoryThreshold;
  7621.     ULONGLONG ProcessAffinityMask;
  7622.     DWORD ProcessHeapFlags;
  7623.     WORD CSDVersion;
  7624.     WORD DependentLoadFlags;
  7625.     ULONGLONG EditList;
  7626.     ULONGLONG SecurityCookie;
  7627.     ULONGLONG SEHandlerTable;
  7628.     ULONGLONG SEHandlerCount;
  7629.     ULONGLONG GuardCFCheckFunctionPointer;
  7630.     ULONGLONG GuardCFDispatchFunctionPointer;
  7631.     ULONGLONG GuardCFFunctionTable;
  7632.     ULONGLONG GuardCFFunctionCount;
  7633.     DWORD GuardFlags;
  7634.     IMAGE_LOAD_CONFIG_CODE_INTEGRITY CodeIntegrity;
  7635.     ULONGLONG GuardAddressTakenIatEntryTable;
  7636.     ULONGLONG GuardAddressTakenIatEntryCount;
  7637.     ULONGLONG GuardLongJumpTargetTable;
  7638.     ULONGLONG GuardLongJumpTargetCount;
  7639.     ULONGLONG DynamicValueRelocTable;
  7640.     ULONGLONG CHPEMetadataPointer;
  7641.     ULONGLONG GuardRFFailureRoutine;
  7642.     ULONGLONG GuardRFFailureRoutineFunctionPointer;
  7643.     DWORD DynamicValueRelocTableOffset;
  7644.     WORD DynamicValueRelocTableSection;
  7645.     WORD Reserved2;
  7646.     ULONGLONG GuardRFVerifyStackPointerFunctionPointer;
  7647.     DWORD HotPatchTableOffset;
  7648.     DWORD Reserved3;
  7649.     ULONGLONG EnclaveConfigurationPointer;
  7650. } IMAGE_LOAD_CONFIG_DIRECTORY64, *PIMAGE_LOAD_CONFIG_DIRECTORY64;
  7651. # 18252 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7652. typedef IMAGE_LOAD_CONFIG_DIRECTORY32 IMAGE_LOAD_CONFIG_DIRECTORY;
  7653. typedef PIMAGE_LOAD_CONFIG_DIRECTORY32 PIMAGE_LOAD_CONFIG_DIRECTORY;
  7654.  
  7655.  
  7656.  
  7657.  
  7658. typedef struct _IMAGE_HOT_PATCH_INFO {
  7659.     DWORD Version;
  7660.     DWORD Size;
  7661.     DWORD SequenceNumber;
  7662.     DWORD BaseImageList;
  7663.     DWORD BaseImageCount;
  7664.     DWORD BufferOffset;
  7665. } IMAGE_HOT_PATCH_INFO, *PIMAGE_HOT_PATCH_INFO;
  7666.  
  7667. typedef struct _IMAGE_HOT_PATCH_BASE {
  7668.     DWORD SequenceNumber;
  7669.     DWORD Flags;
  7670.     DWORD OriginalTimeDateStamp;
  7671.     DWORD OriginalCheckSum;
  7672.     DWORD CodeIntegrityInfo;
  7673.     DWORD CodeIntegritySize;
  7674.     DWORD PatchTable;
  7675.     DWORD BufferOffset;
  7676. } IMAGE_HOT_PATCH_BASE, *PIMAGE_HOT_PATCH_BASE;
  7677.  
  7678. typedef struct _IMAGE_HOT_PATCH_HASHES {
  7679.     BYTE SHA256[32];
  7680.     BYTE SHA1[20];
  7681. } IMAGE_HOT_PATCH_HASHES, *PIMAGE_HOT_PATCH_HASHES;
  7682. # 18334 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7683. typedef struct _IMAGE_CE_RUNTIME_FUNCTION_ENTRY {
  7684.     DWORD FuncStart;
  7685.     DWORD PrologLen : 8;
  7686.     DWORD FuncLen : 22;
  7687.     DWORD ThirtyTwoBit : 1;
  7688.     DWORD ExceptionFlag : 1;
  7689. } IMAGE_CE_RUNTIME_FUNCTION_ENTRY, * PIMAGE_CE_RUNTIME_FUNCTION_ENTRY;
  7690.  
  7691. typedef struct _IMAGE_ARM_RUNTIME_FUNCTION_ENTRY {
  7692.     DWORD BeginAddress;
  7693.     union {
  7694.         DWORD UnwindData;
  7695.         struct {
  7696.             DWORD Flag : 2;
  7697.             DWORD FunctionLength : 11;
  7698.             DWORD Ret : 2;
  7699.             DWORD H : 1;
  7700.             DWORD Reg : 3;
  7701.             DWORD R : 1;
  7702.             DWORD L : 1;
  7703.             DWORD C : 1;
  7704.             DWORD StackAdjust : 10;
  7705.         } ;
  7706.     } ;
  7707. } IMAGE_ARM_RUNTIME_FUNCTION_ENTRY, * PIMAGE_ARM_RUNTIME_FUNCTION_ENTRY;
  7708.  
  7709. typedef struct _IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY {
  7710.     DWORD BeginAddress;
  7711.     union {
  7712.         DWORD UnwindData;
  7713.         struct {
  7714.             DWORD Flag : 2;
  7715.             DWORD FunctionLength : 11;
  7716.             DWORD RegF : 3;
  7717.             DWORD RegI : 4;
  7718.             DWORD H : 1;
  7719.             DWORD CR : 2;
  7720.             DWORD FrameSize : 9;
  7721.         } ;
  7722.     } ;
  7723. } IMAGE_ARM64_RUNTIME_FUNCTION_ENTRY, * PIMAGE_ARM64_RUNTIME_FUNCTION_ENTRY;
  7724.  
  7725. typedef struct _IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY {
  7726.     ULONGLONG BeginAddress;
  7727.     ULONGLONG EndAddress;
  7728.     ULONGLONG ExceptionHandler;
  7729.     ULONGLONG HandlerData;
  7730.     ULONGLONG PrologEndAddress;
  7731. } IMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY, *PIMAGE_ALPHA64_RUNTIME_FUNCTION_ENTRY;
  7732.  
  7733. typedef struct _IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY {
  7734.     DWORD BeginAddress;
  7735.     DWORD EndAddress;
  7736.     DWORD ExceptionHandler;
  7737.     DWORD HandlerData;
  7738.     DWORD PrologEndAddress;
  7739. } IMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY, *PIMAGE_ALPHA_RUNTIME_FUNCTION_ENTRY;
  7740.  
  7741. typedef struct _IMAGE_RUNTIME_FUNCTION_ENTRY {
  7742.     DWORD BeginAddress;
  7743.     DWORD EndAddress;
  7744.     union {
  7745.         DWORD UnwindInfoAddress;
  7746.         DWORD UnwindData;
  7747.     } ;
  7748. } _IMAGE_RUNTIME_FUNCTION_ENTRY, *_PIMAGE_RUNTIME_FUNCTION_ENTRY;
  7749.  
  7750. typedef _IMAGE_RUNTIME_FUNCTION_ENTRY IMAGE_IA64_RUNTIME_FUNCTION_ENTRY;
  7751. typedef _PIMAGE_RUNTIME_FUNCTION_ENTRY PIMAGE_IA64_RUNTIME_FUNCTION_ENTRY;
  7752. # 18428 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7753. typedef _IMAGE_RUNTIME_FUNCTION_ENTRY IMAGE_RUNTIME_FUNCTION_ENTRY;
  7754. typedef _PIMAGE_RUNTIME_FUNCTION_ENTRY PIMAGE_RUNTIME_FUNCTION_ENTRY;
  7755. # 18440 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7756. typedef struct _IMAGE_ENCLAVE_CONFIG32 {
  7757.     DWORD Size;
  7758.     DWORD MinimumRequiredConfigSize;
  7759.     DWORD PolicyFlags;
  7760.     DWORD NumberOfImports;
  7761.     DWORD ImportList;
  7762.     DWORD ImportEntrySize;
  7763.     BYTE FamilyID[16];
  7764.     BYTE ImageID[16];
  7765.     DWORD ImageVersion;
  7766.     DWORD SecurityVersion;
  7767.     DWORD EnclaveSize;
  7768.     DWORD NumberOfThreads;
  7769.     DWORD EnclaveFlags;
  7770. } IMAGE_ENCLAVE_CONFIG32, *PIMAGE_ENCLAVE_CONFIG32;
  7771.  
  7772. typedef struct _IMAGE_ENCLAVE_CONFIG64 {
  7773.     DWORD Size;
  7774.     DWORD MinimumRequiredConfigSize;
  7775.     DWORD PolicyFlags;
  7776.     DWORD NumberOfImports;
  7777.     DWORD ImportList;
  7778.     DWORD ImportEntrySize;
  7779.     BYTE FamilyID[16];
  7780.     BYTE ImageID[16];
  7781.     DWORD ImageVersion;
  7782.     DWORD SecurityVersion;
  7783.     ULONGLONG EnclaveSize;
  7784.     DWORD NumberOfThreads;
  7785.     DWORD EnclaveFlags;
  7786. } IMAGE_ENCLAVE_CONFIG64, *PIMAGE_ENCLAVE_CONFIG64;
  7787.  
  7788.  
  7789.  
  7790.  
  7791.  
  7792. typedef IMAGE_ENCLAVE_CONFIG32 IMAGE_ENCLAVE_CONFIG;
  7793. typedef PIMAGE_ENCLAVE_CONFIG32 PIMAGE_ENCLAVE_CONFIG;
  7794. # 18486 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7795. typedef struct _IMAGE_ENCLAVE_IMPORT {
  7796.     DWORD MatchType;
  7797.     DWORD MinimumSecurityVersion;
  7798.     BYTE UniqueOrAuthorID[32];
  7799.     BYTE FamilyID[16];
  7800.     BYTE ImageID[16];
  7801.     DWORD ImportName;
  7802.     DWORD Reserved;
  7803. } IMAGE_ENCLAVE_IMPORT, *PIMAGE_ENCLAVE_IMPORT;
  7804. # 18506 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7805. typedef struct _IMAGE_DEBUG_DIRECTORY {
  7806.     DWORD Characteristics;
  7807.     DWORD TimeDateStamp;
  7808.     WORD MajorVersion;
  7809.     WORD MinorVersion;
  7810.     DWORD Type;
  7811.     DWORD SizeOfData;
  7812.     DWORD AddressOfRawData;
  7813.     DWORD PointerToRawData;
  7814. } IMAGE_DEBUG_DIRECTORY, *PIMAGE_DEBUG_DIRECTORY;
  7815. # 18536 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7816. typedef struct _IMAGE_COFF_SYMBOLS_HEADER {
  7817.     DWORD NumberOfSymbols;
  7818.     DWORD LvaToFirstSymbol;
  7819.     DWORD NumberOfLinenumbers;
  7820.     DWORD LvaToFirstLinenumber;
  7821.     DWORD RvaToFirstByteOfCode;
  7822.     DWORD RvaToLastByteOfCode;
  7823.     DWORD RvaToFirstByteOfData;
  7824.     DWORD RvaToLastByteOfData;
  7825. } IMAGE_COFF_SYMBOLS_HEADER, *PIMAGE_COFF_SYMBOLS_HEADER;
  7826.  
  7827.  
  7828.  
  7829.  
  7830.  
  7831.  
  7832. typedef struct _FPO_DATA {
  7833.     DWORD ulOffStart;
  7834.     DWORD cbProcSize;
  7835.     DWORD cdwLocals;
  7836.     WORD cdwParams;
  7837.     WORD cbProlog : 8;
  7838.     WORD cbRegs : 3;
  7839.     WORD fHasSEH : 1;
  7840.     WORD fUseBP : 1;
  7841.     WORD reserved : 1;
  7842.     WORD cbFrame : 2;
  7843. } FPO_DATA, *PFPO_DATA;
  7844.  
  7845.  
  7846.  
  7847.  
  7848.  
  7849. typedef struct _IMAGE_DEBUG_MISC {
  7850.     DWORD DataType;
  7851.     DWORD Length;
  7852.  
  7853.     BOOLEAN Unicode;
  7854.     BYTE Reserved[ 3 ];
  7855.     BYTE Data[ 1 ];
  7856. } IMAGE_DEBUG_MISC, *PIMAGE_DEBUG_MISC;
  7857. # 18585 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7858. typedef struct _IMAGE_FUNCTION_ENTRY {
  7859.     DWORD StartingAddress;
  7860.     DWORD EndingAddress;
  7861.     DWORD EndOfPrologue;
  7862. } IMAGE_FUNCTION_ENTRY, *PIMAGE_FUNCTION_ENTRY;
  7863.  
  7864. typedef struct _IMAGE_FUNCTION_ENTRY64 {
  7865.     ULONGLONG StartingAddress;
  7866.     ULONGLONG EndingAddress;
  7867.     union {
  7868.         ULONGLONG EndOfPrologue;
  7869.         ULONGLONG UnwindInfoAddress;
  7870.     } ;
  7871. } IMAGE_FUNCTION_ENTRY64, *PIMAGE_FUNCTION_ENTRY64;
  7872. # 18620 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7873. typedef struct _IMAGE_SEPARATE_DEBUG_HEADER {
  7874.     WORD Signature;
  7875.     WORD Flags;
  7876.     WORD Machine;
  7877.     WORD Characteristics;
  7878.     DWORD TimeDateStamp;
  7879.     DWORD CheckSum;
  7880.     DWORD ImageBase;
  7881.     DWORD SizeOfImage;
  7882.     DWORD NumberOfSections;
  7883.     DWORD ExportedNamesSize;
  7884.     DWORD DebugDirectorySize;
  7885.     DWORD SectionAlignment;
  7886.     DWORD Reserved[2];
  7887. } IMAGE_SEPARATE_DEBUG_HEADER, *PIMAGE_SEPARATE_DEBUG_HEADER;
  7888.  
  7889.  
  7890.  
  7891. typedef struct _NON_PAGED_DEBUG_INFO {
  7892.     WORD Signature;
  7893.     WORD Flags;
  7894.     DWORD Size;
  7895.     WORD Machine;
  7896.     WORD Characteristics;
  7897.     DWORD TimeDateStamp;
  7898.     DWORD CheckSum;
  7899.     DWORD SizeOfImage;
  7900.     ULONGLONG ImageBase;
  7901.  
  7902.  
  7903. } NON_PAGED_DEBUG_INFO, *PNON_PAGED_DEBUG_INFO;
  7904. # 18674 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7905. typedef struct _ImageArchitectureHeader {
  7906.     unsigned int AmaskValue: 1;
  7907.  
  7908.     int :7;
  7909.     unsigned int AmaskShift: 8;
  7910.     int :16;
  7911.     DWORD FirstEntryRVA;
  7912. } IMAGE_ARCHITECTURE_HEADER, *PIMAGE_ARCHITECTURE_HEADER;
  7913.  
  7914. typedef struct _ImageArchitectureEntry {
  7915.     DWORD FixupInstRVA;
  7916.     DWORD NewInst;
  7917. } IMAGE_ARCHITECTURE_ENTRY, *PIMAGE_ARCHITECTURE_ENTRY;
  7918.  
  7919.  
  7920. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  7921. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  7922. #pragma warning(disable: 4103)
  7923.  
  7924. #pragma pack(pop)
  7925. # 18688 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  7926. # 18697 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  7927. typedef struct IMPORT_OBJECT_HEADER {
  7928.     WORD Sig1;
  7929.     WORD Sig2;
  7930.     WORD Version;
  7931.     WORD Machine;
  7932.     DWORD TimeDateStamp;
  7933.     DWORD SizeOfData;
  7934.  
  7935.     union {
  7936.         WORD Ordinal;
  7937.         WORD Hint;
  7938.     } ;
  7939.  
  7940.     WORD Type : 2;
  7941.     WORD NameType : 3;
  7942.     WORD Reserved : 11;
  7943. } IMPORT_OBJECT_HEADER;
  7944.  
  7945. typedef enum IMPORT_OBJECT_TYPE
  7946. {
  7947.     IMPORT_OBJECT_CODE = 0,
  7948.     IMPORT_OBJECT_DATA = 1,
  7949.     IMPORT_OBJECT_CONST = 2,
  7950. } IMPORT_OBJECT_TYPE;
  7951.  
  7952. typedef enum IMPORT_OBJECT_NAME_TYPE
  7953. {
  7954.     IMPORT_OBJECT_ORDINAL = 0,
  7955.     IMPORT_OBJECT_NAME = 1,
  7956.     IMPORT_OBJECT_NAME_NO_PREFIX = 2,
  7957.     IMPORT_OBJECT_NAME_UNDECORATE = 3,
  7958.  
  7959.     IMPORT_OBJECT_NAME_EXPORTAS = 4,
  7960. } IMPORT_OBJECT_NAME_TYPE;
  7961.  
  7962.  
  7963.  
  7964.  
  7965.  
  7966. typedef enum ReplacesCorHdrNumericDefines
  7967. {
  7968.  
  7969.     COMIMAGE_FLAGS_ILONLY =0x00000001,
  7970.     COMIMAGE_FLAGS_32BITREQUIRED =0x00000002,
  7971.     COMIMAGE_FLAGS_IL_LIBRARY =0x00000004,
  7972.     COMIMAGE_FLAGS_STRONGNAMESIGNED =0x00000008,
  7973.     COMIMAGE_FLAGS_NATIVE_ENTRYPOINT =0x00000010,
  7974.     COMIMAGE_FLAGS_TRACKDEBUGDATA =0x00010000,
  7975.     COMIMAGE_FLAGS_32BITPREFERRED =0x00020000,
  7976.  
  7977.  
  7978.     COR_VERSION_MAJOR_V2 =2,
  7979.     COR_VERSION_MAJOR =COR_VERSION_MAJOR_V2,
  7980.     COR_VERSION_MINOR =5,
  7981.     COR_DELETED_NAME_LENGTH =8,
  7982.     COR_VTABLEGAP_NAME_LENGTH =8,
  7983.  
  7984.  
  7985.     NATIVE_TYPE_MAX_CB =1,
  7986.     COR_ILMETHOD_SECT_SMALL_MAX_DATASIZE=0xFF,
  7987.  
  7988.  
  7989.     IMAGE_COR_MIH_METHODRVA =0x01,
  7990.     IMAGE_COR_MIH_EHRVA =0x02,
  7991.     IMAGE_COR_MIH_BASICBLOCK =0x08,
  7992.  
  7993.  
  7994.     COR_VTABLE_32BIT =0x01,
  7995.     COR_VTABLE_64BIT =0x02,
  7996.     COR_VTABLE_FROM_UNMANAGED =0x04,
  7997.     COR_VTABLE_FROM_UNMANAGED_RETAIN_APPDOMAIN =0x08,
  7998.     COR_VTABLE_CALL_MOST_DERIVED =0x10,
  7999.  
  8000.  
  8001.     IMAGE_COR_EATJ_THUNK_SIZE =32,
  8002.  
  8003.  
  8004.  
  8005.     MAX_CLASS_NAME =1024,
  8006.     MAX_PACKAGE_NAME =1024,
  8007. } ReplacesCorHdrNumericDefines;
  8008.  
  8009.  
  8010. typedef struct IMAGE_COR20_HEADER
  8011. {
  8012.  
  8013.     DWORD cb;
  8014.     WORD MajorRuntimeVersion;
  8015.     WORD MinorRuntimeVersion;
  8016.  
  8017.  
  8018.     IMAGE_DATA_DIRECTORY MetaData;
  8019.     DWORD Flags;
  8020.  
  8021.  
  8022.  
  8023.     union {
  8024.         DWORD EntryPointToken;
  8025.         DWORD EntryPointRVA;
  8026.     } ;
  8027.  
  8028.  
  8029.     IMAGE_DATA_DIRECTORY Resources;
  8030.     IMAGE_DATA_DIRECTORY StrongNameSignature;
  8031.  
  8032.  
  8033.     IMAGE_DATA_DIRECTORY CodeManagerTable;
  8034.     IMAGE_DATA_DIRECTORY VTableFixups;
  8035.     IMAGE_DATA_DIRECTORY ExportAddressTableJumps;
  8036.  
  8037.  
  8038.     IMAGE_DATA_DIRECTORY ManagedNativeHeader;
  8039.  
  8040. } IMAGE_COR20_HEADER, *PIMAGE_COR20_HEADER;
  8041.  
  8042.  
  8043.  
  8044.  
  8045.  
  8046.  
  8047.  
  8048.  
  8049. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\apiset.h" 1 3
  8050. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\apiset.h" 3
  8051. #pragma option push -b -a8 -pc -A- -w-pun
  8052. # 131 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\apiset.h" 3
  8053. #pragma option pop
  8054. # 18818 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  8055.  
  8056.  
  8057.  
  8058.  
  8059.  
  8060.  
  8061.  
  8062.  
  8063. #pragma region Application or OneCore Family
  8064.  
  8065.  
  8066.  
  8067.  
  8068. __declspec(dllimport)
  8069.  
  8070. WORD
  8071. __stdcall
  8072. RtlCaptureStackBackTrace(
  8073.          DWORD FramesToSkip,
  8074.          DWORD FramesToCapture,
  8075.                                             PVOID* BackTrace,
  8076.               PDWORD BackTraceHash
  8077.     );
  8078.  
  8079.  
  8080.  
  8081.  
  8082.  
  8083. #pragma endregion
  8084.  
  8085. #pragma region Desktop Family or OneCore Family
  8086.  
  8087.  
  8088.  
  8089.  
  8090. __declspec(dllimport)
  8091. void
  8092. __stdcall
  8093. RtlCaptureContext(
  8094.           PCONTEXT ContextRecord
  8095.     );
  8096.  
  8097.  
  8098.  
  8099.  
  8100.  
  8101. #pragma endregion
  8102.  
  8103.  
  8104.  
  8105. #pragma region Application or OneCore Family
  8106.  
  8107.  
  8108. __declspec(dllimport)
  8109. void
  8110. __stdcall
  8111. RtlUnwind(
  8112.              PVOID TargetFrame,
  8113.              PVOID TargetIp,
  8114.              PEXCEPTION_RECORD ExceptionRecord,
  8115.          PVOID ReturnValue
  8116.     );
  8117.  
  8118.  
  8119.  
  8120. #pragma endregion
  8121. # 19362 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8122. #pragma region Application or OneCore Family
  8123.  
  8124.  
  8125. __declspec(dllimport)
  8126. PVOID
  8127. __stdcall
  8128. RtlPcToFileHeader(
  8129.          PVOID PcValue,
  8130.           PVOID* BaseOfImage
  8131.     );
  8132.  
  8133.  
  8134.  
  8135. #pragma endregion
  8136.  
  8137.  
  8138. #pragma region Desktop Family or OneCore Family
  8139.  
  8140.  
  8141.  
  8142.  
  8143.  
  8144. __declspec(dllimport)
  8145. SIZE_T
  8146. __stdcall
  8147. RtlCompareMemory(
  8148.          const void* Source1,
  8149.          const void* Source2,
  8150.          SIZE_T Length
  8151.     );
  8152.  
  8153.  
  8154.  
  8155.  
  8156.  
  8157. #pragma endregion
  8158. # 19407 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8159. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\string.h" 1 3
  8160. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\string.h" 3
  8161. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 1 3
  8162. # 454 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 3
  8163. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mem.h" 1 3
  8164. # 454 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 2 3
  8165. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\string.h" 2 3
  8166. # 19407 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  8167. # 19436 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8168. typedef struct _SINGLE_LIST_ENTRY SLIST_ENTRY, *PSLIST_ENTRY;
  8169. # 19473 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8170. typedef union _SLIST_HEADER {
  8171.     ULONGLONG Alignment;
  8172.     struct {
  8173.         SLIST_ENTRY Next;
  8174.         WORD Depth;
  8175.         WORD CpuId;
  8176.     } ;
  8177. } SLIST_HEADER, *PSLIST_HEADER;
  8178. # 19498 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8179. #pragma region Desktop Family or OneCore Family
  8180.  
  8181.  
  8182. __declspec(dllimport)
  8183. void
  8184. __stdcall
  8185. RtlInitializeSListHead (
  8186.           PSLIST_HEADER ListHead
  8187.     );
  8188.  
  8189.  
  8190. __declspec(dllimport)
  8191. PSLIST_ENTRY
  8192. __stdcall
  8193. RtlFirstEntrySList (
  8194.          const SLIST_HEADER *ListHead
  8195.     );
  8196.  
  8197. __declspec(dllimport)
  8198. PSLIST_ENTRY
  8199. __stdcall
  8200. RtlInterlockedPopEntrySList (
  8201.             PSLIST_HEADER ListHead
  8202.     );
  8203.  
  8204. __declspec(dllimport)
  8205. PSLIST_ENTRY
  8206. __stdcall
  8207. RtlInterlockedPushEntrySList (
  8208.             PSLIST_HEADER ListHead,
  8209.                              PSLIST_ENTRY ListEntry
  8210.     );
  8211.  
  8212. __declspec(dllimport)
  8213. PSLIST_ENTRY
  8214. __stdcall
  8215. RtlInterlockedPushListSListEx (
  8216.             PSLIST_HEADER ListHead,
  8217.                              PSLIST_ENTRY List,
  8218.             PSLIST_ENTRY ListEnd,
  8219.          DWORD Count
  8220.     );
  8221.  
  8222. __declspec(dllimport)
  8223. PSLIST_ENTRY
  8224. __stdcall
  8225. RtlInterlockedFlushSList (
  8226.             PSLIST_HEADER ListHead
  8227.     );
  8228.  
  8229. __declspec(dllimport)
  8230. WORD
  8231. __stdcall
  8232. RtlQueryDepthSList (
  8233.          PSLIST_HEADER ListHead
  8234.     );
  8235.  
  8236.  
  8237. #pragma endregion
  8238. # 19583 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8239. typedef union _RTL_RUN_ONCE {
  8240.     PVOID Ptr;
  8241. } RTL_RUN_ONCE, *PRTL_RUN_ONCE;
  8242.  
  8243.  
  8244.  
  8245. typedef struct _RTL_BARRIER {
  8246.             DWORD Reserved1;
  8247.             DWORD Reserved2;
  8248.             ULONG_PTR Reserved3[2];
  8249.             DWORD Reserved4;
  8250.             DWORD Reserved5;
  8251. } RTL_BARRIER, *PRTL_BARRIER;
  8252. # 19696 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8253. #pragma region Desktop Family
  8254.  
  8255.  
  8256. __inline
  8257. DWORD
  8258. HEAP_MAKE_TAG_FLAGS (
  8259.          DWORD TagBase,
  8260.          DWORD Tag
  8261.     )
  8262.  
  8263. {
  8264.     return ((DWORD)((TagBase) + ((Tag) << 18)));
  8265. }
  8266.  
  8267.  
  8268. #pragma endregion
  8269. # 19778 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8270. __inline
  8271. PVOID
  8272. RtlSecureZeroMemory(
  8273.                                 PVOID ptr,
  8274.          SIZE_T cnt
  8275.     )
  8276. {
  8277.     volatile char *vptr = (volatile char *)ptr;
  8278.  
  8279.  
  8280.  
  8281.  
  8282.  
  8283.  
  8284.  
  8285.     while (cnt) {
  8286.  
  8287.  
  8288.  
  8289.  
  8290.  
  8291.  
  8292.  
  8293.         *vptr = 0;
  8294.  
  8295.  
  8296.  
  8297.         vptr++;
  8298.         cnt--;
  8299.     }
  8300.  
  8301.  
  8302.  
  8303.     return ptr;
  8304. }
  8305. # 19838 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8306. typedef struct _MESSAGE_RESOURCE_ENTRY {
  8307.     WORD Length;
  8308.     WORD Flags;
  8309.     BYTE Text[ 1 ];
  8310. } MESSAGE_RESOURCE_ENTRY, *PMESSAGE_RESOURCE_ENTRY;
  8311.  
  8312.  
  8313.  
  8314. typedef struct _MESSAGE_RESOURCE_BLOCK {
  8315.     DWORD LowId;
  8316.     DWORD HighId;
  8317.     DWORD OffsetToEntries;
  8318. } MESSAGE_RESOURCE_BLOCK, *PMESSAGE_RESOURCE_BLOCK;
  8319.  
  8320. typedef struct _MESSAGE_RESOURCE_DATA {
  8321.     DWORD NumberOfBlocks;
  8322.     MESSAGE_RESOURCE_BLOCK Blocks[ 1 ];
  8323. } MESSAGE_RESOURCE_DATA, *PMESSAGE_RESOURCE_DATA;
  8324.  
  8325. typedef struct _OSVERSIONINFOA {
  8326.     DWORD dwOSVersionInfoSize;
  8327.     DWORD dwMajorVersion;
  8328.     DWORD dwMinorVersion;
  8329.     DWORD dwBuildNumber;
  8330.     DWORD dwPlatformId;
  8331.     CHAR szCSDVersion[ 128 ];
  8332. } OSVERSIONINFOA, *POSVERSIONINFOA, *LPOSVERSIONINFOA;
  8333.  
  8334. typedef struct _OSVERSIONINFOW {
  8335.     DWORD dwOSVersionInfoSize;
  8336.     DWORD dwMajorVersion;
  8337.     DWORD dwMinorVersion;
  8338.     DWORD dwBuildNumber;
  8339.     DWORD dwPlatformId;
  8340.     WCHAR szCSDVersion[ 128 ];
  8341. } OSVERSIONINFOW, *POSVERSIONINFOW, *LPOSVERSIONINFOW, RTL_OSVERSIONINFOW, *PRTL_OSVERSIONINFOW;
  8342.  
  8343.  
  8344.  
  8345.  
  8346.  
  8347. typedef OSVERSIONINFOA OSVERSIONINFO;
  8348. typedef POSVERSIONINFOA POSVERSIONINFO;
  8349. typedef LPOSVERSIONINFOA LPOSVERSIONINFO;
  8350.  
  8351.  
  8352. typedef struct _OSVERSIONINFOEXA {
  8353.     DWORD dwOSVersionInfoSize;
  8354.     DWORD dwMajorVersion;
  8355.     DWORD dwMinorVersion;
  8356.     DWORD dwBuildNumber;
  8357.     DWORD dwPlatformId;
  8358.     CHAR szCSDVersion[ 128 ];
  8359.     WORD wServicePackMajor;
  8360.     WORD wServicePackMinor;
  8361.     WORD wSuiteMask;
  8362.     BYTE wProductType;
  8363.     BYTE wReserved;
  8364. } OSVERSIONINFOEXA, *POSVERSIONINFOEXA, *LPOSVERSIONINFOEXA;
  8365. typedef struct _OSVERSIONINFOEXW {
  8366.     DWORD dwOSVersionInfoSize;
  8367.     DWORD dwMajorVersion;
  8368.     DWORD dwMinorVersion;
  8369.     DWORD dwBuildNumber;
  8370.     DWORD dwPlatformId;
  8371.     WCHAR szCSDVersion[ 128 ];
  8372.     WORD wServicePackMajor;
  8373.     WORD wServicePackMinor;
  8374.     WORD wSuiteMask;
  8375.     BYTE wProductType;
  8376.     BYTE wReserved;
  8377. } OSVERSIONINFOEXW, *POSVERSIONINFOEXW, *LPOSVERSIONINFOEXW, RTL_OSVERSIONINFOEXW, *PRTL_OSVERSIONINFOEXW;
  8378.  
  8379.  
  8380.  
  8381.  
  8382.  
  8383. typedef OSVERSIONINFOEXA OSVERSIONINFOEX;
  8384. typedef POSVERSIONINFOEXA POSVERSIONINFOEX;
  8385. typedef LPOSVERSIONINFOEXA LPOSVERSIONINFOEX;
  8386. # 19966 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8387. #pragma region Desktop Family or OneCore Family
  8388. # 19985 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8389. __declspec(dllimport)
  8390. ULONGLONG
  8391. __stdcall
  8392. VerSetConditionMask(
  8393.          ULONGLONG ConditionMask,
  8394.          DWORD TypeMask,
  8395.          BYTE Condition
  8396.     );
  8397.  
  8398.  
  8399.  
  8400.  
  8401.  
  8402.  
  8403. #pragma endregion
  8404.  
  8405.  
  8406.  
  8407. #pragma region Desktop Family or OneCore Family
  8408.  
  8409.  
  8410.  
  8411.  
  8412.  
  8413.  
  8414. __declspec(dllimport)
  8415. BOOLEAN
  8416. __stdcall
  8417. RtlGetProductInfo(
  8418.           DWORD OSMajorVersion,
  8419.           DWORD OSMinorVersion,
  8420.           DWORD SpMajorVersion,
  8421.           DWORD SpMinorVersion,
  8422.           PDWORD ReturnedProductType
  8423.     );
  8424.  
  8425.  
  8426.  
  8427.  
  8428.  
  8429.  
  8430. #pragma endregion
  8431.  
  8432.  
  8433.  
  8434. typedef enum _RTL_UMS_THREAD_INFO_CLASS {
  8435.     UmsThreadInvalidInfoClass = 0,
  8436.     UmsThreadUserContext,
  8437.     UmsThreadPriority,
  8438.     UmsThreadAffinity,
  8439.     UmsThreadTeb,
  8440.     UmsThreadIsSuspended,
  8441.     UmsThreadIsTerminated,
  8442.     UmsThreadMaxInfoClass
  8443. } RTL_UMS_THREAD_INFO_CLASS, *PRTL_UMS_THREAD_INFO_CLASS;
  8444.  
  8445. typedef enum _RTL_UMS_SCHEDULER_REASON {
  8446.     UmsSchedulerStartup = 0,
  8447.     UmsSchedulerThreadBlocked,
  8448.     UmsSchedulerThreadYield,
  8449. } RTL_UMS_SCHEDULER_REASON, *PRTL_UMS_SCHEDULER_REASON;
  8450.  
  8451. typedef
  8452.  
  8453. void
  8454. __stdcall
  8455. RTL_UMS_SCHEDULER_ENTRY_POINT(
  8456.          RTL_UMS_SCHEDULER_REASON Reason,
  8457.          ULONG_PTR ActivationPayload,
  8458.          PVOID SchedulerParam
  8459.     );
  8460.  
  8461. typedef RTL_UMS_SCHEDULER_ENTRY_POINT *PRTL_UMS_SCHEDULER_ENTRY_POINT;
  8462. # 20111 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8463. #pragma region Desktop Family or OneCore Family
  8464.  
  8465.  
  8466.  
  8467.  
  8468.  
  8469.  
  8470.  
  8471.  
  8472. __declspec(dllimport)
  8473. DWORD
  8474. __stdcall
  8475. RtlCrc32(
  8476.                            const void *Buffer,
  8477.          size_t Size,
  8478.          DWORD InitialCrc
  8479.     );
  8480.  
  8481. __declspec(dllimport)
  8482. ULONGLONG
  8483. __stdcall
  8484. RtlCrc64(
  8485.                            const void *Buffer,
  8486.          size_t Size,
  8487.          ULONGLONG InitialCrc
  8488.     );
  8489.  
  8490.  
  8491.  
  8492.  
  8493. #pragma endregion
  8494. # 20158 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8495. typedef enum _OS_DEPLOYEMENT_STATE_VALUES {
  8496.     OS_DEPLOYMENT_STANDARD = 1,
  8497.     OS_DEPLOYMENT_COMPACT
  8498. } OS_DEPLOYEMENT_STATE_VALUES;
  8499.  
  8500. __declspec(dllimport)
  8501. OS_DEPLOYEMENT_STATE_VALUES
  8502. __stdcall
  8503. RtlOsDeploymentState(
  8504.          DWORD Flags
  8505.     );
  8506. # 20278 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8507. typedef struct CORRELATION_VECTOR {
  8508.     CHAR Version;
  8509.     CHAR Vector[129];
  8510. } CORRELATION_VECTOR;
  8511.  
  8512. typedef CORRELATION_VECTOR *PCORRELATION_VECTOR;
  8513.  
  8514.  
  8515.  
  8516. __declspec(dllimport)
  8517. DWORD
  8518. __stdcall
  8519. RtlInitializeCorrelationVector(
  8520.           PCORRELATION_VECTOR CorrelationVector,
  8521.           int Version,
  8522.               const GUID * Guid
  8523.     );
  8524.  
  8525.  
  8526. __declspec(dllimport)
  8527. DWORD
  8528. __stdcall
  8529. RtlIncrementCorrelationVector(
  8530.             PCORRELATION_VECTOR CorrelationVector
  8531.     );
  8532.  
  8533. __declspec(dllimport)
  8534. DWORD
  8535. __stdcall
  8536. RtlExtendCorrelationVector(
  8537.             PCORRELATION_VECTOR CorrelationVector
  8538.     );
  8539.  
  8540. __declspec(dllimport)
  8541. DWORD
  8542. __stdcall
  8543. RtlValidateCorrelationVector(
  8544.          PCORRELATION_VECTOR Vector
  8545.     );
  8546.  
  8547.  
  8548.  
  8549.  
  8550.  
  8551.  
  8552. typedef struct _CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG {
  8553.  
  8554.  
  8555.  
  8556.     DWORD Size;
  8557.  
  8558.  
  8559.  
  8560.  
  8561.     PCWSTR TriggerId;
  8562.  
  8563. } CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG, *PCUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG;
  8564.  
  8565.  
  8566. __inline
  8567. void
  8568. CUSTOM_SYSTEM_EVENT_TRIGGER_INIT(
  8569.              PCUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG Config,
  8570.              PCWSTR TriggerId
  8571.     )
  8572. {
  8573.     memset((Config),0,(sizeof(CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG)));
  8574.  
  8575.     Config->Size = sizeof(CUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG);
  8576.     Config->TriggerId = TriggerId;
  8577. }
  8578.  
  8579.  
  8580.  
  8581.  
  8582. DWORD
  8583. __stdcall
  8584. RtlRaiseCustomSystemEventTrigger(
  8585.          PCUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG TriggerConfig
  8586.     );
  8587. # 20370 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8588. typedef enum _IMAGE_POLICY_ENTRY_TYPE {
  8589.     ImagePolicyEntryTypeNone = 0,
  8590.     ImagePolicyEntryTypeBool,
  8591.     ImagePolicyEntryTypeInt8,
  8592.     ImagePolicyEntryTypeUInt8,
  8593.     ImagePolicyEntryTypeInt16,
  8594.     ImagePolicyEntryTypeUInt16,
  8595.     ImagePolicyEntryTypeInt32,
  8596.     ImagePolicyEntryTypeUInt32,
  8597.     ImagePolicyEntryTypeInt64,
  8598.     ImagePolicyEntryTypeUInt64,
  8599.     ImagePolicyEntryTypeAnsiString,
  8600.     ImagePolicyEntryTypeUnicodeString,
  8601.     ImagePolicyEntryTypeOverride,
  8602.     ImagePolicyEntryTypeMaximum
  8603. } IMAGE_POLICY_ENTRY_TYPE;
  8604.  
  8605. typedef enum _IMAGE_POLICY_ID {
  8606.     ImagePolicyIdNone = 0,
  8607.     ImagePolicyIdEtw,
  8608.     ImagePolicyIdDebug,
  8609.     ImagePolicyIdCrashDump,
  8610.     ImagePolicyIdCrashDumpKey,
  8611.     ImagePolicyIdCrashDumpKeyGuid,
  8612.     ImagePolicyIdParentSd,
  8613.     ImagePolicyIdParentSdRev,
  8614.     ImagePolicyIdSvn,
  8615.     ImagePolicyIdDeviceId,
  8616.     ImagePolicyIdCapability,
  8617.     ImagePolicyIdScenarioId,
  8618.     ImagePolicyIdMaximum
  8619. } IMAGE_POLICY_ID;
  8620.  
  8621. typedef struct _IMAGE_POLICY_ENTRY {
  8622.     IMAGE_POLICY_ENTRY_TYPE Type;
  8623.     IMAGE_POLICY_ID PolicyId;
  8624.     union {
  8625.         const void* None;
  8626.         BOOLEAN BoolValue;
  8627.         INT8 Int8Value;
  8628.         UINT8 UInt8Value;
  8629.         INT16 Int16Value;
  8630.         UINT16 UInt16Value;
  8631.         INT32 Int32Value;
  8632.         UINT32 UInt32Value;
  8633.         INT64 Int64Value;
  8634.         UINT64 UInt64Value;
  8635.         PCSTR AnsiStringValue;
  8636.         PCWSTR UnicodeStringValue;
  8637.     } u;
  8638. } IMAGE_POLICY_ENTRY;
  8639. typedef const IMAGE_POLICY_ENTRY* PCIMAGE_POLICY_ENTRY;
  8640.  
  8641. #pragma warning(push)
  8642. #pragma warning(disable: 4200)
  8643. typedef struct _IMAGE_POLICY_METADATA {
  8644.     BYTE Version;
  8645.     BYTE Reserved0[7];
  8646.     ULONGLONG ApplicationId;
  8647.     IMAGE_POLICY_ENTRY Policies[];
  8648. } IMAGE_POLICY_METADATA;
  8649. typedef const IMAGE_POLICY_METADATA* PCIMAGE_POLICY_METADATA;
  8650. #pragma warning(pop)
  8651. # 20486 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8652. typedef struct _RTL_CRITICAL_SECTION_DEBUG {
  8653.     WORD Type;
  8654.     WORD CreatorBackTraceIndex;
  8655.     struct _RTL_CRITICAL_SECTION *CriticalSection;
  8656.     LIST_ENTRY ProcessLocksList;
  8657.     DWORD EntryCount;
  8658.     DWORD ContentionCount;
  8659.     DWORD Flags;
  8660.     WORD CreatorBackTraceIndexHigh;
  8661.     WORD SpareWORD ;
  8662. } RTL_CRITICAL_SECTION_DEBUG, *PRTL_CRITICAL_SECTION_DEBUG, RTL_RESOURCE_DEBUG, *PRTL_RESOURCE_DEBUG;
  8663. # 20514 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8664. #pragma pack(push, 8)
  8665.  
  8666. typedef struct _RTL_CRITICAL_SECTION {
  8667.     PRTL_CRITICAL_SECTION_DEBUG DebugInfo;
  8668.  
  8669.  
  8670.  
  8671.  
  8672.  
  8673.  
  8674.     LONG LockCount;
  8675.     LONG RecursionCount;
  8676.     HANDLE OwningThread;
  8677.     HANDLE LockSemaphore;
  8678.     ULONG_PTR SpinCount;
  8679. } RTL_CRITICAL_SECTION, *PRTL_CRITICAL_SECTION;
  8680.  
  8681. #pragma pack(pop)
  8682.  
  8683. typedef struct _RTL_SRWLOCK {
  8684.         PVOID Ptr;
  8685. } RTL_SRWLOCK, *PRTL_SRWLOCK;
  8686.  
  8687. typedef struct _RTL_CONDITION_VARIABLE {
  8688.         PVOID Ptr;
  8689. } RTL_CONDITION_VARIABLE, *PRTL_CONDITION_VARIABLE;
  8690.  
  8691.  
  8692. typedef
  8693. void
  8694. (__stdcall *PAPCFUNC)(
  8695.          ULONG_PTR Parameter
  8696.     );
  8697. typedef LONG (__stdcall *PVECTORED_EXCEPTION_HANDLER)(
  8698.     struct _EXCEPTION_POINTERS *ExceptionInfo
  8699.     );
  8700.  
  8701. typedef enum _HEAP_INFORMATION_CLASS {
  8702.  
  8703.     HeapCompatibilityInformation = 0,
  8704.     HeapEnableTerminationOnCorruption = 1
  8705.  
  8706.  
  8707.  
  8708.  
  8709.     ,
  8710.  
  8711.     HeapOptimizeResources = 3
  8712.  
  8713.  
  8714.  
  8715.  
  8716. } HEAP_INFORMATION_CLASS;
  8717.  
  8718.  
  8719.  
  8720.  
  8721.  
  8722.  
  8723. typedef struct _HEAP_OPTIMIZE_RESOURCES_INFORMATION {
  8724.     DWORD Version;
  8725.     DWORD Flags;
  8726. } HEAP_OPTIMIZE_RESOURCES_INFORMATION, *PHEAP_OPTIMIZE_RESOURCES_INFORMATION;
  8727. # 20592 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8728. typedef void (__stdcall * WAITORTIMERCALLBACKFUNC) (PVOID, BOOLEAN );
  8729. typedef void (__stdcall * WORKERCALLBACKFUNC) (PVOID );
  8730. typedef void (__stdcall * APC_CALLBACK_FUNCTION) (DWORD , PVOID, PVOID);
  8731. typedef WAITORTIMERCALLBACKFUNC WAITORTIMERCALLBACK;
  8732. typedef
  8733. void
  8734. (__stdcall *PFLS_CALLBACK_FUNCTION) (
  8735.        PVOID lpFlsData
  8736.     );
  8737.  
  8738. typedef
  8739. BOOLEAN
  8740. (__stdcall *PSECURE_MEMORY_CACHE_CALLBACK) (
  8741.                             PVOID Addr,
  8742.          SIZE_T Range
  8743.     );
  8744.  
  8745.  
  8746.  
  8747.  
  8748. typedef enum _ACTIVATION_CONTEXT_INFO_CLASS {
  8749.     ActivationContextBasicInformation = 1,
  8750.     ActivationContextDetailedInformation = 2,
  8751.     AssemblyDetailedInformationInActivationContext = 3,
  8752.     FileInformationInAssemblyOfAssemblyInActivationContext = 4,
  8753.     RunlevelInformationInActivationContext = 5,
  8754.     CompatibilityInformationInActivationContext = 6,
  8755.     ActivationContextManifestResourceName = 7,
  8756.     MaxActivationContextInfoClass,
  8757.  
  8758.  
  8759.  
  8760.  
  8761.     AssemblyDetailedInformationInActivationContxt = 3,
  8762.     FileInformationInAssemblyOfAssemblyInActivationContxt = 4
  8763. } ACTIVATION_CONTEXT_INFO_CLASS;
  8764.  
  8765.  
  8766.  
  8767.  
  8768. typedef struct _ACTIVATION_CONTEXT_QUERY_INDEX {
  8769.     DWORD ulAssemblyIndex;
  8770.     DWORD ulFileIndexInAssembly;
  8771. } ACTIVATION_CONTEXT_QUERY_INDEX, * PACTIVATION_CONTEXT_QUERY_INDEX;
  8772.  
  8773. typedef const struct _ACTIVATION_CONTEXT_QUERY_INDEX * PCACTIVATION_CONTEXT_QUERY_INDEX;
  8774.  
  8775.  
  8776.  
  8777.  
  8778.  
  8779.  
  8780.  
  8781. typedef struct _ASSEMBLY_FILE_DETAILED_INFORMATION {
  8782.     DWORD ulFlags;
  8783.     DWORD ulFilenameLength;
  8784.     DWORD ulPathLength;
  8785.  
  8786.     PCWSTR lpFileName;
  8787.     PCWSTR lpFilePath;
  8788. } ASSEMBLY_FILE_DETAILED_INFORMATION, *PASSEMBLY_FILE_DETAILED_INFORMATION;
  8789. typedef const ASSEMBLY_FILE_DETAILED_INFORMATION *PCASSEMBLY_FILE_DETAILED_INFORMATION;
  8790. # 20664 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8791. typedef struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION {
  8792.     DWORD ulFlags;
  8793.     DWORD ulEncodedAssemblyIdentityLength;
  8794.     DWORD ulManifestPathType;
  8795.     DWORD ulManifestPathLength;
  8796.     LARGE_INTEGER liManifestLastWriteTime;
  8797.     DWORD ulPolicyPathType;
  8798.     DWORD ulPolicyPathLength;
  8799.     LARGE_INTEGER liPolicyLastWriteTime;
  8800.     DWORD ulMetadataSatelliteRosterIndex;
  8801.  
  8802.     DWORD ulManifestVersionMajor;
  8803.     DWORD ulManifestVersionMinor;
  8804.     DWORD ulPolicyVersionMajor;
  8805.     DWORD ulPolicyVersionMinor;
  8806.     DWORD ulAssemblyDirectoryNameLength;
  8807.  
  8808.     PCWSTR lpAssemblyEncodedAssemblyIdentity;
  8809.     PCWSTR lpAssemblyManifestPath;
  8810.     PCWSTR lpAssemblyPolicyPath;
  8811.     PCWSTR lpAssemblyDirectoryName;
  8812.  
  8813.     DWORD ulFileCount;
  8814. } ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION, * PACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION;
  8815.  
  8816. typedef const struct _ACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION * PCACTIVATION_CONTEXT_ASSEMBLY_DETAILED_INFORMATION ;
  8817.  
  8818. typedef enum
  8819. {
  8820.     ACTCTX_RUN_LEVEL_UNSPECIFIED = 0,
  8821.     ACTCTX_RUN_LEVEL_AS_INVOKER,
  8822.     ACTCTX_RUN_LEVEL_HIGHEST_AVAILABLE,
  8823.     ACTCTX_RUN_LEVEL_REQUIRE_ADMIN,
  8824.     ACTCTX_RUN_LEVEL_NUMBERS
  8825. } ACTCTX_REQUESTED_RUN_LEVEL;
  8826.  
  8827. typedef struct _ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION {
  8828.     DWORD ulFlags;
  8829.     ACTCTX_REQUESTED_RUN_LEVEL RunLevel;
  8830.     DWORD UiAccess;
  8831. } ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION, * PACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION;
  8832.  
  8833. typedef const struct _ACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION * PCACTIVATION_CONTEXT_RUN_LEVEL_INFORMATION ;
  8834.  
  8835. typedef enum
  8836. {
  8837.     ACTCTX_COMPATIBILITY_ELEMENT_TYPE_UNKNOWN = 0,
  8838.     ACTCTX_COMPATIBILITY_ELEMENT_TYPE_OS,
  8839.     ACTCTX_COMPATIBILITY_ELEMENT_TYPE_MITIGATION
  8840. } ACTCTX_COMPATIBILITY_ELEMENT_TYPE;
  8841.  
  8842. typedef struct _COMPATIBILITY_CONTEXT_ELEMENT {
  8843.     GUID Id;
  8844.     ACTCTX_COMPATIBILITY_ELEMENT_TYPE Type;
  8845. } COMPATIBILITY_CONTEXT_ELEMENT, *PCOMPATIBILITY_CONTEXT_ELEMENT;
  8846.  
  8847. typedef const struct _COMPATIBILITY_CONTEXT_ELEMENT *PCCOMPATIBILITY_CONTEXT_ELEMENT;
  8848. # 20742 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8849. typedef struct _SUPPORTED_OS_INFO {
  8850.     WORD MajorVersion;
  8851.     WORD MinorVersion;
  8852. } SUPPORTED_OS_INFO, *PSUPPORTED_OS_INFO;
  8853.  
  8854. typedef struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION {
  8855.     DWORD dwFlags;
  8856.     DWORD ulFormatVersion;
  8857.     DWORD ulAssemblyCount;
  8858.     DWORD ulRootManifestPathType;
  8859.     DWORD ulRootManifestPathChars;
  8860.     DWORD ulRootConfigurationPathType;
  8861.     DWORD ulRootConfigurationPathChars;
  8862.     DWORD ulAppDirPathType;
  8863.     DWORD ulAppDirPathChars;
  8864.     PCWSTR lpRootManifestPath;
  8865.     PCWSTR lpRootConfigurationPath;
  8866.     PCWSTR lpAppDirPath;
  8867. } ACTIVATION_CONTEXT_DETAILED_INFORMATION, *PACTIVATION_CONTEXT_DETAILED_INFORMATION;
  8868.  
  8869. typedef const struct _ACTIVATION_CONTEXT_DETAILED_INFORMATION *PCACTIVATION_CONTEXT_DETAILED_INFORMATION;
  8870.  
  8871.  
  8872.  
  8873.  
  8874. typedef struct _HARDWARE_COUNTER_DATA {
  8875.     HARDWARE_COUNTER_TYPE Type;
  8876.     DWORD Reserved;
  8877.     DWORD64 Value;
  8878. } HARDWARE_COUNTER_DATA, *PHARDWARE_COUNTER_DATA;
  8879.  
  8880.  
  8881.  
  8882. typedef struct _PERFORMANCE_DATA {
  8883.     WORD Size;
  8884.     BYTE Version;
  8885.     BYTE HwCountersCount;
  8886.     DWORD ContextSwitchCount;
  8887.     DWORD64 WaitReasonBitMap;
  8888.     DWORD64 CycleTime;
  8889.     DWORD RetryCount;
  8890.     DWORD Reserved;
  8891.     HARDWARE_COUNTER_DATA HwCounters[16];
  8892. } PERFORMANCE_DATA, *PPERFORMANCE_DATA;
  8893.  
  8894.  
  8895.  
  8896.  
  8897. #pragma region Desktop Family
  8898. # 20858 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8899. void
  8900. __stdcall
  8901. RtlGetDeviceFamilyInfoEnum(
  8902.               ULONGLONG *pullUAPInfo,
  8903.               DWORD *pulDeviceFamily,
  8904.               DWORD *pulDeviceForm
  8905. );
  8906.  
  8907. DWORD
  8908. __stdcall
  8909. RtlConvertDeviceFamilyInfoToString(
  8910.             PDWORD pulDeviceFamilyBufferSize,
  8911.             PDWORD pulDeviceFormBufferSize,
  8912.                                                    PWSTR DeviceFamily,
  8913.                                                  PWSTR DeviceForm
  8914.  
  8915. );
  8916.  
  8917. DWORD
  8918. __stdcall
  8919. RtlSwitchedVVI(
  8920.          PRTL_OSVERSIONINFOEXW VersionInfo,
  8921.          DWORD TypeMask,
  8922.          ULONGLONG ConditionMask
  8923.     );
  8924.  
  8925.  
  8926.  
  8927.  
  8928.  
  8929. #pragma endregion
  8930. # 20933 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8931. typedef struct _EVENTLOGRECORD {
  8932.     DWORD Length;
  8933.     DWORD Reserved;
  8934.     DWORD RecordNumber;
  8935.     DWORD TimeGenerated;
  8936.     DWORD TimeWritten;
  8937.     DWORD EventID;
  8938.     WORD EventType;
  8939.     WORD NumStrings;
  8940.     WORD EventCategory;
  8941.     WORD ReservedFlags;
  8942.     DWORD ClosingRecordNumber;
  8943.     DWORD StringOffset;
  8944.     DWORD UserSidLength;
  8945.     DWORD UserSidOffset;
  8946.     DWORD DataLength;
  8947.     DWORD DataOffset;
  8948. # 20961 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8949. } EVENTLOGRECORD, *PEVENTLOGRECORD;
  8950.  
  8951.  
  8952.  
  8953.  
  8954.  
  8955.  
  8956.  
  8957.  
  8958. #pragma warning(disable: 4200)
  8959.  
  8960. struct _EVENTSFORLOGFILE;
  8961. typedef struct _EVENTSFORLOGFILE EVENTSFORLOGFILE, *PEVENTSFORLOGFILE;
  8962.  
  8963. struct _PACKEDEVENTINFO;
  8964. typedef struct _PACKEDEVENTINFO PACKEDEVENTINFO, *PPACKEDEVENTINFO;
  8965. # 21000 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8966. #pragma warning(default: 4200)
  8967. # 21237 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8968. typedef enum _CM_SERVICE_NODE_TYPE {
  8969.     DriverType = 0x00000001,
  8970.     FileSystemType = 0x00000002,
  8971.     Win32ServiceOwnProcess = 0x00000010,
  8972.     Win32ServiceShareProcess = 0x00000020,
  8973.     AdapterType = 0x00000004,
  8974.     RecognizerType = 0x00000008
  8975. } SERVICE_NODE_TYPE;
  8976.  
  8977. typedef enum _CM_SERVICE_LOAD_TYPE {
  8978.     BootLoad = 0x00000000,
  8979.     SystemLoad = 0x00000001,
  8980.     AutoLoad = 0x00000002,
  8981.     DemandLoad = 0x00000003,
  8982.     DisableLoad = 0x00000004
  8983. } SERVICE_LOAD_TYPE;
  8984.  
  8985. typedef enum _CM_ERROR_CONTROL_TYPE {
  8986.     IgnoreError = 0x00000000,
  8987.     NormalError = 0x00000001,
  8988.     SevereError = 0x00000002,
  8989.     CriticalError = 0x00000003
  8990. } SERVICE_ERROR_TYPE;
  8991. # 21325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8992. typedef struct _TAPE_ERASE {
  8993.     DWORD Type;
  8994.     BOOLEAN Immediate;
  8995. } TAPE_ERASE, *PTAPE_ERASE;
  8996. # 21341 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  8997. typedef struct _TAPE_PREPARE {
  8998.     DWORD Operation;
  8999.     BOOLEAN Immediate;
  9000. } TAPE_PREPARE, *PTAPE_PREPARE;
  9001. # 21355 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9002. typedef struct _TAPE_WRITE_MARKS {
  9003.     DWORD Type;
  9004.     DWORD Count;
  9005.     BOOLEAN Immediate;
  9006. } TAPE_WRITE_MARKS, *PTAPE_WRITE_MARKS;
  9007. # 21369 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9008. typedef struct _TAPE_GET_POSITION {
  9009.     DWORD Type;
  9010.     DWORD Partition;
  9011.     LARGE_INTEGER Offset;
  9012. } TAPE_GET_POSITION, *PTAPE_GET_POSITION;
  9013. # 21390 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9014. typedef struct _TAPE_SET_POSITION {
  9015.     DWORD Method;
  9016.     DWORD Partition;
  9017.     LARGE_INTEGER Offset;
  9018.     BOOLEAN Immediate;
  9019. } TAPE_SET_POSITION, *PTAPE_SET_POSITION;
  9020. # 21483 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9021. typedef struct _TAPE_GET_DRIVE_PARAMETERS {
  9022.     BOOLEAN ECC;
  9023.     BOOLEAN Compression;
  9024.     BOOLEAN DataPadding;
  9025.     BOOLEAN ReportSetmarks;
  9026.     DWORD DefaultBlockSize;
  9027.     DWORD MaximumBlockSize;
  9028.     DWORD MinimumBlockSize;
  9029.     DWORD MaximumPartitionCount;
  9030.     DWORD FeaturesLow;
  9031.     DWORD FeaturesHigh;
  9032.     DWORD EOTWarningZoneSize;
  9033. } TAPE_GET_DRIVE_PARAMETERS, *PTAPE_GET_DRIVE_PARAMETERS;
  9034.  
  9035.  
  9036.  
  9037.  
  9038.  
  9039. typedef struct _TAPE_SET_DRIVE_PARAMETERS {
  9040.     BOOLEAN ECC;
  9041.     BOOLEAN Compression;
  9042.     BOOLEAN DataPadding;
  9043.     BOOLEAN ReportSetmarks;
  9044.     DWORD EOTWarningZoneSize;
  9045. } TAPE_SET_DRIVE_PARAMETERS, *PTAPE_SET_DRIVE_PARAMETERS;
  9046.  
  9047.  
  9048.  
  9049.  
  9050.  
  9051. typedef struct _TAPE_GET_MEDIA_PARAMETERS {
  9052.     LARGE_INTEGER Capacity;
  9053.     LARGE_INTEGER Remaining;
  9054.     DWORD BlockSize;
  9055.     DWORD PartitionCount;
  9056.     BOOLEAN WriteProtected;
  9057. } TAPE_GET_MEDIA_PARAMETERS, *PTAPE_GET_MEDIA_PARAMETERS;
  9058.  
  9059.  
  9060.  
  9061.  
  9062.  
  9063. typedef struct _TAPE_SET_MEDIA_PARAMETERS {
  9064.     DWORD BlockSize;
  9065. } TAPE_SET_MEDIA_PARAMETERS, *PTAPE_SET_MEDIA_PARAMETERS;
  9066. # 21537 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9067. typedef struct _TAPE_CREATE_PARTITION {
  9068.     DWORD Method;
  9069.     DWORD Count;
  9070.     DWORD Size;
  9071. } TAPE_CREATE_PARTITION, *PTAPE_CREATE_PARTITION;
  9072. # 21553 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9073. typedef struct _TAPE_WMI_OPERATIONS {
  9074.    DWORD Method;
  9075.    DWORD DataBufferSize;
  9076.    PVOID DataBuffer;
  9077. } TAPE_WMI_OPERATIONS, *PTAPE_WMI_OPERATIONS;
  9078.  
  9079.  
  9080.  
  9081.  
  9082. typedef enum _TAPE_DRIVE_PROBLEM_TYPE {
  9083.    TapeDriveProblemNone, TapeDriveReadWriteWarning,
  9084.    TapeDriveReadWriteError, TapeDriveReadWarning,
  9085.    TapeDriveWriteWarning, TapeDriveReadError,
  9086.    TapeDriveWriteError, TapeDriveHardwareError,
  9087.    TapeDriveUnsupportedMedia, TapeDriveScsiConnectionError,
  9088.    TapeDriveTimetoClean, TapeDriveCleanDriveNow,
  9089.    TapeDriveMediaLifeExpired, TapeDriveSnappedTape
  9090. } TAPE_DRIVE_PROBLEM_TYPE;
  9091. # 21582 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9092. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ktmtypes.h" 1 3
  9093. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ktmtypes.h" 3
  9094. #pragma option push -b -a8 -pc -A- -w-pun
  9095. # 32 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ktmtypes.h" 3
  9096. typedef GUID UOW, *PUOW;
  9097. typedef GUID CRM_PROTOCOL_ID, *PCRM_PROTOCOL_ID;
  9098. # 83 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ktmtypes.h" 3
  9099. typedef ULONG NOTIFICATION_MASK;
  9100. # 138 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ktmtypes.h" 3
  9101. typedef struct _TRANSACTION_NOTIFICATION {
  9102.     PVOID TransactionKey;
  9103.     ULONG TransactionNotification;
  9104.     LARGE_INTEGER TmVirtualClock;
  9105.     ULONG ArgumentLength;
  9106. } TRANSACTION_NOTIFICATION, *PTRANSACTION_NOTIFICATION;
  9107.  
  9108. typedef struct _TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT {
  9109.     GUID EnlistmentId;
  9110.     UOW UOW;
  9111. } TRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT, *PTRANSACTION_NOTIFICATION_RECOVERY_ARGUMENT;
  9112.  
  9113.  
  9114.  
  9115. typedef struct _TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT {
  9116.     GUID TmIdentity;
  9117.     ULONG Flags;
  9118. } TRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT, *PTRANSACTION_NOTIFICATION_TM_ONLINE_ARGUMENT;
  9119.  
  9120. typedef ULONG SAVEPOINT_ID, *PSAVEPOINT_ID;
  9121.  
  9122. typedef struct _TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT {
  9123.     SAVEPOINT_ID SavepointId;
  9124. } TRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT, *PTRANSACTION_NOTIFICATION_SAVEPOINT_ARGUMENT;
  9125.  
  9126. typedef struct _TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT {
  9127.     ULONG PropagationCookie;
  9128.     GUID UOW;
  9129.     GUID TmIdentity;
  9130.     ULONG BufferLength;
  9131.  
  9132. } TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT, *PTRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT;
  9133.  
  9134. typedef struct _TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT {
  9135.     ULONG MarshalCookie;
  9136.     GUID UOW;
  9137. } TRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT, *PTRANSACTION_NOTIFICATION_MARSHAL_ARGUMENT;
  9138.  
  9139. typedef TRANSACTION_NOTIFICATION_PROPAGATE_ARGUMENT TRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT, *PTRANSACTION_NOTIFICATION_PROMOTE_ARGUMENT;
  9140.  
  9141.  
  9142.  
  9143.  
  9144.  
  9145.  
  9146.  
  9147. typedef struct _KCRM_MARSHAL_HEADER {
  9148.     ULONG VersionMajor;
  9149.     ULONG VersionMinor;
  9150.     ULONG NumProtocols;
  9151.     ULONG Unused;
  9152. } KCRM_MARSHAL_HEADER, *PKCRM_MARSHAL_HEADER, * PRKCRM_MARSHAL_HEADER;
  9153.  
  9154. typedef struct _KCRM_TRANSACTION_BLOB {
  9155.     UOW UOW;
  9156.     GUID TmIdentity;
  9157.     ULONG IsolationLevel;
  9158.     ULONG IsolationFlags;
  9159.     ULONG Timeout;
  9160.     WCHAR Description[64];
  9161. } KCRM_TRANSACTION_BLOB, *PKCRM_TRANSACTION_BLOB, * PRKCRM_TRANSACTION_BLOB;
  9162.  
  9163. typedef struct _KCRM_PROTOCOL_BLOB {
  9164.     CRM_PROTOCOL_ID ProtocolId;
  9165.                                   ULONG StaticInfoLength;
  9166.     ULONG TransactionIdInfoLength;
  9167.     ULONG Unused1;
  9168.     ULONG Unused2;
  9169. } KCRM_PROTOCOL_BLOB, *PKCRM_PROTOCOL_BLOB, * PRKCRM_PROTOCOL_BLOB;
  9170. # 216 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ktmtypes.h" 3
  9171. #pragma option pop
  9172. # 21582 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 2 3
  9173. # 21759 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9174. typedef enum _TRANSACTION_OUTCOME {
  9175.     TransactionOutcomeUndetermined = 1,
  9176.     TransactionOutcomeCommitted,
  9177.     TransactionOutcomeAborted,
  9178. } TRANSACTION_OUTCOME;
  9179.  
  9180.  
  9181. typedef enum _TRANSACTION_STATE {
  9182.     TransactionStateNormal = 1,
  9183.     TransactionStateIndoubt,
  9184.     TransactionStateCommittedNotify,
  9185. } TRANSACTION_STATE;
  9186.  
  9187.  
  9188. typedef struct _TRANSACTION_BASIC_INFORMATION {
  9189.     GUID TransactionId;
  9190.     DWORD State;
  9191.     DWORD Outcome;
  9192. } TRANSACTION_BASIC_INFORMATION, *PTRANSACTION_BASIC_INFORMATION;
  9193.  
  9194. typedef struct _TRANSACTIONMANAGER_BASIC_INFORMATION {
  9195.     GUID TmIdentity;
  9196.     LARGE_INTEGER VirtualClock;
  9197. } TRANSACTIONMANAGER_BASIC_INFORMATION, *PTRANSACTIONMANAGER_BASIC_INFORMATION;
  9198.  
  9199. typedef struct _TRANSACTIONMANAGER_LOG_INFORMATION {
  9200.     GUID LogIdentity;
  9201. } TRANSACTIONMANAGER_LOG_INFORMATION, *PTRANSACTIONMANAGER_LOG_INFORMATION;
  9202.  
  9203. typedef struct _TRANSACTIONMANAGER_LOGPATH_INFORMATION {
  9204.     DWORD LogPathLength;
  9205.                                 WCHAR LogPath[1];
  9206.  
  9207. } TRANSACTIONMANAGER_LOGPATH_INFORMATION, *PTRANSACTIONMANAGER_LOGPATH_INFORMATION;
  9208.  
  9209. typedef struct _TRANSACTIONMANAGER_RECOVERY_INFORMATION {
  9210.     ULONGLONG LastRecoveredLsn;
  9211. } TRANSACTIONMANAGER_RECOVERY_INFORMATION, *PTRANSACTIONMANAGER_RECOVERY_INFORMATION;
  9212.  
  9213.  
  9214.  
  9215. typedef struct _TRANSACTIONMANAGER_OLDEST_INFORMATION {
  9216.     GUID OldestTransactionGuid;
  9217. } TRANSACTIONMANAGER_OLDEST_INFORMATION, *PTRANSACTIONMANAGER_OLDEST_INFORMATION;
  9218.  
  9219.  
  9220.  
  9221. typedef struct _TRANSACTION_PROPERTIES_INFORMATION {
  9222.     DWORD IsolationLevel;
  9223.     DWORD IsolationFlags;
  9224.     LARGE_INTEGER Timeout;
  9225.     DWORD Outcome;
  9226.     DWORD DescriptionLength;
  9227.     WCHAR Description[1];
  9228.  
  9229. } TRANSACTION_PROPERTIES_INFORMATION, *PTRANSACTION_PROPERTIES_INFORMATION;
  9230.  
  9231.  
  9232.  
  9233. typedef struct _TRANSACTION_BIND_INFORMATION {
  9234.     HANDLE TmHandle;
  9235. } TRANSACTION_BIND_INFORMATION, *PTRANSACTION_BIND_INFORMATION;
  9236.  
  9237. typedef struct _TRANSACTION_ENLISTMENT_PAIR {
  9238.     GUID EnlistmentId;
  9239.     GUID ResourceManagerId;
  9240. } TRANSACTION_ENLISTMENT_PAIR, *PTRANSACTION_ENLISTMENT_PAIR;
  9241.  
  9242. typedef struct _TRANSACTION_ENLISTMENTS_INFORMATION {
  9243.     DWORD NumberOfEnlistments;
  9244.     TRANSACTION_ENLISTMENT_PAIR EnlistmentPair[1];
  9245. } TRANSACTION_ENLISTMENTS_INFORMATION, *PTRANSACTION_ENLISTMENTS_INFORMATION;
  9246.  
  9247. typedef struct _TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION {
  9248.     TRANSACTION_ENLISTMENT_PAIR SuperiorEnlistmentPair;
  9249. } TRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION, *PTRANSACTION_SUPERIOR_ENLISTMENT_INFORMATION;
  9250.  
  9251.  
  9252. typedef struct _RESOURCEMANAGER_BASIC_INFORMATION {
  9253.     GUID ResourceManagerId;
  9254.     DWORD DescriptionLength;
  9255.     WCHAR Description[1];
  9256. } RESOURCEMANAGER_BASIC_INFORMATION, *PRESOURCEMANAGER_BASIC_INFORMATION;
  9257.  
  9258. typedef struct _RESOURCEMANAGER_COMPLETION_INFORMATION {
  9259.     HANDLE IoCompletionPortHandle;
  9260.     ULONG_PTR CompletionKey;
  9261. } RESOURCEMANAGER_COMPLETION_INFORMATION, *PRESOURCEMANAGER_COMPLETION_INFORMATION;
  9262.  
  9263.  
  9264.  
  9265.  
  9266. typedef enum _TRANSACTION_INFORMATION_CLASS {
  9267.     TransactionBasicInformation,
  9268.     TransactionPropertiesInformation,
  9269.     TransactionEnlistmentInformation,
  9270.     TransactionSuperiorEnlistmentInformation
  9271.  
  9272.     ,
  9273.  
  9274.  
  9275.     TransactionBindInformation,
  9276.     TransactionDTCPrivateInformation
  9277.     ,
  9278.  
  9279. } TRANSACTION_INFORMATION_CLASS;
  9280.  
  9281.  
  9282. typedef enum _TRANSACTIONMANAGER_INFORMATION_CLASS {
  9283.     TransactionManagerBasicInformation,
  9284.     TransactionManagerLogInformation,
  9285.     TransactionManagerLogPathInformation,
  9286.     TransactionManagerRecoveryInformation = 4
  9287.  
  9288.     ,
  9289.  
  9290.  
  9291.  
  9292.     TransactionManagerOnlineProbeInformation = 3,
  9293.     TransactionManagerOldestTransactionInformation = 5
  9294.  
  9295.  
  9296.  
  9297. } TRANSACTIONMANAGER_INFORMATION_CLASS;
  9298.  
  9299.  
  9300.  
  9301. typedef enum _RESOURCEMANAGER_INFORMATION_CLASS {
  9302.     ResourceManagerBasicInformation,
  9303.     ResourceManagerCompletionInformation,
  9304. } RESOURCEMANAGER_INFORMATION_CLASS;
  9305.  
  9306.  
  9307. typedef struct _ENLISTMENT_BASIC_INFORMATION {
  9308.     GUID EnlistmentId;
  9309.     GUID TransactionId;
  9310.     GUID ResourceManagerId;
  9311. } ENLISTMENT_BASIC_INFORMATION, *PENLISTMENT_BASIC_INFORMATION;
  9312.  
  9313. typedef struct _ENLISTMENT_CRM_INFORMATION {
  9314.     GUID CrmTransactionManagerId;
  9315.     GUID CrmResourceManagerId;
  9316.     GUID CrmEnlistmentId;
  9317. } ENLISTMENT_CRM_INFORMATION, *PENLISTMENT_CRM_INFORMATION;
  9318.  
  9319.  
  9320.  
  9321. typedef enum _ENLISTMENT_INFORMATION_CLASS {
  9322.     EnlistmentBasicInformation,
  9323.     EnlistmentRecoveryInformation,
  9324.     EnlistmentCrmInformation
  9325. } ENLISTMENT_INFORMATION_CLASS;
  9326.  
  9327. typedef struct _TRANSACTION_LIST_ENTRY {
  9328.     UOW UOW;
  9329. } TRANSACTION_LIST_ENTRY, *PTRANSACTION_LIST_ENTRY;
  9330.  
  9331. typedef struct _TRANSACTION_LIST_INFORMATION {
  9332.     DWORD NumberOfTransactions;
  9333.     TRANSACTION_LIST_ENTRY TransactionInformation[1];
  9334. } TRANSACTION_LIST_INFORMATION, *PTRANSACTION_LIST_INFORMATION;
  9335.  
  9336.  
  9337.  
  9338.  
  9339.  
  9340.  
  9341. typedef enum _KTMOBJECT_TYPE {
  9342.  
  9343.     KTMOBJECT_TRANSACTION,
  9344.     KTMOBJECT_TRANSACTION_MANAGER,
  9345.     KTMOBJECT_RESOURCE_MANAGER,
  9346.     KTMOBJECT_ENLISTMENT,
  9347.     KTMOBJECT_INVALID
  9348.  
  9349. } KTMOBJECT_TYPE, *PKTMOBJECT_TYPE;
  9350. # 21944 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9351. typedef struct _KTMOBJECT_CURSOR {
  9352.  
  9353.  
  9354.  
  9355.  
  9356.  
  9357.     GUID LastQuery;
  9358.  
  9359.  
  9360.  
  9361.  
  9362.  
  9363.     DWORD ObjectIdCount;
  9364.  
  9365.  
  9366.  
  9367.  
  9368.  
  9369.     GUID ObjectIds[1];
  9370.  
  9371. } KTMOBJECT_CURSOR, *PKTMOBJECT_CURSOR;
  9372. # 21977 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9373. typedef DWORD TP_VERSION, *PTP_VERSION;
  9374.  
  9375. typedef struct _TP_CALLBACK_INSTANCE TP_CALLBACK_INSTANCE, *PTP_CALLBACK_INSTANCE;
  9376.  
  9377. typedef void (__stdcall *PTP_SIMPLE_CALLBACK)(
  9378.                 PTP_CALLBACK_INSTANCE Instance,
  9379.                 PVOID Context
  9380.     );
  9381.  
  9382. typedef struct _TP_POOL TP_POOL, *PTP_POOL;
  9383.  
  9384. typedef enum _TP_CALLBACK_PRIORITY {
  9385.     TP_CALLBACK_PRIORITY_HIGH,
  9386.     TP_CALLBACK_PRIORITY_NORMAL,
  9387.     TP_CALLBACK_PRIORITY_LOW,
  9388.     TP_CALLBACK_PRIORITY_INVALID,
  9389.     TP_CALLBACK_PRIORITY_COUNT = TP_CALLBACK_PRIORITY_INVALID
  9390. } TP_CALLBACK_PRIORITY;
  9391.  
  9392. typedef struct _TP_POOL_STACK_INFORMATION {
  9393.     SIZE_T StackReserve;
  9394.     SIZE_T StackCommit;
  9395. }TP_POOL_STACK_INFORMATION, *PTP_POOL_STACK_INFORMATION;
  9396.  
  9397. typedef struct _TP_CLEANUP_GROUP TP_CLEANUP_GROUP, *PTP_CLEANUP_GROUP;
  9398.  
  9399. typedef void (__stdcall *PTP_CLEANUP_GROUP_CANCEL_CALLBACK)(
  9400.                 PVOID ObjectContext,
  9401.                 PVOID CleanupContext
  9402.     );
  9403. # 22015 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9404. typedef struct _TP_CALLBACK_ENVIRON_V3 {
  9405.     TP_VERSION Version;
  9406.     PTP_POOL Pool;
  9407.     PTP_CLEANUP_GROUP CleanupGroup;
  9408.     PTP_CLEANUP_GROUP_CANCEL_CALLBACK CleanupGroupCancelCallback;
  9409.     PVOID RaceDll;
  9410.     struct _ACTIVATION_CONTEXT *ActivationContext;
  9411.     PTP_SIMPLE_CALLBACK FinalizationCallback;
  9412.     union {
  9413.         DWORD Flags;
  9414.         struct {
  9415.             DWORD LongFunction : 1;
  9416.             DWORD Persistent : 1;
  9417.             DWORD Private : 30;
  9418.         } s;
  9419.     } u;
  9420.     TP_CALLBACK_PRIORITY CallbackPriority;
  9421.     DWORD Size;
  9422. } TP_CALLBACK_ENVIRON_V3;
  9423.  
  9424. typedef TP_CALLBACK_ENVIRON_V3 TP_CALLBACK_ENVIRON, *PTP_CALLBACK_ENVIRON;
  9425. # 22063 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9426. __inline
  9427. void
  9428. TpInitializeCallbackEnviron(
  9429.           PTP_CALLBACK_ENVIRON CallbackEnviron
  9430.     )
  9431. {
  9432.  
  9433.  
  9434.  
  9435.     CallbackEnviron->Version = 3;
  9436.  
  9437.  
  9438.  
  9439.  
  9440.  
  9441.  
  9442.  
  9443.     CallbackEnviron->Pool = 0;
  9444.     CallbackEnviron->CleanupGroup = 0;
  9445.     CallbackEnviron->CleanupGroupCancelCallback = 0;
  9446.     CallbackEnviron->RaceDll = 0;
  9447.     CallbackEnviron->ActivationContext = 0;
  9448.     CallbackEnviron->FinalizationCallback = 0;
  9449.     CallbackEnviron->u.Flags = 0;
  9450.  
  9451.  
  9452.  
  9453.     CallbackEnviron->CallbackPriority = TP_CALLBACK_PRIORITY_NORMAL;
  9454.     CallbackEnviron->Size = sizeof(TP_CALLBACK_ENVIRON);
  9455.  
  9456.  
  9457.  
  9458. }
  9459.  
  9460. __inline
  9461. void
  9462. TpSetCallbackThreadpool(
  9463.             PTP_CALLBACK_ENVIRON CallbackEnviron,
  9464.             PTP_POOL Pool
  9465.     )
  9466. {
  9467.     CallbackEnviron->Pool = Pool;
  9468. }
  9469.  
  9470. __inline
  9471. void
  9472. TpSetCallbackCleanupGroup(
  9473.              PTP_CALLBACK_ENVIRON CallbackEnviron,
  9474.              PTP_CLEANUP_GROUP CleanupGroup,
  9475.              PTP_CLEANUP_GROUP_CANCEL_CALLBACK CleanupGroupCancelCallback
  9476.     )
  9477. {
  9478.     CallbackEnviron->CleanupGroup = CleanupGroup;
  9479.     CallbackEnviron->CleanupGroupCancelCallback = CleanupGroupCancelCallback;
  9480. }
  9481.  
  9482. __inline
  9483. void
  9484. TpSetCallbackActivationContext(
  9485.              PTP_CALLBACK_ENVIRON CallbackEnviron,
  9486.              struct _ACTIVATION_CONTEXT *ActivationContext
  9487.     )
  9488. {
  9489.     CallbackEnviron->ActivationContext = ActivationContext;
  9490. }
  9491.  
  9492. __inline
  9493. void
  9494. TpSetCallbackNoActivationContext(
  9495.             PTP_CALLBACK_ENVIRON CallbackEnviron
  9496.     )
  9497. {
  9498.     CallbackEnviron->ActivationContext = (struct _ACTIVATION_CONTEXT *)(LONG_PTR) -1;
  9499. }
  9500.  
  9501. __inline
  9502. void
  9503. TpSetCallbackLongFunction(
  9504.             PTP_CALLBACK_ENVIRON CallbackEnviron
  9505.     )
  9506. {
  9507.     CallbackEnviron->u.s.LongFunction = 1;
  9508. }
  9509.  
  9510. __inline
  9511. void
  9512. TpSetCallbackRaceWithDll(
  9513.             PTP_CALLBACK_ENVIRON CallbackEnviron,
  9514.             PVOID DllHandle
  9515.     )
  9516. {
  9517.     CallbackEnviron->RaceDll = DllHandle;
  9518. }
  9519.  
  9520. __inline
  9521. void
  9522. TpSetCallbackFinalizationCallback(
  9523.             PTP_CALLBACK_ENVIRON CallbackEnviron,
  9524.             PTP_SIMPLE_CALLBACK FinalizationCallback
  9525.     )
  9526. {
  9527.     CallbackEnviron->FinalizationCallback = FinalizationCallback;
  9528. }
  9529.  
  9530.  
  9531.  
  9532. __inline
  9533. void
  9534. TpSetCallbackPriority(
  9535.             PTP_CALLBACK_ENVIRON CallbackEnviron,
  9536.             TP_CALLBACK_PRIORITY Priority
  9537.     )
  9538. {
  9539.     CallbackEnviron->CallbackPriority = Priority;
  9540. }
  9541.  
  9542.  
  9543.  
  9544. __inline
  9545. void
  9546. TpSetCallbackPersistent(
  9547.             PTP_CALLBACK_ENVIRON CallbackEnviron
  9548.     )
  9549. {
  9550.     CallbackEnviron->u.s.Persistent = 1;
  9551. }
  9552.  
  9553.  
  9554. __inline
  9555. void
  9556. TpDestroyCallbackEnviron(
  9557.          PTP_CALLBACK_ENVIRON CallbackEnviron
  9558.     )
  9559. {
  9560.  
  9561.  
  9562.  
  9563.  
  9564.  
  9565.  
  9566.     (CallbackEnviron);
  9567. }
  9568.  
  9569.  
  9570.  
  9571.  
  9572. typedef struct _TP_WORK TP_WORK, *PTP_WORK;
  9573.  
  9574. typedef void (__stdcall *PTP_WORK_CALLBACK)(
  9575.                 PTP_CALLBACK_INSTANCE Instance,
  9576.                 PVOID Context,
  9577.                 PTP_WORK Work
  9578.     );
  9579.  
  9580. typedef struct _TP_TIMER TP_TIMER, *PTP_TIMER;
  9581.  
  9582. typedef void (__stdcall *PTP_TIMER_CALLBACK)(
  9583.                 PTP_CALLBACK_INSTANCE Instance,
  9584.                 PVOID Context,
  9585.                 PTP_TIMER Timer
  9586.     );
  9587.  
  9588. typedef DWORD TP_WAIT_RESULT;
  9589.  
  9590. typedef struct _TP_WAIT TP_WAIT, *PTP_WAIT;
  9591.  
  9592. typedef void (__stdcall *PTP_WAIT_CALLBACK)(
  9593.                 PTP_CALLBACK_INSTANCE Instance,
  9594.                 PVOID Context,
  9595.                 PTP_WAIT Wait,
  9596.                 TP_WAIT_RESULT WaitResult
  9597.     );
  9598.  
  9599. typedef struct _TP_IO TP_IO, *PTP_IO;
  9600. # 22383 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnt.h" 3
  9601. #pragma warning(default: 4200)
  9602. #pragma warning(default: 4201)
  9603. #pragma warning(default: 4214)
  9604.  
  9605.  
  9606. #pragma option pop
  9607. # 183 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 2 3
  9608.  
  9609.  
  9610.  
  9611.  
  9612. typedef UINT_PTR WPARAM;
  9613. typedef LONG_PTR LPARAM;
  9614. typedef LONG_PTR LRESULT;
  9615. # 216 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 3
  9616. typedef HANDLE *SPHANDLE;
  9617. typedef HANDLE *LPHANDLE;
  9618. typedef HANDLE HGLOBAL;
  9619. typedef HANDLE HLOCAL;
  9620. typedef HANDLE GLOBALHANDLE;
  9621. typedef HANDLE LOCALHANDLE;
  9622. # 234 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 3
  9623. typedef int ( __stdcall *FARPROC)();
  9624. typedef int ( __stdcall *NEARPROC)();
  9625. typedef int (__stdcall *PROC)();
  9626. # 252 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 3
  9627. typedef WORD ATOM;
  9628.  
  9629. struct HKEY__{int unused;}; typedef struct HKEY__ *HKEY;
  9630. typedef HKEY *PHKEY;
  9631. struct HMETAFILE__{int unused;}; typedef struct HMETAFILE__ *HMETAFILE;
  9632. struct HINSTANCE__{int unused;}; typedef struct HINSTANCE__ *HINSTANCE;
  9633. typedef HINSTANCE HMODULE;
  9634. struct HRGN__{int unused;}; typedef struct HRGN__ *HRGN;
  9635. struct HRSRC__{int unused;}; typedef struct HRSRC__ *HRSRC;
  9636. struct HSPRITE__{int unused;}; typedef struct HSPRITE__ *HSPRITE;
  9637. struct HLSURF__{int unused;}; typedef struct HLSURF__ *HLSURF;
  9638. struct HSTR__{int unused;}; typedef struct HSTR__ *HSTR;
  9639. struct HTASK__{int unused;}; typedef struct HTASK__ *HTASK;
  9640. struct HWINSTA__{int unused;}; typedef struct HWINSTA__ *HWINSTA;
  9641. struct HKL__{int unused;}; typedef struct HKL__ *HKL;
  9642.  
  9643.  
  9644. typedef int HFILE;
  9645. # 278 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwindef.h" 3
  9646. typedef struct _FILETIME {
  9647.     DWORD dwLowDateTime;
  9648.     DWORD dwHighDateTime;
  9649. } FILETIME, *PFILETIME, *LPFILETIME;
  9650.  
  9651.  
  9652.  
  9653.  
  9654.  
  9655.  
  9656.  
  9657. #pragma endregion
  9658.  
  9659. #pragma option pop
  9660. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windef.h" 2 3
  9661. # 37 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windef.h" 3
  9662. #pragma region Application Family or OneCore Family
  9663.  
  9664.  
  9665. struct HWND__{int unused;}; typedef struct HWND__ *HWND;
  9666. struct HHOOK__{int unused;}; typedef struct HHOOK__ *HHOOK;
  9667.  
  9668.  
  9669. #pragma endregion
  9670. # 59 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windef.h" 3
  9671. #pragma region Application Family
  9672.  
  9673.  
  9674.  
  9675.  
  9676. typedef void * HGDIOBJ;
  9677.  
  9678.  
  9679.  
  9680.  
  9681.  
  9682.  
  9683. struct HACCEL__{int unused;}; typedef struct HACCEL__ *HACCEL;
  9684.  
  9685.  
  9686. struct HBITMAP__{int unused;}; typedef struct HBITMAP__ *HBITMAP;
  9687. struct HBRUSH__{int unused;}; typedef struct HBRUSH__ *HBRUSH;
  9688.  
  9689.  
  9690. struct HCOLORSPACE__{int unused;}; typedef struct HCOLORSPACE__ *HCOLORSPACE;
  9691.  
  9692.  
  9693. struct HDC__{int unused;}; typedef struct HDC__ *HDC;
  9694.  
  9695. struct HGLRC__{int unused;}; typedef struct HGLRC__ *HGLRC;
  9696. struct HDESK__{int unused;}; typedef struct HDESK__ *HDESK;
  9697. struct HENHMETAFILE__{int unused;}; typedef struct HENHMETAFILE__ *HENHMETAFILE;
  9698.  
  9699. struct HFONT__{int unused;}; typedef struct HFONT__ *HFONT;
  9700.  
  9701. struct HICON__{int unused;}; typedef struct HICON__ *HICON;
  9702.  
  9703. struct HMENU__{int unused;}; typedef struct HMENU__ *HMENU;
  9704.  
  9705.  
  9706. struct HPALETTE__{int unused;}; typedef struct HPALETTE__ *HPALETTE;
  9707. struct HPEN__{int unused;}; typedef struct HPEN__ *HPEN;
  9708.  
  9709.  
  9710.  
  9711. struct HWINEVENTHOOK__{int unused;}; typedef struct HWINEVENTHOOK__ *HWINEVENTHOOK;
  9712.  
  9713.  
  9714.  
  9715. #pragma endregion
  9716.  
  9717.  
  9718.  
  9719.  
  9720. #pragma region Application Family
  9721.  
  9722.  
  9723. struct HMONITOR__{int unused;}; typedef struct HMONITOR__ *HMONITOR;
  9724.  
  9725.  
  9726. #pragma endregion
  9727.  
  9728.  
  9729.  
  9730. #pragma region Desktop Family
  9731.  
  9732.  
  9733. struct HUMPD__{int unused;}; typedef struct HUMPD__ *HUMPD;
  9734.  
  9735.  
  9736. #pragma endregion
  9737.  
  9738.  
  9739.  
  9740. #pragma region Application Family
  9741.  
  9742.  
  9743.  
  9744. typedef HICON HCURSOR;
  9745.  
  9746.  
  9747.  
  9748.  
  9749. typedef DWORD COLORREF;
  9750.  
  9751.  
  9752. #pragma endregion
  9753.  
  9754. #pragma region Desktop Family
  9755.  
  9756.  
  9757. typedef DWORD *LPCOLORREF;
  9758.  
  9759.  
  9760.  
  9761.  
  9762. #pragma endregion
  9763.  
  9764. #pragma region Application Family
  9765.  
  9766.  
  9767. typedef struct tagRECT
  9768. {
  9769.     LONG left;
  9770.     LONG top;
  9771.     LONG right;
  9772.     LONG bottom;
  9773. } RECT, *PRECT, *NPRECT, *LPRECT;
  9774.  
  9775. typedef const RECT * LPCRECT;
  9776.  
  9777. typedef struct _RECTL
  9778. {
  9779.     LONG left;
  9780.     LONG top;
  9781.     LONG right;
  9782.     LONG bottom;
  9783. } RECTL, *PRECTL, *LPRECTL;
  9784.  
  9785. typedef const RECTL * LPCRECTL;
  9786.  
  9787. typedef struct tagPOINT
  9788. {
  9789.     LONG x;
  9790.     LONG y;
  9791. } POINT, *PPOINT, *NPPOINT, *LPPOINT;
  9792.  
  9793. typedef struct _POINTL
  9794. {
  9795.     LONG x;
  9796.     LONG y;
  9797. } POINTL, *PPOINTL;
  9798.  
  9799. typedef struct tagSIZE
  9800. {
  9801.     LONG cx;
  9802.     LONG cy;
  9803. } SIZE, *PSIZE, *LPSIZE;
  9804.  
  9805. typedef SIZE SIZEL;
  9806. typedef SIZE *PSIZEL, *LPSIZEL;
  9807.  
  9808. typedef struct tagPOINTS
  9809. {
  9810.  
  9811.     SHORT x;
  9812.     SHORT y;
  9813.  
  9814.  
  9815.  
  9816.  
  9817. } POINTS, *PPOINTS, *LPPOINTS;
  9818.  
  9819.  
  9820. #pragma endregion
  9821. # 245 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windef.h" 3
  9822. #pragma region Desktop Family
  9823.  
  9824.  
  9825.  
  9826.  
  9827.  
  9828. struct DPI_AWARENESS_CONTEXT__{int unused;}; typedef struct DPI_AWARENESS_CONTEXT__ *DPI_AWARENESS_CONTEXT;
  9829.  
  9830. typedef enum DPI_AWARENESS {
  9831.     DPI_AWARENESS_INVALID = -1,
  9832.     DPI_AWARENESS_UNAWARE = 0,
  9833.     DPI_AWARENESS_SYSTEM_AWARE = 1,
  9834.     DPI_AWARENESS_PER_MONITOR_AWARE = 2
  9835. } DPI_AWARENESS;
  9836.  
  9837.  
  9838.  
  9839.  
  9840.  
  9841.  
  9842.  
  9843. typedef enum DPI_HOSTING_BEHAVIOR {
  9844.     DPI_HOSTING_BEHAVIOR_INVALID = -1,
  9845.     DPI_HOSTING_BEHAVIOR_DEFAULT = 0,
  9846.     DPI_HOSTING_BEHAVIOR_MIXED = 1
  9847. } DPI_HOSTING_BEHAVIOR;
  9848.  
  9849.  
  9850.  
  9851. #pragma option pop
  9852. # 202 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  9853.  
  9854. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 1 3
  9855. #pragma option push -b -a8 -pc -A- -w-pun
  9856. # 39 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  9857. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\apisetcconv.h" 1 3
  9858.  
  9859.  
  9860.  
  9861.  
  9862.  
  9863.  
  9864.  
  9865.  
  9866. #pragma option push -b -a8 -pc -A- -w-pun
  9867. # 95 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\apisetcconv.h" 3
  9868. #pragma option pop
  9869. # 39 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  9870.  
  9871. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwinbase.h" 1 3
  9872. #pragma option push -b -a8 -pc -A- -w-pun
  9873. # 47 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwinbase.h" 3
  9874. typedef struct _SECURITY_ATTRIBUTES {
  9875.     DWORD nLength;
  9876.     LPVOID lpSecurityDescriptor;
  9877.     BOOL bInheritHandle;
  9878. } SECURITY_ATTRIBUTES, *PSECURITY_ATTRIBUTES, *LPSECURITY_ATTRIBUTES;
  9879.  
  9880. typedef struct _OVERLAPPED {
  9881.     ULONG_PTR Internal;
  9882.     ULONG_PTR InternalHigh;
  9883.     union {
  9884.         struct {
  9885.             DWORD Offset;
  9886.             DWORD OffsetHigh;
  9887.         } ;
  9888.         PVOID Pointer;
  9889.     } ;
  9890.  
  9891.     HANDLE hEvent;
  9892. } OVERLAPPED, *LPOVERLAPPED;
  9893.  
  9894. typedef struct _OVERLAPPED_ENTRY {
  9895.     ULONG_PTR lpCompletionKey;
  9896.     LPOVERLAPPED lpOverlapped;
  9897.     ULONG_PTR Internal;
  9898.     DWORD dwNumberOfBytesTransferred;
  9899. } OVERLAPPED_ENTRY, *LPOVERLAPPED_ENTRY;
  9900. # 91 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwinbase.h" 3
  9901. typedef struct _SYSTEMTIME {
  9902.     WORD wYear;
  9903.     WORD wMonth;
  9904.     WORD wDayOfWeek;
  9905.     WORD wDay;
  9906.     WORD wHour;
  9907.     WORD wMinute;
  9908.     WORD wSecond;
  9909.     WORD wMilliseconds;
  9910. } SYSTEMTIME, *PSYSTEMTIME, *LPSYSTEMTIME;
  9911.  
  9912.  
  9913. typedef struct _WIN32_FIND_DATAA {
  9914.     DWORD dwFileAttributes;
  9915.     FILETIME ftCreationTime;
  9916.     FILETIME ftLastAccessTime;
  9917.     FILETIME ftLastWriteTime;
  9918.     DWORD nFileSizeHigh;
  9919.     DWORD nFileSizeLow;
  9920.     DWORD dwReserved0;
  9921.     DWORD dwReserved1;
  9922.               CHAR cFileName[ 260 ];
  9923.               CHAR cAlternateFileName[ 14 ];
  9924.  
  9925.  
  9926.  
  9927.  
  9928.  
  9929. } WIN32_FIND_DATAA, *PWIN32_FIND_DATAA, *LPWIN32_FIND_DATAA;
  9930. typedef struct _WIN32_FIND_DATAW {
  9931.     DWORD dwFileAttributes;
  9932.     FILETIME ftCreationTime;
  9933.     FILETIME ftLastAccessTime;
  9934.     FILETIME ftLastWriteTime;
  9935.     DWORD nFileSizeHigh;
  9936.     DWORD nFileSizeLow;
  9937.     DWORD dwReserved0;
  9938.     DWORD dwReserved1;
  9939.               WCHAR cFileName[ 260 ];
  9940.               WCHAR cAlternateFileName[ 14 ];
  9941.  
  9942.  
  9943.  
  9944.  
  9945.  
  9946. } WIN32_FIND_DATAW, *PWIN32_FIND_DATAW, *LPWIN32_FIND_DATAW;
  9947.  
  9948.  
  9949.  
  9950.  
  9951.  
  9952. typedef WIN32_FIND_DATAA WIN32_FIND_DATA;
  9953. typedef PWIN32_FIND_DATAA PWIN32_FIND_DATA;
  9954. typedef LPWIN32_FIND_DATAA LPWIN32_FIND_DATA;
  9955.  
  9956.  
  9957.  
  9958.  
  9959. typedef enum _FINDEX_INFO_LEVELS {
  9960.     FindExInfoStandard,
  9961.     FindExInfoBasic,
  9962.     FindExInfoMaxInfoLevel
  9963. } FINDEX_INFO_LEVELS;
  9964.  
  9965.  
  9966.  
  9967.  
  9968.  
  9969.  
  9970.  
  9971. typedef enum _FINDEX_SEARCH_OPS {
  9972.     FindExSearchNameMatch,
  9973.     FindExSearchLimitToDirectories,
  9974.     FindExSearchLimitToDevices,
  9975.     FindExSearchMaxSearchOp
  9976. } FINDEX_SEARCH_OPS;
  9977.  
  9978.  
  9979.  
  9980.  
  9981. typedef enum _READ_DIRECTORY_NOTIFY_INFORMATION_CLASS {
  9982.     ReadDirectoryNotifyInformation = 1,
  9983.     ReadDirectoryNotifyExtendedInformation
  9984. } READ_DIRECTORY_NOTIFY_INFORMATION_CLASS, *PREAD_DIRECTORY_NOTIFY_INFORMATION_CLASS;
  9985.  
  9986.  
  9987.  
  9988. typedef enum _GET_FILEEX_INFO_LEVELS {
  9989.     GetFileExInfoStandard,
  9990.     GetFileExMaxInfoLevel
  9991. } GET_FILEEX_INFO_LEVELS;
  9992.  
  9993.  
  9994. typedef enum _FILE_INFO_BY_HANDLE_CLASS {
  9995.     FileBasicInfo,
  9996.     FileStandardInfo,
  9997.     FileNameInfo,
  9998.     FileRenameInfo,
  9999.     FileDispositionInfo,
  10000.     FileAllocationInfo,
  10001.     FileEndOfFileInfo,
  10002.     FileStreamInfo,
  10003.     FileCompressionInfo,
  10004.     FileAttributeTagInfo,
  10005.     FileIdBothDirectoryInfo,
  10006.     FileIdBothDirectoryRestartInfo,
  10007.     FileIoPriorityHintInfo,
  10008.     FileRemoteProtocolInfo,
  10009.     FileFullDirectoryInfo,
  10010.     FileFullDirectoryRestartInfo,
  10011.  
  10012.     FileStorageInfo,
  10013.     FileAlignmentInfo,
  10014.     FileIdInfo,
  10015.     FileIdExtdDirectoryInfo,
  10016.     FileIdExtdDirectoryRestartInfo,
  10017.  
  10018.  
  10019.     FileDispositionInfoEx,
  10020.     FileRenameInfoEx,
  10021.  
  10022.     MaximumFileInfoByHandleClass
  10023. } FILE_INFO_BY_HANDLE_CLASS, *PFILE_INFO_BY_HANDLE_CLASS;
  10024.  
  10025.  
  10026. typedef RTL_CRITICAL_SECTION CRITICAL_SECTION;
  10027. typedef PRTL_CRITICAL_SECTION PCRITICAL_SECTION;
  10028. typedef PRTL_CRITICAL_SECTION LPCRITICAL_SECTION;
  10029.  
  10030. typedef RTL_CRITICAL_SECTION_DEBUG CRITICAL_SECTION_DEBUG;
  10031. typedef PRTL_CRITICAL_SECTION_DEBUG PCRITICAL_SECTION_DEBUG;
  10032. typedef PRTL_CRITICAL_SECTION_DEBUG LPCRITICAL_SECTION_DEBUG;
  10033.  
  10034. typedef
  10035. void
  10036. (__stdcall *LPOVERLAPPED_COMPLETION_ROUTINE)(
  10037.             DWORD dwErrorCode,
  10038.             DWORD dwNumberOfBytesTransfered,
  10039.             LPOVERLAPPED lpOverlapped
  10040.     );
  10041.  
  10042.  
  10043.  
  10044.  
  10045. typedef struct _PROCESS_HEAP_ENTRY {
  10046.     PVOID lpData;
  10047.     DWORD cbData;
  10048.     BYTE cbOverhead;
  10049.     BYTE iRegionIndex;
  10050.     WORD wFlags;
  10051.     union {
  10052.         struct {
  10053.             HANDLE hMem;
  10054.             DWORD dwReserved[ 3 ];
  10055.         } Block;
  10056.         struct {
  10057.             DWORD dwCommittedSize;
  10058.             DWORD dwUnCommittedSize;
  10059.             LPVOID lpFirstBlock;
  10060.             LPVOID lpLastBlock;
  10061.         } Region;
  10062.     } ;
  10063. } PROCESS_HEAP_ENTRY, *LPPROCESS_HEAP_ENTRY, *PPROCESS_HEAP_ENTRY;
  10064. # 262 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwinbase.h" 3
  10065. typedef struct _REASON_CONTEXT {
  10066.     ULONG Version;
  10067.     DWORD Flags;
  10068.     union {
  10069.         struct {
  10070.             HMODULE LocalizedReasonModule;
  10071.             ULONG LocalizedReasonId;
  10072.             ULONG ReasonStringCount;
  10073.             LPWSTR *ReasonStrings;
  10074.  
  10075.         } Detailed;
  10076.  
  10077.         LPWSTR SimpleReasonString;
  10078.     } Reason;
  10079. } REASON_CONTEXT, *PREASON_CONTEXT;
  10080. # 291 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwinbase.h" 3
  10081. typedef DWORD (__stdcall *PTHREAD_START_ROUTINE)(
  10082.     LPVOID lpThreadParameter
  10083.     );
  10084. typedef PTHREAD_START_ROUTINE LPTHREAD_START_ROUTINE;
  10085.  
  10086. typedef LPVOID (__stdcall *PENCLAVE_ROUTINE)(
  10087.     LPVOID lpThreadParameter
  10088.     );
  10089. typedef PENCLAVE_ROUTINE LPENCLAVE_ROUTINE;
  10090.  
  10091. typedef struct _EXCEPTION_DEBUG_INFO {
  10092.     EXCEPTION_RECORD ExceptionRecord;
  10093.     DWORD dwFirstChance;
  10094. } EXCEPTION_DEBUG_INFO, *LPEXCEPTION_DEBUG_INFO;
  10095.  
  10096. typedef struct _CREATE_THREAD_DEBUG_INFO {
  10097.     HANDLE hThread;
  10098.     LPVOID lpThreadLocalBase;
  10099.     LPTHREAD_START_ROUTINE lpStartAddress;
  10100. } CREATE_THREAD_DEBUG_INFO, *LPCREATE_THREAD_DEBUG_INFO;
  10101.  
  10102. typedef struct _CREATE_PROCESS_DEBUG_INFO {
  10103.     HANDLE hFile;
  10104.     HANDLE hProcess;
  10105.     HANDLE hThread;
  10106.     LPVOID lpBaseOfImage;
  10107.     DWORD dwDebugInfoFileOffset;
  10108.     DWORD nDebugInfoSize;
  10109.     LPVOID lpThreadLocalBase;
  10110.     LPTHREAD_START_ROUTINE lpStartAddress;
  10111.     LPVOID lpImageName;
  10112.     WORD fUnicode;
  10113. } CREATE_PROCESS_DEBUG_INFO, *LPCREATE_PROCESS_DEBUG_INFO;
  10114.  
  10115. typedef struct _EXIT_THREAD_DEBUG_INFO {
  10116.     DWORD dwExitCode;
  10117. } EXIT_THREAD_DEBUG_INFO, *LPEXIT_THREAD_DEBUG_INFO;
  10118.  
  10119. typedef struct _EXIT_PROCESS_DEBUG_INFO {
  10120.     DWORD dwExitCode;
  10121. } EXIT_PROCESS_DEBUG_INFO, *LPEXIT_PROCESS_DEBUG_INFO;
  10122.  
  10123. typedef struct _LOAD_DLL_DEBUG_INFO {
  10124.     HANDLE hFile;
  10125.     LPVOID lpBaseOfDll;
  10126.     DWORD dwDebugInfoFileOffset;
  10127.     DWORD nDebugInfoSize;
  10128.     LPVOID lpImageName;
  10129.     WORD fUnicode;
  10130. } LOAD_DLL_DEBUG_INFO, *LPLOAD_DLL_DEBUG_INFO;
  10131.  
  10132. typedef struct _UNLOAD_DLL_DEBUG_INFO {
  10133.     LPVOID lpBaseOfDll;
  10134. } UNLOAD_DLL_DEBUG_INFO, *LPUNLOAD_DLL_DEBUG_INFO;
  10135.  
  10136. typedef struct _OUTPUT_DEBUG_STRING_INFO {
  10137.     LPSTR lpDebugStringData;
  10138.     WORD fUnicode;
  10139.     WORD nDebugStringLength;
  10140. } OUTPUT_DEBUG_STRING_INFO, *LPOUTPUT_DEBUG_STRING_INFO;
  10141.  
  10142. typedef struct _RIP_INFO {
  10143.     DWORD dwError;
  10144.     DWORD dwType;
  10145. } RIP_INFO, *LPRIP_INFO;
  10146.  
  10147.  
  10148. typedef struct _DEBUG_EVENT {
  10149.     DWORD dwDebugEventCode;
  10150.     DWORD dwProcessId;
  10151.     DWORD dwThreadId;
  10152.     union {
  10153.         EXCEPTION_DEBUG_INFO Exception;
  10154.         CREATE_THREAD_DEBUG_INFO CreateThread;
  10155.         CREATE_PROCESS_DEBUG_INFO CreateProcessInfo;
  10156.         EXIT_THREAD_DEBUG_INFO ExitThread;
  10157.         EXIT_PROCESS_DEBUG_INFO ExitProcess;
  10158.         LOAD_DLL_DEBUG_INFO LoadDll;
  10159.         UNLOAD_DLL_DEBUG_INFO UnloadDll;
  10160.         OUTPUT_DEBUG_STRING_INFO DebugString;
  10161.         RIP_INFO RipInfo;
  10162.     } u;
  10163. } DEBUG_EVENT, *LPDEBUG_EVENT;
  10164.  
  10165.  
  10166.  
  10167.  
  10168.  
  10169.  
  10170.  
  10171. typedef PCONTEXT LPCONTEXT;
  10172. # 463 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\minwinbase.h" 3
  10173. #pragma option pop
  10174. # 40 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  10175.  
  10176.  
  10177.  
  10178.  
  10179.  
  10180.  
  10181. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processenv.h" 1 3
  10182. #pragma option push -b -a8 -pc -A- -w-pun
  10183. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processenv.h" 3
  10184. #pragma region Desktop Family or OneCore Family
  10185.  
  10186.  
  10187. __declspec(dllimport)
  10188. BOOL
  10189. __stdcall
  10190. SetEnvironmentStringsW(
  10191.                                      LPWCH NewEnvironment
  10192.     );
  10193.  
  10194.  
  10195.  
  10196.  
  10197.  
  10198.  
  10199. #pragma endregion
  10200.  
  10201. #pragma region PC Family or OneCore Family
  10202.  
  10203.  
  10204. __declspec(dllimport)
  10205. HANDLE
  10206. __stdcall
  10207. GetStdHandle(
  10208.          DWORD nStdHandle
  10209.     );
  10210.  
  10211.  
  10212. __declspec(dllimport)
  10213. BOOL
  10214. __stdcall
  10215. SetStdHandle(
  10216.          DWORD nStdHandle,
  10217.          HANDLE hHandle
  10218.     );
  10219.  
  10220.  
  10221.  
  10222.  
  10223. __declspec(dllimport)
  10224. BOOL
  10225. __stdcall
  10226. SetStdHandleEx(
  10227.          DWORD nStdHandle,
  10228.          HANDLE hHandle,
  10229.               PHANDLE phPrevValue
  10230.     );
  10231.  
  10232.  
  10233.  
  10234.  
  10235.  
  10236. #pragma endregion
  10237.  
  10238. #pragma region Application Family or OneCore Family
  10239.  
  10240.  
  10241. __declspec(dllimport)
  10242. LPSTR
  10243. __stdcall
  10244. GetCommandLineA(
  10245.     void
  10246.     );
  10247.  
  10248. __declspec(dllimport)
  10249. LPWSTR
  10250. __stdcall
  10251. GetCommandLineW(
  10252.     void
  10253.     );
  10254.  
  10255.  
  10256.  
  10257.  
  10258.  
  10259.  
  10260.  
  10261. __declspec(dllimport)
  10262.  
  10263. LPCH
  10264. __stdcall
  10265. GetEnvironmentStrings(
  10266.     void
  10267.     );
  10268.  
  10269.  
  10270. __declspec(dllimport)
  10271.  
  10272. LPWCH
  10273. __stdcall
  10274. GetEnvironmentStringsW(
  10275.     void
  10276.     );
  10277. # 128 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processenv.h" 3
  10278. __declspec(dllimport)
  10279. BOOL
  10280. __stdcall
  10281. FreeEnvironmentStringsA(
  10282.                                      LPCH penv
  10283.     );
  10284.  
  10285. __declspec(dllimport)
  10286. BOOL
  10287. __stdcall
  10288. FreeEnvironmentStringsW(
  10289.                                      LPWCH penv
  10290.     );
  10291.  
  10292.  
  10293.  
  10294.  
  10295.  
  10296.  
  10297.  
  10298. __declspec(dllimport)
  10299.  
  10300. DWORD
  10301. __stdcall
  10302. GetEnvironmentVariableA(
  10303.              LPCSTR lpName,
  10304.                                           LPSTR lpBuffer,
  10305.          DWORD nSize
  10306.     );
  10307.  
  10308. __declspec(dllimport)
  10309.  
  10310. DWORD
  10311. __stdcall
  10312. GetEnvironmentVariableW(
  10313.              LPCWSTR lpName,
  10314.                                           LPWSTR lpBuffer,
  10315.          DWORD nSize
  10316.     );
  10317.  
  10318.  
  10319.  
  10320.  
  10321.  
  10322.  
  10323.  
  10324. __declspec(dllimport)
  10325. BOOL
  10326. __stdcall
  10327. SetEnvironmentVariableA(
  10328.          LPCSTR lpName,
  10329.              LPCSTR lpValue
  10330.     );
  10331.  
  10332. __declspec(dllimport)
  10333. BOOL
  10334. __stdcall
  10335. SetEnvironmentVariableW(
  10336.          LPCWSTR lpName,
  10337.              LPCWSTR lpValue
  10338.     );
  10339.  
  10340.  
  10341.  
  10342.  
  10343.  
  10344.  
  10345.  
  10346. __declspec(dllimport)
  10347.  
  10348. DWORD
  10349. __stdcall
  10350. ExpandEnvironmentStringsA(
  10351.          LPCSTR lpSrc,
  10352.                                       LPSTR lpDst,
  10353.          DWORD nSize
  10354.     );
  10355.  
  10356. __declspec(dllimport)
  10357.  
  10358. DWORD
  10359. __stdcall
  10360. ExpandEnvironmentStringsW(
  10361.          LPCWSTR lpSrc,
  10362.                                       LPWSTR lpDst,
  10363.          DWORD nSize
  10364.     );
  10365.  
  10366.  
  10367.  
  10368.  
  10369.  
  10370.  
  10371.  
  10372. __declspec(dllimport)
  10373. BOOL
  10374. __stdcall
  10375. SetCurrentDirectoryA(
  10376.          LPCSTR lpPathName
  10377.     );
  10378.  
  10379. __declspec(dllimport)
  10380. BOOL
  10381. __stdcall
  10382. SetCurrentDirectoryW(
  10383.          LPCWSTR lpPathName
  10384.     );
  10385.  
  10386.  
  10387.  
  10388.  
  10389.  
  10390.  
  10391.  
  10392. __declspec(dllimport)
  10393.  
  10394. DWORD
  10395. __stdcall
  10396. GetCurrentDirectoryA(
  10397.          DWORD nBufferLength,
  10398.                                                   LPSTR lpBuffer
  10399.     );
  10400.  
  10401. __declspec(dllimport)
  10402.  
  10403. DWORD
  10404. __stdcall
  10405. GetCurrentDirectoryW(
  10406.          DWORD nBufferLength,
  10407.                                                   LPWSTR lpBuffer
  10408.     );
  10409.  
  10410.  
  10411.  
  10412.  
  10413.  
  10414.  
  10415.  
  10416.  
  10417. #pragma endregion
  10418.  
  10419. #pragma region Desktop Family or OneCore Family
  10420.  
  10421.  
  10422. __declspec(dllimport)
  10423. DWORD
  10424. __stdcall
  10425. SearchPathW(
  10426.              LPCWSTR lpPath,
  10427.          LPCWSTR lpFileName,
  10428.              LPCWSTR lpExtension,
  10429.          DWORD nBufferLength,
  10430.                                                   LPWSTR lpBuffer,
  10431.               LPWSTR* lpFilePart
  10432.     );
  10433. # 291 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processenv.h" 3
  10434. __declspec(dllimport)
  10435. DWORD
  10436. __stdcall
  10437. SearchPathA(
  10438.              LPCSTR lpPath,
  10439.          LPCSTR lpFileName,
  10440.              LPCSTR lpExtension,
  10441.          DWORD nBufferLength,
  10442.                                                   LPSTR lpBuffer,
  10443.               LPSTR* lpFilePart
  10444.     );
  10445.  
  10446.  
  10447.  
  10448.  
  10449. __declspec(dllimport)
  10450. BOOL
  10451. __stdcall
  10452. NeedCurrentDirectoryForExePathA(
  10453.          LPCSTR ExeName
  10454.     );
  10455.  
  10456. __declspec(dllimport)
  10457. BOOL
  10458. __stdcall
  10459. NeedCurrentDirectoryForExePathW(
  10460.          LPCWSTR ExeName
  10461.     );
  10462. # 329 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processenv.h" 3
  10463. #pragma endregion
  10464.  
  10465.  
  10466.  
  10467.  
  10468.  
  10469.  
  10470. #pragma option pop
  10471. # 46 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  10472.  
  10473. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 1 3
  10474. #pragma option push -b -a8 -pc -A- -w-pun
  10475. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 3
  10476. #pragma region Application Family or OneCore Family
  10477. # 43 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 3
  10478. #pragma endregion
  10479.  
  10480. #pragma region Application Family or OneCore Family
  10481.  
  10482.  
  10483. __declspec(dllimport)
  10484. LONG
  10485. __stdcall
  10486. CompareFileTime(
  10487.          const FILETIME* lpFileTime1,
  10488.          const FILETIME* lpFileTime2
  10489.     );
  10490.  
  10491.  
  10492. __declspec(dllimport)
  10493. BOOL
  10494. __stdcall
  10495. CreateDirectoryA(
  10496.          LPCSTR lpPathName,
  10497.              LPSECURITY_ATTRIBUTES lpSecurityAttributes
  10498.     );
  10499.  
  10500. __declspec(dllimport)
  10501. BOOL
  10502. __stdcall
  10503. CreateDirectoryW(
  10504.          LPCWSTR lpPathName,
  10505.              LPSECURITY_ATTRIBUTES lpSecurityAttributes
  10506.     );
  10507.  
  10508.  
  10509.  
  10510.  
  10511.  
  10512.  
  10513.  
  10514.  
  10515. #pragma endregion
  10516.  
  10517. #pragma region Desktop Family or OneCore Family
  10518.  
  10519.  
  10520. __declspec(dllimport)
  10521. HANDLE
  10522. __stdcall
  10523. CreateFileA(
  10524.          LPCSTR lpFileName,
  10525.          DWORD dwDesiredAccess,
  10526.          DWORD dwShareMode,
  10527.              LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  10528.          DWORD dwCreationDisposition,
  10529.          DWORD dwFlagsAndAttributes,
  10530.              HANDLE hTemplateFile
  10531.     );
  10532.  
  10533. __declspec(dllimport)
  10534. HANDLE
  10535. __stdcall
  10536. CreateFileW(
  10537.          LPCWSTR lpFileName,
  10538.          DWORD dwDesiredAccess,
  10539.          DWORD dwShareMode,
  10540.              LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  10541.          DWORD dwCreationDisposition,
  10542.          DWORD dwFlagsAndAttributes,
  10543.              HANDLE hTemplateFile
  10544.     );
  10545.  
  10546.  
  10547.  
  10548.  
  10549.  
  10550.  
  10551.  
  10552. __declspec(dllimport)
  10553. BOOL
  10554. __stdcall
  10555. DefineDosDeviceW(
  10556.          DWORD dwFlags,
  10557.          LPCWSTR lpDeviceName,
  10558.              LPCWSTR lpTargetPath
  10559.     );
  10560.  
  10561.  
  10562.  
  10563.  
  10564.  
  10565.  
  10566.  
  10567. #pragma endregion
  10568.  
  10569. #pragma region Application Family or OneCore Family
  10570.  
  10571.  
  10572. __declspec(dllimport)
  10573. BOOL
  10574. __stdcall
  10575. DeleteFileA(
  10576.          LPCSTR lpFileName
  10577.     );
  10578.  
  10579. __declspec(dllimport)
  10580. BOOL
  10581. __stdcall
  10582. DeleteFileW(
  10583.          LPCWSTR lpFileName
  10584.     );
  10585.  
  10586.  
  10587.  
  10588.  
  10589.  
  10590.  
  10591.  
  10592. __declspec(dllimport)
  10593. BOOL
  10594. __stdcall
  10595. DeleteVolumeMountPointW(
  10596.          LPCWSTR lpszVolumeMountPoint
  10597.     );
  10598.  
  10599.  
  10600.  
  10601.  
  10602.  
  10603.  
  10604. __declspec(dllimport)
  10605. BOOL
  10606. __stdcall
  10607. FileTimeToLocalFileTime(
  10608.          const FILETIME* lpFileTime,
  10609.           LPFILETIME lpLocalFileTime
  10610.     );
  10611.  
  10612.  
  10613.  
  10614. __declspec(dllimport)
  10615. BOOL
  10616. __stdcall
  10617. FindClose(
  10618.             HANDLE hFindFile
  10619.     );
  10620.  
  10621.  
  10622.  
  10623. #pragma endregion
  10624.  
  10625. #pragma region Desktop Family or OneCore Family
  10626.  
  10627.  
  10628. __declspec(dllimport)
  10629. BOOL
  10630. __stdcall
  10631. FindCloseChangeNotification(
  10632.          HANDLE hChangeHandle
  10633.     );
  10634.  
  10635.  
  10636. __declspec(dllimport)
  10637. HANDLE
  10638. __stdcall
  10639. FindFirstChangeNotificationA(
  10640.          LPCSTR lpPathName,
  10641.          BOOL bWatchSubtree,
  10642.          DWORD dwNotifyFilter
  10643.     );
  10644.  
  10645. __declspec(dllimport)
  10646. HANDLE
  10647. __stdcall
  10648. FindFirstChangeNotificationW(
  10649.          LPCWSTR lpPathName,
  10650.          BOOL bWatchSubtree,
  10651.          DWORD dwNotifyFilter
  10652.     );
  10653.  
  10654.  
  10655.  
  10656.  
  10657.  
  10658.  
  10659.  
  10660.  
  10661. #pragma endregion
  10662.  
  10663. #pragma region Application Family or OneCore Family
  10664.  
  10665.  
  10666. __declspec(dllimport)
  10667. HANDLE
  10668. __stdcall
  10669. FindFirstFileA(
  10670.          LPCSTR lpFileName,
  10671.           LPWIN32_FIND_DATAA lpFindFileData
  10672.     );
  10673.  
  10674. __declspec(dllimport)
  10675. HANDLE
  10676. __stdcall
  10677. FindFirstFileW(
  10678.          LPCWSTR lpFileName,
  10679.           LPWIN32_FIND_DATAW lpFindFileData
  10680.     );
  10681. # 255 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 3
  10682. __declspec(dllimport)
  10683. HANDLE
  10684. __stdcall
  10685. FindFirstFileExA(
  10686.          LPCSTR lpFileName,
  10687.          FINDEX_INFO_LEVELS fInfoLevelId,
  10688.                                                  LPVOID lpFindFileData,
  10689.          FINDEX_SEARCH_OPS fSearchOp,
  10690.                LPVOID lpSearchFilter,
  10691.          DWORD dwAdditionalFlags
  10692.     );
  10693.  
  10694. __declspec(dllimport)
  10695. HANDLE
  10696. __stdcall
  10697. FindFirstFileExW(
  10698.          LPCWSTR lpFileName,
  10699.          FINDEX_INFO_LEVELS fInfoLevelId,
  10700.                                                  LPVOID lpFindFileData,
  10701.          FINDEX_SEARCH_OPS fSearchOp,
  10702.                LPVOID lpSearchFilter,
  10703.          DWORD dwAdditionalFlags
  10704.     );
  10705. # 288 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 3
  10706. #pragma endregion
  10707.  
  10708. #pragma region Desktop Family or OneCore Family
  10709.  
  10710.  
  10711. __declspec(dllimport)
  10712. HANDLE
  10713. __stdcall
  10714. FindFirstVolumeW(
  10715.                                   LPWSTR lpszVolumeName,
  10716.          DWORD cchBufferLength
  10717.     );
  10718.  
  10719.  
  10720.  
  10721.  
  10722.  
  10723.  
  10724. __declspec(dllimport)
  10725. BOOL
  10726. __stdcall
  10727. FindNextChangeNotification(
  10728.          HANDLE hChangeHandle
  10729.     );
  10730.  
  10731.  
  10732.  
  10733. #pragma endregion
  10734.  
  10735. #pragma region Application Family or OneCore Family
  10736.  
  10737.  
  10738. __declspec(dllimport)
  10739. BOOL
  10740. __stdcall
  10741. FindNextFileA(
  10742.          HANDLE hFindFile,
  10743.           LPWIN32_FIND_DATAA lpFindFileData
  10744.     );
  10745.  
  10746. __declspec(dllimport)
  10747. BOOL
  10748. __stdcall
  10749. FindNextFileW(
  10750.          HANDLE hFindFile,
  10751.           LPWIN32_FIND_DATAW lpFindFileData
  10752.     );
  10753.  
  10754.  
  10755.  
  10756.  
  10757.  
  10758.  
  10759.  
  10760.  
  10761. #pragma endregion
  10762.  
  10763. #pragma region Desktop Family or OneCore Family
  10764.  
  10765.  
  10766. __declspec(dllimport)
  10767. BOOL
  10768. __stdcall
  10769. FindNextVolumeW(
  10770.             HANDLE hFindVolume,
  10771.                                   LPWSTR lpszVolumeName,
  10772.          DWORD cchBufferLength
  10773.     );
  10774.  
  10775.  
  10776.  
  10777.  
  10778.  
  10779.  
  10780. __declspec(dllimport)
  10781. BOOL
  10782. __stdcall
  10783. FindVolumeClose(
  10784.          HANDLE hFindVolume
  10785.     );
  10786.  
  10787.  
  10788.  
  10789. #pragma endregion
  10790.  
  10791. #pragma region Application Family or OneCore Family
  10792.  
  10793.  
  10794. __declspec(dllimport)
  10795. BOOL
  10796. __stdcall
  10797. FlushFileBuffers(
  10798.          HANDLE hFile
  10799.     );
  10800.  
  10801.  
  10802.  
  10803. #pragma endregion
  10804.  
  10805. #pragma region Application Family or OneCore Family
  10806.  
  10807.  
  10808. __declspec(dllimport)
  10809. BOOL
  10810. __stdcall
  10811. GetDiskFreeSpaceA(
  10812.              LPCSTR lpRootPathName,
  10813.               LPDWORD lpSectorsPerCluster,
  10814.               LPDWORD lpBytesPerSector,
  10815.               LPDWORD lpNumberOfFreeClusters,
  10816.               LPDWORD lpTotalNumberOfClusters
  10817.     );
  10818.  
  10819. __declspec(dllimport)
  10820. BOOL
  10821. __stdcall
  10822. GetDiskFreeSpaceW(
  10823.              LPCWSTR lpRootPathName,
  10824.               LPDWORD lpSectorsPerCluster,
  10825.               LPDWORD lpBytesPerSector,
  10826.               LPDWORD lpNumberOfFreeClusters,
  10827.               LPDWORD lpTotalNumberOfClusters
  10828.     );
  10829.  
  10830.  
  10831.  
  10832.  
  10833.  
  10834.  
  10835.  
  10836. __declspec(dllimport)
  10837. BOOL
  10838. __stdcall
  10839. GetDiskFreeSpaceExA(
  10840.              LPCSTR lpDirectoryName,
  10841.               PULARGE_INTEGER lpFreeBytesAvailableToCaller,
  10842.               PULARGE_INTEGER lpTotalNumberOfBytes,
  10843.               PULARGE_INTEGER lpTotalNumberOfFreeBytes
  10844.     );
  10845.  
  10846. __declspec(dllimport)
  10847. BOOL
  10848. __stdcall
  10849. GetDiskFreeSpaceExW(
  10850.              LPCWSTR lpDirectoryName,
  10851.               PULARGE_INTEGER lpFreeBytesAvailableToCaller,
  10852.               PULARGE_INTEGER lpTotalNumberOfBytes,
  10853.               PULARGE_INTEGER lpTotalNumberOfFreeBytes
  10854.     );
  10855.  
  10856.  
  10857.  
  10858.  
  10859.  
  10860.  
  10861.  
  10862. __declspec(dllimport)
  10863. UINT
  10864. __stdcall
  10865. GetDriveTypeA(
  10866.              LPCSTR lpRootPathName
  10867.     );
  10868.  
  10869. __declspec(dllimport)
  10870. UINT
  10871. __stdcall
  10872. GetDriveTypeW(
  10873.              LPCWSTR lpRootPathName
  10874.     );
  10875.  
  10876.  
  10877.  
  10878.  
  10879.  
  10880.  
  10881.  
  10882.  
  10883. #pragma endregion
  10884.  
  10885. #pragma region Application Family or OneCore Family
  10886.  
  10887.  
  10888. typedef struct _WIN32_FILE_ATTRIBUTE_DATA {
  10889.     DWORD dwFileAttributes;
  10890.     FILETIME ftCreationTime;
  10891.     FILETIME ftLastAccessTime;
  10892.     FILETIME ftLastWriteTime;
  10893.     DWORD nFileSizeHigh;
  10894.     DWORD nFileSizeLow;
  10895. } WIN32_FILE_ATTRIBUTE_DATA, *LPWIN32_FILE_ATTRIBUTE_DATA;
  10896.  
  10897. __declspec(dllimport)
  10898. DWORD
  10899. __stdcall
  10900. GetFileAttributesA(
  10901.          LPCSTR lpFileName
  10902.     );
  10903.  
  10904. __declspec(dllimport)
  10905. DWORD
  10906. __stdcall
  10907. GetFileAttributesW(
  10908.          LPCWSTR lpFileName
  10909.     );
  10910.  
  10911.  
  10912.  
  10913.  
  10914.  
  10915.  
  10916.  
  10917. __declspec(dllimport)
  10918. BOOL
  10919. __stdcall
  10920. GetFileAttributesExA(
  10921.          LPCSTR lpFileName,
  10922.          GET_FILEEX_INFO_LEVELS fInfoLevelId,
  10923.                                                           LPVOID lpFileInformation
  10924.     );
  10925.  
  10926. __declspec(dllimport)
  10927. BOOL
  10928. __stdcall
  10929. GetFileAttributesExW(
  10930.          LPCWSTR lpFileName,
  10931.          GET_FILEEX_INFO_LEVELS fInfoLevelId,
  10932.                                                           LPVOID lpFileInformation
  10933.     );
  10934.  
  10935.  
  10936.  
  10937.  
  10938.  
  10939.  
  10940.  
  10941.  
  10942. #pragma endregion
  10943.  
  10944. #pragma region Desktop Family or OneCore Family
  10945.  
  10946.  
  10947. typedef struct _BY_HANDLE_FILE_INFORMATION {
  10948.     DWORD dwFileAttributes;
  10949.     FILETIME ftCreationTime;
  10950.     FILETIME ftLastAccessTime;
  10951.     FILETIME ftLastWriteTime;
  10952.     DWORD dwVolumeSerialNumber;
  10953.     DWORD nFileSizeHigh;
  10954.     DWORD nFileSizeLow;
  10955.     DWORD nNumberOfLinks;
  10956.     DWORD nFileIndexHigh;
  10957.     DWORD nFileIndexLow;
  10958. } BY_HANDLE_FILE_INFORMATION, *PBY_HANDLE_FILE_INFORMATION, *LPBY_HANDLE_FILE_INFORMATION;
  10959.  
  10960. __declspec(dllimport)
  10961. BOOL
  10962. __stdcall
  10963. GetFileInformationByHandle(
  10964.          HANDLE hFile,
  10965.           LPBY_HANDLE_FILE_INFORMATION lpFileInformation
  10966.     );
  10967.  
  10968.  
  10969. __declspec(dllimport)
  10970. DWORD
  10971. __stdcall
  10972. GetFileSize(
  10973.          HANDLE hFile,
  10974.               LPDWORD lpFileSizeHigh
  10975.     );
  10976.  
  10977.  
  10978.  
  10979. #pragma endregion
  10980.  
  10981. #pragma region Application Family
  10982.  
  10983.  
  10984. __declspec(dllimport)
  10985. BOOL
  10986. __stdcall
  10987. GetFileSizeEx(
  10988.          HANDLE hFile,
  10989.           PLARGE_INTEGER lpFileSize
  10990.     );
  10991.  
  10992.  
  10993. __declspec(dllimport)
  10994. DWORD
  10995. __stdcall
  10996. GetFileType(
  10997.          HANDLE hFile
  10998.     );
  10999.  
  11000.  
  11001.  
  11002.  
  11003. __declspec(dllimport)
  11004. DWORD
  11005. __stdcall
  11006. GetFinalPathNameByHandleA(
  11007.          HANDLE hFile,
  11008.                               LPSTR lpszFilePath,
  11009.          DWORD cchFilePath,
  11010.          DWORD dwFlags
  11011.     );
  11012.  
  11013. __declspec(dllimport)
  11014. DWORD
  11015. __stdcall
  11016. GetFinalPathNameByHandleW(
  11017.          HANDLE hFile,
  11018.                               LPWSTR lpszFilePath,
  11019.          DWORD cchFilePath,
  11020.          DWORD dwFlags
  11021.     );
  11022. # 613 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 3
  11023. __declspec(dllimport)
  11024. BOOL
  11025. __stdcall
  11026. GetFileTime(
  11027.          HANDLE hFile,
  11028.               LPFILETIME lpCreationTime,
  11029.               LPFILETIME lpLastAccessTime,
  11030.               LPFILETIME lpLastWriteTime
  11031.     );
  11032.  
  11033.  
  11034. __declspec(dllimport)
  11035.  
  11036. DWORD
  11037. __stdcall
  11038. GetFullPathNameW(
  11039.          LPCWSTR lpFileName,
  11040.          DWORD nBufferLength,
  11041.                                                   LPWSTR lpBuffer,
  11042.                  LPWSTR* lpFilePart
  11043.     );
  11044.  
  11045.  
  11046.  
  11047.  
  11048.  
  11049.  
  11050. __declspec(dllimport)
  11051.  
  11052. DWORD
  11053. __stdcall
  11054. GetFullPathNameA(
  11055.          LPCSTR lpFileName,
  11056.          DWORD nBufferLength,
  11057.                                                   LPSTR lpBuffer,
  11058.                  LPSTR* lpFilePart
  11059.     );
  11060.  
  11061.  
  11062.  
  11063.  
  11064.  
  11065.  
  11066. __declspec(dllimport)
  11067. DWORD
  11068. __stdcall
  11069. GetLogicalDrives(
  11070.     void
  11071.     );
  11072.  
  11073.  
  11074.  
  11075. #pragma endregion
  11076.  
  11077. #pragma region Desktop Family or OneCore Family
  11078.  
  11079.  
  11080. __declspec(dllimport)
  11081. DWORD
  11082. __stdcall
  11083. GetLogicalDriveStringsW(
  11084.          DWORD nBufferLength,
  11085.                                                   LPWSTR lpBuffer
  11086.     );
  11087.  
  11088.  
  11089.  
  11090.  
  11091.  
  11092.  
  11093. __declspec(dllimport)
  11094.  
  11095. DWORD
  11096. __stdcall
  11097. GetLongPathNameA(
  11098.          LPCSTR lpszShortPath,
  11099.                                               LPSTR lpszLongPath,
  11100.          DWORD cchBuffer
  11101.     );
  11102.  
  11103.  
  11104.  
  11105.  
  11106.  
  11107.  
  11108.  
  11109. #pragma endregion
  11110.  
  11111. #pragma region Application Family or OneCore Family
  11112.  
  11113.  
  11114. __declspec(dllimport)
  11115.  
  11116. DWORD
  11117. __stdcall
  11118. GetLongPathNameW(
  11119.          LPCWSTR lpszShortPath,
  11120.                                               LPWSTR lpszLongPath,
  11121.          DWORD cchBuffer
  11122.     );
  11123.  
  11124.  
  11125.  
  11126.  
  11127.  
  11128.  
  11129.  
  11130. #pragma endregion
  11131.  
  11132. #pragma region Desktop Family or OneCore Family
  11133.  
  11134.  
  11135. __declspec(dllimport)
  11136.  
  11137. DWORD
  11138. __stdcall
  11139. GetShortPathNameW(
  11140.          LPCWSTR lpszLongPath,
  11141.                                               LPWSTR lpszShortPath,
  11142.          DWORD cchBuffer
  11143.     );
  11144.  
  11145.  
  11146.  
  11147.  
  11148.  
  11149.  
  11150.  
  11151. #pragma endregion
  11152.  
  11153. #pragma region Application Family or OneCore Family
  11154.  
  11155.  
  11156. __declspec(dllimport)
  11157. UINT
  11158. __stdcall
  11159. GetTempFileNameW(
  11160.          LPCWSTR lpPathName,
  11161.          LPCWSTR lpPrefixString,
  11162.          UINT uUnique,
  11163.                            LPWSTR lpTempFileName
  11164.     );
  11165.  
  11166.  
  11167.  
  11168.  
  11169.  
  11170.  
  11171.  
  11172. #pragma endregion
  11173.  
  11174. #pragma region Desktop Family or OneCore Family
  11175.  
  11176.  
  11177.  
  11178.  
  11179. __declspec(dllimport)
  11180. BOOL
  11181. __stdcall
  11182. GetVolumeInformationByHandleW(
  11183.          HANDLE hFile,
  11184.                                       LPWSTR lpVolumeNameBuffer,
  11185.          DWORD nVolumeNameSize,
  11186.               LPDWORD lpVolumeSerialNumber,
  11187.               LPDWORD lpMaximumComponentLength,
  11188.               LPDWORD lpFileSystemFlags,
  11189.                                           LPWSTR lpFileSystemNameBuffer,
  11190.          DWORD nFileSystemNameSize
  11191.     );
  11192.  
  11193.  
  11194.  
  11195.  
  11196. #pragma endregion
  11197.  
  11198. #pragma region Application Family or OneCore Family
  11199.  
  11200.  
  11201. __declspec(dllimport)
  11202. BOOL
  11203. __stdcall
  11204. GetVolumeInformationW(
  11205.              LPCWSTR lpRootPathName,
  11206.                                       LPWSTR lpVolumeNameBuffer,
  11207.          DWORD nVolumeNameSize,
  11208.               LPDWORD lpVolumeSerialNumber,
  11209.               LPDWORD lpMaximumComponentLength,
  11210.               LPDWORD lpFileSystemFlags,
  11211.                                           LPWSTR lpFileSystemNameBuffer,
  11212.          DWORD nFileSystemNameSize
  11213.     );
  11214.  
  11215.  
  11216.  
  11217.  
  11218.  
  11219.  
  11220.  
  11221. #pragma endregion
  11222.  
  11223. #pragma region Desktop Family or OneCore Family
  11224.  
  11225.  
  11226. __declspec(dllimport)
  11227. BOOL
  11228. __stdcall
  11229. GetVolumePathNameW(
  11230.          LPCWSTR lpszFileName,
  11231.                                   LPWSTR lpszVolumePathName,
  11232.          DWORD cchBufferLength
  11233.     );
  11234.  
  11235.  
  11236.  
  11237.  
  11238.  
  11239.  
  11240.  
  11241. #pragma endregion
  11242.  
  11243. #pragma region Application Family or OneCore Family
  11244.  
  11245.  
  11246. __declspec(dllimport)
  11247. BOOL
  11248. __stdcall
  11249. LocalFileTimeToFileTime(
  11250.          const FILETIME* lpLocalFileTime,
  11251.           LPFILETIME lpFileTime
  11252.     );
  11253.  
  11254.  
  11255. __declspec(dllimport)
  11256. BOOL
  11257. __stdcall
  11258. LockFile(
  11259.          HANDLE hFile,
  11260.          DWORD dwFileOffsetLow,
  11261.          DWORD dwFileOffsetHigh,
  11262.          DWORD nNumberOfBytesToLockLow,
  11263.          DWORD nNumberOfBytesToLockHigh
  11264.     );
  11265.  
  11266.  
  11267. __declspec(dllimport)
  11268. BOOL
  11269. __stdcall
  11270. LockFileEx(
  11271.          HANDLE hFile,
  11272.          DWORD dwFlags,
  11273.                DWORD dwReserved,
  11274.          DWORD nNumberOfBytesToLockLow,
  11275.          DWORD nNumberOfBytesToLockHigh,
  11276.             LPOVERLAPPED lpOverlapped
  11277.     );
  11278.  
  11279.  
  11280.  
  11281. #pragma endregion
  11282.  
  11283. #pragma region Desktop Family or OneCore Family
  11284.  
  11285.  
  11286. __declspec(dllimport)
  11287. DWORD
  11288. __stdcall
  11289. QueryDosDeviceW(
  11290.              LPCWSTR lpDeviceName,
  11291.                                         LPWSTR lpTargetPath,
  11292.          DWORD ucchMax
  11293.     );
  11294.  
  11295.  
  11296.  
  11297.  
  11298.  
  11299.  
  11300.  
  11301. #pragma endregion
  11302.  
  11303. #pragma region Application Family or OneCore Family
  11304.  
  11305.  
  11306. __declspec(dllimport)
  11307.  
  11308. BOOL
  11309. __stdcall
  11310. ReadFile(
  11311.          HANDLE hFile,
  11312.                                                                                                   LPVOID lpBuffer,
  11313.          DWORD nNumberOfBytesToRead,
  11314.               LPDWORD lpNumberOfBytesRead,
  11315.                 LPOVERLAPPED lpOverlapped
  11316.     );
  11317.  
  11318.  
  11319. __declspec(dllimport)
  11320.  
  11321. BOOL
  11322. __stdcall
  11323. ReadFileEx(
  11324.          HANDLE hFile,
  11325.                                                                          LPVOID lpBuffer,
  11326.          DWORD nNumberOfBytesToRead,
  11327.             LPOVERLAPPED lpOverlapped,
  11328.          LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  11329.     );
  11330.  
  11331.  
  11332.  
  11333. #pragma endregion
  11334.  
  11335. #pragma region Desktop Family or OneCore Family
  11336.  
  11337.  
  11338. __declspec(dllimport)
  11339.  
  11340. BOOL
  11341. __stdcall
  11342. ReadFileScatter(
  11343.          HANDLE hFile,
  11344.          FILE_SEGMENT_ELEMENT aSegmentArray[],
  11345.          DWORD nNumberOfBytesToRead,
  11346.                LPDWORD lpReserved,
  11347.             LPOVERLAPPED lpOverlapped
  11348.     );
  11349.  
  11350.  
  11351.  
  11352. #pragma endregion
  11353.  
  11354. #pragma region Application Family or OneCore Family
  11355.  
  11356.  
  11357. __declspec(dllimport)
  11358. BOOL
  11359. __stdcall
  11360. RemoveDirectoryA(
  11361.          LPCSTR lpPathName
  11362.     );
  11363.  
  11364. __declspec(dllimport)
  11365. BOOL
  11366. __stdcall
  11367. RemoveDirectoryW(
  11368.          LPCWSTR lpPathName
  11369.     );
  11370.  
  11371.  
  11372.  
  11373.  
  11374.  
  11375.  
  11376.  
  11377. __declspec(dllimport)
  11378. BOOL
  11379. __stdcall
  11380. SetEndOfFile(
  11381.          HANDLE hFile
  11382.     );
  11383.  
  11384.  
  11385. __declspec(dllimport)
  11386. BOOL
  11387. __stdcall
  11388. SetFileAttributesA(
  11389.          LPCSTR lpFileName,
  11390.          DWORD dwFileAttributes
  11391.     );
  11392.  
  11393. __declspec(dllimport)
  11394. BOOL
  11395. __stdcall
  11396. SetFileAttributesW(
  11397.          LPCWSTR lpFileName,
  11398.          DWORD dwFileAttributes
  11399.     );
  11400. # 999 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 3
  11401. __declspec(dllimport)
  11402. BOOL
  11403. __stdcall
  11404. SetFileInformationByHandle(
  11405.          HANDLE hFile,
  11406.          FILE_INFO_BY_HANDLE_CLASS FileInformationClass,
  11407.                                    LPVOID lpFileInformation,
  11408.          DWORD dwBufferSize
  11409.     );
  11410.  
  11411.  
  11412.  
  11413.  
  11414. __declspec(dllimport)
  11415. DWORD
  11416. __stdcall
  11417. SetFilePointer(
  11418.          HANDLE hFile,
  11419.          LONG lDistanceToMove,
  11420.                 PLONG lpDistanceToMoveHigh,
  11421.          DWORD dwMoveMethod
  11422.     );
  11423.  
  11424.  
  11425. __declspec(dllimport)
  11426. BOOL
  11427. __stdcall
  11428. SetFilePointerEx(
  11429.          HANDLE hFile,
  11430.          LARGE_INTEGER liDistanceToMove,
  11431.               PLARGE_INTEGER lpNewFilePointer,
  11432.          DWORD dwMoveMethod
  11433.     );
  11434.  
  11435.  
  11436. __declspec(dllimport)
  11437. BOOL
  11438. __stdcall
  11439. SetFileTime(
  11440.          HANDLE hFile,
  11441.              const FILETIME* lpCreationTime,
  11442.              const FILETIME* lpLastAccessTime,
  11443.              const FILETIME* lpLastWriteTime
  11444.     );
  11445.  
  11446.  
  11447.  
  11448. #pragma endregion
  11449.  
  11450. #pragma region Desktop Family or OneCore Family
  11451.  
  11452.  
  11453.  
  11454.  
  11455. __declspec(dllimport)
  11456. BOOL
  11457. __stdcall
  11458. SetFileValidData(
  11459.          HANDLE hFile,
  11460.          LONGLONG ValidDataLength
  11461.     );
  11462.  
  11463.  
  11464.  
  11465.  
  11466.  
  11467. #pragma endregion
  11468.  
  11469. #pragma region Application Family or OneCore Family
  11470.  
  11471.  
  11472. __declspec(dllimport)
  11473. BOOL
  11474. __stdcall
  11475. UnlockFile(
  11476.          HANDLE hFile,
  11477.          DWORD dwFileOffsetLow,
  11478.          DWORD dwFileOffsetHigh,
  11479.          DWORD nNumberOfBytesToUnlockLow,
  11480.          DWORD nNumberOfBytesToUnlockHigh
  11481.     );
  11482.  
  11483.  
  11484. __declspec(dllimport)
  11485. BOOL
  11486. __stdcall
  11487. UnlockFileEx(
  11488.          HANDLE hFile,
  11489.                DWORD dwReserved,
  11490.          DWORD nNumberOfBytesToUnlockLow,
  11491.          DWORD nNumberOfBytesToUnlockHigh,
  11492.             LPOVERLAPPED lpOverlapped
  11493.     );
  11494.  
  11495.  
  11496. __declspec(dllimport)
  11497. BOOL
  11498. __stdcall
  11499. WriteFile(
  11500.          HANDLE hFile,
  11501.                                                 LPCVOID lpBuffer,
  11502.          DWORD nNumberOfBytesToWrite,
  11503.               LPDWORD lpNumberOfBytesWritten,
  11504.                 LPOVERLAPPED lpOverlapped
  11505.     );
  11506.  
  11507.  
  11508. __declspec(dllimport)
  11509. BOOL
  11510. __stdcall
  11511. WriteFileEx(
  11512.          HANDLE hFile,
  11513.                                                 LPCVOID lpBuffer,
  11514.          DWORD nNumberOfBytesToWrite,
  11515.             LPOVERLAPPED lpOverlapped,
  11516.          LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  11517.     );
  11518.  
  11519.  
  11520.  
  11521. #pragma endregion
  11522.  
  11523. #pragma region Desktop Family or OneCore Family
  11524.  
  11525.  
  11526. __declspec(dllimport)
  11527. BOOL
  11528. __stdcall
  11529. WriteFileGather(
  11530.          HANDLE hFile,
  11531.          FILE_SEGMENT_ELEMENT aSegmentArray[],
  11532.          DWORD nNumberOfBytesToWrite,
  11533.                LPDWORD lpReserved,
  11534.             LPOVERLAPPED lpOverlapped
  11535.     );
  11536.  
  11537.  
  11538.  
  11539. #pragma endregion
  11540.  
  11541. #pragma region Application Family or OneCore Family
  11542.  
  11543.  
  11544. __declspec(dllimport)
  11545. DWORD
  11546. __stdcall
  11547. GetTempPathW(
  11548.          DWORD nBufferLength,
  11549.                                                   LPWSTR lpBuffer
  11550.     );
  11551.  
  11552.  
  11553.  
  11554.  
  11555.  
  11556.  
  11557.  
  11558. #pragma endregion
  11559.  
  11560. #pragma region Desktop Family or OneCore Family
  11561.  
  11562.  
  11563. __declspec(dllimport)
  11564. BOOL
  11565. __stdcall
  11566. GetVolumeNameForVolumeMountPointW(
  11567.          LPCWSTR lpszVolumeMountPoint,
  11568.                                   LPWSTR lpszVolumeName,
  11569.          DWORD cchBufferLength
  11570.     );
  11571. # 1177 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 3
  11572. __declspec(dllimport)
  11573. BOOL
  11574. __stdcall
  11575. GetVolumePathNamesForVolumeNameW(
  11576.          LPCWSTR lpszVolumeName,
  11577.                                                                                          LPWCH lpszVolumePathNames,
  11578.          DWORD cchBufferLength,
  11579.           PDWORD lpcchReturnLength
  11580.     );
  11581. # 1195 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 3
  11582. #pragma endregion
  11583.  
  11584. #pragma region Application Family or OneCore Family
  11585.  
  11586.  
  11587.  
  11588.  
  11589. typedef struct _CREATEFILE2_EXTENDED_PARAMETERS {
  11590.     DWORD dwSize;
  11591.     DWORD dwFileAttributes;
  11592.     DWORD dwFileFlags;
  11593.     DWORD dwSecurityQosFlags;
  11594.     LPSECURITY_ATTRIBUTES lpSecurityAttributes;
  11595.     HANDLE hTemplateFile;
  11596. } CREATEFILE2_EXTENDED_PARAMETERS, *PCREATEFILE2_EXTENDED_PARAMETERS, *LPCREATEFILE2_EXTENDED_PARAMETERS;
  11597.  
  11598. __declspec(dllimport)
  11599. HANDLE
  11600. __stdcall
  11601. CreateFile2(
  11602.          LPCWSTR lpFileName,
  11603.          DWORD dwDesiredAccess,
  11604.          DWORD dwShareMode,
  11605.          DWORD dwCreationDisposition,
  11606.              LPCREATEFILE2_EXTENDED_PARAMETERS pCreateExParams
  11607.     );
  11608.  
  11609.  
  11610.  
  11611.  
  11612.  
  11613. #pragma endregion
  11614.  
  11615. #pragma region Desktop Family or OneCore Family
  11616.  
  11617.  
  11618.  
  11619.  
  11620. __declspec(dllimport)
  11621. BOOL
  11622. __stdcall
  11623. SetFileIoOverlappedRange(
  11624.          HANDLE FileHandle,
  11625.          PUCHAR OverlappedRangeStart,
  11626.          ULONG Length
  11627.     );
  11628.  
  11629.  
  11630.  
  11631.  
  11632.  
  11633. #pragma endregion
  11634.  
  11635. #pragma region Desktop Family or OneCore Family
  11636.  
  11637.  
  11638.  
  11639.  
  11640. __declspec(dllimport)
  11641. DWORD
  11642. __stdcall
  11643. GetCompressedFileSizeA(
  11644.          LPCSTR lpFileName,
  11645.               LPDWORD lpFileSizeHigh
  11646.     );
  11647.  
  11648. __declspec(dllimport)
  11649. DWORD
  11650. __stdcall
  11651. GetCompressedFileSizeW(
  11652.          LPCWSTR lpFileName,
  11653.               LPDWORD lpFileSizeHigh
  11654.     );
  11655. # 1278 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fileapi.h" 3
  11656. #pragma endregion
  11657.  
  11658. #pragma region Desktop Family or OneCore Family
  11659.  
  11660.  
  11661.  
  11662.  
  11663. typedef enum _STREAM_INFO_LEVELS {
  11664.  
  11665.     FindStreamInfoStandard,
  11666.     FindStreamInfoMaxInfoLevel
  11667.  
  11668. } STREAM_INFO_LEVELS;
  11669.  
  11670. typedef struct _WIN32_FIND_STREAM_DATA {
  11671.  
  11672.     LARGE_INTEGER StreamSize;
  11673.     WCHAR cStreamName[ 260 + 36 ];
  11674.  
  11675. } WIN32_FIND_STREAM_DATA, *PWIN32_FIND_STREAM_DATA;
  11676.  
  11677. __declspec(dllimport)
  11678. HANDLE
  11679. __stdcall
  11680. FindFirstStreamW(
  11681.          LPCWSTR lpFileName,
  11682.          STREAM_INFO_LEVELS InfoLevel,
  11683.                                                        LPVOID lpFindStreamData,
  11684.                DWORD dwFlags
  11685.     );
  11686.  
  11687.  
  11688. __declspec(dllimport)
  11689. BOOL
  11690. __stdcall
  11691. FindNextStreamW(
  11692.          HANDLE hFindStream,
  11693.                                                        LPVOID lpFindStreamData
  11694.     );
  11695.  
  11696.  
  11697.  
  11698.  
  11699. __declspec(dllimport)
  11700. BOOL
  11701. __stdcall
  11702. AreFileApisANSI(
  11703.     void
  11704.     );
  11705.  
  11706.  
  11707.  
  11708. #pragma endregion
  11709.  
  11710. #pragma region Application Family or OneCore Family
  11711.  
  11712.  
  11713. __declspec(dllimport)
  11714. DWORD
  11715. __stdcall
  11716. GetTempPathA(
  11717.          DWORD nBufferLength,
  11718.                                                   LPSTR lpBuffer
  11719.     );
  11720.  
  11721.  
  11722.  
  11723.  
  11724.  
  11725.  
  11726.  
  11727. #pragma endregion
  11728.  
  11729. #pragma region Desktop Family or OneCore Family
  11730.  
  11731.  
  11732.  
  11733.  
  11734. __declspec(dllimport)
  11735. HANDLE
  11736. __stdcall
  11737. FindFirstFileNameW(
  11738.          LPCWSTR lpFileName,
  11739.          DWORD dwFlags,
  11740.             LPDWORD StringLength,
  11741.                                 PWSTR LinkName
  11742.     );
  11743.  
  11744.  
  11745. __declspec(dllimport)
  11746. BOOL
  11747. __stdcall
  11748. FindNextFileNameW(
  11749.          HANDLE hFindStream,
  11750.             LPDWORD StringLength,
  11751.                                 PWSTR LinkName
  11752.     );
  11753.  
  11754.  
  11755.  
  11756.  
  11757.  
  11758. #pragma endregion
  11759.  
  11760. #pragma region Application Family or OneCore Family
  11761.  
  11762.  
  11763. __declspec(dllimport)
  11764. BOOL
  11765. __stdcall
  11766. GetVolumeInformationA(
  11767.              LPCSTR lpRootPathName,
  11768.                                       LPSTR lpVolumeNameBuffer,
  11769.          DWORD nVolumeNameSize,
  11770.               LPDWORD lpVolumeSerialNumber,
  11771.               LPDWORD lpMaximumComponentLength,
  11772.               LPDWORD lpFileSystemFlags,
  11773.                                           LPSTR lpFileSystemNameBuffer,
  11774.          DWORD nFileSystemNameSize
  11775.     );
  11776.  
  11777.  
  11778.  
  11779.  
  11780.  
  11781.  
  11782. __declspec(dllimport)
  11783. UINT
  11784. __stdcall
  11785. GetTempFileNameA(
  11786.          LPCSTR lpPathName,
  11787.          LPCSTR lpPrefixString,
  11788.          UINT uUnique,
  11789.                            LPSTR lpTempFileName
  11790.     );
  11791.  
  11792.  
  11793.  
  11794.  
  11795.  
  11796.  
  11797. #pragma endregion
  11798.  
  11799. #pragma region Desktop Family or OneCore Family
  11800.  
  11801.  
  11802. __declspec(dllimport)
  11803. void
  11804. __stdcall
  11805. SetFileApisToOEM(
  11806.     void
  11807.     );
  11808.  
  11809.  
  11810. __declspec(dllimport)
  11811. void
  11812. __stdcall
  11813. SetFileApisToANSI(
  11814.     void
  11815.     );
  11816.  
  11817.  
  11818.  
  11819. #pragma endregion
  11820.  
  11821.  
  11822.  
  11823.  
  11824.  
  11825.  
  11826. #pragma option pop
  11827. # 47 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  11828.  
  11829. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\debugapi.h" 1 3
  11830. #pragma option push -b -a8 -pc -A- -w-pun
  11831. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\debugapi.h" 3
  11832. #pragma region Application Family or OneCore Family
  11833.  
  11834.  
  11835.  
  11836. __declspec(dllimport)
  11837. BOOL
  11838. __stdcall
  11839. IsDebuggerPresent(
  11840.     void
  11841.     );
  11842.  
  11843.  
  11844.  
  11845.  
  11846. #pragma endregion
  11847.  
  11848. #pragma region Application Family or OneCore Family
  11849.  
  11850.  
  11851. __declspec(dllimport)
  11852. void
  11853. __stdcall
  11854. DebugBreak(
  11855.     void
  11856.     );
  11857.  
  11858.  
  11859. __declspec(dllimport)
  11860. void
  11861. __stdcall
  11862. OutputDebugStringA(
  11863.              LPCSTR lpOutputString
  11864.     );
  11865.  
  11866. __declspec(dllimport)
  11867. void
  11868. __stdcall
  11869. OutputDebugStringW(
  11870.              LPCWSTR lpOutputString
  11871.     );
  11872.  
  11873.  
  11874.  
  11875.  
  11876.  
  11877.  
  11878.  
  11879.  
  11880. #pragma endregion
  11881.  
  11882. #pragma region Desktop Family or OneCore Family
  11883.  
  11884.  
  11885. __declspec(dllimport)
  11886. BOOL
  11887. __stdcall
  11888. ContinueDebugEvent(
  11889.          DWORD dwProcessId,
  11890.          DWORD dwThreadId,
  11891.          DWORD dwContinueStatus
  11892.     );
  11893.  
  11894.  
  11895. __declspec(dllimport)
  11896. BOOL
  11897. __stdcall
  11898. WaitForDebugEvent(
  11899.           LPDEBUG_EVENT lpDebugEvent,
  11900.          DWORD dwMilliseconds
  11901.     );
  11902.  
  11903.  
  11904. __declspec(dllimport)
  11905. BOOL
  11906. __stdcall
  11907. DebugActiveProcess(
  11908.          DWORD dwProcessId
  11909.     );
  11910.  
  11911.  
  11912. __declspec(dllimport)
  11913. BOOL
  11914. __stdcall
  11915. DebugActiveProcessStop(
  11916.          DWORD dwProcessId
  11917.     );
  11918.  
  11919.  
  11920.  
  11921.  
  11922. __declspec(dllimport)
  11923. BOOL
  11924. __stdcall
  11925. CheckRemoteDebuggerPresent(
  11926.          HANDLE hProcess,
  11927.           PBOOL pbDebuggerPresent
  11928.     );
  11929.  
  11930.  
  11931.  
  11932.  
  11933.  
  11934. #pragma endregion
  11935.  
  11936. #pragma region Desktop Family or OneCore Family
  11937.  
  11938.  
  11939. __declspec(dllimport)
  11940. BOOL
  11941. __stdcall
  11942. WaitForDebugEventEx(
  11943.           LPDEBUG_EVENT lpDebugEvent,
  11944.          DWORD dwMilliseconds
  11945.     );
  11946.  
  11947.  
  11948.  
  11949. #pragma endregion
  11950.  
  11951.  
  11952.  
  11953.  
  11954.  
  11955.  
  11956. #pragma option pop
  11957. # 48 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  11958.  
  11959. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\utilapiset.h" 1 3
  11960. #pragma option push -b -a8 -pc -A- -w-pun
  11961. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\utilapiset.h" 3
  11962. #pragma region Application Family or OneCore Family
  11963.  
  11964.  
  11965. __declspec(dllimport)
  11966.  
  11967. PVOID
  11968. __stdcall
  11969. EncodePointer(
  11970.              PVOID Ptr
  11971.     );
  11972.  
  11973.  
  11974. __declspec(dllimport)
  11975.  
  11976. PVOID
  11977. __stdcall
  11978. DecodePointer(
  11979.              PVOID Ptr
  11980.     );
  11981.  
  11982.  
  11983.  
  11984. #pragma endregion
  11985.  
  11986. #pragma region Desktop Family or OneCore Family
  11987.  
  11988.  
  11989. __declspec(dllimport)
  11990.  
  11991. PVOID
  11992. __stdcall
  11993. EncodeSystemPointer(
  11994.              PVOID Ptr
  11995.     );
  11996.  
  11997.  
  11998. __declspec(dllimport)
  11999.  
  12000. PVOID
  12001. __stdcall
  12002. DecodeSystemPointer(
  12003.              PVOID Ptr
  12004.     );
  12005.  
  12006.  
  12007. __declspec(dllimport)
  12008. HRESULT
  12009. __stdcall
  12010. EncodeRemotePointer(
  12011.          HANDLE ProcessHandle,
  12012.              PVOID Ptr,
  12013.           PVOID* EncodedPtr
  12014.     );
  12015.  
  12016.  
  12017. __declspec(dllimport)
  12018. HRESULT
  12019. __stdcall
  12020. DecodeRemotePointer(
  12021.          HANDLE ProcessHandle,
  12022.              PVOID Ptr,
  12023.           PVOID* DecodedPtr
  12024.     );
  12025.  
  12026.  
  12027.  
  12028. #pragma endregion
  12029.  
  12030. #pragma region PC Family or OneCore Family
  12031.  
  12032.  
  12033. __declspec(dllimport)
  12034. BOOL
  12035. __stdcall
  12036. Beep(
  12037.          DWORD dwFreq,
  12038.          DWORD dwDuration
  12039.     );
  12040.  
  12041.  
  12042.  
  12043. #pragma endregion
  12044.  
  12045.  
  12046.  
  12047.  
  12048.  
  12049.  
  12050. #pragma option pop
  12051. # 49 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  12052.  
  12053. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\handleapi.h" 1 3
  12054. #pragma option push -b -a8 -pc -A- -w-pun
  12055. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\handleapi.h" 3
  12056. #pragma region Application Family or OneCore Family
  12057.  
  12058.  
  12059.  
  12060.  
  12061.  
  12062. __declspec(dllimport)
  12063. BOOL
  12064. __stdcall
  12065. CloseHandle(
  12066.                             HANDLE hObject
  12067.     );
  12068.  
  12069.  
  12070. __declspec(dllimport)
  12071. BOOL
  12072. __stdcall
  12073. DuplicateHandle(
  12074.          HANDLE hSourceProcessHandle,
  12075.          HANDLE hSourceHandle,
  12076.          HANDLE hTargetProcessHandle,
  12077.              LPHANDLE lpTargetHandle,
  12078.          DWORD dwDesiredAccess,
  12079.          BOOL bInheritHandle,
  12080.          DWORD dwOptions
  12081.     );
  12082.  
  12083.  
  12084. __declspec(dllimport)
  12085. BOOL
  12086. __stdcall
  12087. CompareObjectHandles(
  12088.          HANDLE hFirstObjectHandle,
  12089.          HANDLE hSecondObjectHandle
  12090.     );
  12091.  
  12092.  
  12093.  
  12094. #pragma endregion
  12095.  
  12096. #pragma region Desktop Family or OneCore Family
  12097.  
  12098.  
  12099. __declspec(dllimport)
  12100. BOOL
  12101. __stdcall
  12102. GetHandleInformation(
  12103.          HANDLE hObject,
  12104.           LPDWORD lpdwFlags
  12105.     );
  12106.  
  12107.  
  12108. __declspec(dllimport)
  12109. BOOL
  12110. __stdcall
  12111. SetHandleInformation(
  12112.          HANDLE hObject,
  12113.          DWORD dwMask,
  12114.          DWORD dwFlags
  12115.     );
  12116.  
  12117.  
  12118.  
  12119. #pragma endregion
  12120.  
  12121.  
  12122.  
  12123.  
  12124.  
  12125.  
  12126. #pragma option pop
  12127. # 50 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  12128.  
  12129. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\errhandlingapi.h" 1 3
  12130. #pragma option push -b -a8 -pc -A- -w-pun
  12131. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\errhandlingapi.h" 3
  12132. #pragma region Application Family or OneCore Family
  12133.  
  12134.  
  12135.  
  12136.  
  12137.  
  12138.  
  12139. typedef LONG (__stdcall *PTOP_LEVEL_EXCEPTION_FILTER)(
  12140.          struct _EXCEPTION_POINTERS *ExceptionInfo
  12141.     );
  12142.  
  12143. typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER;
  12144.  
  12145.  
  12146.  
  12147.  
  12148.  
  12149. __declspec(dllimport)
  12150.  
  12151. void
  12152. __stdcall
  12153. RaiseException(
  12154.          DWORD dwExceptionCode,
  12155.          DWORD dwExceptionFlags,
  12156.          DWORD nNumberOfArguments,
  12157.                                        const ULONG_PTR* lpArguments
  12158.     );
  12159.  
  12160.  
  12161.  
  12162. #pragma endregion
  12163.  
  12164. #pragma region Desktop Family or OneCore Family
  12165.  
  12166.  
  12167.  
  12168. __declspec(dllimport)
  12169. LONG
  12170. __stdcall
  12171. UnhandledExceptionFilter(
  12172.          struct _EXCEPTION_POINTERS* ExceptionInfo
  12173.     );
  12174.  
  12175.  
  12176.  
  12177. #pragma endregion
  12178.  
  12179. #pragma region Application Family or OneCore Family
  12180.  
  12181.  
  12182. __declspec(dllimport)
  12183. LPTOP_LEVEL_EXCEPTION_FILTER
  12184. __stdcall
  12185. SetUnhandledExceptionFilter(
  12186.              LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter
  12187.     );
  12188.  
  12189.  
  12190.  
  12191.  
  12192. __declspec(dllimport)
  12193.  
  12194.  
  12195. DWORD
  12196. __stdcall
  12197. GetLastError(
  12198.     void
  12199.     );
  12200.  
  12201.  
  12202.  
  12203.  
  12204. __declspec(dllimport)
  12205. void
  12206. __stdcall
  12207. SetLastError(
  12208.          DWORD dwErrCode
  12209.     );
  12210.  
  12211.  
  12212.  
  12213. #pragma endregion
  12214.  
  12215. #pragma region Desktop Family or OneCore Family
  12216.  
  12217.  
  12218.  
  12219.  
  12220. __declspec(dllimport)
  12221. UINT
  12222. __stdcall
  12223. GetErrorMode(
  12224.     void
  12225.     );
  12226.  
  12227.  
  12228.  
  12229.  
  12230.  
  12231. #pragma endregion
  12232.  
  12233. #pragma region Application Family or OneCore Family
  12234.  
  12235.  
  12236. __declspec(dllimport)
  12237. UINT
  12238. __stdcall
  12239. SetErrorMode(
  12240.          UINT uMode
  12241.     );
  12242.  
  12243.  
  12244.  
  12245. #pragma endregion
  12246.  
  12247. #pragma region Desktop Family or OneCore Family
  12248.  
  12249.  
  12250.  
  12251.  
  12252. __declspec(dllimport)
  12253.  
  12254. PVOID
  12255. __stdcall
  12256. AddVectoredExceptionHandler(
  12257.          ULONG First,
  12258.          PVECTORED_EXCEPTION_HANDLER Handler
  12259.     );
  12260.  
  12261.  
  12262. __declspec(dllimport)
  12263. ULONG
  12264. __stdcall
  12265. RemoveVectoredExceptionHandler(
  12266.          PVOID Handle
  12267.     );
  12268.  
  12269.  
  12270. __declspec(dllimport)
  12271.  
  12272. PVOID
  12273. __stdcall
  12274. AddVectoredContinueHandler(
  12275.          ULONG First,
  12276.          PVECTORED_EXCEPTION_HANDLER Handler
  12277.     );
  12278.  
  12279.  
  12280. __declspec(dllimport)
  12281. ULONG
  12282. __stdcall
  12283. RemoveVectoredContinueHandler(
  12284.          PVOID Handle
  12285.     );
  12286. # 205 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\errhandlingapi.h" 3
  12287. #pragma endregion
  12288.  
  12289. #pragma region Application Family or OneCore Family
  12290.  
  12291.  
  12292. __declspec(dllimport)
  12293. void
  12294. __stdcall
  12295. RaiseFailFastException(
  12296.              PEXCEPTION_RECORD pExceptionRecord,
  12297.              PCONTEXT pContextRecord,
  12298.          DWORD dwFlags
  12299.     );
  12300.  
  12301.  
  12302.  
  12303. #pragma endregion
  12304.  
  12305. #pragma region Desktop Family or OneCore Family
  12306.  
  12307.  
  12308. __declspec(dllimport)
  12309. void
  12310. __stdcall
  12311. FatalAppExitA(
  12312.          UINT uAction,
  12313.          LPCSTR lpMessageText
  12314.     );
  12315.  
  12316. __declspec(dllimport)
  12317. void
  12318. __stdcall
  12319. FatalAppExitW(
  12320.          UINT uAction,
  12321.          LPCWSTR lpMessageText
  12322.     );
  12323.  
  12324.  
  12325.  
  12326.  
  12327.  
  12328.  
  12329.  
  12330.  
  12331. #pragma endregion
  12332.  
  12333. #pragma region Application Family or OneCore Family
  12334.  
  12335.  
  12336. __declspec(dllimport)
  12337. DWORD
  12338. __stdcall
  12339. GetThreadErrorMode(
  12340.     void
  12341.     );
  12342.  
  12343.  
  12344. __declspec(dllimport)
  12345. BOOL
  12346. __stdcall
  12347. SetThreadErrorMode(
  12348.          DWORD dwNewMode,
  12349.              LPDWORD lpOldMode
  12350.     );
  12351.  
  12352.  
  12353.  
  12354. #pragma endregion
  12355.  
  12356. #pragma region Desktop Family or OneCore Family
  12357.  
  12358.  
  12359. __declspec(dllimport)
  12360. void
  12361. __stdcall
  12362. TerminateProcessOnMemoryExhaustion(
  12363.          SIZE_T FailedAllocationSize
  12364.     );
  12365.  
  12366.  
  12367.  
  12368. #pragma endregion
  12369.  
  12370.  
  12371.  
  12372.  
  12373.  
  12374.  
  12375. #pragma option pop
  12376. # 51 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  12377.  
  12378. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fibersapi.h" 1 3
  12379. #pragma option push -b -a8 -pc -A- -w-pun
  12380. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\fibersapi.h" 3
  12381. #pragma region Application Family or OneCore Family
  12382.  
  12383.  
  12384.  
  12385.  
  12386.  
  12387.  
  12388.  
  12389.  
  12390. __declspec(dllimport)
  12391. DWORD
  12392. __stdcall
  12393. FlsAlloc(
  12394.              PFLS_CALLBACK_FUNCTION lpCallback
  12395.     );
  12396.  
  12397.  
  12398. __declspec(dllimport)
  12399. PVOID
  12400. __stdcall
  12401. FlsGetValue(
  12402.          DWORD dwFlsIndex
  12403.     );
  12404.  
  12405.  
  12406. __declspec(dllimport)
  12407. BOOL
  12408. __stdcall
  12409. FlsSetValue(
  12410.          DWORD dwFlsIndex,
  12411.              PVOID lpFlsData
  12412.     );
  12413.  
  12414.  
  12415. __declspec(dllimport)
  12416. BOOL
  12417. __stdcall
  12418. FlsFree(
  12419.          DWORD dwFlsIndex
  12420.     );
  12421.  
  12422.  
  12423.  
  12424.  
  12425.  
  12426. #pragma endregion
  12427.  
  12428. #pragma region Application Family or OneCore Family
  12429.  
  12430.  
  12431.  
  12432.  
  12433. __declspec(dllimport)
  12434. BOOL
  12435. __stdcall
  12436. IsThreadAFiber(
  12437.     void
  12438.     );
  12439.  
  12440.  
  12441.  
  12442.  
  12443.  
  12444. #pragma endregion
  12445.  
  12446.  
  12447.  
  12448.  
  12449.  
  12450.  
  12451. #pragma option pop
  12452. # 52 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  12453.  
  12454. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\namedpipeapi.h" 1 3
  12455. #pragma option push -b -a8 -pc -A- -w-pun
  12456. # 28 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\namedpipeapi.h" 3
  12457. __declspec(dllimport)
  12458. BOOL
  12459. __stdcall
  12460. CreatePipe(
  12461.           PHANDLE hReadPipe,
  12462.           PHANDLE hWritePipe,
  12463.              LPSECURITY_ATTRIBUTES lpPipeAttributes,
  12464.          DWORD nSize
  12465.     );
  12466.  
  12467.  
  12468. __declspec(dllimport)
  12469. BOOL
  12470. __stdcall
  12471. ConnectNamedPipe(
  12472.          HANDLE hNamedPipe,
  12473.                 LPOVERLAPPED lpOverlapped
  12474.     );
  12475.  
  12476.  
  12477. __declspec(dllimport)
  12478. BOOL
  12479. __stdcall
  12480. DisconnectNamedPipe(
  12481.          HANDLE hNamedPipe
  12482.     );
  12483.  
  12484.  
  12485. __declspec(dllimport)
  12486. BOOL
  12487. __stdcall
  12488. SetNamedPipeHandleState(
  12489.          HANDLE hNamedPipe,
  12490.              LPDWORD lpMode,
  12491.              LPDWORD lpMaxCollectionCount,
  12492.              LPDWORD lpCollectDataTimeout
  12493.     );
  12494.  
  12495.  
  12496. __declspec(dllimport)
  12497. BOOL
  12498. __stdcall
  12499. PeekNamedPipe(
  12500.          HANDLE hNamedPipe,
  12501.                                                         LPVOID lpBuffer,
  12502.          DWORD nBufferSize,
  12503.               LPDWORD lpBytesRead,
  12504.               LPDWORD lpTotalBytesAvail,
  12505.               LPDWORD lpBytesLeftThisMessage
  12506.     );
  12507.  
  12508.  
  12509. __declspec(dllimport)
  12510. BOOL
  12511. __stdcall
  12512. TransactNamedPipe(
  12513.          HANDLE hNamedPipe,
  12514.                                         LPVOID lpInBuffer,
  12515.          DWORD nInBufferSize,
  12516.                                                            LPVOID lpOutBuffer,
  12517.          DWORD nOutBufferSize,
  12518.           LPDWORD lpBytesRead,
  12519.                 LPOVERLAPPED lpOverlapped
  12520.     );
  12521.  
  12522.  
  12523. __declspec(dllimport)
  12524. HANDLE
  12525. __stdcall
  12526. CreateNamedPipeW(
  12527.          LPCWSTR lpName,
  12528.          DWORD dwOpenMode,
  12529.          DWORD dwPipeMode,
  12530.          DWORD nMaxInstances,
  12531.          DWORD nOutBufferSize,
  12532.          DWORD nInBufferSize,
  12533.          DWORD nDefaultTimeOut,
  12534.              LPSECURITY_ATTRIBUTES lpSecurityAttributes
  12535.     );
  12536.  
  12537.  
  12538.  
  12539.  
  12540.  
  12541.  
  12542. __declspec(dllimport)
  12543. BOOL
  12544. __stdcall
  12545. WaitNamedPipeW(
  12546.          LPCWSTR lpNamedPipeName,
  12547.          DWORD nTimeOut
  12548.     );
  12549. # 128 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\namedpipeapi.h" 3
  12550. __declspec(dllimport)
  12551. BOOL
  12552. __stdcall
  12553. GetNamedPipeClientComputerNameW(
  12554.          HANDLE Pipe,
  12555.                                                  LPWSTR ClientComputerName,
  12556.          ULONG ClientComputerNameLength
  12557.     );
  12558. # 144 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\namedpipeapi.h" 3
  12559. __declspec(dllimport)
  12560.  
  12561. BOOL
  12562. __stdcall
  12563. ImpersonateNamedPipeClient(
  12564.          HANDLE hNamedPipe
  12565.     );
  12566.  
  12567.  
  12568.  
  12569.  
  12570.  
  12571. #pragma region Application Family or OneCore Family
  12572.  
  12573.  
  12574. __declspec(dllimport)
  12575. BOOL
  12576. __stdcall
  12577. GetNamedPipeInfo(
  12578.          HANDLE hNamedPipe,
  12579.               LPDWORD lpFlags,
  12580.               LPDWORD lpOutBufferSize,
  12581.               LPDWORD lpInBufferSize,
  12582.               LPDWORD lpMaxInstances
  12583.     );
  12584.  
  12585.  
  12586. __declspec(dllimport)
  12587. BOOL
  12588. __stdcall
  12589. GetNamedPipeHandleStateW(
  12590.          HANDLE hNamedPipe,
  12591.               LPDWORD lpState,
  12592.               LPDWORD lpCurInstances,
  12593.               LPDWORD lpMaxCollectionCount,
  12594.               LPDWORD lpCollectDataTimeout,
  12595.                                        LPWSTR lpUserName,
  12596.          DWORD nMaxUserNameSize
  12597.     );
  12598.  
  12599.  
  12600.  
  12601.  
  12602.  
  12603.  
  12604. #pragma endregion
  12605.  
  12606. #pragma region Application Family or OneCore Family
  12607.  
  12608.  
  12609. __declspec(dllimport)
  12610. BOOL
  12611. __stdcall
  12612. CallNamedPipeW(
  12613.          LPCWSTR lpNamedPipeName,
  12614.                                         LPVOID lpInBuffer,
  12615.          DWORD nInBufferSize,
  12616.                                                            LPVOID lpOutBuffer,
  12617.          DWORD nOutBufferSize,
  12618.           LPDWORD lpBytesRead,
  12619.          DWORD nTimeOut
  12620.     );
  12621.  
  12622.  
  12623.  
  12624.  
  12625.  
  12626.  
  12627.  
  12628. #pragma endregion
  12629.  
  12630.  
  12631.  
  12632.  
  12633.  
  12634.  
  12635.  
  12636. #pragma option pop
  12637. # 53 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  12638.  
  12639. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\profileapi.h" 1 3
  12640. #pragma option push -b -a8 -pc -A- -w-pun
  12641. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\profileapi.h" 3
  12642. #pragma region Application Family or OneCore Family
  12643.  
  12644.  
  12645.  
  12646.  
  12647.  
  12648.  
  12649. __declspec(dllimport)
  12650. BOOL
  12651. __stdcall
  12652. QueryPerformanceCounter(
  12653.           LARGE_INTEGER* lpPerformanceCount
  12654.     );
  12655.  
  12656.  
  12657. __declspec(dllimport)
  12658. BOOL
  12659. __stdcall
  12660. QueryPerformanceFrequency(
  12661.           LARGE_INTEGER* lpFrequency
  12662.     );
  12663.  
  12664.  
  12665.  
  12666. #pragma endregion
  12667.  
  12668.  
  12669.  
  12670.  
  12671.  
  12672.  
  12673. #pragma option pop
  12674. # 54 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  12675.  
  12676. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\heapapi.h" 1 3
  12677. #pragma option push -b -a8 -pc -A- -w-pun
  12678. # 37 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\heapapi.h" 3
  12679. #pragma region Desktop Family or OneCore Family
  12680.  
  12681.  
  12682.  
  12683.  
  12684.  
  12685.  
  12686. typedef struct _HEAP_SUMMARY {
  12687.     DWORD cb;
  12688.     SIZE_T cbAllocated;
  12689.     SIZE_T cbCommitted;
  12690.     SIZE_T cbReserved;
  12691.     SIZE_T cbMaxReserve;
  12692. } HEAP_SUMMARY, *PHEAP_SUMMARY;
  12693. typedef PHEAP_SUMMARY LPHEAP_SUMMARY;
  12694.  
  12695.  
  12696. #pragma endregion
  12697.  
  12698. #pragma region Application Family or OneCore Family
  12699.  
  12700.  
  12701.  
  12702.  
  12703.  
  12704.  
  12705. __declspec(dllimport)
  12706.  
  12707. HANDLE
  12708. __stdcall
  12709. HeapCreate(
  12710.          DWORD flOptions,
  12711.          SIZE_T dwInitialSize,
  12712.          SIZE_T dwMaximumSize
  12713.     );
  12714.  
  12715.  
  12716. __declspec(dllimport)
  12717. BOOL
  12718. __stdcall
  12719. HeapDestroy(
  12720.          HANDLE hHeap
  12721.     );
  12722.  
  12723.  
  12724. __declspec(dllimport)
  12725.  
  12726.  
  12727.  
  12728. LPVOID
  12729. __stdcall
  12730. HeapAlloc(
  12731.          HANDLE hHeap,
  12732.          DWORD dwFlags,
  12733.          SIZE_T dwBytes
  12734.     );
  12735.  
  12736.  
  12737. __declspec(dllimport)
  12738.  
  12739.  
  12740.  
  12741.  
  12742. LPVOID
  12743. __stdcall
  12744. HeapReAlloc(
  12745.             HANDLE hHeap,
  12746.          DWORD dwFlags,
  12747.                     LPVOID lpMem,
  12748.          SIZE_T dwBytes
  12749.     );
  12750.  
  12751.  
  12752. __declspec(dllimport)
  12753.  
  12754. BOOL
  12755. __stdcall
  12756. HeapFree(
  12757.             HANDLE hHeap,
  12758.          DWORD dwFlags,
  12759.                                         LPVOID lpMem
  12760.     );
  12761.  
  12762.  
  12763. __declspec(dllimport)
  12764. SIZE_T
  12765. __stdcall
  12766. HeapSize(
  12767.          HANDLE hHeap,
  12768.          DWORD dwFlags,
  12769.          LPCVOID lpMem
  12770.     );
  12771.  
  12772.  
  12773. __declspec(dllimport)
  12774. HANDLE
  12775. __stdcall
  12776. GetProcessHeap(
  12777.     void
  12778.     );
  12779.  
  12780.  
  12781. __declspec(dllimport)
  12782. SIZE_T
  12783. __stdcall
  12784. HeapCompact(
  12785.          HANDLE hHeap,
  12786.          DWORD dwFlags
  12787.     );
  12788.  
  12789.  
  12790. __declspec(dllimport)
  12791. BOOL
  12792. __stdcall
  12793. HeapSetInformation(
  12794.              HANDLE HeapHandle,
  12795.          HEAP_INFORMATION_CLASS HeapInformationClass,
  12796.                                                 PVOID HeapInformation,
  12797.          SIZE_T HeapInformationLength
  12798.     );
  12799.  
  12800.  
  12801.  
  12802. #pragma endregion
  12803.  
  12804. #pragma region Desktop Family or OneCore Family
  12805.  
  12806.  
  12807. __declspec(dllimport)
  12808. BOOL
  12809. __stdcall
  12810. HeapValidate(
  12811.          HANDLE hHeap,
  12812.          DWORD dwFlags,
  12813.              LPCVOID lpMem
  12814.     );
  12815.  
  12816.  
  12817.  
  12818. #pragma endregion
  12819.  
  12820. #pragma region Desktop Family
  12821.  
  12822.  
  12823. BOOL
  12824. __stdcall
  12825. HeapSummary(
  12826.          HANDLE hHeap,
  12827.          DWORD dwFlags,
  12828.           LPHEAP_SUMMARY lpSummary
  12829.     );
  12830.  
  12831.  
  12832.  
  12833. #pragma endregion
  12834.  
  12835. #pragma region Desktop Family or OneCore Family
  12836.  
  12837.  
  12838. __declspec(dllimport)
  12839. DWORD
  12840. __stdcall
  12841. GetProcessHeaps(
  12842.          DWORD NumberOfHeaps,
  12843.                                           PHANDLE ProcessHeaps
  12844.     );
  12845.  
  12846.  
  12847. __declspec(dllimport)
  12848. BOOL
  12849. __stdcall
  12850. HeapLock(
  12851.          HANDLE hHeap
  12852.     );
  12853.  
  12854.  
  12855. __declspec(dllimport)
  12856. BOOL
  12857. __stdcall
  12858. HeapUnlock(
  12859.          HANDLE hHeap
  12860.     );
  12861.  
  12862.  
  12863. __declspec(dllimport)
  12864. BOOL
  12865. __stdcall
  12866. HeapWalk(
  12867.          HANDLE hHeap,
  12868.             LPPROCESS_HEAP_ENTRY lpEntry
  12869.     );
  12870.  
  12871.  
  12872. __declspec(dllimport)
  12873. BOOL
  12874. __stdcall
  12875. HeapQueryInformation(
  12876.              HANDLE HeapHandle,
  12877.          HEAP_INFORMATION_CLASS HeapInformationClass,
  12878.                                                                    PVOID HeapInformation,
  12879.          SIZE_T HeapInformationLength,
  12880.               PSIZE_T ReturnLength
  12881.     );
  12882.  
  12883.  
  12884.  
  12885. #pragma endregion
  12886. # 258 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\heapapi.h" 3
  12887. #pragma option pop
  12888. # 55 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  12889.  
  12890. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ioapiset.h" 1 3
  12891. #pragma option push -b -a8 -pc -A- -w-pun
  12892. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ioapiset.h" 3
  12893. #pragma region Application Family or OneCore Family
  12894.  
  12895.  
  12896. __declspec(dllimport)
  12897.  
  12898. HANDLE
  12899. __stdcall
  12900. CreateIoCompletionPort(
  12901.          HANDLE FileHandle,
  12902.              HANDLE ExistingCompletionPort,
  12903.          ULONG_PTR CompletionKey,
  12904.          DWORD NumberOfConcurrentThreads
  12905.     );
  12906.  
  12907.  
  12908. __declspec(dllimport)
  12909. BOOL
  12910. __stdcall
  12911. GetQueuedCompletionStatus(
  12912.          HANDLE CompletionPort,
  12913.           LPDWORD lpNumberOfBytesTransferred,
  12914.           PULONG_PTR lpCompletionKey,
  12915.           LPOVERLAPPED* lpOverlapped,
  12916.          DWORD dwMilliseconds
  12917.     );
  12918.  
  12919.  
  12920.  
  12921.  
  12922. __declspec(dllimport)
  12923. BOOL
  12924. __stdcall
  12925. GetQueuedCompletionStatusEx(
  12926.          HANDLE CompletionPort,
  12927.                                                   LPOVERLAPPED_ENTRY lpCompletionPortEntries,
  12928.          ULONG ulCount,
  12929.           PULONG ulNumEntriesRemoved,
  12930.          DWORD dwMilliseconds,
  12931.          BOOL fAlertable
  12932.     );
  12933.  
  12934.  
  12935.  
  12936.  
  12937. __declspec(dllimport)
  12938. BOOL
  12939. __stdcall
  12940. PostQueuedCompletionStatus(
  12941.          HANDLE CompletionPort,
  12942.          DWORD dwNumberOfBytesTransferred,
  12943.          ULONG_PTR dwCompletionKey,
  12944.              LPOVERLAPPED lpOverlapped
  12945.     );
  12946.  
  12947.  
  12948.  
  12949. #pragma endregion
  12950.  
  12951. #pragma region Desktop Family or OneCore Family
  12952.  
  12953.  
  12954. __declspec(dllimport)
  12955. BOOL
  12956. __stdcall
  12957. DeviceIoControl(
  12958.          HANDLE hDevice,
  12959.          DWORD dwIoControlCode,
  12960.                                         LPVOID lpInBuffer,
  12961.          DWORD nInBufferSize,
  12962.                                                                LPVOID lpOutBuffer,
  12963.          DWORD nOutBufferSize,
  12964.               LPDWORD lpBytesReturned,
  12965.                 LPOVERLAPPED lpOverlapped
  12966.     );
  12967.  
  12968.  
  12969.  
  12970. #pragma endregion
  12971.  
  12972. #pragma region Application Family or OneCore Family
  12973.  
  12974.  
  12975. __declspec(dllimport)
  12976. BOOL
  12977. __stdcall
  12978. GetOverlappedResult(
  12979.          HANDLE hFile,
  12980.          LPOVERLAPPED lpOverlapped,
  12981.           LPDWORD lpNumberOfBytesTransferred,
  12982.          BOOL bWait
  12983.     );
  12984.  
  12985.  
  12986.  
  12987.  
  12988. __declspec(dllimport)
  12989. BOOL
  12990. __stdcall
  12991. CancelIoEx(
  12992.          HANDLE hFile,
  12993.              LPOVERLAPPED lpOverlapped
  12994.     );
  12995.  
  12996.  
  12997.  
  12998.  
  12999.  
  13000. #pragma endregion
  13001.  
  13002. #pragma region Application Family or OneCore Family
  13003.  
  13004.  
  13005. __declspec(dllimport)
  13006. BOOL
  13007. __stdcall
  13008. CancelIo(
  13009.          HANDLE hFile
  13010.     );
  13011.  
  13012.  
  13013. __declspec(dllimport)
  13014. BOOL
  13015. __stdcall
  13016. GetOverlappedResultEx(
  13017.          HANDLE hFile,
  13018.          LPOVERLAPPED lpOverlapped,
  13019.           LPDWORD lpNumberOfBytesTransferred,
  13020.          DWORD dwMilliseconds,
  13021.          BOOL bAlertable
  13022.     );
  13023.  
  13024.  
  13025.  
  13026. #pragma endregion
  13027.  
  13028. #pragma region Desktop Family or OneCore Family
  13029.  
  13030.  
  13031.  
  13032.  
  13033. __declspec(dllimport)
  13034. BOOL
  13035. __stdcall
  13036. CancelSynchronousIo(
  13037.          HANDLE hThread
  13038.     );
  13039.  
  13040.  
  13041.  
  13042.  
  13043.  
  13044. #pragma endregion
  13045.  
  13046.  
  13047.  
  13048.  
  13049.  
  13050.  
  13051. #pragma option pop
  13052. # 56 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  13053.  
  13054. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 1 3
  13055. #pragma option push -b -a8 -pc -A- -w-pun
  13056. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13057. #pragma region Application or OneCore Family
  13058.  
  13059.  
  13060.  
  13061.  
  13062.  
  13063.  
  13064.  
  13065.  
  13066. typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK;
  13067.  
  13068.  
  13069. #pragma endregion
  13070.  
  13071. #pragma region Application or OneCore Family
  13072.  
  13073.  
  13074.  
  13075.  
  13076. __declspec(dllimport)
  13077. void
  13078. __stdcall
  13079. InitializeSRWLock(
  13080.           PSRWLOCK SRWLock
  13081.     );
  13082.  
  13083.  
  13084. __declspec(dllimport)
  13085.  
  13086. void
  13087. __stdcall
  13088. ReleaseSRWLockExclusive(
  13089.             PSRWLOCK SRWLock
  13090.     );
  13091.  
  13092.  
  13093. __declspec(dllimport)
  13094.  
  13095. void
  13096. __stdcall
  13097. ReleaseSRWLockShared(
  13098.             PSRWLOCK SRWLock
  13099.     );
  13100.  
  13101.  
  13102. __declspec(dllimport)
  13103.  
  13104. void
  13105. __stdcall
  13106. AcquireSRWLockExclusive(
  13107.             PSRWLOCK SRWLock
  13108.     );
  13109.  
  13110.  
  13111. __declspec(dllimport)
  13112.  
  13113. void
  13114. __stdcall
  13115. AcquireSRWLockShared(
  13116.             PSRWLOCK SRWLock
  13117.     );
  13118.  
  13119.  
  13120. __declspec(dllimport)
  13121.  
  13122. BOOLEAN
  13123. __stdcall
  13124. TryAcquireSRWLockExclusive(
  13125.             PSRWLOCK SRWLock
  13126.     );
  13127.  
  13128.  
  13129. __declspec(dllimport)
  13130.  
  13131. BOOLEAN
  13132. __stdcall
  13133. TryAcquireSRWLockShared(
  13134.             PSRWLOCK SRWLock
  13135.     );
  13136. # 121 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13137. __declspec(dllimport)
  13138. void
  13139. __stdcall
  13140. InitializeCriticalSection(
  13141.           LPCRITICAL_SECTION lpCriticalSection
  13142.     );
  13143.  
  13144.  
  13145.  
  13146.  
  13147. __declspec(dllimport)
  13148. void
  13149. __stdcall
  13150. EnterCriticalSection(
  13151.             LPCRITICAL_SECTION lpCriticalSection
  13152.     );
  13153.  
  13154.  
  13155. __declspec(dllimport)
  13156. void
  13157. __stdcall
  13158. LeaveCriticalSection(
  13159.             LPCRITICAL_SECTION lpCriticalSection
  13160.     );
  13161.  
  13162.  
  13163. __declspec(dllimport)
  13164.  
  13165. BOOL
  13166. __stdcall
  13167. InitializeCriticalSectionAndSpinCount(
  13168.           LPCRITICAL_SECTION lpCriticalSection,
  13169.          DWORD dwSpinCount
  13170.     );
  13171.  
  13172.  
  13173.  
  13174.  
  13175. __declspec(dllimport)
  13176. BOOL
  13177. __stdcall
  13178. InitializeCriticalSectionEx(
  13179.           LPCRITICAL_SECTION lpCriticalSection,
  13180.          DWORD dwSpinCount,
  13181.          DWORD Flags
  13182.     );
  13183.  
  13184.  
  13185.  
  13186.  
  13187. __declspec(dllimport)
  13188. DWORD
  13189. __stdcall
  13190. SetCriticalSectionSpinCount(
  13191.             LPCRITICAL_SECTION lpCriticalSection,
  13192.          DWORD dwSpinCount
  13193.     );
  13194.  
  13195.  
  13196.  
  13197.  
  13198. __declspec(dllimport)
  13199. BOOL
  13200. __stdcall
  13201. TryEnterCriticalSection(
  13202.             LPCRITICAL_SECTION lpCriticalSection
  13203.     );
  13204.  
  13205.  
  13206.  
  13207.  
  13208. __declspec(dllimport)
  13209. void
  13210. __stdcall
  13211. DeleteCriticalSection(
  13212.             LPCRITICAL_SECTION lpCriticalSection
  13213.     );
  13214.  
  13215.  
  13216.  
  13217.  
  13218.  
  13219.  
  13220. typedef RTL_RUN_ONCE INIT_ONCE;
  13221. typedef PRTL_RUN_ONCE PINIT_ONCE;
  13222. typedef PRTL_RUN_ONCE LPINIT_ONCE;
  13223. # 225 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13224. typedef
  13225. BOOL
  13226. (__stdcall *PINIT_ONCE_FN) (
  13227.             PINIT_ONCE InitOnce,
  13228.                 PVOID Parameter,
  13229.                                   PVOID *Context
  13230.     );
  13231.  
  13232.  
  13233.  
  13234. __declspec(dllimport)
  13235. void
  13236. __stdcall
  13237. InitOnceInitialize(
  13238.           PINIT_ONCE InitOnce
  13239.     );
  13240.  
  13241.  
  13242. __declspec(dllimport)
  13243. BOOL
  13244. __stdcall
  13245. InitOnceExecuteOnce(
  13246.             PINIT_ONCE InitOnce,
  13247.                     PINIT_ONCE_FN InitFn,
  13248.                 PVOID Parameter,
  13249.                                   LPVOID* Context
  13250.     );
  13251.  
  13252.  
  13253. __declspec(dllimport)
  13254. BOOL
  13255. __stdcall
  13256. InitOnceBeginInitialize(
  13257.             LPINIT_ONCE lpInitOnce,
  13258.          DWORD dwFlags,
  13259.           PBOOL fPending,
  13260.                                   LPVOID* lpContext
  13261.     );
  13262.  
  13263.  
  13264. __declspec(dllimport)
  13265. BOOL
  13266. __stdcall
  13267. InitOnceComplete(
  13268.             LPINIT_ONCE lpInitOnce,
  13269.          DWORD dwFlags,
  13270.              LPVOID lpContext
  13271.     );
  13272. # 281 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13273. typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE;
  13274. # 297 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13275. __declspec(dllimport)
  13276. void
  13277. __stdcall
  13278. InitializeConditionVariable(
  13279.           PCONDITION_VARIABLE ConditionVariable
  13280.     );
  13281.  
  13282.  
  13283. __declspec(dllimport)
  13284. void
  13285. __stdcall
  13286. WakeConditionVariable(
  13287.             PCONDITION_VARIABLE ConditionVariable
  13288.     );
  13289.  
  13290.  
  13291. __declspec(dllimport)
  13292. void
  13293. __stdcall
  13294. WakeAllConditionVariable(
  13295.             PCONDITION_VARIABLE ConditionVariable
  13296.     );
  13297.  
  13298.  
  13299. __declspec(dllimport)
  13300. BOOL
  13301. __stdcall
  13302. SleepConditionVariableCS(
  13303.             PCONDITION_VARIABLE ConditionVariable,
  13304.             PCRITICAL_SECTION CriticalSection,
  13305.          DWORD dwMilliseconds
  13306.     );
  13307.  
  13308.  
  13309. __declspec(dllimport)
  13310. BOOL
  13311. __stdcall
  13312. SleepConditionVariableSRW(
  13313.             PCONDITION_VARIABLE ConditionVariable,
  13314.             PSRWLOCK SRWLock,
  13315.          DWORD dwMilliseconds,
  13316.          ULONG Flags
  13317.     );
  13318.  
  13319.  
  13320.  
  13321.  
  13322. __declspec(dllimport)
  13323. BOOL
  13324. __stdcall
  13325. SetEvent(
  13326.          HANDLE hEvent
  13327.     );
  13328.  
  13329.  
  13330. __declspec(dllimport)
  13331. BOOL
  13332. __stdcall
  13333. ResetEvent(
  13334.          HANDLE hEvent
  13335.     );
  13336.  
  13337.  
  13338. __declspec(dllimport)
  13339. BOOL
  13340. __stdcall
  13341. ReleaseSemaphore(
  13342.          HANDLE hSemaphore,
  13343.          LONG lReleaseCount,
  13344.               LPLONG lpPreviousCount
  13345.     );
  13346.  
  13347.  
  13348. __declspec(dllimport)
  13349. BOOL
  13350. __stdcall
  13351. ReleaseMutex(
  13352.          HANDLE hMutex
  13353.     );
  13354.  
  13355.  
  13356. __declspec(dllimport)
  13357. DWORD
  13358. __stdcall
  13359. WaitForSingleObject(
  13360.          HANDLE hHandle,
  13361.          DWORD dwMilliseconds
  13362.     );
  13363.  
  13364.  
  13365. __declspec(dllimport)
  13366. DWORD
  13367. __stdcall
  13368. SleepEx(
  13369.          DWORD dwMilliseconds,
  13370.          BOOL bAlertable
  13371.     );
  13372.  
  13373.  
  13374. __declspec(dllimport)
  13375. DWORD
  13376. __stdcall
  13377. WaitForSingleObjectEx(
  13378.          HANDLE hHandle,
  13379.          DWORD dwMilliseconds,
  13380.          BOOL bAlertable
  13381.     );
  13382.  
  13383.  
  13384. __declspec(dllimport)
  13385. DWORD
  13386. __stdcall
  13387. WaitForMultipleObjectsEx(
  13388.          DWORD nCount,
  13389.                        const HANDLE* lpHandles,
  13390.          BOOL bWaitAll,
  13391.          DWORD dwMilliseconds,
  13392.          BOOL bAlertable
  13393.     );
  13394. # 425 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13395. __declspec(dllimport)
  13396.  
  13397. HANDLE
  13398. __stdcall
  13399. CreateMutexA(
  13400.              LPSECURITY_ATTRIBUTES lpMutexAttributes,
  13401.          BOOL bInitialOwner,
  13402.              LPCSTR lpName
  13403.     );
  13404.  
  13405. __declspec(dllimport)
  13406.  
  13407. HANDLE
  13408. __stdcall
  13409. CreateMutexW(
  13410.              LPSECURITY_ATTRIBUTES lpMutexAttributes,
  13411.          BOOL bInitialOwner,
  13412.              LPCWSTR lpName
  13413.     );
  13414.  
  13415.  
  13416.  
  13417.  
  13418.  
  13419.  
  13420.  
  13421. __declspec(dllimport)
  13422.  
  13423. HANDLE
  13424. __stdcall
  13425. OpenMutexW(
  13426.          DWORD dwDesiredAccess,
  13427.          BOOL bInheritHandle,
  13428.          LPCWSTR lpName
  13429.     );
  13430.  
  13431.  
  13432.  
  13433.  
  13434.  
  13435.  
  13436. __declspec(dllimport)
  13437.  
  13438. HANDLE
  13439. __stdcall
  13440. CreateEventA(
  13441.              LPSECURITY_ATTRIBUTES lpEventAttributes,
  13442.          BOOL bManualReset,
  13443.          BOOL bInitialState,
  13444.              LPCSTR lpName
  13445.     );
  13446.  
  13447. __declspec(dllimport)
  13448.  
  13449. HANDLE
  13450. __stdcall
  13451. CreateEventW(
  13452.              LPSECURITY_ATTRIBUTES lpEventAttributes,
  13453.          BOOL bManualReset,
  13454.          BOOL bInitialState,
  13455.              LPCWSTR lpName
  13456.     );
  13457.  
  13458.  
  13459.  
  13460.  
  13461.  
  13462.  
  13463.  
  13464. __declspec(dllimport)
  13465.  
  13466. HANDLE
  13467. __stdcall
  13468. OpenEventA(
  13469.          DWORD dwDesiredAccess,
  13470.          BOOL bInheritHandle,
  13471.          LPCSTR lpName
  13472.     );
  13473.  
  13474. __declspec(dllimport)
  13475.  
  13476. HANDLE
  13477. __stdcall
  13478. OpenEventW(
  13479.          DWORD dwDesiredAccess,
  13480.          BOOL bInheritHandle,
  13481.          LPCWSTR lpName
  13482.     );
  13483.  
  13484.  
  13485.  
  13486.  
  13487.  
  13488.  
  13489.  
  13490. __declspec(dllimport)
  13491.  
  13492. HANDLE
  13493. __stdcall
  13494. OpenSemaphoreW(
  13495.          DWORD dwDesiredAccess,
  13496.          BOOL bInheritHandle,
  13497.          LPCWSTR lpName
  13498.     );
  13499. # 537 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13500. typedef
  13501. void
  13502. (__stdcall *PTIMERAPCROUTINE)(
  13503.              LPVOID lpArgToCompletionRoutine,
  13504.              DWORD dwTimerLowValue,
  13505.              DWORD dwTimerHighValue
  13506.     );
  13507.  
  13508. __declspec(dllimport)
  13509.  
  13510. HANDLE
  13511. __stdcall
  13512. OpenWaitableTimerW(
  13513.          DWORD dwDesiredAccess,
  13514.          BOOL bInheritHandle,
  13515.          LPCWSTR lpTimerName
  13516.     );
  13517. # 562 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13518. BOOL
  13519. __stdcall
  13520. SetWaitableTimerEx(
  13521.          HANDLE hTimer,
  13522.          const LARGE_INTEGER* lpDueTime,
  13523.          LONG lPeriod,
  13524.              PTIMERAPCROUTINE pfnCompletionRoutine,
  13525.              LPVOID lpArgToCompletionRoutine,
  13526.              PREASON_CONTEXT WakeContext,
  13527.          ULONG TolerableDelay
  13528.     );
  13529.  
  13530.  
  13531.  
  13532.  
  13533. __declspec(dllimport)
  13534. BOOL
  13535. __stdcall
  13536. SetWaitableTimer(
  13537.          HANDLE hTimer,
  13538.          const LARGE_INTEGER* lpDueTime,
  13539.          LONG lPeriod,
  13540.              PTIMERAPCROUTINE pfnCompletionRoutine,
  13541.              LPVOID lpArgToCompletionRoutine,
  13542.          BOOL fResume
  13543.     );
  13544.  
  13545.  
  13546. __declspec(dllimport)
  13547. BOOL
  13548. __stdcall
  13549. CancelWaitableTimer(
  13550.          HANDLE hTimer
  13551.     );
  13552.  
  13553.  
  13554.  
  13555.  
  13556.  
  13557.  
  13558. __declspec(dllimport)
  13559.  
  13560. HANDLE
  13561. __stdcall
  13562. CreateMutexExA(
  13563.              LPSECURITY_ATTRIBUTES lpMutexAttributes,
  13564.              LPCSTR lpName,
  13565.          DWORD dwFlags,
  13566.          DWORD dwDesiredAccess
  13567.     );
  13568.  
  13569. __declspec(dllimport)
  13570.  
  13571. HANDLE
  13572. __stdcall
  13573. CreateMutexExW(
  13574.              LPSECURITY_ATTRIBUTES lpMutexAttributes,
  13575.              LPCWSTR lpName,
  13576.          DWORD dwFlags,
  13577.          DWORD dwDesiredAccess
  13578.     );
  13579. # 633 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13580. __declspec(dllimport)
  13581.  
  13582. HANDLE
  13583. __stdcall
  13584. CreateEventExA(
  13585.              LPSECURITY_ATTRIBUTES lpEventAttributes,
  13586.              LPCSTR lpName,
  13587.          DWORD dwFlags,
  13588.          DWORD dwDesiredAccess
  13589.     );
  13590.  
  13591. __declspec(dllimport)
  13592.  
  13593. HANDLE
  13594. __stdcall
  13595. CreateEventExW(
  13596.              LPSECURITY_ATTRIBUTES lpEventAttributes,
  13597.              LPCWSTR lpName,
  13598.          DWORD dwFlags,
  13599.          DWORD dwDesiredAccess
  13600.     );
  13601.  
  13602.  
  13603.  
  13604.  
  13605.  
  13606.  
  13607.  
  13608. __declspec(dllimport)
  13609.  
  13610. HANDLE
  13611. __stdcall
  13612. CreateSemaphoreExW(
  13613.              LPSECURITY_ATTRIBUTES lpSemaphoreAttributes,
  13614.          LONG lInitialCount,
  13615.          LONG lMaximumCount,
  13616.              LPCWSTR lpName,
  13617.                DWORD dwFlags,
  13618.          DWORD dwDesiredAccess
  13619.     );
  13620. # 684 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13621. __declspec(dllimport)
  13622.  
  13623. HANDLE
  13624. __stdcall
  13625. CreateWaitableTimerExW(
  13626.              LPSECURITY_ATTRIBUTES lpTimerAttributes,
  13627.              LPCWSTR lpTimerName,
  13628.          DWORD dwFlags,
  13629.          DWORD dwDesiredAccess
  13630.     );
  13631. # 705 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\synchapi.h" 3
  13632. #pragma endregion
  13633.  
  13634. #pragma region Desktop or OneCore Family
  13635.  
  13636.  
  13637. typedef RTL_BARRIER SYNCHRONIZATION_BARRIER;
  13638. typedef PRTL_BARRIER PSYNCHRONIZATION_BARRIER;
  13639. typedef PRTL_BARRIER LPSYNCHRONIZATION_BARRIER;
  13640.  
  13641.  
  13642.  
  13643.  
  13644.  
  13645. BOOL
  13646. __stdcall
  13647. EnterSynchronizationBarrier(
  13648.             LPSYNCHRONIZATION_BARRIER lpBarrier,
  13649.          DWORD dwFlags
  13650.     );
  13651.  
  13652.  
  13653. BOOL
  13654. __stdcall
  13655. InitializeSynchronizationBarrier(
  13656.           LPSYNCHRONIZATION_BARRIER lpBarrier,
  13657.          LONG lTotalThreads,
  13658.          LONG lSpinCount
  13659.     );
  13660.  
  13661.  
  13662. BOOL
  13663. __stdcall
  13664. DeleteSynchronizationBarrier(
  13665.             LPSYNCHRONIZATION_BARRIER lpBarrier
  13666.     );
  13667.  
  13668.  
  13669.  
  13670. #pragma endregion
  13671.  
  13672. #pragma region Application or OneCore Family
  13673.  
  13674.  
  13675. __declspec(dllimport)
  13676. void
  13677. __stdcall
  13678. Sleep(
  13679.          DWORD dwMilliseconds
  13680.     );
  13681.  
  13682.  
  13683. BOOL
  13684. __stdcall
  13685. WaitOnAddress(
  13686.                                   volatile void* Address,
  13687.                                   PVOID CompareAddress,
  13688.          SIZE_T AddressSize,
  13689.              DWORD dwMilliseconds
  13690.     );
  13691.  
  13692.  
  13693. void
  13694. __stdcall
  13695. WakeByAddressSingle(
  13696.          PVOID Address
  13697.     );
  13698.  
  13699.  
  13700. void
  13701. __stdcall
  13702. WakeByAddressAll(
  13703.          PVOID Address
  13704.     );
  13705.  
  13706.  
  13707.  
  13708. #pragma endregion
  13709.  
  13710. #pragma region Desktop or OneCore Family
  13711.  
  13712.  
  13713.  
  13714.  
  13715. __declspec(dllimport)
  13716. DWORD
  13717. __stdcall
  13718. SignalObjectAndWait(
  13719.          HANDLE hObjectToSignal,
  13720.          HANDLE hObjectToWaitOn,
  13721.          DWORD dwMilliseconds,
  13722.          BOOL bAlertable
  13723.     );
  13724.  
  13725.  
  13726.  
  13727.  
  13728.  
  13729. #pragma endregion
  13730.  
  13731. #pragma region Application or OneCore Family
  13732.  
  13733.  
  13734. __declspec(dllimport)
  13735. DWORD
  13736. __stdcall
  13737. WaitForMultipleObjects(
  13738.          DWORD nCount,
  13739.                        const HANDLE* lpHandles,
  13740.          BOOL bWaitAll,
  13741.          DWORD dwMilliseconds
  13742.     );
  13743.  
  13744.  
  13745. __declspec(dllimport)
  13746. HANDLE
  13747. __stdcall
  13748. CreateSemaphoreW(
  13749.              LPSECURITY_ATTRIBUTES lpSemaphoreAttributes,
  13750.          LONG lInitialCount,
  13751.          LONG lMaximumCount,
  13752.              LPCWSTR lpName
  13753.     );
  13754.  
  13755.  
  13756.  
  13757.  
  13758.  
  13759.  
  13760. __declspec(dllimport)
  13761.  
  13762. HANDLE
  13763. __stdcall
  13764. CreateWaitableTimerW(
  13765.              LPSECURITY_ATTRIBUTES lpTimerAttributes,
  13766.          BOOL bManualReset,
  13767.              LPCWSTR lpTimerName
  13768.     );
  13769.  
  13770.  
  13771.  
  13772.  
  13773.  
  13774.  
  13775.  
  13776. #pragma endregion
  13777.  
  13778.  
  13779.  
  13780.  
  13781.  
  13782.  
  13783. #pragma option pop
  13784. # 57 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  13785.  
  13786. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\interlockedapi.h" 1 3
  13787. #pragma option push -b -a8 -pc -A- -w-pun
  13788. # 34 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\interlockedapi.h" 3
  13789. #pragma region Application Family or OneCore Family
  13790. # 116 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\interlockedapi.h" 3
  13791. #pragma endregion
  13792.  
  13793.  
  13794.  
  13795.  
  13796.  
  13797.  
  13798.  
  13799. #pragma option pop
  13800. # 58 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  13801.  
  13802. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processthreadsapi.h" 1 3
  13803. #pragma option push -b -a8 -pc -A- -w-pun
  13804. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processthreadsapi.h" 3
  13805. #pragma region Application Family or OneCore Family
  13806.  
  13807.  
  13808. typedef struct _PROCESS_INFORMATION {
  13809.     HANDLE hProcess;
  13810.     HANDLE hThread;
  13811.     DWORD dwProcessId;
  13812.     DWORD dwThreadId;
  13813. } PROCESS_INFORMATION, *PPROCESS_INFORMATION, *LPPROCESS_INFORMATION;
  13814.  
  13815. typedef struct _STARTUPINFOA {
  13816.     DWORD cb;
  13817.     LPSTR lpReserved;
  13818.     LPSTR lpDesktop;
  13819.     LPSTR lpTitle;
  13820.     DWORD dwX;
  13821.     DWORD dwY;
  13822.     DWORD dwXSize;
  13823.     DWORD dwYSize;
  13824.     DWORD dwXCountChars;
  13825.     DWORD dwYCountChars;
  13826.     DWORD dwFillAttribute;
  13827.     DWORD dwFlags;
  13828.     WORD wShowWindow;
  13829.     WORD cbReserved2;
  13830.     LPBYTE lpReserved2;
  13831.     HANDLE hStdInput;
  13832.     HANDLE hStdOutput;
  13833.     HANDLE hStdError;
  13834. } STARTUPINFOA, *LPSTARTUPINFOA;
  13835. typedef struct _STARTUPINFOW {
  13836.     DWORD cb;
  13837.     LPWSTR lpReserved;
  13838.     LPWSTR lpDesktop;
  13839.     LPWSTR lpTitle;
  13840.     DWORD dwX;
  13841.     DWORD dwY;
  13842.     DWORD dwXSize;
  13843.     DWORD dwYSize;
  13844.     DWORD dwXCountChars;
  13845.     DWORD dwYCountChars;
  13846.     DWORD dwFillAttribute;
  13847.     DWORD dwFlags;
  13848.     WORD wShowWindow;
  13849.     WORD cbReserved2;
  13850.     LPBYTE lpReserved2;
  13851.     HANDLE hStdInput;
  13852.     HANDLE hStdOutput;
  13853.     HANDLE hStdError;
  13854. } STARTUPINFOW, *LPSTARTUPINFOW;
  13855.  
  13856.  
  13857.  
  13858.  
  13859. typedef STARTUPINFOA STARTUPINFO;
  13860. typedef LPSTARTUPINFOA LPSTARTUPINFO;
  13861.  
  13862.  
  13863.  
  13864. #pragma endregion
  13865.  
  13866. #pragma region Application Family or OneCore Family
  13867.  
  13868.  
  13869.  
  13870.  
  13871. __declspec(dllimport)
  13872. DWORD
  13873. __stdcall
  13874. QueueUserAPC(
  13875.          PAPCFUNC pfnAPC,
  13876.          HANDLE hThread,
  13877.          ULONG_PTR dwData
  13878.     );
  13879.  
  13880.  
  13881.  
  13882.  
  13883. __declspec(dllimport)
  13884. BOOL
  13885. __stdcall
  13886. GetProcessTimes(
  13887.          HANDLE hProcess,
  13888.           LPFILETIME lpCreationTime,
  13889.           LPFILETIME lpExitTime,
  13890.           LPFILETIME lpKernelTime,
  13891.           LPFILETIME lpUserTime
  13892.     );
  13893.  
  13894.  
  13895. __declspec(dllimport)
  13896. HANDLE
  13897. __stdcall
  13898. GetCurrentProcess(
  13899.     void
  13900.     );
  13901.  
  13902.  
  13903. __declspec(dllimport)
  13904. DWORD
  13905. __stdcall
  13906. GetCurrentProcessId(
  13907.     void
  13908.     );
  13909.  
  13910.  
  13911.  
  13912. #pragma endregion
  13913.  
  13914. #pragma region Desktop Family or OneCore Family
  13915.  
  13916.  
  13917. __declspec(dllimport)
  13918.  
  13919. void
  13920. __stdcall
  13921. ExitProcess(
  13922.          UINT uExitCode
  13923.     );
  13924.  
  13925.  
  13926.  
  13927. #pragma endregion
  13928.  
  13929. #pragma region Application Family or OneCore Family
  13930.  
  13931.  
  13932. __declspec(dllimport)
  13933. BOOL
  13934. __stdcall
  13935. TerminateProcess(
  13936.          HANDLE hProcess,
  13937.          UINT uExitCode
  13938.     );
  13939.  
  13940.  
  13941. __declspec(dllimport)
  13942. BOOL
  13943. __stdcall
  13944. GetExitCodeProcess(
  13945.          HANDLE hProcess,
  13946.           LPDWORD lpExitCode
  13947.     );
  13948.  
  13949.  
  13950. __declspec(dllimport)
  13951. BOOL
  13952. __stdcall
  13953. SwitchToThread(
  13954.     void
  13955.     );
  13956.  
  13957.  
  13958. __declspec(dllimport)
  13959.  
  13960. HANDLE
  13961. __stdcall
  13962. CreateThread(
  13963.              LPSECURITY_ATTRIBUTES lpThreadAttributes,
  13964.          SIZE_T dwStackSize,
  13965.          LPTHREAD_START_ROUTINE lpStartAddress,
  13966.                               LPVOID lpParameter,
  13967.          DWORD dwCreationFlags,
  13968.               LPDWORD lpThreadId
  13969.     );
  13970.  
  13971.  
  13972. #pragma endregion
  13973.  
  13974. #pragma region Desktop Family or OneCore Family
  13975.  
  13976. __declspec(dllimport)
  13977.  
  13978. HANDLE
  13979. __stdcall
  13980. CreateRemoteThread(
  13981.          HANDLE hProcess,
  13982.              LPSECURITY_ATTRIBUTES lpThreadAttributes,
  13983.          SIZE_T dwStackSize,
  13984.          LPTHREAD_START_ROUTINE lpStartAddress,
  13985.              LPVOID lpParameter,
  13986.          DWORD dwCreationFlags,
  13987.               LPDWORD lpThreadId
  13988.     );
  13989.  
  13990.  
  13991.  
  13992. #pragma endregion
  13993.  
  13994. #pragma region Application Family or OneCore Family
  13995.  
  13996.  
  13997. __declspec(dllimport)
  13998. HANDLE
  13999. __stdcall
  14000. GetCurrentThread(
  14001.     void
  14002.     );
  14003.  
  14004.  
  14005. __declspec(dllimport)
  14006. DWORD
  14007. __stdcall
  14008. GetCurrentThreadId(
  14009.     void
  14010.     );
  14011.  
  14012.  
  14013. __declspec(dllimport)
  14014.  
  14015. HANDLE
  14016. __stdcall
  14017. OpenThread(
  14018.          DWORD dwDesiredAccess,
  14019.          BOOL bInheritHandle,
  14020.          DWORD dwThreadId
  14021.     );
  14022.  
  14023.  
  14024. __declspec(dllimport)
  14025. BOOL
  14026. __stdcall
  14027. SetThreadPriority(
  14028.          HANDLE hThread,
  14029.          int nPriority
  14030.     );
  14031.  
  14032.  
  14033. __declspec(dllimport)
  14034. BOOL
  14035. __stdcall
  14036. SetThreadPriorityBoost(
  14037.          HANDLE hThread,
  14038.          BOOL bDisablePriorityBoost
  14039.     );
  14040.  
  14041.  
  14042. __declspec(dllimport)
  14043. BOOL
  14044. __stdcall
  14045. GetThreadPriorityBoost(
  14046.          HANDLE hThread,
  14047.           PBOOL pDisablePriorityBoost
  14048.     );
  14049.  
  14050.  
  14051. __declspec(dllimport)
  14052. int
  14053. __stdcall
  14054. GetThreadPriority(
  14055.          HANDLE hThread
  14056.     );
  14057.  
  14058.  
  14059. __declspec(dllimport)
  14060.  
  14061. void
  14062. __stdcall
  14063. ExitThread(
  14064.          DWORD dwExitCode
  14065.     );
  14066.  
  14067.  
  14068. #pragma endregion
  14069.  
  14070. #pragma region Desktop Family or OneCore Family
  14071.  
  14072. __declspec(dllimport)
  14073. BOOL
  14074. __stdcall
  14075. TerminateThread(
  14076.          HANDLE hThread,
  14077.          DWORD dwExitCode
  14078.     );
  14079.  
  14080.  
  14081. #pragma endregion
  14082.  
  14083. #pragma region Application Family or OneCore Family
  14084.  
  14085.  
  14086. __declspec(dllimport)
  14087.  
  14088. BOOL
  14089. __stdcall
  14090. GetExitCodeThread(
  14091.          HANDLE hThread,
  14092.           LPDWORD lpExitCode
  14093.     );
  14094.  
  14095.  
  14096. __declspec(dllimport)
  14097. DWORD
  14098. __stdcall
  14099. SuspendThread(
  14100.          HANDLE hThread
  14101.     );
  14102.  
  14103.  
  14104. __declspec(dllimport)
  14105. DWORD
  14106. __stdcall
  14107. ResumeThread(
  14108.          HANDLE hThread
  14109.     );
  14110.  
  14111.  
  14112.  
  14113.  
  14114.  
  14115.  
  14116.  
  14117. __declspec(dllimport)
  14118. DWORD
  14119. __stdcall
  14120. TlsAlloc(
  14121.     void
  14122.     );
  14123.  
  14124.  
  14125. __declspec(dllimport)
  14126. LPVOID
  14127. __stdcall
  14128. TlsGetValue(
  14129.          DWORD dwTlsIndex
  14130.     );
  14131.  
  14132.  
  14133. __declspec(dllimport)
  14134. BOOL
  14135. __stdcall
  14136. TlsSetValue(
  14137.          DWORD dwTlsIndex,
  14138.              LPVOID lpTlsValue
  14139.     );
  14140.  
  14141.  
  14142. __declspec(dllimport)
  14143. BOOL
  14144. __stdcall
  14145. TlsFree(
  14146.          DWORD dwTlsIndex
  14147.     );
  14148.  
  14149.  
  14150. __declspec(dllimport)
  14151. BOOL
  14152. __stdcall
  14153. CreateProcessA(
  14154.              LPCSTR lpApplicationName,
  14155.                 LPSTR lpCommandLine,
  14156.              LPSECURITY_ATTRIBUTES lpProcessAttributes,
  14157.              LPSECURITY_ATTRIBUTES lpThreadAttributes,
  14158.          BOOL bInheritHandles,
  14159.          DWORD dwCreationFlags,
  14160.              LPVOID lpEnvironment,
  14161.              LPCSTR lpCurrentDirectory,
  14162.          LPSTARTUPINFOA lpStartupInfo,
  14163.           LPPROCESS_INFORMATION lpProcessInformation
  14164.     );
  14165.  
  14166. __declspec(dllimport)
  14167. BOOL
  14168. __stdcall
  14169. CreateProcessW(
  14170.              LPCWSTR lpApplicationName,
  14171.                 LPWSTR lpCommandLine,
  14172.              LPSECURITY_ATTRIBUTES lpProcessAttributes,
  14173.              LPSECURITY_ATTRIBUTES lpThreadAttributes,
  14174.          BOOL bInheritHandles,
  14175.          DWORD dwCreationFlags,
  14176.              LPVOID lpEnvironment,
  14177.              LPCWSTR lpCurrentDirectory,
  14178.          LPSTARTUPINFOW lpStartupInfo,
  14179.           LPPROCESS_INFORMATION lpProcessInformation
  14180.     );
  14181.  
  14182.  
  14183.  
  14184.  
  14185.  
  14186.  
  14187.  
  14188.  
  14189. #pragma endregion
  14190.  
  14191. #pragma region Desktop Family or OneCore Family
  14192.  
  14193.  
  14194. __declspec(dllimport)
  14195. BOOL
  14196. __stdcall
  14197. SetProcessShutdownParameters(
  14198.          DWORD dwLevel,
  14199.          DWORD dwFlags
  14200.     );
  14201.  
  14202.  
  14203. __declspec(dllimport)
  14204. DWORD
  14205. __stdcall
  14206. GetProcessVersion(
  14207.          DWORD ProcessId
  14208.     );
  14209.  
  14210.  
  14211. __declspec(dllimport)
  14212. void
  14213. __stdcall
  14214. GetStartupInfoW(
  14215.           LPSTARTUPINFOW lpStartupInfo
  14216.     );
  14217.  
  14218.  
  14219.  
  14220.  
  14221.  
  14222. __declspec(dllimport)
  14223. BOOL
  14224. __stdcall
  14225. CreateProcessAsUserW(
  14226.              HANDLE hToken,
  14227.              LPCWSTR lpApplicationName,
  14228.                 LPWSTR lpCommandLine,
  14229.              LPSECURITY_ATTRIBUTES lpProcessAttributes,
  14230.              LPSECURITY_ATTRIBUTES lpThreadAttributes,
  14231.          BOOL bInheritHandles,
  14232.          DWORD dwCreationFlags,
  14233.              LPVOID lpEnvironment,
  14234.              LPCWSTR lpCurrentDirectory,
  14235.          LPSTARTUPINFOW lpStartupInfo,
  14236.           LPPROCESS_INFORMATION lpProcessInformation
  14237.     );
  14238. # 479 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processthreadsapi.h" 3
  14239. __inline
  14240. HANDLE
  14241. GetCurrentProcessToken (
  14242.     void
  14243.     )
  14244. {
  14245.     return (HANDLE)(LONG_PTR) -4;
  14246. }
  14247.  
  14248. __inline
  14249. HANDLE
  14250. GetCurrentThreadToken (
  14251.     void
  14252.     )
  14253. {
  14254.     return (HANDLE)(LONG_PTR) -5;
  14255. }
  14256.  
  14257. __inline
  14258. HANDLE
  14259. GetCurrentThreadEffectiveToken (
  14260.     void
  14261.     )
  14262. {
  14263.     return (HANDLE)(LONG_PTR) -6;
  14264. }
  14265.  
  14266.  
  14267.  
  14268.  
  14269.  
  14270. #pragma endregion
  14271.  
  14272. #pragma region Application Family or OneCore Family
  14273.  
  14274.  
  14275. __declspec(dllimport)
  14276.  
  14277. BOOL
  14278. __stdcall
  14279. SetThreadToken(
  14280.              PHANDLE Thread,
  14281.              HANDLE Token
  14282.     );
  14283.  
  14284.  
  14285. __declspec(dllimport)
  14286. BOOL
  14287. __stdcall
  14288. OpenProcessToken(
  14289.          HANDLE ProcessHandle,
  14290.          DWORD DesiredAccess,
  14291.              PHANDLE TokenHandle
  14292.     );
  14293.  
  14294.  
  14295. __declspec(dllimport)
  14296. BOOL
  14297. __stdcall
  14298. OpenThreadToken(
  14299.          HANDLE ThreadHandle,
  14300.          DWORD DesiredAccess,
  14301.          BOOL OpenAsSelf,
  14302.              PHANDLE TokenHandle
  14303.     );
  14304.  
  14305.  
  14306. __declspec(dllimport)
  14307. BOOL
  14308. __stdcall
  14309. SetPriorityClass(
  14310.          HANDLE hProcess,
  14311.          DWORD dwPriorityClass
  14312.     );
  14313.  
  14314.  
  14315. __declspec(dllimport)
  14316. DWORD
  14317. __stdcall
  14318. GetPriorityClass(
  14319.          HANDLE hProcess
  14320.     );
  14321.  
  14322.  
  14323.  
  14324. #pragma endregion
  14325.  
  14326. #pragma region Desktop Family or OneCore Family
  14327.  
  14328.  
  14329. __declspec(dllimport)
  14330. BOOL
  14331. __stdcall
  14332. SetThreadStackGuarantee(
  14333.             PULONG StackSizeInBytes
  14334.     );
  14335.  
  14336.  
  14337. __declspec(dllimport)
  14338. BOOL
  14339. __stdcall
  14340. ProcessIdToSessionId(
  14341.          DWORD dwProcessId,
  14342.           DWORD* pSessionId
  14343.     );
  14344.  
  14345.  
  14346. typedef struct _PROC_THREAD_ATTRIBUTE_LIST *PPROC_THREAD_ATTRIBUTE_LIST, *LPPROC_THREAD_ATTRIBUTE_LIST;
  14347.  
  14348.  
  14349. #pragma endregion
  14350.  
  14351. #pragma region Application Family or OneCore Family
  14352.  
  14353.  
  14354.  
  14355.  
  14356. __declspec(dllimport)
  14357. DWORD
  14358. __stdcall
  14359. GetProcessId(
  14360.          HANDLE Process
  14361.     );
  14362.  
  14363.  
  14364.  
  14365.  
  14366.  
  14367.  
  14368. __declspec(dllimport)
  14369. DWORD
  14370. __stdcall
  14371. GetThreadId(
  14372.          HANDLE Thread
  14373.     );
  14374.  
  14375.  
  14376.  
  14377.  
  14378.  
  14379.  
  14380. __declspec(dllimport)
  14381. void
  14382. __stdcall
  14383. FlushProcessWriteBuffers(
  14384.     void
  14385.     );
  14386.  
  14387.  
  14388.  
  14389.  
  14390.  
  14391. #pragma endregion
  14392.  
  14393.  
  14394.  
  14395. #pragma region Desktop Family or OneCore Family
  14396.  
  14397.  
  14398. __declspec(dllimport)
  14399. DWORD
  14400. __stdcall
  14401. GetProcessIdOfThread(
  14402.          HANDLE Thread
  14403.     );
  14404.  
  14405.  
  14406. __declspec(dllimport)
  14407.  
  14408. BOOL
  14409. __stdcall
  14410. InitializeProcThreadAttributeList(
  14411.                                                LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList,
  14412.          DWORD dwAttributeCount,
  14413.                DWORD dwFlags,
  14414.                                                                                         PSIZE_T lpSize
  14415.     );
  14416.  
  14417.  
  14418. __declspec(dllimport)
  14419. void
  14420. __stdcall
  14421. DeleteProcThreadAttributeList(
  14422.             LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList
  14423.     );
  14424.  
  14425.  
  14426.  
  14427.  
  14428. __declspec(dllimport)
  14429. BOOL
  14430. __stdcall
  14431. SetProcessAffinityUpdateMode(
  14432.          HANDLE hProcess,
  14433.          DWORD dwFlags
  14434.     );
  14435.  
  14436.  
  14437. __declspec(dllimport)
  14438. BOOL
  14439. __stdcall
  14440. QueryProcessAffinityUpdateMode(
  14441.          HANDLE hProcess,
  14442.               LPDWORD lpdwFlags
  14443.     );
  14444.  
  14445.  
  14446.  
  14447.  
  14448. __declspec(dllimport)
  14449. BOOL
  14450. __stdcall
  14451. UpdateProcThreadAttribute(
  14452.             LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList,
  14453.          DWORD dwFlags,
  14454.          DWORD_PTR Attribute,
  14455.                                  PVOID lpValue,
  14456.          SIZE_T cbSize,
  14457.                                    PVOID lpPreviousValue,
  14458.              PSIZE_T lpReturnSize
  14459.     );
  14460.  
  14461.  
  14462.  
  14463. #pragma endregion
  14464.  
  14465.  
  14466.  
  14467. #pragma region Desktop Family or OneCore Family
  14468.  
  14469.  
  14470. __declspec(dllimport)
  14471.  
  14472. HANDLE
  14473. __stdcall
  14474. CreateRemoteThreadEx(
  14475.          HANDLE hProcess,
  14476.              LPSECURITY_ATTRIBUTES lpThreadAttributes,
  14477.          SIZE_T dwStackSize,
  14478.          LPTHREAD_START_ROUTINE lpStartAddress,
  14479.              LPVOID lpParameter,
  14480.          DWORD dwCreationFlags,
  14481.              LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList,
  14482.               LPDWORD lpThreadId
  14483.     );
  14484.  
  14485.  
  14486.  
  14487. #pragma endregion
  14488.  
  14489.  
  14490.  
  14491. #pragma region Application Family or OneCore Family
  14492.  
  14493.  
  14494.  
  14495.  
  14496. __declspec(dllimport)
  14497. void
  14498. __stdcall
  14499. GetCurrentThreadStackLimits(
  14500.           PULONG_PTR LowLimit,
  14501.           PULONG_PTR HighLimit
  14502.     );
  14503.  
  14504.  
  14505.  
  14506.  
  14507. __declspec(dllimport)
  14508. BOOL
  14509. __stdcall
  14510. GetThreadContext(
  14511.          HANDLE hThread,
  14512.             LPCONTEXT lpContext
  14513.     );
  14514.  
  14515.  
  14516.  
  14517.  
  14518. __declspec(dllimport)
  14519. BOOL
  14520. __stdcall
  14521. GetProcessMitigationPolicy(
  14522.          HANDLE hProcess,
  14523.          PROCESS_MITIGATION_POLICY MitigationPolicy,
  14524.                                  PVOID lpBuffer,
  14525.          SIZE_T dwLength
  14526.     );
  14527.  
  14528.  
  14529.  
  14530.  
  14531.  
  14532. #pragma endregion
  14533.  
  14534. #pragma region Desktop Family or OneCore Family
  14535.  
  14536.  
  14537. __declspec(dllimport)
  14538. BOOL
  14539. __stdcall
  14540. SetThreadContext(
  14541.          HANDLE hThread,
  14542.          const CONTEXT* lpContext
  14543.     );
  14544.  
  14545.  
  14546.  
  14547.  
  14548. __declspec(dllimport)
  14549. BOOL
  14550. __stdcall
  14551. SetProcessMitigationPolicy(
  14552.          PROCESS_MITIGATION_POLICY MitigationPolicy,
  14553.                                PVOID lpBuffer,
  14554.          SIZE_T dwLength
  14555.     );
  14556.  
  14557.  
  14558.  
  14559.  
  14560.  
  14561. #pragma endregion
  14562.  
  14563.  
  14564.  
  14565. #pragma region Application Family or OneCore Family
  14566.  
  14567.  
  14568. __declspec(dllimport)
  14569. BOOL
  14570. __stdcall
  14571. FlushInstructionCache(
  14572.          HANDLE hProcess,
  14573.                                  LPCVOID lpBaseAddress,
  14574.          SIZE_T dwSize
  14575.     );
  14576.  
  14577.  
  14578. __declspec(dllimport)
  14579. BOOL
  14580. __stdcall
  14581. GetThreadTimes(
  14582.          HANDLE hThread,
  14583.           LPFILETIME lpCreationTime,
  14584.           LPFILETIME lpExitTime,
  14585.           LPFILETIME lpKernelTime,
  14586.           LPFILETIME lpUserTime
  14587.     );
  14588.  
  14589.  
  14590. __declspec(dllimport)
  14591. HANDLE
  14592. __stdcall
  14593. OpenProcess(
  14594.          DWORD dwDesiredAccess,
  14595.          BOOL bInheritHandle,
  14596.          DWORD dwProcessId
  14597.     );
  14598.  
  14599.  
  14600. __declspec(dllimport)
  14601. BOOL
  14602. __stdcall
  14603. IsProcessorFeaturePresent(
  14604.          DWORD ProcessorFeature
  14605.     );
  14606.  
  14607.  
  14608.  
  14609. #pragma endregion
  14610.  
  14611.  
  14612.  
  14613. #pragma region Desktop Family or OneCore Family
  14614.  
  14615.  
  14616. __declspec(dllimport)
  14617. BOOL
  14618. __stdcall
  14619. GetProcessHandleCount(
  14620.          HANDLE hProcess,
  14621.           PDWORD pdwHandleCount
  14622.     );
  14623.  
  14624.  
  14625.  
  14626. #pragma endregion
  14627.  
  14628.  
  14629.  
  14630.  
  14631.  
  14632. #pragma region Application Family or OneCore Family
  14633.  
  14634.  
  14635. __declspec(dllimport)
  14636. DWORD
  14637. __stdcall
  14638. GetCurrentProcessorNumber(
  14639.     void
  14640.     );
  14641.  
  14642.  
  14643.  
  14644. #pragma endregion
  14645.  
  14646.  
  14647.  
  14648.  
  14649.  
  14650. #pragma region Application Family or OneCore Family
  14651.  
  14652.  
  14653. __declspec(dllimport)
  14654. BOOL
  14655. __stdcall
  14656. SetThreadIdealProcessorEx(
  14657.          HANDLE hThread,
  14658.          PPROCESSOR_NUMBER lpIdealProcessor,
  14659.               PPROCESSOR_NUMBER lpPreviousIdealProcessor
  14660.     );
  14661.  
  14662.  
  14663. __declspec(dllimport)
  14664. BOOL
  14665. __stdcall
  14666. GetThreadIdealProcessorEx(
  14667.          HANDLE hThread,
  14668.           PPROCESSOR_NUMBER lpIdealProcessor
  14669.     );
  14670.  
  14671.  
  14672. __declspec(dllimport)
  14673. void
  14674. __stdcall
  14675. GetCurrentProcessorNumberEx(
  14676.           PPROCESSOR_NUMBER ProcNumber
  14677.     );
  14678.  
  14679.  
  14680.  
  14681. #pragma endregion
  14682.  
  14683.  
  14684.  
  14685. #pragma region Application Family or OneCore Family
  14686.  
  14687.  
  14688.  
  14689.  
  14690. __declspec(dllimport)
  14691. BOOL
  14692. __stdcall
  14693. GetProcessPriorityBoost(
  14694.          HANDLE hProcess,
  14695.           PBOOL pDisablePriorityBoost
  14696.     );
  14697.  
  14698.  
  14699. __declspec(dllimport)
  14700. BOOL
  14701. __stdcall
  14702. SetProcessPriorityBoost(
  14703.          HANDLE hProcess,
  14704.          BOOL bDisablePriorityBoost
  14705.     );
  14706.  
  14707.  
  14708.  
  14709.  
  14710.  
  14711. #pragma endregion
  14712.  
  14713. #pragma region Desktop Family or OneCore Family
  14714.  
  14715.  
  14716.  
  14717.  
  14718. __declspec(dllimport)
  14719. BOOL
  14720. __stdcall
  14721. GetThreadIOPendingFlag(
  14722.          HANDLE hThread,
  14723.           PBOOL lpIOIsPending
  14724.     );
  14725.  
  14726.  
  14727. __declspec(dllimport)
  14728. BOOL
  14729. __stdcall
  14730. GetSystemTimes(
  14731.               PFILETIME lpIdleTime,
  14732.               PFILETIME lpKernelTime,
  14733.               PFILETIME lpUserTime
  14734.     );
  14735.  
  14736.  
  14737.  
  14738.  
  14739.  
  14740. #pragma endregion
  14741.  
  14742. #pragma region Application Family or OneCore Family
  14743.  
  14744.  
  14745.  
  14746.  
  14747.  
  14748.  
  14749. typedef enum _THREAD_INFORMATION_CLASS {
  14750.     ThreadMemoryPriority,
  14751.     ThreadAbsoluteCpuPriority,
  14752.     ThreadDynamicCodePolicy,
  14753.     ThreadPowerThrottling,
  14754.     ThreadInformationClassMax
  14755. } THREAD_INFORMATION_CLASS;
  14756.  
  14757.  
  14758.  
  14759. typedef struct _MEMORY_PRIORITY_INFORMATION {
  14760.     ULONG MemoryPriority;
  14761. } MEMORY_PRIORITY_INFORMATION, *PMEMORY_PRIORITY_INFORMATION;
  14762.  
  14763. __declspec(dllimport)
  14764. BOOL
  14765. __stdcall
  14766. GetThreadInformation(
  14767.          HANDLE hThread,
  14768.          THREAD_INFORMATION_CLASS ThreadInformationClass,
  14769.                                               LPVOID ThreadInformation,
  14770.          DWORD ThreadInformationSize
  14771.     );
  14772.  
  14773.  
  14774. __declspec(dllimport)
  14775. BOOL
  14776. __stdcall
  14777. SetThreadInformation(
  14778.          HANDLE hThread,
  14779.          THREAD_INFORMATION_CLASS ThreadInformationClass,
  14780.                                             LPVOID ThreadInformation,
  14781.          DWORD ThreadInformationSize
  14782.     );
  14783. # 1035 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processthreadsapi.h" 3
  14784. typedef struct _THREAD_POWER_THROTTLING_STATE {
  14785.     ULONG Version;
  14786.     ULONG ControlMask;
  14787.     ULONG StateMask;
  14788. } THREAD_POWER_THROTTLING_STATE;
  14789.  
  14790.  
  14791.  
  14792.  
  14793. #pragma endregion
  14794.  
  14795. #pragma region Desktop Family or OneCore Family
  14796.  
  14797.  
  14798.  
  14799.  
  14800. __declspec(dllimport)
  14801. BOOL
  14802. __stdcall
  14803. IsProcessCritical(
  14804.          HANDLE hProcess,
  14805.           PBOOL Critical
  14806.     );
  14807.  
  14808.  
  14809.  
  14810.  
  14811.  
  14812.  
  14813. __declspec(dllimport)
  14814. BOOL
  14815. __stdcall
  14816. SetProtectedPolicy(
  14817.          LPCGUID PolicyGuid,
  14818.          ULONG_PTR PolicyValue,
  14819.               PULONG_PTR OldPolicyValue
  14820.     );
  14821.  
  14822.  
  14823. __declspec(dllimport)
  14824. BOOL
  14825. __stdcall
  14826. QueryProtectedPolicy(
  14827.          LPCGUID PolicyGuid,
  14828.           PULONG_PTR PolicyValue
  14829.     );
  14830.  
  14831.  
  14832.  
  14833.  
  14834.  
  14835. #pragma endregion
  14836.  
  14837. #pragma region Desktop Family or OneCore Family
  14838.  
  14839.  
  14840. __declspec(dllimport)
  14841. DWORD
  14842. __stdcall
  14843. SetThreadIdealProcessor(
  14844.          HANDLE hThread,
  14845.          DWORD dwIdealProcessor
  14846.     );
  14847.  
  14848.  
  14849.  
  14850. #pragma endregion
  14851.  
  14852. #pragma region Application Family or OneCore Family
  14853.  
  14854.  
  14855. typedef enum _PROCESS_INFORMATION_CLASS {
  14856.     ProcessMemoryPriority,
  14857.     ProcessMemoryExhaustionInfo,
  14858.     ProcessAppMemoryInfo,
  14859.     ProcessInPrivateInfo,
  14860.     ProcessPowerThrottling,
  14861.     ProcessReservedValue1,
  14862.     ProcessTelemetryCoverageInfo,
  14863.     ProcessProtectionLevelInfo,
  14864.     ProcessInformationClassMax
  14865. } PROCESS_INFORMATION_CLASS;
  14866.  
  14867. typedef struct _APP_MEMORY_INFORMATION {
  14868.     ULONG64 AvailableCommit;
  14869.     ULONG64 PrivateCommitUsage;
  14870.     ULONG64 PeakPrivateCommitUsage;
  14871.     ULONG64 TotalCommitUsage;
  14872. } APP_MEMORY_INFORMATION, *PAPP_MEMORY_INFORMATION;
  14873. # 1132 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processthreadsapi.h" 3
  14874. typedef enum _PROCESS_MEMORY_EXHAUSTION_TYPE {
  14875.     PMETypeFailFastOnCommitFailure,
  14876.     PMETypeMax
  14877. } PROCESS_MEMORY_EXHAUSTION_TYPE, *PPROCESS_MEMORY_EXHAUSTION_TYPE;
  14878.  
  14879.  
  14880.  
  14881.  
  14882. typedef struct _PROCESS_MEMORY_EXHAUSTION_INFO {
  14883.     USHORT Version;
  14884.     USHORT Reserved;
  14885.     PROCESS_MEMORY_EXHAUSTION_TYPE Type;
  14886.     ULONG_PTR Value;
  14887. } PROCESS_MEMORY_EXHAUSTION_INFO, *PPROCESS_MEMORY_EXHAUSTION_INFO;
  14888.  
  14889.  
  14890.  
  14891.  
  14892.  
  14893.  
  14894.  
  14895. typedef struct _PROCESS_POWER_THROTTLING_STATE {
  14896.     ULONG Version;
  14897.     ULONG ControlMask;
  14898.     ULONG StateMask;
  14899. } PROCESS_POWER_THROTTLING_STATE, *PPROCESS_POWER_THROTTLING_STATE;
  14900.  
  14901. typedef struct PROCESS_PROTECTION_LEVEL_INFORMATION {
  14902.     DWORD ProtectionLevel;
  14903. } PROCESS_PROTECTION_LEVEL_INFORMATION;
  14904.  
  14905.  
  14906.  
  14907. __declspec(dllimport)
  14908. BOOL
  14909. __stdcall
  14910. SetProcessInformation(
  14911.          HANDLE hProcess,
  14912.          PROCESS_INFORMATION_CLASS ProcessInformationClass,
  14913.                                              LPVOID ProcessInformation,
  14914.          DWORD ProcessInformationSize
  14915.     );
  14916.  
  14917.  
  14918. __declspec(dllimport)
  14919. BOOL
  14920. __stdcall
  14921. GetProcessInformation(
  14922.          HANDLE hProcess,
  14923.          PROCESS_INFORMATION_CLASS ProcessInformationClass,
  14924.                                                LPVOID ProcessInformation,
  14925.          DWORD ProcessInformationSize
  14926.     );
  14927.  
  14928.  
  14929.  
  14930.  
  14931.  
  14932.  
  14933.  
  14934. BOOL
  14935. __stdcall
  14936. GetSystemCpuSetInformation(
  14937.                                                             PSYSTEM_CPU_SET_INFORMATION Information,
  14938.          ULONG BufferLength,
  14939.                     PULONG ReturnedLength,
  14940.              HANDLE Process,
  14941.                ULONG Flags
  14942.     );
  14943.  
  14944.  
  14945.  
  14946. BOOL
  14947. __stdcall
  14948. GetProcessDefaultCpuSets(
  14949.          HANDLE Process,
  14950.                                                         PULONG CpuSetIds,
  14951.          ULONG CpuSetIdCount,
  14952.                     PULONG RequiredIdCount
  14953.     );
  14954.  
  14955.  
  14956.  
  14957. BOOL
  14958. __stdcall
  14959. SetProcessDefaultCpuSets(
  14960.          HANDLE Process,
  14961.                                   const ULONG* CpuSetIds,
  14962.          ULONG CpuSetIdCount
  14963.     );
  14964.  
  14965.  
  14966.  
  14967. BOOL
  14968. __stdcall
  14969. GetThreadSelectedCpuSets(
  14970.          HANDLE Thread,
  14971.                                                         PULONG CpuSetIds,
  14972.          ULONG CpuSetIdCount,
  14973.                     PULONG RequiredIdCount
  14974.     );
  14975.  
  14976.  
  14977.  
  14978. BOOL
  14979. __stdcall
  14980. SetThreadSelectedCpuSets(
  14981.          HANDLE Thread,
  14982.                               const ULONG* CpuSetIds,
  14983.          ULONG CpuSetIdCount
  14984.     );
  14985.  
  14986.  
  14987.  
  14988.  
  14989.  
  14990. #pragma endregion
  14991.  
  14992. #pragma region Desktop Family or OneCore Family
  14993.  
  14994.  
  14995. __declspec(dllimport)
  14996. BOOL
  14997. __stdcall
  14998. CreateProcessAsUserA(
  14999.              HANDLE hToken,
  15000.              LPCSTR lpApplicationName,
  15001.                 LPSTR lpCommandLine,
  15002.              LPSECURITY_ATTRIBUTES lpProcessAttributes,
  15003.              LPSECURITY_ATTRIBUTES lpThreadAttributes,
  15004.          BOOL bInheritHandles,
  15005.          DWORD dwCreationFlags,
  15006.              LPVOID lpEnvironment,
  15007.              LPCSTR lpCurrentDirectory,
  15008.          LPSTARTUPINFOA lpStartupInfo,
  15009.           LPPROCESS_INFORMATION lpProcessInformation
  15010.     );
  15011.  
  15012.  
  15013.  
  15014.  
  15015.  
  15016.  
  15017. __declspec(dllimport)
  15018. BOOL
  15019. __stdcall
  15020. GetProcessShutdownParameters(
  15021.           LPDWORD lpdwLevel,
  15022.           LPDWORD lpdwFlags
  15023.     );
  15024.  
  15025.  
  15026.  
  15027. #pragma endregion
  15028.  
  15029. __declspec(dllimport)
  15030. HRESULT
  15031. __stdcall
  15032. SetThreadDescription(
  15033.          HANDLE hThread,
  15034.          PCWSTR lpThreadDescription
  15035.     );
  15036.  
  15037.  
  15038. __declspec(dllimport)
  15039. HRESULT
  15040. __stdcall
  15041. GetThreadDescription(
  15042.          HANDLE hThread,
  15043.                       PWSTR* ppszThreadDescription
  15044.     );
  15045.  
  15046.  
  15047.  
  15048.  
  15049.  
  15050.  
  15051.  
  15052. #pragma option pop
  15053. # 59 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  15054.  
  15055. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sysinfoapi.h" 1 3
  15056. #pragma option push -b -a8 -pc -A- -w-pun
  15057. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sysinfoapi.h" 3
  15058. #pragma region Application Family or OneCore Family
  15059.  
  15060.  
  15061. typedef struct _SYSTEM_INFO {
  15062.     union {
  15063.         DWORD dwOemId;
  15064.         struct {
  15065.             WORD wProcessorArchitecture;
  15066.             WORD wReserved;
  15067.         } ;
  15068.     } ;
  15069.     DWORD dwPageSize;
  15070.     LPVOID lpMinimumApplicationAddress;
  15071.     LPVOID lpMaximumApplicationAddress;
  15072.     DWORD_PTR dwActiveProcessorMask;
  15073.     DWORD dwNumberOfProcessors;
  15074.     DWORD dwProcessorType;
  15075.     DWORD dwAllocationGranularity;
  15076.     WORD wProcessorLevel;
  15077.     WORD wProcessorRevision;
  15078. } SYSTEM_INFO, *LPSYSTEM_INFO;
  15079.  
  15080.  
  15081. #pragma endregion
  15082.  
  15083. #pragma region Application Family or OneCore Family
  15084.  
  15085.  
  15086. typedef struct _MEMORYSTATUSEX {
  15087.     DWORD dwLength;
  15088.     DWORD dwMemoryLoad;
  15089.     DWORDLONG ullTotalPhys;
  15090.     DWORDLONG ullAvailPhys;
  15091.     DWORDLONG ullTotalPageFile;
  15092.     DWORDLONG ullAvailPageFile;
  15093.     DWORDLONG ullTotalVirtual;
  15094.     DWORDLONG ullAvailVirtual;
  15095.     DWORDLONG ullAvailExtendedVirtual;
  15096. } MEMORYSTATUSEX, *LPMEMORYSTATUSEX;
  15097.  
  15098. __declspec(dllimport)
  15099. BOOL
  15100. __stdcall
  15101. GlobalMemoryStatusEx(
  15102.           LPMEMORYSTATUSEX lpBuffer
  15103.     );
  15104.  
  15105.  
  15106. __declspec(dllimport)
  15107. void
  15108. __stdcall
  15109. GetSystemInfo(
  15110.           LPSYSTEM_INFO lpSystemInfo
  15111.     );
  15112.  
  15113.  
  15114. __declspec(dllimport)
  15115. void
  15116. __stdcall
  15117. GetSystemTime(
  15118.           LPSYSTEMTIME lpSystemTime
  15119.     );
  15120.  
  15121.  
  15122. __declspec(dllimport)
  15123. void
  15124. __stdcall
  15125. GetSystemTimeAsFileTime(
  15126.           LPFILETIME lpSystemTimeAsFileTime
  15127.     );
  15128.  
  15129.  
  15130. __declspec(dllimport)
  15131. void
  15132. __stdcall
  15133. GetLocalTime(
  15134.           LPSYSTEMTIME lpSystemTime
  15135.     );
  15136.  
  15137.  
  15138.  
  15139. #pragma endregion
  15140.  
  15141. #pragma region Desktop Family or OneCore Family
  15142.  
  15143.  
  15144. __declspec(deprecated)
  15145. __declspec(dllimport)
  15146.  
  15147. DWORD
  15148. __stdcall
  15149. GetVersion(
  15150.     void
  15151.     );
  15152.  
  15153.  
  15154. __declspec(dllimport)
  15155. BOOL
  15156. __stdcall
  15157. SetLocalTime(
  15158.          const SYSTEMTIME* lpSystemTime
  15159.     );
  15160.  
  15161.  
  15162.  
  15163. #pragma endregion
  15164.  
  15165.  
  15166. #pragma region Application Family or OneCore Family
  15167.  
  15168.  
  15169.  
  15170. __declspec(dllimport)
  15171. DWORD
  15172. __stdcall
  15173. GetTickCount(
  15174.     void
  15175.     );
  15176.  
  15177.  
  15178.  
  15179.  
  15180. __declspec(dllimport)
  15181. ULONGLONG
  15182. __stdcall
  15183. GetTickCount64(
  15184.     void
  15185.     );
  15186.  
  15187.  
  15188.  
  15189.  
  15190.  
  15191. #pragma endregion
  15192.  
  15193. #pragma region Desktop Family or OneCore Family
  15194.  
  15195.  
  15196. __declspec(dllimport)
  15197.  
  15198. BOOL
  15199. __stdcall
  15200. GetSystemTimeAdjustment(
  15201.           PDWORD lpTimeAdjustment,
  15202.           PDWORD lpTimeIncrement,
  15203.           PBOOL lpTimeAdjustmentDisabled
  15204.     );
  15205.  
  15206.  
  15207. __declspec(dllimport)
  15208.  
  15209. BOOL
  15210. __stdcall
  15211. GetSystemTimeAdjustmentPrecise(
  15212.           PDWORD64 lpTimeAdjustment,
  15213.           PDWORD64 lpTimeIncrement,
  15214.           PBOOL lpTimeAdjustmentDisabled
  15215.     );
  15216.  
  15217.  
  15218.  
  15219. #pragma endregion
  15220.  
  15221. #pragma region Application Family or OneCore Family
  15222.  
  15223.  
  15224. __declspec(dllimport)
  15225.  
  15226. UINT
  15227. __stdcall
  15228. GetSystemDirectoryA(
  15229.                                           LPSTR lpBuffer,
  15230.          UINT uSize
  15231.     );
  15232.  
  15233. __declspec(dllimport)
  15234.  
  15235. UINT
  15236. __stdcall
  15237. GetSystemDirectoryW(
  15238.                                           LPWSTR lpBuffer,
  15239.          UINT uSize
  15240.     );
  15241.  
  15242.  
  15243.  
  15244.  
  15245.  
  15246.  
  15247.  
  15248.  
  15249. #pragma endregion
  15250.  
  15251. #pragma region Desktop Family or OneCore Family
  15252.  
  15253.  
  15254. __declspec(dllimport)
  15255.  
  15256.  
  15257. UINT
  15258. __stdcall
  15259. GetWindowsDirectoryA(
  15260.                                           LPSTR lpBuffer,
  15261.          UINT uSize
  15262.     );
  15263.  
  15264. __declspec(dllimport)
  15265.  
  15266.  
  15267. UINT
  15268. __stdcall
  15269. GetWindowsDirectoryW(
  15270.                                           LPWSTR lpBuffer,
  15271.          UINT uSize
  15272.     );
  15273.  
  15274.  
  15275.  
  15276.  
  15277.  
  15278.  
  15279.  
  15280. __declspec(dllimport)
  15281.  
  15282. UINT
  15283. __stdcall
  15284. GetSystemWindowsDirectoryA(
  15285.                                           LPSTR lpBuffer,
  15286.          UINT uSize
  15287.     );
  15288.  
  15289. __declspec(dllimport)
  15290.  
  15291. UINT
  15292. __stdcall
  15293. GetSystemWindowsDirectoryW(
  15294.                                           LPWSTR lpBuffer,
  15295.          UINT uSize
  15296.     );
  15297.  
  15298.  
  15299.  
  15300.  
  15301.  
  15302.  
  15303.  
  15304.  
  15305. #pragma endregion
  15306.  
  15307. #pragma region Desktop Family or OneCore Family
  15308.  
  15309.  
  15310. typedef enum _COMPUTER_NAME_FORMAT {
  15311.     ComputerNameNetBIOS,
  15312.     ComputerNameDnsHostname,
  15313.     ComputerNameDnsDomain,
  15314.     ComputerNameDnsFullyQualified,
  15315.     ComputerNamePhysicalNetBIOS,
  15316.     ComputerNamePhysicalDnsHostname,
  15317.     ComputerNamePhysicalDnsDomain,
  15318.     ComputerNamePhysicalDnsFullyQualified,
  15319.     ComputerNameMax
  15320. } COMPUTER_NAME_FORMAT ;
  15321.  
  15322.  
  15323. #pragma endregion
  15324.  
  15325. #pragma region Desktop Family or OneCore Family
  15326.  
  15327.  
  15328. __declspec(dllimport)
  15329.  
  15330. BOOL
  15331. __stdcall
  15332. GetComputerNameExA(
  15333.          COMPUTER_NAME_FORMAT NameType,
  15334.                                            LPSTR lpBuffer,
  15335.             LPDWORD nSize
  15336.     );
  15337.  
  15338. __declspec(dllimport)
  15339.  
  15340. BOOL
  15341. __stdcall
  15342. GetComputerNameExW(
  15343.          COMPUTER_NAME_FORMAT NameType,
  15344.                                            LPWSTR lpBuffer,
  15345.             LPDWORD nSize
  15346.     );
  15347.  
  15348.  
  15349.  
  15350.  
  15351.  
  15352.  
  15353.  
  15354.  
  15355. #pragma endregion
  15356.  
  15357. #pragma region Desktop Family or OneCore Family
  15358.  
  15359.  
  15360. __declspec(dllimport)
  15361. BOOL
  15362. __stdcall
  15363. SetComputerNameExW(
  15364.          COMPUTER_NAME_FORMAT NameType,
  15365.          LPCWSTR lpBuffer
  15366.     );
  15367.  
  15368.  
  15369.  
  15370.  
  15371.  
  15372.  
  15373. __declspec(dllimport)
  15374. BOOL
  15375. __stdcall
  15376. SetSystemTime(
  15377.          const SYSTEMTIME* lpSystemTime
  15378.     );
  15379.  
  15380.  
  15381.  
  15382. #pragma endregion
  15383.  
  15384. #pragma region Application Family or OneCore Family
  15385.  
  15386.  
  15387. __declspec(deprecated)
  15388. __declspec(dllimport)
  15389.  
  15390. BOOL
  15391. __stdcall
  15392. GetVersionExA(
  15393.             LPOSVERSIONINFOA lpVersionInformation
  15394.     );
  15395.  
  15396. __declspec(deprecated)
  15397. __declspec(dllimport)
  15398.  
  15399. BOOL
  15400. __stdcall
  15401. GetVersionExW(
  15402.             LPOSVERSIONINFOW lpVersionInformation
  15403.     );
  15404.  
  15405.  
  15406.  
  15407.  
  15408.  
  15409.  
  15410.  
  15411. __declspec(dllimport)
  15412. BOOL
  15413. __stdcall
  15414. GetLogicalProcessorInformation(
  15415.                                                                PSYSTEM_LOGICAL_PROCESSOR_INFORMATION Buffer,
  15416.             PDWORD ReturnedLength
  15417.     );
  15418.  
  15419.  
  15420.  
  15421.  
  15422. __declspec(dllimport)
  15423. BOOL
  15424. __stdcall
  15425. GetLogicalProcessorInformationEx(
  15426.          LOGICAL_PROCESSOR_RELATIONSHIP RelationshipType,
  15427.                                                                PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX Buffer,
  15428.             PDWORD ReturnedLength
  15429.     );
  15430.  
  15431.  
  15432.  
  15433.  
  15434.  
  15435. #pragma endregion
  15436.  
  15437. #pragma region Application Family or OneCore Family
  15438.  
  15439.  
  15440.  
  15441.  
  15442. __declspec(dllimport)
  15443. void
  15444. __stdcall
  15445. GetNativeSystemInfo(
  15446.           LPSYSTEM_INFO lpSystemInfo
  15447.     );
  15448.  
  15449.  
  15450.  
  15451.  
  15452.  
  15453.  
  15454. __declspec(dllimport)
  15455. void
  15456. __stdcall
  15457. GetSystemTimePreciseAsFileTime(
  15458.           LPFILETIME lpSystemTimeAsFileTime
  15459.     );
  15460.  
  15461.  
  15462.  
  15463.  
  15464.  
  15465. #pragma endregion
  15466.  
  15467. #pragma region Desktop Family or OneCore Family
  15468.  
  15469.  
  15470.  
  15471.  
  15472. __declspec(dllimport)
  15473. BOOL
  15474. __stdcall
  15475. GetProductInfo(
  15476.          DWORD dwOSMajorVersion,
  15477.          DWORD dwOSMinorVersion,
  15478.          DWORD dwSpMajorVersion,
  15479.          DWORD dwSpMinorVersion,
  15480.           PDWORD pdwReturnedProductType
  15481.     );
  15482.  
  15483.  
  15484.  
  15485.  
  15486.  
  15487.  
  15488. __declspec(dllimport)
  15489. ULONGLONG
  15490. __stdcall
  15491. VerSetConditionMask(
  15492.          ULONGLONG ConditionMask,
  15493.          ULONG TypeMask,
  15494.          UCHAR Condition
  15495.     );
  15496.  
  15497.  
  15498.  
  15499.  
  15500.  
  15501.  
  15502. __declspec(dllimport)
  15503. BOOL
  15504. __stdcall
  15505. GetOsSafeBootMode(
  15506.           PDWORD Flags
  15507.     );
  15508.  
  15509.  
  15510.  
  15511.  
  15512.  
  15513. #pragma endregion
  15514.  
  15515. #pragma region OneCore Family or App Family
  15516.  
  15517.  
  15518. __declspec(dllimport)
  15519. UINT
  15520. __stdcall
  15521. EnumSystemFirmwareTables(
  15522.          DWORD FirmwareTableProviderSignature,
  15523.                                                  PVOID pFirmwareTableEnumBuffer,
  15524.          DWORD BufferSize
  15525.     );
  15526.  
  15527.  
  15528. __declspec(dllimport)
  15529. UINT
  15530. __stdcall
  15531. GetSystemFirmwareTable(
  15532.          DWORD FirmwareTableProviderSignature,
  15533.          DWORD FirmwareTableID,
  15534.                                                  PVOID pFirmwareTableBuffer,
  15535.          DWORD BufferSize
  15536.     );
  15537.  
  15538.  
  15539.  
  15540. #pragma endregion
  15541.  
  15542. #pragma region Desktop Family or OneCore Family
  15543.  
  15544.  
  15545. __declspec(dllimport)
  15546.  
  15547. BOOL
  15548. __stdcall
  15549. DnsHostnameToComputerNameExW(
  15550.          LPCWSTR Hostname,
  15551.                                            LPWSTR ComputerName,
  15552.             LPDWORD nSize
  15553.     );
  15554.  
  15555.  
  15556. __declspec(dllimport)
  15557.  
  15558. BOOL
  15559. __stdcall
  15560. GetPhysicallyInstalledSystemMemory(
  15561.           PULONGLONG TotalMemoryInKilobytes
  15562.     );
  15563.  
  15564.  
  15565.  
  15566.  
  15567. __declspec(dllimport)
  15568. BOOL
  15569. __stdcall
  15570. SetComputerNameEx2W(
  15571.          COMPUTER_NAME_FORMAT NameType,
  15572.          DWORD Flags,
  15573.          LPCWSTR lpBuffer
  15574.     );
  15575.  
  15576.  
  15577.  
  15578.  
  15579.  
  15580.  
  15581. __declspec(dllimport)
  15582.  
  15583. BOOL
  15584. __stdcall
  15585. SetSystemTimeAdjustment(
  15586.          DWORD dwTimeAdjustment,
  15587.          BOOL bTimeAdjustmentDisabled
  15588.     );
  15589.  
  15590.  
  15591. __declspec(dllimport)
  15592.  
  15593. BOOL
  15594. __stdcall
  15595. SetSystemTimeAdjustmentPrecise(
  15596.          DWORD64 dwTimeAdjustment,
  15597.          BOOL bTimeAdjustmentDisabled
  15598.     );
  15599.  
  15600.  
  15601. __declspec(dllimport)
  15602. BOOL
  15603. __stdcall
  15604. InstallELAMCertificateInfo(
  15605.          HANDLE ELAMFile
  15606.     );
  15607.  
  15608.  
  15609.  
  15610. #pragma endregion
  15611.  
  15612.  
  15613.  
  15614. __declspec(dllimport)
  15615. BOOL
  15616. __stdcall
  15617. GetProcessorSystemCycleTime(
  15618.          USHORT Group,
  15619.                                                                PSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION Buffer,
  15620.             PDWORD ReturnedLength
  15621.     );
  15622.  
  15623.  
  15624.  
  15625.  
  15626. #pragma region Desktop Family or OneCore Family
  15627.  
  15628.  
  15629.  
  15630.  
  15631. __declspec(dllimport)
  15632. BOOL
  15633. __stdcall
  15634. GetOsManufacturingMode(
  15635.           PBOOL pbEnabled
  15636.     );
  15637.  
  15638.  
  15639.  
  15640.  
  15641. #pragma endregion
  15642.  
  15643. #pragma region App Family or OneCore Family
  15644.  
  15645.  
  15646.  
  15647.  
  15648. __declspec(dllimport)
  15649. HRESULT
  15650. __stdcall
  15651. GetIntegratedDisplaySize(
  15652.           double* sizeInInches
  15653.     );
  15654.  
  15655.  
  15656.  
  15657.  
  15658.  
  15659. #pragma endregion
  15660.  
  15661. #pragma region Desktop Family or OneCore Family
  15662.  
  15663.  
  15664. __declspec(dllimport)
  15665. BOOL
  15666. __stdcall
  15667. SetComputerNameA(
  15668.          LPCSTR lpComputerName
  15669.     );
  15670.  
  15671. __declspec(dllimport)
  15672. BOOL
  15673. __stdcall
  15674. SetComputerNameW(
  15675.          LPCWSTR lpComputerName
  15676.     );
  15677.  
  15678.  
  15679.  
  15680.  
  15681.  
  15682.  
  15683.  
  15684. __declspec(dllimport)
  15685. BOOL
  15686. __stdcall
  15687. SetComputerNameExA(
  15688.          COMPUTER_NAME_FORMAT NameType,
  15689.          LPCSTR lpBuffer
  15690.     );
  15691.  
  15692.  
  15693.  
  15694.  
  15695.  
  15696.  
  15697.  
  15698. #pragma endregion
  15699. # 704 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\sysinfoapi.h" 3
  15700. #pragma option pop
  15701. # 60 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  15702.  
  15703. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 1 3
  15704. #pragma option push -b -a8 -pc -A- -w-pun
  15705. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  15706. #pragma region Application Family or OneCore Family
  15707. # 47 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  15708. #pragma endregion
  15709.  
  15710. #pragma region Desktop Family or OneCore Family
  15711.  
  15712.  
  15713. __declspec(dllimport)
  15714.  
  15715.  
  15716. LPVOID
  15717. __stdcall
  15718. VirtualAlloc(
  15719.              LPVOID lpAddress,
  15720.          SIZE_T dwSize,
  15721.          DWORD flAllocationType,
  15722.          DWORD flProtect
  15723.     );
  15724.  
  15725.  
  15726. __declspec(dllimport)
  15727.  
  15728. BOOL
  15729. __stdcall
  15730. VirtualProtect(
  15731.          LPVOID lpAddress,
  15732.          SIZE_T dwSize,
  15733.          DWORD flNewProtect,
  15734.           PDWORD lpflOldProtect
  15735.     );
  15736.  
  15737.  
  15738.  
  15739. #pragma endregion
  15740.  
  15741. #pragma region Application Family or OneCore Family
  15742. # 92 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  15743. __declspec(dllimport)
  15744. BOOL
  15745. __stdcall
  15746. VirtualFree(
  15747.                                                                                                                          LPVOID lpAddress,
  15748.          SIZE_T dwSize,
  15749.          DWORD dwFreeType
  15750.     );
  15751.  
  15752.  
  15753. __declspec(dllimport)
  15754. SIZE_T
  15755. __stdcall
  15756. VirtualQuery(
  15757.              LPCVOID lpAddress,
  15758.                                            PMEMORY_BASIC_INFORMATION lpBuffer,
  15759.          SIZE_T dwLength
  15760.     );
  15761.  
  15762.  
  15763.  
  15764. #pragma endregion
  15765.  
  15766. #pragma region Desktop Family or OneCore Family
  15767.  
  15768.  
  15769. __declspec(dllimport)
  15770.  
  15771.  
  15772. LPVOID
  15773. __stdcall
  15774. VirtualAllocEx(
  15775.          HANDLE hProcess,
  15776.              LPVOID lpAddress,
  15777.          SIZE_T dwSize,
  15778.          DWORD flAllocationType,
  15779.          DWORD flProtect
  15780.     );
  15781.  
  15782.  
  15783. __declspec(dllimport)
  15784.  
  15785. BOOL
  15786. __stdcall
  15787. VirtualProtectEx(
  15788.          HANDLE hProcess,
  15789.          LPVOID lpAddress,
  15790.          SIZE_T dwSize,
  15791.          DWORD flNewProtect,
  15792.           PDWORD lpflOldProtect
  15793.     );
  15794.  
  15795.  
  15796. __declspec(dllimport)
  15797. SIZE_T
  15798. __stdcall
  15799. VirtualQueryEx(
  15800.          HANDLE hProcess,
  15801.              LPCVOID lpAddress,
  15802.                                            PMEMORY_BASIC_INFORMATION lpBuffer,
  15803.          SIZE_T dwLength
  15804.     );
  15805.  
  15806.  
  15807. __declspec(dllimport)
  15808.  
  15809. BOOL
  15810. __stdcall
  15811. ReadProcessMemory(
  15812.          HANDLE hProcess,
  15813.          LPCVOID lpBaseAddress,
  15814.                                                       LPVOID lpBuffer,
  15815.          SIZE_T nSize,
  15816.               SIZE_T* lpNumberOfBytesRead
  15817.     );
  15818.  
  15819.  
  15820. __declspec(dllimport)
  15821.  
  15822. BOOL
  15823. __stdcall
  15824. WriteProcessMemory(
  15825.          HANDLE hProcess,
  15826.          LPVOID lpBaseAddress,
  15827.                             LPCVOID lpBuffer,
  15828.          SIZE_T nSize,
  15829.               SIZE_T* lpNumberOfBytesWritten
  15830.     );
  15831.  
  15832.  
  15833. __declspec(dllimport)
  15834.  
  15835. HANDLE
  15836. __stdcall
  15837. CreateFileMappingW(
  15838.          HANDLE hFile,
  15839.              LPSECURITY_ATTRIBUTES lpFileMappingAttributes,
  15840.          DWORD flProtect,
  15841.          DWORD dwMaximumSizeHigh,
  15842.          DWORD dwMaximumSizeLow,
  15843.              LPCWSTR lpName
  15844.     );
  15845.  
  15846.  
  15847.  
  15848.  
  15849.  
  15850.  
  15851. __declspec(dllimport)
  15852.  
  15853. HANDLE
  15854. __stdcall
  15855. OpenFileMappingW(
  15856.          DWORD dwDesiredAccess,
  15857.          BOOL bInheritHandle,
  15858.          LPCWSTR lpName
  15859.     );
  15860.  
  15861.  
  15862.  
  15863.  
  15864.  
  15865.  
  15866. __declspec(dllimport)
  15867.  
  15868. LPVOID
  15869. __stdcall
  15870. MapViewOfFile(
  15871.          HANDLE hFileMappingObject,
  15872.          DWORD dwDesiredAccess,
  15873.          DWORD dwFileOffsetHigh,
  15874.          DWORD dwFileOffsetLow,
  15875.          SIZE_T dwNumberOfBytesToMap
  15876.     );
  15877.  
  15878.  
  15879. __declspec(dllimport)
  15880.  
  15881. LPVOID
  15882. __stdcall
  15883. MapViewOfFileEx(
  15884.          HANDLE hFileMappingObject,
  15885.          DWORD dwDesiredAccess,
  15886.          DWORD dwFileOffsetHigh,
  15887.          DWORD dwFileOffsetLow,
  15888.          SIZE_T dwNumberOfBytesToMap,
  15889.              LPVOID lpBaseAddress
  15890.     );
  15891.  
  15892.  
  15893.  
  15894. #pragma endregion
  15895.  
  15896. #pragma region Application Family or OneCore Family
  15897. # 260 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  15898. __declspec(dllimport)
  15899. BOOL
  15900. __stdcall
  15901. VirtualFreeEx(
  15902.          HANDLE hProcess,
  15903.                                                                                                                          LPVOID lpAddress,
  15904.          SIZE_T dwSize,
  15905.          DWORD dwFreeType
  15906.     );
  15907.  
  15908.  
  15909. __declspec(dllimport)
  15910. BOOL
  15911. __stdcall
  15912. FlushViewOfFile(
  15913.          LPCVOID lpBaseAddress,
  15914.          SIZE_T dwNumberOfBytesToFlush
  15915.     );
  15916.  
  15917.  
  15918. __declspec(dllimport)
  15919. BOOL
  15920. __stdcall
  15921. UnmapViewOfFile(
  15922.          LPCVOID lpBaseAddress
  15923.     );
  15924.  
  15925.  
  15926.  
  15927. #pragma endregion
  15928.  
  15929. #pragma region Application Family or OneCore Family
  15930.  
  15931.  
  15932. __declspec(dllimport)
  15933. SIZE_T
  15934. __stdcall
  15935. GetLargePageMinimum(
  15936.     void
  15937.     );
  15938.  
  15939.  
  15940. __declspec(dllimport)
  15941.  
  15942. BOOL
  15943. __stdcall
  15944. GetProcessWorkingSetSizeEx(
  15945.          HANDLE hProcess,
  15946.           PSIZE_T lpMinimumWorkingSetSize,
  15947.           PSIZE_T lpMaximumWorkingSetSize,
  15948.           PDWORD Flags
  15949.     );
  15950.  
  15951.  
  15952. __declspec(dllimport)
  15953. BOOL
  15954. __stdcall
  15955. SetProcessWorkingSetSizeEx(
  15956.          HANDLE hProcess,
  15957.          SIZE_T dwMinimumWorkingSetSize,
  15958.          SIZE_T dwMaximumWorkingSetSize,
  15959.          DWORD Flags
  15960.     );
  15961.  
  15962.  
  15963.  
  15964. #pragma endregion
  15965.  
  15966. #pragma region Desktop Family or OneCore Family
  15967.  
  15968.  
  15969. __declspec(dllimport)
  15970. BOOL
  15971. __stdcall
  15972. VirtualLock(
  15973.          LPVOID lpAddress,
  15974.          SIZE_T dwSize
  15975.     );
  15976.  
  15977.  
  15978. __declspec(dllimport)
  15979. BOOL
  15980. __stdcall
  15981. VirtualUnlock(
  15982.          LPVOID lpAddress,
  15983.          SIZE_T dwSize
  15984.     );
  15985.  
  15986.  
  15987.  
  15988. #pragma endregion
  15989.  
  15990. #pragma region Application Family or OneCore Family
  15991.  
  15992.  
  15993. __declspec(dllimport)
  15994.  
  15995. UINT
  15996. __stdcall
  15997. GetWriteWatch(
  15998.          DWORD dwFlags,
  15999.          PVOID lpBaseAddress,
  16000.          SIZE_T dwRegionSize,
  16001.                                                PVOID* lpAddresses,
  16002.                 ULONG_PTR* lpdwCount,
  16003.               LPDWORD lpdwGranularity
  16004.     );
  16005.  
  16006.  
  16007. __declspec(dllimport)
  16008. UINT
  16009. __stdcall
  16010. ResetWriteWatch(
  16011.          LPVOID lpBaseAddress,
  16012.          SIZE_T dwRegionSize
  16013.     );
  16014.  
  16015.  
  16016.  
  16017. #pragma endregion
  16018.  
  16019. #pragma region Desktop Family or OneCore Family
  16020.  
  16021.  
  16022.  
  16023.  
  16024. typedef enum _MEMORY_RESOURCE_NOTIFICATION_TYPE {
  16025.     LowMemoryResourceNotification,
  16026.     HighMemoryResourceNotification
  16027. } MEMORY_RESOURCE_NOTIFICATION_TYPE;
  16028.  
  16029. __declspec(dllimport)
  16030.  
  16031. HANDLE
  16032. __stdcall
  16033. CreateMemoryResourceNotification(
  16034.          MEMORY_RESOURCE_NOTIFICATION_TYPE NotificationType
  16035.     );
  16036.  
  16037.  
  16038. __declspec(dllimport)
  16039.  
  16040. BOOL
  16041. __stdcall
  16042. QueryMemoryResourceNotification(
  16043.          HANDLE ResourceNotificationHandle,
  16044.           PBOOL ResourceState
  16045.     );
  16046. # 420 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  16047. __declspec(dllimport)
  16048.  
  16049. BOOL
  16050. __stdcall
  16051. GetSystemFileCacheSize(
  16052.           PSIZE_T lpMinimumFileCacheSize,
  16053.           PSIZE_T lpMaximumFileCacheSize,
  16054.           PDWORD lpFlags
  16055.     );
  16056.  
  16057.  
  16058. __declspec(dllimport)
  16059. BOOL
  16060. __stdcall
  16061. SetSystemFileCacheSize(
  16062.          SIZE_T MinimumFileCacheSize,
  16063.          SIZE_T MaximumFileCacheSize,
  16064.          DWORD Flags
  16065.     );
  16066.  
  16067.  
  16068.  
  16069.  
  16070.  
  16071.  
  16072. __declspec(dllimport)
  16073.  
  16074. HANDLE
  16075. __stdcall
  16076. CreateFileMappingNumaW(
  16077.          HANDLE hFile,
  16078.              LPSECURITY_ATTRIBUTES lpFileMappingAttributes,
  16079.          DWORD flProtect,
  16080.          DWORD dwMaximumSizeHigh,
  16081.          DWORD dwMaximumSizeLow,
  16082.              LPCWSTR lpName,
  16083.          DWORD nndPreferred
  16084.     );
  16085. # 468 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  16086. typedef struct _WIN32_MEMORY_RANGE_ENTRY {
  16087.     PVOID VirtualAddress;
  16088.     SIZE_T NumberOfBytes;
  16089. } WIN32_MEMORY_RANGE_ENTRY, *PWIN32_MEMORY_RANGE_ENTRY;
  16090.  
  16091. __declspec(dllimport)
  16092. BOOL
  16093. __stdcall
  16094. PrefetchVirtualMemory(
  16095.          HANDLE hProcess,
  16096.          ULONG_PTR NumberOfEntries,
  16097.                                 PWIN32_MEMORY_RANGE_ENTRY VirtualAddresses,
  16098.          ULONG Flags
  16099.     );
  16100.  
  16101.  
  16102.  
  16103.  
  16104.  
  16105. #pragma endregion
  16106.  
  16107. #pragma region Application Family or OneCore Family
  16108.  
  16109.  
  16110.  
  16111.  
  16112. __declspec(dllimport)
  16113.  
  16114. HANDLE
  16115. __stdcall
  16116. CreateFileMappingFromApp(
  16117.          HANDLE hFile,
  16118.              PSECURITY_ATTRIBUTES SecurityAttributes,
  16119.          ULONG PageProtection,
  16120.          ULONG64 MaximumSize,
  16121.              PCWSTR Name
  16122.     );
  16123.  
  16124.  
  16125. __declspec(dllimport)
  16126.  
  16127. PVOID
  16128. __stdcall
  16129. MapViewOfFileFromApp(
  16130.          HANDLE hFileMappingObject,
  16131.          ULONG DesiredAccess,
  16132.          ULONG64 FileOffset,
  16133.          SIZE_T NumberOfBytesToMap
  16134.     );
  16135.  
  16136.  
  16137. __declspec(dllimport)
  16138. BOOL
  16139. __stdcall
  16140. UnmapViewOfFileEx(
  16141.          PVOID BaseAddress,
  16142.          ULONG UnmapFlags
  16143.     );
  16144.  
  16145.  
  16146.  
  16147.  
  16148.  
  16149. #pragma endregion
  16150.  
  16151. #pragma region Desktop Family or OneCore Family
  16152.  
  16153.  
  16154.  
  16155.  
  16156. __declspec(dllimport)
  16157.  
  16158. BOOL
  16159. __stdcall
  16160. AllocateUserPhysicalPages(
  16161.          HANDLE hProcess,
  16162.             PULONG_PTR NumberOfPages,
  16163.                                                    PULONG_PTR PageArray
  16164.     );
  16165.  
  16166.  
  16167. __declspec(dllimport)
  16168.  
  16169. BOOL
  16170. __stdcall
  16171. FreeUserPhysicalPages(
  16172.          HANDLE hProcess,
  16173.             PULONG_PTR NumberOfPages,
  16174.                                PULONG_PTR PageArray
  16175.     );
  16176.  
  16177.  
  16178. __declspec(dllimport)
  16179.  
  16180. BOOL
  16181. __stdcall
  16182. MapUserPhysicalPages(
  16183.          PVOID VirtualAddress,
  16184.          ULONG_PTR NumberOfPages,
  16185.                                   PULONG_PTR PageArray
  16186.     );
  16187.  
  16188.  
  16189.  
  16190.  
  16191.  
  16192.  
  16193. __declspec(dllimport)
  16194.  
  16195. BOOL
  16196. __stdcall
  16197. AllocateUserPhysicalPagesNuma(
  16198.          HANDLE hProcess,
  16199.             PULONG_PTR NumberOfPages,
  16200.                                                    PULONG_PTR PageArray,
  16201.          DWORD nndPreferred
  16202.     );
  16203.  
  16204.  
  16205. __declspec(dllimport)
  16206.  
  16207. LPVOID
  16208. __stdcall
  16209. VirtualAllocExNuma(
  16210.          HANDLE hProcess,
  16211.              LPVOID lpAddress,
  16212.          SIZE_T dwSize,
  16213.          DWORD flAllocationType,
  16214.          DWORD flProtect,
  16215.          DWORD nndPreferred
  16216.     );
  16217. # 607 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  16218. __declspec(dllimport)
  16219.  
  16220. BOOL
  16221. __stdcall
  16222. GetMemoryErrorHandlingCapabilities(
  16223.           PULONG Capabilities
  16224.     );
  16225.  
  16226.  
  16227.  
  16228. typedef
  16229. void
  16230. __stdcall
  16231. BAD_MEMORY_CALLBACK_ROUTINE(
  16232.     void
  16233.     );
  16234.  
  16235. typedef BAD_MEMORY_CALLBACK_ROUTINE *PBAD_MEMORY_CALLBACK_ROUTINE;
  16236.  
  16237. __declspec(dllimport)
  16238.  
  16239. PVOID
  16240. __stdcall
  16241. RegisterBadMemoryNotification(
  16242.          PBAD_MEMORY_CALLBACK_ROUTINE Callback
  16243.     );
  16244.  
  16245.  
  16246. __declspec(dllimport)
  16247.  
  16248. BOOL
  16249. __stdcall
  16250. UnregisterBadMemoryNotification(
  16251.          PVOID RegistrationHandle
  16252.     );
  16253.  
  16254.  
  16255.  
  16256.  
  16257.  
  16258. #pragma endregion
  16259.  
  16260. #pragma region Application Family or OneCore Family
  16261. # 662 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  16262. typedef enum OFFER_PRIORITY {
  16263.     VmOfferPriorityVeryLow = 1,
  16264.     VmOfferPriorityLow,
  16265.     VmOfferPriorityBelowNormal,
  16266.     VmOfferPriorityNormal
  16267. } OFFER_PRIORITY;
  16268.  
  16269. DWORD
  16270. __stdcall
  16271. OfferVirtualMemory(
  16272.                           PVOID VirtualAddress,
  16273.          SIZE_T Size,
  16274.          OFFER_PRIORITY Priority
  16275.     );
  16276.  
  16277.  
  16278. DWORD
  16279. __stdcall
  16280. ReclaimVirtualMemory(
  16281.                      void const* VirtualAddress,
  16282.          SIZE_T Size
  16283.     );
  16284.  
  16285.  
  16286. DWORD
  16287. __stdcall
  16288. DiscardVirtualMemory(
  16289.                           PVOID VirtualAddress,
  16290.          SIZE_T Size
  16291.     );
  16292.  
  16293.  
  16294.  
  16295.  
  16296.  
  16297.  
  16298.  
  16299. #pragma endregion
  16300.  
  16301. #pragma region Application Family or OneCore Family
  16302.  
  16303.  
  16304.  
  16305.  
  16306. __declspec(dllimport)
  16307. BOOL
  16308. __stdcall
  16309. SetProcessValidCallTargets(
  16310.          HANDLE hProcess,
  16311.          PVOID VirtualAddress,
  16312.          SIZE_T RegionSize,
  16313.          ULONG NumberOfOffsets,
  16314.                                      PCFG_CALL_TARGET_INFO OffsetInformation
  16315.     );
  16316.  
  16317.  
  16318. __declspec(dllimport)
  16319.  
  16320.  
  16321. PVOID
  16322. __stdcall
  16323. VirtualAllocFromApp(
  16324.              PVOID BaseAddress,
  16325.          SIZE_T Size,
  16326.          ULONG AllocationType,
  16327.          ULONG Protection
  16328.     );
  16329.  
  16330.  
  16331. __declspec(dllimport)
  16332.  
  16333. BOOL
  16334. __stdcall
  16335. VirtualProtectFromApp(
  16336.          PVOID Address,
  16337.          SIZE_T Size,
  16338.          ULONG NewProtection,
  16339.           PULONG OldProtection
  16340.     );
  16341.  
  16342.  
  16343. __declspec(dllimport)
  16344.  
  16345. HANDLE
  16346. __stdcall
  16347. OpenFileMappingFromApp(
  16348.          ULONG DesiredAccess,
  16349.          BOOL InheritHandle,
  16350.          PCWSTR Name
  16351.     );
  16352.  
  16353.  
  16354.  
  16355.  
  16356.  
  16357. #pragma endregion
  16358.  
  16359. #pragma region Application Family
  16360. # 854 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  16361. #pragma endregion
  16362.  
  16363. #pragma region Desktop Family or OneCore Family
  16364.  
  16365.  
  16366.  
  16367.  
  16368. typedef enum WIN32_MEMORY_INFORMATION_CLASS {
  16369.     MemoryRegionInfo
  16370. } WIN32_MEMORY_INFORMATION_CLASS;
  16371.  
  16372.  
  16373.  
  16374.  
  16375.  
  16376.  
  16377.  
  16378. typedef struct WIN32_MEMORY_REGION_INFORMATION {
  16379.     PVOID AllocationBase;
  16380.     ULONG AllocationProtect;
  16381.  
  16382.     union {
  16383.         ULONG Flags;
  16384.  
  16385.         struct {
  16386.             ULONG Private : 1;
  16387.             ULONG MappedDataFile : 1;
  16388.             ULONG MappedImage : 1;
  16389.             ULONG MappedPageFile : 1;
  16390.             ULONG MappedPhysical : 1;
  16391.             ULONG DirectMapped : 1;
  16392.             ULONG Reserved : 26;
  16393.         } ;
  16394.     } ;
  16395.  
  16396.     SIZE_T RegionSize;
  16397.     SIZE_T CommitSize;
  16398. } WIN32_MEMORY_REGION_INFORMATION;
  16399.  
  16400.  
  16401.  
  16402.  
  16403.  
  16404. __declspec(dllimport)
  16405.  
  16406. BOOL
  16407. __stdcall
  16408. QueryVirtualMemoryInformation(
  16409.          HANDLE Process,
  16410.          const void* VirtualAddress,
  16411.          WIN32_MEMORY_INFORMATION_CLASS MemoryInformationClass,
  16412.                                               PVOID MemoryInformation,
  16413.          SIZE_T MemoryInformationSize,
  16414.               PSIZE_T ReturnSize
  16415.     );
  16416.  
  16417.  
  16418.  
  16419.  
  16420.  
  16421. #pragma endregion
  16422.  
  16423. #pragma region Desktop Family or OneCore Family
  16424.  
  16425.  
  16426.  
  16427.  
  16428. __declspec(dllimport)
  16429.  
  16430. PVOID
  16431. __stdcall
  16432. MapViewOfFileNuma2(
  16433.          HANDLE FileMappingHandle,
  16434.          HANDLE ProcessHandle,
  16435.          ULONG64 Offset,
  16436.              PVOID BaseAddress,
  16437.          SIZE_T ViewSize,
  16438.          ULONG AllocationType,
  16439.          ULONG PageProtection,
  16440.          ULONG PreferredNode
  16441.     );
  16442. # 969 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  16443. #pragma endregion
  16444.  
  16445. #pragma region Application Family or OneCore Family
  16446.  
  16447.  
  16448. __declspec(dllimport)
  16449. BOOL
  16450. __stdcall
  16451. UnmapViewOfFile2(
  16452.          HANDLE Process,
  16453.          PVOID BaseAddress,
  16454.          ULONG UnmapFlags
  16455.     );
  16456.  
  16457.  
  16458. __declspec(dllimport)
  16459. BOOL
  16460. __stdcall
  16461. VirtualUnlockEx(
  16462.              HANDLE Process,
  16463.          LPVOID Address,
  16464.          SIZE_T Size
  16465.     );
  16466.  
  16467.  
  16468.  
  16469. #pragma endregion
  16470.  
  16471.  
  16472.  
  16473. #pragma region Desktop Family or OneCore Family
  16474.  
  16475.  
  16476. __declspec(dllimport)
  16477.  
  16478.  
  16479. PVOID
  16480. __stdcall
  16481. VirtualAlloc2(
  16482.              HANDLE Process,
  16483.              PVOID BaseAddress,
  16484.          SIZE_T Size,
  16485.          ULONG AllocationType,
  16486.          ULONG PageProtection,
  16487.                                         MEM_EXTENDED_PARAMETER* ExtendedParameters,
  16488.          ULONG ParameterCount
  16489.     );
  16490.  
  16491.  
  16492. __declspec(dllimport)
  16493.  
  16494. PVOID
  16495. __stdcall
  16496. MapViewOfFile3(
  16497.          HANDLE FileMapping,
  16498.              HANDLE Process,
  16499.              PVOID BaseAddress,
  16500.          ULONG64 Offset,
  16501.          SIZE_T ViewSize,
  16502.          ULONG AllocationType,
  16503.          ULONG PageProtection,
  16504.                                         MEM_EXTENDED_PARAMETER* ExtendedParameters,
  16505.          ULONG ParameterCount
  16506.     );
  16507.  
  16508.  
  16509.  
  16510. #pragma endregion
  16511.  
  16512. #pragma region Application Family or OneCore Family
  16513.  
  16514.  
  16515. __declspec(dllimport)
  16516.  
  16517.  
  16518. PVOID
  16519. __stdcall
  16520. VirtualAlloc2FromApp(
  16521.              HANDLE Process,
  16522.              PVOID BaseAddress,
  16523.          SIZE_T Size,
  16524.          ULONG AllocationType,
  16525.          ULONG PageProtection,
  16526.                                         MEM_EXTENDED_PARAMETER* ExtendedParameters,
  16527.          ULONG ParameterCount
  16528.     );
  16529.  
  16530.  
  16531. __declspec(dllimport)
  16532.  
  16533. PVOID
  16534. __stdcall
  16535. MapViewOfFile3FromApp(
  16536.          HANDLE FileMapping,
  16537.              HANDLE Process,
  16538.              PVOID BaseAddress,
  16539.          ULONG64 Offset,
  16540.          SIZE_T ViewSize,
  16541.          ULONG AllocationType,
  16542.          ULONG PageProtection,
  16543.                                         MEM_EXTENDED_PARAMETER* ExtendedParameters,
  16544.          ULONG ParameterCount
  16545.     );
  16546.  
  16547.  
  16548.  
  16549. #pragma endregion
  16550. # 1088 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\memoryapi.h" 3
  16551. #pragma option pop
  16552. # 61 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  16553.  
  16554. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\enclaveapi.h" 1 3
  16555. #pragma option push -b -a8 -pc -A- -w-pun
  16556. # 32 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\enclaveapi.h" 3
  16557. #pragma region Desktop Family or OneCore Or App Family
  16558.  
  16559.  
  16560. __declspec(dllimport)
  16561.  
  16562. BOOL
  16563. __stdcall
  16564. IsEnclaveTypeSupported(
  16565.          DWORD flEnclaveType
  16566.     );
  16567.  
  16568.  
  16569. __declspec(dllimport)
  16570.  
  16571.  
  16572. LPVOID
  16573. __stdcall
  16574. CreateEnclave(
  16575.          HANDLE hProcess,
  16576.              LPVOID lpAddress,
  16577.          SIZE_T dwSize,
  16578.          SIZE_T dwInitialCommitment,
  16579.          DWORD flEnclaveType,
  16580.                                    LPCVOID lpEnclaveInformation,
  16581.          DWORD dwInfoLength,
  16582.               LPDWORD lpEnclaveError
  16583.     );
  16584.  
  16585.  
  16586. __declspec(dllimport)
  16587.  
  16588. BOOL
  16589. __stdcall
  16590. LoadEnclaveData(
  16591.          HANDLE hProcess,
  16592.          LPVOID lpAddress,
  16593.                             LPCVOID lpBuffer,
  16594.          SIZE_T nSize,
  16595.          DWORD flProtect,
  16596.                                    LPCVOID lpPageInformation,
  16597.          DWORD dwInfoLength,
  16598.           PSIZE_T lpNumberOfBytesWritten,
  16599.               LPDWORD lpEnclaveError
  16600.     );
  16601.  
  16602.  
  16603. __declspec(dllimport)
  16604.  
  16605. BOOL
  16606. __stdcall
  16607. InitializeEnclave(
  16608.          HANDLE hProcess,
  16609.          LPVOID lpAddress,
  16610.                                    LPCVOID lpEnclaveInformation,
  16611.          DWORD dwInfoLength,
  16612.               LPDWORD lpEnclaveError
  16613.     );
  16614.  
  16615.  
  16616.  
  16617. #pragma endregion
  16618.  
  16619.  
  16620.  
  16621.  
  16622. #pragma region Desktop Family or OneCore Family
  16623.  
  16624.  
  16625. __declspec(dllimport)
  16626.  
  16627. BOOL
  16628. __stdcall
  16629. LoadEnclaveImageA(
  16630.          LPVOID lpEnclaveAddress,
  16631.          LPCSTR lpImageName
  16632.     );
  16633.  
  16634. __declspec(dllimport)
  16635.  
  16636. BOOL
  16637. __stdcall
  16638. LoadEnclaveImageW(
  16639.          LPVOID lpEnclaveAddress,
  16640.          LPCWSTR lpImageName
  16641.     );
  16642.  
  16643.  
  16644.  
  16645.  
  16646.  
  16647.  
  16648.  
  16649. __declspec(dllimport)
  16650.  
  16651. BOOL
  16652. __stdcall
  16653. CallEnclave(
  16654.          LPENCLAVE_ROUTINE lpRoutine,
  16655.          LPVOID lpParameter,
  16656.          BOOL fWaitForThread,
  16657.           LPVOID* lpReturnValue
  16658.     );
  16659.  
  16660.  
  16661. __declspec(dllimport)
  16662.  
  16663. BOOL
  16664. __stdcall
  16665. TerminateEnclave(
  16666.          LPVOID lpAddress,
  16667.          BOOL fWait
  16668.     );
  16669.  
  16670.  
  16671. __declspec(dllimport)
  16672.  
  16673. BOOL
  16674. __stdcall
  16675. DeleteEnclave(
  16676.          LPVOID lpAddress
  16677.     );
  16678.  
  16679.  
  16680.  
  16681. #pragma endregion
  16682. # 169 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\enclaveapi.h" 3
  16683. #pragma option pop
  16684. # 62 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  16685.  
  16686. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\threadpoollegacyapiset.h" 1 3
  16687. #pragma option push -b -a8 -pc -A- -w-pun
  16688. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\threadpoollegacyapiset.h" 3
  16689. #pragma region Desktop Family or OneCore Family
  16690.  
  16691.  
  16692. __declspec(dllimport)
  16693. BOOL
  16694. __stdcall
  16695. QueueUserWorkItem(
  16696.          LPTHREAD_START_ROUTINE Function,
  16697.              PVOID Context,
  16698.          ULONG Flags
  16699.     );
  16700.  
  16701.  
  16702. __declspec(dllimport)
  16703.  
  16704. BOOL
  16705. __stdcall
  16706. UnregisterWaitEx(
  16707.          HANDLE WaitHandle,
  16708.              HANDLE CompletionEvent
  16709.     );
  16710.  
  16711.  
  16712. __declspec(dllimport)
  16713.  
  16714. HANDLE
  16715. __stdcall
  16716. CreateTimerQueue(
  16717.     void
  16718.     );
  16719.  
  16720.  
  16721. __declspec(dllimport)
  16722. BOOL
  16723. __stdcall
  16724. CreateTimerQueueTimer(
  16725.              PHANDLE phNewTimer,
  16726.              HANDLE TimerQueue,
  16727.          WAITORTIMERCALLBACK Callback,
  16728.              PVOID Parameter,
  16729.          DWORD DueTime,
  16730.          DWORD Period,
  16731.          ULONG Flags
  16732.     );
  16733.  
  16734.  
  16735. __declspec(dllimport)
  16736.  
  16737. BOOL
  16738. __stdcall
  16739. ChangeTimerQueueTimer(
  16740.              HANDLE TimerQueue,
  16741.             HANDLE Timer,
  16742.          ULONG DueTime,
  16743.          ULONG Period
  16744.     );
  16745.  
  16746.  
  16747. __declspec(dllimport)
  16748.  
  16749. BOOL
  16750. __stdcall
  16751. DeleteTimerQueueTimer(
  16752.              HANDLE TimerQueue,
  16753.          HANDLE Timer,
  16754.              HANDLE CompletionEvent
  16755.     );
  16756.  
  16757.  
  16758. __declspec(dllimport)
  16759.  
  16760. BOOL
  16761. __stdcall
  16762. DeleteTimerQueueEx(
  16763.          HANDLE TimerQueue,
  16764.              HANDLE CompletionEvent
  16765.     );
  16766.  
  16767.  
  16768.  
  16769. #pragma endregion
  16770.  
  16771.  
  16772.  
  16773.  
  16774.  
  16775.  
  16776. #pragma option pop
  16777. # 63 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  16778.  
  16779. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\threadpoolapiset.h" 1 3
  16780. #pragma option push -b -a8 -pc -A- -w-pun
  16781. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\threadpoolapiset.h" 3
  16782. #pragma region Application Family or OneCore Family
  16783.  
  16784.  
  16785. typedef
  16786. void
  16787. (__stdcall *PTP_WIN32_IO_CALLBACK)(
  16788.                 PTP_CALLBACK_INSTANCE Instance,
  16789.                 PVOID Context,
  16790.                 PVOID Overlapped,
  16791.                 ULONG IoResult,
  16792.                 ULONG_PTR NumberOfBytesTransferred,
  16793.                 PTP_IO Io
  16794.     );
  16795.  
  16796.  
  16797.  
  16798. __declspec(dllimport)
  16799.  
  16800. PTP_POOL
  16801. __stdcall
  16802. CreateThreadpool(
  16803.                PVOID reserved
  16804.     );
  16805.  
  16806.  
  16807. __declspec(dllimport)
  16808. void
  16809. __stdcall
  16810. SetThreadpoolThreadMaximum(
  16811.             PTP_POOL ptpp,
  16812.          DWORD cthrdMost
  16813.     );
  16814.  
  16815.  
  16816. __declspec(dllimport)
  16817. BOOL
  16818. __stdcall
  16819. SetThreadpoolThreadMinimum(
  16820.             PTP_POOL ptpp,
  16821.          DWORD cthrdMic
  16822.     );
  16823.  
  16824.  
  16825. __declspec(dllimport)
  16826. BOOL
  16827. __stdcall
  16828. SetThreadpoolStackInformation(
  16829.             PTP_POOL ptpp,
  16830.          PTP_POOL_STACK_INFORMATION ptpsi
  16831.     );
  16832.  
  16833.  
  16834. __declspec(dllimport)
  16835. BOOL
  16836. __stdcall
  16837. QueryThreadpoolStackInformation(
  16838.          PTP_POOL ptpp,
  16839.           PTP_POOL_STACK_INFORMATION ptpsi
  16840.     );
  16841.  
  16842.  
  16843. __declspec(dllimport)
  16844. void
  16845. __stdcall
  16846. CloseThreadpool(
  16847.             PTP_POOL ptpp
  16848.     );
  16849.  
  16850.  
  16851. __declspec(dllimport)
  16852.  
  16853. PTP_CLEANUP_GROUP
  16854. __stdcall
  16855. CreateThreadpoolCleanupGroup(
  16856.     void
  16857.     );
  16858.  
  16859.  
  16860. __declspec(dllimport)
  16861. void
  16862. __stdcall
  16863. CloseThreadpoolCleanupGroupMembers(
  16864.             PTP_CLEANUP_GROUP ptpcg,
  16865.          BOOL fCancelPendingCallbacks,
  16866.                 PVOID pvCleanupContext
  16867.     );
  16868.  
  16869.  
  16870. __declspec(dllimport)
  16871. void
  16872. __stdcall
  16873. CloseThreadpoolCleanupGroup(
  16874.             PTP_CLEANUP_GROUP ptpcg
  16875.     );
  16876.  
  16877.  
  16878. __declspec(dllimport)
  16879. void
  16880. __stdcall
  16881. SetEventWhenCallbackReturns(
  16882.             PTP_CALLBACK_INSTANCE pci,
  16883.          HANDLE evt
  16884.     );
  16885.  
  16886.  
  16887. __declspec(dllimport)
  16888. void
  16889. __stdcall
  16890. ReleaseSemaphoreWhenCallbackReturns(
  16891.             PTP_CALLBACK_INSTANCE pci,
  16892.          HANDLE sem,
  16893.          DWORD crel
  16894.     );
  16895.  
  16896.  
  16897. __declspec(dllimport)
  16898. void
  16899. __stdcall
  16900. ReleaseMutexWhenCallbackReturns(
  16901.             PTP_CALLBACK_INSTANCE pci,
  16902.          HANDLE mut
  16903.     );
  16904.  
  16905.  
  16906. __declspec(dllimport)
  16907. void
  16908. __stdcall
  16909. LeaveCriticalSectionWhenCallbackReturns(
  16910.             PTP_CALLBACK_INSTANCE pci,
  16911.             PCRITICAL_SECTION pcs
  16912.     );
  16913.  
  16914.  
  16915. __declspec(dllimport)
  16916. void
  16917. __stdcall
  16918. FreeLibraryWhenCallbackReturns(
  16919.             PTP_CALLBACK_INSTANCE pci,
  16920.          HMODULE mod
  16921.     );
  16922.  
  16923.  
  16924. __declspec(dllimport)
  16925. BOOL
  16926. __stdcall
  16927. CallbackMayRunLong(
  16928.             PTP_CALLBACK_INSTANCE pci
  16929.     );
  16930.  
  16931.  
  16932. __declspec(dllimport)
  16933. void
  16934. __stdcall
  16935. DisassociateCurrentThreadFromCallback(
  16936.             PTP_CALLBACK_INSTANCE pci
  16937.     );
  16938.  
  16939.  
  16940. __declspec(dllimport)
  16941.  
  16942. BOOL
  16943. __stdcall
  16944. TrySubmitThreadpoolCallback(
  16945.          PTP_SIMPLE_CALLBACK pfns,
  16946.                 PVOID pv,
  16947.              PTP_CALLBACK_ENVIRON pcbe
  16948.     );
  16949.  
  16950.  
  16951. __declspec(dllimport)
  16952.  
  16953. PTP_WORK
  16954. __stdcall
  16955. CreateThreadpoolWork(
  16956.          PTP_WORK_CALLBACK pfnwk,
  16957.                 PVOID pv,
  16958.              PTP_CALLBACK_ENVIRON pcbe
  16959.     );
  16960.  
  16961.  
  16962. __declspec(dllimport)
  16963. void
  16964. __stdcall
  16965. SubmitThreadpoolWork(
  16966.             PTP_WORK pwk
  16967.     );
  16968.  
  16969.  
  16970. __declspec(dllimport)
  16971. void
  16972. __stdcall
  16973. WaitForThreadpoolWorkCallbacks(
  16974.             PTP_WORK pwk,
  16975.          BOOL fCancelPendingCallbacks
  16976.     );
  16977.  
  16978.  
  16979. __declspec(dllimport)
  16980. void
  16981. __stdcall
  16982. CloseThreadpoolWork(
  16983.             PTP_WORK pwk
  16984.     );
  16985.  
  16986.  
  16987. __declspec(dllimport)
  16988.  
  16989. PTP_TIMER
  16990. __stdcall
  16991. CreateThreadpoolTimer(
  16992.          PTP_TIMER_CALLBACK pfnti,
  16993.                 PVOID pv,
  16994.              PTP_CALLBACK_ENVIRON pcbe
  16995.     );
  16996.  
  16997.  
  16998. __declspec(dllimport)
  16999. void
  17000. __stdcall
  17001. SetThreadpoolTimer(
  17002.             PTP_TIMER pti,
  17003.              PFILETIME pftDueTime,
  17004.          DWORD msPeriod,
  17005.              DWORD msWindowLength
  17006.     );
  17007.  
  17008.  
  17009. __declspec(dllimport)
  17010. BOOL
  17011. __stdcall
  17012. IsThreadpoolTimerSet(
  17013.             PTP_TIMER pti
  17014.     );
  17015.  
  17016.  
  17017. __declspec(dllimport)
  17018. void
  17019. __stdcall
  17020. WaitForThreadpoolTimerCallbacks(
  17021.             PTP_TIMER pti,
  17022.          BOOL fCancelPendingCallbacks
  17023.     );
  17024.  
  17025.  
  17026. __declspec(dllimport)
  17027. void
  17028. __stdcall
  17029. CloseThreadpoolTimer(
  17030.             PTP_TIMER pti
  17031.     );
  17032.  
  17033.  
  17034. __declspec(dllimport)
  17035.  
  17036. PTP_WAIT
  17037. __stdcall
  17038. CreateThreadpoolWait(
  17039.          PTP_WAIT_CALLBACK pfnwa,
  17040.                 PVOID pv,
  17041.              PTP_CALLBACK_ENVIRON pcbe
  17042.     );
  17043.  
  17044.  
  17045. __declspec(dllimport)
  17046. void
  17047. __stdcall
  17048. SetThreadpoolWait(
  17049.             PTP_WAIT pwa,
  17050.              HANDLE h,
  17051.              PFILETIME pftTimeout
  17052.     );
  17053.  
  17054.  
  17055. __declspec(dllimport)
  17056. void
  17057. __stdcall
  17058. WaitForThreadpoolWaitCallbacks(
  17059.             PTP_WAIT pwa,
  17060.          BOOL fCancelPendingCallbacks
  17061.     );
  17062.  
  17063.  
  17064. __declspec(dllimport)
  17065. void
  17066. __stdcall
  17067. CloseThreadpoolWait(
  17068.             PTP_WAIT pwa
  17069.     );
  17070.  
  17071.  
  17072. __declspec(dllimport)
  17073.  
  17074. PTP_IO
  17075. __stdcall
  17076. CreateThreadpoolIo(
  17077.          HANDLE fl,
  17078.          PTP_WIN32_IO_CALLBACK pfnio,
  17079.                 PVOID pv,
  17080.              PTP_CALLBACK_ENVIRON pcbe
  17081.     );
  17082.  
  17083.  
  17084. __declspec(dllimport)
  17085. void
  17086. __stdcall
  17087. StartThreadpoolIo(
  17088.             PTP_IO pio
  17089.     );
  17090.  
  17091.  
  17092. __declspec(dllimport)
  17093. void
  17094. __stdcall
  17095. CancelThreadpoolIo(
  17096.             PTP_IO pio
  17097.     );
  17098.  
  17099.  
  17100. __declspec(dllimport)
  17101. void
  17102. __stdcall
  17103. WaitForThreadpoolIoCallbacks(
  17104.             PTP_IO pio,
  17105.          BOOL fCancelPendingCallbacks
  17106.     );
  17107.  
  17108.  
  17109. __declspec(dllimport)
  17110. void
  17111. __stdcall
  17112. CloseThreadpoolIo(
  17113.             PTP_IO pio
  17114.     );
  17115.  
  17116.  
  17117. __declspec(dllimport)
  17118. BOOL
  17119. __stdcall
  17120. SetThreadpoolTimerEx(
  17121.             PTP_TIMER pti,
  17122.              PFILETIME pftDueTime,
  17123.          DWORD msPeriod,
  17124.              DWORD msWindowLength
  17125.     );
  17126.  
  17127.  
  17128. __declspec(dllimport)
  17129. BOOL
  17130. __stdcall
  17131. SetThreadpoolWaitEx(
  17132.             PTP_WAIT pwa,
  17133.              HANDLE h,
  17134.              PFILETIME pftTimeout,
  17135.                PVOID Reserved
  17136.     );
  17137.  
  17138.  
  17139.  
  17140.  
  17141.  
  17142. #pragma endregion
  17143.  
  17144. #pragma region Desktop Family or OneCore Family
  17145.  
  17146.  
  17147.  
  17148.  
  17149.  
  17150.  
  17151.  
  17152. #pragma endregion
  17153.  
  17154.  
  17155.  
  17156.  
  17157.  
  17158.  
  17159. #pragma option pop
  17160. # 64 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  17161.  
  17162. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\jobapi.h" 1 3
  17163. #pragma option push -b -a8 -pc -A- -w-pun
  17164. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\jobapi.h" 3
  17165. #pragma region Desktop Family or OneCore Family
  17166.  
  17167.  
  17168.  
  17169.  
  17170. __declspec(dllimport)
  17171. BOOL
  17172. __stdcall
  17173. IsProcessInJob(
  17174.          HANDLE ProcessHandle,
  17175.              HANDLE JobHandle,
  17176.           PBOOL Result
  17177.     );
  17178.  
  17179.  
  17180.  
  17181.  
  17182.  
  17183. #pragma endregion
  17184.  
  17185.  
  17186.  
  17187.  
  17188.  
  17189.  
  17190. #pragma option pop
  17191. # 65 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  17192.  
  17193. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\jobapi2.h" 1 3
  17194. #pragma option push -b -a8 -pc -A- -w-pun
  17195. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\jobapi2.h" 3
  17196. #pragma region Desktop Family or OneCore Family
  17197.  
  17198.  
  17199.  
  17200. typedef struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION {
  17201.     LONG64 MaxIops;
  17202.     LONG64 MaxBandwidth;
  17203.     LONG64 ReservationIops;
  17204.     PCWSTR VolumeName;
  17205.     ULONG BaseIoSize;
  17206.     ULONG ControlFlags;
  17207. } JOBOBJECT_IO_RATE_CONTROL_INFORMATION;
  17208.  
  17209. __declspec(dllimport)
  17210. HANDLE
  17211. __stdcall
  17212. CreateJobObjectW(
  17213.              LPSECURITY_ATTRIBUTES lpJobAttributes,
  17214.              LPCWSTR lpName
  17215.     );
  17216.  
  17217.  
  17218. __declspec(dllimport)
  17219. void
  17220. __stdcall
  17221. FreeMemoryJobObject(
  17222.                      void* Buffer
  17223.     );
  17224.  
  17225. __declspec(dllimport)
  17226. HANDLE
  17227. __stdcall
  17228. OpenJobObjectW(
  17229.          DWORD dwDesiredAccess,
  17230.          BOOL bInheritHandle,
  17231.          LPCWSTR lpName
  17232.     );
  17233.  
  17234.  
  17235. __declspec(dllimport)
  17236. BOOL
  17237. __stdcall
  17238. AssignProcessToJobObject(
  17239.          HANDLE hJob,
  17240.          HANDLE hProcess
  17241.     );
  17242.  
  17243.  
  17244. __declspec(dllimport)
  17245. BOOL
  17246. __stdcall
  17247. TerminateJobObject(
  17248.          HANDLE hJob,
  17249.          UINT uExitCode
  17250.     );
  17251.  
  17252.  
  17253. __declspec(dllimport)
  17254. BOOL
  17255. __stdcall
  17256. SetInformationJobObject(
  17257.          HANDLE hJob,
  17258.          JOBOBJECTINFOCLASS JobObjectInformationClass,
  17259.                                                    LPVOID lpJobObjectInformation,
  17260.          DWORD cbJobObjectInformationLength
  17261.     );
  17262.  
  17263.  
  17264. __declspec(dllimport)
  17265. DWORD
  17266. __stdcall
  17267. SetIoRateControlInformationJobObject(
  17268.          HANDLE hJob,
  17269.          JOBOBJECT_IO_RATE_CONTROL_INFORMATION* IoRateControlInfo
  17270.     );
  17271.  
  17272. __declspec(dllimport)
  17273. BOOL
  17274. __stdcall
  17275. QueryInformationJobObject(
  17276.              HANDLE hJob,
  17277.          JOBOBJECTINFOCLASS JobObjectInformationClass,
  17278.                                                                         LPVOID lpJobObjectInformation,
  17279.          DWORD cbJobObjectInformationLength,
  17280.               LPDWORD lpReturnLength
  17281.     );
  17282.  
  17283.  
  17284. __declspec(dllimport)
  17285. DWORD
  17286. __stdcall
  17287. QueryIoRateControlInformationJobObject(
  17288.              HANDLE hJob,
  17289.              PCWSTR VolumeName,
  17290.                                             JOBOBJECT_IO_RATE_CONTROL_INFORMATION** InfoBlocks,
  17291.           ULONG* InfoBlockCount
  17292.     );
  17293.  
  17294.  
  17295.  
  17296. #pragma endregion
  17297.  
  17298.  
  17299.  
  17300.  
  17301.  
  17302.  
  17303. #pragma option pop
  17304. # 66 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  17305.  
  17306. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wow64apiset.h" 1 3
  17307. #pragma option push -b -a8 -pc -A- -w-pun
  17308. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wow64apiset.h" 3
  17309. #pragma region Desktop Family or OneCore Family
  17310.  
  17311.  
  17312.  
  17313.  
  17314.  
  17315.  
  17316. __declspec(dllimport)
  17317. BOOL
  17318. __stdcall
  17319. Wow64DisableWow64FsRedirection(
  17320.           PVOID* OldValue
  17321.     );
  17322.  
  17323.  
  17324. __declspec(dllimport)
  17325. BOOL
  17326. __stdcall
  17327. Wow64RevertWow64FsRedirection(
  17328.          PVOID OlValue
  17329.     );
  17330.  
  17331.  
  17332.  
  17333.  
  17334.  
  17335.  
  17336. #pragma endregion
  17337.  
  17338. #pragma region Application Family or OneCore Family
  17339.  
  17340.  
  17341.  
  17342.  
  17343. __declspec(dllimport)
  17344. BOOL
  17345. __stdcall
  17346. IsWow64Process(
  17347.          HANDLE hProcess,
  17348.           PBOOL Wow64Process
  17349.     );
  17350.  
  17351.  
  17352.  
  17353.  
  17354.  
  17355. #pragma endregion
  17356.  
  17357. #pragma region Desktop Family or OneCore Family
  17358.  
  17359.  
  17360.  
  17361.  
  17362.  
  17363.  
  17364. __declspec(dllimport)
  17365.  
  17366.  
  17367. UINT
  17368. __stdcall
  17369. GetSystemWow64DirectoryA(
  17370.                                           LPSTR lpBuffer,
  17371.          UINT uSize
  17372.     );
  17373.  
  17374. __declspec(dllimport)
  17375.  
  17376.  
  17377. UINT
  17378. __stdcall
  17379. GetSystemWow64DirectoryW(
  17380.                                           LPWSTR lpBuffer,
  17381.          UINT uSize
  17382.     );
  17383. # 112 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wow64apiset.h" 3
  17384. __declspec(dllimport)
  17385. USHORT
  17386. __stdcall
  17387. Wow64SetThreadDefaultGuestMachine(
  17388.          USHORT Machine
  17389.     );
  17390.  
  17391.  
  17392.  
  17393.  
  17394.  
  17395. #pragma endregion
  17396.  
  17397. #pragma region Application Family or OneCore Family
  17398.  
  17399.  
  17400.  
  17401.  
  17402. __declspec(dllimport)
  17403. BOOL
  17404. __stdcall
  17405. IsWow64Process2(
  17406.          HANDLE hProcess,
  17407.           USHORT* pProcessMachine,
  17408.               USHORT* pNativeMachine
  17409.     );
  17410.  
  17411.  
  17412.  
  17413.  
  17414.  
  17415. #pragma endregion
  17416.  
  17417. #pragma region Desktop Family or OneCore Family
  17418.  
  17419.  
  17420.  
  17421.  
  17422. __declspec(dllimport)
  17423.  
  17424.  
  17425. UINT
  17426. __stdcall
  17427. GetSystemWow64Directory2A(
  17428.                                           LPSTR lpBuffer,
  17429.          UINT uSize,
  17430.          WORD ImageFileMachineType
  17431.     );
  17432.  
  17433. __declspec(dllimport)
  17434.  
  17435.  
  17436. UINT
  17437. __stdcall
  17438. GetSystemWow64Directory2W(
  17439.                                           LPWSTR lpBuffer,
  17440.          UINT uSize,
  17441.          WORD ImageFileMachineType
  17442.     );
  17443. # 182 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wow64apiset.h" 3
  17444. __declspec(dllimport)
  17445.  
  17446. HRESULT
  17447. __stdcall
  17448. IsWow64GuestMachineSupported(
  17449.          USHORT WowGuestMachine,
  17450.           BOOL* MachineIsSupported
  17451.     );
  17452.  
  17453.  
  17454.  
  17455.  
  17456.  
  17457. #pragma endregion
  17458.  
  17459.  
  17460.  
  17461.  
  17462.  
  17463.  
  17464. #pragma option pop
  17465. # 67 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  17466.  
  17467. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 1 3
  17468. #pragma option push -b -a8 -pc -A- -w-pun
  17469. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 3
  17470. #pragma region Desktop Family or OneCore Family
  17471. # 41 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 3
  17472. typedef struct tagENUMUILANG {
  17473.     ULONG NumOfEnumUILang;
  17474.     ULONG SizeOfEnumUIBuffer;
  17475.     LANGID *pEnumUIBuffer;
  17476. } ENUMUILANG, *PENUMUILANG;
  17477.  
  17478.  
  17479.  
  17480. typedef BOOL (__stdcall* ENUMRESLANGPROCA)(
  17481.              HMODULE hModule,
  17482.          LPCSTR lpType,
  17483.          LPCSTR lpName,
  17484.          WORD wLanguage,
  17485.          LONG_PTR lParam);
  17486. typedef BOOL (__stdcall* ENUMRESLANGPROCW)(
  17487.              HMODULE hModule,
  17488.          LPCWSTR lpType,
  17489.          LPCWSTR lpName,
  17490.          WORD wLanguage,
  17491.          LONG_PTR lParam);
  17492.  
  17493.  
  17494.  
  17495.  
  17496.  
  17497.  
  17498. typedef BOOL (__stdcall* ENUMRESNAMEPROCA)(
  17499.              HMODULE hModule,
  17500.          LPCSTR lpType,
  17501.          LPSTR lpName,
  17502.          LONG_PTR lParam);
  17503. typedef BOOL (__stdcall* ENUMRESNAMEPROCW)(
  17504.              HMODULE hModule,
  17505.          LPCWSTR lpType,
  17506.          LPWSTR lpName,
  17507.          LONG_PTR lParam);
  17508.  
  17509.  
  17510.  
  17511.  
  17512.  
  17513.  
  17514. typedef BOOL (__stdcall* ENUMRESTYPEPROCA)(
  17515.              HMODULE hModule,
  17516.          LPSTR lpType,
  17517.          LONG_PTR lParam
  17518.     );
  17519. typedef BOOL (__stdcall* ENUMRESTYPEPROCW)(
  17520.              HMODULE hModule,
  17521.          LPWSTR lpType,
  17522.          LONG_PTR lParam
  17523.     );
  17524. # 126 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 3
  17525. #pragma endregion
  17526.  
  17527. #pragma region Application Family or OneCore Family
  17528.  
  17529.  
  17530. __declspec(dllimport)
  17531. BOOL
  17532. __stdcall
  17533. DisableThreadLibraryCalls(
  17534.          HMODULE hLibModule
  17535.     );
  17536.  
  17537.  
  17538.  
  17539. #pragma endregion
  17540.  
  17541. #pragma region Desktop Family or OneCore Family
  17542.  
  17543.  
  17544. __declspec(dllimport)
  17545.  
  17546. HRSRC
  17547. __stdcall
  17548. FindResourceExW(
  17549.              HMODULE hModule,
  17550.          LPCWSTR lpType,
  17551.          LPCWSTR lpName,
  17552.          WORD wLanguage
  17553.     );
  17554.  
  17555.  
  17556.  
  17557.  
  17558.  
  17559.  
  17560.  
  17561. #pragma endregion
  17562.  
  17563. #pragma region Application Family or OneCore Family
  17564.  
  17565.  
  17566.  
  17567.  
  17568. __declspec(dllimport)
  17569. int
  17570. __stdcall
  17571. FindStringOrdinal(
  17572.          DWORD dwFindStringOrdinalFlags,
  17573.                           LPCWSTR lpStringSource,
  17574.          int cchSource,
  17575.                          LPCWSTR lpStringValue,
  17576.          int cchValue,
  17577.          BOOL bIgnoreCase
  17578.     );
  17579.  
  17580.  
  17581.  
  17582.  
  17583. __declspec(dllimport)
  17584. BOOL
  17585. __stdcall
  17586. FreeLibrary(
  17587.          HMODULE hLibModule
  17588.     );
  17589.  
  17590.  
  17591. __declspec(dllimport)
  17592.  
  17593. void
  17594. __stdcall
  17595. FreeLibraryAndExitThread(
  17596.          HMODULE hLibModule,
  17597.          DWORD dwExitCode
  17598.     );
  17599.  
  17600.  
  17601.  
  17602. #pragma endregion
  17603.  
  17604. #pragma region Desktop Family or OneCore Family
  17605.  
  17606.  
  17607. __declspec(dllimport)
  17608. BOOL
  17609. __stdcall
  17610. FreeResource(
  17611.          HGLOBAL hResData
  17612.     );
  17613.  
  17614.  
  17615.  
  17616. #pragma endregion
  17617.  
  17618. #pragma region Application Family or OneCore Family
  17619.  
  17620.  
  17621. __declspec(dllimport)
  17622.  
  17623.  
  17624. DWORD
  17625. __stdcall
  17626. GetModuleFileNameA(
  17627.              HMODULE hModule,
  17628.                                                                      LPSTR lpFilename,
  17629.          DWORD nSize
  17630.     );
  17631.  
  17632. __declspec(dllimport)
  17633.  
  17634.  
  17635. DWORD
  17636. __stdcall
  17637. GetModuleFileNameW(
  17638.              HMODULE hModule,
  17639.                                                                      LPWSTR lpFilename,
  17640.          DWORD nSize
  17641.     );
  17642.  
  17643.  
  17644.  
  17645.  
  17646.  
  17647.  
  17648.  
  17649.  
  17650. #pragma endregion
  17651.  
  17652. #pragma region Desktop Family or OneCore Family
  17653.  
  17654.  
  17655. __declspec(dllimport)
  17656.  
  17657.  
  17658. HMODULE
  17659. __stdcall
  17660. GetModuleHandleA(
  17661.              LPCSTR lpModuleName
  17662.     );
  17663.  
  17664. __declspec(dllimport)
  17665.  
  17666.  
  17667. HMODULE
  17668. __stdcall
  17669. GetModuleHandleW(
  17670.              LPCWSTR lpModuleName
  17671.     );
  17672. # 286 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 3
  17673. typedef
  17674. BOOL
  17675. (__stdcall*
  17676. PGET_MODULE_HANDLE_EXA)(
  17677.                 DWORD dwFlags,
  17678.                 LPCSTR lpModuleName,
  17679.              HMODULE* phModule
  17680.     );
  17681. typedef
  17682. BOOL
  17683. (__stdcall*
  17684. PGET_MODULE_HANDLE_EXW)(
  17685.                 DWORD dwFlags,
  17686.                 LPCWSTR lpModuleName,
  17687.              HMODULE* phModule
  17688.     );
  17689.  
  17690.  
  17691.  
  17692.  
  17693.  
  17694.  
  17695. __declspec(dllimport)
  17696. BOOL
  17697. __stdcall
  17698. GetModuleHandleExA(
  17699.          DWORD dwFlags,
  17700.              LPCSTR lpModuleName,
  17701.           HMODULE* phModule
  17702.     );
  17703.  
  17704. __declspec(dllimport)
  17705. BOOL
  17706. __stdcall
  17707. GetModuleHandleExW(
  17708.          DWORD dwFlags,
  17709.              LPCWSTR lpModuleName,
  17710.           HMODULE* phModule
  17711.     );
  17712. # 335 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 3
  17713. #pragma endregion
  17714.  
  17715. #pragma region Application Family or OneCore Family
  17716.  
  17717.  
  17718. __declspec(dllimport)
  17719. FARPROC
  17720. __stdcall
  17721. GetProcAddress(
  17722.          HMODULE hModule,
  17723.          LPCSTR lpProcName
  17724.     );
  17725.  
  17726.  
  17727.  
  17728. #pragma endregion
  17729.  
  17730. #pragma region Desktop Family or OneCore Family
  17731.  
  17732.  
  17733. __declspec(dllimport)
  17734.  
  17735. HMODULE
  17736. __stdcall
  17737. LoadLibraryExA(
  17738.          LPCSTR lpLibFileName,
  17739.                HANDLE hFile,
  17740.          DWORD dwFlags
  17741.     );
  17742.  
  17743. __declspec(dllimport)
  17744.  
  17745. HMODULE
  17746. __stdcall
  17747. LoadLibraryExW(
  17748.          LPCWSTR lpLibFileName,
  17749.                HANDLE hFile,
  17750.          DWORD dwFlags
  17751.     );
  17752. # 418 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 3
  17753. __declspec(dllimport)
  17754.  
  17755. HGLOBAL
  17756. __stdcall
  17757. LoadResource(
  17758.              HMODULE hModule,
  17759.          HRSRC hResInfo
  17760.     );
  17761.  
  17762.  
  17763.  
  17764. #pragma endregion
  17765.  
  17766. #pragma region Desktop Family or OneCore Family
  17767.  
  17768.  
  17769. __declspec(dllimport)
  17770. int
  17771. __stdcall
  17772. LoadStringA(
  17773.              HINSTANCE hInstance,
  17774.          UINT uID,
  17775.                                              LPSTR lpBuffer,
  17776.          int cchBufferMax
  17777.     );
  17778.  
  17779. __declspec(dllimport)
  17780. int
  17781. __stdcall
  17782. LoadStringW(
  17783.              HINSTANCE hInstance,
  17784.          UINT uID,
  17785.                                              LPWSTR lpBuffer,
  17786.          int cchBufferMax
  17787.     );
  17788.  
  17789.  
  17790.  
  17791.  
  17792.  
  17793.  
  17794.  
  17795.  
  17796. #pragma endregion
  17797.  
  17798. #pragma region Desktop Family or OneCore Family
  17799.  
  17800.  
  17801. __declspec(dllimport)
  17802. LPVOID
  17803. __stdcall
  17804. LockResource(
  17805.          HGLOBAL hResData
  17806.     );
  17807.  
  17808.  
  17809. __declspec(dllimport)
  17810. DWORD
  17811. __stdcall
  17812. SizeofResource(
  17813.              HMODULE hModule,
  17814.          HRSRC hResInfo
  17815.     );
  17816.  
  17817.  
  17818.  
  17819. #pragma endregion
  17820.  
  17821. #pragma region Desktop Family or OneCore Family
  17822.  
  17823.  
  17824. typedef PVOID DLL_DIRECTORY_COOKIE, *PDLL_DIRECTORY_COOKIE;
  17825.  
  17826. __declspec(dllimport)
  17827. DLL_DIRECTORY_COOKIE
  17828. __stdcall
  17829. AddDllDirectory(
  17830.          PCWSTR NewDirectory
  17831.     );
  17832.  
  17833.  
  17834. __declspec(dllimport)
  17835. BOOL
  17836. __stdcall
  17837. RemoveDllDirectory(
  17838.          DLL_DIRECTORY_COOKIE Cookie
  17839.     );
  17840.  
  17841.  
  17842. __declspec(dllimport)
  17843. BOOL
  17844. __stdcall
  17845. SetDefaultDllDirectories(
  17846.          DWORD DirectoryFlags
  17847.     );
  17848.  
  17849.  
  17850.  
  17851. #pragma endregion
  17852.  
  17853. #pragma region Desktop Family or OneCore Family
  17854.  
  17855.  
  17856.  
  17857.  
  17858. __declspec(dllimport)
  17859. BOOL
  17860. __stdcall
  17861. EnumResourceLanguagesExA(
  17862.              HMODULE hModule,
  17863.          LPCSTR lpType,
  17864.          LPCSTR lpName,
  17865.          ENUMRESLANGPROCA lpEnumFunc,
  17866.              LONG_PTR lParam,
  17867.     DWORD dwFlags,
  17868.     LANGID LangId
  17869.     );
  17870.  
  17871. __declspec(dllimport)
  17872. BOOL
  17873. __stdcall
  17874. EnumResourceLanguagesExW(
  17875.              HMODULE hModule,
  17876.          LPCWSTR lpType,
  17877.          LPCWSTR lpName,
  17878.          ENUMRESLANGPROCW lpEnumFunc,
  17879.              LONG_PTR lParam,
  17880.     DWORD dwFlags,
  17881.     LANGID LangId
  17882.     );
  17883.  
  17884.  
  17885.  
  17886.  
  17887.  
  17888.  
  17889.  
  17890. __declspec(dllimport)
  17891. BOOL
  17892. __stdcall
  17893. EnumResourceNamesExA(
  17894.              HMODULE hModule,
  17895.          LPCSTR lpType,
  17896.          ENUMRESNAMEPROCA lpEnumFunc,
  17897.          LONG_PTR lParam,
  17898.     DWORD dwFlags,
  17899.     LANGID LangId
  17900.     );
  17901.  
  17902. __declspec(dllimport)
  17903. BOOL
  17904. __stdcall
  17905. EnumResourceNamesExW(
  17906.              HMODULE hModule,
  17907.          LPCWSTR lpType,
  17908.          ENUMRESNAMEPROCW lpEnumFunc,
  17909.          LONG_PTR lParam,
  17910.     DWORD dwFlags,
  17911.     LANGID LangId
  17912.     );
  17913.  
  17914.  
  17915.  
  17916.  
  17917.  
  17918.  
  17919.  
  17920. __declspec(dllimport)
  17921. BOOL
  17922. __stdcall
  17923. EnumResourceTypesExA(
  17924.              HMODULE hModule,
  17925.          ENUMRESTYPEPROCA lpEnumFunc,
  17926.          LONG_PTR lParam,
  17927.     DWORD dwFlags,
  17928.     LANGID LangId
  17929.     );
  17930.  
  17931. __declspec(dllimport)
  17932. BOOL
  17933. __stdcall
  17934. EnumResourceTypesExW(
  17935.              HMODULE hModule,
  17936.          ENUMRESTYPEPROCW lpEnumFunc,
  17937.          LONG_PTR lParam,
  17938.     DWORD dwFlags,
  17939.     LANGID LangId
  17940.     );
  17941. # 616 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 3
  17942. #pragma endregion
  17943.  
  17944. #pragma region Desktop Family or OneCore Family
  17945.  
  17946.  
  17947. __declspec(dllimport)
  17948.  
  17949. HRSRC
  17950. __stdcall
  17951. FindResourceW(
  17952.              HMODULE hModule,
  17953.          LPCWSTR lpName,
  17954.          LPCWSTR lpType
  17955.     );
  17956.  
  17957.  
  17958.  
  17959.  
  17960.  
  17961.  
  17962. __declspec(dllimport)
  17963.  
  17964. HMODULE
  17965. __stdcall
  17966. LoadLibraryA(
  17967.          LPCSTR lpLibFileName
  17968.     );
  17969.  
  17970. __declspec(dllimport)
  17971.  
  17972. HMODULE
  17973. __stdcall
  17974. LoadLibraryW(
  17975.          LPCWSTR lpLibFileName
  17976.     );
  17977.  
  17978.  
  17979.  
  17980.  
  17981.  
  17982.  
  17983.  
  17984.  
  17985. #pragma endregion
  17986.  
  17987. #pragma region Desktop Family or OneCore Family
  17988.  
  17989.  
  17990. __declspec(dllimport)
  17991. BOOL
  17992. __stdcall
  17993. EnumResourceNamesW(
  17994.              HMODULE hModule,
  17995.          LPCWSTR lpType,
  17996.          ENUMRESNAMEPROCW lpEnumFunc,
  17997.          LONG_PTR lParam
  17998.     );
  17999.  
  18000.  
  18001.  
  18002.  
  18003.  
  18004.  
  18005.  
  18006. #pragma endregion
  18007.  
  18008.  
  18009.  
  18010.  
  18011.  
  18012.  
  18013.  
  18014. #pragma option pop
  18015. # 68 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  18016.  
  18017. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\securitybaseapi.h" 1 3
  18018. #pragma option push -b -a8 -pc -A- -w-pun
  18019. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\securitybaseapi.h" 3
  18020. #pragma region Desktop Family or OneCore Family
  18021.  
  18022.  
  18023. __declspec(dllimport)
  18024. BOOL
  18025. __stdcall
  18026. AccessCheck(
  18027.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18028.          HANDLE ClientToken,
  18029.          DWORD DesiredAccess,
  18030.          PGENERIC_MAPPING GenericMapping,
  18031.                                                                        PPRIVILEGE_SET PrivilegeSet,
  18032.             LPDWORD PrivilegeSetLength,
  18033.           LPDWORD GrantedAccess,
  18034.           LPBOOL AccessStatus
  18035.     );
  18036.  
  18037.  
  18038. __declspec(dllimport)
  18039. BOOL
  18040. __stdcall
  18041. AccessCheckAndAuditAlarmW(
  18042.          LPCWSTR SubsystemName,
  18043.              LPVOID HandleId,
  18044.          LPWSTR ObjectTypeName,
  18045.              LPWSTR ObjectName,
  18046.          PSECURITY_DESCRIPTOR SecurityDescriptor,
  18047.          DWORD DesiredAccess,
  18048.          PGENERIC_MAPPING GenericMapping,
  18049.          BOOL ObjectCreation,
  18050.           LPDWORD GrantedAccess,
  18051.           LPBOOL AccessStatus,
  18052.           LPBOOL pfGenerateOnClose
  18053.     );
  18054.  
  18055.  
  18056.  
  18057.  
  18058.  
  18059.  
  18060. __declspec(dllimport)
  18061. BOOL
  18062. __stdcall
  18063. AccessCheckByType(
  18064.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18065.              PSID PrincipalSelfSid,
  18066.          HANDLE ClientToken,
  18067.          DWORD DesiredAccess,
  18068.                                               POBJECT_TYPE_LIST ObjectTypeList,
  18069.          DWORD ObjectTypeListLength,
  18070.          PGENERIC_MAPPING GenericMapping,
  18071.                                                                        PPRIVILEGE_SET PrivilegeSet,
  18072.             LPDWORD PrivilegeSetLength,
  18073.           LPDWORD GrantedAccess,
  18074.           LPBOOL AccessStatus
  18075.     );
  18076.  
  18077.  
  18078. __declspec(dllimport)
  18079. BOOL
  18080. __stdcall
  18081. AccessCheckByTypeResultList(
  18082.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18083.              PSID PrincipalSelfSid,
  18084.          HANDLE ClientToken,
  18085.          DWORD DesiredAccess,
  18086.                                               POBJECT_TYPE_LIST ObjectTypeList,
  18087.          DWORD ObjectTypeListLength,
  18088.          PGENERIC_MAPPING GenericMapping,
  18089.                                                                        PPRIVILEGE_SET PrivilegeSet,
  18090.             LPDWORD PrivilegeSetLength,
  18091.                                        LPDWORD GrantedAccessList,
  18092.                                        LPDWORD AccessStatusList
  18093.     );
  18094.  
  18095.  
  18096. __declspec(dllimport)
  18097. BOOL
  18098. __stdcall
  18099. AccessCheckByTypeAndAuditAlarmW(
  18100.          LPCWSTR SubsystemName,
  18101.          LPVOID HandleId,
  18102.          LPCWSTR ObjectTypeName,
  18103.              LPCWSTR ObjectName,
  18104.          PSECURITY_DESCRIPTOR SecurityDescriptor,
  18105.              PSID PrincipalSelfSid,
  18106.          DWORD DesiredAccess,
  18107.          AUDIT_EVENT_TYPE AuditType,
  18108.          DWORD Flags,
  18109.                                               POBJECT_TYPE_LIST ObjectTypeList,
  18110.          DWORD ObjectTypeListLength,
  18111.          PGENERIC_MAPPING GenericMapping,
  18112.          BOOL ObjectCreation,
  18113.           LPDWORD GrantedAccess,
  18114.           LPBOOL AccessStatus,
  18115.           LPBOOL pfGenerateOnClose
  18116.     );
  18117.  
  18118.  
  18119.  
  18120.  
  18121.  
  18122.  
  18123. __declspec(dllimport)
  18124. BOOL
  18125. __stdcall
  18126. AccessCheckByTypeResultListAndAuditAlarmW(
  18127.          LPCWSTR SubsystemName,
  18128.          LPVOID HandleId,
  18129.          LPCWSTR ObjectTypeName,
  18130.              LPCWSTR ObjectName,
  18131.          PSECURITY_DESCRIPTOR SecurityDescriptor,
  18132.              PSID PrincipalSelfSid,
  18133.          DWORD DesiredAccess,
  18134.          AUDIT_EVENT_TYPE AuditType,
  18135.          DWORD Flags,
  18136.                                               POBJECT_TYPE_LIST ObjectTypeList,
  18137.          DWORD ObjectTypeListLength,
  18138.          PGENERIC_MAPPING GenericMapping,
  18139.          BOOL ObjectCreation,
  18140.                                        LPDWORD GrantedAccessList,
  18141.                                        LPDWORD AccessStatusList,
  18142.           LPBOOL pfGenerateOnClose
  18143.     );
  18144.  
  18145.  
  18146.  
  18147.  
  18148.  
  18149.  
  18150. __declspec(dllimport)
  18151. BOOL
  18152. __stdcall
  18153. AccessCheckByTypeResultListAndAuditAlarmByHandleW(
  18154.          LPCWSTR SubsystemName,
  18155.          LPVOID HandleId,
  18156.          HANDLE ClientToken,
  18157.          LPCWSTR ObjectTypeName,
  18158.              LPCWSTR ObjectName,
  18159.          PSECURITY_DESCRIPTOR SecurityDescriptor,
  18160.              PSID PrincipalSelfSid,
  18161.          DWORD DesiredAccess,
  18162.          AUDIT_EVENT_TYPE AuditType,
  18163.          DWORD Flags,
  18164.                                               POBJECT_TYPE_LIST ObjectTypeList,
  18165.          DWORD ObjectTypeListLength,
  18166.          PGENERIC_MAPPING GenericMapping,
  18167.          BOOL ObjectCreation,
  18168.                                        LPDWORD GrantedAccessList,
  18169.                                        LPDWORD AccessStatusList,
  18170.           LPBOOL pfGenerateOnClose
  18171.     );
  18172.  
  18173.  
  18174.  
  18175.  
  18176.  
  18177.  
  18178.  
  18179. #pragma endregion
  18180.  
  18181. #pragma region Application Family or OneCore Family
  18182.  
  18183.  
  18184. __declspec(dllimport)
  18185. BOOL
  18186. __stdcall
  18187. AddAccessAllowedAce(
  18188.             PACL pAcl,
  18189.          DWORD dwAceRevision,
  18190.          DWORD AccessMask,
  18191.          PSID pSid
  18192.     );
  18193.  
  18194.  
  18195. __declspec(dllimport)
  18196. BOOL
  18197. __stdcall
  18198. AddAccessAllowedAceEx(
  18199.             PACL pAcl,
  18200.          DWORD dwAceRevision,
  18201.          DWORD AceFlags,
  18202.          DWORD AccessMask,
  18203.          PSID pSid
  18204.     );
  18205.  
  18206.  
  18207.  
  18208. #pragma endregion
  18209.  
  18210. #pragma region Desktop Family or OneCore Family
  18211.  
  18212.  
  18213. __declspec(dllimport)
  18214. BOOL
  18215. __stdcall
  18216. AddAccessAllowedObjectAce(
  18217.             PACL pAcl,
  18218.          DWORD dwAceRevision,
  18219.          DWORD AceFlags,
  18220.          DWORD AccessMask,
  18221.              GUID* ObjectTypeGuid,
  18222.              GUID* InheritedObjectTypeGuid,
  18223.          PSID pSid
  18224.     );
  18225.  
  18226.  
  18227. __declspec(dllimport)
  18228. BOOL
  18229. __stdcall
  18230. AddAccessDeniedAce(
  18231.             PACL pAcl,
  18232.          DWORD dwAceRevision,
  18233.          DWORD AccessMask,
  18234.          PSID pSid
  18235.     );
  18236.  
  18237.  
  18238. __declspec(dllimport)
  18239. BOOL
  18240. __stdcall
  18241. AddAccessDeniedAceEx(
  18242.             PACL pAcl,
  18243.          DWORD dwAceRevision,
  18244.          DWORD AceFlags,
  18245.          DWORD AccessMask,
  18246.          PSID pSid
  18247.     );
  18248.  
  18249.  
  18250. __declspec(dllimport)
  18251. BOOL
  18252. __stdcall
  18253. AddAccessDeniedObjectAce(
  18254.             PACL pAcl,
  18255.          DWORD dwAceRevision,
  18256.          DWORD AceFlags,
  18257.          DWORD AccessMask,
  18258.              GUID* ObjectTypeGuid,
  18259.              GUID* InheritedObjectTypeGuid,
  18260.          PSID pSid
  18261.     );
  18262.  
  18263.  
  18264.  
  18265. #pragma endregion
  18266.  
  18267. #pragma region Application Family or OneCore Family
  18268.  
  18269.  
  18270. __declspec(dllimport)
  18271. BOOL
  18272. __stdcall
  18273. AddAce(
  18274.             PACL pAcl,
  18275.          DWORD dwAceRevision,
  18276.          DWORD dwStartingAceIndex,
  18277.                                      LPVOID pAceList,
  18278.          DWORD nAceListLength
  18279.     );
  18280.  
  18281.  
  18282.  
  18283. #pragma endregion
  18284.  
  18285. #pragma region Desktop Family or OneCore Family
  18286.  
  18287.  
  18288. __declspec(dllimport)
  18289. BOOL
  18290. __stdcall
  18291. AddAuditAccessAce(
  18292.             PACL pAcl,
  18293.          DWORD dwAceRevision,
  18294.          DWORD dwAccessMask,
  18295.          PSID pSid,
  18296.          BOOL bAuditSuccess,
  18297.          BOOL bAuditFailure
  18298.     );
  18299.  
  18300.  
  18301. __declspec(dllimport)
  18302. BOOL
  18303. __stdcall
  18304. AddAuditAccessAceEx(
  18305.             PACL pAcl,
  18306.          DWORD dwAceRevision,
  18307.          DWORD AceFlags,
  18308.          DWORD dwAccessMask,
  18309.          PSID pSid,
  18310.          BOOL bAuditSuccess,
  18311.          BOOL bAuditFailure
  18312.     );
  18313.  
  18314.  
  18315. __declspec(dllimport)
  18316. BOOL
  18317. __stdcall
  18318. AddAuditAccessObjectAce(
  18319.             PACL pAcl,
  18320.          DWORD dwAceRevision,
  18321.          DWORD AceFlags,
  18322.          DWORD AccessMask,
  18323.              GUID* ObjectTypeGuid,
  18324.              GUID* InheritedObjectTypeGuid,
  18325.          PSID pSid,
  18326.          BOOL bAuditSuccess,
  18327.          BOOL bAuditFailure
  18328.     );
  18329.  
  18330.  
  18331.  
  18332. #pragma endregion
  18333.  
  18334. #pragma region Application Family or OneCore Family
  18335.  
  18336.  
  18337.  
  18338.  
  18339. __declspec(dllimport)
  18340. BOOL
  18341. __stdcall
  18342. AddMandatoryAce(
  18343.             PACL pAcl,
  18344.          DWORD dwAceRevision,
  18345.          DWORD AceFlags,
  18346.          DWORD MandatoryPolicy,
  18347.          PSID pLabelSid
  18348.     );
  18349.  
  18350.  
  18351.  
  18352.  
  18353.  
  18354. #pragma endregion
  18355.  
  18356.  
  18357.  
  18358. #pragma region Desktop Family or OneCore Family
  18359.  
  18360.  
  18361. __declspec(dllimport)
  18362. BOOL
  18363. __stdcall
  18364. AddResourceAttributeAce(
  18365.             PACL pAcl,
  18366.          DWORD dwAceRevision,
  18367.          DWORD AceFlags,
  18368.          DWORD AccessMask,
  18369.          PSID pSid,
  18370.          PCLAIM_SECURITY_ATTRIBUTES_INFORMATION pAttributeInfo,
  18371.           PDWORD pReturnLength
  18372.     );
  18373.  
  18374.  
  18375. __declspec(dllimport)
  18376. BOOL
  18377. __stdcall
  18378. AddScopedPolicyIDAce(
  18379.             PACL pAcl,
  18380.          DWORD dwAceRevision,
  18381.          DWORD AceFlags,
  18382.          DWORD AccessMask,
  18383.          PSID pSid
  18384.     );
  18385.  
  18386.  
  18387.  
  18388. #pragma endregion
  18389.  
  18390.  
  18391.  
  18392. #pragma region Application Family or OneCore Family
  18393.  
  18394.  
  18395. __declspec(dllimport)
  18396. BOOL
  18397. __stdcall
  18398. AdjustTokenGroups(
  18399.          HANDLE TokenHandle,
  18400.          BOOL ResetToDefault,
  18401.              PTOKEN_GROUPS NewState,
  18402.          DWORD BufferLength,
  18403.                                                           PTOKEN_GROUPS PreviousState,
  18404.               PDWORD ReturnLength
  18405.     );
  18406.  
  18407.  
  18408. __declspec(dllimport)
  18409. BOOL
  18410. __stdcall
  18411. AdjustTokenPrivileges(
  18412.          HANDLE TokenHandle,
  18413.          BOOL DisableAllPrivileges,
  18414.              PTOKEN_PRIVILEGES NewState,
  18415.          DWORD BufferLength,
  18416.                                                           PTOKEN_PRIVILEGES PreviousState,
  18417.               PDWORD ReturnLength
  18418.     );
  18419.  
  18420.  
  18421. __declspec(dllimport)
  18422. BOOL
  18423. __stdcall
  18424. AllocateAndInitializeSid(
  18425.          PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
  18426.          BYTE nSubAuthorityCount,
  18427.          DWORD nSubAuthority0,
  18428.          DWORD nSubAuthority1,
  18429.          DWORD nSubAuthority2,
  18430.          DWORD nSubAuthority3,
  18431.          DWORD nSubAuthority4,
  18432.          DWORD nSubAuthority5,
  18433.          DWORD nSubAuthority6,
  18434.          DWORD nSubAuthority7,
  18435.              PSID* pSid
  18436.     );
  18437.  
  18438.  
  18439. __declspec(dllimport)
  18440. BOOL
  18441. __stdcall
  18442. AllocateLocallyUniqueId(
  18443.           PLUID Luid
  18444.     );
  18445.  
  18446.  
  18447.  
  18448. #pragma endregion
  18449.  
  18450. #pragma region Desktop Family or OneCore Family
  18451.  
  18452.  
  18453. __declspec(dllimport)
  18454. BOOL
  18455. __stdcall
  18456. AreAllAccessesGranted(
  18457.          DWORD GrantedAccess,
  18458.          DWORD DesiredAccess
  18459.     );
  18460.  
  18461.  
  18462. __declspec(dllimport)
  18463. BOOL
  18464. __stdcall
  18465. AreAnyAccessesGranted(
  18466.          DWORD GrantedAccess,
  18467.          DWORD DesiredAccess
  18468.     );
  18469.  
  18470.  
  18471.  
  18472. #pragma endregion
  18473.  
  18474. #pragma region Application Family or OneCore Family
  18475.  
  18476.  
  18477. __declspec(dllimport)
  18478. BOOL
  18479. __stdcall
  18480. CheckTokenMembership(
  18481.              HANDLE TokenHandle,
  18482.          PSID SidToCheck,
  18483.           PBOOL IsMember
  18484.     );
  18485.  
  18486.  
  18487.  
  18488. #pragma endregion
  18489.  
  18490.  
  18491.  
  18492. #pragma region Desktop Family or OneCore Family
  18493.  
  18494.  
  18495. __declspec(dllimport)
  18496. BOOL
  18497. __stdcall
  18498. CheckTokenCapability(
  18499.              HANDLE TokenHandle,
  18500.          PSID CapabilitySidToCheck,
  18501.           PBOOL HasCapability
  18502.     );
  18503.  
  18504.  
  18505. __declspec(dllimport)
  18506. BOOL
  18507. __stdcall
  18508. GetAppContainerAce(
  18509.          PACL Acl,
  18510.          DWORD StartingAceIndex,
  18511.              PVOID* AppContainerAce,
  18512.               DWORD* AppContainerAceIndex
  18513.     );
  18514.  
  18515.  
  18516.  
  18517. #pragma endregion
  18518.  
  18519. #pragma region Application Family or OneCore Family
  18520.  
  18521.  
  18522. __declspec(dllimport)
  18523. BOOL
  18524. __stdcall
  18525. CheckTokenMembershipEx(
  18526.              HANDLE TokenHandle,
  18527.          PSID SidToCheck,
  18528.          DWORD Flags,
  18529.           PBOOL IsMember
  18530.     );
  18531.  
  18532.  
  18533.  
  18534. #pragma endregion
  18535.  
  18536.  
  18537.  
  18538. #pragma region Desktop Family or OneCore Family
  18539.  
  18540.  
  18541. __declspec(dllimport)
  18542. BOOL
  18543. __stdcall
  18544. ConvertToAutoInheritPrivateObjectSecurity(
  18545.              PSECURITY_DESCRIPTOR ParentDescriptor,
  18546.          PSECURITY_DESCRIPTOR CurrentSecurityDescriptor,
  18547.              PSECURITY_DESCRIPTOR* NewSecurityDescriptor,
  18548.              GUID* ObjectType,
  18549.          BOOLEAN IsDirectoryObject,
  18550.          PGENERIC_MAPPING GenericMapping
  18551.     );
  18552.  
  18553.  
  18554.  
  18555. #pragma endregion
  18556.  
  18557. #pragma region Application Family or OneCore Family
  18558.  
  18559.  
  18560. __declspec(dllimport)
  18561. BOOL
  18562. __stdcall
  18563. CopySid(
  18564.          DWORD nDestinationSidLength,
  18565.                                               PSID pDestinationSid,
  18566.          PSID pSourceSid
  18567.     );
  18568.  
  18569.  
  18570.  
  18571. #pragma endregion
  18572.  
  18573. #pragma region Desktop Family or OneCore Family
  18574.  
  18575.  
  18576. __declspec(dllimport)
  18577. BOOL
  18578. __stdcall
  18579. CreatePrivateObjectSecurity(
  18580.              PSECURITY_DESCRIPTOR ParentDescriptor,
  18581.              PSECURITY_DESCRIPTOR CreatorDescriptor,
  18582.              PSECURITY_DESCRIPTOR* NewDescriptor,
  18583.          BOOL IsDirectoryObject,
  18584.              HANDLE Token,
  18585.          PGENERIC_MAPPING GenericMapping
  18586.     );
  18587.  
  18588.  
  18589. __declspec(dllimport)
  18590. BOOL
  18591. __stdcall
  18592. CreatePrivateObjectSecurityEx(
  18593.              PSECURITY_DESCRIPTOR ParentDescriptor,
  18594.              PSECURITY_DESCRIPTOR CreatorDescriptor,
  18595.              PSECURITY_DESCRIPTOR* NewDescriptor,
  18596.              GUID* ObjectType,
  18597.          BOOL IsContainerObject,
  18598.          ULONG AutoInheritFlags,
  18599.              HANDLE Token,
  18600.          PGENERIC_MAPPING GenericMapping
  18601.     );
  18602.  
  18603.  
  18604. __declspec(dllimport)
  18605. BOOL
  18606. __stdcall
  18607. CreatePrivateObjectSecurityWithMultipleInheritance(
  18608.              PSECURITY_DESCRIPTOR ParentDescriptor,
  18609.              PSECURITY_DESCRIPTOR CreatorDescriptor,
  18610.              PSECURITY_DESCRIPTOR* NewDescriptor,
  18611.                               GUID** ObjectTypes,
  18612.          ULONG GuidCount,
  18613.          BOOL IsContainerObject,
  18614.          ULONG AutoInheritFlags,
  18615.              HANDLE Token,
  18616.          PGENERIC_MAPPING GenericMapping
  18617.     );
  18618.  
  18619.  
  18620. __declspec(dllimport)
  18621. BOOL
  18622. __stdcall
  18623. CreateRestrictedToken(
  18624.          HANDLE ExistingTokenHandle,
  18625.          DWORD Flags,
  18626.          DWORD DisableSidCount,
  18627.                                     PSID_AND_ATTRIBUTES SidsToDisable,
  18628.          DWORD DeletePrivilegeCount,
  18629.                                          PLUID_AND_ATTRIBUTES PrivilegesToDelete,
  18630.          DWORD RestrictedSidCount,
  18631.                                        PSID_AND_ATTRIBUTES SidsToRestrict,
  18632.              PHANDLE NewTokenHandle
  18633.     );
  18634.  
  18635.  
  18636.  
  18637. #pragma endregion
  18638.  
  18639. #pragma region Application Family or OneCore Family
  18640.  
  18641.  
  18642.  
  18643.  
  18644. __declspec(dllimport)
  18645.  
  18646. BOOL
  18647. __stdcall
  18648. CreateWellKnownSid(
  18649.          WELL_KNOWN_SID_TYPE WellKnownSidType,
  18650.              PSID DomainSid,
  18651.                                              PSID pSid,
  18652.             DWORD* cbSid
  18653.     );
  18654.  
  18655.  
  18656. __declspec(dllimport)
  18657.  
  18658. BOOL
  18659. __stdcall
  18660. EqualDomainSid(
  18661.          PSID pSid1,
  18662.          PSID pSid2,
  18663.           BOOL* pfEqual
  18664.     );
  18665.  
  18666.  
  18667.  
  18668.  
  18669. __declspec(dllimport)
  18670. BOOL
  18671. __stdcall
  18672. DeleteAce(
  18673.             PACL pAcl,
  18674.          DWORD dwAceIndex
  18675.     );
  18676.  
  18677.  
  18678.  
  18679. #pragma endregion
  18680.  
  18681. #pragma region Desktop Family or OneCore Family
  18682.  
  18683.  
  18684. __declspec(dllimport)
  18685. BOOL
  18686. __stdcall
  18687. DestroyPrivateObjectSecurity(
  18688.                                PSECURITY_DESCRIPTOR* ObjectDescriptor
  18689.     );
  18690.  
  18691.  
  18692.  
  18693. #pragma endregion
  18694.  
  18695. #pragma region Application Family or OneCore Family
  18696.  
  18697.  
  18698. __declspec(dllimport)
  18699. BOOL
  18700. __stdcall
  18701. DuplicateToken(
  18702.          HANDLE ExistingTokenHandle,
  18703.          SECURITY_IMPERSONATION_LEVEL ImpersonationLevel,
  18704.              PHANDLE DuplicateTokenHandle
  18705.     );
  18706.  
  18707.  
  18708. __declspec(dllimport)
  18709. BOOL
  18710. __stdcall
  18711. DuplicateTokenEx(
  18712.          HANDLE hExistingToken,
  18713.          DWORD dwDesiredAccess,
  18714.              LPSECURITY_ATTRIBUTES lpTokenAttributes,
  18715.          SECURITY_IMPERSONATION_LEVEL ImpersonationLevel,
  18716.          TOKEN_TYPE TokenType,
  18717.              PHANDLE phNewToken
  18718.     );
  18719.  
  18720.  
  18721.  
  18722. #pragma endregion
  18723.  
  18724. #pragma region Desktop Family or OneCore Family
  18725.  
  18726.  
  18727. __declspec(dllimport)
  18728. BOOL
  18729. __stdcall
  18730. EqualPrefixSid(
  18731.          PSID pSid1,
  18732.          PSID pSid2
  18733.     );
  18734.  
  18735.  
  18736. __declspec(dllimport)
  18737. BOOL
  18738. __stdcall
  18739. EqualSid(
  18740.          PSID pSid1,
  18741.          PSID pSid2
  18742.     );
  18743.  
  18744.  
  18745. __declspec(dllimport)
  18746. BOOL
  18747. __stdcall
  18748. FindFirstFreeAce(
  18749.          PACL pAcl,
  18750.              LPVOID* pAce
  18751.     );
  18752.  
  18753.  
  18754.  
  18755. #pragma endregion
  18756.  
  18757. #pragma region Application Family or OneCore Family
  18758.  
  18759.  
  18760. __declspec(dllimport)
  18761. PVOID
  18762. __stdcall
  18763. FreeSid(
  18764.          PSID pSid
  18765.     );
  18766.  
  18767.  
  18768. __declspec(dllimport)
  18769. BOOL
  18770. __stdcall
  18771. GetAce(
  18772.          PACL pAcl,
  18773.          DWORD dwAceIndex,
  18774.              LPVOID* pAce
  18775.     );
  18776.  
  18777.  
  18778. __declspec(dllimport)
  18779. BOOL
  18780. __stdcall
  18781. GetAclInformation(
  18782.          PACL pAcl,
  18783.                                               LPVOID pAclInformation,
  18784.          DWORD nAclInformationLength,
  18785.          ACL_INFORMATION_CLASS dwAclInformationClass
  18786.     );
  18787.  
  18788.  
  18789.  
  18790. #pragma endregion
  18791.  
  18792. #pragma region Desktop Family or OneCore Family
  18793.  
  18794.  
  18795. __declspec(dllimport)
  18796. BOOL
  18797. __stdcall
  18798. GetFileSecurityW(
  18799.          LPCWSTR lpFileName,
  18800.          SECURITY_INFORMATION RequestedInformation,
  18801.                                                         PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18802.          DWORD nLength,
  18803.           LPDWORD lpnLengthNeeded
  18804.     );
  18805.  
  18806.  
  18807.  
  18808.  
  18809.  
  18810.  
  18811.  
  18812. #pragma endregion
  18813.  
  18814. #pragma region Application Family or OneCore Family
  18815.  
  18816.  
  18817. __declspec(dllimport)
  18818. BOOL
  18819. __stdcall
  18820. GetKernelObjectSecurity(
  18821.          HANDLE Handle,
  18822.          SECURITY_INFORMATION RequestedInformation,
  18823.                                     PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18824.          DWORD nLength,
  18825.           LPDWORD lpnLengthNeeded
  18826.     );
  18827.  
  18828.  
  18829. __declspec(dllimport)
  18830.  
  18831.  
  18832. DWORD
  18833. __stdcall
  18834. GetLengthSid(
  18835.                                            PSID pSid
  18836.     );
  18837.  
  18838.  
  18839.  
  18840. #pragma endregion
  18841.  
  18842. #pragma region Desktop Family or OneCore Family
  18843.  
  18844.  
  18845. __declspec(dllimport)
  18846.  
  18847. BOOL
  18848. __stdcall
  18849. GetPrivateObjectSecurity(
  18850.          PSECURITY_DESCRIPTOR ObjectDescriptor,
  18851.          SECURITY_INFORMATION SecurityInformation,
  18852.                                                               PSECURITY_DESCRIPTOR ResultantDescriptor,
  18853.          DWORD DescriptorLength,
  18854.           PDWORD ReturnLength
  18855.     );
  18856.  
  18857.  
  18858.  
  18859. #pragma endregion
  18860.  
  18861. #pragma region Application Family or OneCore Family
  18862.  
  18863.  
  18864. __declspec(dllimport)
  18865. BOOL
  18866. __stdcall
  18867. GetSecurityDescriptorControl(
  18868.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18869.           PSECURITY_DESCRIPTOR_CONTROL pControl,
  18870.           LPDWORD lpdwRevision
  18871.     );
  18872.  
  18873.  
  18874. __declspec(dllimport)
  18875. BOOL
  18876. __stdcall
  18877. GetSecurityDescriptorDacl(
  18878.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18879.           LPBOOL lpbDaclPresent,
  18880.              PACL* pDacl,
  18881.           LPBOOL lpbDaclDefaulted
  18882.     );
  18883.  
  18884.  
  18885. __declspec(dllimport)
  18886. BOOL
  18887. __stdcall
  18888. GetSecurityDescriptorGroup(
  18889.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18890.              PSID* pGroup,
  18891.           LPBOOL lpbGroupDefaulted
  18892.     );
  18893.  
  18894.  
  18895. __declspec(dllimport)
  18896. DWORD
  18897. __stdcall
  18898. GetSecurityDescriptorLength(
  18899.          PSECURITY_DESCRIPTOR pSecurityDescriptor
  18900.     );
  18901.  
  18902.  
  18903. __declspec(dllimport)
  18904. BOOL
  18905. __stdcall
  18906. GetSecurityDescriptorOwner(
  18907.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18908.              PSID* pOwner,
  18909.           LPBOOL lpbOwnerDefaulted
  18910.     );
  18911.  
  18912.  
  18913. __declspec(dllimport)
  18914. DWORD
  18915. __stdcall
  18916. GetSecurityDescriptorRMControl(
  18917.          PSECURITY_DESCRIPTOR SecurityDescriptor,
  18918.           PUCHAR RMControl
  18919.     );
  18920.  
  18921.  
  18922. __declspec(dllimport)
  18923. BOOL
  18924. __stdcall
  18925. GetSecurityDescriptorSacl(
  18926.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  18927.           LPBOOL lpbSaclPresent,
  18928.              PACL* pSacl,
  18929.           LPBOOL lpbSaclDefaulted
  18930.     );
  18931.  
  18932.  
  18933. __declspec(dllimport)
  18934. PSID_IDENTIFIER_AUTHORITY
  18935. __stdcall
  18936. GetSidIdentifierAuthority(
  18937.          PSID pSid
  18938.     );
  18939.  
  18940.  
  18941. __declspec(dllimport)
  18942. DWORD
  18943. __stdcall
  18944. GetSidLengthRequired(
  18945.          UCHAR nSubAuthorityCount
  18946.     );
  18947.  
  18948.  
  18949. __declspec(dllimport)
  18950. PDWORD
  18951. __stdcall
  18952. GetSidSubAuthority(
  18953.          PSID pSid,
  18954.          DWORD nSubAuthority
  18955.     );
  18956.  
  18957.  
  18958. __declspec(dllimport)
  18959. PUCHAR
  18960. __stdcall
  18961. GetSidSubAuthorityCount(
  18962.          PSID pSid
  18963.     );
  18964.  
  18965.  
  18966. __declspec(dllimport)
  18967. BOOL
  18968. __stdcall
  18969. GetTokenInformation(
  18970.          HANDLE TokenHandle,
  18971.          TOKEN_INFORMATION_CLASS TokenInformationClass,
  18972.                                                                     LPVOID TokenInformation,
  18973.          DWORD TokenInformationLength,
  18974.           PDWORD ReturnLength
  18975.     );
  18976.  
  18977.  
  18978.  
  18979.  
  18980. __declspec(dllimport)
  18981.  
  18982. BOOL
  18983. __stdcall
  18984. GetWindowsAccountDomainSid(
  18985.          PSID pSid,
  18986.                                                          PSID pDomainSid,
  18987.             DWORD* cbDomainSid
  18988.     );
  18989.  
  18990.  
  18991.  
  18992.  
  18993.  
  18994. #pragma endregion
  18995.  
  18996. #pragma region Desktop Family or OneCore Family
  18997.  
  18998.  
  18999. __declspec(dllimport)
  19000. BOOL
  19001. __stdcall
  19002. ImpersonateAnonymousToken(
  19003.          HANDLE ThreadHandle
  19004.     );
  19005.  
  19006.  
  19007.  
  19008. __declspec(dllimport)
  19009. BOOL
  19010. __stdcall
  19011. ImpersonateLoggedOnUser(
  19012.          HANDLE hToken
  19013.     );
  19014.  
  19015.  
  19016.  
  19017. __declspec(dllimport)
  19018. BOOL
  19019. __stdcall
  19020. ImpersonateSelf(
  19021.          SECURITY_IMPERSONATION_LEVEL ImpersonationLevel
  19022.     );
  19023.  
  19024.  
  19025.  
  19026. #pragma endregion
  19027.  
  19028. #pragma region Application Family or OneCore Family
  19029.  
  19030.  
  19031. __declspec(dllimport)
  19032. BOOL
  19033. __stdcall
  19034. InitializeAcl(
  19035.                                    PACL pAcl,
  19036.          DWORD nAclLength,
  19037.          DWORD dwAclRevision
  19038.     );
  19039.  
  19040.  
  19041. __declspec(dllimport)
  19042. BOOL
  19043. __stdcall
  19044. InitializeSecurityDescriptor(
  19045.           PSECURITY_DESCRIPTOR pSecurityDescriptor,
  19046.          DWORD dwRevision
  19047.     );
  19048.  
  19049.  
  19050. __declspec(dllimport)
  19051. BOOL
  19052. __stdcall
  19053. InitializeSid(
  19054.                                                                                   PSID Sid,
  19055.          PSID_IDENTIFIER_AUTHORITY pIdentifierAuthority,
  19056.          BYTE nSubAuthorityCount
  19057.     );
  19058.  
  19059.  
  19060.  
  19061. #pragma endregion
  19062.  
  19063. #pragma region Desktop Family or OneCore Family
  19064.  
  19065.  
  19066. __declspec(dllimport)
  19067. BOOL
  19068. __stdcall
  19069. IsTokenRestricted(
  19070.          HANDLE TokenHandle
  19071.     );
  19072.  
  19073.  
  19074.  
  19075. #pragma endregion
  19076.  
  19077. #pragma region Application Family or OneCore Family
  19078.  
  19079.  
  19080. __declspec(dllimport)
  19081. BOOL
  19082. __stdcall
  19083. IsValidAcl(
  19084.          PACL pAcl
  19085.     );
  19086.  
  19087.  
  19088. __declspec(dllimport)
  19089. BOOL
  19090. __stdcall
  19091. IsValidSecurityDescriptor(
  19092.          PSECURITY_DESCRIPTOR pSecurityDescriptor
  19093.     );
  19094.  
  19095.  
  19096. __declspec(dllimport)
  19097. BOOL
  19098. __stdcall
  19099. IsValidSid(
  19100.          PSID pSid
  19101.     );
  19102.  
  19103.  
  19104.  
  19105.  
  19106. __declspec(dllimport)
  19107. BOOL
  19108. __stdcall
  19109. IsWellKnownSid(
  19110.          PSID pSid,
  19111.          WELL_KNOWN_SID_TYPE WellKnownSidType
  19112.     );
  19113.  
  19114.  
  19115.  
  19116.  
  19117. __declspec(dllimport)
  19118.  
  19119. BOOL
  19120. __stdcall
  19121. MakeAbsoluteSD(
  19122.          PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor,
  19123.                                                                                                        PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor,
  19124.             LPDWORD lpdwAbsoluteSecurityDescriptorSize,
  19125.                                                            PACL pDacl,
  19126.             LPDWORD lpdwDaclSize,
  19127.                                                            PACL pSacl,
  19128.             LPDWORD lpdwSaclSize,
  19129.                                                              PSID pOwner,
  19130.             LPDWORD lpdwOwnerSize,
  19131.                                                                            PSID pPrimaryGroup,
  19132.             LPDWORD lpdwPrimaryGroupSize
  19133.     );
  19134.  
  19135.  
  19136. __declspec(dllimport)
  19137.  
  19138. BOOL
  19139. __stdcall
  19140. MakeSelfRelativeSD(
  19141.          PSECURITY_DESCRIPTOR pAbsoluteSecurityDescriptor,
  19142.                                                                    PSECURITY_DESCRIPTOR pSelfRelativeSecurityDescriptor,
  19143.             LPDWORD lpdwBufferLength
  19144.     );
  19145.  
  19146.  
  19147.  
  19148. #pragma endregion
  19149.  
  19150. #pragma region Desktop Family or OneCore Family
  19151.  
  19152.  
  19153. __declspec(dllimport)
  19154. void
  19155. __stdcall
  19156. MapGenericMask(
  19157.             PDWORD AccessMask,
  19158.          PGENERIC_MAPPING GenericMapping
  19159.     );
  19160.  
  19161.  
  19162. __declspec(dllimport)
  19163. BOOL
  19164. __stdcall
  19165. ObjectCloseAuditAlarmW(
  19166.          LPCWSTR SubsystemName,
  19167.          LPVOID HandleId,
  19168.          BOOL GenerateOnClose
  19169.     );
  19170.  
  19171.  
  19172.  
  19173.  
  19174.  
  19175.  
  19176. __declspec(dllimport)
  19177. BOOL
  19178. __stdcall
  19179. ObjectDeleteAuditAlarmW(
  19180.          LPCWSTR SubsystemName,
  19181.          LPVOID HandleId,
  19182.          BOOL GenerateOnClose
  19183.     );
  19184.  
  19185.  
  19186.  
  19187.  
  19188.  
  19189.  
  19190. __declspec(dllimport)
  19191. BOOL
  19192. __stdcall
  19193. ObjectOpenAuditAlarmW(
  19194.          LPCWSTR SubsystemName,
  19195.          LPVOID HandleId,
  19196.          LPWSTR ObjectTypeName,
  19197.              LPWSTR ObjectName,
  19198.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  19199.          HANDLE ClientToken,
  19200.          DWORD DesiredAccess,
  19201.          DWORD GrantedAccess,
  19202.              PPRIVILEGE_SET Privileges,
  19203.          BOOL ObjectCreation,
  19204.          BOOL AccessGranted,
  19205.           LPBOOL GenerateOnClose
  19206.     );
  19207.  
  19208.  
  19209.  
  19210.  
  19211.  
  19212.  
  19213. __declspec(dllimport)
  19214. BOOL
  19215. __stdcall
  19216. ObjectPrivilegeAuditAlarmW(
  19217.          LPCWSTR SubsystemName,
  19218.          LPVOID HandleId,
  19219.          HANDLE ClientToken,
  19220.          DWORD DesiredAccess,
  19221.          PPRIVILEGE_SET Privileges,
  19222.          BOOL AccessGranted
  19223.     );
  19224.  
  19225.  
  19226.  
  19227.  
  19228.  
  19229.  
  19230. __declspec(dllimport)
  19231. BOOL
  19232. __stdcall
  19233. PrivilegeCheck(
  19234.          HANDLE ClientToken,
  19235.             PPRIVILEGE_SET RequiredPrivileges,
  19236.           LPBOOL pfResult
  19237.     );
  19238.  
  19239.  
  19240. __declspec(dllimport)
  19241. BOOL
  19242. __stdcall
  19243. PrivilegedServiceAuditAlarmW(
  19244.          LPCWSTR SubsystemName,
  19245.          LPCWSTR ServiceName,
  19246.          HANDLE ClientToken,
  19247.          PPRIVILEGE_SET Privileges,
  19248.          BOOL AccessGranted
  19249.     );
  19250. # 1269 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\securitybaseapi.h" 3
  19251. __declspec(dllimport)
  19252. void
  19253. __stdcall
  19254. QuerySecurityAccessMask(
  19255.          SECURITY_INFORMATION SecurityInformation,
  19256.           LPDWORD DesiredAccess
  19257.     );
  19258.  
  19259.  
  19260.  
  19261.  
  19262. __declspec(dllimport)
  19263. BOOL
  19264. __stdcall
  19265. RevertToSelf(
  19266.     void
  19267.     );
  19268.  
  19269.  
  19270. __declspec(dllimport)
  19271. BOOL
  19272. __stdcall
  19273. SetAclInformation(
  19274.             PACL pAcl,
  19275.                                             LPVOID pAclInformation,
  19276.          DWORD nAclInformationLength,
  19277.          ACL_INFORMATION_CLASS dwAclInformationClass
  19278.     );
  19279.  
  19280.  
  19281. __declspec(dllimport)
  19282. BOOL
  19283. __stdcall
  19284. SetFileSecurityW(
  19285.          LPCWSTR lpFileName,
  19286.          SECURITY_INFORMATION SecurityInformation,
  19287.          PSECURITY_DESCRIPTOR pSecurityDescriptor
  19288.     );
  19289.  
  19290.  
  19291.  
  19292.  
  19293.  
  19294.  
  19295. #pragma endregion
  19296.  
  19297. #pragma region Application Family or OneCore Family
  19298.  
  19299.  
  19300. __declspec(dllimport)
  19301. BOOL
  19302. __stdcall
  19303. SetKernelObjectSecurity(
  19304.          HANDLE Handle,
  19305.          SECURITY_INFORMATION SecurityInformation,
  19306.          PSECURITY_DESCRIPTOR SecurityDescriptor
  19307.     );
  19308.  
  19309.  
  19310.  
  19311. #pragma endregion
  19312.  
  19313. #pragma region Desktop Family or OneCore Family
  19314.  
  19315.  
  19316. __declspec(dllimport)
  19317. BOOL
  19318. __stdcall
  19319. SetPrivateObjectSecurity(
  19320.          SECURITY_INFORMATION SecurityInformation,
  19321.          PSECURITY_DESCRIPTOR ModificationDescriptor,
  19322.             PSECURITY_DESCRIPTOR* ObjectsSecurityDescriptor,
  19323.          PGENERIC_MAPPING GenericMapping,
  19324.              HANDLE Token
  19325.     );
  19326.  
  19327.  
  19328. __declspec(dllimport)
  19329. BOOL
  19330. __stdcall
  19331. SetPrivateObjectSecurityEx(
  19332.          SECURITY_INFORMATION SecurityInformation,
  19333.          PSECURITY_DESCRIPTOR ModificationDescriptor,
  19334.             PSECURITY_DESCRIPTOR* ObjectsSecurityDescriptor,
  19335.          ULONG AutoInheritFlags,
  19336.          PGENERIC_MAPPING GenericMapping,
  19337.              HANDLE Token
  19338.     );
  19339.  
  19340.  
  19341.  
  19342.  
  19343. __declspec(dllimport)
  19344. void
  19345. __stdcall
  19346. SetSecurityAccessMask(
  19347.          SECURITY_INFORMATION SecurityInformation,
  19348.           LPDWORD DesiredAccess
  19349.     );
  19350.  
  19351.  
  19352.  
  19353.  
  19354.  
  19355. #pragma endregion
  19356.  
  19357. #pragma region Application Family or OneCore Family
  19358.  
  19359.  
  19360. __declspec(dllimport)
  19361. BOOL
  19362. __stdcall
  19363. SetSecurityDescriptorControl(
  19364.          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  19365.          SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest,
  19366.          SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet
  19367.     );
  19368.  
  19369.  
  19370. __declspec(dllimport)
  19371. BOOL
  19372. __stdcall
  19373. SetSecurityDescriptorDacl(
  19374.             PSECURITY_DESCRIPTOR pSecurityDescriptor,
  19375.          BOOL bDaclPresent,
  19376.              PACL pDacl,
  19377.          BOOL bDaclDefaulted
  19378.     );
  19379.  
  19380.  
  19381. __declspec(dllimport)
  19382. BOOL
  19383. __stdcall
  19384. SetSecurityDescriptorGroup(
  19385.             PSECURITY_DESCRIPTOR pSecurityDescriptor,
  19386.              PSID pGroup,
  19387.          BOOL bGroupDefaulted
  19388.     );
  19389.  
  19390.  
  19391. __declspec(dllimport)
  19392. BOOL
  19393. __stdcall
  19394. SetSecurityDescriptorOwner(
  19395.             PSECURITY_DESCRIPTOR pSecurityDescriptor,
  19396.              PSID pOwner,
  19397.          BOOL bOwnerDefaulted
  19398.     );
  19399.  
  19400.  
  19401. __declspec(dllimport)
  19402. DWORD
  19403. __stdcall
  19404. SetSecurityDescriptorRMControl(
  19405.             PSECURITY_DESCRIPTOR SecurityDescriptor,
  19406.              PUCHAR RMControl
  19407.     );
  19408.  
  19409.  
  19410. __declspec(dllimport)
  19411. BOOL
  19412. __stdcall
  19413. SetSecurityDescriptorSacl(
  19414.             PSECURITY_DESCRIPTOR pSecurityDescriptor,
  19415.          BOOL bSaclPresent,
  19416.              PACL pSacl,
  19417.          BOOL bSaclDefaulted
  19418.     );
  19419.  
  19420.  
  19421. __declspec(dllimport)
  19422. BOOL
  19423. __stdcall
  19424. SetTokenInformation(
  19425.          HANDLE TokenHandle,
  19426.          TOKEN_INFORMATION_CLASS TokenInformationClass,
  19427.                                              LPVOID TokenInformation,
  19428.          DWORD TokenInformationLength
  19429.     );
  19430.  
  19431.  
  19432.  
  19433. #pragma endregion
  19434.  
  19435.  
  19436.  
  19437. #pragma region Desktop Family or OneCore Family
  19438.  
  19439.  
  19440. __declspec(dllimport)
  19441. BOOL
  19442. __stdcall
  19443. SetCachedSigningLevel(
  19444.                                 PHANDLE SourceFiles,
  19445.          ULONG SourceFileCount,
  19446.          ULONG Flags,
  19447.              HANDLE TargetFile
  19448.     );
  19449.  
  19450.  
  19451. __declspec(dllimport)
  19452. BOOL
  19453. __stdcall
  19454. GetCachedSigningLevel(
  19455.          HANDLE File,
  19456.           PULONG Flags,
  19457.           PULONG SigningLevel,
  19458.                                                                PUCHAR Thumbprint,
  19459.                 PULONG ThumbprintSize,
  19460.               PULONG ThumbprintAlgorithm
  19461.     );
  19462.  
  19463.  
  19464.  
  19465. #pragma endregion
  19466.  
  19467.  
  19468.  
  19469.  
  19470. #pragma region Application Family or OneCore Family
  19471.  
  19472.  
  19473. __declspec(dllimport)
  19474. LONG
  19475. __stdcall
  19476. CveEventWrite(
  19477.          PCWSTR CveId,
  19478.              PCWSTR AdditionalDetails
  19479.     );
  19480.  
  19481.  
  19482.  
  19483. #pragma endregion
  19484.  
  19485.  
  19486.  
  19487.  
  19488. #pragma region Application Family or OneCore Family
  19489.  
  19490.  
  19491. __declspec(dllimport)
  19492. BOOL
  19493. __stdcall
  19494. DeriveCapabilitySidsFromName(
  19495.          LPCWSTR CapName,
  19496.                                                                PSID** CapabilityGroupSids,
  19497.           DWORD* CapabilityGroupSidCount,
  19498.                                                           PSID** CapabilitySids,
  19499.           DWORD* CapabilitySidCount
  19500.     );
  19501.  
  19502.  
  19503.  
  19504. #pragma endregion
  19505.  
  19506.  
  19507.  
  19508.  
  19509.  
  19510.  
  19511.  
  19512.  
  19513. #pragma option pop
  19514. # 69 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  19515.  
  19516. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\namespaceapi.h" 1 3
  19517. #pragma option push -b -a8 -pc -A- -w-pun
  19518. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\namespaceapi.h" 3
  19519. #pragma region Desktop Family or OneCore Family
  19520.  
  19521.  
  19522.  
  19523.  
  19524. __declspec(dllimport)
  19525. HANDLE
  19526. __stdcall
  19527. CreatePrivateNamespaceW(
  19528.              LPSECURITY_ATTRIBUTES lpPrivateNamespaceAttributes,
  19529.          LPVOID lpBoundaryDescriptor,
  19530.          LPCWSTR lpAliasPrefix
  19531.     );
  19532.  
  19533.  
  19534. __declspec(dllimport)
  19535. HANDLE
  19536. __stdcall
  19537. OpenPrivateNamespaceW(
  19538.          LPVOID lpBoundaryDescriptor,
  19539.          LPCWSTR lpAliasPrefix
  19540.     );
  19541.  
  19542.  
  19543. __declspec(dllimport)
  19544. BOOLEAN
  19545. __stdcall
  19546. ClosePrivateNamespace(
  19547.          HANDLE Handle,
  19548.          ULONG Flags
  19549.     );
  19550.  
  19551.  
  19552. __declspec(dllimport)
  19553. HANDLE
  19554. __stdcall
  19555. CreateBoundaryDescriptorW(
  19556.          LPCWSTR Name,
  19557.          ULONG Flags
  19558.     );
  19559.  
  19560.  
  19561. __declspec(dllimport)
  19562. BOOL
  19563. __stdcall
  19564. AddSIDToBoundaryDescriptor(
  19565.             HANDLE* BoundaryDescriptor,
  19566.          PSID RequiredSid
  19567.     );
  19568.  
  19569.  
  19570. __declspec(dllimport)
  19571. void
  19572. __stdcall
  19573. DeleteBoundaryDescriptor(
  19574.          HANDLE BoundaryDescriptor
  19575.     );
  19576.  
  19577.  
  19578.  
  19579. #pragma endregion
  19580.  
  19581.  
  19582.  
  19583.  
  19584.  
  19585.  
  19586. #pragma option pop
  19587. # 70 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  19588.  
  19589. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\systemtopologyapi.h" 1 3
  19590. #pragma option push -b -a8 -pc -A- -w-pun
  19591. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\systemtopologyapi.h" 3
  19592. #pragma region Desktop Family or OneCore Family
  19593.  
  19594.  
  19595. __declspec(dllimport)
  19596. BOOL
  19597. __stdcall
  19598. GetNumaHighestNodeNumber(
  19599.           PULONG HighestNodeNumber
  19600.     );
  19601.  
  19602.  
  19603.  
  19604.  
  19605. __declspec(dllimport)
  19606. BOOL
  19607. __stdcall
  19608. GetNumaNodeProcessorMaskEx(
  19609.          USHORT Node,
  19610.           PGROUP_AFFINITY ProcessorMask
  19611.     );
  19612.  
  19613.  
  19614.  
  19615.  
  19616.  
  19617.  
  19618. __declspec(dllimport)
  19619. BOOL
  19620. __stdcall
  19621. GetNumaProximityNodeEx(
  19622.          ULONG ProximityId,
  19623.           PUSHORT NodeNumber
  19624.     );
  19625.  
  19626.  
  19627.  
  19628.  
  19629.  
  19630. #pragma endregion
  19631.  
  19632.  
  19633.  
  19634.  
  19635.  
  19636.  
  19637. #pragma option pop
  19638. # 71 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  19639.  
  19640. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processtopologyapi.h" 1 3
  19641. #pragma option push -b -a8 -pc -A- -w-pun
  19642. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\processtopologyapi.h" 3
  19643. #pragma region Desktop Family or OneCore Family
  19644.  
  19645.  
  19646.  
  19647.  
  19648. __declspec(dllimport)
  19649. BOOL
  19650. __stdcall
  19651. GetProcessGroupAffinity(
  19652.          HANDLE hProcess,
  19653.             PUSHORT GroupCount,
  19654.                               PUSHORT GroupArray
  19655.     );
  19656.  
  19657.  
  19658.  
  19659.  
  19660.  
  19661. #pragma endregion
  19662.  
  19663.  
  19664. #pragma region Desktop Family or OneCore Family
  19665.  
  19666.  
  19667.  
  19668.  
  19669. __declspec(dllimport)
  19670. BOOL
  19671. __stdcall
  19672. GetThreadGroupAffinity(
  19673.          HANDLE hThread,
  19674.           PGROUP_AFFINITY GroupAffinity
  19675.     );
  19676.  
  19677.  
  19678. __declspec(dllimport)
  19679. BOOL
  19680. __stdcall
  19681. SetThreadGroupAffinity(
  19682.          HANDLE hThread,
  19683.          const GROUP_AFFINITY* GroupAffinity,
  19684.               PGROUP_AFFINITY PreviousGroupAffinity
  19685.     );
  19686.  
  19687.  
  19688.  
  19689.  
  19690.  
  19691. #pragma endregion
  19692.  
  19693.  
  19694.  
  19695.  
  19696.  
  19697.  
  19698. #pragma option pop
  19699. # 72 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  19700.  
  19701. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\securityappcontainer.h" 1 3
  19702. #pragma option push -b -a8 -pc -A- -w-pun
  19703. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\securityappcontainer.h" 3
  19704. #pragma region Desktop Family or OneCore Family
  19705. # 37 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\securityappcontainer.h" 3
  19706. BOOL
  19707. __stdcall
  19708. GetAppContainerNamedObjectPath(
  19709.              HANDLE Token,
  19710.              PSID AppContainerSid,
  19711.          ULONG ObjectPathLength,
  19712.                                        LPWSTR ObjectPath,
  19713.           PULONG ReturnLength
  19714.     );
  19715. # 55 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\securityappcontainer.h" 3
  19716. #pragma endregion
  19717.  
  19718.  
  19719. #pragma option pop
  19720. # 73 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  19721.  
  19722. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\realtimeapiset.h" 1 3
  19723. #pragma option push -b -a8 -pc -A- -w-pun
  19724. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\realtimeapiset.h" 3
  19725. #pragma region Desktop Family or OneCore Family
  19726.  
  19727.  
  19728.  
  19729.  
  19730. __declspec(dllimport)
  19731. BOOL
  19732. __stdcall
  19733. QueryThreadCycleTime(
  19734.          HANDLE ThreadHandle,
  19735.           PULONG64 CycleTime
  19736.     );
  19737.  
  19738.  
  19739. __declspec(dllimport)
  19740. BOOL
  19741. __stdcall
  19742. QueryProcessCycleTime(
  19743.          HANDLE ProcessHandle,
  19744.           PULONG64 CycleTime
  19745.     );
  19746.  
  19747.  
  19748. __declspec(dllimport)
  19749. BOOL
  19750. __stdcall
  19751. QueryIdleProcessorCycleTime(
  19752.             PULONG BufferLength,
  19753.                                           PULONG64 ProcessorIdleCycleTime
  19754.     );
  19755.  
  19756.  
  19757.  
  19758.  
  19759.  
  19760.  
  19761. __declspec(dllimport)
  19762. BOOL
  19763. __stdcall
  19764. QueryIdleProcessorCycleTimeEx(
  19765.          USHORT Group,
  19766.             PULONG BufferLength,
  19767.                                           PULONG64 ProcessorIdleCycleTime
  19768.     );
  19769.  
  19770.  
  19771.  
  19772.  
  19773.  
  19774. #pragma endregion
  19775.  
  19776. #pragma region Application Family or OneCore Family
  19777.  
  19778.  
  19779. __declspec(dllimport)
  19780. void
  19781. __stdcall
  19782. QueryInterruptTimePrecise(
  19783.           PULONGLONG lpInterruptTimePrecise
  19784.     );
  19785.  
  19786.  
  19787. __declspec(dllimport)
  19788. void
  19789. __stdcall
  19790. QueryUnbiasedInterruptTimePrecise(
  19791.           PULONGLONG lpUnbiasedInterruptTimePrecise
  19792.     );
  19793.  
  19794.  
  19795. __declspec(dllimport)
  19796. void
  19797. __stdcall
  19798. QueryInterruptTime(
  19799.           PULONGLONG lpInterruptTime
  19800.     );
  19801.  
  19802.  
  19803.  
  19804.  
  19805. __declspec(dllimport)
  19806. BOOL
  19807. __stdcall
  19808. QueryUnbiasedInterruptTime(
  19809.           PULONGLONG UnbiasedTime
  19810.     );
  19811.  
  19812.  
  19813.  
  19814.  
  19815. __declspec(dllimport)
  19816. HRESULT
  19817. __stdcall
  19818. QueryAuxiliaryCounterFrequency(
  19819.           PULONGLONG lpAuxiliaryCounterFrequency
  19820.     );
  19821.  
  19822.  
  19823. __declspec(dllimport)
  19824. HRESULT
  19825. __stdcall
  19826. ConvertAuxiliaryCounterToPerformanceCounter(
  19827.          ULONGLONG ullAuxiliaryCounterValue,
  19828.           PULONGLONG lpPerformanceCounterValue,
  19829.               PULONGLONG lpConversionError
  19830.     );
  19831.  
  19832.  
  19833. __declspec(dllimport)
  19834. HRESULT
  19835. __stdcall
  19836. ConvertPerformanceCounterToAuxiliaryCounter(
  19837.          ULONGLONG ullPerformanceCounterValue,
  19838.           PULONGLONG lpAuxiliaryCounterValue,
  19839.               PULONGLONG lpConversionError
  19840.     );
  19841.  
  19842.  
  19843.  
  19844. #pragma endregion
  19845.  
  19846.  
  19847.  
  19848.  
  19849.  
  19850.  
  19851. #pragma option pop
  19852. # 74 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  19853.  
  19854.  
  19855.  
  19856.  
  19857.  
  19858.  
  19859. #pragma region Application Family
  19860. # 94 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  19861. #pragma endregion
  19862.  
  19863. #pragma region Desktop Family
  19864.  
  19865.  
  19866.  
  19867.  
  19868.  
  19869. #pragma endregion
  19870.  
  19871. #pragma region Application Family or OneCore Family
  19872. # 297 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  19873. typedef void (__stdcall *PFIBER_START_ROUTINE)(
  19874.     LPVOID lpFiberParameter
  19875.     );
  19876. typedef PFIBER_START_ROUTINE LPFIBER_START_ROUTINE;
  19877.  
  19878. typedef LPVOID (__stdcall *PFIBER_CALLOUT_ROUTINE)(
  19879.     LPVOID lpParameter
  19880.     );
  19881. # 315 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  19882. typedef PLDT_ENTRY LPLDT_ENTRY;
  19883. # 420 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  19884. typedef struct _COMMPROP {
  19885.     WORD wPacketLength;
  19886.     WORD wPacketVersion;
  19887.     DWORD dwServiceMask;
  19888.     DWORD dwReserved1;
  19889.     DWORD dwMaxTxQueue;
  19890.     DWORD dwMaxRxQueue;
  19891.     DWORD dwMaxBaud;
  19892.     DWORD dwProvSubType;
  19893.     DWORD dwProvCapabilities;
  19894.     DWORD dwSettableParams;
  19895.     DWORD dwSettableBaud;
  19896.     WORD wSettableData;
  19897.     WORD wSettableStopParity;
  19898.     DWORD dwCurrentTxQueue;
  19899.     DWORD dwCurrentRxQueue;
  19900.     DWORD dwProvSpec1;
  19901.     DWORD dwProvSpec2;
  19902.     WCHAR wcProvChar[1];
  19903. } COMMPROP,*LPCOMMPROP;
  19904.  
  19905.  
  19906.  
  19907.  
  19908.  
  19909.  
  19910.  
  19911. typedef struct _COMSTAT {
  19912.     DWORD fCtsHold : 1;
  19913.     DWORD fDsrHold : 1;
  19914.     DWORD fRlsdHold : 1;
  19915.     DWORD fXoffHold : 1;
  19916.     DWORD fXoffSent : 1;
  19917.     DWORD fEof : 1;
  19918.     DWORD fTxim : 1;
  19919.     DWORD fReserved : 25;
  19920.     DWORD cbInQue;
  19921.     DWORD cbOutQue;
  19922. } COMSTAT, *LPCOMSTAT;
  19923. # 475 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  19924. typedef struct _DCB {
  19925.     DWORD DCBlength;
  19926.     DWORD BaudRate;
  19927.     DWORD fBinary: 1;
  19928.     DWORD fParity: 1;
  19929.     DWORD fOutxCtsFlow:1;
  19930.     DWORD fOutxDsrFlow:1;
  19931.     DWORD fDtrControl:2;
  19932.     DWORD fDsrSensitivity:1;
  19933.     DWORD fTXContinueOnXoff: 1;
  19934.     DWORD fOutX: 1;
  19935.     DWORD fInX: 1;
  19936.     DWORD fErrorChar: 1;
  19937.     DWORD fNull: 1;
  19938.     DWORD fRtsControl:2;
  19939.     DWORD fAbortOnError:1;
  19940.     DWORD fDummy2:17;
  19941.     WORD wReserved;
  19942.     WORD XonLim;
  19943.     WORD XoffLim;
  19944.     BYTE ByteSize;
  19945.     BYTE Parity;
  19946.     BYTE StopBits;
  19947.     char XonChar;
  19948.     char XoffChar;
  19949.     char ErrorChar;
  19950.     char EofChar;
  19951.     char EvtChar;
  19952.     WORD wReserved1;
  19953. } DCB, *LPDCB;
  19954.  
  19955. typedef struct _COMMTIMEOUTS {
  19956.     DWORD ReadIntervalTimeout;
  19957.     DWORD ReadTotalTimeoutMultiplier;
  19958.     DWORD ReadTotalTimeoutConstant;
  19959.     DWORD WriteTotalTimeoutMultiplier;
  19960.     DWORD WriteTotalTimeoutConstant;
  19961. } COMMTIMEOUTS,*LPCOMMTIMEOUTS;
  19962.  
  19963. typedef struct _COMMCONFIG {
  19964.     DWORD dwSize;
  19965.     WORD wVersion;
  19966.     WORD wReserved;
  19967.     DCB dcb;
  19968.     DWORD dwProviderSubType;
  19969.  
  19970.     DWORD dwProviderOffset;
  19971.  
  19972.     DWORD dwProviderSize;
  19973.     WCHAR wcProviderData[1];
  19974. } COMMCONFIG,*LPCOMMCONFIG;
  19975. # 562 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  19976. typedef struct _MEMORYSTATUS {
  19977.     DWORD dwLength;
  19978.     DWORD dwMemoryLoad;
  19979.     SIZE_T dwTotalPhys;
  19980.     SIZE_T dwAvailPhys;
  19981.     SIZE_T dwTotalPageFile;
  19982.     SIZE_T dwAvailPageFile;
  19983.     SIZE_T dwTotalVirtual;
  19984.     SIZE_T dwAvailVirtual;
  19985. } MEMORYSTATUS, *LPMEMORYSTATUS;
  19986. # 658 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  19987. typedef struct _JIT_DEBUG_INFO {
  19988.     DWORD dwSize;
  19989.     DWORD dwProcessorArchitecture;
  19990.     DWORD dwThreadID;
  19991.     DWORD dwReserved0;
  19992.     ULONG64 lpExceptionAddress;
  19993.     ULONG64 lpExceptionRecord;
  19994.     ULONG64 lpContextRecord;
  19995. } JIT_DEBUG_INFO, *LPJIT_DEBUG_INFO;
  19996.  
  19997. typedef JIT_DEBUG_INFO JIT_DEBUG_INFO32, *LPJIT_DEBUG_INFO32;
  19998. typedef JIT_DEBUG_INFO JIT_DEBUG_INFO64, *LPJIT_DEBUG_INFO64;
  19999.  
  20000.  
  20001. typedef PEXCEPTION_RECORD LPEXCEPTION_RECORD;
  20002. typedef PEXCEPTION_POINTERS LPEXCEPTION_POINTERS;
  20003. # 887 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  20004. typedef struct _OFSTRUCT {
  20005.     BYTE cBytes;
  20006.     BYTE fFixedDisk;
  20007.     WORD nErrCode;
  20008.     WORD Reserved1;
  20009.     WORD Reserved2;
  20010.     CHAR szPathName[128];
  20011. } OFSTRUCT, *LPOFSTRUCT, *POFSTRUCT;
  20012.  
  20013.  
  20014.  
  20015.  
  20016.  
  20017.  
  20018.  
  20019. #pragma endregion
  20020.  
  20021. #pragma region Desktop Family
  20022.  
  20023.  
  20024. int
  20025.  
  20026.  
  20027.  
  20028.  
  20029. __stdcall
  20030.  
  20031.  
  20032.  
  20033.  
  20034. WinMain (
  20035.          HINSTANCE hInstance,
  20036.              HINSTANCE hPrevInstance,
  20037.          LPSTR lpCmdLine,
  20038.          int nShowCmd
  20039.     );
  20040.  
  20041. int
  20042.  
  20043.  
  20044.  
  20045. __stdcall
  20046.  
  20047. wWinMain(
  20048.          HINSTANCE hInstance,
  20049.              HINSTANCE hPrevInstance,
  20050.          LPWSTR lpCmdLine,
  20051.          int nShowCmd
  20052.     );
  20053.  
  20054.  
  20055. #pragma endregion
  20056.  
  20057. #pragma region Application Family or OneCore Family
  20058.  
  20059.  
  20060. __declspec(dllimport)
  20061.  
  20062.  
  20063.  
  20064. HGLOBAL
  20065. __stdcall
  20066. GlobalAlloc(
  20067.          UINT uFlags,
  20068.          SIZE_T dwBytes
  20069.     );
  20070.  
  20071.  
  20072. #pragma endregion
  20073.  
  20074. #pragma region Application Family
  20075.  
  20076.  
  20077. __declspec(dllimport)
  20078.  
  20079.  
  20080. HGLOBAL
  20081. __stdcall
  20082. GlobalReAlloc (
  20083.                 HGLOBAL hMem,
  20084.          SIZE_T dwBytes,
  20085.          UINT uFlags
  20086.     );
  20087.  
  20088.  
  20089. #pragma endregion
  20090.  
  20091. #pragma region Application Family or OneCore Family
  20092.  
  20093.  
  20094. __declspec(dllimport)
  20095. SIZE_T
  20096. __stdcall
  20097. GlobalSize (
  20098.          HGLOBAL hMem
  20099.     );
  20100.  
  20101. __declspec(dllimport)
  20102. BOOL
  20103. __stdcall
  20104. GlobalUnlock(
  20105.          HGLOBAL hMem
  20106.     );
  20107.  
  20108. __declspec(dllimport)
  20109.  
  20110. LPVOID
  20111. __stdcall
  20112. GlobalLock (
  20113.          HGLOBAL hMem
  20114.     );
  20115.  
  20116.  
  20117. #pragma endregion
  20118.  
  20119. #pragma region Desktop Family
  20120.  
  20121.  
  20122. __declspec(dllimport)
  20123. UINT
  20124. __stdcall
  20125. GlobalFlags (
  20126.          HGLOBAL hMem
  20127.     );
  20128.  
  20129. __declspec(dllimport)
  20130.  
  20131. HGLOBAL
  20132. __stdcall
  20133. GlobalHandle (
  20134.          LPCVOID pMem
  20135.     );
  20136.  
  20137.  
  20138. #pragma endregion
  20139.  
  20140. #pragma region Application Family or OneCore Family
  20141.  
  20142.  
  20143. __declspec(dllimport)
  20144.  
  20145.  
  20146. HGLOBAL
  20147. __stdcall
  20148. GlobalFree(
  20149.                     HGLOBAL hMem
  20150.     );
  20151.  
  20152.  
  20153. #pragma endregion
  20154.  
  20155. #pragma region Desktop Family
  20156.  
  20157.  
  20158. __declspec(dllimport)
  20159. SIZE_T
  20160. __stdcall
  20161. GlobalCompact(
  20162.          DWORD dwMinFree
  20163.     );
  20164.  
  20165. __declspec(dllimport)
  20166. void
  20167. __stdcall
  20168. GlobalFix(
  20169.          HGLOBAL hMem
  20170.     );
  20171.  
  20172. __declspec(dllimport)
  20173. void
  20174. __stdcall
  20175. GlobalUnfix(
  20176.          HGLOBAL hMem
  20177.     );
  20178.  
  20179. __declspec(dllimport)
  20180. LPVOID
  20181. __stdcall
  20182. GlobalWire(
  20183.          HGLOBAL hMem
  20184.     );
  20185.  
  20186. __declspec(dllimport)
  20187. BOOL
  20188. __stdcall
  20189. GlobalUnWire(
  20190.          HGLOBAL hMem
  20191.     );
  20192.  
  20193.  
  20194. __declspec(dllimport)
  20195. void
  20196. __stdcall
  20197. GlobalMemoryStatus(
  20198.           LPMEMORYSTATUS lpBuffer
  20199.     );
  20200.  
  20201.  
  20202. #pragma endregion
  20203.  
  20204. #pragma region Application Family or OneCore Family
  20205.  
  20206.  
  20207. __declspec(dllimport)
  20208.  
  20209.  
  20210.  
  20211. HLOCAL
  20212. __stdcall
  20213. LocalAlloc(
  20214.          UINT uFlags,
  20215.          SIZE_T uBytes
  20216.     );
  20217.  
  20218. __declspec(dllimport)
  20219.  
  20220.  
  20221. HLOCAL
  20222. __stdcall
  20223. LocalReAlloc(
  20224.                     HLOCAL hMem,
  20225.          SIZE_T uBytes,
  20226.          UINT uFlags
  20227.     );
  20228.  
  20229.  
  20230. #pragma endregion
  20231.  
  20232. #pragma region Desktop Family or OneCore Family
  20233.  
  20234.  
  20235. __declspec(dllimport)
  20236.  
  20237. LPVOID
  20238. __stdcall
  20239. LocalLock(
  20240.          HLOCAL hMem
  20241.     );
  20242.  
  20243.  
  20244. #pragma endregion
  20245.  
  20246. #pragma region Desktop Family
  20247.  
  20248.  
  20249. __declspec(dllimport)
  20250.  
  20251. HLOCAL
  20252. __stdcall
  20253. LocalHandle(
  20254.          LPCVOID pMem
  20255.     );
  20256.  
  20257.  
  20258. #pragma endregion
  20259.  
  20260. #pragma region Desktop Family or OneCore Family
  20261.  
  20262.  
  20263. __declspec(dllimport)
  20264. BOOL
  20265. __stdcall
  20266. LocalUnlock(
  20267.          HLOCAL hMem
  20268.     );
  20269.  
  20270.  
  20271. #pragma endregion
  20272.  
  20273. #pragma region Desktop Family
  20274.  
  20275.  
  20276. __declspec(dllimport)
  20277. SIZE_T
  20278. __stdcall
  20279. LocalSize(
  20280.          HLOCAL hMem
  20281.     );
  20282.  
  20283. __declspec(dllimport)
  20284. UINT
  20285. __stdcall
  20286. LocalFlags(
  20287.          HLOCAL hMem
  20288.     );
  20289.  
  20290.  
  20291. #pragma endregion
  20292.  
  20293. #pragma region Application Family or OneCore Family
  20294.  
  20295.  
  20296. __declspec(dllimport)
  20297.  
  20298.  
  20299. HLOCAL
  20300. __stdcall
  20301. LocalFree(
  20302.                     HLOCAL hMem
  20303.     );
  20304.  
  20305.  
  20306. #pragma endregion
  20307.  
  20308. #pragma region Desktop Family
  20309.  
  20310.  
  20311. __declspec(dllimport)
  20312. SIZE_T
  20313. __stdcall
  20314. LocalShrink(
  20315.          HLOCAL hMem,
  20316.          UINT cbNewSize
  20317.     );
  20318.  
  20319. __declspec(dllimport)
  20320. SIZE_T
  20321. __stdcall
  20322. LocalCompact(
  20323.          UINT uMinFree
  20324.     );
  20325. # 1225 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  20326. __declspec(dllimport)
  20327. BOOL
  20328. __stdcall
  20329. GetBinaryTypeA(
  20330.           LPCSTR lpApplicationName,
  20331.           LPDWORD lpBinaryType
  20332.     );
  20333. __declspec(dllimport)
  20334. BOOL
  20335. __stdcall
  20336. GetBinaryTypeW(
  20337.           LPCWSTR lpApplicationName,
  20338.           LPDWORD lpBinaryType
  20339.     );
  20340.  
  20341.  
  20342.  
  20343.  
  20344.  
  20345.  
  20346. __declspec(dllimport)
  20347.  
  20348. DWORD
  20349. __stdcall
  20350. GetShortPathNameA(
  20351.          LPCSTR lpszLongPath,
  20352.                                                LPSTR lpszShortPath,
  20353.          DWORD cchBuffer
  20354.     );
  20355.  
  20356.  
  20357.  
  20358.  
  20359.  
  20360.  
  20361. __declspec(dllimport)
  20362.  
  20363. DWORD
  20364. __stdcall
  20365. GetLongPathNameTransactedA(
  20366.              LPCSTR lpszShortPath,
  20367.                                                LPSTR lpszLongPath,
  20368.              DWORD cchBuffer,
  20369.              HANDLE hTransaction
  20370.     );
  20371. __declspec(dllimport)
  20372.  
  20373. DWORD
  20374. __stdcall
  20375. GetLongPathNameTransactedW(
  20376.              LPCWSTR lpszShortPath,
  20377.                                                LPWSTR lpszLongPath,
  20378.              DWORD cchBuffer,
  20379.              HANDLE hTransaction
  20380.     );
  20381. # 1289 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  20382. #pragma endregion
  20383.  
  20384. #pragma region Application Family or OneCore Family
  20385.  
  20386.  
  20387. __declspec(dllimport)
  20388. BOOL
  20389. __stdcall
  20390. GetProcessAffinityMask(
  20391.           HANDLE hProcess,
  20392.           PDWORD_PTR lpProcessAffinityMask,
  20393.           PDWORD_PTR lpSystemAffinityMask
  20394.     );
  20395.  
  20396. __declspec(dllimport)
  20397. BOOL
  20398. __stdcall
  20399. SetProcessAffinityMask(
  20400.          HANDLE hProcess,
  20401.          DWORD_PTR dwProcessAffinityMask
  20402.     );
  20403.  
  20404.  
  20405. #pragma endregion
  20406.  
  20407. #pragma region Desktop Family
  20408.  
  20409.  
  20410. __declspec(dllimport)
  20411. BOOL
  20412. __stdcall
  20413. GetProcessIoCounters(
  20414.           HANDLE hProcess,
  20415.           PIO_COUNTERS lpIoCounters
  20416.     );
  20417.  
  20418.  
  20419. #pragma endregion
  20420.  
  20421. #pragma region Application Family or OneCore Family
  20422.  
  20423.  
  20424. __declspec(dllimport)
  20425. BOOL
  20426. __stdcall
  20427. GetProcessWorkingSetSize(
  20428.           HANDLE hProcess,
  20429.           PSIZE_T lpMinimumWorkingSetSize,
  20430.           PSIZE_T lpMaximumWorkingSetSize
  20431.     );
  20432.  
  20433.  
  20434. #pragma endregion
  20435.  
  20436. #pragma region Desktop Family
  20437.  
  20438.  
  20439. __declspec(dllimport)
  20440. BOOL
  20441. __stdcall
  20442. SetProcessWorkingSetSize(
  20443.          HANDLE hProcess,
  20444.          SIZE_T dwMinimumWorkingSetSize,
  20445.          SIZE_T dwMaximumWorkingSetSize
  20446.     );
  20447.  
  20448. __declspec(dllimport)
  20449.  
  20450. void
  20451. __stdcall
  20452. FatalExit(
  20453.          int ExitCode
  20454.     );
  20455.  
  20456.  
  20457. #pragma endregion
  20458.  
  20459. #pragma region Desktop Family or OneCore Family
  20460.  
  20461.  
  20462. __declspec(dllimport)
  20463. BOOL
  20464. __stdcall
  20465. SetEnvironmentStringsA(
  20466.                                      LPCH NewEnvironment
  20467.     );
  20468.  
  20469.  
  20470.  
  20471.  
  20472.  
  20473. #pragma endregion
  20474.  
  20475.  
  20476.  
  20477.  
  20478.  
  20479.  
  20480.  
  20481. #pragma region Application Family or OneCore Family
  20482.  
  20483.  
  20484.  
  20485.  
  20486. __declspec(dllimport)
  20487. void
  20488. __stdcall
  20489. SwitchToFiber(
  20490.          LPVOID lpFiber
  20491.     );
  20492.  
  20493. __declspec(dllimport)
  20494. void
  20495. __stdcall
  20496. DeleteFiber(
  20497.          LPVOID lpFiber
  20498.     );
  20499.  
  20500.  
  20501.  
  20502. __declspec(dllimport)
  20503. BOOL
  20504. __stdcall
  20505. ConvertFiberToThread(
  20506.     void
  20507.     );
  20508.  
  20509.  
  20510.  
  20511. __declspec(dllimport)
  20512.  
  20513. LPVOID
  20514. __stdcall
  20515. CreateFiberEx(
  20516.              SIZE_T dwStackCommitSize,
  20517.              SIZE_T dwStackReserveSize,
  20518.              DWORD dwFlags,
  20519.              LPFIBER_START_ROUTINE lpStartAddress,
  20520.              LPVOID lpParameter
  20521.     );
  20522.  
  20523. __declspec(dllimport)
  20524.  
  20525. LPVOID
  20526. __stdcall
  20527. ConvertThreadToFiberEx(
  20528.              LPVOID lpParameter,
  20529.              DWORD dwFlags
  20530.     );
  20531.  
  20532.  
  20533. #pragma endregion
  20534.  
  20535. #pragma region Desktop Family or OneCore Family
  20536.  
  20537.  
  20538. __declspec(dllimport)
  20539.  
  20540. LPVOID
  20541. __stdcall
  20542. CreateFiber(
  20543.              SIZE_T dwStackSize,
  20544.              LPFIBER_START_ROUTINE lpStartAddress,
  20545.              LPVOID lpParameter
  20546.     );
  20547.  
  20548. __declspec(dllimport)
  20549.  
  20550. LPVOID
  20551. __stdcall
  20552. ConvertThreadToFiber(
  20553.              LPVOID lpParameter
  20554.     );
  20555.  
  20556.  
  20557. #pragma endregion
  20558. # 1474 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  20559. #pragma region Desktop Family
  20560.  
  20561.  
  20562.  
  20563.  
  20564.  
  20565.  
  20566. typedef void *PUMS_CONTEXT;
  20567.  
  20568. typedef void *PUMS_COMPLETION_LIST;
  20569.  
  20570. typedef enum _RTL_UMS_THREAD_INFO_CLASS UMS_THREAD_INFO_CLASS, *PUMS_THREAD_INFO_CLASS;
  20571.  
  20572. typedef enum _RTL_UMS_SCHEDULER_REASON UMS_SCHEDULER_REASON;
  20573.  
  20574. typedef PRTL_UMS_SCHEDULER_ENTRY_POINT PUMS_SCHEDULER_ENTRY_POINT;
  20575.  
  20576. typedef struct _UMS_SCHEDULER_STARTUP_INFO {
  20577.  
  20578.  
  20579.  
  20580.  
  20581.     ULONG UmsVersion;
  20582.  
  20583.  
  20584.  
  20585.  
  20586.     PUMS_COMPLETION_LIST CompletionList;
  20587.  
  20588.  
  20589.  
  20590.  
  20591.  
  20592.     PUMS_SCHEDULER_ENTRY_POINT SchedulerProc;
  20593.  
  20594.  
  20595.  
  20596.  
  20597.     PVOID SchedulerParam;
  20598.  
  20599. } UMS_SCHEDULER_STARTUP_INFO, *PUMS_SCHEDULER_STARTUP_INFO;
  20600.  
  20601. typedef struct _UMS_SYSTEM_THREAD_INFORMATION {
  20602.     ULONG UmsVersion;
  20603.     union {
  20604.         struct {
  20605.             ULONG IsUmsSchedulerThread : 1;
  20606.             ULONG IsUmsWorkerThread : 1;
  20607.         } ;
  20608.         ULONG ThreadUmsFlags;
  20609.     } ;
  20610. } UMS_SYSTEM_THREAD_INFORMATION, *PUMS_SYSTEM_THREAD_INFORMATION;
  20611.  
  20612.  
  20613. __declspec(dllimport)
  20614. BOOL
  20615. __stdcall
  20616. CreateUmsCompletionList(
  20617.              PUMS_COMPLETION_LIST* UmsCompletionList
  20618.     );
  20619.  
  20620. __declspec(dllimport)
  20621. BOOL
  20622. __stdcall
  20623. DequeueUmsCompletionListItems(
  20624.          PUMS_COMPLETION_LIST UmsCompletionList,
  20625.          DWORD WaitTimeOut,
  20626.           PUMS_CONTEXT* UmsThreadList
  20627.     );
  20628.  
  20629. __declspec(dllimport)
  20630. BOOL
  20631. __stdcall
  20632. GetUmsCompletionListEvent(
  20633.          PUMS_COMPLETION_LIST UmsCompletionList,
  20634.             PHANDLE UmsCompletionEvent
  20635.     );
  20636.  
  20637. __declspec(dllimport)
  20638. BOOL
  20639. __stdcall
  20640. ExecuteUmsThread(
  20641.             PUMS_CONTEXT UmsThread
  20642.     );
  20643.  
  20644. __declspec(dllimport)
  20645. BOOL
  20646. __stdcall
  20647. UmsThreadYield(
  20648.          PVOID SchedulerParam
  20649.     );
  20650.  
  20651. __declspec(dllimport)
  20652. BOOL
  20653. __stdcall
  20654. DeleteUmsCompletionList(
  20655.          PUMS_COMPLETION_LIST UmsCompletionList
  20656.     );
  20657.  
  20658. __declspec(dllimport)
  20659. PUMS_CONTEXT
  20660. __stdcall
  20661. GetCurrentUmsThread(
  20662.     void
  20663.     );
  20664.  
  20665. __declspec(dllimport)
  20666. PUMS_CONTEXT
  20667. __stdcall
  20668. GetNextUmsListItem(
  20669.             PUMS_CONTEXT UmsContext
  20670.     );
  20671.  
  20672. __declspec(dllimport)
  20673. BOOL
  20674. __stdcall
  20675. QueryUmsThreadInformation(
  20676.          PUMS_CONTEXT UmsThread,
  20677.          UMS_THREAD_INFO_CLASS UmsThreadInfoClass,
  20678.                                                                      PVOID UmsThreadInformation,
  20679.          ULONG UmsThreadInformationLength,
  20680.               PULONG ReturnLength
  20681.     );
  20682.  
  20683. __declspec(dllimport)
  20684. BOOL
  20685. __stdcall
  20686. SetUmsThreadInformation(
  20687.          PUMS_CONTEXT UmsThread,
  20688.          UMS_THREAD_INFO_CLASS UmsThreadInfoClass,
  20689.          PVOID UmsThreadInformation,
  20690.          ULONG UmsThreadInformationLength
  20691.     );
  20692.  
  20693. __declspec(dllimport)
  20694. BOOL
  20695. __stdcall
  20696. DeleteUmsThreadContext(
  20697.          PUMS_CONTEXT UmsThread
  20698.     );
  20699.  
  20700. __declspec(dllimport)
  20701. BOOL
  20702. __stdcall
  20703. CreateUmsThreadContext(
  20704.              PUMS_CONTEXT *lpUmsThread
  20705.     );
  20706.  
  20707. __declspec(dllimport)
  20708. BOOL
  20709. __stdcall
  20710. EnterUmsSchedulingMode(
  20711.          PUMS_SCHEDULER_STARTUP_INFO SchedulerStartupInfo
  20712.     );
  20713.  
  20714. __declspec(dllimport)
  20715. BOOL
  20716. __stdcall
  20717. GetUmsSystemThreadInformation(
  20718.          HANDLE ThreadHandle,
  20719.             PUMS_SYSTEM_THREAD_INFORMATION SystemThreadInfo
  20720.     );
  20721.  
  20722.  
  20723.  
  20724.  
  20725. #pragma endregion
  20726.  
  20727.  
  20728.  
  20729.  
  20730.  
  20731.  
  20732.  
  20733. #pragma region Application Family or OneCore Family
  20734.  
  20735.  
  20736. __declspec(dllimport)
  20737. DWORD_PTR
  20738. __stdcall
  20739. SetThreadAffinityMask(
  20740.          HANDLE hThread,
  20741.          DWORD_PTR dwThreadAffinityMask
  20742.     );
  20743.  
  20744.  
  20745. #pragma endregion
  20746.  
  20747. #pragma region Desktop Family
  20748.  
  20749.  
  20750.  
  20751.  
  20752.  
  20753.  
  20754.  
  20755. __declspec(dllimport)
  20756. BOOL
  20757. __stdcall
  20758. SetProcessDEPPolicy(
  20759.          DWORD dwFlags
  20760.     );
  20761.  
  20762. __declspec(dllimport)
  20763. BOOL
  20764. __stdcall
  20765. GetProcessDEPPolicy(
  20766.          HANDLE hProcess,
  20767.           LPDWORD lpFlags,
  20768.           PBOOL lpPermanent
  20769.     );
  20770.  
  20771.  
  20772.  
  20773. __declspec(dllimport)
  20774. BOOL
  20775. __stdcall
  20776. RequestWakeupLatency(
  20777.          LATENCY_TIME latency
  20778.     );
  20779.  
  20780. __declspec(dllimport)
  20781. BOOL
  20782. __stdcall
  20783. IsSystemResumeAutomatic(
  20784.     void
  20785.     );
  20786.  
  20787. __declspec(dllimport)
  20788. BOOL
  20789. __stdcall
  20790. GetThreadSelectorEntry(
  20791.           HANDLE hThread,
  20792.           DWORD dwSelector,
  20793.           LPLDT_ENTRY lpSelectorEntry
  20794.     );
  20795.  
  20796. __declspec(dllimport)
  20797. EXECUTION_STATE
  20798. __stdcall
  20799. SetThreadExecutionState(
  20800.          EXECUTION_STATE esFlags
  20801.     );
  20802.  
  20803.  
  20804.  
  20805.  
  20806.  
  20807.  
  20808.  
  20809. typedef REASON_CONTEXT POWER_REQUEST_CONTEXT, *PPOWER_REQUEST_CONTEXT, *LPPOWER_REQUEST_CONTEXT;
  20810.  
  20811. __declspec(dllimport)
  20812. HANDLE
  20813. __stdcall
  20814. PowerCreateRequest (
  20815.          PREASON_CONTEXT Context
  20816.     );
  20817.  
  20818. __declspec(dllimport)
  20819. BOOL
  20820. __stdcall
  20821. PowerSetRequest (
  20822.          HANDLE PowerRequest,
  20823.          POWER_REQUEST_TYPE RequestType
  20824.     );
  20825.  
  20826. __declspec(dllimport)
  20827. BOOL
  20828. __stdcall
  20829. PowerClearRequest (
  20830.          HANDLE PowerRequest,
  20831.          POWER_REQUEST_TYPE RequestType
  20832.     );
  20833.  
  20834.  
  20835.  
  20836.  
  20837. #pragma endregion
  20838.  
  20839. #pragma region Application Family
  20840.  
  20841.  
  20842.  
  20843.  
  20844.  
  20845.  
  20846.  
  20847. #pragma endregion
  20848.  
  20849. #pragma region Desktop Family
  20850. # 1789 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  20851. #pragma endregion
  20852.  
  20853. #pragma region Application Family or OneCore Family
  20854. # 1812 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  20855. __declspec(dllimport)
  20856. BOOL
  20857. __stdcall
  20858. SetFileCompletionNotificationModes(
  20859.          HANDLE FileHandle,
  20860.          UCHAR Flags
  20861.     );
  20862.  
  20863.  
  20864.  
  20865.  
  20866. #pragma endregion
  20867.  
  20868. #pragma region Desktop Family
  20869. # 1837 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  20870. __declspec(dllimport)
  20871. BOOL
  20872. __stdcall
  20873. Wow64GetThreadContext(
  20874.             HANDLE hThread,
  20875.             PWOW64_CONTEXT lpContext
  20876.     );
  20877.  
  20878. __declspec(dllimport)
  20879. BOOL
  20880. __stdcall
  20881. Wow64SetThreadContext(
  20882.          HANDLE hThread,
  20883.          const WOW64_CONTEXT *lpContext
  20884.     );
  20885.  
  20886.  
  20887.  
  20888.  
  20889.  
  20890. __declspec(dllimport)
  20891. BOOL
  20892. __stdcall
  20893. Wow64GetThreadSelectorEntry(
  20894.          HANDLE hThread,
  20895.          DWORD dwSelector,
  20896.           PWOW64_LDT_ENTRY lpSelectorEntry
  20897.     );
  20898.  
  20899.  
  20900.  
  20901.  
  20902.  
  20903.  
  20904.  
  20905. __declspec(dllimport)
  20906. DWORD
  20907. __stdcall
  20908. Wow64SuspendThread(
  20909.          HANDLE hThread
  20910.     );
  20911.  
  20912.  
  20913.  
  20914. __declspec(dllimport)
  20915. BOOL
  20916. __stdcall
  20917. DebugSetProcessKillOnExit(
  20918.          BOOL KillOnExit
  20919.     );
  20920.  
  20921. __declspec(dllimport)
  20922. BOOL
  20923. __stdcall
  20924. DebugBreakProcess (
  20925.          HANDLE Process
  20926.     );
  20927.  
  20928.  
  20929. #pragma endregion
  20930.  
  20931. #pragma region Application Family
  20932.  
  20933.  
  20934.  
  20935.  
  20936.  
  20937.  
  20938.  
  20939. #pragma endregion
  20940.  
  20941. #pragma region Desktop Family
  20942.  
  20943.  
  20944. __declspec(dllimport)
  20945. BOOL
  20946. __stdcall
  20947. PulseEvent(
  20948.          HANDLE hEvent
  20949.     );
  20950.  
  20951. __declspec(dllimport)
  20952. ATOM
  20953. __stdcall
  20954. GlobalDeleteAtom(
  20955.          ATOM nAtom
  20956.     );
  20957.  
  20958. __declspec(dllimport)
  20959. BOOL
  20960. __stdcall
  20961. InitAtomTable(
  20962.          DWORD nSize
  20963.     );
  20964.  
  20965. __declspec(dllimport)
  20966. ATOM
  20967. __stdcall
  20968. DeleteAtom(
  20969.          ATOM nAtom
  20970.     );
  20971.  
  20972. __declspec(dllimport)
  20973. UINT
  20974. __stdcall
  20975. SetHandleCount(
  20976.          UINT uNumber
  20977.     );
  20978.  
  20979. __declspec(dllimport)
  20980. BOOL
  20981. __stdcall
  20982. RequestDeviceWakeup(
  20983.          HANDLE hDevice
  20984.     );
  20985.  
  20986. __declspec(dllimport)
  20987. BOOL
  20988. __stdcall
  20989. CancelDeviceWakeupRequest(
  20990.          HANDLE hDevice
  20991.     );
  20992.  
  20993. __declspec(dllimport)
  20994. BOOL
  20995. __stdcall
  20996. GetDevicePowerState(
  20997.           HANDLE hDevice,
  20998.           BOOL *pfOn
  20999.     );
  21000.  
  21001. __declspec(dllimport)
  21002. BOOL
  21003. __stdcall
  21004. SetMessageWaitingIndicator(
  21005.          HANDLE hMsgIndicator,
  21006.          ULONG ulMsgCount
  21007.     );
  21008.  
  21009.  
  21010. __declspec(dllimport)
  21011. BOOL
  21012. __stdcall
  21013. SetFileShortNameA(
  21014.          HANDLE hFile,
  21015.          LPCSTR lpShortName
  21016.     );
  21017. __declspec(dllimport)
  21018. BOOL
  21019. __stdcall
  21020. SetFileShortNameW(
  21021.          HANDLE hFile,
  21022.          LPCWSTR lpShortName
  21023.     );
  21024. # 2002 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  21025. __declspec(dllimport)
  21026. DWORD
  21027. __stdcall
  21028. LoadModule(
  21029.          LPCSTR lpModuleName,
  21030.          LPVOID lpParameterBlock
  21031.     );
  21032.  
  21033.  
  21034.  
  21035. __declspec(dllimport)
  21036. UINT
  21037. __stdcall
  21038. WinExec(
  21039.          LPCSTR lpCmdLine,
  21040.          UINT uCmdShow
  21041.     );
  21042.  
  21043.  
  21044.  
  21045. #pragma endregion
  21046.  
  21047. #pragma region Desktop Family or OneCore or App Family
  21048.  
  21049.  
  21050. __declspec(dllimport)
  21051. BOOL
  21052. __stdcall
  21053. ClearCommBreak(
  21054.          HANDLE hFile
  21055.     );
  21056.  
  21057. __declspec(dllimport)
  21058. BOOL
  21059. __stdcall
  21060. ClearCommError(
  21061.               HANDLE hFile,
  21062.               LPDWORD lpErrors,
  21063.               LPCOMSTAT lpStat
  21064.     );
  21065.  
  21066. __declspec(dllimport)
  21067. BOOL
  21068. __stdcall
  21069. SetupComm(
  21070.          HANDLE hFile,
  21071.          DWORD dwInQueue,
  21072.          DWORD dwOutQueue
  21073.     );
  21074.  
  21075. __declspec(dllimport)
  21076. BOOL
  21077. __stdcall
  21078. EscapeCommFunction(
  21079.          HANDLE hFile,
  21080.          DWORD dwFunc
  21081.     );
  21082.  
  21083. __declspec(dllimport)
  21084.  
  21085. BOOL
  21086. __stdcall
  21087. GetCommConfig(
  21088.               HANDLE hCommDev,
  21089.                                       LPCOMMCONFIG lpCC,
  21090.               LPDWORD lpdwSize
  21091.     );
  21092.  
  21093. __declspec(dllimport)
  21094. BOOL
  21095. __stdcall
  21096. GetCommMask(
  21097.           HANDLE hFile,
  21098.           LPDWORD lpEvtMask
  21099.     );
  21100.  
  21101. __declspec(dllimport)
  21102. BOOL
  21103. __stdcall
  21104. GetCommProperties(
  21105.             HANDLE hFile,
  21106.             LPCOMMPROP lpCommProp
  21107.     );
  21108.  
  21109. __declspec(dllimport)
  21110. BOOL
  21111. __stdcall
  21112. GetCommModemStatus(
  21113.           HANDLE hFile,
  21114.           LPDWORD lpModemStat
  21115.     );
  21116.  
  21117. __declspec(dllimport)
  21118. BOOL
  21119. __stdcall
  21120. GetCommState(
  21121.           HANDLE hFile,
  21122.           LPDCB lpDCB
  21123.     );
  21124.  
  21125. __declspec(dllimport)
  21126. BOOL
  21127. __stdcall
  21128. GetCommTimeouts(
  21129.           HANDLE hFile,
  21130.           LPCOMMTIMEOUTS lpCommTimeouts
  21131.     );
  21132.  
  21133. __declspec(dllimport)
  21134. BOOL
  21135. __stdcall
  21136. PurgeComm(
  21137.          HANDLE hFile,
  21138.          DWORD dwFlags
  21139.     );
  21140.  
  21141. __declspec(dllimport)
  21142. BOOL
  21143. __stdcall
  21144. SetCommBreak(
  21145.          HANDLE hFile
  21146.     );
  21147.  
  21148. __declspec(dllimport)
  21149. BOOL
  21150. __stdcall
  21151. SetCommConfig(
  21152.          HANDLE hCommDev,
  21153.                              LPCOMMCONFIG lpCC,
  21154.          DWORD dwSize
  21155.     );
  21156.  
  21157. __declspec(dllimport)
  21158. BOOL
  21159. __stdcall
  21160. SetCommMask(
  21161.          HANDLE hFile,
  21162.          DWORD dwEvtMask
  21163.     );
  21164.  
  21165. __declspec(dllimport)
  21166. BOOL
  21167. __stdcall
  21168. SetCommState(
  21169.          HANDLE hFile,
  21170.          LPDCB lpDCB
  21171.     );
  21172.  
  21173. __declspec(dllimport)
  21174. BOOL
  21175. __stdcall
  21176. SetCommTimeouts(
  21177.          HANDLE hFile,
  21178.          LPCOMMTIMEOUTS lpCommTimeouts
  21179.     );
  21180.  
  21181. __declspec(dllimport)
  21182. BOOL
  21183. __stdcall
  21184. TransmitCommChar(
  21185.          HANDLE hFile,
  21186.          char cChar
  21187.     );
  21188.  
  21189. __declspec(dllimport)
  21190. BOOL
  21191. __stdcall
  21192. WaitCommEvent(
  21193.                 HANDLE hFile,
  21194.                 LPDWORD lpEvtMask,
  21195.                 LPOVERLAPPED lpOverlapped
  21196.     );
  21197.  
  21198.  
  21199.  
  21200.  
  21201. __declspec(dllimport)
  21202. HANDLE
  21203. __stdcall
  21204. OpenCommPort(
  21205.          ULONG uPortNumber,
  21206.          DWORD dwDesiredAccess,
  21207.          DWORD dwFlagsAndAttributes
  21208.     );
  21209.  
  21210.  
  21211.  
  21212.  
  21213.  
  21214. __declspec(dllimport)
  21215. ULONG
  21216. __stdcall
  21217. GetCommPorts(
  21218.                                     PULONG lpPortNumbers,
  21219.                                     ULONG uPortNumbersCount,
  21220.                                     PULONG puPortNumbersFound
  21221.     );
  21222.  
  21223.  
  21224.  
  21225.  
  21226. #pragma endregion
  21227.  
  21228. #pragma region Desktop Family
  21229.  
  21230.  
  21231. __declspec(dllimport)
  21232. DWORD
  21233. __stdcall
  21234. SetTapePosition(
  21235.          HANDLE hDevice,
  21236.          DWORD dwPositionMethod,
  21237.          DWORD dwPartition,
  21238.          DWORD dwOffsetLow,
  21239.          DWORD dwOffsetHigh,
  21240.          BOOL bImmediate
  21241.     );
  21242.  
  21243. __declspec(dllimport)
  21244. DWORD
  21245. __stdcall
  21246. GetTapePosition(
  21247.           HANDLE hDevice,
  21248.           DWORD dwPositionType,
  21249.           LPDWORD lpdwPartition,
  21250.           LPDWORD lpdwOffsetLow,
  21251.           LPDWORD lpdwOffsetHigh
  21252.     );
  21253.  
  21254. __declspec(dllimport)
  21255. DWORD
  21256. __stdcall
  21257. PrepareTape(
  21258.          HANDLE hDevice,
  21259.          DWORD dwOperation,
  21260.          BOOL bImmediate
  21261.     );
  21262.  
  21263. __declspec(dllimport)
  21264. DWORD
  21265. __stdcall
  21266. EraseTape(
  21267.          HANDLE hDevice,
  21268.          DWORD dwEraseType,
  21269.          BOOL bImmediate
  21270.     );
  21271.  
  21272. __declspec(dllimport)
  21273. DWORD
  21274. __stdcall
  21275. CreateTapePartition(
  21276.          HANDLE hDevice,
  21277.          DWORD dwPartitionMethod,
  21278.          DWORD dwCount,
  21279.          DWORD dwSize
  21280.     );
  21281.  
  21282. __declspec(dllimport)
  21283. DWORD
  21284. __stdcall
  21285. WriteTapemark(
  21286.          HANDLE hDevice,
  21287.          DWORD dwTapemarkType,
  21288.          DWORD dwTapemarkCount,
  21289.          BOOL bImmediate
  21290.     );
  21291.  
  21292. __declspec(dllimport)
  21293. DWORD
  21294. __stdcall
  21295. GetTapeStatus(
  21296.          HANDLE hDevice
  21297.     );
  21298.  
  21299. __declspec(dllimport)
  21300. DWORD
  21301. __stdcall
  21302. GetTapeParameters(
  21303.             HANDLE hDevice,
  21304.             DWORD dwOperation,
  21305.             LPDWORD lpdwSize,
  21306.                                   LPVOID lpTapeInformation
  21307.     );
  21308.  
  21309.  
  21310.  
  21311.  
  21312. __declspec(dllimport)
  21313. DWORD
  21314. __stdcall
  21315. SetTapeParameters(
  21316.          HANDLE hDevice,
  21317.          DWORD dwOperation,
  21318.          LPVOID lpTapeInformation
  21319.     );
  21320.  
  21321.  
  21322.  
  21323.  
  21324.  
  21325. #pragma endregion
  21326.  
  21327. #pragma region Application Family or OneCore Family
  21328.  
  21329.  
  21330. __declspec(dllimport)
  21331. int
  21332. __stdcall
  21333. MulDiv(
  21334.          int nNumber,
  21335.          int nNumerator,
  21336.          int nDenominator
  21337.     );
  21338.  
  21339.  
  21340. #pragma endregion
  21341.  
  21342. #pragma region Desktop Family
  21343.  
  21344.  
  21345. typedef enum _DEP_SYSTEM_POLICY_TYPE {
  21346.     DEPPolicyAlwaysOff = 0,
  21347.     DEPPolicyAlwaysOn,
  21348.     DEPPolicyOptIn,
  21349.     DEPPolicyOptOut,
  21350.     DEPTotalPolicyCount
  21351. } DEP_SYSTEM_POLICY_TYPE;
  21352.  
  21353.  
  21354.  
  21355. __declspec(dllimport)
  21356. DEP_SYSTEM_POLICY_TYPE
  21357. __stdcall
  21358. GetSystemDEPPolicy(
  21359.     void
  21360.     );
  21361.  
  21362.  
  21363.  
  21364.  
  21365.  
  21366. __declspec(dllimport)
  21367. BOOL
  21368. __stdcall
  21369. GetSystemRegistryQuota(
  21370.               PDWORD pdwQuotaAllowed,
  21371.               PDWORD pdwQuotaUsed
  21372.     );
  21373.  
  21374.  
  21375.  
  21376.  
  21377.  
  21378.  
  21379.  
  21380. __declspec(dllimport)
  21381. BOOL
  21382. __stdcall
  21383. FileTimeToDosDateTime(
  21384.           const FILETIME *lpFileTime,
  21385.           LPWORD lpFatDate,
  21386.           LPWORD lpFatTime
  21387.     );
  21388.  
  21389. __declspec(dllimport)
  21390. BOOL
  21391. __stdcall
  21392. DosDateTimeToFileTime(
  21393.           WORD wFatDate,
  21394.           WORD wFatTime,
  21395.           LPFILETIME lpFileTime
  21396.     );
  21397.  
  21398.  
  21399. #pragma endregion
  21400.  
  21401. #pragma region Application Family or OneCore Family
  21402. # 2388 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  21403. __declspec(dllimport)
  21404.  
  21405. DWORD
  21406. __stdcall
  21407. FormatMessageA(
  21408.              DWORD dwFlags,
  21409.              LPCVOID lpSource,
  21410.              DWORD dwMessageId,
  21411.              DWORD dwLanguageId,
  21412.  
  21413.  
  21414.              LPSTR lpBuffer,
  21415.              DWORD nSize,
  21416.              va_list *Arguments
  21417.     );
  21418. __declspec(dllimport)
  21419.  
  21420. DWORD
  21421. __stdcall
  21422. FormatMessageW(
  21423.              DWORD dwFlags,
  21424.              LPCVOID lpSource,
  21425.              DWORD dwMessageId,
  21426.              DWORD dwLanguageId,
  21427.  
  21428.  
  21429.              LPWSTR lpBuffer,
  21430.              DWORD nSize,
  21431.              va_list *Arguments
  21432.     );
  21433. # 2463 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  21434. #pragma endregion
  21435.  
  21436. #pragma region Desktop Family
  21437.  
  21438.  
  21439.  
  21440. __declspec(dllimport)
  21441. HANDLE
  21442. __stdcall
  21443. CreateMailslotA(
  21444.              LPCSTR lpName,
  21445.              DWORD nMaxMessageSize,
  21446.              DWORD lReadTimeout,
  21447.              LPSECURITY_ATTRIBUTES lpSecurityAttributes
  21448.     );
  21449. __declspec(dllimport)
  21450. HANDLE
  21451. __stdcall
  21452. CreateMailslotW(
  21453.              LPCWSTR lpName,
  21454.              DWORD nMaxMessageSize,
  21455.              DWORD lReadTimeout,
  21456.              LPSECURITY_ATTRIBUTES lpSecurityAttributes
  21457.     );
  21458.  
  21459.  
  21460.  
  21461.  
  21462.  
  21463.  
  21464. __declspec(dllimport)
  21465. BOOL
  21466. __stdcall
  21467. GetMailslotInfo(
  21468.               HANDLE hMailslot,
  21469.               LPDWORD lpMaxMessageSize,
  21470.               LPDWORD lpNextSize,
  21471.               LPDWORD lpMessageCount,
  21472.               LPDWORD lpReadTimeout
  21473.     );
  21474.  
  21475. __declspec(dllimport)
  21476. BOOL
  21477. __stdcall
  21478. SetMailslotInfo(
  21479.          HANDLE hMailslot,
  21480.          DWORD lReadTimeout
  21481.     );
  21482.  
  21483.  
  21484.  
  21485.  
  21486.  
  21487. __declspec(dllimport)
  21488. BOOL
  21489. __stdcall
  21490. EncryptFileA(
  21491.          LPCSTR lpFileName
  21492.     );
  21493. __declspec(dllimport)
  21494. BOOL
  21495. __stdcall
  21496. EncryptFileW(
  21497.          LPCWSTR lpFileName
  21498.     );
  21499.  
  21500.  
  21501.  
  21502.  
  21503.  
  21504.  
  21505. __declspec(dllimport)
  21506. BOOL
  21507. __stdcall
  21508. DecryptFileA(
  21509.                LPCSTR lpFileName,
  21510.                DWORD dwReserved
  21511.     );
  21512. __declspec(dllimport)
  21513. BOOL
  21514. __stdcall
  21515. DecryptFileW(
  21516.                LPCWSTR lpFileName,
  21517.                DWORD dwReserved
  21518.     );
  21519. # 2569 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  21520. __declspec(dllimport)
  21521. BOOL
  21522. __stdcall
  21523. FileEncryptionStatusA(
  21524.           LPCSTR lpFileName,
  21525.           LPDWORD lpStatus
  21526.     );
  21527. __declspec(dllimport)
  21528. BOOL
  21529. __stdcall
  21530. FileEncryptionStatusW(
  21531.           LPCWSTR lpFileName,
  21532.           LPDWORD lpStatus
  21533.     );
  21534. # 2595 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  21535. typedef
  21536. DWORD
  21537. (__stdcall *PFE_EXPORT_FUNC)(
  21538.                                PBYTE pbData,
  21539.              PVOID pvCallbackContext,
  21540.              ULONG ulLength
  21541.     );
  21542.  
  21543. typedef
  21544. DWORD
  21545. (__stdcall *PFE_IMPORT_FUNC)(
  21546.                                                 PBYTE pbData,
  21547.              PVOID pvCallbackContext,
  21548.              PULONG ulLength
  21549.     );
  21550. # 2623 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  21551. __declspec(dllimport)
  21552. DWORD
  21553. __stdcall
  21554. OpenEncryptedFileRawA(
  21555.                 LPCSTR lpFileName,
  21556.                 ULONG ulFlags,
  21557.              PVOID *pvContext
  21558.     );
  21559. __declspec(dllimport)
  21560. DWORD
  21561. __stdcall
  21562. OpenEncryptedFileRawW(
  21563.                 LPCWSTR lpFileName,
  21564.                 ULONG ulFlags,
  21565.              PVOID *pvContext
  21566.     );
  21567.  
  21568.  
  21569.  
  21570.  
  21571.  
  21572.  
  21573. __declspec(dllimport)
  21574. DWORD
  21575. __stdcall
  21576. ReadEncryptedFileRaw(
  21577.              PFE_EXPORT_FUNC pfExportCallback,
  21578.              PVOID pvCallbackContext,
  21579.              PVOID pvContext
  21580.     );
  21581.  
  21582. __declspec(dllimport)
  21583. DWORD
  21584. __stdcall
  21585. WriteEncryptedFileRaw(
  21586.              PFE_IMPORT_FUNC pfImportCallback,
  21587.              PVOID pvCallbackContext,
  21588.              PVOID pvContext
  21589.     );
  21590.  
  21591. __declspec(dllimport)
  21592. void
  21593. __stdcall
  21594. CloseEncryptedFileRaw(
  21595.          PVOID pvContext
  21596.     );
  21597.  
  21598.  
  21599. #pragma endregion
  21600.  
  21601.  
  21602.  
  21603.  
  21604.  
  21605. #pragma region Desktop Family or OneCore Family
  21606.  
  21607.  
  21608. __declspec(dllimport)
  21609. int
  21610. __stdcall
  21611. lstrcmpA(
  21612.          LPCSTR lpString1,
  21613.          LPCSTR lpString2
  21614.     );
  21615. __declspec(dllimport)
  21616. int
  21617. __stdcall
  21618. lstrcmpW(
  21619.          LPCWSTR lpString1,
  21620.          LPCWSTR lpString2
  21621.     );
  21622.  
  21623.  
  21624.  
  21625.  
  21626.  
  21627.  
  21628. __declspec(dllimport)
  21629. int
  21630. __stdcall
  21631. lstrcmpiA(
  21632.          LPCSTR lpString1,
  21633.          LPCSTR lpString2
  21634.     );
  21635. __declspec(dllimport)
  21636. int
  21637. __stdcall
  21638. lstrcmpiW(
  21639.          LPCWSTR lpString1,
  21640.          LPCWSTR lpString2
  21641.     );
  21642. # 2725 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  21643. __declspec(dllimport)
  21644.  
  21645.  
  21646.  
  21647.  
  21648. LPSTR
  21649. __stdcall
  21650. lstrcpynA(
  21651.                              LPSTR lpString1,
  21652.          LPCSTR lpString2,
  21653.          int iMaxLength
  21654.     );
  21655. __declspec(dllimport)
  21656.  
  21657.  
  21658.  
  21659.  
  21660. LPWSTR
  21661. __stdcall
  21662. lstrcpynW(
  21663.                              LPWSTR lpString1,
  21664.          LPCWSTR lpString2,
  21665.          int iMaxLength
  21666.     );
  21667.  
  21668.  
  21669.  
  21670.  
  21671.  
  21672.  
  21673. __declspec(dllimport)
  21674. LPSTR
  21675. __stdcall
  21676. lstrcpyA(
  21677.                                                  LPSTR lpString1,
  21678.           LPCSTR lpString2
  21679.     );
  21680. __declspec(dllimport)
  21681. LPWSTR
  21682. __stdcall
  21683. lstrcpyW(
  21684.                                                  LPWSTR lpString1,
  21685.           LPCWSTR lpString2
  21686.     );
  21687.  
  21688.  
  21689.  
  21690.  
  21691.  
  21692.  
  21693. __declspec(dllimport)
  21694. LPSTR
  21695. __stdcall
  21696. lstrcatA(
  21697.                                                                                    LPSTR lpString1,
  21698.             LPCSTR lpString2
  21699.     );
  21700. __declspec(dllimport)
  21701. LPWSTR
  21702. __stdcall
  21703. lstrcatW(
  21704.                                                                                    LPWSTR lpString1,
  21705.             LPCWSTR lpString2
  21706.     );
  21707. # 2799 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  21708. __declspec(dllimport)
  21709. int
  21710. __stdcall
  21711. lstrlenA(
  21712.          LPCSTR lpString
  21713.     );
  21714. __declspec(dllimport)
  21715. int
  21716. __stdcall
  21717. lstrlenW(
  21718.          LPCWSTR lpString
  21719.     );
  21720.  
  21721.  
  21722.  
  21723.  
  21724.  
  21725.  
  21726.  
  21727. #pragma endregion
  21728.  
  21729. #pragma region Desktop Family
  21730.  
  21731.  
  21732. __declspec(dllimport)
  21733. HFILE
  21734. __stdcall
  21735. OpenFile(
  21736.             LPCSTR lpFileName,
  21737.             LPOFSTRUCT lpReOpenBuff,
  21738.             UINT uStyle
  21739.     );
  21740.  
  21741. __declspec(dllimport)
  21742. HFILE
  21743. __stdcall
  21744. _lopen(
  21745.          LPCSTR lpPathName,
  21746.          int iReadWrite
  21747.     );
  21748.  
  21749. __declspec(dllimport)
  21750. HFILE
  21751. __stdcall
  21752. _lcreat(
  21753.          LPCSTR lpPathName,
  21754.          int iAttribute
  21755.     );
  21756.  
  21757. __declspec(dllimport)
  21758. UINT
  21759. __stdcall
  21760. _lread(
  21761.          HFILE hFile,
  21762.                                           LPVOID lpBuffer,
  21763.          UINT uBytes
  21764.     );
  21765.  
  21766. __declspec(dllimport)
  21767. UINT
  21768. __stdcall
  21769. _lwrite(
  21770.          HFILE hFile,
  21771.                              LPCCH lpBuffer,
  21772.          UINT uBytes
  21773.     );
  21774.  
  21775. __declspec(dllimport)
  21776. long
  21777. __stdcall
  21778. _hread(
  21779.          HFILE hFile,
  21780.                                           LPVOID lpBuffer,
  21781.          long lBytes
  21782.     );
  21783.  
  21784. __declspec(dllimport)
  21785. long
  21786. __stdcall
  21787. _hwrite(
  21788.          HFILE hFile,
  21789.                              LPCCH lpBuffer,
  21790.          long lBytes
  21791.     );
  21792.  
  21793. __declspec(dllimport)
  21794. HFILE
  21795. __stdcall
  21796. _lclose(
  21797.          HFILE hFile
  21798.     );
  21799.  
  21800. __declspec(dllimport)
  21801. LONG
  21802. __stdcall
  21803. _llseek(
  21804.          HFILE hFile,
  21805.          LONG lOffset,
  21806.          int iOrigin
  21807.     );
  21808.  
  21809. __declspec(dllimport)
  21810. BOOL
  21811. __stdcall
  21812. IsTextUnicode(
  21813.                             const void* lpv,
  21814.                 int iSize,
  21815.                 LPINT lpiResult
  21816.     );
  21817.  
  21818.  
  21819. #pragma endregion
  21820.  
  21821. #pragma region Application Family or OneCore Family
  21822.  
  21823.  
  21824.  
  21825. __declspec(dllimport)
  21826. DWORD
  21827. __stdcall
  21828. SignalObjectAndWait(
  21829.          HANDLE hObjectToSignal,
  21830.          HANDLE hObjectToWaitOn,
  21831.          DWORD dwMilliseconds,
  21832.          BOOL bAlertable
  21833.     );
  21834.  
  21835.  
  21836.  
  21837. #pragma endregion
  21838.  
  21839. #pragma region Desktop Family
  21840.  
  21841.  
  21842. __declspec(dllimport)
  21843. BOOL
  21844. __stdcall
  21845. BackupRead(
  21846.             HANDLE hFile,
  21847.                                                                       LPBYTE lpBuffer,
  21848.             DWORD nNumberOfBytesToRead,
  21849.             LPDWORD lpNumberOfBytesRead,
  21850.             BOOL bAbort,
  21851.             BOOL bProcessSecurity,
  21852.             LPVOID *lpContext
  21853.     );
  21854.  
  21855. __declspec(dllimport)
  21856. BOOL
  21857. __stdcall
  21858. BackupSeek(
  21859.             HANDLE hFile,
  21860.             DWORD dwLowBytesToSeek,
  21861.             DWORD dwHighBytesToSeek,
  21862.             LPDWORD lpdwLowByteSeeked,
  21863.             LPDWORD lpdwHighByteSeeked,
  21864.             LPVOID *lpContext
  21865.     );
  21866.  
  21867. __declspec(dllimport)
  21868. BOOL
  21869. __stdcall
  21870. BackupWrite(
  21871.             HANDLE hFile,
  21872.                                             LPBYTE lpBuffer,
  21873.             DWORD nNumberOfBytesToWrite,
  21874.             LPDWORD lpNumberOfBytesWritten,
  21875.             BOOL bAbort,
  21876.             BOOL bProcessSecurity,
  21877.             LPVOID *lpContext
  21878.     );
  21879.  
  21880.  
  21881.  
  21882.  
  21883. typedef struct _WIN32_STREAM_ID {
  21884.         DWORD dwStreamId ;
  21885.         DWORD dwStreamAttributes ;
  21886.         LARGE_INTEGER Size ;
  21887.         DWORD dwStreamNameSize ;
  21888.         WCHAR cStreamName[ 1 ] ;
  21889. } WIN32_STREAM_ID, *LPWIN32_STREAM_ID ;
  21890. # 3038 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  21891. typedef struct _STARTUPINFOEXA {
  21892.     STARTUPINFOA StartupInfo;
  21893.     LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList;
  21894. } STARTUPINFOEXA, *LPSTARTUPINFOEXA;
  21895. typedef struct _STARTUPINFOEXW {
  21896.     STARTUPINFOW StartupInfo;
  21897.     LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList;
  21898. } STARTUPINFOEXW, *LPSTARTUPINFOEXW;
  21899.  
  21900.  
  21901.  
  21902.  
  21903. typedef STARTUPINFOEXA STARTUPINFOEX;
  21904. typedef LPSTARTUPINFOEXA LPSTARTUPINFOEX;
  21905.  
  21906.  
  21907.  
  21908.  
  21909.  
  21910.  
  21911.  
  21912. #pragma endregion
  21913.  
  21914. #pragma region Application Family or OneCore Family
  21915.  
  21916.  
  21917. __declspec(dllimport)
  21918.  
  21919. HANDLE
  21920. __stdcall
  21921. OpenMutexA(
  21922.          DWORD dwDesiredAccess,
  21923.          BOOL bInheritHandle,
  21924.          LPCSTR lpName
  21925.     );
  21926.  
  21927.  
  21928.  
  21929.  
  21930. __declspec(dllimport)
  21931.  
  21932. HANDLE
  21933. __stdcall
  21934. CreateSemaphoreA(
  21935.              LPSECURITY_ATTRIBUTES lpSemaphoreAttributes,
  21936.              LONG lInitialCount,
  21937.              LONG lMaximumCount,
  21938.              LPCSTR lpName
  21939.     );
  21940.  
  21941.  
  21942.  
  21943.  
  21944.  
  21945. #pragma endregion
  21946.  
  21947. #pragma region Desktop Family or OneCore Family
  21948.  
  21949.  
  21950. __declspec(dllimport)
  21951.  
  21952. HANDLE
  21953. __stdcall
  21954. OpenSemaphoreA(
  21955.          DWORD dwDesiredAccess,
  21956.          BOOL bInheritHandle,
  21957.          LPCSTR lpName
  21958.     );
  21959.  
  21960.  
  21961.  
  21962.  
  21963.  
  21964. #pragma endregion
  21965.  
  21966.  
  21967.  
  21968. #pragma region Desktop Family or OneCore Family
  21969.  
  21970.  
  21971. __declspec(dllimport)
  21972.  
  21973. HANDLE
  21974. __stdcall
  21975. CreateWaitableTimerA(
  21976.              LPSECURITY_ATTRIBUTES lpTimerAttributes,
  21977.              BOOL bManualReset,
  21978.              LPCSTR lpTimerName
  21979.     );
  21980.  
  21981.  
  21982.  
  21983.  
  21984. __declspec(dllimport)
  21985.  
  21986. HANDLE
  21987. __stdcall
  21988. OpenWaitableTimerA(
  21989.          DWORD dwDesiredAccess,
  21990.          BOOL bInheritHandle,
  21991.          LPCSTR lpTimerName
  21992.     );
  21993.  
  21994.  
  21995.  
  21996.  
  21997.  
  21998.  
  21999. __declspec(dllimport)
  22000.  
  22001. HANDLE
  22002. __stdcall
  22003. CreateSemaphoreExA(
  22004.                 LPSECURITY_ATTRIBUTES lpSemaphoreAttributes,
  22005.                 LONG lInitialCount,
  22006.                 LONG lMaximumCount,
  22007.                 LPCSTR lpName,
  22008.                 DWORD dwFlags,
  22009.                 DWORD dwDesiredAccess
  22010.     );
  22011.  
  22012.  
  22013.  
  22014.  
  22015. __declspec(dllimport)
  22016.  
  22017. HANDLE
  22018. __stdcall
  22019. CreateWaitableTimerExA(
  22020.              LPSECURITY_ATTRIBUTES lpTimerAttributes,
  22021.              LPCSTR lpTimerName,
  22022.              DWORD dwFlags,
  22023.              DWORD dwDesiredAccess
  22024.     );
  22025. # 3182 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22026. #pragma endregion
  22027.  
  22028. #pragma region Desktop Family
  22029.  
  22030.  
  22031. __declspec(dllimport)
  22032.  
  22033. HANDLE
  22034. __stdcall
  22035. CreateFileMappingA(
  22036.              HANDLE hFile,
  22037.              LPSECURITY_ATTRIBUTES lpFileMappingAttributes,
  22038.              DWORD flProtect,
  22039.              DWORD dwMaximumSizeHigh,
  22040.              DWORD dwMaximumSizeLow,
  22041.              LPCSTR lpName
  22042.     );
  22043.  
  22044.  
  22045.  
  22046.  
  22047.  
  22048.  
  22049. __declspec(dllimport)
  22050.  
  22051. HANDLE
  22052. __stdcall
  22053. CreateFileMappingNumaA(
  22054.              HANDLE hFile,
  22055.              LPSECURITY_ATTRIBUTES lpFileMappingAttributes,
  22056.              DWORD flProtect,
  22057.              DWORD dwMaximumSizeHigh,
  22058.              DWORD dwMaximumSizeLow,
  22059.              LPCSTR lpName,
  22060.              DWORD nndPreferred
  22061.     );
  22062.  
  22063.  
  22064.  
  22065.  
  22066.  
  22067.  
  22068.  
  22069. __declspec(dllimport)
  22070. HANDLE
  22071. __stdcall
  22072. OpenFileMappingA(
  22073.          DWORD dwDesiredAccess,
  22074.          BOOL bInheritHandle,
  22075.          LPCSTR lpName
  22076.     );
  22077.  
  22078.  
  22079.  
  22080.  
  22081.  
  22082. #pragma endregion
  22083.  
  22084. #pragma region Desktop Family or OneCore Family
  22085.  
  22086.  
  22087. __declspec(dllimport)
  22088.  
  22089. DWORD
  22090. __stdcall
  22091. GetLogicalDriveStringsA(
  22092.          DWORD nBufferLength,
  22093.                                                    LPSTR lpBuffer
  22094.     );
  22095.  
  22096.  
  22097.  
  22098.  
  22099.  
  22100. #pragma endregion
  22101.  
  22102. #pragma region Desktop Family
  22103.  
  22104.  
  22105.  
  22106.  
  22107. #pragma endregion
  22108.  
  22109. #pragma region Application Family or OneCore Family
  22110.  
  22111.  
  22112.  
  22113.  
  22114. __declspec(dllimport)
  22115.  
  22116. HMODULE
  22117. __stdcall
  22118. LoadPackagedLibrary (
  22119.                LPCWSTR lpwLibFileName,
  22120.                DWORD Reserved
  22121.     );
  22122.  
  22123.  
  22124.  
  22125.  
  22126. #pragma endregion
  22127. # 3316 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22128. #pragma region Desktop Family or OneCore Family
  22129.  
  22130.  
  22131.  
  22132.  
  22133.  
  22134.  
  22135. __declspec(dllimport)
  22136. BOOL
  22137. __stdcall
  22138. QueryFullProcessImageNameA(
  22139.          HANDLE hProcess,
  22140.          DWORD dwFlags,
  22141.                                           LPSTR lpExeName,
  22142.             PDWORD lpdwSize
  22143.     );
  22144. __declspec(dllimport)
  22145. BOOL
  22146. __stdcall
  22147. QueryFullProcessImageNameW(
  22148.          HANDLE hProcess,
  22149.          DWORD dwFlags,
  22150.                                           LPWSTR lpExeName,
  22151.             PDWORD lpdwSize
  22152.     );
  22153. # 3362 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22154. typedef enum _PROC_THREAD_ATTRIBUTE_NUM {
  22155.     ProcThreadAttributeParentProcess = 0,
  22156.     ProcThreadAttributeHandleList = 2,
  22157.  
  22158.     ProcThreadAttributeGroupAffinity = 3,
  22159.     ProcThreadAttributePreferredNode = 4,
  22160.     ProcThreadAttributeIdealProcessor = 5,
  22161.     ProcThreadAttributeUmsThread = 6,
  22162.     ProcThreadAttributeMitigationPolicy = 7,
  22163.  
  22164.  
  22165.     ProcThreadAttributeSecurityCapabilities = 9,
  22166.  
  22167.     ProcThreadAttributeProtectionLevel = 11,
  22168.  
  22169.  
  22170.  
  22171.     ProcThreadAttributeJobList = 13,
  22172.     ProcThreadAttributeChildProcessPolicy = 14,
  22173.     ProcThreadAttributeAllApplicationPackagesPolicy = 15,
  22174.     ProcThreadAttributeWin32kFilter = 16,
  22175.  
  22176.  
  22177.     ProcThreadAttributeSafeOpenPromptOriginClaim = 17,
  22178.  
  22179.  
  22180.     ProcThreadAttributeDesktopAppPolicy = 18,
  22181.  
  22182. } PROC_THREAD_ATTRIBUTE_NUM;
  22183. # 3709 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22184. #pragma endregion
  22185.  
  22186. #pragma region Desktop Family
  22187.  
  22188.  
  22189.  
  22190. __declspec(dllimport)
  22191. void
  22192. __stdcall
  22193. GetStartupInfoA(
  22194.           LPSTARTUPINFOA lpStartupInfo
  22195.     );
  22196. # 3780 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22197. #pragma endregion
  22198.  
  22199. #pragma region OneCore Family or App Family
  22200.  
  22201.  
  22202. __declspec(dllimport)
  22203. DWORD
  22204. __stdcall
  22205. GetFirmwareEnvironmentVariableA(
  22206.          LPCSTR lpName,
  22207.          LPCSTR lpGuid,
  22208.                                              PVOID pBuffer,
  22209.          DWORD nSize
  22210.     );
  22211. __declspec(dllimport)
  22212. DWORD
  22213. __stdcall
  22214. GetFirmwareEnvironmentVariableW(
  22215.          LPCWSTR lpName,
  22216.          LPCWSTR lpGuid,
  22217.                                              PVOID pBuffer,
  22218.          DWORD nSize
  22219.     );
  22220. # 3811 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22221. __declspec(dllimport)
  22222. DWORD
  22223. __stdcall
  22224. GetFirmwareEnvironmentVariableExA(
  22225.          LPCSTR lpName,
  22226.          LPCSTR lpGuid,
  22227.                                              PVOID pBuffer,
  22228.          DWORD nSize,
  22229.               PDWORD pdwAttribubutes
  22230.     );
  22231. __declspec(dllimport)
  22232. DWORD
  22233. __stdcall
  22234. GetFirmwareEnvironmentVariableExW(
  22235.          LPCWSTR lpName,
  22236.          LPCWSTR lpGuid,
  22237.                                              PVOID pBuffer,
  22238.          DWORD nSize,
  22239.               PDWORD pdwAttribubutes
  22240.     );
  22241. # 3839 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22242. __declspec(dllimport)
  22243. BOOL
  22244. __stdcall
  22245. SetFirmwareEnvironmentVariableA(
  22246.          LPCSTR lpName,
  22247.          LPCSTR lpGuid,
  22248.                                 PVOID pValue,
  22249.          DWORD nSize
  22250.     );
  22251. __declspec(dllimport)
  22252. BOOL
  22253. __stdcall
  22254. SetFirmwareEnvironmentVariableW(
  22255.          LPCWSTR lpName,
  22256.          LPCWSTR lpGuid,
  22257.                                 PVOID pValue,
  22258.          DWORD nSize
  22259.     );
  22260. # 3865 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22261. __declspec(dllimport)
  22262. BOOL
  22263. __stdcall
  22264. SetFirmwareEnvironmentVariableExA(
  22265.          LPCSTR lpName,
  22266.          LPCSTR lpGuid,
  22267.                                 PVOID pValue,
  22268.          DWORD nSize,
  22269.          DWORD dwAttributes
  22270.     );
  22271. __declspec(dllimport)
  22272. BOOL
  22273. __stdcall
  22274. SetFirmwareEnvironmentVariableExW(
  22275.          LPCWSTR lpName,
  22276.          LPCWSTR lpGuid,
  22277.                                 PVOID pValue,
  22278.          DWORD nSize,
  22279.          DWORD dwAttributes
  22280.     );
  22281. # 3894 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22282. #pragma endregion
  22283.  
  22284. #pragma region Desktop Family
  22285.  
  22286.  
  22287.  
  22288.  
  22289. __declspec(dllimport)
  22290. BOOL
  22291. __stdcall
  22292. GetFirmwareType (
  22293.             PFIRMWARE_TYPE FirmwareType
  22294.     );
  22295.  
  22296.  
  22297. __declspec(dllimport)
  22298. BOOL
  22299. __stdcall
  22300. IsNativeVhdBoot (
  22301.           PBOOL NativeVhdBoot
  22302.     );
  22303.  
  22304.  
  22305.  
  22306. __declspec(dllimport)
  22307.  
  22308. HRSRC
  22309. __stdcall
  22310. FindResourceA(
  22311.              HMODULE hModule,
  22312.              LPCSTR lpName,
  22313.              LPCSTR lpType
  22314.     );
  22315.  
  22316.  
  22317.  
  22318.  
  22319. __declspec(dllimport)
  22320.  
  22321. HRSRC
  22322. __stdcall
  22323. FindResourceExA(
  22324.              HMODULE hModule,
  22325.              LPCSTR lpType,
  22326.              LPCSTR lpName,
  22327.              WORD wLanguage
  22328.     );
  22329.  
  22330.  
  22331.  
  22332.  
  22333. __declspec(dllimport)
  22334. BOOL
  22335. __stdcall
  22336. EnumResourceTypesA(
  22337.              HMODULE hModule,
  22338.              ENUMRESTYPEPROCA lpEnumFunc,
  22339.              LONG_PTR lParam
  22340.     );
  22341. __declspec(dllimport)
  22342. BOOL
  22343. __stdcall
  22344. EnumResourceTypesW(
  22345.              HMODULE hModule,
  22346.              ENUMRESTYPEPROCW lpEnumFunc,
  22347.              LONG_PTR lParam
  22348.     );
  22349.  
  22350.  
  22351.  
  22352.  
  22353.  
  22354.  
  22355. __declspec(dllimport)
  22356. BOOL
  22357. __stdcall
  22358. EnumResourceNamesA(
  22359.              HMODULE hModule,
  22360.              LPCSTR lpType,
  22361.              ENUMRESNAMEPROCA lpEnumFunc,
  22362.              LONG_PTR lParam
  22363.     );
  22364.  
  22365.  
  22366.  
  22367.  
  22368.  
  22369. __declspec(dllimport)
  22370. BOOL
  22371. __stdcall
  22372. EnumResourceLanguagesA(
  22373.              HMODULE hModule,
  22374.              LPCSTR lpType,
  22375.              LPCSTR lpName,
  22376.              ENUMRESLANGPROCA lpEnumFunc,
  22377.              LONG_PTR lParam
  22378.     );
  22379. __declspec(dllimport)
  22380. BOOL
  22381. __stdcall
  22382. EnumResourceLanguagesW(
  22383.              HMODULE hModule,
  22384.              LPCWSTR lpType,
  22385.              LPCWSTR lpName,
  22386.              ENUMRESLANGPROCW lpEnumFunc,
  22387.              LONG_PTR lParam
  22388.     );
  22389.  
  22390.  
  22391.  
  22392.  
  22393.  
  22394.  
  22395. __declspec(dllimport)
  22396. HANDLE
  22397. __stdcall
  22398. BeginUpdateResourceA(
  22399.          LPCSTR pFileName,
  22400.          BOOL bDeleteExistingResources
  22401.     );
  22402. __declspec(dllimport)
  22403. HANDLE
  22404. __stdcall
  22405. BeginUpdateResourceW(
  22406.          LPCWSTR pFileName,
  22407.          BOOL bDeleteExistingResources
  22408.     );
  22409.  
  22410.  
  22411.  
  22412.  
  22413.  
  22414.  
  22415. __declspec(dllimport)
  22416. BOOL
  22417. __stdcall
  22418. UpdateResourceA(
  22419.          HANDLE hUpdate,
  22420.          LPCSTR lpType,
  22421.          LPCSTR lpName,
  22422.          WORD wLanguage,
  22423.                              LPVOID lpData,
  22424.          DWORD cb
  22425.     );
  22426. __declspec(dllimport)
  22427. BOOL
  22428. __stdcall
  22429. UpdateResourceW(
  22430.          HANDLE hUpdate,
  22431.          LPCWSTR lpType,
  22432.          LPCWSTR lpName,
  22433.          WORD wLanguage,
  22434.                              LPVOID lpData,
  22435.          DWORD cb
  22436.     );
  22437.  
  22438.  
  22439.  
  22440.  
  22441.  
  22442.  
  22443. __declspec(dllimport)
  22444. BOOL
  22445. __stdcall
  22446. EndUpdateResourceA(
  22447.          HANDLE hUpdate,
  22448.          BOOL fDiscard
  22449.     );
  22450. __declspec(dllimport)
  22451. BOOL
  22452. __stdcall
  22453. EndUpdateResourceW(
  22454.          HANDLE hUpdate,
  22455.          BOOL fDiscard
  22456.     );
  22457. # 4077 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22458. __declspec(dllimport)
  22459. ATOM
  22460. __stdcall
  22461. GlobalAddAtomA(
  22462.              LPCSTR lpString
  22463.     );
  22464. __declspec(dllimport)
  22465. ATOM
  22466. __stdcall
  22467. GlobalAddAtomW(
  22468.              LPCWSTR lpString
  22469.     );
  22470.  
  22471.  
  22472.  
  22473.  
  22474.  
  22475.  
  22476. __declspec(dllimport)
  22477. ATOM
  22478. __stdcall
  22479. GlobalAddAtomExA(
  22480.              LPCSTR lpString,
  22481.          DWORD Flags
  22482.     );
  22483. __declspec(dllimport)
  22484. ATOM
  22485. __stdcall
  22486. GlobalAddAtomExW(
  22487.              LPCWSTR lpString,
  22488.          DWORD Flags
  22489.     );
  22490.  
  22491.  
  22492.  
  22493.  
  22494.  
  22495.  
  22496. __declspec(dllimport)
  22497. ATOM
  22498. __stdcall
  22499. GlobalFindAtomA(
  22500.              LPCSTR lpString
  22501.     );
  22502. __declspec(dllimport)
  22503. ATOM
  22504. __stdcall
  22505. GlobalFindAtomW(
  22506.              LPCWSTR lpString
  22507.     );
  22508.  
  22509.  
  22510.  
  22511.  
  22512.  
  22513.  
  22514. __declspec(dllimport)
  22515. UINT
  22516. __stdcall
  22517. GlobalGetAtomNameA(
  22518.          ATOM nAtom,
  22519.                                        LPSTR lpBuffer,
  22520.          int nSize
  22521.     );
  22522. __declspec(dllimport)
  22523. UINT
  22524. __stdcall
  22525. GlobalGetAtomNameW(
  22526.          ATOM nAtom,
  22527.                                        LPWSTR lpBuffer,
  22528.          int nSize
  22529.     );
  22530.  
  22531.  
  22532.  
  22533.  
  22534.  
  22535.  
  22536. __declspec(dllimport)
  22537. ATOM
  22538. __stdcall
  22539. AddAtomA(
  22540.              LPCSTR lpString
  22541.     );
  22542. __declspec(dllimport)
  22543. ATOM
  22544. __stdcall
  22545. AddAtomW(
  22546.              LPCWSTR lpString
  22547.     );
  22548.  
  22549.  
  22550.  
  22551.  
  22552.  
  22553.  
  22554. __declspec(dllimport)
  22555. ATOM
  22556. __stdcall
  22557. FindAtomA(
  22558.              LPCSTR lpString
  22559.     );
  22560. __declspec(dllimport)
  22561. ATOM
  22562. __stdcall
  22563. FindAtomW(
  22564.              LPCWSTR lpString
  22565.     );
  22566.  
  22567.  
  22568.  
  22569.  
  22570.  
  22571.  
  22572. __declspec(dllimport)
  22573. UINT
  22574. __stdcall
  22575. GetAtomNameA(
  22576.          ATOM nAtom,
  22577.                                        LPSTR lpBuffer,
  22578.          int nSize
  22579.     );
  22580. __declspec(dllimport)
  22581. UINT
  22582. __stdcall
  22583. GetAtomNameW(
  22584.          ATOM nAtom,
  22585.                                        LPWSTR lpBuffer,
  22586.          int nSize
  22587.     );
  22588.  
  22589.  
  22590.  
  22591.  
  22592.  
  22593.  
  22594.  
  22595. #pragma endregion
  22596.  
  22597. #pragma region Desktop Family or OneCore Family
  22598.  
  22599.  
  22600. __declspec(dllimport)
  22601. UINT
  22602. __stdcall
  22603. GetProfileIntA(
  22604.          LPCSTR lpAppName,
  22605.          LPCSTR lpKeyName,
  22606.          INT nDefault
  22607.     );
  22608. __declspec(dllimport)
  22609. UINT
  22610. __stdcall
  22611. GetProfileIntW(
  22612.          LPCWSTR lpAppName,
  22613.          LPCWSTR lpKeyName,
  22614.          INT nDefault
  22615.     );
  22616.  
  22617.  
  22618.  
  22619.  
  22620.  
  22621.  
  22622. __declspec(dllimport)
  22623. DWORD
  22624. __stdcall
  22625. GetProfileStringA(
  22626.              LPCSTR lpAppName,
  22627.              LPCSTR lpKeyName,
  22628.              LPCSTR lpDefault,
  22629.                                            LPSTR lpReturnedString,
  22630.              DWORD nSize
  22631.     );
  22632. __declspec(dllimport)
  22633. DWORD
  22634. __stdcall
  22635. GetProfileStringW(
  22636.              LPCWSTR lpAppName,
  22637.              LPCWSTR lpKeyName,
  22638.              LPCWSTR lpDefault,
  22639.                                            LPWSTR lpReturnedString,
  22640.              DWORD nSize
  22641.     );
  22642.  
  22643.  
  22644.  
  22645.  
  22646.  
  22647.  
  22648.  
  22649. #pragma endregion
  22650.  
  22651. #pragma region Desktop Family
  22652.  
  22653.  
  22654. __declspec(dllimport)
  22655. BOOL
  22656. __stdcall
  22657. WriteProfileStringA(
  22658.              LPCSTR lpAppName,
  22659.              LPCSTR lpKeyName,
  22660.              LPCSTR lpString
  22661.     );
  22662. __declspec(dllimport)
  22663. BOOL
  22664. __stdcall
  22665. WriteProfileStringW(
  22666.              LPCWSTR lpAppName,
  22667.              LPCWSTR lpKeyName,
  22668.              LPCWSTR lpString
  22669.     );
  22670.  
  22671.  
  22672.  
  22673.  
  22674.  
  22675.  
  22676.  
  22677. #pragma endregion
  22678.  
  22679. #pragma region Desktop Family or OneCore Family
  22680.  
  22681.  
  22682. __declspec(dllimport)
  22683. DWORD
  22684. __stdcall
  22685. GetProfileSectionA(
  22686.          LPCSTR lpAppName,
  22687.                                            LPSTR lpReturnedString,
  22688.          DWORD nSize
  22689.     );
  22690. __declspec(dllimport)
  22691. DWORD
  22692. __stdcall
  22693. GetProfileSectionW(
  22694.          LPCWSTR lpAppName,
  22695.                                            LPWSTR lpReturnedString,
  22696.          DWORD nSize
  22697.     );
  22698.  
  22699.  
  22700.  
  22701.  
  22702.  
  22703.  
  22704.  
  22705. #pragma endregion
  22706.  
  22707. #pragma region Desktop Family
  22708.  
  22709.  
  22710. __declspec(dllimport)
  22711. BOOL
  22712. __stdcall
  22713. WriteProfileSectionA(
  22714.          LPCSTR lpAppName,
  22715.          LPCSTR lpString
  22716.     );
  22717. __declspec(dllimport)
  22718. BOOL
  22719. __stdcall
  22720. WriteProfileSectionW(
  22721.          LPCWSTR lpAppName,
  22722.          LPCWSTR lpString
  22723.     );
  22724.  
  22725.  
  22726.  
  22727.  
  22728.  
  22729.  
  22730.  
  22731. #pragma endregion
  22732.  
  22733. #pragma region Desktop Family or OneCore Family
  22734.  
  22735.  
  22736. __declspec(dllimport)
  22737. UINT
  22738. __stdcall
  22739. GetPrivateProfileIntA(
  22740.              LPCSTR lpAppName,
  22741.              LPCSTR lpKeyName,
  22742.              INT nDefault,
  22743.              LPCSTR lpFileName
  22744.     );
  22745. __declspec(dllimport)
  22746. UINT
  22747. __stdcall
  22748. GetPrivateProfileIntW(
  22749.              LPCWSTR lpAppName,
  22750.              LPCWSTR lpKeyName,
  22751.              INT nDefault,
  22752.              LPCWSTR lpFileName
  22753.     );
  22754. # 4403 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22755. __declspec(dllimport)
  22756. DWORD
  22757. __stdcall
  22758. GetPrivateProfileStringA(
  22759.              LPCSTR lpAppName,
  22760.              LPCSTR lpKeyName,
  22761.              LPCSTR lpDefault,
  22762.                                            LPSTR lpReturnedString,
  22763.              DWORD nSize,
  22764.              LPCSTR lpFileName
  22765.     );
  22766. __declspec(dllimport)
  22767. DWORD
  22768. __stdcall
  22769. GetPrivateProfileStringW(
  22770.              LPCWSTR lpAppName,
  22771.              LPCWSTR lpKeyName,
  22772.              LPCWSTR lpDefault,
  22773.                                            LPWSTR lpReturnedString,
  22774.              DWORD nSize,
  22775.              LPCWSTR lpFileName
  22776.     );
  22777. # 4459 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22778. __declspec(dllimport)
  22779. BOOL
  22780. __stdcall
  22781. WritePrivateProfileStringA(
  22782.              LPCSTR lpAppName,
  22783.              LPCSTR lpKeyName,
  22784.              LPCSTR lpString,
  22785.              LPCSTR lpFileName
  22786.     );
  22787. __declspec(dllimport)
  22788. BOOL
  22789. __stdcall
  22790. WritePrivateProfileStringW(
  22791.              LPCWSTR lpAppName,
  22792.              LPCWSTR lpKeyName,
  22793.              LPCWSTR lpString,
  22794.              LPCWSTR lpFileName
  22795.     );
  22796.  
  22797.  
  22798.  
  22799.  
  22800.  
  22801.  
  22802. __declspec(dllimport)
  22803. DWORD
  22804. __stdcall
  22805. GetPrivateProfileSectionA(
  22806.              LPCSTR lpAppName,
  22807.                                            LPSTR lpReturnedString,
  22808.              DWORD nSize,
  22809.              LPCSTR lpFileName
  22810.     );
  22811. __declspec(dllimport)
  22812. DWORD
  22813. __stdcall
  22814. GetPrivateProfileSectionW(
  22815.              LPCWSTR lpAppName,
  22816.                                            LPWSTR lpReturnedString,
  22817.              DWORD nSize,
  22818.              LPCWSTR lpFileName
  22819.     );
  22820. # 4531 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22821. __declspec(dllimport)
  22822. BOOL
  22823. __stdcall
  22824. WritePrivateProfileSectionA(
  22825.              LPCSTR lpAppName,
  22826.              LPCSTR lpString,
  22827.              LPCSTR lpFileName
  22828.     );
  22829. __declspec(dllimport)
  22830. BOOL
  22831. __stdcall
  22832. WritePrivateProfileSectionW(
  22833.              LPCWSTR lpAppName,
  22834.              LPCWSTR lpString,
  22835.              LPCWSTR lpFileName
  22836.     );
  22837.  
  22838.  
  22839.  
  22840.  
  22841.  
  22842.  
  22843.  
  22844. #pragma endregion
  22845.  
  22846. #pragma region Desktop Family
  22847.  
  22848.  
  22849. __declspec(dllimport)
  22850. DWORD
  22851. __stdcall
  22852. GetPrivateProfileSectionNamesA(
  22853.                                            LPSTR lpszReturnBuffer,
  22854.              DWORD nSize,
  22855.              LPCSTR lpFileName
  22856.     );
  22857. __declspec(dllimport)
  22858. DWORD
  22859. __stdcall
  22860. GetPrivateProfileSectionNamesW(
  22861.                                            LPWSTR lpszReturnBuffer,
  22862.              DWORD nSize,
  22863.              LPCWSTR lpFileName
  22864.     );
  22865. # 4603 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22866. __declspec(dllimport)
  22867. BOOL
  22868. __stdcall
  22869. GetPrivateProfileStructA(
  22870.              LPCSTR lpszSection,
  22871.              LPCSTR lpszKey,
  22872.                                         LPVOID lpStruct,
  22873.              UINT uSizeStruct,
  22874.              LPCSTR szFile
  22875.     );
  22876. __declspec(dllimport)
  22877. BOOL
  22878. __stdcall
  22879. GetPrivateProfileStructW(
  22880.              LPCWSTR lpszSection,
  22881.              LPCWSTR lpszKey,
  22882.                                         LPVOID lpStruct,
  22883.              UINT uSizeStruct,
  22884.              LPCWSTR szFile
  22885.     );
  22886. # 4655 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22887. __declspec(dllimport)
  22888. BOOL
  22889. __stdcall
  22890. WritePrivateProfileStructA(
  22891.              LPCSTR lpszSection,
  22892.              LPCSTR lpszKey,
  22893.                                       LPVOID lpStruct,
  22894.              UINT uSizeStruct,
  22895.              LPCSTR szFile
  22896.     );
  22897. __declspec(dllimport)
  22898. BOOL
  22899. __stdcall
  22900. WritePrivateProfileStructW(
  22901.              LPCWSTR lpszSection,
  22902.              LPCWSTR lpszKey,
  22903.                                       LPVOID lpStruct,
  22904.              UINT uSizeStruct,
  22905.              LPCWSTR szFile
  22906.     );
  22907. # 4708 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22908. __declspec(dllimport)
  22909. BOOLEAN
  22910. __stdcall
  22911. Wow64EnableWow64FsRedirection (
  22912.          BOOLEAN Wow64FsEnableRedirection
  22913.     );
  22914.  
  22915.  
  22916.  
  22917.  
  22918. typedef UINT (__stdcall* PGET_SYSTEM_WOW64_DIRECTORY_A)( LPSTR lpBuffer, UINT uSize);
  22919. typedef UINT (__stdcall* PGET_SYSTEM_WOW64_DIRECTORY_W)( LPWSTR lpBuffer, UINT uSize);
  22920. # 4786 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22921. __declspec(dllimport)
  22922. BOOL
  22923. __stdcall
  22924. SetDllDirectoryA(
  22925.              LPCSTR lpPathName
  22926.     );
  22927. __declspec(dllimport)
  22928. BOOL
  22929. __stdcall
  22930. SetDllDirectoryW(
  22931.              LPCWSTR lpPathName
  22932.     );
  22933.  
  22934.  
  22935.  
  22936.  
  22937.  
  22938.  
  22939. __declspec(dllimport)
  22940.  
  22941. DWORD
  22942. __stdcall
  22943. GetDllDirectoryA(
  22944.          DWORD nBufferLength,
  22945.                                                    LPSTR lpBuffer
  22946.     );
  22947. __declspec(dllimport)
  22948.  
  22949. DWORD
  22950. __stdcall
  22951. GetDllDirectoryW(
  22952.          DWORD nBufferLength,
  22953.                                                    LPWSTR lpBuffer
  22954.     );
  22955. # 4833 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22956. __declspec(dllimport)
  22957. BOOL
  22958. __stdcall
  22959. SetSearchPathMode (
  22960.          DWORD Flags
  22961.     );
  22962.  
  22963.  
  22964. #pragma endregion
  22965.  
  22966. #pragma region Application Family
  22967. # 4867 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  22968. #pragma endregion
  22969.  
  22970. #pragma region Desktop Family or OneCore Family
  22971.  
  22972.  
  22973. __declspec(dllimport)
  22974. BOOL
  22975. __stdcall
  22976. CreateDirectoryExA(
  22977.              LPCSTR lpTemplateDirectory,
  22978.              LPCSTR lpNewDirectory,
  22979.              LPSECURITY_ATTRIBUTES lpSecurityAttributes
  22980.     );
  22981. __declspec(dllimport)
  22982. BOOL
  22983. __stdcall
  22984. CreateDirectoryExW(
  22985.              LPCWSTR lpTemplateDirectory,
  22986.              LPCWSTR lpNewDirectory,
  22987.              LPSECURITY_ATTRIBUTES lpSecurityAttributes
  22988.     );
  22989.  
  22990.  
  22991.  
  22992.  
  22993.  
  22994.  
  22995.  
  22996. #pragma endregion
  22997.  
  22998. #pragma region Desktop Family
  22999.  
  23000.  
  23001.  
  23002.  
  23003. __declspec(dllimport)
  23004. BOOL
  23005. __stdcall
  23006. CreateDirectoryTransactedA(
  23007.              LPCSTR lpTemplateDirectory,
  23008.              LPCSTR lpNewDirectory,
  23009.              LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  23010.              HANDLE hTransaction
  23011.     );
  23012. __declspec(dllimport)
  23013. BOOL
  23014. __stdcall
  23015. CreateDirectoryTransactedW(
  23016.              LPCWSTR lpTemplateDirectory,
  23017.              LPCWSTR lpNewDirectory,
  23018.              LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  23019.              HANDLE hTransaction
  23020.     );
  23021.  
  23022.  
  23023.  
  23024.  
  23025.  
  23026.  
  23027. __declspec(dllimport)
  23028. BOOL
  23029. __stdcall
  23030. RemoveDirectoryTransactedA(
  23031.          LPCSTR lpPathName,
  23032.              HANDLE hTransaction
  23033.     );
  23034. __declspec(dllimport)
  23035. BOOL
  23036. __stdcall
  23037. RemoveDirectoryTransactedW(
  23038.          LPCWSTR lpPathName,
  23039.              HANDLE hTransaction
  23040.     );
  23041.  
  23042.  
  23043.  
  23044.  
  23045.  
  23046.  
  23047. __declspec(dllimport)
  23048.  
  23049. DWORD
  23050. __stdcall
  23051. GetFullPathNameTransactedA(
  23052.                     LPCSTR lpFileName,
  23053.                     DWORD nBufferLength,
  23054.                                                    LPSTR lpBuffer,
  23055.                  LPSTR *lpFilePart,
  23056.                     HANDLE hTransaction
  23057.     );
  23058. __declspec(dllimport)
  23059.  
  23060. DWORD
  23061. __stdcall
  23062. GetFullPathNameTransactedW(
  23063.                     LPCWSTR lpFileName,
  23064.                     DWORD nBufferLength,
  23065.                                                    LPWSTR lpBuffer,
  23066.                  LPWSTR *lpFilePart,
  23067.                     HANDLE hTransaction
  23068.     );
  23069. # 4977 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23070. #pragma endregion
  23071.  
  23072. #pragma region Desktop Family or OneCore Family
  23073.  
  23074.  
  23075.  
  23076.  
  23077.  
  23078.  
  23079.  
  23080.  
  23081. __declspec(dllimport)
  23082. BOOL
  23083. __stdcall
  23084. DefineDosDeviceA(
  23085.              DWORD dwFlags,
  23086.              LPCSTR lpDeviceName,
  23087.              LPCSTR lpTargetPath
  23088.     );
  23089.  
  23090.  
  23091.  
  23092.  
  23093. __declspec(dllimport)
  23094. DWORD
  23095. __stdcall
  23096. QueryDosDeviceA(
  23097.              LPCSTR lpDeviceName,
  23098.                                          LPSTR lpTargetPath,
  23099.              DWORD ucchMax
  23100.     );
  23101.  
  23102.  
  23103.  
  23104.  
  23105.  
  23106. #pragma endregion
  23107.  
  23108. #pragma region Desktop Family
  23109.  
  23110.  
  23111.  
  23112.  
  23113.  
  23114.  
  23115. __declspec(dllimport)
  23116. HANDLE
  23117. __stdcall
  23118. CreateFileTransactedA(
  23119.                LPCSTR lpFileName,
  23120.                DWORD dwDesiredAccess,
  23121.                DWORD dwShareMode,
  23122.                LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  23123.                DWORD dwCreationDisposition,
  23124.                DWORD dwFlagsAndAttributes,
  23125.                HANDLE hTemplateFile,
  23126.                HANDLE hTransaction,
  23127.                PUSHORT pusMiniVersion,
  23128.                PVOID lpExtendedParameter
  23129.     );
  23130. __declspec(dllimport)
  23131. HANDLE
  23132. __stdcall
  23133. CreateFileTransactedW(
  23134.                LPCWSTR lpFileName,
  23135.                DWORD dwDesiredAccess,
  23136.                DWORD dwShareMode,
  23137.                LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  23138.                DWORD dwCreationDisposition,
  23139.                DWORD dwFlagsAndAttributes,
  23140.                HANDLE hTemplateFile,
  23141.                HANDLE hTransaction,
  23142.                PUSHORT pusMiniVersion,
  23143.                PVOID lpExtendedParameter
  23144.     );
  23145. # 5061 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23146. #pragma endregion
  23147.  
  23148. #pragma region Desktop Family or OneCore Family
  23149.  
  23150.  
  23151.  
  23152.  
  23153. __declspec(dllimport)
  23154. HANDLE
  23155. __stdcall
  23156. ReOpenFile(
  23157.          HANDLE hOriginalFile,
  23158.          DWORD dwDesiredAccess,
  23159.          DWORD dwShareMode,
  23160.          DWORD dwFlagsAndAttributes
  23161.     );
  23162.  
  23163.  
  23164.  
  23165.  
  23166. #pragma endregion
  23167.  
  23168.  
  23169. #pragma region Desktop Family
  23170.  
  23171.  
  23172.  
  23173.  
  23174. __declspec(dllimport)
  23175. BOOL
  23176. __stdcall
  23177. SetFileAttributesTransactedA(
  23178.              LPCSTR lpFileName,
  23179.              DWORD dwFileAttributes,
  23180.              HANDLE hTransaction
  23181.     );
  23182. __declspec(dllimport)
  23183. BOOL
  23184. __stdcall
  23185. SetFileAttributesTransactedW(
  23186.              LPCWSTR lpFileName,
  23187.              DWORD dwFileAttributes,
  23188.              HANDLE hTransaction
  23189.     );
  23190.  
  23191.  
  23192.  
  23193.  
  23194.  
  23195.  
  23196. __declspec(dllimport)
  23197. BOOL
  23198. __stdcall
  23199. GetFileAttributesTransactedA(
  23200.           LPCSTR lpFileName,
  23201.           GET_FILEEX_INFO_LEVELS fInfoLevelId,
  23202.                                                           LPVOID lpFileInformation,
  23203.              HANDLE hTransaction
  23204.     );
  23205. __declspec(dllimport)
  23206. BOOL
  23207. __stdcall
  23208. GetFileAttributesTransactedW(
  23209.           LPCWSTR lpFileName,
  23210.           GET_FILEEX_INFO_LEVELS fInfoLevelId,
  23211.                                                           LPVOID lpFileInformation,
  23212.              HANDLE hTransaction
  23213.     );
  23214.  
  23215.  
  23216.  
  23217.  
  23218.  
  23219.  
  23220. __declspec(dllimport)
  23221. DWORD
  23222. __stdcall
  23223. GetCompressedFileSizeTransactedA(
  23224.               LPCSTR lpFileName,
  23225.               LPDWORD lpFileSizeHigh,
  23226.               HANDLE hTransaction
  23227.     );
  23228. __declspec(dllimport)
  23229. DWORD
  23230. __stdcall
  23231. GetCompressedFileSizeTransactedW(
  23232.               LPCWSTR lpFileName,
  23233.               LPDWORD lpFileSizeHigh,
  23234.               HANDLE hTransaction
  23235.     );
  23236.  
  23237.  
  23238.  
  23239.  
  23240.  
  23241.  
  23242. __declspec(dllimport)
  23243. BOOL
  23244. __stdcall
  23245. DeleteFileTransactedA(
  23246.              LPCSTR lpFileName,
  23247.              HANDLE hTransaction
  23248.     );
  23249. __declspec(dllimport)
  23250. BOOL
  23251. __stdcall
  23252. DeleteFileTransactedW(
  23253.              LPCWSTR lpFileName,
  23254.              HANDLE hTransaction
  23255.     );
  23256. # 5180 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23257. #pragma endregion
  23258.  
  23259. #pragma region Application Family
  23260. # 5204 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23261. #pragma endregion
  23262.  
  23263. #pragma region Desktop Family
  23264.  
  23265.  
  23266.  
  23267.  
  23268. __declspec(dllimport)
  23269. BOOL
  23270. __stdcall
  23271. CheckNameLegalDOS8Dot3A(
  23272.               LPCSTR lpName,
  23273.                                   LPSTR lpOemName,
  23274.               DWORD OemNameSize,
  23275.               PBOOL pbNameContainsSpaces ,
  23276.               PBOOL pbNameLegal
  23277.     );
  23278. __declspec(dllimport)
  23279. BOOL
  23280. __stdcall
  23281. CheckNameLegalDOS8Dot3W(
  23282.               LPCWSTR lpName,
  23283.                                   LPSTR lpOemName,
  23284.               DWORD OemNameSize,
  23285.               PBOOL pbNameContainsSpaces ,
  23286.               PBOOL pbNameLegal
  23287.     );
  23288. # 5240 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23289. #pragma endregion
  23290.  
  23291.  
  23292.  
  23293. #pragma region Desktop Family
  23294.  
  23295.  
  23296.  
  23297.  
  23298. __declspec(dllimport)
  23299. HANDLE
  23300. __stdcall
  23301. FindFirstFileTransactedA(
  23302.                LPCSTR lpFileName,
  23303.                FINDEX_INFO_LEVELS fInfoLevelId,
  23304.                                                  LPVOID lpFindFileData,
  23305.                FINDEX_SEARCH_OPS fSearchOp,
  23306.                LPVOID lpSearchFilter,
  23307.                DWORD dwAdditionalFlags,
  23308.                HANDLE hTransaction
  23309.     );
  23310. __declspec(dllimport)
  23311. HANDLE
  23312. __stdcall
  23313. FindFirstFileTransactedW(
  23314.                LPCWSTR lpFileName,
  23315.                FINDEX_INFO_LEVELS fInfoLevelId,
  23316.                                                  LPVOID lpFindFileData,
  23317.                FINDEX_SEARCH_OPS fSearchOp,
  23318.                LPVOID lpSearchFilter,
  23319.                DWORD dwAdditionalFlags,
  23320.                HANDLE hTransaction
  23321.     );
  23322. # 5282 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23323. #pragma endregion
  23324.  
  23325.  
  23326.  
  23327. #pragma region Application Family or OneCore Family
  23328.  
  23329.  
  23330.  
  23331. __declspec(dllimport)
  23332. BOOL
  23333. __stdcall
  23334. CopyFileA(
  23335.          LPCSTR lpExistingFileName,
  23336.          LPCSTR lpNewFileName,
  23337.          BOOL bFailIfExists
  23338.     );
  23339. __declspec(dllimport)
  23340. BOOL
  23341. __stdcall
  23342. CopyFileW(
  23343.          LPCWSTR lpExistingFileName,
  23344.          LPCWSTR lpNewFileName,
  23345.          BOOL bFailIfExists
  23346.     );
  23347. # 5335 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23348. #pragma endregion
  23349.  
  23350.  
  23351.  
  23352. #pragma region Application Family or OneCore Family
  23353.  
  23354.  
  23355. typedef
  23356. DWORD
  23357. (__stdcall *LPPROGRESS_ROUTINE)(
  23358.              LARGE_INTEGER TotalFileSize,
  23359.              LARGE_INTEGER TotalBytesTransferred,
  23360.              LARGE_INTEGER StreamSize,
  23361.              LARGE_INTEGER StreamBytesTransferred,
  23362.              DWORD dwStreamNumber,
  23363.              DWORD dwCallbackReason,
  23364.              HANDLE hSourceFile,
  23365.              HANDLE hDestinationFile,
  23366.              LPVOID lpData
  23367.     );
  23368.  
  23369. __declspec(dllimport)
  23370. BOOL
  23371. __stdcall
  23372. CopyFileExA(
  23373.                 LPCSTR lpExistingFileName,
  23374.                 LPCSTR lpNewFileName,
  23375.                 LPPROGRESS_ROUTINE lpProgressRoutine,
  23376.                 LPVOID lpData,
  23377.  
  23378.                 LPBOOL pbCancel,
  23379.                 DWORD dwCopyFlags
  23380.     );
  23381. __declspec(dllimport)
  23382. BOOL
  23383. __stdcall
  23384. CopyFileExW(
  23385.                 LPCWSTR lpExistingFileName,
  23386.                 LPCWSTR lpNewFileName,
  23387.                 LPPROGRESS_ROUTINE lpProgressRoutine,
  23388.                 LPVOID lpData,
  23389.  
  23390.                 LPBOOL pbCancel,
  23391.                 DWORD dwCopyFlags
  23392.     );
  23393.  
  23394.  
  23395.  
  23396.  
  23397.  
  23398.  
  23399.  
  23400. #pragma endregion
  23401.  
  23402. #pragma region Desktop Family
  23403.  
  23404.  
  23405.  
  23406.  
  23407. __declspec(dllimport)
  23408. BOOL
  23409. __stdcall
  23410. CopyFileTransactedA(
  23411.              LPCSTR lpExistingFileName,
  23412.              LPCSTR lpNewFileName,
  23413.              LPPROGRESS_ROUTINE lpProgressRoutine,
  23414.              LPVOID lpData,
  23415.              LPBOOL pbCancel,
  23416.              DWORD dwCopyFlags,
  23417.              HANDLE hTransaction
  23418.     );
  23419. __declspec(dllimport)
  23420. BOOL
  23421. __stdcall
  23422. CopyFileTransactedW(
  23423.              LPCWSTR lpExistingFileName,
  23424.              LPCWSTR lpNewFileName,
  23425.              LPPROGRESS_ROUTINE lpProgressRoutine,
  23426.              LPVOID lpData,
  23427.              LPBOOL pbCancel,
  23428.              DWORD dwCopyFlags,
  23429.              HANDLE hTransaction
  23430.     );
  23431. # 5427 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23432. #pragma endregion
  23433.  
  23434. #pragma region Application Family
  23435.  
  23436.  
  23437.  
  23438.  
  23439.  
  23440.  
  23441.  
  23442.  
  23443. typedef enum _COPYFILE2_MESSAGE_TYPE {
  23444.      COPYFILE2_CALLBACK_NONE = 0,
  23445.      COPYFILE2_CALLBACK_CHUNK_STARTED,
  23446.      COPYFILE2_CALLBACK_CHUNK_FINISHED,
  23447.      COPYFILE2_CALLBACK_STREAM_STARTED,
  23448.      COPYFILE2_CALLBACK_STREAM_FINISHED,
  23449.      COPYFILE2_CALLBACK_POLL_CONTINUE,
  23450.      COPYFILE2_CALLBACK_ERROR,
  23451.      COPYFILE2_CALLBACK_MAX,
  23452. } COPYFILE2_MESSAGE_TYPE;
  23453.  
  23454. typedef enum _COPYFILE2_MESSAGE_ACTION {
  23455.     COPYFILE2_PROGRESS_CONTINUE = 0,
  23456.     COPYFILE2_PROGRESS_CANCEL,
  23457.     COPYFILE2_PROGRESS_STOP,
  23458.     COPYFILE2_PROGRESS_QUIET,
  23459.     COPYFILE2_PROGRESS_PAUSE,
  23460. } COPYFILE2_MESSAGE_ACTION;
  23461.  
  23462. typedef enum _COPYFILE2_COPY_PHASE {
  23463.     COPYFILE2_PHASE_NONE = 0,
  23464.     COPYFILE2_PHASE_PREPARE_SOURCE,
  23465.     COPYFILE2_PHASE_PREPARE_DEST,
  23466.     COPYFILE2_PHASE_READ_SOURCE,
  23467.     COPYFILE2_PHASE_WRITE_DESTINATION,
  23468.     COPYFILE2_PHASE_SERVER_COPY,
  23469.     COPYFILE2_PHASE_NAMEGRAFT_COPY,
  23470.  
  23471.     COPYFILE2_PHASE_MAX,
  23472. } COPYFILE2_COPY_PHASE;
  23473.  
  23474.  
  23475.  
  23476. typedef struct COPYFILE2_MESSAGE {
  23477.  
  23478.     COPYFILE2_MESSAGE_TYPE Type;
  23479.     DWORD dwPadding;
  23480.  
  23481.     union {
  23482.  
  23483.         struct {
  23484.             DWORD dwStreamNumber;
  23485.             DWORD dwReserved;
  23486.             HANDLE hSourceFile;
  23487.             HANDLE hDestinationFile;
  23488.             ULARGE_INTEGER uliChunkNumber;
  23489.             ULARGE_INTEGER uliChunkSize;
  23490.             ULARGE_INTEGER uliStreamSize;
  23491.             ULARGE_INTEGER uliTotalFileSize;
  23492.         } ChunkStarted;
  23493.  
  23494.         struct {
  23495.             DWORD dwStreamNumber;
  23496.             DWORD dwFlags;
  23497.             HANDLE hSourceFile;
  23498.             HANDLE hDestinationFile;
  23499.             ULARGE_INTEGER uliChunkNumber;
  23500.             ULARGE_INTEGER uliChunkSize;
  23501.             ULARGE_INTEGER uliStreamSize;
  23502.             ULARGE_INTEGER uliStreamBytesTransferred;
  23503.             ULARGE_INTEGER uliTotalFileSize;
  23504.             ULARGE_INTEGER uliTotalBytesTransferred;
  23505.         } ChunkFinished;
  23506.  
  23507.         struct {
  23508.             DWORD dwStreamNumber;
  23509.             DWORD dwReserved;
  23510.             HANDLE hSourceFile;
  23511.             HANDLE hDestinationFile;
  23512.             ULARGE_INTEGER uliStreamSize;
  23513.             ULARGE_INTEGER uliTotalFileSize;
  23514.         } StreamStarted;
  23515.  
  23516.         struct {
  23517.             DWORD dwStreamNumber;
  23518.             DWORD dwReserved;
  23519.             HANDLE hSourceFile;
  23520.             HANDLE hDestinationFile;
  23521.             ULARGE_INTEGER uliStreamSize;
  23522.             ULARGE_INTEGER uliStreamBytesTransferred;
  23523.             ULARGE_INTEGER uliTotalFileSize;
  23524.             ULARGE_INTEGER uliTotalBytesTransferred;
  23525.         } StreamFinished;
  23526.  
  23527.         struct {
  23528.             DWORD dwReserved;
  23529.         } PollContinue;
  23530.  
  23531.         struct {
  23532.             COPYFILE2_COPY_PHASE CopyPhase;
  23533.             DWORD dwStreamNumber;
  23534.             HRESULT hrFailure;
  23535.             DWORD dwReserved;
  23536.             ULARGE_INTEGER uliChunkNumber;
  23537.             ULARGE_INTEGER uliStreamSize;
  23538.             ULARGE_INTEGER uliStreamBytesTransferred;
  23539.             ULARGE_INTEGER uliTotalFileSize;
  23540.             ULARGE_INTEGER uliTotalBytesTransferred;
  23541.         } Error;
  23542.  
  23543.     } Info;
  23544.  
  23545. } COPYFILE2_MESSAGE;
  23546.  
  23547. typedef
  23548. COPYFILE2_MESSAGE_ACTION (__stdcall *PCOPYFILE2_PROGRESS_ROUTINE)(
  23549.             const COPYFILE2_MESSAGE *pMessage,
  23550.             PVOID pvCallbackContext
  23551. );
  23552.  
  23553. typedef struct COPYFILE2_EXTENDED_PARAMETERS {
  23554.   DWORD dwSize;
  23555.   DWORD dwCopyFlags;
  23556.   BOOL *pfCancel;
  23557.   PCOPYFILE2_PROGRESS_ROUTINE pProgressRoutine;
  23558.   PVOID pvCallbackContext;
  23559. } COPYFILE2_EXTENDED_PARAMETERS;
  23560.  
  23561. __declspec(dllimport)
  23562. HRESULT
  23563. __stdcall
  23564. CopyFile2(
  23565.             PCWSTR pwszExistingFileName,
  23566.             PCWSTR pwszNewFileName,
  23567.             COPYFILE2_EXTENDED_PARAMETERS *pExtendedParameters
  23568. );
  23569.  
  23570.  
  23571.  
  23572.  
  23573. #pragma endregion
  23574.  
  23575.  
  23576.  
  23577. #pragma region Desktop Family
  23578.  
  23579.  
  23580. __declspec(dllimport)
  23581. BOOL
  23582. __stdcall
  23583. MoveFileA(
  23584.          LPCSTR lpExistingFileName,
  23585.          LPCSTR lpNewFileName
  23586.     );
  23587. __declspec(dllimport)
  23588. BOOL
  23589. __stdcall
  23590. MoveFileW(
  23591.          LPCWSTR lpExistingFileName,
  23592.          LPCWSTR lpNewFileName
  23593.     );
  23594. # 5616 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23595. #pragma endregion
  23596.  
  23597. #pragma region Application Family or OneCore Family
  23598.  
  23599.  
  23600. __declspec(dllimport)
  23601. BOOL
  23602. __stdcall
  23603. MoveFileExA(
  23604.              LPCSTR lpExistingFileName,
  23605.              LPCSTR lpNewFileName,
  23606.              DWORD dwFlags
  23607.     );
  23608. __declspec(dllimport)
  23609. BOOL
  23610. __stdcall
  23611. MoveFileExW(
  23612.              LPCWSTR lpExistingFileName,
  23613.              LPCWSTR lpNewFileName,
  23614.              DWORD dwFlags
  23615.     );
  23616.  
  23617.  
  23618.  
  23619.  
  23620.  
  23621.  
  23622.  
  23623. #pragma endregion
  23624.  
  23625. #pragma region Desktop Family or OneCore Family
  23626.  
  23627.  
  23628.  
  23629. __declspec(dllimport)
  23630. BOOL
  23631. __stdcall
  23632. MoveFileWithProgressA(
  23633.              LPCSTR lpExistingFileName,
  23634.              LPCSTR lpNewFileName,
  23635.              LPPROGRESS_ROUTINE lpProgressRoutine,
  23636.              LPVOID lpData,
  23637.              DWORD dwFlags
  23638.     );
  23639. __declspec(dllimport)
  23640. BOOL
  23641. __stdcall
  23642. MoveFileWithProgressW(
  23643.              LPCWSTR lpExistingFileName,
  23644.              LPCWSTR lpNewFileName,
  23645.              LPPROGRESS_ROUTINE lpProgressRoutine,
  23646.              LPVOID lpData,
  23647.              DWORD dwFlags
  23648.     );
  23649.  
  23650.  
  23651.  
  23652.  
  23653.  
  23654.  
  23655.  
  23656.  
  23657. #pragma endregion
  23658.  
  23659. #pragma region Desktop Family
  23660.  
  23661.  
  23662.  
  23663. __declspec(dllimport)
  23664. BOOL
  23665. __stdcall
  23666. MoveFileTransactedA(
  23667.              LPCSTR lpExistingFileName,
  23668.              LPCSTR lpNewFileName,
  23669.              LPPROGRESS_ROUTINE lpProgressRoutine,
  23670.              LPVOID lpData,
  23671.              DWORD dwFlags,
  23672.              HANDLE hTransaction
  23673.     );
  23674. __declspec(dllimport)
  23675. BOOL
  23676. __stdcall
  23677. MoveFileTransactedW(
  23678.              LPCWSTR lpExistingFileName,
  23679.              LPCWSTR lpNewFileName,
  23680.              LPPROGRESS_ROUTINE lpProgressRoutine,
  23681.              LPVOID lpData,
  23682.              DWORD dwFlags,
  23683.              HANDLE hTransaction
  23684.     );
  23685.  
  23686.  
  23687.  
  23688.  
  23689.  
  23690.  
  23691.  
  23692.  
  23693. #pragma endregion
  23694.  
  23695. #pragma region Application Family
  23696. # 5729 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23697. #pragma endregion
  23698.  
  23699. #pragma region Desktop Family
  23700.  
  23701.  
  23702.  
  23703.  
  23704. #pragma endregion
  23705.  
  23706. #pragma region Application Family
  23707.  
  23708.  
  23709.  
  23710.  
  23711. __declspec(dllimport)
  23712. BOOL
  23713. __stdcall
  23714. ReplaceFileA(
  23715.                LPCSTR lpReplacedFileName,
  23716.                LPCSTR lpReplacementFileName,
  23717.                LPCSTR lpBackupFileName,
  23718.                DWORD dwReplaceFlags,
  23719.                LPVOID lpExclude,
  23720.                LPVOID lpReserved
  23721.     );
  23722. __declspec(dllimport)
  23723. BOOL
  23724. __stdcall
  23725. ReplaceFileW(
  23726.                LPCWSTR lpReplacedFileName,
  23727.                LPCWSTR lpReplacementFileName,
  23728.                LPCWSTR lpBackupFileName,
  23729.                DWORD dwReplaceFlags,
  23730.                LPVOID lpExclude,
  23731.                LPVOID lpReserved
  23732.     );
  23733.  
  23734.  
  23735.  
  23736.  
  23737.  
  23738.  
  23739.  
  23740.  
  23741. #pragma endregion
  23742.  
  23743. #pragma region Desktop Family or OneCore Family
  23744.  
  23745.  
  23746.  
  23747.  
  23748.  
  23749.  
  23750.  
  23751. __declspec(dllimport)
  23752. BOOL
  23753. __stdcall
  23754. CreateHardLinkA(
  23755.                LPCSTR lpFileName,
  23756.                LPCSTR lpExistingFileName,
  23757.                LPSECURITY_ATTRIBUTES lpSecurityAttributes
  23758.     );
  23759. __declspec(dllimport)
  23760. BOOL
  23761. __stdcall
  23762. CreateHardLinkW(
  23763.                LPCWSTR lpFileName,
  23764.                LPCWSTR lpExistingFileName,
  23765.                LPSECURITY_ATTRIBUTES lpSecurityAttributes
  23766.     );
  23767. # 5808 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23768. #pragma endregion
  23769.  
  23770. #pragma region Desktop Family
  23771.  
  23772.  
  23773.  
  23774.  
  23775.  
  23776.  
  23777.  
  23778. __declspec(dllimport)
  23779. BOOL
  23780. __stdcall
  23781. CreateHardLinkTransactedA(
  23782.                LPCSTR lpFileName,
  23783.                LPCSTR lpExistingFileName,
  23784.                LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  23785.                HANDLE hTransaction
  23786.     );
  23787. __declspec(dllimport)
  23788. BOOL
  23789. __stdcall
  23790. CreateHardLinkTransactedW(
  23791.                LPCWSTR lpFileName,
  23792.                LPCWSTR lpExistingFileName,
  23793.                LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  23794.                HANDLE hTransaction
  23795.     );
  23796. # 5846 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  23797. __declspec(dllimport)
  23798. HANDLE
  23799. __stdcall
  23800. FindFirstStreamTransactedW (
  23801.                LPCWSTR lpFileName,
  23802.                STREAM_INFO_LEVELS InfoLevel,
  23803.                                                        LPVOID lpFindStreamData,
  23804.                DWORD dwFlags,
  23805.                HANDLE hTransaction
  23806.     );
  23807.  
  23808. __declspec(dllimport)
  23809. HANDLE
  23810. __stdcall
  23811. FindFirstFileNameTransactedW (
  23812.              LPCWSTR lpFileName,
  23813.              DWORD dwFlags,
  23814.              LPDWORD StringLength,
  23815.                                 PWSTR LinkName,
  23816.              HANDLE hTransaction
  23817.     );
  23818.  
  23819.  
  23820.  
  23821.  
  23822. #pragma endregion
  23823.  
  23824. #pragma region Application Family or OneCore Family
  23825.  
  23826.  
  23827. __declspec(dllimport)
  23828. HANDLE
  23829. __stdcall
  23830. CreateNamedPipeA(
  23831.              LPCSTR lpName,
  23832.              DWORD dwOpenMode,
  23833.              DWORD dwPipeMode,
  23834.              DWORD nMaxInstances,
  23835.              DWORD nOutBufferSize,
  23836.              DWORD nInBufferSize,
  23837.              DWORD nDefaultTimeOut,
  23838.              LPSECURITY_ATTRIBUTES lpSecurityAttributes
  23839.     );
  23840.  
  23841.  
  23842.  
  23843.  
  23844.  
  23845. #pragma endregion
  23846.  
  23847. #pragma region Desktop Family or OneCore Family
  23848.  
  23849.  
  23850. __declspec(dllimport)
  23851. BOOL
  23852. __stdcall
  23853. GetNamedPipeHandleStateA(
  23854.               HANDLE hNamedPipe,
  23855.               LPDWORD lpState,
  23856.               LPDWORD lpCurInstances,
  23857.               LPDWORD lpMaxCollectionCount,
  23858.               LPDWORD lpCollectDataTimeout,
  23859.                                        LPSTR lpUserName,
  23860.               DWORD nMaxUserNameSize
  23861.     );
  23862.  
  23863.  
  23864.  
  23865.  
  23866. __declspec(dllimport)
  23867. BOOL
  23868. __stdcall
  23869. CallNamedPipeA(
  23870.           LPCSTR lpNamedPipeName,
  23871.                                         LPVOID lpInBuffer,
  23872.           DWORD nInBufferSize,
  23873.                                                             LPVOID lpOutBuffer,
  23874.           DWORD nOutBufferSize,
  23875.           LPDWORD lpBytesRead,
  23876.           DWORD nTimeOut
  23877.     );
  23878.  
  23879.  
  23880.  
  23881.  
  23882.  
  23883. __declspec(dllimport)
  23884. BOOL
  23885. __stdcall
  23886. WaitNamedPipeA(
  23887.          LPCSTR lpNamedPipeName,
  23888.          DWORD nTimeOut
  23889.     );
  23890.  
  23891.  
  23892.  
  23893.  
  23894.  
  23895. #pragma endregion
  23896.  
  23897.  
  23898.  
  23899. #pragma region Desktop Family
  23900.  
  23901.  
  23902.  
  23903.  
  23904. #pragma endregion
  23905.  
  23906. #pragma region Desktop Family or OneCore Family
  23907.  
  23908.  
  23909. __declspec(dllimport)
  23910. BOOL
  23911. __stdcall
  23912. GetNamedPipeClientComputerNameA(
  23913.          HANDLE Pipe,
  23914.                                                   LPSTR ClientComputerName,
  23915.          ULONG ClientComputerNameLength
  23916.     );
  23917.  
  23918.  
  23919.  
  23920.  
  23921.  
  23922.  
  23923. #pragma endregion
  23924.  
  23925. #pragma region Desktop Family
  23926.  
  23927.  
  23928. __declspec(dllimport)
  23929. BOOL
  23930. __stdcall
  23931. GetNamedPipeClientProcessId(
  23932.          HANDLE Pipe,
  23933.           PULONG ClientProcessId
  23934.     );
  23935.  
  23936. __declspec(dllimport)
  23937. BOOL
  23938. __stdcall
  23939. GetNamedPipeClientSessionId(
  23940.          HANDLE Pipe,
  23941.           PULONG ClientSessionId
  23942.     );
  23943.  
  23944. __declspec(dllimport)
  23945. BOOL
  23946. __stdcall
  23947. GetNamedPipeServerProcessId(
  23948.          HANDLE Pipe,
  23949.           PULONG ServerProcessId
  23950.     );
  23951.  
  23952. __declspec(dllimport)
  23953. BOOL
  23954. __stdcall
  23955. GetNamedPipeServerSessionId(
  23956.          HANDLE Pipe,
  23957.           PULONG ServerSessionId
  23958.     );
  23959.  
  23960.  
  23961. #pragma endregion
  23962.  
  23963.  
  23964.  
  23965. #pragma region Application Family or Desktop Family
  23966.  
  23967.  
  23968. __declspec(dllimport)
  23969. BOOL
  23970. __stdcall
  23971. SetVolumeLabelA(
  23972.              LPCSTR lpRootPathName,
  23973.              LPCSTR lpVolumeName
  23974.     );
  23975. __declspec(dllimport)
  23976. BOOL
  23977. __stdcall
  23978. SetVolumeLabelW(
  23979.              LPCWSTR lpRootPathName,
  23980.              LPCWSTR lpVolumeName
  23981.     );
  23982.  
  23983.  
  23984.  
  23985.  
  23986.  
  23987.  
  23988.  
  23989. #pragma endregion
  23990.  
  23991. #pragma region Desktop Family
  23992.  
  23993.  
  23994.  
  23995.  
  23996.  
  23997. __declspec(dllimport)
  23998. BOOL
  23999. __stdcall
  24000. SetFileBandwidthReservation(
  24001.           HANDLE hFile,
  24002.           DWORD nPeriodMilliseconds,
  24003.           DWORD nBytesPerPeriod,
  24004.           BOOL bDiscardable,
  24005.           LPDWORD lpTransferSize,
  24006.           LPDWORD lpNumOutstandingRequests
  24007.     );
  24008.  
  24009. __declspec(dllimport)
  24010. BOOL
  24011. __stdcall
  24012. GetFileBandwidthReservation(
  24013.           HANDLE hFile,
  24014.           LPDWORD lpPeriodMilliseconds,
  24015.           LPDWORD lpBytesPerPeriod,
  24016.           LPBOOL pDiscardable,
  24017.           LPDWORD lpTransferSize,
  24018.           LPDWORD lpNumOutstandingRequests
  24019.     );
  24020.  
  24021.  
  24022.  
  24023.  
  24024.  
  24025.  
  24026.  
  24027. __declspec(dllimport)
  24028. BOOL
  24029. __stdcall
  24030. ClearEventLogA (
  24031.              HANDLE hEventLog,
  24032.              LPCSTR lpBackupFileName
  24033.     );
  24034. __declspec(dllimport)
  24035. BOOL
  24036. __stdcall
  24037. ClearEventLogW (
  24038.              HANDLE hEventLog,
  24039.              LPCWSTR lpBackupFileName
  24040.     );
  24041.  
  24042.  
  24043.  
  24044.  
  24045.  
  24046.  
  24047. __declspec(dllimport)
  24048. BOOL
  24049. __stdcall
  24050. BackupEventLogA (
  24051.          HANDLE hEventLog,
  24052.          LPCSTR lpBackupFileName
  24053.     );
  24054. __declspec(dllimport)
  24055. BOOL
  24056. __stdcall
  24057. BackupEventLogW (
  24058.          HANDLE hEventLog,
  24059.          LPCWSTR lpBackupFileName
  24060.     );
  24061.  
  24062.  
  24063.  
  24064.  
  24065.  
  24066.  
  24067. __declspec(dllimport)
  24068. BOOL
  24069. __stdcall
  24070. CloseEventLog (
  24071.          HANDLE hEventLog
  24072.     );
  24073.  
  24074. __declspec(dllimport)
  24075. BOOL
  24076. __stdcall
  24077. DeregisterEventSource (
  24078.          HANDLE hEventLog
  24079.     );
  24080.  
  24081. __declspec(dllimport)
  24082. BOOL
  24083. __stdcall
  24084. NotifyChangeEventLog(
  24085.          HANDLE hEventLog,
  24086.          HANDLE hEvent
  24087.     );
  24088.  
  24089. __declspec(dllimport)
  24090. BOOL
  24091. __stdcall
  24092. GetNumberOfEventLogRecords (
  24093.           HANDLE hEventLog,
  24094.           PDWORD NumberOfRecords
  24095.     );
  24096.  
  24097. __declspec(dllimport)
  24098. BOOL
  24099. __stdcall
  24100. GetOldestEventLogRecord (
  24101.           HANDLE hEventLog,
  24102.           PDWORD OldestRecord
  24103.     );
  24104.  
  24105. __declspec(dllimport)
  24106. HANDLE
  24107. __stdcall
  24108. OpenEventLogA (
  24109.              LPCSTR lpUNCServerName,
  24110.              LPCSTR lpSourceName
  24111.     );
  24112. __declspec(dllimport)
  24113. HANDLE
  24114. __stdcall
  24115. OpenEventLogW (
  24116.              LPCWSTR lpUNCServerName,
  24117.              LPCWSTR lpSourceName
  24118.     );
  24119.  
  24120.  
  24121.  
  24122.  
  24123.  
  24124.  
  24125. __declspec(dllimport)
  24126. HANDLE
  24127. __stdcall
  24128. RegisterEventSourceA (
  24129.              LPCSTR lpUNCServerName,
  24130.              LPCSTR lpSourceName
  24131.     );
  24132. __declspec(dllimport)
  24133. HANDLE
  24134. __stdcall
  24135. RegisterEventSourceW (
  24136.              LPCWSTR lpUNCServerName,
  24137.              LPCWSTR lpSourceName
  24138.     );
  24139.  
  24140.  
  24141.  
  24142.  
  24143.  
  24144.  
  24145. __declspec(dllimport)
  24146. HANDLE
  24147. __stdcall
  24148. OpenBackupEventLogA (
  24149.              LPCSTR lpUNCServerName,
  24150.              LPCSTR lpFileName
  24151.     );
  24152. __declspec(dllimport)
  24153. HANDLE
  24154. __stdcall
  24155. OpenBackupEventLogW (
  24156.              LPCWSTR lpUNCServerName,
  24157.              LPCWSTR lpFileName
  24158.     );
  24159.  
  24160.  
  24161.  
  24162.  
  24163.  
  24164.  
  24165. __declspec(dllimport)
  24166. BOOL
  24167. __stdcall
  24168. ReadEventLogA (
  24169.           HANDLE hEventLog,
  24170.           DWORD dwReadFlags,
  24171.           DWORD dwRecordOffset,
  24172.                                                               LPVOID lpBuffer,
  24173.           DWORD nNumberOfBytesToRead,
  24174.           DWORD *pnBytesRead,
  24175.           DWORD *pnMinNumberOfBytesNeeded
  24176.     );
  24177. __declspec(dllimport)
  24178. BOOL
  24179. __stdcall
  24180. ReadEventLogW (
  24181.           HANDLE hEventLog,
  24182.           DWORD dwReadFlags,
  24183.           DWORD dwRecordOffset,
  24184.                                                               LPVOID lpBuffer,
  24185.           DWORD nNumberOfBytesToRead,
  24186.           DWORD *pnBytesRead,
  24187.           DWORD *pnMinNumberOfBytesNeeded
  24188.     );
  24189.  
  24190.  
  24191.  
  24192.  
  24193.  
  24194.  
  24195. __declspec(dllimport)
  24196. BOOL
  24197. __stdcall
  24198. ReportEventA (
  24199.              HANDLE hEventLog,
  24200.              WORD wType,
  24201.              WORD wCategory,
  24202.              DWORD dwEventID,
  24203.              PSID lpUserSid,
  24204.              WORD wNumStrings,
  24205.              DWORD dwDataSize,
  24206.                                 LPCSTR *lpStrings,
  24207.                                      LPVOID lpRawData
  24208.     );
  24209. __declspec(dllimport)
  24210. BOOL
  24211. __stdcall
  24212. ReportEventW (
  24213.              HANDLE hEventLog,
  24214.              WORD wType,
  24215.              WORD wCategory,
  24216.              DWORD dwEventID,
  24217.              PSID lpUserSid,
  24218.              WORD wNumStrings,
  24219.              DWORD dwDataSize,
  24220.                                 LPCWSTR *lpStrings,
  24221.                                      LPVOID lpRawData
  24222.     );
  24223. # 6281 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  24224. typedef struct _EVENTLOG_FULL_INFORMATION
  24225. {
  24226.     DWORD dwFull;
  24227. }
  24228. EVENTLOG_FULL_INFORMATION, *LPEVENTLOG_FULL_INFORMATION;
  24229.  
  24230. __declspec(dllimport)
  24231. BOOL
  24232. __stdcall
  24233. GetEventLogInformation (
  24234.           HANDLE hEventLog,
  24235.           DWORD dwInfoLevel,
  24236.                                                       LPVOID lpBuffer,
  24237.           DWORD cbBufSize,
  24238.           LPDWORD pcbBytesNeeded
  24239.     );
  24240. # 6305 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  24241. typedef ULONG OPERATION_ID;
  24242.  
  24243.  
  24244.  
  24245.  
  24246.  
  24247. typedef struct _OPERATION_START_PARAMETERS {
  24248.     ULONG Version;
  24249.     OPERATION_ID OperationId;
  24250.     ULONG Flags;
  24251. } OPERATION_START_PARAMETERS, *POPERATION_START_PARAMETERS;
  24252.  
  24253.  
  24254.  
  24255.  
  24256.  
  24257.  
  24258.  
  24259. typedef struct _OPERATION_END_PARAMETERS {
  24260.     ULONG Version;
  24261.     OPERATION_ID OperationId;
  24262.     ULONG Flags;
  24263. } OPERATION_END_PARAMETERS, *POPERATION_END_PARAMETERS;
  24264.  
  24265.  
  24266.  
  24267. __declspec(dllimport)
  24268. BOOL
  24269. __stdcall
  24270. OperationStart (
  24271.          OPERATION_START_PARAMETERS* OperationStartParams
  24272.     );
  24273.  
  24274. __declspec(dllimport)
  24275. BOOL
  24276. __stdcall
  24277. OperationEnd (
  24278.          OPERATION_END_PARAMETERS* OperationEndParams
  24279.     );
  24280. # 6353 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  24281. __declspec(dllimport)
  24282. BOOL
  24283. __stdcall
  24284. AccessCheckAndAuditAlarmA (
  24285.              LPCSTR SubsystemName,
  24286.              LPVOID HandleId,
  24287.              LPSTR ObjectTypeName,
  24288.              LPSTR ObjectName,
  24289.              PSECURITY_DESCRIPTOR SecurityDescriptor,
  24290.              DWORD DesiredAccess,
  24291.              PGENERIC_MAPPING GenericMapping,
  24292.              BOOL ObjectCreation,
  24293.              LPDWORD GrantedAccess,
  24294.              LPBOOL AccessStatus,
  24295.              LPBOOL pfGenerateOnClose
  24296.     );
  24297.  
  24298.  
  24299.  
  24300.  
  24301.  
  24302.  
  24303. __declspec(dllimport)
  24304. BOOL
  24305. __stdcall
  24306. AccessCheckByTypeAndAuditAlarmA (
  24307.              LPCSTR SubsystemName,
  24308.              LPVOID HandleId,
  24309.              LPCSTR ObjectTypeName,
  24310.              LPCSTR ObjectName,
  24311.              PSECURITY_DESCRIPTOR SecurityDescriptor,
  24312.              PSID PrincipalSelfSid,
  24313.              DWORD DesiredAccess,
  24314.              AUDIT_EVENT_TYPE AuditType,
  24315.              DWORD Flags,
  24316.                                               POBJECT_TYPE_LIST ObjectTypeList,
  24317.              DWORD ObjectTypeListLength,
  24318.              PGENERIC_MAPPING GenericMapping,
  24319.              BOOL ObjectCreation,
  24320.              LPDWORD GrantedAccess,
  24321.              LPBOOL AccessStatus,
  24322.              LPBOOL pfGenerateOnClose
  24323.     );
  24324.  
  24325.  
  24326.  
  24327.  
  24328. __declspec(dllimport)
  24329. BOOL
  24330. __stdcall
  24331. AccessCheckByTypeResultListAndAuditAlarmA (
  24332.              LPCSTR SubsystemName,
  24333.              LPVOID HandleId,
  24334.              LPCSTR ObjectTypeName,
  24335.              LPCSTR ObjectName,
  24336.              PSECURITY_DESCRIPTOR SecurityDescriptor,
  24337.              PSID PrincipalSelfSid,
  24338.              DWORD DesiredAccess,
  24339.              AUDIT_EVENT_TYPE AuditType,
  24340.              DWORD Flags,
  24341.                                               POBJECT_TYPE_LIST ObjectTypeList,
  24342.              DWORD ObjectTypeListLength,
  24343.              PGENERIC_MAPPING GenericMapping,
  24344.              BOOL ObjectCreation,
  24345.                                              LPDWORD GrantedAccess,
  24346.                                              LPDWORD AccessStatusList,
  24347.              LPBOOL pfGenerateOnClose
  24348.     );
  24349.  
  24350.  
  24351.  
  24352.  
  24353. __declspec(dllimport)
  24354. BOOL
  24355. __stdcall
  24356. AccessCheckByTypeResultListAndAuditAlarmByHandleA (
  24357.              LPCSTR SubsystemName,
  24358.              LPVOID HandleId,
  24359.              HANDLE ClientToken,
  24360.              LPCSTR ObjectTypeName,
  24361.              LPCSTR ObjectName,
  24362.              PSECURITY_DESCRIPTOR SecurityDescriptor,
  24363.              PSID PrincipalSelfSid,
  24364.              DWORD DesiredAccess,
  24365.              AUDIT_EVENT_TYPE AuditType,
  24366.              DWORD Flags,
  24367.                                               POBJECT_TYPE_LIST ObjectTypeList,
  24368.              DWORD ObjectTypeListLength,
  24369.              PGENERIC_MAPPING GenericMapping,
  24370.              BOOL ObjectCreation,
  24371.                                              LPDWORD GrantedAccess,
  24372.                                              LPDWORD AccessStatusList,
  24373.              LPBOOL pfGenerateOnClose
  24374.     );
  24375.  
  24376.  
  24377.  
  24378.  
  24379.  
  24380. __declspec(dllimport)
  24381. BOOL
  24382. __stdcall
  24383. ObjectOpenAuditAlarmA (
  24384.              LPCSTR SubsystemName,
  24385.              LPVOID HandleId,
  24386.              LPSTR ObjectTypeName,
  24387.              LPSTR ObjectName,
  24388.              PSECURITY_DESCRIPTOR pSecurityDescriptor,
  24389.              HANDLE ClientToken,
  24390.              DWORD DesiredAccess,
  24391.              DWORD GrantedAccess,
  24392.              PPRIVILEGE_SET Privileges,
  24393.              BOOL ObjectCreation,
  24394.              BOOL AccessGranted,
  24395.              LPBOOL GenerateOnClose
  24396.     );
  24397.  
  24398.  
  24399.  
  24400.  
  24401. __declspec(dllimport)
  24402. BOOL
  24403. __stdcall
  24404. ObjectPrivilegeAuditAlarmA (
  24405.          LPCSTR SubsystemName,
  24406.          LPVOID HandleId,
  24407.          HANDLE ClientToken,
  24408.          DWORD DesiredAccess,
  24409.          PPRIVILEGE_SET Privileges,
  24410.          BOOL AccessGranted
  24411.     );
  24412.  
  24413.  
  24414.  
  24415.  
  24416. __declspec(dllimport)
  24417. BOOL
  24418. __stdcall
  24419. ObjectCloseAuditAlarmA (
  24420.          LPCSTR SubsystemName,
  24421.          LPVOID HandleId,
  24422.          BOOL GenerateOnClose
  24423.     );
  24424.  
  24425.  
  24426.  
  24427.  
  24428. __declspec(dllimport)
  24429. BOOL
  24430. __stdcall
  24431. ObjectDeleteAuditAlarmA (
  24432.          LPCSTR SubsystemName,
  24433.          LPVOID HandleId,
  24434.          BOOL GenerateOnClose
  24435.     );
  24436.  
  24437.  
  24438.  
  24439.  
  24440. __declspec(dllimport)
  24441. BOOL
  24442. __stdcall
  24443. PrivilegedServiceAuditAlarmA (
  24444.          LPCSTR SubsystemName,
  24445.          LPCSTR ServiceName,
  24446.          HANDLE ClientToken,
  24447.          PPRIVILEGE_SET Privileges,
  24448.          BOOL AccessGranted
  24449.     );
  24450.  
  24451.  
  24452.  
  24453.  
  24454.  
  24455. __declspec(dllimport)
  24456. BOOL
  24457. __stdcall
  24458. AddConditionalAce (
  24459.             PACL pAcl,
  24460.             DWORD dwAceRevision,
  24461.             DWORD AceFlags,
  24462.             UCHAR AceType,
  24463.             DWORD AccessMask,
  24464.             PSID pSid,
  24465.                            PWCHAR ConditionStr,
  24466.           DWORD *ReturnLength
  24467.     );
  24468.  
  24469.  
  24470.  
  24471. #pragma endregion
  24472.  
  24473. #pragma region Desktop Family or OneCore Family
  24474.  
  24475.  
  24476. __declspec(dllimport)
  24477. BOOL
  24478. __stdcall
  24479. SetFileSecurityA (
  24480.          LPCSTR lpFileName,
  24481.          SECURITY_INFORMATION SecurityInformation,
  24482.          PSECURITY_DESCRIPTOR pSecurityDescriptor
  24483.     );
  24484.  
  24485.  
  24486.  
  24487.  
  24488. __declspec(dllimport)
  24489. BOOL
  24490. __stdcall
  24491. GetFileSecurityA (
  24492.           LPCSTR lpFileName,
  24493.           SECURITY_INFORMATION RequestedInformation,
  24494.                                                          PSECURITY_DESCRIPTOR pSecurityDescriptor,
  24495.           DWORD nLength,
  24496.           LPDWORD lpnLengthNeeded
  24497.     );
  24498.  
  24499.  
  24500.  
  24501.  
  24502.  
  24503. #pragma endregion
  24504.  
  24505. #pragma region Application Family or OneCore Family
  24506.  
  24507.  
  24508.  
  24509. __declspec(dllimport)
  24510. BOOL
  24511. __stdcall
  24512. ReadDirectoryChangesW(
  24513.                 HANDLE hDirectory,
  24514.                                                            LPVOID lpBuffer,
  24515.                 DWORD nBufferLength,
  24516.                 BOOL bWatchSubtree,
  24517.                 DWORD dwNotifyFilter,
  24518.                 LPDWORD lpBytesReturned,
  24519.                 LPOVERLAPPED lpOverlapped,
  24520.                 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  24521.     );
  24522.  
  24523.  
  24524. __declspec(dllimport)
  24525. BOOL
  24526. __stdcall
  24527. ReadDirectoryChangesExW(
  24528.                 HANDLE hDirectory,
  24529.                                                            LPVOID lpBuffer,
  24530.                 DWORD nBufferLength,
  24531.                 BOOL bWatchSubtree,
  24532.                 DWORD dwNotifyFilter,
  24533.                 LPDWORD lpBytesReturned,
  24534.                 LPOVERLAPPED lpOverlapped,
  24535.                 LPOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine,
  24536.                 READ_DIRECTORY_NOTIFY_INFORMATION_CLASS ReadDirectoryNotifyInformationClass
  24537.     );
  24538.  
  24539.  
  24540.  
  24541.  
  24542. #pragma endregion
  24543.  
  24544. #pragma region Desktop Family
  24545.  
  24546.  
  24547.  
  24548.  
  24549. __declspec(dllimport)
  24550.  
  24551. LPVOID
  24552. __stdcall
  24553. MapViewOfFileExNuma(
  24554.              HANDLE hFileMappingObject,
  24555.              DWORD dwDesiredAccess,
  24556.              DWORD dwFileOffsetHigh,
  24557.              DWORD dwFileOffsetLow,
  24558.              SIZE_T dwNumberOfBytesToMap,
  24559.              LPVOID lpBaseAddress,
  24560.              DWORD nndPreferred
  24561.     );
  24562.  
  24563.  
  24564.  
  24565. __declspec(dllimport)
  24566. BOOL
  24567. __stdcall
  24568. IsBadReadPtr(
  24569.              const void *lp,
  24570.              UINT_PTR ucb
  24571.     );
  24572.  
  24573. __declspec(dllimport)
  24574. BOOL
  24575. __stdcall
  24576. IsBadWritePtr(
  24577.              LPVOID lp,
  24578.              UINT_PTR ucb
  24579.     );
  24580.  
  24581. __declspec(dllimport)
  24582. BOOL
  24583. __stdcall
  24584. IsBadHugeReadPtr(
  24585.              const void *lp,
  24586.              UINT_PTR ucb
  24587.     );
  24588.  
  24589. __declspec(dllimport)
  24590. BOOL
  24591. __stdcall
  24592. IsBadHugeWritePtr(
  24593.              LPVOID lp,
  24594.              UINT_PTR ucb
  24595.     );
  24596.  
  24597. __declspec(dllimport)
  24598. BOOL
  24599. __stdcall
  24600. IsBadCodePtr(
  24601.              FARPROC lpfn
  24602.     );
  24603.  
  24604. __declspec(dllimport)
  24605. BOOL
  24606. __stdcall
  24607. IsBadStringPtrA(
  24608.              LPCSTR lpsz,
  24609.              UINT_PTR ucchMax
  24610.     );
  24611. __declspec(dllimport)
  24612. BOOL
  24613. __stdcall
  24614. IsBadStringPtrW(
  24615.              LPCWSTR lpsz,
  24616.              UINT_PTR ucchMax
  24617.     );
  24618.  
  24619.  
  24620.  
  24621.  
  24622.  
  24623.  
  24624.  
  24625. #pragma endregion
  24626.  
  24627. #pragma region Application Family or OneCore Family
  24628.  
  24629.  
  24630. __declspec(dllimport)
  24631.                            BOOL
  24632. __stdcall
  24633. LookupAccountSidA(
  24634.              LPCSTR lpSystemName,
  24635.          PSID Sid,
  24636.                                                 LPSTR Name,
  24637.              LPDWORD cchName,
  24638.                                                                                 LPSTR ReferencedDomainName,
  24639.             LPDWORD cchReferencedDomainName,
  24640.           PSID_NAME_USE peUse
  24641.     );
  24642. __declspec(dllimport)
  24643.                            BOOL
  24644. __stdcall
  24645. LookupAccountSidW(
  24646.              LPCWSTR lpSystemName,
  24647.          PSID Sid,
  24648.                                                 LPWSTR Name,
  24649.              LPDWORD cchName,
  24650.                                                                                 LPWSTR ReferencedDomainName,
  24651.             LPDWORD cchReferencedDomainName,
  24652.           PSID_NAME_USE peUse
  24653.     );
  24654.  
  24655.  
  24656.  
  24657.  
  24658.  
  24659.  
  24660. __declspec(dllimport)
  24661.                            BOOL
  24662. __stdcall
  24663. LookupAccountNameA(
  24664.              LPCSTR lpSystemName,
  24665.              LPCSTR lpAccountName,
  24666.                                               PSID Sid,
  24667.              LPDWORD cbSid,
  24668.                                                                                 LPSTR ReferencedDomainName,
  24669.              LPDWORD cchReferencedDomainName,
  24670.              PSID_NAME_USE peUse
  24671.     );
  24672. __declspec(dllimport)
  24673.                            BOOL
  24674. __stdcall
  24675. LookupAccountNameW(
  24676.              LPCWSTR lpSystemName,
  24677.              LPCWSTR lpAccountName,
  24678.                                               PSID Sid,
  24679.              LPDWORD cbSid,
  24680.                                                                                 LPWSTR ReferencedDomainName,
  24681.              LPDWORD cchReferencedDomainName,
  24682.              PSID_NAME_USE peUse
  24683.     );
  24684.  
  24685.  
  24686.  
  24687.  
  24688.  
  24689.  
  24690.  
  24691. #pragma endregion
  24692.  
  24693. #pragma region Desktop Family
  24694.  
  24695.  
  24696.  
  24697.  
  24698. __declspec(dllimport)
  24699.                            BOOL
  24700. __stdcall
  24701. LookupAccountNameLocalA(
  24702.              LPCSTR lpAccountName,
  24703.                                               PSID Sid,
  24704.              LPDWORD cbSid,
  24705.                                                                                 LPSTR ReferencedDomainName,
  24706.              LPDWORD cchReferencedDomainName,
  24707.              PSID_NAME_USE peUse
  24708.     );
  24709. __declspec(dllimport)
  24710.                            BOOL
  24711. __stdcall
  24712. LookupAccountNameLocalW(
  24713.              LPCWSTR lpAccountName,
  24714.                                               PSID Sid,
  24715.              LPDWORD cbSid,
  24716.                                                                                 LPWSTR ReferencedDomainName,
  24717.              LPDWORD cchReferencedDomainName,
  24718.              PSID_NAME_USE peUse
  24719.     );
  24720.  
  24721.  
  24722.  
  24723.  
  24724.  
  24725.  
  24726. __declspec(dllimport)
  24727.                            BOOL
  24728. __stdcall
  24729. LookupAccountSidLocalA(
  24730.          PSID Sid,
  24731.                                                 LPSTR Name,
  24732.              LPDWORD cchName,
  24733.                                                                                 LPSTR ReferencedDomainName,
  24734.             LPDWORD cchReferencedDomainName,
  24735.           PSID_NAME_USE peUse
  24736.     );
  24737. __declspec(dllimport)
  24738.                            BOOL
  24739. __stdcall
  24740. LookupAccountSidLocalW(
  24741.          PSID Sid,
  24742.                                                 LPWSTR Name,
  24743.              LPDWORD cchName,
  24744.                                                                                 LPWSTR ReferencedDomainName,
  24745.             LPDWORD cchReferencedDomainName,
  24746.           PSID_NAME_USE peUse
  24747.     );
  24748. # 6851 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  24749. #pragma endregion
  24750.  
  24751. #pragma region Application Family or OneCore Family
  24752.  
  24753.  
  24754. __declspec(dllimport)
  24755. BOOL
  24756. __stdcall
  24757. LookupPrivilegeValueA(
  24758.              LPCSTR lpSystemName,
  24759.              LPCSTR lpName,
  24760.              PLUID lpLuid
  24761.     );
  24762. __declspec(dllimport)
  24763. BOOL
  24764. __stdcall
  24765. LookupPrivilegeValueW(
  24766.              LPCWSTR lpSystemName,
  24767.              LPCWSTR lpName,
  24768.              PLUID lpLuid
  24769.     );
  24770.  
  24771.  
  24772.  
  24773.  
  24774.  
  24775.  
  24776. __declspec(dllimport)
  24777.                            BOOL
  24778. __stdcall
  24779. LookupPrivilegeNameA(
  24780.              LPCSTR lpSystemName,
  24781.              PLUID lpLuid,
  24782.                                                 LPSTR lpName,
  24783.              LPDWORD cchName
  24784.     );
  24785. __declspec(dllimport)
  24786.                            BOOL
  24787. __stdcall
  24788. LookupPrivilegeNameW(
  24789.              LPCWSTR lpSystemName,
  24790.              PLUID lpLuid,
  24791.                                                 LPWSTR lpName,
  24792.              LPDWORD cchName
  24793.     );
  24794.  
  24795.  
  24796.  
  24797.  
  24798.  
  24799.  
  24800. __declspec(dllimport)
  24801.                            BOOL
  24802. __stdcall
  24803. LookupPrivilegeDisplayNameA(
  24804.              LPCSTR lpSystemName,
  24805.              LPCSTR lpName,
  24806.                                                               LPSTR lpDisplayName,
  24807.              LPDWORD cchDisplayName,
  24808.              LPDWORD lpLanguageId
  24809.     );
  24810. __declspec(dllimport)
  24811.                            BOOL
  24812. __stdcall
  24813. LookupPrivilegeDisplayNameW(
  24814.              LPCWSTR lpSystemName,
  24815.              LPCWSTR lpName,
  24816.                                                               LPWSTR lpDisplayName,
  24817.              LPDWORD cchDisplayName,
  24818.              LPDWORD lpLanguageId
  24819.     );
  24820.  
  24821.  
  24822.  
  24823.  
  24824.  
  24825.  
  24826.  
  24827. #pragma endregion
  24828.  
  24829. #pragma region Desktop Family
  24830.  
  24831.  
  24832. __declspec(dllimport)
  24833. BOOL
  24834. __stdcall
  24835. BuildCommDCBA(
  24836.           LPCSTR lpDef,
  24837.           LPDCB lpDCB
  24838.     );
  24839. __declspec(dllimport)
  24840. BOOL
  24841. __stdcall
  24842. BuildCommDCBW(
  24843.           LPCWSTR lpDef,
  24844.           LPDCB lpDCB
  24845.     );
  24846.  
  24847.  
  24848.  
  24849.  
  24850.  
  24851.  
  24852. __declspec(dllimport)
  24853. BOOL
  24854. __stdcall
  24855. BuildCommDCBAndTimeoutsA(
  24856.           LPCSTR lpDef,
  24857.           LPDCB lpDCB,
  24858.           LPCOMMTIMEOUTS lpCommTimeouts
  24859.     );
  24860. __declspec(dllimport)
  24861. BOOL
  24862. __stdcall
  24863. BuildCommDCBAndTimeoutsW(
  24864.           LPCWSTR lpDef,
  24865.           LPDCB lpDCB,
  24866.           LPCOMMTIMEOUTS lpCommTimeouts
  24867.     );
  24868.  
  24869.  
  24870.  
  24871.  
  24872.  
  24873.  
  24874. __declspec(dllimport)
  24875. BOOL
  24876. __stdcall
  24877. CommConfigDialogA(
  24878.              LPCSTR lpszName,
  24879.              HWND hWnd,
  24880.              LPCOMMCONFIG lpCC
  24881.     );
  24882. __declspec(dllimport)
  24883. BOOL
  24884. __stdcall
  24885. CommConfigDialogW(
  24886.              LPCWSTR lpszName,
  24887.              HWND hWnd,
  24888.              LPCOMMCONFIG lpCC
  24889.     );
  24890.  
  24891.  
  24892.  
  24893.  
  24894.  
  24895.  
  24896. __declspec(dllimport)
  24897. BOOL
  24898. __stdcall
  24899. GetDefaultCommConfigA(
  24900.             LPCSTR lpszName,
  24901.                                                 LPCOMMCONFIG lpCC,
  24902.             LPDWORD lpdwSize
  24903.     );
  24904. __declspec(dllimport)
  24905. BOOL
  24906. __stdcall
  24907. GetDefaultCommConfigW(
  24908.             LPCWSTR lpszName,
  24909.                                                 LPCOMMCONFIG lpCC,
  24910.             LPDWORD lpdwSize
  24911.     );
  24912.  
  24913.  
  24914.  
  24915.  
  24916.  
  24917.  
  24918. __declspec(dllimport)
  24919. BOOL
  24920. __stdcall
  24921. SetDefaultCommConfigA(
  24922.          LPCSTR lpszName,
  24923.                              LPCOMMCONFIG lpCC,
  24924.          DWORD dwSize
  24925.     );
  24926. __declspec(dllimport)
  24927. BOOL
  24928. __stdcall
  24929. SetDefaultCommConfigW(
  24930.          LPCWSTR lpszName,
  24931.                              LPCOMMCONFIG lpCC,
  24932.          DWORD dwSize
  24933.     );
  24934.  
  24935.  
  24936.  
  24937.  
  24938.  
  24939.  
  24940.  
  24941. #pragma endregion
  24942.  
  24943. #pragma region Application Family or OneCore Family
  24944.  
  24945.  
  24946.  
  24947.  
  24948.  
  24949.  
  24950.  
  24951.  
  24952. __declspec(dllimport)
  24953.  
  24954. BOOL
  24955. __stdcall
  24956. GetComputerNameA (
  24957.                                             LPSTR lpBuffer,
  24958.             LPDWORD nSize
  24959.     );
  24960. __declspec(dllimport)
  24961.  
  24962. BOOL
  24963. __stdcall
  24964. GetComputerNameW (
  24965.                                             LPWSTR lpBuffer,
  24966.             LPDWORD nSize
  24967.     );
  24968.  
  24969.  
  24970.  
  24971.  
  24972.  
  24973.  
  24974.  
  24975. #pragma endregion
  24976.  
  24977. #pragma region Desktop Family
  24978.  
  24979.  
  24980.  
  24981.  
  24982.  
  24983. __declspec(dllimport)
  24984.  
  24985. BOOL
  24986. __stdcall
  24987. DnsHostnameToComputerNameA (
  24988.             LPCSTR Hostname,
  24989.                                             LPSTR ComputerName,
  24990.             LPDWORD nSize
  24991.     );
  24992. __declspec(dllimport)
  24993.  
  24994. BOOL
  24995. __stdcall
  24996. DnsHostnameToComputerNameW (
  24997.             LPCWSTR Hostname,
  24998.                                             LPWSTR ComputerName,
  24999.             LPDWORD nSize
  25000.     );
  25001. # 7111 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25002. __declspec(dllimport)
  25003. BOOL
  25004. __stdcall
  25005. GetUserNameA (
  25006.                                                 LPSTR lpBuffer,
  25007.             LPDWORD pcbBuffer
  25008.     );
  25009. __declspec(dllimport)
  25010. BOOL
  25011. __stdcall
  25012. GetUserNameW (
  25013.                                                 LPWSTR lpBuffer,
  25014.             LPDWORD pcbBuffer
  25015.     );
  25016. # 7159 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25017. __declspec(dllimport)
  25018. BOOL
  25019. __stdcall
  25020. LogonUserA (
  25021.                 LPCSTR lpszUsername,
  25022.                 LPCSTR lpszDomain,
  25023.                 LPCSTR lpszPassword,
  25024.                 DWORD dwLogonType,
  25025.                 DWORD dwLogonProvider,
  25026.              PHANDLE phToken
  25027.     );
  25028. __declspec(dllimport)
  25029. BOOL
  25030. __stdcall
  25031. LogonUserW (
  25032.                 LPCWSTR lpszUsername,
  25033.                 LPCWSTR lpszDomain,
  25034.                 LPCWSTR lpszPassword,
  25035.                 DWORD dwLogonType,
  25036.                 DWORD dwLogonProvider,
  25037.              PHANDLE phToken
  25038.     );
  25039.  
  25040.  
  25041.  
  25042.  
  25043.  
  25044.  
  25045. __declspec(dllimport)
  25046. BOOL
  25047. __stdcall
  25048. LogonUserExA (
  25049.                     LPCSTR lpszUsername,
  25050.                     LPCSTR lpszDomain,
  25051.                     LPCSTR lpszPassword,
  25052.                     DWORD dwLogonType,
  25053.                     DWORD dwLogonProvider,
  25054.                  PHANDLE phToken,
  25055.                  PSID *ppLogonSid,
  25056.                                                           PVOID *ppProfileBuffer,
  25057.                     LPDWORD pdwProfileLength,
  25058.                     PQUOTA_LIMITS pQuotaLimits
  25059.     );
  25060. __declspec(dllimport)
  25061. BOOL
  25062. __stdcall
  25063. LogonUserExW (
  25064.                     LPCWSTR lpszUsername,
  25065.                     LPCWSTR lpszDomain,
  25066.                     LPCWSTR lpszPassword,
  25067.                     DWORD dwLogonType,
  25068.                     DWORD dwLogonProvider,
  25069.                  PHANDLE phToken,
  25070.                  PSID *ppLogonSid,
  25071.                                                           PVOID *ppProfileBuffer,
  25072.                     LPDWORD pdwProfileLength,
  25073.                     PQUOTA_LIMITS pQuotaLimits
  25074.     );
  25075.  
  25076.  
  25077.  
  25078.  
  25079.  
  25080.  
  25081.  
  25082. #pragma endregion
  25083.  
  25084.  
  25085.  
  25086.  
  25087.  
  25088.  
  25089. #pragma region Desktop Family
  25090. # 7244 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25091. __declspec(dllimport)
  25092.                       BOOL
  25093. __stdcall
  25094. CreateProcessWithLogonW(
  25095.                 LPCWSTR lpUsername,
  25096.                 LPCWSTR lpDomain,
  25097.                 LPCWSTR lpPassword,
  25098.                 DWORD dwLogonFlags,
  25099.                 LPCWSTR lpApplicationName,
  25100.                 LPWSTR lpCommandLine,
  25101.                 DWORD dwCreationFlags,
  25102.                 LPVOID lpEnvironment,
  25103.                 LPCWSTR lpCurrentDirectory,
  25104.                 LPSTARTUPINFOW lpStartupInfo,
  25105.                 LPPROCESS_INFORMATION lpProcessInformation
  25106.       );
  25107.  
  25108. __declspec(dllimport)
  25109.                       BOOL
  25110. __stdcall
  25111. CreateProcessWithTokenW(
  25112.                 HANDLE hToken,
  25113.                 DWORD dwLogonFlags,
  25114.                 LPCWSTR lpApplicationName,
  25115.                 LPWSTR lpCommandLine,
  25116.                 DWORD dwCreationFlags,
  25117.                 LPVOID lpEnvironment,
  25118.                 LPCWSTR lpCurrentDirectory,
  25119.                 LPSTARTUPINFOW lpStartupInfo,
  25120.                 LPPROCESS_INFORMATION lpProcessInformation
  25121.       );
  25122.  
  25123.  
  25124.  
  25125. __declspec(dllimport)
  25126. BOOL
  25127. __stdcall
  25128. IsTokenUntrusted(
  25129.          HANDLE TokenHandle
  25130.     );
  25131.  
  25132.  
  25133.  
  25134.  
  25135.  
  25136.  
  25137.  
  25138. __declspec(dllimport)
  25139. BOOL
  25140. __stdcall
  25141. RegisterWaitForSingleObject(
  25142.              PHANDLE phNewWaitObject,
  25143.                 HANDLE hObject,
  25144.                 WAITORTIMERCALLBACK Callback,
  25145.                 PVOID Context,
  25146.                 ULONG dwMilliseconds,
  25147.                 ULONG dwFlags
  25148.     );
  25149.  
  25150. __declspec(dllimport)
  25151.  
  25152. BOOL
  25153. __stdcall
  25154. UnregisterWait(
  25155.          HANDLE WaitHandle
  25156.     );
  25157.  
  25158. __declspec(dllimport)
  25159. BOOL
  25160. __stdcall
  25161. BindIoCompletionCallback (
  25162.          HANDLE FileHandle,
  25163.          LPOVERLAPPED_COMPLETION_ROUTINE Function,
  25164.          ULONG Flags
  25165.     );
  25166.  
  25167. __declspec(dllimport)
  25168. HANDLE
  25169. __stdcall
  25170. SetTimerQueueTimer(
  25171.              HANDLE TimerQueue,
  25172.              WAITORTIMERCALLBACK Callback,
  25173.              PVOID Parameter,
  25174.              DWORD DueTime,
  25175.              DWORD Period,
  25176.              BOOL PreferIo
  25177.     );
  25178.  
  25179. __declspec(dllimport)
  25180.  
  25181. BOOL
  25182. __stdcall
  25183. CancelTimerQueueTimer(
  25184.              HANDLE TimerQueue,
  25185.              HANDLE Timer
  25186.     );
  25187.  
  25188. __declspec(dllimport)
  25189.  
  25190. BOOL
  25191. __stdcall
  25192. DeleteTimerQueue(
  25193.          HANDLE TimerQueue
  25194.     );
  25195. # 7361 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25196. __inline
  25197. void
  25198. InitializeThreadpoolEnvironment(
  25199.           PTP_CALLBACK_ENVIRON pcbe
  25200.     )
  25201. {
  25202.     TpInitializeCallbackEnviron(pcbe);
  25203. }
  25204.  
  25205. __inline
  25206. void
  25207. SetThreadpoolCallbackPool(
  25208.             PTP_CALLBACK_ENVIRON pcbe,
  25209.             PTP_POOL ptpp
  25210.     )
  25211. {
  25212.     TpSetCallbackThreadpool(pcbe, ptpp);
  25213. }
  25214.  
  25215. __inline
  25216. void
  25217. SetThreadpoolCallbackCleanupGroup(
  25218.              PTP_CALLBACK_ENVIRON pcbe,
  25219.              PTP_CLEANUP_GROUP ptpcg,
  25220.              PTP_CLEANUP_GROUP_CANCEL_CALLBACK pfng
  25221.     )
  25222. {
  25223.     TpSetCallbackCleanupGroup(pcbe, ptpcg, pfng);
  25224. }
  25225.  
  25226. __inline
  25227. void
  25228. SetThreadpoolCallbackRunsLong(
  25229.             PTP_CALLBACK_ENVIRON pcbe
  25230.     )
  25231. {
  25232.     TpSetCallbackLongFunction(pcbe);
  25233. }
  25234.  
  25235. __inline
  25236. void
  25237. SetThreadpoolCallbackLibrary(
  25238.             PTP_CALLBACK_ENVIRON pcbe,
  25239.             PVOID mod
  25240.     )
  25241. {
  25242.     TpSetCallbackRaceWithDll(pcbe, mod);
  25243. }
  25244.  
  25245.  
  25246.  
  25247. __inline
  25248. void
  25249. SetThreadpoolCallbackPriority(
  25250.             PTP_CALLBACK_ENVIRON pcbe,
  25251.             TP_CALLBACK_PRIORITY Priority
  25252.     )
  25253. {
  25254.     TpSetCallbackPriority(pcbe, Priority);
  25255. }
  25256.  
  25257.  
  25258.  
  25259. __inline
  25260. void
  25261. DestroyThreadpoolEnvironment(
  25262.             PTP_CALLBACK_ENVIRON pcbe
  25263.     )
  25264. {
  25265.     TpDestroyCallbackEnviron(pcbe);
  25266. }
  25267. # 7443 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25268. #pragma region Desktop Family
  25269.  
  25270.  
  25271.  
  25272.  
  25273. __inline
  25274. void
  25275. SetThreadpoolCallbackPersistent(
  25276.             PTP_CALLBACK_ENVIRON pcbe
  25277.     )
  25278. {
  25279.     TpSetCallbackPersistent(pcbe);
  25280. }
  25281.  
  25282.  
  25283.  
  25284.  
  25285. #pragma endregion
  25286.  
  25287. #pragma region Application Family or OneCore Family
  25288.  
  25289.  
  25290.  
  25291.  
  25292.  
  25293.  
  25294. __declspec(dllimport)
  25295.  
  25296. HANDLE
  25297. __stdcall
  25298. CreatePrivateNamespaceA(
  25299.              LPSECURITY_ATTRIBUTES lpPrivateNamespaceAttributes,
  25300.              LPVOID lpBoundaryDescriptor,
  25301.              LPCSTR lpAliasPrefix
  25302.     );
  25303.  
  25304.  
  25305.  
  25306.  
  25307.  
  25308.  
  25309.  
  25310. __declspec(dllimport)
  25311.  
  25312. HANDLE
  25313. __stdcall
  25314. OpenPrivateNamespaceA(
  25315.              LPVOID lpBoundaryDescriptor,
  25316.              LPCSTR lpAliasPrefix
  25317.     );
  25318. # 7505 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25319. __declspec(dllimport)
  25320.  
  25321. HANDLE
  25322. __stdcall
  25323. CreateBoundaryDescriptorA(
  25324.          LPCSTR Name,
  25325.          ULONG Flags
  25326.     );
  25327.  
  25328.  
  25329.  
  25330.  
  25331.  
  25332.  
  25333.  
  25334.  
  25335. #pragma endregion
  25336.  
  25337. #pragma region Desktop Family
  25338.  
  25339.  
  25340. __declspec(dllimport)
  25341. BOOL
  25342. __stdcall
  25343. AddIntegrityLabelToBoundaryDescriptor(
  25344.             HANDLE * BoundaryDescriptor,
  25345.          PSID IntegrityLabel
  25346.     );
  25347.  
  25348.  
  25349. #pragma endregion
  25350.  
  25351.  
  25352.  
  25353. #pragma region Desktop Family
  25354. # 7556 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25355. typedef struct tagHW_PROFILE_INFOA {
  25356.     DWORD dwDockInfo;
  25357.     CHAR szHwProfileGuid[39];
  25358.     CHAR szHwProfileName[80];
  25359. } HW_PROFILE_INFOA, *LPHW_PROFILE_INFOA;
  25360. typedef struct tagHW_PROFILE_INFOW {
  25361.     DWORD dwDockInfo;
  25362.     WCHAR szHwProfileGuid[39];
  25363.     WCHAR szHwProfileName[80];
  25364. } HW_PROFILE_INFOW, *LPHW_PROFILE_INFOW;
  25365.  
  25366.  
  25367.  
  25368.  
  25369. typedef HW_PROFILE_INFOA HW_PROFILE_INFO;
  25370. typedef LPHW_PROFILE_INFOA LPHW_PROFILE_INFO;
  25371.  
  25372.  
  25373.  
  25374. __declspec(dllimport)
  25375. BOOL
  25376. __stdcall
  25377. GetCurrentHwProfileA (
  25378.           LPHW_PROFILE_INFOA lpHwProfileInfo
  25379.     );
  25380. __declspec(dllimport)
  25381. BOOL
  25382. __stdcall
  25383. GetCurrentHwProfileW (
  25384.           LPHW_PROFILE_INFOW lpHwProfileInfo
  25385.     );
  25386.  
  25387.  
  25388.  
  25389.  
  25390.  
  25391.  
  25392.  
  25393. __declspec(dllimport)
  25394. BOOL
  25395. __stdcall
  25396. VerifyVersionInfoA(
  25397.             LPOSVERSIONINFOEXA lpVersionInformation,
  25398.             DWORD dwTypeMask,
  25399.             DWORDLONG dwlConditionMask
  25400.     );
  25401. __declspec(dllimport)
  25402. BOOL
  25403. __stdcall
  25404. VerifyVersionInfoW(
  25405.             LPOSVERSIONINFOEXW lpVersionInformation,
  25406.             DWORD dwTypeMask,
  25407.             DWORDLONG dwlConditionMask
  25408.     );
  25409.  
  25410.  
  25411.  
  25412.  
  25413.  
  25414.  
  25415.  
  25416.  
  25417. #pragma endregion
  25418.  
  25419.  
  25420.  
  25421.  
  25422.  
  25423.  
  25424. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winerror.h" 1 3
  25425. # 10 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winerror.h" 3
  25426. #pragma option push -b -a8 -pc -A- -w-pun
  25427. # 28507 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winerror.h" 3
  25428. __inline HRESULT HRESULT_FROM_WIN32(unsigned long x) { return (HRESULT)(x) <= 0 ? (HRESULT)(x) : (HRESULT) (((x) & 0x0000FFFF) | (7 << 16) | 0x80000000);}
  25429. # 61043 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winerror.h" 3
  25430. #pragma option pop
  25431. # 7624 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  25432.  
  25433. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\timezoneapi.h" 1 3
  25434. #pragma option push -b -a8 -pc -A- -w-pun
  25435. # 29 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\timezoneapi.h" 3
  25436. #pragma region Application Family or OneCore Family
  25437.  
  25438.  
  25439.  
  25440.  
  25441.  
  25442.  
  25443. typedef struct _TIME_ZONE_INFORMATION {
  25444.     LONG Bias;
  25445.     WCHAR StandardName[ 32 ];
  25446.     SYSTEMTIME StandardDate;
  25447.     LONG StandardBias;
  25448.     WCHAR DaylightName[ 32 ];
  25449.     SYSTEMTIME DaylightDate;
  25450.     LONG DaylightBias;
  25451. } TIME_ZONE_INFORMATION, *PTIME_ZONE_INFORMATION, *LPTIME_ZONE_INFORMATION;
  25452.  
  25453. typedef struct _TIME_DYNAMIC_ZONE_INFORMATION {
  25454.     LONG Bias;
  25455.     WCHAR StandardName[ 32 ];
  25456.     SYSTEMTIME StandardDate;
  25457.     LONG StandardBias;
  25458.     WCHAR DaylightName[ 32 ];
  25459.     SYSTEMTIME DaylightDate;
  25460.     LONG DaylightBias;
  25461.     WCHAR TimeZoneKeyName[ 128 ];
  25462.     BOOLEAN DynamicDaylightTimeDisabled;
  25463. } DYNAMIC_TIME_ZONE_INFORMATION, *PDYNAMIC_TIME_ZONE_INFORMATION;
  25464.  
  25465. __declspec(dllimport)
  25466.  
  25467. BOOL
  25468. __stdcall
  25469. SystemTimeToTzSpecificLocalTime(
  25470.              const TIME_ZONE_INFORMATION* lpTimeZoneInformation,
  25471.          const SYSTEMTIME* lpUniversalTime,
  25472.           LPSYSTEMTIME lpLocalTime
  25473.     );
  25474.  
  25475.  
  25476. __declspec(dllimport)
  25477.  
  25478. BOOL
  25479. __stdcall
  25480. TzSpecificLocalTimeToSystemTime(
  25481.              const TIME_ZONE_INFORMATION* lpTimeZoneInformation,
  25482.          const SYSTEMTIME* lpLocalTime,
  25483.           LPSYSTEMTIME lpUniversalTime
  25484.     );
  25485.  
  25486.  
  25487. __declspec(dllimport)
  25488.  
  25489. BOOL
  25490. __stdcall
  25491. FileTimeToSystemTime(
  25492.          const FILETIME* lpFileTime,
  25493.           LPSYSTEMTIME lpSystemTime
  25494.     );
  25495.  
  25496.  
  25497. __declspec(dllimport)
  25498.  
  25499. BOOL
  25500. __stdcall
  25501. SystemTimeToFileTime(
  25502.          const SYSTEMTIME* lpSystemTime,
  25503.           LPFILETIME lpFileTime
  25504.     );
  25505.  
  25506.  
  25507. __declspec(dllimport)
  25508.  
  25509. DWORD
  25510. __stdcall
  25511. GetTimeZoneInformation(
  25512.           LPTIME_ZONE_INFORMATION lpTimeZoneInformation
  25513.     );
  25514.  
  25515.  
  25516.  
  25517. #pragma endregion
  25518.  
  25519. #pragma region Desktop Family or OneCore Family
  25520.  
  25521.  
  25522. __declspec(dllimport)
  25523. BOOL
  25524. __stdcall
  25525. SetTimeZoneInformation(
  25526.          const TIME_ZONE_INFORMATION* lpTimeZoneInformation
  25527.     );
  25528.  
  25529.  
  25530.  
  25531.  
  25532. __declspec(dllimport)
  25533. BOOL
  25534. __stdcall
  25535. SetDynamicTimeZoneInformation(
  25536.          const DYNAMIC_TIME_ZONE_INFORMATION* lpTimeZoneInformation
  25537.     );
  25538.  
  25539.  
  25540.  
  25541.  
  25542.  
  25543. #pragma endregion
  25544.  
  25545. #pragma region Application Family or OneCore Family
  25546.  
  25547.  
  25548.  
  25549.  
  25550. __declspec(dllimport)
  25551.  
  25552. DWORD
  25553. __stdcall
  25554. GetDynamicTimeZoneInformation(
  25555.           PDYNAMIC_TIME_ZONE_INFORMATION pTimeZoneInformation
  25556.     );
  25557.  
  25558.  
  25559.  
  25560.  
  25561.  
  25562.  
  25563.  
  25564. BOOL
  25565. __stdcall
  25566. GetTimeZoneInformationForYear(
  25567.          USHORT wYear,
  25568.              PDYNAMIC_TIME_ZONE_INFORMATION pdtzi,
  25569.           LPTIME_ZONE_INFORMATION ptzi
  25570.     );
  25571. # 172 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\timezoneapi.h" 3
  25572. __declspec(dllimport)
  25573.  
  25574. DWORD
  25575. __stdcall
  25576. EnumDynamicTimeZoneInformation(
  25577.          const DWORD dwIndex,
  25578.           PDYNAMIC_TIME_ZONE_INFORMATION lpTimeZoneInformation
  25579.     );
  25580.  
  25581.  
  25582. __declspec(dllimport)
  25583.  
  25584. DWORD
  25585. __stdcall
  25586. GetDynamicTimeZoneInformationEffectiveYears(
  25587.          const PDYNAMIC_TIME_ZONE_INFORMATION lpTimeZoneInformation,
  25588.           LPDWORD FirstYear,
  25589.           LPDWORD LastYear
  25590.     );
  25591.  
  25592.  
  25593. __declspec(dllimport)
  25594.  
  25595. BOOL
  25596. __stdcall
  25597. SystemTimeToTzSpecificLocalTimeEx(
  25598.              const DYNAMIC_TIME_ZONE_INFORMATION* lpTimeZoneInformation,
  25599.          const SYSTEMTIME* lpUniversalTime,
  25600.           LPSYSTEMTIME lpLocalTime
  25601.     );
  25602.  
  25603.  
  25604. __declspec(dllimport)
  25605.  
  25606. BOOL
  25607. __stdcall
  25608. TzSpecificLocalTimeToSystemTimeEx(
  25609.              const DYNAMIC_TIME_ZONE_INFORMATION* lpTimeZoneInformation,
  25610.          const SYSTEMTIME* lpLocalTime,
  25611.           LPSYSTEMTIME lpUniversalTime
  25612.     );
  25613.  
  25614.  
  25615.  
  25616.  
  25617.  
  25618. #pragma endregion
  25619. # 228 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\timezoneapi.h" 3
  25620. #pragma option pop
  25621. # 7625 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 2 3
  25622.  
  25623.  
  25624. #pragma region Desktop Family
  25625. # 7642 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25626. __declspec(dllimport)
  25627. BOOL
  25628. __stdcall
  25629. SetSystemPowerState(
  25630.          BOOL fSuspend,
  25631.          BOOL fForce
  25632.     );
  25633.  
  25634.  
  25635.  
  25636.  
  25637. #pragma endregion
  25638.  
  25639. #pragma region Desktop or PC Family
  25640. # 7681 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25641. typedef struct _SYSTEM_POWER_STATUS {
  25642.     BYTE ACLineStatus;
  25643.     BYTE BatteryFlag;
  25644.     BYTE BatteryLifePercent;
  25645.     BYTE SystemStatusFlag;
  25646.     DWORD BatteryLifeTime;
  25647.     DWORD BatteryFullLifeTime;
  25648. } SYSTEM_POWER_STATUS, *LPSYSTEM_POWER_STATUS;
  25649.  
  25650. __declspec(dllimport)
  25651. BOOL
  25652. __stdcall
  25653. GetSystemPowerStatus(
  25654.           LPSYSTEM_POWER_STATUS lpSystemPowerStatus
  25655.     );
  25656.  
  25657.  
  25658.  
  25659.  
  25660. #pragma endregion
  25661.  
  25662.  
  25663.  
  25664.  
  25665.  
  25666.  
  25667. #pragma region Desktop Family
  25668.  
  25669.  
  25670. __declspec(dllimport)
  25671. BOOL
  25672. __stdcall
  25673. MapUserPhysicalPagesScatter(
  25674.                               PVOID *VirtualAddresses,
  25675.          ULONG_PTR NumberOfPages,
  25676.                                   PULONG_PTR PageArray
  25677.     );
  25678.  
  25679.  
  25680. #pragma endregion
  25681.  
  25682. #pragma region Desktop Family
  25683.  
  25684.  
  25685. __declspec(dllimport)
  25686.  
  25687. HANDLE
  25688. __stdcall
  25689. CreateJobObjectA(
  25690.              LPSECURITY_ATTRIBUTES lpJobAttributes,
  25691.              LPCSTR lpName
  25692.     );
  25693.  
  25694.  
  25695.  
  25696.  
  25697.  
  25698.  
  25699.  
  25700. __declspec(dllimport)
  25701.  
  25702. HANDLE
  25703. __stdcall
  25704. OpenJobObjectA(
  25705.          DWORD dwDesiredAccess,
  25706.          BOOL bInheritHandle,
  25707.          LPCSTR lpName
  25708.     );
  25709.  
  25710.  
  25711.  
  25712.  
  25713.  
  25714.  
  25715.  
  25716.  
  25717. #pragma endregion
  25718.  
  25719. #pragma region Desktop Family
  25720.  
  25721.  
  25722. __declspec(dllimport)
  25723. BOOL
  25724. __stdcall
  25725. CreateJobSet (
  25726.          ULONG NumJob,
  25727.                        PJOB_SET_ARRAY UserJobSet,
  25728.          ULONG Flags);
  25729.  
  25730.  
  25731. #pragma endregion
  25732.  
  25733. #pragma region Desktop Family or OneCore Family
  25734.  
  25735.  
  25736. __declspec(dllimport)
  25737. HANDLE
  25738. __stdcall
  25739. FindFirstVolumeA(
  25740.                                   LPSTR lpszVolumeName,
  25741.          DWORD cchBufferLength
  25742.     );
  25743.  
  25744.  
  25745.  
  25746.  
  25747. __declspec(dllimport)
  25748. BOOL
  25749. __stdcall
  25750. FindNextVolumeA(
  25751.             HANDLE hFindVolume,
  25752.                                   LPSTR lpszVolumeName,
  25753.             DWORD cchBufferLength
  25754.     );
  25755.  
  25756.  
  25757.  
  25758.  
  25759.  
  25760. #pragma endregion
  25761.  
  25762. #pragma region Desktop Family
  25763.  
  25764.  
  25765. __declspec(dllimport)
  25766. HANDLE
  25767. __stdcall
  25768. FindFirstVolumeMountPointA(
  25769.          LPCSTR lpszRootPathName,
  25770.                                   LPSTR lpszVolumeMountPoint,
  25771.          DWORD cchBufferLength
  25772.     );
  25773. __declspec(dllimport)
  25774. HANDLE
  25775. __stdcall
  25776. FindFirstVolumeMountPointW(
  25777.          LPCWSTR lpszRootPathName,
  25778.                                   LPWSTR lpszVolumeMountPoint,
  25779.          DWORD cchBufferLength
  25780.     );
  25781.  
  25782.  
  25783.  
  25784.  
  25785.  
  25786.  
  25787. __declspec(dllimport)
  25788. BOOL
  25789. __stdcall
  25790. FindNextVolumeMountPointA(
  25791.          HANDLE hFindVolumeMountPoint,
  25792.                                   LPSTR lpszVolumeMountPoint,
  25793.          DWORD cchBufferLength
  25794.     );
  25795. __declspec(dllimport)
  25796. BOOL
  25797. __stdcall
  25798. FindNextVolumeMountPointW(
  25799.          HANDLE hFindVolumeMountPoint,
  25800.                                   LPWSTR lpszVolumeMountPoint,
  25801.          DWORD cchBufferLength
  25802.     );
  25803.  
  25804.  
  25805.  
  25806.  
  25807.  
  25808.  
  25809. __declspec(dllimport)
  25810. BOOL
  25811. __stdcall
  25812. FindVolumeMountPointClose(
  25813.          HANDLE hFindVolumeMountPoint
  25814.     );
  25815.  
  25816. __declspec(dllimport)
  25817. BOOL
  25818. __stdcall
  25819. SetVolumeMountPointA(
  25820.          LPCSTR lpszVolumeMountPoint,
  25821.          LPCSTR lpszVolumeName
  25822.     );
  25823. __declspec(dllimport)
  25824. BOOL
  25825. __stdcall
  25826. SetVolumeMountPointW(
  25827.          LPCWSTR lpszVolumeMountPoint,
  25828.          LPCWSTR lpszVolumeName
  25829.     );
  25830.  
  25831.  
  25832.  
  25833.  
  25834.  
  25835.  
  25836.  
  25837. #pragma endregion
  25838.  
  25839. #pragma region Application Family or OneCore Family
  25840.  
  25841.  
  25842. __declspec(dllimport)
  25843. BOOL
  25844. __stdcall
  25845. DeleteVolumeMountPointA(
  25846.          LPCSTR lpszVolumeMountPoint
  25847.     );
  25848.  
  25849.  
  25850.  
  25851.  
  25852.  
  25853. #pragma endregion
  25854.  
  25855. #pragma region Desktop Family or OneCore Family
  25856.  
  25857.  
  25858.  
  25859.  
  25860.  
  25861.  
  25862. __declspec(dllimport)
  25863. BOOL
  25864. __stdcall
  25865. GetVolumeNameForVolumeMountPointA(
  25866.          LPCSTR lpszVolumeMountPoint,
  25867.                                   LPSTR lpszVolumeName,
  25868.          DWORD cchBufferLength
  25869. );
  25870.  
  25871. __declspec(dllimport)
  25872. BOOL
  25873. __stdcall
  25874. GetVolumePathNameA(
  25875.          LPCSTR lpszFileName,
  25876.                                   LPSTR lpszVolumePathName,
  25877.          DWORD cchBufferLength
  25878.     );
  25879.  
  25880.  
  25881.  
  25882.  
  25883.  
  25884. #pragma endregion
  25885.  
  25886.  
  25887.  
  25888. #pragma region Desktop Family or OneCore Family
  25889.  
  25890.  
  25891.  
  25892.  
  25893. __declspec(dllimport)
  25894. BOOL
  25895. __stdcall
  25896. GetVolumePathNamesForVolumeNameA(
  25897.           LPCSTR lpszVolumeName,
  25898.                                                                                           LPCH lpszVolumePathNames,
  25899.           DWORD cchBufferLength,
  25900.           PDWORD lpcchReturnLength
  25901.     );
  25902. # 7960 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  25903. typedef struct tagACTCTXA {
  25904.     ULONG cbSize;
  25905.     DWORD dwFlags;
  25906.     LPCSTR lpSource;
  25907.     USHORT wProcessorArchitecture;
  25908.     LANGID wLangId;
  25909.     LPCSTR lpAssemblyDirectory;
  25910.     LPCSTR lpResourceName;
  25911.     LPCSTR lpApplicationName;
  25912.     HMODULE hModule;
  25913. } ACTCTXA, *PACTCTXA;
  25914. typedef struct tagACTCTXW {
  25915.     ULONG cbSize;
  25916.     DWORD dwFlags;
  25917.     LPCWSTR lpSource;
  25918.     USHORT wProcessorArchitecture;
  25919.     LANGID wLangId;
  25920.     LPCWSTR lpAssemblyDirectory;
  25921.     LPCWSTR lpResourceName;
  25922.     LPCWSTR lpApplicationName;
  25923.     HMODULE hModule;
  25924. } ACTCTXW, *PACTCTXW;
  25925.  
  25926.  
  25927.  
  25928.  
  25929. typedef ACTCTXA ACTCTX;
  25930. typedef PACTCTXA PACTCTX;
  25931.  
  25932.  
  25933. typedef const ACTCTXA *PCACTCTXA;
  25934. typedef const ACTCTXW *PCACTCTXW;
  25935.  
  25936.  
  25937.  
  25938. typedef PCACTCTXA PCACTCTX;
  25939.  
  25940.  
  25941.  
  25942.  
  25943. __declspec(dllimport)
  25944. HANDLE
  25945. __stdcall
  25946. CreateActCtxA(
  25947.          PCACTCTXA pActCtx
  25948.     );
  25949. __declspec(dllimport)
  25950. HANDLE
  25951. __stdcall
  25952. CreateActCtxW(
  25953.          PCACTCTXW pActCtx
  25954.     );
  25955.  
  25956.  
  25957.  
  25958.  
  25959.  
  25960.  
  25961. __declspec(dllimport)
  25962. void
  25963. __stdcall
  25964. AddRefActCtx(
  25965.             HANDLE hActCtx
  25966.     );
  25967.  
  25968.  
  25969. __declspec(dllimport)
  25970. void
  25971. __stdcall
  25972. ReleaseActCtx(
  25973.             HANDLE hActCtx
  25974.     );
  25975.  
  25976. __declspec(dllimport)
  25977. BOOL
  25978. __stdcall
  25979. ZombifyActCtx(
  25980.             HANDLE hActCtx
  25981.     );
  25982.  
  25983.  
  25984.  
  25985. __declspec(dllimport)
  25986. BOOL
  25987. __stdcall
  25988. ActivateActCtx(
  25989.                 HANDLE hActCtx,
  25990.             ULONG_PTR *lpCookie
  25991.     );
  25992.  
  25993.  
  25994.  
  25995.  
  25996.  
  25997. __declspec(dllimport)
  25998. BOOL
  25999. __stdcall
  26000. DeactivateActCtx(
  26001.          DWORD dwFlags,
  26002.          ULONG_PTR ulCookie
  26003.     );
  26004.  
  26005. __declspec(dllimport)
  26006. BOOL
  26007. __stdcall
  26008. GetCurrentActCtx(
  26009.              HANDLE *lphActCtx);
  26010.  
  26011.  
  26012. typedef struct tagACTCTX_SECTION_KEYED_DATA_2600 {
  26013.     ULONG cbSize;
  26014.     ULONG ulDataFormatVersion;
  26015.     PVOID lpData;
  26016.     ULONG ulLength;
  26017.     PVOID lpSectionGlobalData;
  26018.     ULONG ulSectionGlobalDataLength;
  26019.     PVOID lpSectionBase;
  26020.     ULONG ulSectionTotalLength;
  26021.     HANDLE hActCtx;
  26022.     ULONG ulAssemblyRosterIndex;
  26023. } ACTCTX_SECTION_KEYED_DATA_2600, *PACTCTX_SECTION_KEYED_DATA_2600;
  26024. typedef const ACTCTX_SECTION_KEYED_DATA_2600 * PCACTCTX_SECTION_KEYED_DATA_2600;
  26025.  
  26026. typedef struct tagACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA {
  26027.     PVOID lpInformation;
  26028.     PVOID lpSectionBase;
  26029.     ULONG ulSectionLength;
  26030.     PVOID lpSectionGlobalDataBase;
  26031.     ULONG ulSectionGlobalDataLength;
  26032. } ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA, *PACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
  26033. typedef const ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA *PCACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA;
  26034.  
  26035. typedef struct tagACTCTX_SECTION_KEYED_DATA {
  26036.     ULONG cbSize;
  26037.     ULONG ulDataFormatVersion;
  26038.     PVOID lpData;
  26039.     ULONG ulLength;
  26040.     PVOID lpSectionGlobalData;
  26041.     ULONG ulSectionGlobalDataLength;
  26042.     PVOID lpSectionBase;
  26043.     ULONG ulSectionTotalLength;
  26044.     HANDLE hActCtx;
  26045.     ULONG ulAssemblyRosterIndex;
  26046.  
  26047.     ULONG ulFlags;
  26048.     ACTCTX_SECTION_KEYED_DATA_ASSEMBLY_METADATA AssemblyMetadata;
  26049. } ACTCTX_SECTION_KEYED_DATA, *PACTCTX_SECTION_KEYED_DATA;
  26050. typedef const ACTCTX_SECTION_KEYED_DATA * PCACTCTX_SECTION_KEYED_DATA;
  26051. # 8116 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26052. __declspec(dllimport)
  26053. BOOL
  26054. __stdcall
  26055. FindActCtxSectionStringA(
  26056.                DWORD dwFlags,
  26057.                const GUID *lpExtensionGuid,
  26058.                ULONG ulSectionId,
  26059.                LPCSTR lpStringToFind,
  26060.                PACTCTX_SECTION_KEYED_DATA ReturnedData
  26061.     );
  26062.  
  26063. __declspec(dllimport)
  26064. BOOL
  26065. __stdcall
  26066. FindActCtxSectionStringW(
  26067.                DWORD dwFlags,
  26068.                const GUID *lpExtensionGuid,
  26069.                ULONG ulSectionId,
  26070.                LPCWSTR lpStringToFind,
  26071.                PACTCTX_SECTION_KEYED_DATA ReturnedData
  26072.     );
  26073.  
  26074.  
  26075.  
  26076.  
  26077.  
  26078.  
  26079. __declspec(dllimport)
  26080. BOOL
  26081. __stdcall
  26082. FindActCtxSectionGuid(
  26083.                DWORD dwFlags,
  26084.                const GUID *lpExtensionGuid,
  26085.                ULONG ulSectionId,
  26086.                const GUID *lpGuidToFind,
  26087.                PACTCTX_SECTION_KEYED_DATA ReturnedData
  26088.     );
  26089.  
  26090.  
  26091.  
  26092.  
  26093.  
  26094. typedef struct _ACTIVATION_CONTEXT_BASIC_INFORMATION {
  26095.     HANDLE hActCtx;
  26096.     DWORD dwFlags;
  26097. } ACTIVATION_CONTEXT_BASIC_INFORMATION, *PACTIVATION_CONTEXT_BASIC_INFORMATION;
  26098.  
  26099. typedef const struct _ACTIVATION_CONTEXT_BASIC_INFORMATION *PCACTIVATION_CONTEXT_BASIC_INFORMATION;
  26100. # 8206 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26101. __declspec(dllimport)
  26102. BOOL
  26103. __stdcall
  26104. QueryActCtxW(
  26105.               DWORD dwFlags,
  26106.               HANDLE hActCtx,
  26107.               PVOID pvSubInstance,
  26108.               ULONG ulInfoClass,
  26109.                                                                PVOID pvBuffer,
  26110.               SIZE_T cbBuffer,
  26111.               SIZE_T *pcbWrittenOrRequired
  26112.     );
  26113.  
  26114. typedef BOOL (__stdcall * PQUERYACTCTXW_FUNC)(
  26115.               DWORD dwFlags,
  26116.               HANDLE hActCtx,
  26117.               PVOID pvSubInstance,
  26118.               ULONG ulInfoClass,
  26119.                                                                PVOID pvBuffer,
  26120.               SIZE_T cbBuffer,
  26121.               SIZE_T *pcbWrittenOrRequired
  26122.     );
  26123.  
  26124.  
  26125.  
  26126.  
  26127. #pragma endregion
  26128.  
  26129. #pragma region Desktop Family
  26130.  
  26131.  
  26132.  
  26133.  
  26134.  
  26135. __declspec(dllimport)
  26136. DWORD
  26137. __stdcall
  26138. WTSGetActiveConsoleSessionId(
  26139.     void
  26140.     );
  26141.  
  26142.  
  26143.  
  26144.  
  26145.  
  26146. __declspec(dllimport)
  26147. DWORD
  26148. __stdcall
  26149. WTSGetServiceSessionId(
  26150.     void
  26151.     );
  26152.  
  26153. __declspec(dllimport)
  26154. BOOLEAN
  26155. __stdcall
  26156. WTSIsServerContainer(
  26157.     void
  26158.     );
  26159.  
  26160.  
  26161.  
  26162.  
  26163.  
  26164. __declspec(dllimport)
  26165. WORD
  26166. __stdcall
  26167. GetActiveProcessorGroupCount(
  26168.     void
  26169.     );
  26170.  
  26171. __declspec(dllimport)
  26172. WORD
  26173. __stdcall
  26174. GetMaximumProcessorGroupCount(
  26175.     void
  26176.     );
  26177.  
  26178. __declspec(dllimport)
  26179. DWORD
  26180. __stdcall
  26181. GetActiveProcessorCount(
  26182.          WORD GroupNumber
  26183.     );
  26184.  
  26185. __declspec(dllimport)
  26186. DWORD
  26187. __stdcall
  26188. GetMaximumProcessorCount(
  26189.          WORD GroupNumber
  26190.     );
  26191.  
  26192.  
  26193.  
  26194.  
  26195.  
  26196.  
  26197.  
  26198. __declspec(dllimport)
  26199. BOOL
  26200. __stdcall
  26201. GetNumaProcessorNode(
  26202.           UCHAR Processor,
  26203.           PUCHAR NodeNumber
  26204.     );
  26205.  
  26206.  
  26207.  
  26208. __declspec(dllimport)
  26209. BOOL
  26210. __stdcall
  26211. GetNumaNodeNumberFromHandle(
  26212.           HANDLE hFile,
  26213.           PUSHORT NodeNumber
  26214.     );
  26215.  
  26216.  
  26217.  
  26218.  
  26219.  
  26220. __declspec(dllimport)
  26221. BOOL
  26222. __stdcall
  26223. GetNumaProcessorNodeEx(
  26224.           PPROCESSOR_NUMBER Processor,
  26225.           PUSHORT NodeNumber
  26226.     );
  26227.  
  26228.  
  26229.  
  26230. __declspec(dllimport)
  26231. BOOL
  26232. __stdcall
  26233. GetNumaNodeProcessorMask(
  26234.           UCHAR Node,
  26235.           PULONGLONG ProcessorMask
  26236.     );
  26237.  
  26238. __declspec(dllimport)
  26239. BOOL
  26240. __stdcall
  26241. GetNumaAvailableMemoryNode(
  26242.           UCHAR Node,
  26243.           PULONGLONG AvailableBytes
  26244.     );
  26245.  
  26246.  
  26247.  
  26248. __declspec(dllimport)
  26249. BOOL
  26250. __stdcall
  26251. GetNumaAvailableMemoryNodeEx(
  26252.           USHORT Node,
  26253.           PULONGLONG AvailableBytes
  26254.     );
  26255.  
  26256.  
  26257.  
  26258.  
  26259.  
  26260. __declspec(dllimport)
  26261. BOOL
  26262. __stdcall
  26263. GetNumaProximityNode(
  26264.           ULONG ProximityId,
  26265.           PUCHAR NodeNumber
  26266.     );
  26267.  
  26268.  
  26269.  
  26270.  
  26271. #pragma endregion
  26272.  
  26273. #pragma region Desktop Family or OneCore Family
  26274.  
  26275.  
  26276.  
  26277.  
  26278.  
  26279. typedef DWORD (__stdcall *APPLICATION_RECOVERY_CALLBACK)(PVOID pvParameter);
  26280. # 8415 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26281. #pragma endregion
  26282.  
  26283. #pragma region Desktop Family
  26284.  
  26285.  
  26286.  
  26287.  
  26288. __declspec(dllimport)
  26289. HRESULT
  26290. __stdcall
  26291. RegisterApplicationRecoveryCallback(
  26292.           APPLICATION_RECOVERY_CALLBACK pRecoveyCallback,
  26293.               PVOID pvParameter,
  26294.          DWORD dwPingInterval,
  26295.          DWORD dwFlags
  26296.     );
  26297.  
  26298. __declspec(dllimport)
  26299. HRESULT
  26300. __stdcall
  26301. UnregisterApplicationRecoveryCallback(void);
  26302.  
  26303. __declspec(dllimport)
  26304. HRESULT
  26305. __stdcall
  26306. RegisterApplicationRestart(
  26307.              PCWSTR pwzCommandline,
  26308.          DWORD dwFlags
  26309.     );
  26310.  
  26311. __declspec(dllimport)
  26312. HRESULT
  26313. __stdcall
  26314. UnregisterApplicationRestart(void);
  26315.  
  26316.  
  26317.  
  26318.  
  26319. #pragma endregion
  26320.  
  26321. #pragma region Desktop Family or OneCore Family
  26322.  
  26323.  
  26324.  
  26325.  
  26326. __declspec(dllimport)
  26327. HRESULT
  26328. __stdcall
  26329. GetApplicationRecoveryCallback(
  26330.           HANDLE hProcess,
  26331.           APPLICATION_RECOVERY_CALLBACK* pRecoveryCallback,
  26332.                                   PVOID* ppvParameter,
  26333.               PDWORD pdwPingInterval,
  26334.               PDWORD pdwFlags
  26335.     );
  26336.  
  26337. __declspec(dllimport)
  26338. HRESULT
  26339. __stdcall
  26340. GetApplicationRestartSettings(
  26341.          HANDLE hProcess,
  26342.                                 PWSTR pwzCommandline,
  26343.             PDWORD pcchSize,
  26344.               PDWORD pdwFlags
  26345.     );
  26346.  
  26347.  
  26348.  
  26349.  
  26350. #pragma endregion
  26351.  
  26352. #pragma region Desktop Family
  26353.  
  26354.  
  26355.  
  26356.  
  26357. __declspec(dllimport)
  26358. HRESULT
  26359. __stdcall
  26360. ApplicationRecoveryInProgress(
  26361.           PBOOL pbCancelled
  26362.     );
  26363.  
  26364. __declspec(dllimport)
  26365. void
  26366. __stdcall
  26367. ApplicationRecoveryFinished(
  26368.          BOOL bSuccess
  26369.     );
  26370.  
  26371.  
  26372.  
  26373.  
  26374. #pragma endregion
  26375.  
  26376.  
  26377.  
  26378. #pragma region Application Family or OneCore Family
  26379.  
  26380.  
  26381. typedef struct _FILE_BASIC_INFO {
  26382.     LARGE_INTEGER CreationTime;
  26383.     LARGE_INTEGER LastAccessTime;
  26384.     LARGE_INTEGER LastWriteTime;
  26385.     LARGE_INTEGER ChangeTime;
  26386.     DWORD FileAttributes;
  26387. } FILE_BASIC_INFO, *PFILE_BASIC_INFO;
  26388.  
  26389. typedef struct _FILE_STANDARD_INFO {
  26390.     LARGE_INTEGER AllocationSize;
  26391.     LARGE_INTEGER EndOfFile;
  26392.     DWORD NumberOfLinks;
  26393.     BOOLEAN DeletePending;
  26394.     BOOLEAN Directory;
  26395. } FILE_STANDARD_INFO, *PFILE_STANDARD_INFO;
  26396.  
  26397. typedef struct _FILE_NAME_INFO {
  26398.     DWORD FileNameLength;
  26399.     WCHAR FileName[1];
  26400. } FILE_NAME_INFO, *PFILE_NAME_INFO;
  26401. # 8545 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26402. typedef struct _FILE_RENAME_INFO {
  26403.  
  26404.     union {
  26405.         BOOLEAN ReplaceIfExists;
  26406.         DWORD Flags;
  26407.     } ;
  26408.  
  26409.  
  26410.  
  26411.     HANDLE RootDirectory;
  26412.     DWORD FileNameLength;
  26413.     WCHAR FileName[1];
  26414. } FILE_RENAME_INFO, *PFILE_RENAME_INFO;
  26415.  
  26416. typedef struct _FILE_ALLOCATION_INFO {
  26417.     LARGE_INTEGER AllocationSize;
  26418. } FILE_ALLOCATION_INFO, *PFILE_ALLOCATION_INFO;
  26419.  
  26420. typedef struct _FILE_END_OF_FILE_INFO {
  26421.     LARGE_INTEGER EndOfFile;
  26422. } FILE_END_OF_FILE_INFO, *PFILE_END_OF_FILE_INFO;
  26423.  
  26424. typedef struct _FILE_STREAM_INFO {
  26425.     DWORD NextEntryOffset;
  26426.     DWORD StreamNameLength;
  26427.     LARGE_INTEGER StreamSize;
  26428.     LARGE_INTEGER StreamAllocationSize;
  26429.     WCHAR StreamName[1];
  26430. } FILE_STREAM_INFO, *PFILE_STREAM_INFO;
  26431.  
  26432. typedef struct _FILE_COMPRESSION_INFO {
  26433.     LARGE_INTEGER CompressedFileSize;
  26434.     WORD CompressionFormat;
  26435.     UCHAR CompressionUnitShift;
  26436.     UCHAR ChunkShift;
  26437.     UCHAR ClusterShift;
  26438.     UCHAR Reserved[3];
  26439. } FILE_COMPRESSION_INFO, *PFILE_COMPRESSION_INFO;
  26440.  
  26441. typedef struct _FILE_ATTRIBUTE_TAG_INFO {
  26442.     DWORD FileAttributes;
  26443.     DWORD ReparseTag;
  26444. } FILE_ATTRIBUTE_TAG_INFO, *PFILE_ATTRIBUTE_TAG_INFO;
  26445.  
  26446. typedef struct _FILE_DISPOSITION_INFO {
  26447.     BOOLEAN DeleteFileA;
  26448. } FILE_DISPOSITION_INFO, *PFILE_DISPOSITION_INFO;
  26449. # 8600 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26450. typedef struct _FILE_DISPOSITION_INFO_EX {
  26451.     DWORD Flags;
  26452. } FILE_DISPOSITION_INFO_EX, *PFILE_DISPOSITION_INFO_EX;
  26453.  
  26454.  
  26455. typedef struct _FILE_ID_BOTH_DIR_INFO {
  26456.     DWORD NextEntryOffset;
  26457.     DWORD FileIndex;
  26458.     LARGE_INTEGER CreationTime;
  26459.     LARGE_INTEGER LastAccessTime;
  26460.     LARGE_INTEGER LastWriteTime;
  26461.     LARGE_INTEGER ChangeTime;
  26462.     LARGE_INTEGER EndOfFile;
  26463.     LARGE_INTEGER AllocationSize;
  26464.     DWORD FileAttributes;
  26465.     DWORD FileNameLength;
  26466.     DWORD EaSize;
  26467.     CCHAR ShortNameLength;
  26468.     WCHAR ShortName[12];
  26469.     LARGE_INTEGER FileId;
  26470.     WCHAR FileName[1];
  26471. } FILE_ID_BOTH_DIR_INFO, *PFILE_ID_BOTH_DIR_INFO;
  26472.  
  26473. typedef struct _FILE_FULL_DIR_INFO {
  26474.     ULONG NextEntryOffset;
  26475.     ULONG FileIndex;
  26476.     LARGE_INTEGER CreationTime;
  26477.     LARGE_INTEGER LastAccessTime;
  26478.     LARGE_INTEGER LastWriteTime;
  26479.     LARGE_INTEGER ChangeTime;
  26480.     LARGE_INTEGER EndOfFile;
  26481.     LARGE_INTEGER AllocationSize;
  26482.     ULONG FileAttributes;
  26483.     ULONG FileNameLength;
  26484.     ULONG EaSize;
  26485.     WCHAR FileName[1];
  26486. } FILE_FULL_DIR_INFO, *PFILE_FULL_DIR_INFO;
  26487.  
  26488. typedef enum _PRIORITY_HINT {
  26489.       IoPriorityHintVeryLow = 0,
  26490.       IoPriorityHintLow,
  26491.       IoPriorityHintNormal,
  26492.       MaximumIoPriorityHintType
  26493. } PRIORITY_HINT;
  26494.  
  26495. typedef struct _FILE_IO_PRIORITY_HINT_INFO {
  26496.     PRIORITY_HINT PriorityHint;
  26497. } FILE_IO_PRIORITY_HINT_INFO, *PFILE_IO_PRIORITY_HINT_INFO;
  26498.  
  26499.  
  26500.  
  26501.  
  26502.  
  26503. typedef struct _FILE_ALIGNMENT_INFO {
  26504.     ULONG AlignmentRequirement;
  26505. } FILE_ALIGNMENT_INFO, *PFILE_ALIGNMENT_INFO;
  26506. # 8676 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26507. typedef struct _FILE_STORAGE_INFO {
  26508.     ULONG LogicalBytesPerSector;
  26509.     ULONG PhysicalBytesPerSectorForAtomicity;
  26510.     ULONG PhysicalBytesPerSectorForPerformance;
  26511.     ULONG FileSystemEffectivePhysicalBytesPerSectorForAtomicity;
  26512.     ULONG Flags;
  26513.     ULONG ByteOffsetForSectorAlignment;
  26514.     ULONG ByteOffsetForPartitionAlignment;
  26515. } FILE_STORAGE_INFO, *PFILE_STORAGE_INFO;
  26516.  
  26517.  
  26518.  
  26519.  
  26520. typedef struct _FILE_ID_INFO {
  26521.     ULONGLONG VolumeSerialNumber;
  26522.     FILE_ID_128 FileId;
  26523. } FILE_ID_INFO, *PFILE_ID_INFO;
  26524.  
  26525.  
  26526.  
  26527.  
  26528. typedef struct _FILE_ID_EXTD_DIR_INFO {
  26529.     ULONG NextEntryOffset;
  26530.     ULONG FileIndex;
  26531.     LARGE_INTEGER CreationTime;
  26532.     LARGE_INTEGER LastAccessTime;
  26533.     LARGE_INTEGER LastWriteTime;
  26534.     LARGE_INTEGER ChangeTime;
  26535.     LARGE_INTEGER EndOfFile;
  26536.     LARGE_INTEGER AllocationSize;
  26537.     ULONG FileAttributes;
  26538.     ULONG FileNameLength;
  26539.     ULONG EaSize;
  26540.     ULONG ReparsePointTag;
  26541.     FILE_ID_128 FileId;
  26542.     WCHAR FileName[1];
  26543. } FILE_ID_EXTD_DIR_INFO, *PFILE_ID_EXTD_DIR_INFO;
  26544. # 8750 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26545. typedef struct _FILE_REMOTE_PROTOCOL_INFO
  26546. {
  26547.  
  26548.     USHORT StructureVersion;
  26549.     USHORT StructureSize;
  26550.  
  26551.     ULONG Protocol;
  26552.  
  26553.  
  26554.     USHORT ProtocolMajorVersion;
  26555.     USHORT ProtocolMinorVersion;
  26556.     USHORT ProtocolRevision;
  26557.  
  26558.     USHORT Reserved;
  26559.  
  26560.  
  26561.     ULONG Flags;
  26562.  
  26563.     struct {
  26564.         ULONG Reserved[8];
  26565.     } GenericReserved;
  26566. # 8781 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26567.     union {
  26568.  
  26569.         struct {
  26570.  
  26571.             struct {
  26572.                 ULONG Capabilities;
  26573.             } Server;
  26574.  
  26575.             struct {
  26576.                 ULONG Capabilities;
  26577.                 ULONG CachingFlags;
  26578.             } Share;
  26579.  
  26580.         } Smb2;
  26581.  
  26582.         ULONG Reserved[16];
  26583.  
  26584.     } ProtocolSpecific;
  26585.  
  26586.  
  26587.  
  26588. } FILE_REMOTE_PROTOCOL_INFO, *PFILE_REMOTE_PROTOCOL_INFO;
  26589.  
  26590. __declspec(dllimport)
  26591. BOOL
  26592. __stdcall
  26593. GetFileInformationByHandleEx(
  26594.           HANDLE hFile,
  26595.           FILE_INFO_BY_HANDLE_CLASS FileInformationClass,
  26596.                                      LPVOID lpFileInformation,
  26597.           DWORD dwBufferSize
  26598. );
  26599.  
  26600.  
  26601. #pragma endregion
  26602.  
  26603. #pragma region Desktop Family or OneCore Family
  26604.  
  26605.  
  26606. typedef enum _FILE_ID_TYPE {
  26607.       FileIdType,
  26608.       ObjectIdType,
  26609.       ExtendedFileIdType,
  26610.       MaximumFileIdType
  26611. } FILE_ID_TYPE, *PFILE_ID_TYPE;
  26612.  
  26613. typedef struct FILE_ID_DESCRIPTOR {
  26614.     DWORD dwSize;
  26615.     FILE_ID_TYPE Type;
  26616.     union {
  26617.         LARGE_INTEGER FileId;
  26618.         GUID ObjectId;
  26619.  
  26620.         FILE_ID_128 ExtendedFileId;
  26621.  
  26622.     } ;
  26623. } FILE_ID_DESCRIPTOR, *LPFILE_ID_DESCRIPTOR;
  26624.  
  26625. __declspec(dllimport)
  26626. HANDLE
  26627. __stdcall
  26628. OpenFileById (
  26629.              HANDLE hVolumeHint,
  26630.              LPFILE_ID_DESCRIPTOR lpFileId,
  26631.              DWORD dwDesiredAccess,
  26632.              DWORD dwShareMode,
  26633.              LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  26634.              DWORD dwFlagsAndAttributes
  26635.     );
  26636.  
  26637.  
  26638. #pragma endregion
  26639.  
  26640.  
  26641.  
  26642. #pragma region Desktop Family or OneCore Family
  26643. # 8880 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26644. __declspec(dllimport)
  26645. BOOLEAN
  26646. __stdcall
  26647. CreateSymbolicLinkA (
  26648.          LPCSTR lpSymlinkFileName,
  26649.          LPCSTR lpTargetFileName,
  26650.          DWORD dwFlags
  26651.     );
  26652. __declspec(dllimport)
  26653. BOOLEAN
  26654. __stdcall
  26655. CreateSymbolicLinkW (
  26656.          LPCWSTR lpSymlinkFileName,
  26657.          LPCWSTR lpTargetFileName,
  26658.          DWORD dwFlags
  26659.     );
  26660. # 8906 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26661. __declspec(dllimport)
  26662. BOOL
  26663. __stdcall
  26664. QueryActCtxSettingsW(
  26665.                   DWORD dwFlags,
  26666.                   HANDLE hActCtx,
  26667.                   PCWSTR settingsNameSpace,
  26668.                   PCWSTR settingName,
  26669.                                                                PWSTR pvBuffer,
  26670.               SIZE_T dwBuffer,
  26671.               SIZE_T *pdwWrittenOrRequired
  26672.     );
  26673.  
  26674.  
  26675.  
  26676.  
  26677. #pragma endregion
  26678.  
  26679. #pragma region Desktop Family
  26680.  
  26681.  
  26682.  
  26683.  
  26684. __declspec(dllimport)
  26685. BOOLEAN
  26686. __stdcall
  26687. CreateSymbolicLinkTransactedA (
  26688.              LPCSTR lpSymlinkFileName,
  26689.              LPCSTR lpTargetFileName,
  26690.              DWORD dwFlags,
  26691.              HANDLE hTransaction
  26692.     );
  26693. __declspec(dllimport)
  26694. BOOLEAN
  26695. __stdcall
  26696. CreateSymbolicLinkTransactedW (
  26697.              LPCWSTR lpSymlinkFileName,
  26698.              LPCWSTR lpTargetFileName,
  26699.              DWORD dwFlags,
  26700.              HANDLE hTransaction
  26701.     );
  26702. # 8957 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26703. __declspec(dllimport)
  26704. BOOL
  26705. __stdcall
  26706. ReplacePartitionUnit (
  26707.          PWSTR TargetPartition,
  26708.          PWSTR SparePartition,
  26709.          ULONG Flags
  26710.     );
  26711.  
  26712.  
  26713.  
  26714.  
  26715.  
  26716.  
  26717. __declspec(dllimport)
  26718. BOOL
  26719. __stdcall
  26720. AddSecureMemoryCacheCallback(
  26721.                     PSECURE_MEMORY_CACHE_CALLBACK pfnCallBack
  26722.     );
  26723.  
  26724. __declspec(dllimport)
  26725. BOOL
  26726. __stdcall
  26727. RemoveSecureMemoryCacheCallback(
  26728.                     PSECURE_MEMORY_CACHE_CALLBACK pfnCallBack
  26729.     );
  26730.  
  26731.  
  26732.  
  26733.  
  26734. #pragma endregion
  26735.  
  26736.  
  26737.  
  26738. #pragma region Desktop Family or OneCore Family
  26739.  
  26740.  
  26741.  
  26742. __declspec(dllimport)
  26743. BOOL
  26744. __stdcall
  26745. CopyContext(
  26746.             PCONTEXT Destination,
  26747.          DWORD ContextFlags,
  26748.          PCONTEXT Source
  26749.     );
  26750.  
  26751.  
  26752. #pragma endregion
  26753.  
  26754. #pragma region Application Family or OneCore Family
  26755.  
  26756.  
  26757.  
  26758. __declspec(dllimport)
  26759. BOOL
  26760. __stdcall
  26761. InitializeContext(
  26762.                                            PVOID Buffer,
  26763.          DWORD ContextFlags,
  26764.           PCONTEXT* Context,
  26765.             PDWORD ContextLength
  26766.     );
  26767.  
  26768. #pragma endregion
  26769.  
  26770.  
  26771.  
  26772. #pragma region Application Family or OneCore Family
  26773.  
  26774.  
  26775. __declspec(dllimport)
  26776. DWORD64
  26777. __stdcall
  26778. GetEnabledXStateFeatures(
  26779.     void
  26780.     );
  26781.  
  26782.  
  26783. __declspec(dllimport)
  26784. BOOL
  26785. __stdcall
  26786. GetXStateFeaturesMask(
  26787.          PCONTEXT Context,
  26788.           PDWORD64 FeatureMask
  26789.     );
  26790.  
  26791.  
  26792. __declspec(dllimport)
  26793. PVOID
  26794. __stdcall
  26795. LocateXStateFeature(
  26796.          PCONTEXT Context,
  26797.          DWORD FeatureId,
  26798.               PDWORD Length
  26799.     );
  26800.  
  26801.  
  26802. #pragma endregion
  26803.  
  26804. #pragma region Desktop Family or OneCore Family
  26805.  
  26806.  
  26807.  
  26808. __declspec(dllimport)
  26809. BOOL
  26810. __stdcall
  26811. SetXStateFeaturesMask(
  26812.             PCONTEXT Context,
  26813.          DWORD64 FeatureMask
  26814.     );
  26815.  
  26816.  
  26817. #pragma endregion
  26818.  
  26819.  
  26820.  
  26821.  
  26822.  
  26823.  
  26824.  
  26825. #pragma region Desktop Family
  26826.  
  26827.  
  26828. __declspec(dllimport)
  26829. DWORD
  26830. __stdcall
  26831. EnableThreadProfiling(
  26832.          HANDLE ThreadHandle,
  26833.          DWORD Flags,
  26834.          DWORD64 HardwareCounters,
  26835.           HANDLE *PerformanceDataHandle
  26836.     );
  26837.  
  26838. __declspec(dllimport)
  26839. DWORD
  26840. __stdcall
  26841. DisableThreadProfiling(
  26842.          HANDLE PerformanceDataHandle
  26843.     );
  26844.  
  26845. __declspec(dllimport)
  26846. DWORD
  26847. __stdcall
  26848. QueryThreadProfiling(
  26849.          HANDLE ThreadHandle,
  26850.           PBOOLEAN Enabled
  26851.     );
  26852.  
  26853. __declspec(dllimport)
  26854. DWORD
  26855. __stdcall
  26856. ReadThreadProfilingData(
  26857.          HANDLE PerformanceDataHandle,
  26858.          DWORD Flags,
  26859.           PPERFORMANCE_DATA PerformanceData
  26860.     );
  26861.  
  26862.  
  26863. #pragma endregion
  26864.  
  26865.  
  26866.  
  26867.  
  26868.  
  26869. #pragma region Desktop Family or OneCore Family
  26870.  
  26871.  
  26872. __declspec(dllimport)
  26873. DWORD
  26874. __stdcall
  26875. RaiseCustomSystemEventTrigger(
  26876.          PCUSTOM_SYSTEM_EVENT_TRIGGER_CONFIG CustomSystemEventTriggerConfig
  26877.     );
  26878.  
  26879.  
  26880. #pragma endregion
  26881. # 9458 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winbase.h" 3
  26882. #pragma option pop
  26883. # 203 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  26884.  
  26885. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 1 3
  26886. #pragma option push -b -a8 -pc -A- -w-pun
  26887. # 290 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  26888. #pragma region Desktop Family
  26889.  
  26890.  
  26891.  
  26892. typedef struct _DRAWPATRECT {
  26893.         POINT ptPosition;
  26894.         POINT ptSize;
  26895.         WORD wStyle;
  26896.         WORD wPattern;
  26897. } DRAWPATRECT, *PDRAWPATRECT;
  26898.  
  26899.  
  26900.  
  26901. #pragma endregion
  26902. # 419 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  26903. #pragma region Desktop Family
  26904.  
  26905.  
  26906.  
  26907.  
  26908.  
  26909.  
  26910. typedef struct _PSINJECTDATA {
  26911.  
  26912.     DWORD DataBytes;
  26913.     WORD InjectionPoint;
  26914.     WORD PageNumber;
  26915.  
  26916.  
  26917.  
  26918. } PSINJECTDATA, *PPSINJECTDATA;
  26919.  
  26920.  
  26921. #pragma endregion
  26922. # 507 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  26923. #pragma region Desktop Family
  26924.  
  26925.  
  26926.  
  26927.  
  26928.  
  26929.  
  26930. typedef struct _PSFEATURE_OUTPUT {
  26931.  
  26932.     BOOL bPageIndependent;
  26933.     BOOL bSetPageDevice;
  26934.  
  26935. } PSFEATURE_OUTPUT, *PPSFEATURE_OUTPUT;
  26936.  
  26937.  
  26938.  
  26939.  
  26940.  
  26941. typedef struct _PSFEATURE_CUSTPAPER {
  26942.  
  26943.     LONG lOrientation;
  26944.     LONG lWidth;
  26945.     LONG lHeight;
  26946.     LONG lWidthOffset;
  26947.     LONG lHeightOffset;
  26948.  
  26949. } PSFEATURE_CUSTPAPER, *PPSFEATURE_CUSTPAPER;
  26950.  
  26951.  
  26952. #pragma endregion
  26953. # 588 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  26954. #pragma region Application Family
  26955.  
  26956.  
  26957. typedef struct tagXFORM
  26958.   {
  26959.     FLOAT eM11;
  26960.     FLOAT eM12;
  26961.     FLOAT eM21;
  26962.     FLOAT eM22;
  26963.     FLOAT eDx;
  26964.     FLOAT eDy;
  26965.   } XFORM, *PXFORM, *LPXFORM;
  26966.  
  26967.  
  26968. typedef struct tagBITMAP
  26969.   {
  26970.     LONG bmType;
  26971.     LONG bmWidth;
  26972.     LONG bmHeight;
  26973.     LONG bmWidthBytes;
  26974.     WORD bmPlanes;
  26975.     WORD bmBitsPixel;
  26976.     LPVOID bmBits;
  26977.   } BITMAP, *PBITMAP, *NPBITMAP, *LPBITMAP;
  26978.  
  26979.  
  26980. #pragma endregion
  26981.  
  26982.  
  26983. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  26984. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  26985. #pragma warning(disable: 4103)
  26986.  
  26987. #pragma pack(push,1)
  26988. # 616 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  26989.  
  26990.  
  26991. #pragma region Application Family
  26992.  
  26993.  
  26994. typedef struct tagRGBTRIPLE {
  26995.         BYTE rgbtBlue;
  26996.         BYTE rgbtGreen;
  26997.         BYTE rgbtRed;
  26998. } RGBTRIPLE, *PRGBTRIPLE, *NPRGBTRIPLE, *LPRGBTRIPLE;
  26999.  
  27000.  
  27001. #pragma endregion
  27002.  
  27003.  
  27004. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  27005. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  27006. #pragma warning(disable: 4103)
  27007.  
  27008. #pragma pack(pop)
  27009. # 630 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  27010.  
  27011.  
  27012. #pragma region Application Family
  27013.  
  27014.  
  27015. typedef struct tagRGBQUAD {
  27016.         BYTE rgbBlue;
  27017.         BYTE rgbGreen;
  27018.         BYTE rgbRed;
  27019.         BYTE rgbReserved;
  27020. } RGBQUAD;
  27021.  
  27022.  
  27023. #pragma endregion
  27024.  
  27025. #pragma region Desktop Family
  27026.  
  27027.  
  27028. typedef RGBQUAD * LPRGBQUAD;
  27029.  
  27030.  
  27031. #pragma endregion
  27032. # 670 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  27033. #pragma region Application Family
  27034.  
  27035.  
  27036. typedef LONG LCSCSTYPE;
  27037.  
  27038.  
  27039.  
  27040. typedef LONG LCSGAMUTMATCH;
  27041. # 705 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  27042. typedef long FXPT16DOT16, *LPFXPT16DOT16;
  27043. typedef long FXPT2DOT30, *LPFXPT2DOT30;
  27044.  
  27045.  
  27046.  
  27047.  
  27048. typedef struct tagCIEXYZ
  27049. {
  27050.         FXPT2DOT30 ciexyzX;
  27051.         FXPT2DOT30 ciexyzY;
  27052.         FXPT2DOT30 ciexyzZ;
  27053. } CIEXYZ;
  27054.  
  27055.  
  27056. #pragma endregion
  27057.  
  27058. #pragma region Desktop Family
  27059.  
  27060.  
  27061. typedef CIEXYZ *LPCIEXYZ;
  27062.  
  27063.  
  27064. #pragma endregion
  27065.  
  27066. #pragma region Application Family
  27067.  
  27068.  
  27069. typedef struct tagICEXYZTRIPLE
  27070. {
  27071.         CIEXYZ ciexyzRed;
  27072.         CIEXYZ ciexyzGreen;
  27073.         CIEXYZ ciexyzBlue;
  27074. } CIEXYZTRIPLE;
  27075.  
  27076.  
  27077. #pragma endregion
  27078.  
  27079. #pragma region Desktop Family
  27080.  
  27081.  
  27082. typedef CIEXYZTRIPLE *LPCIEXYZTRIPLE;
  27083.  
  27084.  
  27085. #pragma endregion
  27086.  
  27087. #pragma region Application Family
  27088.  
  27089.  
  27090.  
  27091.  
  27092.  
  27093.  
  27094.  
  27095. typedef struct tagLOGCOLORSPACEA {
  27096.     DWORD lcsSignature;
  27097.     DWORD lcsVersion;
  27098.     DWORD lcsSize;
  27099.     LCSCSTYPE lcsCSType;
  27100.     LCSGAMUTMATCH lcsIntent;
  27101.     CIEXYZTRIPLE lcsEndpoints;
  27102.     DWORD lcsGammaRed;
  27103.     DWORD lcsGammaGreen;
  27104.     DWORD lcsGammaBlue;
  27105.     CHAR lcsFilename[260];
  27106. } LOGCOLORSPACEA, *LPLOGCOLORSPACEA;
  27107. typedef struct tagLOGCOLORSPACEW {
  27108.     DWORD lcsSignature;
  27109.     DWORD lcsVersion;
  27110.     DWORD lcsSize;
  27111.     LCSCSTYPE lcsCSType;
  27112.     LCSGAMUTMATCH lcsIntent;
  27113.     CIEXYZTRIPLE lcsEndpoints;
  27114.     DWORD lcsGammaRed;
  27115.     DWORD lcsGammaGreen;
  27116.     DWORD lcsGammaBlue;
  27117.     WCHAR lcsFilename[260];
  27118. } LOGCOLORSPACEW, *LPLOGCOLORSPACEW;
  27119.  
  27120.  
  27121.  
  27122.  
  27123. typedef LOGCOLORSPACEA LOGCOLORSPACE;
  27124. typedef LPLOGCOLORSPACEA LPLOGCOLORSPACE;
  27125.  
  27126.  
  27127.  
  27128. #pragma endregion
  27129.  
  27130.  
  27131.  
  27132. #pragma region Desktop Family
  27133.  
  27134.  
  27135.  
  27136. typedef struct tagBITMAPCOREHEADER {
  27137.         DWORD bcSize;
  27138.         WORD bcWidth;
  27139.         WORD bcHeight;
  27140.         WORD bcPlanes;
  27141.         WORD bcBitCount;
  27142. } BITMAPCOREHEADER, *LPBITMAPCOREHEADER, *PBITMAPCOREHEADER;
  27143.  
  27144.  
  27145. #pragma endregion
  27146.  
  27147. #pragma region Application Family
  27148.  
  27149.  
  27150. typedef struct tagBITMAPINFOHEADER{
  27151.         DWORD biSize;
  27152.         LONG biWidth;
  27153.         LONG biHeight;
  27154.         WORD biPlanes;
  27155.         WORD biBitCount;
  27156.         DWORD biCompression;
  27157.         DWORD biSizeImage;
  27158.         LONG biXPelsPerMeter;
  27159.         LONG biYPelsPerMeter;
  27160.         DWORD biClrUsed;
  27161.         DWORD biClrImportant;
  27162. } BITMAPINFOHEADER, *LPBITMAPINFOHEADER, *PBITMAPINFOHEADER;
  27163.  
  27164.  
  27165. #pragma endregion
  27166.  
  27167.  
  27168.  
  27169. #pragma region Desktop Family
  27170.  
  27171.  
  27172. typedef struct {
  27173.         DWORD bV4Size;
  27174.         LONG bV4Width;
  27175.         LONG bV4Height;
  27176.         WORD bV4Planes;
  27177.         WORD bV4BitCount;
  27178.         DWORD bV4V4Compression;
  27179.         DWORD bV4SizeImage;
  27180.         LONG bV4XPelsPerMeter;
  27181.         LONG bV4YPelsPerMeter;
  27182.         DWORD bV4ClrUsed;
  27183.         DWORD bV4ClrImportant;
  27184.         DWORD bV4RedMask;
  27185.         DWORD bV4GreenMask;
  27186.         DWORD bV4BlueMask;
  27187.         DWORD bV4AlphaMask;
  27188.         DWORD bV4CSType;
  27189.         CIEXYZTRIPLE bV4Endpoints;
  27190.         DWORD bV4GammaRed;
  27191.         DWORD bV4GammaGreen;
  27192.         DWORD bV4GammaBlue;
  27193. } BITMAPV4HEADER, *LPBITMAPV4HEADER, *PBITMAPV4HEADER;
  27194.  
  27195.  
  27196. #pragma endregion
  27197.  
  27198.  
  27199.  
  27200.  
  27201. #pragma region Desktop Family
  27202.  
  27203. typedef struct {
  27204.         DWORD bV5Size;
  27205.         LONG bV5Width;
  27206.         LONG bV5Height;
  27207.         WORD bV5Planes;
  27208.         WORD bV5BitCount;
  27209.         DWORD bV5Compression;
  27210.         DWORD bV5SizeImage;
  27211.         LONG bV5XPelsPerMeter;
  27212.         LONG bV5YPelsPerMeter;
  27213.         DWORD bV5ClrUsed;
  27214.         DWORD bV5ClrImportant;
  27215.         DWORD bV5RedMask;
  27216.         DWORD bV5GreenMask;
  27217.         DWORD bV5BlueMask;
  27218.         DWORD bV5AlphaMask;
  27219.         DWORD bV5CSType;
  27220.         CIEXYZTRIPLE bV5Endpoints;
  27221.         DWORD bV5GammaRed;
  27222.         DWORD bV5GammaGreen;
  27223.         DWORD bV5GammaBlue;
  27224.         DWORD bV5Intent;
  27225.         DWORD bV5ProfileData;
  27226.         DWORD bV5ProfileSize;
  27227.         DWORD bV5Reserved;
  27228. } BITMAPV5HEADER, *LPBITMAPV5HEADER, *PBITMAPV5HEADER;
  27229.  
  27230.  
  27231. #pragma endregion
  27232. # 911 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  27233. #pragma region Application Family
  27234.  
  27235.  
  27236. typedef struct tagBITMAPINFO {
  27237.     BITMAPINFOHEADER bmiHeader;
  27238.     RGBQUAD bmiColors[1];
  27239. } BITMAPINFO, *LPBITMAPINFO, *PBITMAPINFO;
  27240.  
  27241.  
  27242. #pragma endregion
  27243.  
  27244. #pragma region Desktop Family
  27245.  
  27246.  
  27247. typedef struct tagBITMAPCOREINFO {
  27248.     BITMAPCOREHEADER bmciHeader;
  27249.     RGBTRIPLE bmciColors[1];
  27250. } BITMAPCOREINFO, *LPBITMAPCOREINFO, *PBITMAPCOREINFO;
  27251.  
  27252.  
  27253. #pragma endregion
  27254.  
  27255.  
  27256. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack2.h" 1 3
  27257. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack2.h" 3
  27258. #pragma warning(disable: 4103)
  27259.  
  27260. #pragma pack(push,2)
  27261. # 933 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  27262.  
  27263.  
  27264. #pragma region Desktop Family
  27265.  
  27266.  
  27267. typedef struct tagBITMAPFILEHEADER {
  27268.         WORD bfType;
  27269.         DWORD bfSize;
  27270.         WORD bfReserved1;
  27271.         WORD bfReserved2;
  27272.         DWORD bfOffBits;
  27273. } BITMAPFILEHEADER, *LPBITMAPFILEHEADER, *PBITMAPFILEHEADER;
  27274.  
  27275.  
  27276. #pragma endregion
  27277.  
  27278.  
  27279. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  27280. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  27281. #pragma warning(disable: 4103)
  27282.  
  27283. #pragma pack(pop)
  27284. # 949 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  27285.  
  27286.  
  27287.  
  27288.  
  27289.  
  27290.  
  27291.  
  27292. #pragma region Application Family
  27293.  
  27294.  
  27295. typedef struct tagFONTSIGNATURE
  27296. {
  27297.     DWORD fsUsb[4];
  27298.     DWORD fsCsb[2];
  27299. } FONTSIGNATURE, *PFONTSIGNATURE, *LPFONTSIGNATURE;
  27300.  
  27301.  
  27302. #pragma endregion
  27303.  
  27304. #pragma region Desktop Family
  27305.  
  27306.  
  27307. typedef struct tagCHARSETINFO
  27308. {
  27309.     UINT ciCharset;
  27310.     UINT ciACP;
  27311.     FONTSIGNATURE fs;
  27312. } CHARSETINFO, *PCHARSETINFO, *NPCHARSETINFO, *LPCHARSETINFO;
  27313.  
  27314.  
  27315. #pragma endregion
  27316.  
  27317.  
  27318.  
  27319.  
  27320.  
  27321.  
  27322.  
  27323.  
  27324. #pragma region Application Family
  27325.  
  27326.  
  27327. typedef struct tagLOCALESIGNATURE
  27328. {
  27329.     DWORD lsUsb[4];
  27330.     DWORD lsCsbDefault[2];
  27331.     DWORD lsCsbSupported[2];
  27332. } LOCALESIGNATURE, *PLOCALESIGNATURE, *LPLOCALESIGNATURE;
  27333.  
  27334.  
  27335. #pragma endregion
  27336.  
  27337.  
  27338.  
  27339.  
  27340.  
  27341.  
  27342. #pragma region Application Family
  27343.  
  27344.  
  27345.  
  27346.  
  27347. typedef struct tagHANDLETABLE
  27348.   {
  27349.     HGDIOBJ objectHandle[1];
  27350.   } HANDLETABLE, *PHANDLETABLE, *LPHANDLETABLE;
  27351.  
  27352. typedef struct tagMETARECORD
  27353.   {
  27354.     DWORD rdSize;
  27355.     WORD rdFunction;
  27356.     WORD rdParm[1];
  27357.   } METARECORD;
  27358.  
  27359.  
  27360. #pragma endregion
  27361.  
  27362. #pragma region Desktop Family
  27363.  
  27364.  
  27365. typedef struct tagMETARECORD *PMETARECORD;
  27366.  
  27367.  
  27368. #pragma endregion
  27369.  
  27370. #pragma region Application Family
  27371.  
  27372.  
  27373. typedef struct tagMETARECORD *LPMETARECORD;
  27374.  
  27375. typedef struct tagMETAFILEPICT
  27376.   {
  27377.     LONG mm;
  27378.     LONG xExt;
  27379.     LONG yExt;
  27380.     HMETAFILE hMF;
  27381.   } METAFILEPICT, *LPMETAFILEPICT;
  27382.  
  27383.  
  27384. #pragma endregion
  27385.  
  27386.  
  27387. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack2.h" 1 3
  27388. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack2.h" 3
  27389. #pragma warning(disable: 4103)
  27390.  
  27391. #pragma pack(push,2)
  27392. # 1050 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  27393.  
  27394.  
  27395. #pragma region Desktop Family
  27396.  
  27397.  
  27398. typedef struct tagMETAHEADER
  27399. {
  27400.     WORD mtType;
  27401.     WORD mtHeaderSize;
  27402.     WORD mtVersion;
  27403.     DWORD mtSize;
  27404.     WORD mtNoObjects;
  27405.     DWORD mtMaxRecord;
  27406.     WORD mtNoParameters;
  27407. } METAHEADER;
  27408. typedef struct tagMETAHEADER *PMETAHEADER;
  27409. typedef struct tagMETAHEADER *LPMETAHEADER;
  27410.  
  27411.  
  27412. #pragma endregion
  27413.  
  27414.  
  27415. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  27416. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  27417. #pragma warning(disable: 4103)
  27418.  
  27419. #pragma pack(pop)
  27420. # 1071 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  27421.  
  27422.  
  27423. #pragma region Application Family
  27424.  
  27425.  
  27426.  
  27427. typedef struct tagENHMETARECORD
  27428. {
  27429.     DWORD iType;
  27430.     DWORD nSize;
  27431.     DWORD dParm[1];
  27432. } ENHMETARECORD, *PENHMETARECORD, *LPENHMETARECORD;
  27433.  
  27434. typedef struct tagENHMETAHEADER
  27435. {
  27436.     DWORD iType;
  27437.     DWORD nSize;
  27438.  
  27439.     RECTL rclBounds;
  27440.     RECTL rclFrame;
  27441.     DWORD dSignature;
  27442.     DWORD nVersion;
  27443.     DWORD nBytes;
  27444.     DWORD nRecords;
  27445.     WORD nHandles;
  27446.  
  27447.     WORD sReserved;
  27448.     DWORD nDescription;
  27449.  
  27450.     DWORD offDescription;
  27451.  
  27452.     DWORD nPalEntries;
  27453.     SIZEL szlDevice;
  27454.     SIZEL szlMillimeters;
  27455.  
  27456.     DWORD cbPixelFormat;
  27457.  
  27458.     DWORD offPixelFormat;
  27459.  
  27460.     DWORD bOpenGL;
  27461.  
  27462.  
  27463.  
  27464.     SIZEL szlMicrometers;
  27465.  
  27466.  
  27467. } ENHMETAHEADER, *PENHMETAHEADER, *LPENHMETAHEADER;
  27468.  
  27469.  
  27470. #pragma endregion
  27471. # 1132 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  27472. #pragma region Desktop Family
  27473.  
  27474.  
  27475.  
  27476.  
  27477.  
  27478.  
  27479.  
  27480.  
  27481.  typedef BYTE BCHAR;
  27482.  
  27483.  
  27484.  
  27485. #pragma endregion
  27486.  
  27487.  
  27488.  
  27489.  
  27490. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 1 3
  27491. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 3
  27492. #pragma warning(disable: 4103)
  27493.  
  27494. #pragma pack(push,4)
  27495. # 1149 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  27496.  
  27497.  
  27498. #pragma region Application Family
  27499.  
  27500.  
  27501. typedef struct tagTEXTMETRICA
  27502. {
  27503.     LONG tmHeight;
  27504.     LONG tmAscent;
  27505.     LONG tmDescent;
  27506.     LONG tmInternalLeading;
  27507.     LONG tmExternalLeading;
  27508.     LONG tmAveCharWidth;
  27509.     LONG tmMaxCharWidth;
  27510.     LONG tmWeight;
  27511.     LONG tmOverhang;
  27512.     LONG tmDigitizedAspectX;
  27513.     LONG tmDigitizedAspectY;
  27514.     BYTE tmFirstChar;
  27515.     BYTE tmLastChar;
  27516.     BYTE tmDefaultChar;
  27517.     BYTE tmBreakChar;
  27518.     BYTE tmItalic;
  27519.     BYTE tmUnderlined;
  27520.     BYTE tmStruckOut;
  27521.     BYTE tmPitchAndFamily;
  27522.     BYTE tmCharSet;
  27523. } TEXTMETRICA, *PTEXTMETRICA, *NPTEXTMETRICA, *LPTEXTMETRICA;
  27524. typedef struct tagTEXTMETRICW
  27525. {
  27526.     LONG tmHeight;
  27527.     LONG tmAscent;
  27528.     LONG tmDescent;
  27529.     LONG tmInternalLeading;
  27530.     LONG tmExternalLeading;
  27531.     LONG tmAveCharWidth;
  27532.     LONG tmMaxCharWidth;
  27533.     LONG tmWeight;
  27534.     LONG tmOverhang;
  27535.     LONG tmDigitizedAspectX;
  27536.     LONG tmDigitizedAspectY;
  27537.     WCHAR tmFirstChar;
  27538.     WCHAR tmLastChar;
  27539.     WCHAR tmDefaultChar;
  27540.     WCHAR tmBreakChar;
  27541.     BYTE tmItalic;
  27542.     BYTE tmUnderlined;
  27543.     BYTE tmStruckOut;
  27544.     BYTE tmPitchAndFamily;
  27545.     BYTE tmCharSet;
  27546. } TEXTMETRICW, *PTEXTMETRICW, *NPTEXTMETRICW, *LPTEXTMETRICW;
  27547.  
  27548.  
  27549.  
  27550.  
  27551.  
  27552.  
  27553. typedef TEXTMETRICA TEXTMETRIC;
  27554. typedef PTEXTMETRICA PTEXTMETRIC;
  27555. typedef NPTEXTMETRICA NPTEXTMETRIC;
  27556. typedef LPTEXTMETRICA LPTEXTMETRIC;
  27557.  
  27558.  
  27559.  
  27560. #pragma endregion
  27561.  
  27562.  
  27563. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  27564. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  27565. #pragma warning(disable: 4103)
  27566.  
  27567. #pragma pack(pop)
  27568. # 1215 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  27569. # 1232 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  27570. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 1 3
  27571. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 3
  27572. #pragma warning(disable: 4103)
  27573.  
  27574. #pragma pack(push,4)
  27575. # 1232 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  27576.  
  27577.  
  27578. #pragma region Desktop Family
  27579.  
  27580.  
  27581. typedef struct tagNEWTEXTMETRICA
  27582. {
  27583.     LONG tmHeight;
  27584.     LONG tmAscent;
  27585.     LONG tmDescent;
  27586.     LONG tmInternalLeading;
  27587.     LONG tmExternalLeading;
  27588.     LONG tmAveCharWidth;
  27589.     LONG tmMaxCharWidth;
  27590.     LONG tmWeight;
  27591.     LONG tmOverhang;
  27592.     LONG tmDigitizedAspectX;
  27593.     LONG tmDigitizedAspectY;
  27594.     BYTE tmFirstChar;
  27595.     BYTE tmLastChar;
  27596.     BYTE tmDefaultChar;
  27597.     BYTE tmBreakChar;
  27598.     BYTE tmItalic;
  27599.     BYTE tmUnderlined;
  27600.     BYTE tmStruckOut;
  27601.     BYTE tmPitchAndFamily;
  27602.     BYTE tmCharSet;
  27603.     DWORD ntmFlags;
  27604.     UINT ntmSizeEM;
  27605.     UINT ntmCellHeight;
  27606.     UINT ntmAvgWidth;
  27607. } NEWTEXTMETRICA, *PNEWTEXTMETRICA, *NPNEWTEXTMETRICA, *LPNEWTEXTMETRICA;
  27608. typedef struct tagNEWTEXTMETRICW
  27609. {
  27610.     LONG tmHeight;
  27611.     LONG tmAscent;
  27612.     LONG tmDescent;
  27613.     LONG tmInternalLeading;
  27614.     LONG tmExternalLeading;
  27615.     LONG tmAveCharWidth;
  27616.     LONG tmMaxCharWidth;
  27617.     LONG tmWeight;
  27618.     LONG tmOverhang;
  27619.     LONG tmDigitizedAspectX;
  27620.     LONG tmDigitizedAspectY;
  27621.     WCHAR tmFirstChar;
  27622.     WCHAR tmLastChar;
  27623.     WCHAR tmDefaultChar;
  27624.     WCHAR tmBreakChar;
  27625.     BYTE tmItalic;
  27626.     BYTE tmUnderlined;
  27627.     BYTE tmStruckOut;
  27628.     BYTE tmPitchAndFamily;
  27629.     BYTE tmCharSet;
  27630.     DWORD ntmFlags;
  27631.     UINT ntmSizeEM;
  27632.     UINT ntmCellHeight;
  27633.     UINT ntmAvgWidth;
  27634. } NEWTEXTMETRICW, *PNEWTEXTMETRICW, *NPNEWTEXTMETRICW, *LPNEWTEXTMETRICW;
  27635.  
  27636.  
  27637.  
  27638.  
  27639.  
  27640.  
  27641. typedef NEWTEXTMETRICA NEWTEXTMETRIC;
  27642. typedef PNEWTEXTMETRICA PNEWTEXTMETRIC;
  27643. typedef NPNEWTEXTMETRICA NPNEWTEXTMETRIC;
  27644. typedef LPNEWTEXTMETRICA LPNEWTEXTMETRIC;
  27645.  
  27646.  
  27647.  
  27648. #pragma endregion
  27649.  
  27650.  
  27651. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  27652. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  27653. #pragma warning(disable: 4103)
  27654.  
  27655. #pragma pack(pop)
  27656. # 1306 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 2 3
  27657.  
  27658.  
  27659.  
  27660.  
  27661. #pragma region Desktop Family
  27662.  
  27663.  
  27664. typedef struct tagNEWTEXTMETRICEXA
  27665. {
  27666.     NEWTEXTMETRICA ntmTm;
  27667.     FONTSIGNATURE ntmFontSig;
  27668. }NEWTEXTMETRICEXA;
  27669. typedef struct tagNEWTEXTMETRICEXW
  27670. {
  27671.     NEWTEXTMETRICW ntmTm;
  27672.     FONTSIGNATURE ntmFontSig;
  27673. }NEWTEXTMETRICEXW;
  27674.  
  27675.  
  27676.  
  27677. typedef NEWTEXTMETRICEXA NEWTEXTMETRICEX;
  27678.  
  27679.  
  27680.  
  27681. #pragma endregion
  27682.  
  27683.  
  27684.  
  27685.  
  27686.  
  27687.  
  27688. #pragma region Desktop Family
  27689.  
  27690.  
  27691. typedef struct tagPELARRAY
  27692.   {
  27693.     LONG paXCount;
  27694.     LONG paYCount;
  27695.     LONG paXExt;
  27696.     LONG paYExt;
  27697.     BYTE paRGBs;
  27698.   } PELARRAY, *PPELARRAY, *NPPELARRAY, *LPPELARRAY;
  27699.  
  27700.  
  27701. #pragma endregion
  27702.  
  27703. #pragma region Application Family
  27704.  
  27705.  
  27706.  
  27707. typedef struct tagLOGBRUSH
  27708.   {
  27709.     UINT lbStyle;
  27710.     COLORREF lbColor;
  27711.     ULONG_PTR lbHatch;
  27712.   } LOGBRUSH, *PLOGBRUSH, *NPLOGBRUSH, *LPLOGBRUSH;
  27713.  
  27714. typedef struct tagLOGBRUSH32
  27715.   {
  27716.     UINT lbStyle;
  27717.     COLORREF lbColor;
  27718.     ULONG lbHatch;
  27719.   } LOGBRUSH32, *PLOGBRUSH32, *NPLOGBRUSH32, *LPLOGBRUSH32;
  27720.  
  27721.  
  27722. #pragma endregion
  27723.  
  27724. #pragma region Desktop Family
  27725.  
  27726.  
  27727. typedef LOGBRUSH PATTERN;
  27728. typedef PATTERN *PPATTERN;
  27729. typedef PATTERN *NPPATTERN;
  27730. typedef PATTERN *LPPATTERN;
  27731.  
  27732.  
  27733. #pragma endregion
  27734.  
  27735. #pragma region Application Family
  27736.  
  27737.  
  27738.  
  27739. typedef struct tagLOGPEN
  27740.   {
  27741.     UINT lopnStyle;
  27742.     POINT lopnWidth;
  27743.     COLORREF lopnColor;
  27744.   } LOGPEN, *PLOGPEN, *NPLOGPEN, *LPLOGPEN;
  27745.  
  27746.  
  27747. #pragma endregion
  27748.  
  27749. #pragma region Desktop Family
  27750.  
  27751.  
  27752. typedef struct tagEXTLOGPEN {
  27753.     DWORD elpPenStyle;
  27754.     DWORD elpWidth;
  27755.     UINT elpBrushStyle;
  27756.     COLORREF elpColor;
  27757.     ULONG_PTR elpHatch;
  27758.     DWORD elpNumEntries;
  27759.     DWORD elpStyleEntry[1];
  27760. } EXTLOGPEN, *PEXTLOGPEN, *NPEXTLOGPEN, *LPEXTLOGPEN;
  27761.  
  27762.  
  27763. #pragma endregion
  27764.  
  27765. #pragma region Application Family
  27766.  
  27767.  
  27768. typedef struct tagEXTLOGPEN32 {
  27769.     DWORD elpPenStyle;
  27770.     DWORD elpWidth;
  27771.     UINT elpBrushStyle;
  27772.     COLORREF elpColor;
  27773.     ULONG elpHatch;
  27774.     DWORD elpNumEntries;
  27775.     DWORD elpStyleEntry[1];
  27776. } EXTLOGPEN32, *PEXTLOGPEN32, *NPEXTLOGPEN32, *LPEXTLOGPEN32;
  27777.  
  27778.  
  27779.  
  27780. typedef struct tagPALETTEENTRY {
  27781.     BYTE peRed;
  27782.     BYTE peGreen;
  27783.     BYTE peBlue;
  27784.     BYTE peFlags;
  27785. } PALETTEENTRY, *PPALETTEENTRY, *LPPALETTEENTRY;
  27786.  
  27787.  
  27788.  
  27789.  
  27790.  
  27791. typedef struct tagLOGPALETTE {
  27792.     WORD palVersion;
  27793.     WORD palNumEntries;
  27794.                                     PALETTEENTRY palPalEntry[1];
  27795. } LOGPALETTE, *PLOGPALETTE, *NPLOGPALETTE, *LPLOGPALETTE;
  27796.  
  27797.  
  27798.  
  27799.  
  27800.  
  27801.  
  27802. typedef struct tagLOGFONTA
  27803. {
  27804.     LONG lfHeight;
  27805.     LONG lfWidth;
  27806.     LONG lfEscapement;
  27807.     LONG lfOrientation;
  27808.     LONG lfWeight;
  27809.     BYTE lfItalic;
  27810.     BYTE lfUnderline;
  27811.     BYTE lfStrikeOut;
  27812.     BYTE lfCharSet;
  27813.     BYTE lfOutPrecision;
  27814.     BYTE lfClipPrecision;
  27815.     BYTE lfQuality;
  27816.     BYTE lfPitchAndFamily;
  27817.     CHAR lfFaceName[32];
  27818. } LOGFONTA, *PLOGFONTA, *NPLOGFONTA, *LPLOGFONTA;
  27819. typedef struct tagLOGFONTW
  27820. {
  27821.     LONG lfHeight;
  27822.     LONG lfWidth;
  27823.     LONG lfEscapement;
  27824.     LONG lfOrientation;
  27825.     LONG lfWeight;
  27826.     BYTE lfItalic;
  27827.     BYTE lfUnderline;
  27828.     BYTE lfStrikeOut;
  27829.     BYTE lfCharSet;
  27830.     BYTE lfOutPrecision;
  27831.     BYTE lfClipPrecision;
  27832.     BYTE lfQuality;
  27833.     BYTE lfPitchAndFamily;
  27834.     WCHAR lfFaceName[32];
  27835. } LOGFONTW, *PLOGFONTW, *NPLOGFONTW, *LPLOGFONTW;
  27836.  
  27837.  
  27838.  
  27839.  
  27840.  
  27841.  
  27842. typedef LOGFONTA LOGFONT;
  27843. typedef PLOGFONTA PLOGFONT;
  27844. typedef NPLOGFONTA NPLOGFONT;
  27845. typedef LPLOGFONTA LPLOGFONT;
  27846.  
  27847.  
  27848.  
  27849. #pragma endregion
  27850.  
  27851.  
  27852.  
  27853. #pragma region Desktop Family
  27854.  
  27855.  
  27856.  
  27857. typedef struct tagENUMLOGFONTA
  27858. {
  27859.     LOGFONTA elfLogFont;
  27860.     BYTE elfFullName[64];
  27861.     BYTE elfStyle[32];
  27862. } ENUMLOGFONTA, * LPENUMLOGFONTA;
  27863.  
  27864. typedef struct tagENUMLOGFONTW
  27865. {
  27866.     LOGFONTW elfLogFont;
  27867.     WCHAR elfFullName[64];
  27868.     WCHAR elfStyle[32];
  27869. } ENUMLOGFONTW, * LPENUMLOGFONTW;
  27870.  
  27871.  
  27872.  
  27873.  
  27874. typedef ENUMLOGFONTA ENUMLOGFONT;
  27875. typedef LPENUMLOGFONTA LPENUMLOGFONT;
  27876.  
  27877.  
  27878.  
  27879. typedef struct tagENUMLOGFONTEXA
  27880. {
  27881.     LOGFONTA elfLogFont;
  27882.     BYTE elfFullName[64];
  27883.     BYTE elfStyle[32];
  27884.     BYTE elfScript[32];
  27885. } ENUMLOGFONTEXA, *LPENUMLOGFONTEXA;
  27886. typedef struct tagENUMLOGFONTEXW
  27887. {
  27888.     LOGFONTW elfLogFont;
  27889.     WCHAR elfFullName[64];
  27890.     WCHAR elfStyle[32];
  27891.     WCHAR elfScript[32];
  27892. } ENUMLOGFONTEXW, *LPENUMLOGFONTEXW;
  27893.  
  27894.  
  27895.  
  27896.  
  27897. typedef ENUMLOGFONTEXA ENUMLOGFONTEX;
  27898. typedef LPENUMLOGFONTEXA LPENUMLOGFONTEX;
  27899.  
  27900.  
  27901.  
  27902.  
  27903. #pragma endregion
  27904. # 1681 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  27905. #pragma region Application Family
  27906.  
  27907.  
  27908. typedef struct tagPANOSE
  27909. {
  27910.     BYTE bFamilyType;
  27911.     BYTE bSerifStyle;
  27912.     BYTE bWeight;
  27913.     BYTE bProportion;
  27914.     BYTE bContrast;
  27915.     BYTE bStrokeVariation;
  27916.     BYTE bArmStyle;
  27917.     BYTE bLetterform;
  27918.     BYTE bMidline;
  27919.     BYTE bXHeight;
  27920. } PANOSE, * LPPANOSE;
  27921. # 1810 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  27922. typedef struct tagEXTLOGFONTA {
  27923.     LOGFONTA elfLogFont;
  27924.     BYTE elfFullName[64];
  27925.     BYTE elfStyle[32];
  27926.     DWORD elfVersion;
  27927.     DWORD elfStyleSize;
  27928.     DWORD elfMatch;
  27929.     DWORD elfReserved;
  27930.     BYTE elfVendorId[4];
  27931.     DWORD elfCulture;
  27932.     PANOSE elfPanose;
  27933. } EXTLOGFONTA, *PEXTLOGFONTA, *NPEXTLOGFONTA, *LPEXTLOGFONTA;
  27934. typedef struct tagEXTLOGFONTW {
  27935.     LOGFONTW elfLogFont;
  27936.     WCHAR elfFullName[64];
  27937.     WCHAR elfStyle[32];
  27938.     DWORD elfVersion;
  27939.     DWORD elfStyleSize;
  27940.     DWORD elfMatch;
  27941.     DWORD elfReserved;
  27942.     BYTE elfVendorId[4];
  27943.     DWORD elfCulture;
  27944.     PANOSE elfPanose;
  27945. } EXTLOGFONTW, *PEXTLOGFONTW, *NPEXTLOGFONTW, *LPEXTLOGFONTW;
  27946.  
  27947.  
  27948.  
  27949.  
  27950.  
  27951.  
  27952. typedef EXTLOGFONTA EXTLOGFONT;
  27953. typedef PEXTLOGFONTA PEXTLOGFONT;
  27954. typedef NPEXTLOGFONTA NPEXTLOGFONT;
  27955. typedef LPEXTLOGFONTA LPEXTLOGFONT;
  27956.  
  27957.  
  27958.  
  27959. #pragma endregion
  27960. # 2192 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  27961. #pragma region Application Family
  27962.  
  27963.  
  27964.  
  27965. typedef struct _devicemodeA {
  27966.     BYTE dmDeviceName[32];
  27967.     WORD dmSpecVersion;
  27968.     WORD dmDriverVersion;
  27969.     WORD dmSize;
  27970.     WORD dmDriverExtra;
  27971.     DWORD dmFields;
  27972.     union {
  27973.  
  27974.       struct {
  27975.         short dmOrientation;
  27976.         short dmPaperSize;
  27977.         short dmPaperLength;
  27978.         short dmPaperWidth;
  27979.         short dmScale;
  27980.         short dmCopies;
  27981.         short dmDefaultSource;
  27982.         short dmPrintQuality;
  27983.       } ;
  27984.  
  27985.       struct {
  27986.         POINTL dmPosition;
  27987.         DWORD dmDisplayOrientation;
  27988.         DWORD dmDisplayFixedOutput;
  27989.       } ;
  27990.     } ;
  27991.     short dmColor;
  27992.     short dmDuplex;
  27993.     short dmYResolution;
  27994.     short dmTTOption;
  27995.     short dmCollate;
  27996.     BYTE dmFormName[32];
  27997.     WORD dmLogPixels;
  27998.     DWORD dmBitsPerPel;
  27999.     DWORD dmPelsWidth;
  28000.     DWORD dmPelsHeight;
  28001.     union {
  28002.         DWORD dmDisplayFlags;
  28003.         DWORD dmNup;
  28004.     } ;
  28005.     DWORD dmDisplayFrequency;
  28006.  
  28007.     DWORD dmICMMethod;
  28008.     DWORD dmICMIntent;
  28009.     DWORD dmMediaType;
  28010.     DWORD dmDitherType;
  28011.     DWORD dmReserved1;
  28012.     DWORD dmReserved2;
  28013.  
  28014.     DWORD dmPanningWidth;
  28015.     DWORD dmPanningHeight;
  28016.  
  28017.  
  28018. } DEVMODEA, *PDEVMODEA, *NPDEVMODEA, *LPDEVMODEA;
  28019. typedef struct _devicemodeW {
  28020.     WCHAR dmDeviceName[32];
  28021.     WORD dmSpecVersion;
  28022.     WORD dmDriverVersion;
  28023.     WORD dmSize;
  28024.     WORD dmDriverExtra;
  28025.     DWORD dmFields;
  28026.     union {
  28027.  
  28028.       struct {
  28029.         short dmOrientation;
  28030.         short dmPaperSize;
  28031.         short dmPaperLength;
  28032.         short dmPaperWidth;
  28033.         short dmScale;
  28034.         short dmCopies;
  28035.         short dmDefaultSource;
  28036.         short dmPrintQuality;
  28037.       } ;
  28038.  
  28039.       struct {
  28040.         POINTL dmPosition;
  28041.         DWORD dmDisplayOrientation;
  28042.         DWORD dmDisplayFixedOutput;
  28043.       } ;
  28044.     } ;
  28045.     short dmColor;
  28046.     short dmDuplex;
  28047.     short dmYResolution;
  28048.     short dmTTOption;
  28049.     short dmCollate;
  28050.     WCHAR dmFormName[32];
  28051.     WORD dmLogPixels;
  28052.     DWORD dmBitsPerPel;
  28053.     DWORD dmPelsWidth;
  28054.     DWORD dmPelsHeight;
  28055.     union {
  28056.         DWORD dmDisplayFlags;
  28057.         DWORD dmNup;
  28058.     } ;
  28059.     DWORD dmDisplayFrequency;
  28060.  
  28061.     DWORD dmICMMethod;
  28062.     DWORD dmICMIntent;
  28063.     DWORD dmMediaType;
  28064.     DWORD dmDitherType;
  28065.     DWORD dmReserved1;
  28066.     DWORD dmReserved2;
  28067.  
  28068.     DWORD dmPanningWidth;
  28069.     DWORD dmPanningHeight;
  28070.  
  28071.  
  28072. } DEVMODEW, *PDEVMODEW, *NPDEVMODEW, *LPDEVMODEW;
  28073.  
  28074.  
  28075.  
  28076.  
  28077.  
  28078.  
  28079. typedef DEVMODEA DEVMODE;
  28080. typedef PDEVMODEA PDEVMODE;
  28081. typedef NPDEVMODEA NPDEVMODE;
  28082. typedef LPDEVMODEA LPDEVMODE;
  28083. # 2426 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28084. #pragma endregion
  28085. # 2728 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28086. #pragma region Application Family
  28087.  
  28088.  
  28089. typedef struct _DISPLAY_DEVICEA {
  28090.     DWORD cb;
  28091.     CHAR DeviceName[32];
  28092.     CHAR DeviceString[128];
  28093.     DWORD StateFlags;
  28094.     CHAR DeviceID[128];
  28095.     CHAR DeviceKey[128];
  28096. } DISPLAY_DEVICEA, *PDISPLAY_DEVICEA, *LPDISPLAY_DEVICEA;
  28097. typedef struct _DISPLAY_DEVICEW {
  28098.     DWORD cb;
  28099.     WCHAR DeviceName[32];
  28100.     WCHAR DeviceString[128];
  28101.     DWORD StateFlags;
  28102.     WCHAR DeviceID[128];
  28103.     WCHAR DeviceKey[128];
  28104. } DISPLAY_DEVICEW, *PDISPLAY_DEVICEW, *LPDISPLAY_DEVICEW;
  28105.  
  28106.  
  28107.  
  28108.  
  28109.  
  28110. typedef DISPLAY_DEVICEA DISPLAY_DEVICE;
  28111. typedef PDISPLAY_DEVICEA PDISPLAY_DEVICE;
  28112. typedef LPDISPLAY_DEVICEA LPDISPLAY_DEVICE;
  28113.  
  28114.  
  28115.  
  28116. #pragma endregion
  28117. # 2794 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28118. #pragma region Application Family
  28119.  
  28120.  
  28121. typedef struct DISPLAYCONFIG_RATIONAL
  28122. {
  28123.     UINT32 Numerator;
  28124.     UINT32 Denominator;
  28125. } DISPLAYCONFIG_RATIONAL;
  28126.  
  28127. typedef enum
  28128. {
  28129.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_OTHER = -1,
  28130.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_HD15 = 0,
  28131.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_SVIDEO = 1,
  28132.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_COMPOSITE_VIDEO = 2,
  28133.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_COMPONENT_VIDEO = 3,
  28134.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DVI = 4,
  28135.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_HDMI = 5,
  28136.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_LVDS = 6,
  28137.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_D_JPN = 8,
  28138.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_SDI = 9,
  28139.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DISPLAYPORT_EXTERNAL = 10,
  28140.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_DISPLAYPORT_EMBEDDED = 11,
  28141.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_UDI_EXTERNAL = 12,
  28142.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_UDI_EMBEDDED = 13,
  28143.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_SDTVDONGLE = 14,
  28144.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_MIRACAST = 15,
  28145.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INDIRECT_WIRED = 16,
  28146.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_INTERNAL = 0x80000000,
  28147.     DISPLAYCONFIG_OUTPUT_TECHNOLOGY_FORCE_UINT32 = 0xFFFFFFFF
  28148. } DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY;
  28149.  
  28150. typedef enum
  28151. {
  28152.     DISPLAYCONFIG_SCANLINE_ORDERING_UNSPECIFIED = 0,
  28153.     DISPLAYCONFIG_SCANLINE_ORDERING_PROGRESSIVE = 1,
  28154.     DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED = 2,
  28155.     DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED_UPPERFIELDFIRST = DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED,
  28156.     DISPLAYCONFIG_SCANLINE_ORDERING_INTERLACED_LOWERFIELDFIRST = 3,
  28157.     DISPLAYCONFIG_SCANLINE_ORDERING_FORCE_UINT32 = 0xFFFFFFFF
  28158. } DISPLAYCONFIG_SCANLINE_ORDERING;
  28159.  
  28160. typedef struct DISPLAYCONFIG_2DREGION
  28161. {
  28162.     UINT32 cx;
  28163.     UINT32 cy;
  28164. } DISPLAYCONFIG_2DREGION;
  28165.  
  28166. typedef struct DISPLAYCONFIG_VIDEO_SIGNAL_INFO
  28167. {
  28168.     UINT64 pixelRate;
  28169.     DISPLAYCONFIG_RATIONAL hSyncFreq;
  28170.     DISPLAYCONFIG_RATIONAL vSyncFreq;
  28171.     DISPLAYCONFIG_2DREGION activeSize;
  28172.     DISPLAYCONFIG_2DREGION totalSize;
  28173.  
  28174.     union
  28175.     {
  28176.         struct
  28177.         {
  28178.             UINT32 videoStandard : 16;
  28179.  
  28180.  
  28181.             UINT32 vSyncFreqDivider : 6;
  28182.  
  28183.             UINT32 reserved : 10;
  28184.         } AdditionalSignalInfo;
  28185.  
  28186.         UINT32 videoStandard;
  28187.     } ;
  28188.  
  28189.  
  28190.     DISPLAYCONFIG_SCANLINE_ORDERING scanLineOrdering;
  28191. } DISPLAYCONFIG_VIDEO_SIGNAL_INFO;
  28192.  
  28193. typedef enum
  28194. {
  28195.     DISPLAYCONFIG_SCALING_IDENTITY = 1,
  28196.     DISPLAYCONFIG_SCALING_CENTERED = 2,
  28197.     DISPLAYCONFIG_SCALING_STRETCHED = 3,
  28198.     DISPLAYCONFIG_SCALING_ASPECTRATIOCENTEREDMAX = 4,
  28199.     DISPLAYCONFIG_SCALING_CUSTOM = 5,
  28200.     DISPLAYCONFIG_SCALING_PREFERRED = 128,
  28201.     DISPLAYCONFIG_SCALING_FORCE_UINT32 = 0xFFFFFFFF
  28202. } DISPLAYCONFIG_SCALING;
  28203.  
  28204. typedef enum
  28205. {
  28206.     DISPLAYCONFIG_ROTATION_IDENTITY = 1,
  28207.     DISPLAYCONFIG_ROTATION_ROTATE90 = 2,
  28208.     DISPLAYCONFIG_ROTATION_ROTATE180 = 3,
  28209.     DISPLAYCONFIG_ROTATION_ROTATE270 = 4,
  28210.     DISPLAYCONFIG_ROTATION_FORCE_UINT32 = 0xFFFFFFFF
  28211. } DISPLAYCONFIG_ROTATION;
  28212.  
  28213. typedef enum
  28214. {
  28215.     DISPLAYCONFIG_MODE_INFO_TYPE_SOURCE = 1,
  28216.     DISPLAYCONFIG_MODE_INFO_TYPE_TARGET = 2,
  28217.     DISPLAYCONFIG_MODE_INFO_TYPE_DESKTOP_IMAGE = 3,
  28218.     DISPLAYCONFIG_MODE_INFO_TYPE_FORCE_UINT32 = 0xFFFFFFFF
  28219. } DISPLAYCONFIG_MODE_INFO_TYPE;
  28220.  
  28221. typedef enum
  28222. {
  28223.     DISPLAYCONFIG_PIXELFORMAT_8BPP = 1,
  28224.     DISPLAYCONFIG_PIXELFORMAT_16BPP = 2,
  28225.     DISPLAYCONFIG_PIXELFORMAT_24BPP = 3,
  28226.     DISPLAYCONFIG_PIXELFORMAT_32BPP = 4,
  28227.     DISPLAYCONFIG_PIXELFORMAT_NONGDI = 5,
  28228.     DISPLAYCONFIG_PIXELFORMAT_FORCE_UINT32 = 0xffffffff
  28229. } DISPLAYCONFIG_PIXELFORMAT;
  28230.  
  28231. typedef struct DISPLAYCONFIG_SOURCE_MODE
  28232. {
  28233.     UINT32 width;
  28234.     UINT32 height;
  28235.     DISPLAYCONFIG_PIXELFORMAT pixelFormat;
  28236.     POINTL position;
  28237. } DISPLAYCONFIG_SOURCE_MODE;
  28238.  
  28239. typedef struct DISPLAYCONFIG_TARGET_MODE
  28240. {
  28241.     DISPLAYCONFIG_VIDEO_SIGNAL_INFO targetVideoSignalInfo;
  28242. } DISPLAYCONFIG_TARGET_MODE;
  28243.  
  28244. typedef struct DISPLAYCONFIG_DESKTOP_IMAGE_INFO
  28245. {
  28246.     POINTL PathSourceSize;
  28247.     RECTL DesktopImageRegion;
  28248.     RECTL DesktopImageClip;
  28249. } DISPLAYCONFIG_DESKTOP_IMAGE_INFO;
  28250.  
  28251. typedef struct DISPLAYCONFIG_MODE_INFO
  28252. {
  28253.     DISPLAYCONFIG_MODE_INFO_TYPE infoType;
  28254.     UINT32 id;
  28255.     LUID adapterId;
  28256.     union
  28257.     {
  28258.         DISPLAYCONFIG_TARGET_MODE targetMode;
  28259.         DISPLAYCONFIG_SOURCE_MODE sourceMode;
  28260.         DISPLAYCONFIG_DESKTOP_IMAGE_INFO desktopImageInfo;
  28261.     } ;
  28262. } DISPLAYCONFIG_MODE_INFO;
  28263.  
  28264.  
  28265.  
  28266.  
  28267.  
  28268.  
  28269.  
  28270. typedef struct DISPLAYCONFIG_PATH_SOURCE_INFO
  28271. {
  28272.     LUID adapterId;
  28273.     UINT32 id;
  28274.     union
  28275.     {
  28276.         UINT32 modeInfoIdx;
  28277.         struct
  28278.         {
  28279.             UINT32 cloneGroupId : 16;
  28280.             UINT32 sourceModeInfoIdx : 16;
  28281.         } ;
  28282.     } ;
  28283.  
  28284.     UINT32 statusFlags;
  28285. } DISPLAYCONFIG_PATH_SOURCE_INFO;
  28286.  
  28287.  
  28288.  
  28289.  
  28290.  
  28291.  
  28292.  
  28293. typedef struct DISPLAYCONFIG_PATH_TARGET_INFO
  28294. {
  28295.     LUID adapterId;
  28296.     UINT32 id;
  28297.     union
  28298.     {
  28299.         UINT32 modeInfoIdx;
  28300.         struct
  28301.         {
  28302.             UINT32 desktopModeInfoIdx : 16;
  28303.             UINT32 targetModeInfoIdx : 16;
  28304.         } ;
  28305.     } ;
  28306.     DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY outputTechnology;
  28307.     DISPLAYCONFIG_ROTATION rotation;
  28308.     DISPLAYCONFIG_SCALING scaling;
  28309.     DISPLAYCONFIG_RATIONAL refreshRate;
  28310.     DISPLAYCONFIG_SCANLINE_ORDERING scanLineOrdering;
  28311.     BOOL targetAvailable;
  28312.     UINT32 statusFlags;
  28313. } DISPLAYCONFIG_PATH_TARGET_INFO;
  28314. # 3001 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28315. typedef struct DISPLAYCONFIG_PATH_INFO
  28316. {
  28317.     DISPLAYCONFIG_PATH_SOURCE_INFO sourceInfo;
  28318.     DISPLAYCONFIG_PATH_TARGET_INFO targetInfo;
  28319.     UINT32 flags;
  28320. } DISPLAYCONFIG_PATH_INFO;
  28321. # 3017 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28322. typedef enum DISPLAYCONFIG_TOPOLOGY_ID
  28323. {
  28324.       DISPLAYCONFIG_TOPOLOGY_INTERNAL = 0x00000001,
  28325.       DISPLAYCONFIG_TOPOLOGY_CLONE = 0x00000002,
  28326.       DISPLAYCONFIG_TOPOLOGY_EXTEND = 0x00000004,
  28327.       DISPLAYCONFIG_TOPOLOGY_EXTERNAL = 0x00000008,
  28328.       DISPLAYCONFIG_TOPOLOGY_FORCE_UINT32 = 0xFFFFFFFF
  28329. } DISPLAYCONFIG_TOPOLOGY_ID;
  28330.  
  28331.  
  28332. typedef enum
  28333. {
  28334.       DISPLAYCONFIG_DEVICE_INFO_GET_SOURCE_NAME = 1,
  28335.       DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_NAME = 2,
  28336.       DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_PREFERRED_MODE = 3,
  28337.       DISPLAYCONFIG_DEVICE_INFO_GET_ADAPTER_NAME = 4,
  28338.       DISPLAYCONFIG_DEVICE_INFO_SET_TARGET_PERSISTENCE = 5,
  28339.       DISPLAYCONFIG_DEVICE_INFO_GET_TARGET_BASE_TYPE = 6,
  28340.       DISPLAYCONFIG_DEVICE_INFO_GET_SUPPORT_VIRTUAL_RESOLUTION = 7,
  28341.       DISPLAYCONFIG_DEVICE_INFO_SET_SUPPORT_VIRTUAL_RESOLUTION = 8,
  28342.       DISPLAYCONFIG_DEVICE_INFO_GET_ADVANCED_COLOR_INFO = 9,
  28343.       DISPLAYCONFIG_DEVICE_INFO_SET_ADVANCED_COLOR_STATE = 10,
  28344.       DISPLAYCONFIG_DEVICE_INFO_GET_SDR_WHITE_LEVEL = 11,
  28345.       DISPLAYCONFIG_DEVICE_INFO_FORCE_UINT32 = 0xFFFFFFFF
  28346. } DISPLAYCONFIG_DEVICE_INFO_TYPE;
  28347.  
  28348.  
  28349. #pragma endregion
  28350.  
  28351.  
  28352. #pragma region Application Family
  28353.  
  28354.  
  28355. typedef struct DISPLAYCONFIG_DEVICE_INFO_HEADER
  28356. {
  28357.     DISPLAYCONFIG_DEVICE_INFO_TYPE type;
  28358.     UINT32 size;
  28359.     LUID adapterId;
  28360.     UINT32 id;
  28361. } DISPLAYCONFIG_DEVICE_INFO_HEADER;
  28362.  
  28363.  
  28364. #pragma endregion
  28365.  
  28366. #pragma region Desktop Family
  28367.  
  28368.  
  28369. typedef struct DISPLAYCONFIG_SOURCE_DEVICE_NAME
  28370. {
  28371.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28372.     WCHAR viewGdiDeviceName[32];
  28373. } DISPLAYCONFIG_SOURCE_DEVICE_NAME;
  28374.  
  28375. typedef struct DISPLAYCONFIG_TARGET_DEVICE_NAME_FLAGS
  28376. {
  28377.     union
  28378.     {
  28379.         struct
  28380.         {
  28381.             UINT32 friendlyNameFromEdid : 1;
  28382.             UINT32 friendlyNameForced : 1;
  28383.             UINT32 edidIdsValid : 1;
  28384.             UINT32 reserved : 29;
  28385.         } ;
  28386.         UINT32 value;
  28387.     } ;
  28388. } DISPLAYCONFIG_TARGET_DEVICE_NAME_FLAGS;
  28389.  
  28390. typedef struct DISPLAYCONFIG_TARGET_DEVICE_NAME
  28391. {
  28392.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28393.     DISPLAYCONFIG_TARGET_DEVICE_NAME_FLAGS flags;
  28394.     DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY outputTechnology;
  28395.     UINT16 edidManufactureId;
  28396.     UINT16 edidProductCodeId;
  28397.     UINT32 connectorInstance;
  28398.     WCHAR monitorFriendlyDeviceName[64];
  28399.     WCHAR monitorDevicePath[128];
  28400. } DISPLAYCONFIG_TARGET_DEVICE_NAME;
  28401.  
  28402. typedef struct DISPLAYCONFIG_TARGET_PREFERRED_MODE
  28403. {
  28404.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28405.     UINT32 width;
  28406.     UINT32 height;
  28407.     DISPLAYCONFIG_TARGET_MODE targetMode;
  28408. } DISPLAYCONFIG_TARGET_PREFERRED_MODE;
  28409.  
  28410. typedef struct DISPLAYCONFIG_ADAPTER_NAME
  28411. {
  28412.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28413.     WCHAR adapterDevicePath[128];
  28414. } DISPLAYCONFIG_ADAPTER_NAME;
  28415.  
  28416. typedef struct DISPLAYCONFIG_TARGET_BASE_TYPE {
  28417.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28418.     DISPLAYCONFIG_VIDEO_OUTPUT_TECHNOLOGY baseOutputTechnology;
  28419. } DISPLAYCONFIG_TARGET_BASE_TYPE;
  28420.  
  28421. typedef struct DISPLAYCONFIG_SET_TARGET_PERSISTENCE
  28422. {
  28423.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28424.     union
  28425.     {
  28426.         struct
  28427.         {
  28428.             UINT32 bootPersistenceOn : 1;
  28429.             UINT32 reserved : 31;
  28430.         } ;
  28431.         UINT32 value;
  28432.     } ;
  28433. } DISPLAYCONFIG_SET_TARGET_PERSISTENCE;
  28434.  
  28435. typedef struct DISPLAYCONFIG_SUPPORT_VIRTUAL_RESOLUTION
  28436. {
  28437.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28438.     union
  28439.     {
  28440.         struct
  28441.         {
  28442.             UINT32 disableMonitorVirtualResolution : 1;
  28443.             UINT32 reserved : 31;
  28444.         } ;
  28445.         UINT32 value;
  28446.     } ;
  28447. } DISPLAYCONFIG_SUPPORT_VIRTUAL_RESOLUTION;
  28448.  
  28449. typedef enum _DISPLAYCONFIG_COLOR_ENCODING
  28450. {
  28451.     DISPLAYCONFIG_COLOR_ENCODING_RGB = 0,
  28452.     DISPLAYCONFIG_COLOR_ENCODING_YCBCR444 = 1,
  28453.     DISPLAYCONFIG_COLOR_ENCODING_YCBCR422 = 2,
  28454.     DISPLAYCONFIG_COLOR_ENCODING_YCBCR420 = 3,
  28455.     DISPLAYCONFIG_COLOR_ENCODING_INTENSITY = 4,
  28456.     DISPLAYCONFIG_COLOR_ENCODING_FORCE_UINT32 = 0xFFFFFFFF
  28457. } DISPLAYCONFIG_COLOR_ENCODING;
  28458.  
  28459. typedef struct _DISPLAYCONFIG_GET_ADVANCED_COLOR_INFO
  28460. {
  28461.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28462.     union
  28463.     {
  28464.         struct
  28465.         {
  28466.           UINT32 advancedColorSupported :1;
  28467.           UINT32 advancedColorEnabled :1;
  28468.           UINT32 wideColorEnforced :1;
  28469.           UINT32 reserved :29;
  28470.         } ;
  28471.  
  28472.         UINT32 value;
  28473.     } ;
  28474.  
  28475.     DISPLAYCONFIG_COLOR_ENCODING colorEncoding;
  28476.     UINT32 bitsPerColorChannel;
  28477. } DISPLAYCONFIG_GET_ADVANCED_COLOR_INFO;
  28478.  
  28479. typedef struct _DISPLAYCONFIG_SET_ADVANCED_COLOR_STATE
  28480. {
  28481.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28482.     union
  28483.     {
  28484.         struct
  28485.         {
  28486.           UINT32 enableAdvancedColor :1;
  28487.           UINT32 reserved :31;
  28488.         } ;
  28489.  
  28490.         UINT32 value;
  28491.     };
  28492. } DISPLAYCONFIG_SET_ADVANCED_COLOR_STATE;
  28493.  
  28494. typedef struct _DISPLAYCONFIG_SDR_WHITE_LEVEL
  28495. {
  28496.     DISPLAYCONFIG_DEVICE_INFO_HEADER header;
  28497.  
  28498.  
  28499.  
  28500.  
  28501.  
  28502.     ULONG SDRWhiteLevel;
  28503. } DISPLAYCONFIG_SDR_WHITE_LEVEL;
  28504.  
  28505.  
  28506. #pragma endregion
  28507. # 3243 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28508. #pragma region Application Family
  28509.  
  28510.  
  28511. typedef struct _RGNDATAHEADER {
  28512.     DWORD dwSize;
  28513.     DWORD iType;
  28514.     DWORD nCount;
  28515.     DWORD nRgnSize;
  28516.     RECT rcBound;
  28517. } RGNDATAHEADER, *PRGNDATAHEADER;
  28518.  
  28519. typedef struct _RGNDATA {
  28520.     RGNDATAHEADER rdh;
  28521.     char Buffer[1];
  28522. } RGNDATA, *PRGNDATA, *NPRGNDATA, *LPRGNDATA;
  28523.  
  28524.  
  28525. #pragma endregion
  28526.  
  28527.  
  28528.  
  28529.  
  28530.  
  28531.  
  28532. #pragma region Desktop Family
  28533.  
  28534.  
  28535. typedef struct _ABC {
  28536.     int abcA;
  28537.     UINT abcB;
  28538.     int abcC;
  28539. } ABC, *PABC, *NPABC, *LPABC;
  28540.  
  28541. typedef struct _ABCFLOAT {
  28542.     FLOAT abcfA;
  28543.     FLOAT abcfB;
  28544.     FLOAT abcfC;
  28545. } ABCFLOAT, *PABCFLOAT, *NPABCFLOAT, *LPABCFLOAT;
  28546.  
  28547.  
  28548. #pragma endregion
  28549.  
  28550.  
  28551.  
  28552.  
  28553.  
  28554.  
  28555.  
  28556. #pragma region Desktop Family
  28557.  
  28558.  
  28559. typedef struct _OUTLINETEXTMETRICA {
  28560.     UINT otmSize;
  28561.     TEXTMETRICA otmTextMetrics;
  28562.     BYTE otmFiller;
  28563.     PANOSE otmPanoseNumber;
  28564.     UINT otmfsSelection;
  28565.     UINT otmfsType;
  28566.      int otmsCharSlopeRise;
  28567.      int otmsCharSlopeRun;
  28568.      int otmItalicAngle;
  28569.     UINT otmEMSquare;
  28570.      int otmAscent;
  28571.      int otmDescent;
  28572.     UINT otmLineGap;
  28573.     UINT otmsCapEmHeight;
  28574.     UINT otmsXHeight;
  28575.     RECT otmrcFontBox;
  28576.      int otmMacAscent;
  28577.      int otmMacDescent;
  28578.     UINT otmMacLineGap;
  28579.     UINT otmusMinimumPPEM;
  28580.     POINT otmptSubscriptSize;
  28581.     POINT otmptSubscriptOffset;
  28582.     POINT otmptSuperscriptSize;
  28583.     POINT otmptSuperscriptOffset;
  28584.     UINT otmsStrikeoutSize;
  28585.      int otmsStrikeoutPosition;
  28586.      int otmsUnderscoreSize;
  28587.      int otmsUnderscorePosition;
  28588.     PSTR otmpFamilyName;
  28589.     PSTR otmpFaceName;
  28590.     PSTR otmpStyleName;
  28591.     PSTR otmpFullName;
  28592. } OUTLINETEXTMETRICA, *POUTLINETEXTMETRICA, *NPOUTLINETEXTMETRICA, *LPOUTLINETEXTMETRICA;
  28593. typedef struct _OUTLINETEXTMETRICW {
  28594.     UINT otmSize;
  28595.     TEXTMETRICW otmTextMetrics;
  28596.     BYTE otmFiller;
  28597.     PANOSE otmPanoseNumber;
  28598.     UINT otmfsSelection;
  28599.     UINT otmfsType;
  28600.      int otmsCharSlopeRise;
  28601.      int otmsCharSlopeRun;
  28602.      int otmItalicAngle;
  28603.     UINT otmEMSquare;
  28604.      int otmAscent;
  28605.      int otmDescent;
  28606.     UINT otmLineGap;
  28607.     UINT otmsCapEmHeight;
  28608.     UINT otmsXHeight;
  28609.     RECT otmrcFontBox;
  28610.      int otmMacAscent;
  28611.      int otmMacDescent;
  28612.     UINT otmMacLineGap;
  28613.     UINT otmusMinimumPPEM;
  28614.     POINT otmptSubscriptSize;
  28615.     POINT otmptSubscriptOffset;
  28616.     POINT otmptSuperscriptSize;
  28617.     POINT otmptSuperscriptOffset;
  28618.     UINT otmsStrikeoutSize;
  28619.      int otmsStrikeoutPosition;
  28620.      int otmsUnderscoreSize;
  28621.      int otmsUnderscorePosition;
  28622.     PSTR otmpFamilyName;
  28623.     PSTR otmpFaceName;
  28624.     PSTR otmpStyleName;
  28625.     PSTR otmpFullName;
  28626. } OUTLINETEXTMETRICW, *POUTLINETEXTMETRICW, *NPOUTLINETEXTMETRICW, *LPOUTLINETEXTMETRICW;
  28627.  
  28628.  
  28629.  
  28630.  
  28631.  
  28632.  
  28633. typedef OUTLINETEXTMETRICA OUTLINETEXTMETRIC;
  28634. typedef POUTLINETEXTMETRICA POUTLINETEXTMETRIC;
  28635. typedef NPOUTLINETEXTMETRICA NPOUTLINETEXTMETRIC;
  28636. typedef LPOUTLINETEXTMETRICA LPOUTLINETEXTMETRIC;
  28637.  
  28638.  
  28639.  
  28640. #pragma endregion
  28641.  
  28642.  
  28643.  
  28644.  
  28645.  
  28646.  
  28647.  
  28648. #pragma region Application Family
  28649.  
  28650.  
  28651. typedef struct tagPOLYTEXTA
  28652. {
  28653.     int x;
  28654.     int y;
  28655.     UINT n;
  28656.     LPCSTR lpstr;
  28657.     UINT uiFlags;
  28658.     RECT rcl;
  28659.     int *pdx;
  28660. } POLYTEXTA, *PPOLYTEXTA, *NPPOLYTEXTA, *LPPOLYTEXTA;
  28661. typedef struct tagPOLYTEXTW
  28662. {
  28663.     int x;
  28664.     int y;
  28665.     UINT n;
  28666.     LPCWSTR lpstr;
  28667.     UINT uiFlags;
  28668.     RECT rcl;
  28669.     int *pdx;
  28670. } POLYTEXTW, *PPOLYTEXTW, *NPPOLYTEXTW, *LPPOLYTEXTW;
  28671.  
  28672.  
  28673.  
  28674.  
  28675.  
  28676.  
  28677. typedef POLYTEXTA POLYTEXT;
  28678. typedef PPOLYTEXTA PPOLYTEXT;
  28679. typedef NPPOLYTEXTA NPPOLYTEXT;
  28680. typedef LPPOLYTEXTA LPPOLYTEXT;
  28681.  
  28682.  
  28683.  
  28684. #pragma endregion
  28685.  
  28686. #pragma region Desktop Family
  28687.  
  28688.  
  28689. typedef struct _FIXED {
  28690.  
  28691.     WORD fract;
  28692.     short value;
  28693.  
  28694.  
  28695.  
  28696.  
  28697. } FIXED;
  28698.  
  28699.  
  28700. typedef struct _MAT2 {
  28701.      FIXED eM11;
  28702.      FIXED eM12;
  28703.      FIXED eM21;
  28704.      FIXED eM22;
  28705. } MAT2, *LPMAT2;
  28706.  
  28707.  
  28708.  
  28709. typedef struct _GLYPHMETRICS {
  28710.     UINT gmBlackBoxX;
  28711.     UINT gmBlackBoxY;
  28712.     POINT gmptGlyphOrigin;
  28713.     short gmCellIncX;
  28714.     short gmCellIncY;
  28715. } GLYPHMETRICS, *LPGLYPHMETRICS;
  28716.  
  28717.  
  28718. #pragma endregion
  28719. # 3479 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28720. #pragma region Desktop Family
  28721.  
  28722.  
  28723. typedef struct tagPOINTFX
  28724. {
  28725.     FIXED x;
  28726.     FIXED y;
  28727. } POINTFX, * LPPOINTFX;
  28728.  
  28729. typedef struct tagTTPOLYCURVE
  28730. {
  28731.     WORD wType;
  28732.     WORD cpfx;
  28733.     POINTFX apfx[1];
  28734. } TTPOLYCURVE, * LPTTPOLYCURVE;
  28735.  
  28736. typedef struct tagTTPOLYGONHEADER
  28737. {
  28738.     DWORD cb;
  28739.     DWORD dwType;
  28740.     POINTFX pfxStart;
  28741. } TTPOLYGONHEADER, * LPTTPOLYGONHEADER;
  28742.  
  28743.  
  28744. #pragma endregion
  28745. # 3549 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28746. #pragma region Desktop Family
  28747.  
  28748.  
  28749. typedef struct tagGCP_RESULTSA
  28750.     {
  28751.     DWORD lStructSize;
  28752.     LPSTR lpOutString;
  28753.     UINT *lpOrder;
  28754.     int *lpDx;
  28755.     int *lpCaretPos;
  28756.     LPSTR lpClass;
  28757.     LPWSTR lpGlyphs;
  28758.     UINT nGlyphs;
  28759.     int nMaxFit;
  28760.     } GCP_RESULTSA, * LPGCP_RESULTSA;
  28761. typedef struct tagGCP_RESULTSW
  28762.     {
  28763.     DWORD lStructSize;
  28764.     LPWSTR lpOutString;
  28765.     UINT *lpOrder;
  28766.     int *lpDx;
  28767.     int *lpCaretPos;
  28768.     LPSTR lpClass;
  28769.     LPWSTR lpGlyphs;
  28770.     UINT nGlyphs;
  28771.     int nMaxFit;
  28772.     } GCP_RESULTSW, * LPGCP_RESULTSW;
  28773.  
  28774.  
  28775.  
  28776.  
  28777. typedef GCP_RESULTSA GCP_RESULTS;
  28778. typedef LPGCP_RESULTSA LPGCP_RESULTS;
  28779.  
  28780.  
  28781.  
  28782. #pragma endregion
  28783.  
  28784.  
  28785. #pragma region Desktop Family
  28786.  
  28787.  
  28788. typedef struct _RASTERIZER_STATUS {
  28789.     short nSize;
  28790.     short wFlags;
  28791.     short nLanguageID;
  28792. } RASTERIZER_STATUS, *LPRASTERIZER_STATUS;
  28793.  
  28794.  
  28795. #pragma endregion
  28796.  
  28797.  
  28798.  
  28799.  
  28800.  
  28801. #pragma region Application Family
  28802.  
  28803.  
  28804.  
  28805. typedef struct tagPIXELFORMATDESCRIPTOR
  28806. {
  28807.     WORD nSize;
  28808.     WORD nVersion;
  28809.     DWORD dwFlags;
  28810.     BYTE iPixelType;
  28811.     BYTE cColorBits;
  28812.     BYTE cRedBits;
  28813.     BYTE cRedShift;
  28814.     BYTE cGreenBits;
  28815.     BYTE cGreenShift;
  28816.     BYTE cBlueBits;
  28817.     BYTE cBlueShift;
  28818.     BYTE cAlphaBits;
  28819.     BYTE cAlphaShift;
  28820.     BYTE cAccumBits;
  28821.     BYTE cAccumRedBits;
  28822.     BYTE cAccumGreenBits;
  28823.     BYTE cAccumBlueBits;
  28824.     BYTE cAccumAlphaBits;
  28825.     BYTE cDepthBits;
  28826.     BYTE cStencilBits;
  28827.     BYTE cAuxBuffers;
  28828.     BYTE iLayerType;
  28829.     BYTE bReserved;
  28830.     DWORD dwLayerMask;
  28831.     DWORD dwVisibleMask;
  28832.     DWORD dwDamageMask;
  28833. } PIXELFORMATDESCRIPTOR, *PPIXELFORMATDESCRIPTOR, *LPPIXELFORMATDESCRIPTOR;
  28834.  
  28835.  
  28836. #pragma endregion
  28837. # 3674 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28838. #pragma region Desktop Family
  28839.  
  28840.  
  28841.  
  28842.  
  28843.  
  28844. typedef int (__stdcall* OLDFONTENUMPROCA)(const LOGFONTA *, const TEXTMETRICA *, DWORD, LPARAM);
  28845. typedef int (__stdcall* OLDFONTENUMPROCW)(const LOGFONTW *, const TEXTMETRICW *, DWORD, LPARAM);
  28846. # 3697 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28847. typedef OLDFONTENUMPROCA FONTENUMPROCA;
  28848. typedef OLDFONTENUMPROCW FONTENUMPROCW;
  28849.  
  28850.  
  28851.  
  28852. typedef FONTENUMPROCA FONTENUMPROC;
  28853.  
  28854.  
  28855. typedef int (__stdcall* GOBJENUMPROC)(LPVOID, LPARAM);
  28856. typedef void (__stdcall* LINEDDAPROC)(int, int, LPARAM);
  28857. # 3721 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28858. #pragma endregion
  28859.  
  28860.  
  28861.  
  28862. #pragma region Desktop Family
  28863.  
  28864.  
  28865. __declspec(dllimport) int __stdcall AddFontResourceA( LPCSTR);
  28866. __declspec(dllimport) int __stdcall AddFontResourceW( LPCWSTR);
  28867.  
  28868.  
  28869.  
  28870.  
  28871.  
  28872.  
  28873.  __declspec(dllimport) BOOL __stdcall AnimatePalette( HPALETTE hPal, UINT iStartIndex, UINT cEntries, const PALETTEENTRY * ppe);
  28874.  __declspec(dllimport) BOOL __stdcall Arc( HDC hdc, int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4);
  28875.  __declspec(dllimport) BOOL __stdcall BitBlt( HDC hdc, int x, int y, int cx, int cy, HDC hdcSrc, int x1, int y1, DWORD rop);
  28876. __declspec(dllimport) BOOL __stdcall CancelDC( HDC hdc);
  28877.  __declspec(dllimport) BOOL __stdcall Chord( HDC hdc, int x1, int y1, int x2, int y2, int x3, int y3, int x4, int y4);
  28878. __declspec(dllimport) int __stdcall ChoosePixelFormat( HDC hdc, const PIXELFORMATDESCRIPTOR *ppfd);
  28879. __declspec(dllimport) HMETAFILE __stdcall CloseMetaFile( HDC hdc);
  28880. __declspec(dllimport) int __stdcall CombineRgn( HRGN hrgnDst, HRGN hrgnSrc1, HRGN hrgnSrc2, int iMode);
  28881. __declspec(dllimport) HMETAFILE __stdcall CopyMetaFileA( HMETAFILE, LPCSTR);
  28882. __declspec(dllimport) HMETAFILE __stdcall CopyMetaFileW( HMETAFILE, LPCWSTR);
  28883.  
  28884.  
  28885.  
  28886.  
  28887.  
  28888.  __declspec(dllimport) HBITMAP __stdcall CreateBitmap( int nWidth, int nHeight, UINT nPlanes, UINT nBitCount, const void *lpBits);
  28889.  __declspec(dllimport) HBITMAP __stdcall CreateBitmapIndirect( const BITMAP *pbm);
  28890.  __declspec(dllimport) HBRUSH __stdcall CreateBrushIndirect( const LOGBRUSH *plbrush);
  28891. __declspec(dllimport) HBITMAP __stdcall CreateCompatibleBitmap( HDC hdc, int cx, int cy);
  28892. __declspec(dllimport) HBITMAP __stdcall CreateDiscardableBitmap( HDC hdc, int cx, int cy);
  28893. __declspec(dllimport) HDC __stdcall CreateCompatibleDC( HDC hdc);
  28894. __declspec(dllimport) HDC __stdcall CreateDCA( LPCSTR pwszDriver, LPCSTR pwszDevice, LPCSTR pszPort, const DEVMODEA * pdm);
  28895. __declspec(dllimport) HDC __stdcall CreateDCW( LPCWSTR pwszDriver, LPCWSTR pwszDevice, LPCWSTR pszPort, const DEVMODEW * pdm);
  28896.  
  28897.  
  28898.  
  28899.  
  28900.  
  28901. __declspec(dllimport) HBITMAP __stdcall CreateDIBitmap( HDC hdc, const BITMAPINFOHEADER *pbmih, DWORD flInit, const void *pjBits, const BITMAPINFO *pbmi, UINT iUsage);
  28902. __declspec(dllimport) HBRUSH __stdcall CreateDIBPatternBrush( HGLOBAL h, UINT iUsage);
  28903.  __declspec(dllimport) HBRUSH __stdcall CreateDIBPatternBrushPt( const void *lpPackedDIB, UINT iUsage);
  28904. __declspec(dllimport) HRGN __stdcall CreateEllipticRgn( int x1, int y1, int x2, int y2);
  28905. __declspec(dllimport) HRGN __stdcall CreateEllipticRgnIndirect( const RECT *lprect);
  28906.  __declspec(dllimport) HFONT __stdcall CreateFontIndirectA( const LOGFONTA *lplf);
  28907.  __declspec(dllimport) HFONT __stdcall CreateFontIndirectW( const LOGFONTW *lplf);
  28908.  
  28909.  
  28910.  
  28911.  
  28912.  
  28913. __declspec(dllimport) HFONT __stdcall CreateFontA( int cHeight, int cWidth, int cEscapement, int cOrientation, int cWeight, DWORD bItalic,
  28914.                                   DWORD bUnderline, DWORD bStrikeOut, DWORD iCharSet, DWORD iOutPrecision, DWORD iClipPrecision,
  28915.                                   DWORD iQuality, DWORD iPitchAndFamily, LPCSTR pszFaceName);
  28916. __declspec(dllimport) HFONT __stdcall CreateFontW( int cHeight, int cWidth, int cEscapement, int cOrientation, int cWeight, DWORD bItalic,
  28917.                                   DWORD bUnderline, DWORD bStrikeOut, DWORD iCharSet, DWORD iOutPrecision, DWORD iClipPrecision,
  28918.                                   DWORD iQuality, DWORD iPitchAndFamily, LPCWSTR pszFaceName);
  28919.  
  28920.  
  28921.  
  28922.  
  28923.  
  28924.  
  28925. __declspec(dllimport) HBRUSH __stdcall CreateHatchBrush( int iHatch, COLORREF color);
  28926. __declspec(dllimport) HDC __stdcall CreateICA( LPCSTR pszDriver, LPCSTR pszDevice, LPCSTR pszPort, const DEVMODEA * pdm);
  28927. __declspec(dllimport) HDC __stdcall CreateICW( LPCWSTR pszDriver, LPCWSTR pszDevice, LPCWSTR pszPort, const DEVMODEW * pdm);
  28928.  
  28929.  
  28930.  
  28931.  
  28932.  
  28933. __declspec(dllimport) HDC __stdcall CreateMetaFileA( LPCSTR pszFile);
  28934. __declspec(dllimport) HDC __stdcall CreateMetaFileW( LPCWSTR pszFile);
  28935.  
  28936.  
  28937.  
  28938.  
  28939.  
  28940.  __declspec(dllimport) HPALETTE __stdcall CreatePalette( const LOGPALETTE * plpal);
  28941. __declspec(dllimport) HPEN __stdcall CreatePen( int iStyle, int cWidth, COLORREF color);
  28942.  __declspec(dllimport) HPEN __stdcall CreatePenIndirect( const LOGPEN *plpen);
  28943. __declspec(dllimport) HRGN __stdcall CreatePolyPolygonRgn( const POINT *pptl,
  28944.                                                                   const INT *pc,
  28945.                                                      int cPoly,
  28946.                                                      int iMode);
  28947.  __declspec(dllimport) HBRUSH __stdcall CreatePatternBrush( HBITMAP hbm);
  28948. __declspec(dllimport) HRGN __stdcall CreateRectRgn( int x1, int y1, int x2, int y2);
  28949. __declspec(dllimport) HRGN __stdcall CreateRectRgnIndirect( const RECT *lprect);
  28950. __declspec(dllimport) HRGN __stdcall CreateRoundRectRgn( int x1, int y1, int x2, int y2, int w, int h);
  28951. __declspec(dllimport) BOOL __stdcall CreateScalableFontResourceA( DWORD fdwHidden, LPCSTR lpszFont, LPCSTR lpszFile, LPCSTR lpszPath);
  28952. __declspec(dllimport) BOOL __stdcall CreateScalableFontResourceW( DWORD fdwHidden, LPCWSTR lpszFont, LPCWSTR lpszFile, LPCWSTR lpszPath);
  28953.  
  28954.  
  28955.  
  28956.  
  28957.  
  28958. __declspec(dllimport) HBRUSH __stdcall CreateSolidBrush( COLORREF color);
  28959.  
  28960. __declspec(dllimport) BOOL __stdcall DeleteDC( HDC hdc);
  28961. __declspec(dllimport) BOOL __stdcall DeleteMetaFile( HMETAFILE hmf);
  28962.  __declspec(dllimport) BOOL __stdcall DeleteObject( HGDIOBJ ho);
  28963. __declspec(dllimport) int __stdcall DescribePixelFormat( HDC hdc,
  28964.                                                  int iPixelFormat,
  28965.                                                  UINT nBytes,
  28966.                                                                            LPPIXELFORMATDESCRIPTOR ppfd);
  28967.  
  28968.  
  28969.  
  28970.  
  28971.  
  28972. typedef UINT (__stdcall* LPFNDEVMODE)(HWND, HMODULE, LPDEVMODE, LPSTR, LPSTR, LPDEVMODE, LPSTR, UINT);
  28973.  
  28974. typedef DWORD (__stdcall* LPFNDEVCAPS)(LPSTR, LPSTR, UINT, LPSTR, LPDEVMODE);
  28975.  
  28976.  
  28977. #pragma endregion
  28978. # 3919 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  28979. #pragma region Desktop Family
  28980.  
  28981.  
  28982. __declspec(dllimport)
  28983. int
  28984. __stdcall
  28985. DeviceCapabilitiesA(
  28986.                         LPCSTR pDevice,
  28987.                         LPCSTR pPort,
  28988.                         WORD fwCapability,
  28989.                                          LPSTR pOutput,
  28990.                         const DEVMODEA *pDevMode
  28991.     );
  28992. __declspec(dllimport)
  28993. int
  28994. __stdcall
  28995. DeviceCapabilitiesW(
  28996.                         LPCWSTR pDevice,
  28997.                         LPCWSTR pPort,
  28998.                         WORD fwCapability,
  28999.                                          LPWSTR pOutput,
  29000.                         const DEVMODEW *pDevMode
  29001.     );
  29002.  
  29003.  
  29004.  
  29005.  
  29006.  
  29007.  
  29008. __declspec(dllimport) int __stdcall DrawEscape( HDC hdc,
  29009.                                          int iEscape,
  29010.                                          int cjIn,
  29011.                                                                LPCSTR lpIn);
  29012.  
  29013.  __declspec(dllimport) BOOL __stdcall Ellipse( HDC hdc, int left, int top, int right, int bottom);
  29014.  
  29015.  
  29016. __declspec(dllimport) int __stdcall EnumFontFamiliesExA( HDC hdc, LPLOGFONTA lpLogfont, FONTENUMPROCA lpProc, LPARAM lParam, DWORD dwFlags);
  29017. __declspec(dllimport) int __stdcall EnumFontFamiliesExW( HDC hdc, LPLOGFONTW lpLogfont, FONTENUMPROCW lpProc, LPARAM lParam, DWORD dwFlags);
  29018.  
  29019.  
  29020.  
  29021.  
  29022.  
  29023.  
  29024.  
  29025. __declspec(dllimport) int __stdcall EnumFontFamiliesA( HDC hdc, LPCSTR lpLogfont, FONTENUMPROCA lpProc, LPARAM lParam);
  29026. __declspec(dllimport) int __stdcall EnumFontFamiliesW( HDC hdc, LPCWSTR lpLogfont, FONTENUMPROCW lpProc, LPARAM lParam);
  29027.  
  29028.  
  29029.  
  29030.  
  29031.  
  29032. __declspec(dllimport) int __stdcall EnumFontsA( HDC hdc, LPCSTR lpLogfont, FONTENUMPROCA lpProc, LPARAM lParam);
  29033. __declspec(dllimport) int __stdcall EnumFontsW( HDC hdc, LPCWSTR lpLogfont, FONTENUMPROCW lpProc, LPARAM lParam);
  29034.  
  29035.  
  29036.  
  29037.  
  29038.  
  29039.  
  29040.  
  29041. __declspec(dllimport) int __stdcall EnumObjects( HDC hdc, int nType, GOBJENUMPROC lpFunc, LPARAM lParam);
  29042.  
  29043.  
  29044.  
  29045.  
  29046.  
  29047. __declspec(dllimport) BOOL __stdcall EqualRgn( HRGN hrgn1, HRGN hrgn2);
  29048.  __declspec(dllimport) int __stdcall Escape( HDC hdc,
  29049.                                      int iEscape,
  29050.                                      int cjIn,
  29051.                                                            LPCSTR pvIn,
  29052.                                           LPVOID pvOut);
  29053. __declspec(dllimport) int __stdcall ExtEscape( HDC hdc,
  29054.                                          int iEscape,
  29055.                                          int cjInput,
  29056.                                                                   LPCSTR lpInData,
  29057.                                          int cjOutput,
  29058.                                                                      LPSTR lpOutData);
  29059.  __declspec(dllimport) int __stdcall ExcludeClipRect( HDC hdc, int left, int top, int right, int bottom);
  29060.  __declspec(dllimport) HRGN __stdcall ExtCreateRegion( const XFORM * lpx, DWORD nCount, const RGNDATA * lpData);
  29061.  __declspec(dllimport) BOOL __stdcall ExtFloodFill( HDC hdc, int x, int y, COLORREF color, UINT type);
  29062.  __declspec(dllimport) BOOL __stdcall FillRgn( HDC hdc, HRGN hrgn, HBRUSH hbr);
  29063.  __declspec(dllimport) BOOL __stdcall FloodFill( HDC hdc, int x, int y, COLORREF color);
  29064.  __declspec(dllimport) BOOL __stdcall FrameRgn( HDC hdc, HRGN hrgn, HBRUSH hbr, int w, int h);
  29065. __declspec(dllimport) int __stdcall GetROP2( HDC hdc);
  29066. __declspec(dllimport) BOOL __stdcall GetAspectRatioFilterEx( HDC hdc, LPSIZE lpsize);
  29067. __declspec(dllimport) COLORREF __stdcall GetBkColor( HDC hdc);
  29068.  
  29069.  
  29070. __declspec(dllimport) COLORREF __stdcall GetDCBrushColor( HDC hdc);
  29071. __declspec(dllimport) COLORREF __stdcall GetDCPenColor( HDC hdc);
  29072.  
  29073.  
  29074. __declspec(dllimport)
  29075. int
  29076. __stdcall
  29077. GetBkMode(
  29078.          HDC hdc
  29079.     );
  29080.  
  29081. __declspec(dllimport)
  29082. LONG
  29083. __stdcall
  29084. GetBitmapBits(
  29085.          HBITMAP hbit,
  29086.          LONG cb,
  29087.                            LPVOID lpvBits
  29088.     );
  29089.  
  29090. __declspec(dllimport) BOOL __stdcall GetBitmapDimensionEx( HBITMAP hbit, LPSIZE lpsize);
  29091. __declspec(dllimport) UINT __stdcall GetBoundsRect( HDC hdc, LPRECT lprect, UINT flags);
  29092.  
  29093. __declspec(dllimport) BOOL __stdcall GetBrushOrgEx( HDC hdc, LPPOINT lppt);
  29094.  
  29095. __declspec(dllimport) BOOL __stdcall GetCharWidthA( HDC hdc, UINT iFirst, UINT iLast, LPINT lpBuffer);
  29096. __declspec(dllimport) BOOL __stdcall GetCharWidthW( HDC hdc, UINT iFirst, UINT iLast, LPINT lpBuffer);
  29097.  
  29098.  
  29099.  
  29100.  
  29101.  
  29102. __declspec(dllimport) BOOL __stdcall GetCharWidth32A( HDC hdc, UINT iFirst, UINT iLast, LPINT lpBuffer);
  29103. __declspec(dllimport) BOOL __stdcall GetCharWidth32W( HDC hdc, UINT iFirst, UINT iLast, LPINT lpBuffer);
  29104.  
  29105.  
  29106.  
  29107.  
  29108.  
  29109. __declspec(dllimport) BOOL __stdcall GetCharWidthFloatA( HDC hdc, UINT iFirst, UINT iLast, PFLOAT lpBuffer);
  29110. __declspec(dllimport) BOOL __stdcall GetCharWidthFloatW( HDC hdc, UINT iFirst, UINT iLast, PFLOAT lpBuffer);
  29111.  
  29112.  
  29113.  
  29114.  
  29115.  
  29116.  
  29117. __declspec(dllimport) BOOL __stdcall GetCharABCWidthsA( HDC hdc,
  29118.                                                  UINT wFirst,
  29119.                                                  UINT wLast,
  29120.                                                                              LPABC lpABC);
  29121. __declspec(dllimport) BOOL __stdcall GetCharABCWidthsW( HDC hdc,
  29122.                                                  UINT wFirst,
  29123.                                                  UINT wLast,
  29124.                                                                              LPABC lpABC);
  29125.  
  29126.  
  29127.  
  29128.  
  29129.  
  29130.  
  29131. __declspec(dllimport) BOOL __stdcall GetCharABCWidthsFloatA( HDC hdc, UINT iFirst, UINT iLast, LPABCFLOAT lpABC);
  29132. __declspec(dllimport) BOOL __stdcall GetCharABCWidthsFloatW( HDC hdc, UINT iFirst, UINT iLast, LPABCFLOAT lpABC);
  29133.  
  29134.  
  29135.  
  29136.  
  29137.  
  29138. __declspec(dllimport) int __stdcall GetClipBox( HDC hdc, LPRECT lprect);
  29139. __declspec(dllimport) int __stdcall GetClipRgn( HDC hdc, HRGN hrgn);
  29140. __declspec(dllimport) int __stdcall GetMetaRgn( HDC hdc, HRGN hrgn);
  29141. __declspec(dllimport) HGDIOBJ __stdcall GetCurrentObject( HDC hdc, UINT type);
  29142. __declspec(dllimport) BOOL __stdcall GetCurrentPositionEx( HDC hdc, LPPOINT lppt);
  29143. __declspec(dllimport) int __stdcall GetDeviceCaps( HDC hdc, int index);
  29144. __declspec(dllimport) int __stdcall GetDIBits( HDC hdc, HBITMAP hbm, UINT start, UINT cLines,
  29145.               LPVOID lpvBits, LPBITMAPINFO lpbmi, UINT usage);
  29146.  
  29147.  
  29148. __declspec(dllimport) DWORD __stdcall GetFontData ( HDC hdc,
  29149.                                              DWORD dwTable,
  29150.                                              DWORD dwOffset,
  29151.                                                                                     PVOID pvBuffer,
  29152.                                              DWORD cjBuffer
  29153.                                         );
  29154.  
  29155. __declspec(dllimport) DWORD __stdcall GetGlyphOutlineA( HDC hdc,
  29156.                                                  UINT uChar,
  29157.                                                  UINT fuFormat,
  29158.                                                   LPGLYPHMETRICS lpgm,
  29159.                                                  DWORD cjBuffer,
  29160.                                                                              LPVOID pvBuffer,
  29161.                                                  const MAT2 *lpmat2
  29162.                                         );
  29163. __declspec(dllimport) DWORD __stdcall GetGlyphOutlineW( HDC hdc,
  29164.                                                  UINT uChar,
  29165.                                                  UINT fuFormat,
  29166.                                                   LPGLYPHMETRICS lpgm,
  29167.                                                  DWORD cjBuffer,
  29168.                                                                              LPVOID pvBuffer,
  29169.                                                  const MAT2 *lpmat2
  29170.                                         );
  29171.  
  29172.  
  29173.  
  29174.  
  29175.  
  29176.  
  29177. __declspec(dllimport) int __stdcall GetGraphicsMode( HDC hdc);
  29178. __declspec(dllimport) int __stdcall GetMapMode( HDC hdc);
  29179. __declspec(dllimport) UINT __stdcall GetMetaFileBitsEx( HMETAFILE hMF, UINT cbBuffer, LPVOID lpData);
  29180. __declspec(dllimport) HMETAFILE __stdcall GetMetaFileA( LPCSTR lpName);
  29181. __declspec(dllimport) HMETAFILE __stdcall GetMetaFileW( LPCWSTR lpName);
  29182.  
  29183.  
  29184.  
  29185.  
  29186.  
  29187. __declspec(dllimport) COLORREF __stdcall GetNearestColor( HDC hdc, COLORREF color);
  29188. __declspec(dllimport) UINT __stdcall GetNearestPaletteIndex( HPALETTE h, COLORREF color);
  29189. __declspec(dllimport) DWORD __stdcall GetObjectType( HGDIOBJ h);
  29190.  
  29191.  
  29192.  
  29193. __declspec(dllimport) UINT __stdcall GetOutlineTextMetricsA( HDC hdc,
  29194.                                                      UINT cjCopy,
  29195.                                                                                LPOUTLINETEXTMETRICA potm);
  29196. __declspec(dllimport) UINT __stdcall GetOutlineTextMetricsW( HDC hdc,
  29197.                                                      UINT cjCopy,
  29198.                                                                                LPOUTLINETEXTMETRICW potm);
  29199. # 4148 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29200. __declspec(dllimport) UINT __stdcall GetPaletteEntries( HPALETTE hpal,
  29201.                                                  UINT iStart,
  29202.                                                  UINT cEntries,
  29203.                                                                                  LPPALETTEENTRY pPalEntries);
  29204. __declspec(dllimport) COLORREF __stdcall GetPixel( HDC hdc, int x, int y);
  29205. __declspec(dllimport) int __stdcall GetPixelFormat( HDC hdc);
  29206. __declspec(dllimport) int __stdcall GetPolyFillMode( HDC hdc);
  29207. __declspec(dllimport) BOOL __stdcall GetRasterizerCaps( LPRASTERIZER_STATUS lpraststat,
  29208.                                                  UINT cjBytes);
  29209.  
  29210. __declspec(dllimport) int __stdcall GetRandomRgn ( HDC hdc, HRGN hrgn, INT i);
  29211. __declspec(dllimport) DWORD __stdcall GetRegionData( HRGN hrgn,
  29212.                                              DWORD nCount,
  29213.                                                                                   LPRGNDATA lpRgnData);
  29214. __declspec(dllimport) int __stdcall GetRgnBox( HRGN hrgn, LPRECT lprc);
  29215. __declspec(dllimport) HGDIOBJ __stdcall GetStockObject( int i);
  29216. __declspec(dllimport) int __stdcall GetStretchBltMode( HDC hdc);
  29217. __declspec(dllimport)
  29218. UINT
  29219. __stdcall
  29220. GetSystemPaletteEntries(
  29221.          HDC hdc,
  29222.          UINT iStart,
  29223.          UINT cEntries,
  29224.                                LPPALETTEENTRY pPalEntries
  29225.     );
  29226.  
  29227. __declspec(dllimport) UINT __stdcall GetSystemPaletteUse( HDC hdc);
  29228. __declspec(dllimport) int __stdcall GetTextCharacterExtra( HDC hdc);
  29229. __declspec(dllimport) UINT __stdcall GetTextAlign( HDC hdc);
  29230. __declspec(dllimport) COLORREF __stdcall GetTextColor( HDC hdc);
  29231.  
  29232. __declspec(dllimport)
  29233. BOOL
  29234. __stdcall
  29235. GetTextExtentPointA(
  29236.          HDC hdc,
  29237.                   LPCSTR lpString,
  29238.          int c,
  29239.           LPSIZE lpsz
  29240.     );
  29241. __declspec(dllimport)
  29242. BOOL
  29243. __stdcall
  29244. GetTextExtentPointW(
  29245.          HDC hdc,
  29246.                   LPCWSTR lpString,
  29247.          int c,
  29248.           LPSIZE lpsz
  29249.     );
  29250.  
  29251.  
  29252.  
  29253.  
  29254.  
  29255.  
  29256. __declspec(dllimport)
  29257. BOOL
  29258. __stdcall
  29259. GetTextExtentPoint32A(
  29260.          HDC hdc,
  29261.                   LPCSTR lpString,
  29262.          int c,
  29263.           LPSIZE psizl
  29264.     );
  29265. __declspec(dllimport)
  29266. BOOL
  29267. __stdcall
  29268. GetTextExtentPoint32W(
  29269.          HDC hdc,
  29270.                   LPCWSTR lpString,
  29271.          int c,
  29272.           LPSIZE psizl
  29273.     );
  29274.  
  29275.  
  29276.  
  29277.  
  29278.  
  29279.  
  29280. __declspec(dllimport)
  29281. BOOL
  29282. __stdcall
  29283. GetTextExtentExPointA(
  29284.          HDC hdc,
  29285.                           LPCSTR lpszString,
  29286.          int cchString,
  29287.          int nMaxExtent,
  29288.               LPINT lpnFit,
  29289.                                              LPINT lpnDx,
  29290.           LPSIZE lpSize
  29291.     );
  29292. __declspec(dllimport)
  29293. BOOL
  29294. __stdcall
  29295. GetTextExtentExPointW(
  29296.          HDC hdc,
  29297.                           LPCWSTR lpszString,
  29298.          int cchString,
  29299.          int nMaxExtent,
  29300.               LPINT lpnFit,
  29301.                                              LPINT lpnDx,
  29302.           LPSIZE lpSize
  29303.     );
  29304.  
  29305.  
  29306.  
  29307.  
  29308.  
  29309.  
  29310.  
  29311. __declspec(dllimport) int __stdcall GetTextCharset( HDC hdc);
  29312. __declspec(dllimport) int __stdcall GetTextCharsetInfo( HDC hdc, LPFONTSIGNATURE lpSig, DWORD dwFlags);
  29313. __declspec(dllimport) BOOL __stdcall TranslateCharsetInfo( DWORD *lpSrc, LPCHARSETINFO lpCs, DWORD dwFlags);
  29314. __declspec(dllimport) DWORD __stdcall GetFontLanguageInfo( HDC hdc);
  29315. __declspec(dllimport) DWORD __stdcall GetCharacterPlacementA( HDC hdc, LPCSTR lpString, int nCount, int nMexExtent, LPGCP_RESULTSA lpResults, DWORD dwFlags);
  29316. __declspec(dllimport) DWORD __stdcall GetCharacterPlacementW( HDC hdc, LPCWSTR lpString, int nCount, int nMexExtent, LPGCP_RESULTSW lpResults, DWORD dwFlags);
  29317.  
  29318.  
  29319.  
  29320.  
  29321.  
  29322.  
  29323.  
  29324.  
  29325. #pragma endregion
  29326.  
  29327.  
  29328.  
  29329. #pragma region Desktop Family
  29330.  
  29331.  
  29332. typedef struct tagWCRANGE
  29333. {
  29334.     WCHAR wcLow;
  29335.     USHORT cGlyphs;
  29336. } WCRANGE, *PWCRANGE, *LPWCRANGE;
  29337.  
  29338.  
  29339. typedef struct tagGLYPHSET
  29340. {
  29341.     DWORD cbThis;
  29342.     DWORD flAccel;
  29343.     DWORD cGlyphsSupported;
  29344.     DWORD cRanges;
  29345.     WCRANGE ranges[1];
  29346. } GLYPHSET, *PGLYPHSET, *LPGLYPHSET;
  29347. # 4304 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29348. __declspec(dllimport) DWORD __stdcall GetFontUnicodeRanges( HDC hdc, LPGLYPHSET lpgs);
  29349. __declspec(dllimport) DWORD __stdcall GetGlyphIndicesA( HDC hdc, LPCSTR lpstr, int c, LPWORD pgi, DWORD fl);
  29350. __declspec(dllimport) DWORD __stdcall GetGlyphIndicesW( HDC hdc, LPCWSTR lpstr, int c, LPWORD pgi, DWORD fl);
  29351.  
  29352.  
  29353.  
  29354.  
  29355.  
  29356. __declspec(dllimport) BOOL __stdcall GetTextExtentPointI( HDC hdc, LPWORD pgiIn, int cgi, LPSIZE psize);
  29357. __declspec(dllimport) BOOL __stdcall GetTextExtentExPointI ( HDC hdc,
  29358.                                                                        LPWORD lpwszString,
  29359.                                                      int cwchString,
  29360.                                                      int nMaxExtent,
  29361.                                                           LPINT lpnFit,
  29362.                                                                                          LPINT lpnDx,
  29363.                                                       LPSIZE lpSize
  29364.                                                 );
  29365.  
  29366. __declspec(dllimport) BOOL __stdcall GetCharWidthI( HDC hdc,
  29367.                                              UINT giFirst,
  29368.                                              UINT cgi,
  29369.                                                             LPWORD pgi,
  29370.                                                           LPINT piWidths
  29371.                                         );
  29372.  
  29373. __declspec(dllimport) BOOL __stdcall GetCharABCWidthsI( HDC hdc,
  29374.                                                  UINT giFirst,
  29375.                                                  UINT cgi,
  29376.                                                                 LPWORD pgi,
  29377.                                                               LPABC pabc
  29378.                                         );
  29379. # 4345 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29380. typedef struct tagDESIGNVECTOR
  29381. {
  29382.     DWORD dvReserved;
  29383.     DWORD dvNumAxes;
  29384.     LONG dvValues[16];
  29385. } DESIGNVECTOR, *PDESIGNVECTOR, *LPDESIGNVECTOR;
  29386.  
  29387. __declspec(dllimport) int __stdcall AddFontResourceExA( LPCSTR name, DWORD fl, PVOID res);
  29388. __declspec(dllimport) int __stdcall AddFontResourceExW( LPCWSTR name, DWORD fl, PVOID res);
  29389.  
  29390.  
  29391.  
  29392.  
  29393.  
  29394. __declspec(dllimport) BOOL __stdcall RemoveFontResourceExA( LPCSTR name, DWORD fl, PVOID pdv);
  29395. __declspec(dllimport) BOOL __stdcall RemoveFontResourceExW( LPCWSTR name, DWORD fl, PVOID pdv);
  29396.  
  29397.  
  29398.  
  29399.  
  29400.  
  29401. __declspec(dllimport) HANDLE __stdcall AddFontMemResourceEx( PVOID pFileView,
  29402.                                                      DWORD cjSize,
  29403.                                                            PVOID pvResrved,
  29404.                                                      DWORD* pNumFonts);
  29405.  
  29406. __declspec(dllimport) BOOL __stdcall RemoveFontMemResourceEx( HANDLE h);
  29407. # 4381 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29408. typedef struct tagAXISINFOA
  29409. {
  29410.     LONG axMinValue;
  29411.     LONG axMaxValue;
  29412.     BYTE axAxisName[16];
  29413. } AXISINFOA, *PAXISINFOA, *LPAXISINFOA;
  29414. typedef struct tagAXISINFOW
  29415. {
  29416.     LONG axMinValue;
  29417.     LONG axMaxValue;
  29418.     WCHAR axAxisName[16];
  29419. } AXISINFOW, *PAXISINFOW, *LPAXISINFOW;
  29420.  
  29421.  
  29422.  
  29423.  
  29424.  
  29425. typedef AXISINFOA AXISINFO;
  29426. typedef PAXISINFOA PAXISINFO;
  29427. typedef LPAXISINFOA LPAXISINFO;
  29428.  
  29429.  
  29430. typedef struct tagAXESLISTA
  29431. {
  29432.     DWORD axlReserved;
  29433.     DWORD axlNumAxes;
  29434.     AXISINFOA axlAxisInfo[16];
  29435. } AXESLISTA, *PAXESLISTA, *LPAXESLISTA;
  29436. typedef struct tagAXESLISTW
  29437. {
  29438.     DWORD axlReserved;
  29439.     DWORD axlNumAxes;
  29440.     AXISINFOW axlAxisInfo[16];
  29441. } AXESLISTW, *PAXESLISTW, *LPAXESLISTW;
  29442.  
  29443.  
  29444.  
  29445.  
  29446.  
  29447. typedef AXESLISTA AXESLIST;
  29448. typedef PAXESLISTA PAXESLIST;
  29449. typedef LPAXESLISTA LPAXESLIST;
  29450.  
  29451.  
  29452.  
  29453.  
  29454.  
  29455.  
  29456. typedef struct tagENUMLOGFONTEXDVA
  29457. {
  29458.     ENUMLOGFONTEXA elfEnumLogfontEx;
  29459.     DESIGNVECTOR elfDesignVector;
  29460. } ENUMLOGFONTEXDVA, *PENUMLOGFONTEXDVA, *LPENUMLOGFONTEXDVA;
  29461. typedef struct tagENUMLOGFONTEXDVW
  29462. {
  29463.     ENUMLOGFONTEXW elfEnumLogfontEx;
  29464.     DESIGNVECTOR elfDesignVector;
  29465. } ENUMLOGFONTEXDVW, *PENUMLOGFONTEXDVW, *LPENUMLOGFONTEXDVW;
  29466.  
  29467.  
  29468.  
  29469.  
  29470.  
  29471. typedef ENUMLOGFONTEXDVA ENUMLOGFONTEXDV;
  29472. typedef PENUMLOGFONTEXDVA PENUMLOGFONTEXDV;
  29473. typedef LPENUMLOGFONTEXDVA LPENUMLOGFONTEXDV;
  29474.  
  29475.  
  29476. __declspec(dllimport) HFONT __stdcall CreateFontIndirectExA( const ENUMLOGFONTEXDVA *);
  29477. __declspec(dllimport) HFONT __stdcall CreateFontIndirectExW( const ENUMLOGFONTEXDVW *);
  29478.  
  29479.  
  29480.  
  29481.  
  29482.  
  29483.  
  29484.  
  29485. typedef struct tagENUMTEXTMETRICA
  29486. {
  29487.     NEWTEXTMETRICEXA etmNewTextMetricEx;
  29488.     AXESLISTA etmAxesList;
  29489. } ENUMTEXTMETRICA, *PENUMTEXTMETRICA, *LPENUMTEXTMETRICA;
  29490. typedef struct tagENUMTEXTMETRICW
  29491. {
  29492.     NEWTEXTMETRICEXW etmNewTextMetricEx;
  29493.     AXESLISTW etmAxesList;
  29494. } ENUMTEXTMETRICW, *PENUMTEXTMETRICW, *LPENUMTEXTMETRICW;
  29495.  
  29496.  
  29497.  
  29498.  
  29499.  
  29500. typedef ENUMTEXTMETRICA ENUMTEXTMETRIC;
  29501. typedef PENUMTEXTMETRICA PENUMTEXTMETRIC;
  29502. typedef LPENUMTEXTMETRICA LPENUMTEXTMETRIC;
  29503.  
  29504.  
  29505.  
  29506.  
  29507. #pragma endregion
  29508.  
  29509.  
  29510.  
  29511. #pragma region Desktop Family
  29512.  
  29513.  
  29514. __declspec(dllimport) BOOL __stdcall GetViewportExtEx( HDC hdc, LPSIZE lpsize);
  29515. __declspec(dllimport) BOOL __stdcall GetViewportOrgEx( HDC hdc, LPPOINT lppoint);
  29516. __declspec(dllimport) BOOL __stdcall GetWindowExtEx( HDC hdc, LPSIZE lpsize);
  29517. __declspec(dllimport) BOOL __stdcall GetWindowOrgEx( HDC hdc, LPPOINT lppoint);
  29518.  
  29519.  __declspec(dllimport) int __stdcall IntersectClipRect( HDC hdc, int left, int top, int right, int bottom);
  29520.  __declspec(dllimport) BOOL __stdcall InvertRgn( HDC hdc, HRGN hrgn);
  29521. __declspec(dllimport) BOOL __stdcall LineDDA( int xStart, int yStart, int xEnd, int yEnd, LINEDDAPROC lpProc, LPARAM data);
  29522.  __declspec(dllimport) BOOL __stdcall LineTo( HDC hdc, int x, int y);
  29523. __declspec(dllimport) BOOL __stdcall MaskBlt( HDC hdcDest, int xDest, int yDest, int width, int height,
  29524.                    HDC hdcSrc, int xSrc, int ySrc, HBITMAP hbmMask, int xMask, int yMask, DWORD rop);
  29525. __declspec(dllimport) BOOL __stdcall PlgBlt( HDC hdcDest, const POINT * lpPoint, HDC hdcSrc, int xSrc, int ySrc, int width,
  29526.                           int height, HBITMAP hbmMask, int xMask, int yMask);
  29527.  
  29528.  __declspec(dllimport) int __stdcall OffsetClipRgn( HDC hdc, int x, int y);
  29529. __declspec(dllimport) int __stdcall OffsetRgn( HRGN hrgn, int x, int y);
  29530.  __declspec(dllimport) BOOL __stdcall PatBlt( HDC hdc, int x, int y, int w, int h, DWORD rop);
  29531.  __declspec(dllimport) BOOL __stdcall Pie( HDC hdc, int left, int top, int right, int bottom, int xr1, int yr1, int xr2, int yr2);
  29532. __declspec(dllimport) BOOL __stdcall PlayMetaFile( HDC hdc, HMETAFILE hmf);
  29533.  __declspec(dllimport) BOOL __stdcall PaintRgn( HDC hdc, HRGN hrgn);
  29534.  __declspec(dllimport) BOOL __stdcall PolyPolygon( HDC hdc, const POINT *apt, const INT *asz, int csz);
  29535. __declspec(dllimport) BOOL __stdcall PtInRegion( HRGN hrgn, int x, int y);
  29536. __declspec(dllimport) BOOL __stdcall PtVisible( HDC hdc, int x, int y);
  29537. __declspec(dllimport) BOOL __stdcall RectInRegion( HRGN hrgn, const RECT * lprect);
  29538. __declspec(dllimport) BOOL __stdcall RectVisible( HDC hdc, const RECT * lprect);
  29539.  __declspec(dllimport) BOOL __stdcall Rectangle( HDC hdc, int left, int top, int right, int bottom);
  29540.  __declspec(dllimport) BOOL __stdcall RestoreDC( HDC hdc, int nSavedDC);
  29541.  __declspec(dllimport) HDC __stdcall ResetDCA( HDC hdc, const DEVMODEA * lpdm);
  29542.  __declspec(dllimport) HDC __stdcall ResetDCW( HDC hdc, const DEVMODEW * lpdm);
  29543.  
  29544.  
  29545.  
  29546.  
  29547.  
  29548.  __declspec(dllimport) UINT __stdcall RealizePalette( HDC hdc);
  29549. __declspec(dllimport) BOOL __stdcall RemoveFontResourceA( LPCSTR lpFileName);
  29550. __declspec(dllimport) BOOL __stdcall RemoveFontResourceW( LPCWSTR lpFileName);
  29551.  
  29552.  
  29553.  
  29554.  
  29555.  
  29556.  __declspec(dllimport) BOOL __stdcall RoundRect( HDC hdc, int left, int top, int right, int bottom, int width, int height);
  29557.  __declspec(dllimport) BOOL __stdcall ResizePalette( HPALETTE hpal, UINT n);
  29558.  
  29559.  __declspec(dllimport) int __stdcall SaveDC( HDC hdc);
  29560.  __declspec(dllimport) int __stdcall SelectClipRgn( HDC hdc, HRGN hrgn);
  29561. __declspec(dllimport) int __stdcall ExtSelectClipRgn( HDC hdc, HRGN hrgn, int mode);
  29562. __declspec(dllimport) int __stdcall SetMetaRgn( HDC hdc);
  29563.  __declspec(dllimport) HGDIOBJ __stdcall SelectObject( HDC hdc, HGDIOBJ h);
  29564.  __declspec(dllimport) HPALETTE __stdcall SelectPalette( HDC hdc, HPALETTE hPal, BOOL bForceBkgd);
  29565.  __declspec(dllimport) COLORREF __stdcall SetBkColor( HDC hdc, COLORREF color);
  29566.  
  29567.  
  29568. __declspec(dllimport) COLORREF __stdcall SetDCBrushColor( HDC hdc, COLORREF color);
  29569. __declspec(dllimport) COLORREF __stdcall SetDCPenColor( HDC hdc, COLORREF color);
  29570.  
  29571.  
  29572.  __declspec(dllimport) int __stdcall SetBkMode( HDC hdc, int mode);
  29573.  
  29574. __declspec(dllimport)
  29575. LONG __stdcall
  29576. SetBitmapBits(
  29577.          HBITMAP hbm,
  29578.          DWORD cb,
  29579.                          const void *pvBits);
  29580.  
  29581. __declspec(dllimport) UINT __stdcall SetBoundsRect( HDC hdc, const RECT * lprect, UINT flags);
  29582. __declspec(dllimport) int __stdcall SetDIBits( HDC hdc, HBITMAP hbm, UINT start, UINT cLines, const void *lpBits, const BITMAPINFO * lpbmi, UINT ColorUse);
  29583.  __declspec(dllimport) int __stdcall SetDIBitsToDevice( HDC hdc, int xDest, int yDest, DWORD w, DWORD h, int xSrc,
  29584.              int ySrc, UINT StartScan, UINT cLines, const void * lpvBits, const BITMAPINFO * lpbmi, UINT ColorUse);
  29585.  __declspec(dllimport) DWORD __stdcall SetMapperFlags( HDC hdc, DWORD flags);
  29586. __declspec(dllimport) int __stdcall SetGraphicsMode( HDC hdc, int iMode);
  29587.  __declspec(dllimport) int __stdcall SetMapMode( HDC hdc, int iMode);
  29588.  
  29589.  
  29590.  __declspec(dllimport) DWORD __stdcall SetLayout( HDC hdc, DWORD l);
  29591. __declspec(dllimport) DWORD __stdcall GetLayout( HDC hdc);
  29592.  
  29593.  
  29594. __declspec(dllimport) HMETAFILE __stdcall SetMetaFileBitsEx( UINT cbBuffer, const BYTE *lpData);
  29595.  __declspec(dllimport) UINT __stdcall SetPaletteEntries( HPALETTE hpal,
  29596.                                                  UINT iStart,
  29597.                                                  UINT cEntries,
  29598.                                                                  const PALETTEENTRY *pPalEntries);
  29599.  __declspec(dllimport) COLORREF __stdcall SetPixel( HDC hdc, int x, int y, COLORREF color);
  29600. __declspec(dllimport) BOOL __stdcall SetPixelV( HDC hdc, int x, int y, COLORREF color);
  29601. __declspec(dllimport) BOOL __stdcall SetPixelFormat( HDC hdc, int format, const PIXELFORMATDESCRIPTOR * ppfd);
  29602.  __declspec(dllimport) int __stdcall SetPolyFillMode( HDC hdc, int mode);
  29603.  __declspec(dllimport) BOOL __stdcall StretchBlt( HDC hdcDest, int xDest, int yDest, int wDest, int hDest, HDC hdcSrc, int xSrc, int ySrc, int wSrc, int hSrc, DWORD rop);
  29604. __declspec(dllimport) BOOL __stdcall SetRectRgn( HRGN hrgn, int left, int top, int right, int bottom);
  29605.  __declspec(dllimport) int __stdcall StretchDIBits( HDC hdc, int xDest, int yDest, int DestWidth, int DestHeight, int xSrc, int ySrc, int SrcWidth, int SrcHeight,
  29606.                  const void * lpBits, const BITMAPINFO * lpbmi, UINT iUsage, DWORD rop);
  29607.  __declspec(dllimport) int __stdcall SetROP2( HDC hdc, int rop2);
  29608.  __declspec(dllimport) int __stdcall SetStretchBltMode( HDC hdc, int mode);
  29609. __declspec(dllimport) UINT __stdcall SetSystemPaletteUse( HDC hdc, UINT use);
  29610.  __declspec(dllimport) int __stdcall SetTextCharacterExtra( HDC hdc, int extra);
  29611.  __declspec(dllimport) COLORREF __stdcall SetTextColor( HDC hdc, COLORREF color);
  29612.  __declspec(dllimport) UINT __stdcall SetTextAlign( HDC hdc, UINT align);
  29613.  __declspec(dllimport) BOOL __stdcall SetTextJustification( HDC hdc, int extra, int count);
  29614. __declspec(dllimport) BOOL __stdcall UpdateColors( HDC hdc);
  29615.  
  29616.  
  29617. #pragma endregion
  29618. # 4635 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29619. #pragma region Application Family
  29620.  
  29621.  
  29622. typedef USHORT COLOR16;
  29623.  
  29624. typedef struct _TRIVERTEX
  29625. {
  29626.     LONG x;
  29627.     LONG y;
  29628.     COLOR16 Red;
  29629.     COLOR16 Green;
  29630.     COLOR16 Blue;
  29631.     COLOR16 Alpha;
  29632. }TRIVERTEX,*PTRIVERTEX,*LPTRIVERTEX;
  29633.  
  29634.  
  29635. #pragma endregion
  29636.  
  29637. #pragma region Desktop Family
  29638.  
  29639.  
  29640. typedef struct _GRADIENT_TRIANGLE
  29641. {
  29642.     ULONG Vertex1;
  29643.     ULONG Vertex2;
  29644.     ULONG Vertex3;
  29645. } GRADIENT_TRIANGLE,*PGRADIENT_TRIANGLE,*LPGRADIENT_TRIANGLE;
  29646.  
  29647. typedef struct _GRADIENT_RECT
  29648. {
  29649.     ULONG UpperLeft;
  29650.     ULONG LowerRight;
  29651. }GRADIENT_RECT,*PGRADIENT_RECT,*LPGRADIENT_RECT;
  29652.  
  29653.  
  29654. #pragma endregion
  29655.  
  29656. #pragma region Application Family
  29657.  
  29658.  
  29659. typedef struct _BLENDFUNCTION
  29660. {
  29661.     BYTE BlendOp;
  29662.     BYTE BlendFlags;
  29663.     BYTE SourceConstantAlpha;
  29664.     BYTE AlphaFormat;
  29665. }BLENDFUNCTION,*PBLENDFUNCTION;
  29666.  
  29667.  
  29668. #pragma endregion
  29669.  
  29670. #pragma region Desktop Family
  29671. # 4702 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29672. __declspec(dllimport) BOOL __stdcall AlphaBlend(
  29673.          HDC hdcDest,
  29674.          int xoriginDest,
  29675.          int yoriginDest,
  29676.          int wDest,
  29677.          int hDest,
  29678.          HDC hdcSrc,
  29679.          int xoriginSrc,
  29680.          int yoriginSrc,
  29681.          int wSrc,
  29682.          int hSrc,
  29683.          BLENDFUNCTION ftn);
  29684.  
  29685. __declspec(dllimport) BOOL __stdcall TransparentBlt(
  29686.          HDC hdcDest,
  29687.          int xoriginDest,
  29688.          int yoriginDest,
  29689.          int wDest,
  29690.          int hDest,
  29691.          HDC hdcSrc,
  29692.          int xoriginSrc,
  29693.          int yoriginSrc,
  29694.          int wSrc,
  29695.          int hSrc,
  29696.          UINT crTransparent);
  29697. # 4738 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29698. __declspec(dllimport)
  29699. BOOL
  29700. __stdcall
  29701. GradientFill(
  29702.          HDC hdc,
  29703.                         PTRIVERTEX pVertex,
  29704.          ULONG nVertex,
  29705.          PVOID pMesh,
  29706.          ULONG nMesh,
  29707.          ULONG ulMode
  29708.     );
  29709.  
  29710.  
  29711. #pragma endregion
  29712.  
  29713.  
  29714.  
  29715. #pragma region Desktop Family
  29716.  
  29717.  
  29718.  
  29719.  
  29720.  
  29721. __declspec(dllimport) BOOL __stdcall GdiAlphaBlend( HDC hdcDest, int xoriginDest, int yoriginDest, int wDest, int hDest, HDC hdcSrc, int xoriginSrc, int yoriginSrc, int wSrc, int hSrc, BLENDFUNCTION ftn);
  29722.  
  29723. __declspec(dllimport) BOOL __stdcall GdiTransparentBlt( HDC hdcDest, int xoriginDest, int yoriginDest, int wDest, int hDest, HDC hdcSrc,
  29724.                                                 int xoriginSrc, int yoriginSrc, int wSrc, int hSrc, UINT crTransparent);
  29725.  
  29726. __declspec(dllimport) BOOL __stdcall GdiGradientFill( HDC hdc,
  29727.                                                             PTRIVERTEX pVertex,
  29728.                                              ULONG nVertex,
  29729.                                              PVOID pMesh,
  29730.                                              ULONG nCount,
  29731.                                              ULONG ulMode);
  29732.  
  29733.  
  29734.  
  29735.  
  29736.  
  29737.  
  29738.  
  29739. __declspec(dllimport) BOOL __stdcall PlayMetaFileRecord( HDC hdc,
  29740.                                                                LPHANDLETABLE lpHandleTable,
  29741.                                                  LPMETARECORD lpMR,
  29742.                                                  UINT noObjs);
  29743.  
  29744. typedef int (__stdcall* MFENUMPROC)( HDC hdc, HANDLETABLE * lpht, METARECORD * lpMR, int nObj, LPARAM param);
  29745. __declspec(dllimport) BOOL __stdcall EnumMetaFile( HDC hdc, HMETAFILE hmf, MFENUMPROC proc, LPARAM param);
  29746.  
  29747. typedef int (__stdcall* ENHMFENUMPROC)( HDC hdc, HANDLETABLE * lpht, const ENHMETARECORD * lpmr, int nHandles, LPARAM data);
  29748.  
  29749.  
  29750.  
  29751. __declspec(dllimport) HENHMETAFILE __stdcall CloseEnhMetaFile( HDC hdc);
  29752. __declspec(dllimport) HENHMETAFILE __stdcall CopyEnhMetaFileA( HENHMETAFILE hEnh, LPCSTR lpFileName);
  29753. __declspec(dllimport) HENHMETAFILE __stdcall CopyEnhMetaFileW( HENHMETAFILE hEnh, LPCWSTR lpFileName);
  29754.  
  29755.  
  29756.  
  29757.  
  29758.  
  29759. __declspec(dllimport) HDC __stdcall CreateEnhMetaFileA( HDC hdc, LPCSTR lpFilename, const RECT *lprc, LPCSTR lpDesc);
  29760. __declspec(dllimport) HDC __stdcall CreateEnhMetaFileW( HDC hdc, LPCWSTR lpFilename, const RECT *lprc, LPCWSTR lpDesc);
  29761.  
  29762.  
  29763.  
  29764.  
  29765.  
  29766. __declspec(dllimport) BOOL __stdcall DeleteEnhMetaFile( HENHMETAFILE hmf);
  29767. __declspec(dllimport) BOOL __stdcall EnumEnhMetaFile( HDC hdc, HENHMETAFILE hmf, ENHMFENUMPROC proc,
  29768.                                                  LPVOID param, const RECT * lpRect);
  29769. __declspec(dllimport) HENHMETAFILE __stdcall GetEnhMetaFileA( LPCSTR lpName);
  29770. __declspec(dllimport) HENHMETAFILE __stdcall GetEnhMetaFileW( LPCWSTR lpName);
  29771.  
  29772.  
  29773.  
  29774.  
  29775.  
  29776. __declspec(dllimport) UINT __stdcall GetEnhMetaFileBits( HENHMETAFILE hEMF,
  29777.                                                  UINT nSize,
  29778.                                                                           LPBYTE lpData);
  29779. __declspec(dllimport) UINT __stdcall GetEnhMetaFileDescriptionA( HENHMETAFILE hemf,
  29780.                                                          UINT cchBuffer,
  29781.                                                                                 LPSTR lpDescription);
  29782. __declspec(dllimport) UINT __stdcall GetEnhMetaFileDescriptionW( HENHMETAFILE hemf,
  29783.                                                          UINT cchBuffer,
  29784.                                                                                 LPWSTR lpDescription);
  29785.  
  29786.  
  29787.  
  29788.  
  29789.  
  29790. __declspec(dllimport) UINT __stdcall GetEnhMetaFileHeader( HENHMETAFILE hemf,
  29791.                                                      UINT nSize,
  29792.                                                                               LPENHMETAHEADER lpEnhMetaHeader);
  29793. __declspec(dllimport) UINT __stdcall GetEnhMetaFilePaletteEntries( HENHMETAFILE hemf,
  29794.                                                          UINT nNumEntries,
  29795.                                                                                   LPPALETTEENTRY lpPaletteEntries);
  29796.  
  29797. __declspec(dllimport) UINT __stdcall GetEnhMetaFilePixelFormat( HENHMETAFILE hemf,
  29798.                                                          UINT cbBuffer,
  29799.                                                                                      PIXELFORMATDESCRIPTOR *ppfd);
  29800. __declspec(dllimport) UINT __stdcall GetWinMetaFileBits( HENHMETAFILE hemf,
  29801.                                                  UINT cbData16,
  29802.                                                                              LPBYTE pData16,
  29803.                                                  INT iMapMode,
  29804.                                                  HDC hdcRef);
  29805. __declspec(dllimport) BOOL __stdcall PlayEnhMetaFile( HDC hdc, HENHMETAFILE hmf, const RECT * lprect);
  29806. __declspec(dllimport) BOOL __stdcall PlayEnhMetaFileRecord( HDC hdc,
  29807.                                                                 LPHANDLETABLE pht,
  29808.                                                      const ENHMETARECORD *pmr,
  29809.                                                      UINT cht);
  29810.  
  29811. __declspec(dllimport) HENHMETAFILE __stdcall SetEnhMetaFileBits( UINT nSize,
  29812.                                                                             const BYTE * pb);
  29813.  
  29814. __declspec(dllimport) HENHMETAFILE __stdcall SetWinMetaFileBits( UINT nSize,
  29815.                                                                             const BYTE *lpMeta16Data,
  29816.                                                              HDC hdcRef,
  29817.                                                              const METAFILEPICT *lpMFP);
  29818. __declspec(dllimport) BOOL __stdcall GdiComment( HDC hdc, UINT nSize, const BYTE *lpData);
  29819.  
  29820.  
  29821.  
  29822.  
  29823.  
  29824. __declspec(dllimport) BOOL __stdcall GetTextMetricsA( HDC hdc, LPTEXTMETRICA lptm);
  29825. __declspec(dllimport) BOOL __stdcall GetTextMetricsW( HDC hdc, LPTEXTMETRICW lptm);
  29826. # 4896 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29827. typedef struct tagDIBSECTION {
  29828.     BITMAP dsBm;
  29829.     BITMAPINFOHEADER dsBmih;
  29830.     DWORD dsBitfields[3];
  29831.     HANDLE dshSection;
  29832.     DWORD dsOffset;
  29833. } DIBSECTION, *LPDIBSECTION, *PDIBSECTION;
  29834.  
  29835.  
  29836. __declspec(dllimport) BOOL __stdcall AngleArc( HDC hdc, int x, int y, DWORD r, FLOAT StartAngle, FLOAT SweepAngle);
  29837. __declspec(dllimport) BOOL __stdcall PolyPolyline( HDC hdc, const POINT *apt, const DWORD *asz, DWORD csz);
  29838. __declspec(dllimport) BOOL __stdcall GetWorldTransform( HDC hdc, LPXFORM lpxf);
  29839. __declspec(dllimport) BOOL __stdcall SetWorldTransform( HDC hdc, const XFORM * lpxf);
  29840. __declspec(dllimport) BOOL __stdcall ModifyWorldTransform( HDC hdc, const XFORM * lpxf, DWORD mode);
  29841. __declspec(dllimport) BOOL __stdcall CombineTransform( LPXFORM lpxfOut, const XFORM *lpxf1, const XFORM *lpxf2);
  29842.  
  29843.  
  29844.  
  29845.  
  29846.  
  29847.  
  29848. __declspec(dllimport) HBITMAP __stdcall CreateDIBSection(
  29849.                     HDC hdc,
  29850.                     const BITMAPINFO *pbmi,
  29851.                     UINT usage,
  29852.  
  29853.  
  29854.                     void **ppvBits,
  29855.                     HANDLE hSection,
  29856.                     DWORD offset);
  29857.  
  29858.  
  29859.  
  29860. __declspec(dllimport) UINT __stdcall GetDIBColorTable( HDC hdc,
  29861.                                              UINT iStart,
  29862.                                              UINT cEntries,
  29863.                                                                          RGBQUAD *prgbq);
  29864. __declspec(dllimport) UINT __stdcall SetDIBColorTable( HDC hdc,
  29865.                                              UINT iStart,
  29866.                                              UINT cEntries,
  29867.                                                              const RGBQUAD *prgbq);
  29868. # 4973 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29869. typedef struct tagCOLORADJUSTMENT {
  29870.     WORD caSize;
  29871.     WORD caFlags;
  29872.     WORD caIlluminantIndex;
  29873.     WORD caRedGamma;
  29874.     WORD caGreenGamma;
  29875.     WORD caBlueGamma;
  29876.     WORD caReferenceBlack;
  29877.     WORD caReferenceWhite;
  29878.     SHORT caContrast;
  29879.     SHORT caBrightness;
  29880.     SHORT caColorfulness;
  29881.     SHORT caRedGreenTint;
  29882. } COLORADJUSTMENT, *PCOLORADJUSTMENT, *LPCOLORADJUSTMENT;
  29883.  
  29884. __declspec(dllimport) BOOL __stdcall SetColorAdjustment( HDC hdc, const COLORADJUSTMENT *lpca);
  29885. __declspec(dllimport) BOOL __stdcall GetColorAdjustment( HDC hdc, LPCOLORADJUSTMENT lpca);
  29886. __declspec(dllimport) HPALETTE __stdcall CreateHalftonePalette( HDC hdc);
  29887.  
  29888.  
  29889. typedef BOOL (__stdcall* ABORTPROC)( HDC, int);
  29890.  
  29891.  
  29892.  
  29893.  
  29894. typedef struct _DOCINFOA {
  29895.     int cbSize;
  29896.     LPCSTR lpszDocName;
  29897.     LPCSTR lpszOutput;
  29898.  
  29899.     LPCSTR lpszDatatype;
  29900.     DWORD fwType;
  29901.  
  29902. } DOCINFOA, *LPDOCINFOA;
  29903. typedef struct _DOCINFOW {
  29904.     int cbSize;
  29905.     LPCWSTR lpszDocName;
  29906.     LPCWSTR lpszOutput;
  29907.  
  29908.     LPCWSTR lpszDatatype;
  29909.     DWORD fwType;
  29910.  
  29911. } DOCINFOW, *LPDOCINFOW;
  29912.  
  29913.  
  29914.  
  29915.  
  29916. typedef DOCINFOA DOCINFO;
  29917. typedef LPDOCINFOA LPDOCINFO;
  29918.  
  29919.  
  29920.  
  29921.  
  29922.  
  29923.  
  29924.  
  29925.  __declspec(dllimport) int __stdcall StartDocA( HDC hdc, const DOCINFOA *lpdi);
  29926.  __declspec(dllimport) int __stdcall StartDocW( HDC hdc, const DOCINFOW *lpdi);
  29927.  
  29928.  
  29929.  
  29930.  
  29931.  
  29932.  __declspec(dllimport) int __stdcall EndDoc( HDC hdc);
  29933.  __declspec(dllimport) int __stdcall StartPage( HDC hdc);
  29934.  __declspec(dllimport) int __stdcall EndPage( HDC hdc);
  29935.  __declspec(dllimport) int __stdcall AbortDoc( HDC hdc);
  29936. __declspec(dllimport) int __stdcall SetAbortProc( HDC hdc, ABORTPROC proc);
  29937.  
  29938. __declspec(dllimport) BOOL __stdcall AbortPath( HDC hdc);
  29939. __declspec(dllimport) BOOL __stdcall ArcTo( HDC hdc, int left, int top, int right, int bottom, int xr1, int yr1, int xr2, int yr2);
  29940. __declspec(dllimport) BOOL __stdcall BeginPath( HDC hdc);
  29941. __declspec(dllimport) BOOL __stdcall CloseFigure( HDC hdc);
  29942. __declspec(dllimport) BOOL __stdcall EndPath( HDC hdc);
  29943. __declspec(dllimport) BOOL __stdcall FillPath( HDC hdc);
  29944. __declspec(dllimport) BOOL __stdcall FlattenPath( HDC hdc);
  29945. __declspec(dllimport) int __stdcall GetPath( HDC hdc, LPPOINT apt, LPBYTE aj, int cpt);
  29946. __declspec(dllimport) HRGN __stdcall PathToRegion( HDC hdc);
  29947. __declspec(dllimport) BOOL __stdcall PolyDraw( HDC hdc, const POINT * apt, const BYTE * aj, int cpt);
  29948. __declspec(dllimport) BOOL __stdcall SelectClipPath( HDC hdc, int mode);
  29949. __declspec(dllimport) int __stdcall SetArcDirection( HDC hdc, int dir);
  29950. __declspec(dllimport) BOOL __stdcall SetMiterLimit( HDC hdc, FLOAT limit, PFLOAT old);
  29951. __declspec(dllimport) BOOL __stdcall StrokeAndFillPath( HDC hdc);
  29952. __declspec(dllimport) BOOL __stdcall StrokePath( HDC hdc);
  29953. __declspec(dllimport) BOOL __stdcall WidenPath( HDC hdc);
  29954. __declspec(dllimport) HPEN __stdcall ExtCreatePen( DWORD iPenStyle,
  29955.                                          DWORD cWidth,
  29956.                                          const LOGBRUSH *plbrush,
  29957.                                          DWORD cStyle,
  29958.                                                            const DWORD *pstyle);
  29959. __declspec(dllimport) BOOL __stdcall GetMiterLimit( HDC hdc, PFLOAT plimit);
  29960. __declspec(dllimport) int __stdcall GetArcDirection( HDC hdc);
  29961.  
  29962. __declspec(dllimport) int __stdcall GetObjectA( HANDLE h, int c, LPVOID pv);
  29963. __declspec(dllimport) int __stdcall GetObjectW( HANDLE h, int c, LPVOID pv);
  29964. # 5096 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  29965.  __declspec(dllimport) BOOL __stdcall MoveToEx( HDC hdc, int x, int y, LPPOINT lppt);
  29966.  __declspec(dllimport) BOOL __stdcall TextOutA( HDC hdc, int x, int y, LPCSTR lpString, int c);
  29967.  __declspec(dllimport) BOOL __stdcall TextOutW( HDC hdc, int x, int y, LPCWSTR lpString, int c);
  29968.  
  29969.  
  29970.  
  29971.  
  29972.  
  29973.  __declspec(dllimport) BOOL __stdcall ExtTextOutA( HDC hdc, int x, int y, UINT options, const RECT * lprect, LPCSTR lpString, UINT c, const INT * lpDx);
  29974.  __declspec(dllimport) BOOL __stdcall ExtTextOutW( HDC hdc, int x, int y, UINT options, const RECT * lprect, LPCWSTR lpString, UINT c, const INT * lpDx);
  29975.  
  29976.  
  29977.  
  29978.  
  29979.  
  29980. __declspec(dllimport) BOOL __stdcall PolyTextOutA( HDC hdc, const POLYTEXTA * ppt, int nstrings);
  29981. __declspec(dllimport) BOOL __stdcall PolyTextOutW( HDC hdc, const POLYTEXTW * ppt, int nstrings);
  29982.  
  29983.  
  29984.  
  29985.  
  29986.  
  29987.  
  29988. __declspec(dllimport) HRGN __stdcall CreatePolygonRgn( const POINT *pptl,
  29989.                                                  int cPoint,
  29990.                                                  int iMode);
  29991. __declspec(dllimport) BOOL __stdcall DPtoLP( HDC hdc, LPPOINT lppt, int c);
  29992. __declspec(dllimport) BOOL __stdcall LPtoDP( HDC hdc, LPPOINT lppt, int c);
  29993.  __declspec(dllimport) BOOL __stdcall Polygon( HDC hdc, const POINT *apt, int cpt);
  29994.  __declspec(dllimport) BOOL __stdcall Polyline( HDC hdc, const POINT *apt, int cpt);
  29995.  
  29996. __declspec(dllimport) BOOL __stdcall PolyBezier( HDC hdc, const POINT * apt, DWORD cpt);
  29997. __declspec(dllimport) BOOL __stdcall PolyBezierTo( HDC hdc, const POINT * apt, DWORD cpt);
  29998. __declspec(dllimport) BOOL __stdcall PolylineTo( HDC hdc, const POINT * apt, DWORD cpt);
  29999.  
  30000.  __declspec(dllimport) BOOL __stdcall SetViewportExtEx( HDC hdc, int x, int y, LPSIZE lpsz);
  30001.  __declspec(dllimport) BOOL __stdcall SetViewportOrgEx( HDC hdc, int x, int y, LPPOINT lppt);
  30002.  __declspec(dllimport) BOOL __stdcall SetWindowExtEx( HDC hdc, int x, int y, LPSIZE lpsz);
  30003.  __declspec(dllimport) BOOL __stdcall SetWindowOrgEx( HDC hdc, int x, int y, LPPOINT lppt);
  30004.  
  30005.  __declspec(dllimport) BOOL __stdcall OffsetViewportOrgEx( HDC hdc, int x, int y, LPPOINT lppt);
  30006.  __declspec(dllimport) BOOL __stdcall OffsetWindowOrgEx( HDC hdc, int x, int y, LPPOINT lppt);
  30007.  __declspec(dllimport) BOOL __stdcall ScaleViewportExtEx( HDC hdc, int xn, int dx, int yn, int yd, LPSIZE lpsz);
  30008.  __declspec(dllimport) BOOL __stdcall ScaleWindowExtEx( HDC hdc, int xn, int xd, int yn, int yd, LPSIZE lpsz);
  30009. __declspec(dllimport) BOOL __stdcall SetBitmapDimensionEx( HBITMAP hbm, int w, int h, LPSIZE lpsz);
  30010. __declspec(dllimport) BOOL __stdcall SetBrushOrgEx( HDC hdc, int x, int y, LPPOINT lppt);
  30011.  
  30012. __declspec(dllimport) int __stdcall GetTextFaceA( HDC hdc, int c, LPSTR lpName);
  30013. __declspec(dllimport) int __stdcall GetTextFaceW( HDC hdc, int c, LPWSTR lpName);
  30014. # 5153 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  30015. typedef struct tagKERNINGPAIR {
  30016.    WORD wFirst;
  30017.    WORD wSecond;
  30018.    int iKernAmount;
  30019. } KERNINGPAIR, *LPKERNINGPAIR;
  30020.  
  30021. __declspec(dllimport) DWORD __stdcall GetKerningPairsA( HDC hdc,
  30022.                                                  DWORD nPairs,
  30023.                                                                                 LPKERNINGPAIR lpKernPair);
  30024. __declspec(dllimport) DWORD __stdcall GetKerningPairsW( HDC hdc,
  30025.                                                  DWORD nPairs,
  30026.                                                                                 LPKERNINGPAIR lpKernPair);
  30027.  
  30028.  
  30029.  
  30030.  
  30031.  
  30032.  
  30033.  
  30034. __declspec(dllimport) BOOL __stdcall GetDCOrgEx( HDC hdc, LPPOINT lppt);
  30035. __declspec(dllimport) BOOL __stdcall FixBrushOrgEx( HDC hdc, int x, int y, LPPOINT ptl);
  30036. __declspec(dllimport) BOOL __stdcall UnrealizeObject( HGDIOBJ h);
  30037.  
  30038. __declspec(dllimport) BOOL __stdcall GdiFlush(void);
  30039. __declspec(dllimport) DWORD __stdcall GdiSetBatchLimit( DWORD dw);
  30040. __declspec(dllimport) DWORD __stdcall GdiGetBatchLimit(void);
  30041. # 5187 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  30042. typedef int (__stdcall* ICMENUMPROCA)(LPSTR, LPARAM);
  30043. typedef int (__stdcall* ICMENUMPROCW)(LPWSTR, LPARAM);
  30044.  
  30045.  
  30046.  
  30047.  
  30048.  
  30049.  
  30050. __declspec(dllimport) int __stdcall SetICMMode( HDC hdc, int mode);
  30051. __declspec(dllimport) BOOL __stdcall CheckColorsInGamut( HDC hdc,
  30052.                                                                        LPRGBTRIPLE lpRGBTriple,
  30053.                                                                                LPVOID dlpBuffer,
  30054.                                                          DWORD nCount);
  30055.  
  30056. __declspec(dllimport) HCOLORSPACE __stdcall GetColorSpace( HDC hdc);
  30057. __declspec(dllimport) BOOL __stdcall GetLogColorSpaceA( HCOLORSPACE hColorSpace,
  30058.                                                                           LPLOGCOLORSPACEA lpBuffer,
  30059.                                                      DWORD nSize);
  30060. __declspec(dllimport) BOOL __stdcall GetLogColorSpaceW( HCOLORSPACE hColorSpace,
  30061.                                                                           LPLOGCOLORSPACEW lpBuffer,
  30062.                                                      DWORD nSize);
  30063.  
  30064.  
  30065.  
  30066.  
  30067.  
  30068.  
  30069. __declspec(dllimport) HCOLORSPACE __stdcall CreateColorSpaceA( LPLOGCOLORSPACEA lplcs);
  30070. __declspec(dllimport) HCOLORSPACE __stdcall CreateColorSpaceW( LPLOGCOLORSPACEW lplcs);
  30071.  
  30072.  
  30073.  
  30074.  
  30075.  
  30076. __declspec(dllimport) HCOLORSPACE __stdcall SetColorSpace( HDC hdc, HCOLORSPACE hcs);
  30077. __declspec(dllimport) BOOL __stdcall DeleteColorSpace( HCOLORSPACE hcs);
  30078. __declspec(dllimport) BOOL __stdcall GetICMProfileA( HDC hdc,
  30079.                                                         LPDWORD pBufSize,
  30080.                                                                             LPSTR pszFilename);
  30081. __declspec(dllimport) BOOL __stdcall GetICMProfileW( HDC hdc,
  30082.                                                         LPDWORD pBufSize,
  30083.                                                                             LPWSTR pszFilename);
  30084.  
  30085.  
  30086.  
  30087.  
  30088.  
  30089.  
  30090. __declspec(dllimport) BOOL __stdcall SetICMProfileA( HDC hdc, LPSTR lpFileName);
  30091. __declspec(dllimport) BOOL __stdcall SetICMProfileW( HDC hdc, LPWSTR lpFileName);
  30092.  
  30093.  
  30094.  
  30095.  
  30096.  
  30097. __declspec(dllimport) BOOL __stdcall GetDeviceGammaRamp( HDC hdc, LPVOID lpRamp);
  30098. __declspec(dllimport) BOOL __stdcall SetDeviceGammaRamp( HDC hdc, LPVOID lpRamp);
  30099. __declspec(dllimport) BOOL __stdcall ColorMatchToTarget( HDC hdc, HDC hdcTarget, DWORD action);
  30100. __declspec(dllimport) int __stdcall EnumICMProfilesA( HDC hdc, ICMENUMPROCA proc, LPARAM param);
  30101. __declspec(dllimport) int __stdcall EnumICMProfilesW( HDC hdc, ICMENUMPROCW proc, LPARAM param);
  30102.  
  30103.  
  30104.  
  30105.  
  30106.  
  30107.  
  30108. __declspec(dllimport) BOOL __stdcall UpdateICMRegKeyA( DWORD reserved, LPSTR lpszCMID, LPSTR lpszFileName, UINT command);
  30109.  
  30110. __declspec(dllimport) BOOL __stdcall UpdateICMRegKeyW( DWORD reserved, LPWSTR lpszCMID, LPWSTR lpszFileName, UINT command);
  30111.  
  30112.  
  30113.  
  30114.  
  30115.  
  30116.  
  30117.  
  30118. #pragma deprecated (UpdateICMRegKeyW)
  30119. #pragma deprecated (UpdateICMRegKeyA)
  30120.  
  30121.  
  30122.  
  30123.  
  30124.  
  30125. __declspec(dllimport) BOOL __stdcall ColorCorrectPalette( HDC hdc, HPALETTE hPal, DWORD deFirst, DWORD num);
  30126. # 5435 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  30127. typedef struct tagEMR
  30128. {
  30129.     DWORD iType;
  30130.     DWORD nSize;
  30131.  
  30132. } EMR, *PEMR;
  30133.  
  30134.  
  30135.  
  30136. typedef struct tagEMRTEXT
  30137. {
  30138.     POINTL ptlReference;
  30139.     DWORD nChars;
  30140.     DWORD offString;
  30141.     DWORD fOptions;
  30142.     RECTL rcl;
  30143.     DWORD offDx;
  30144.  
  30145. } EMRTEXT, *PEMRTEXT;
  30146.  
  30147.  
  30148.  
  30149. typedef struct tagABORTPATH
  30150. {
  30151.     EMR emr;
  30152. } EMRABORTPATH, *PEMRABORTPATH,
  30153.   EMRBEGINPATH, *PEMRBEGINPATH,
  30154.   EMRENDPATH, *PEMRENDPATH,
  30155.   EMRCLOSEFIGURE, *PEMRCLOSEFIGURE,
  30156.   EMRFLATTENPATH, *PEMRFLATTENPATH,
  30157.   EMRWIDENPATH, *PEMRWIDENPATH,
  30158.   EMRSETMETARGN, *PEMRSETMETARGN,
  30159.   EMRSAVEDC, *PEMRSAVEDC,
  30160.   EMRREALIZEPALETTE, *PEMRREALIZEPALETTE;
  30161.  
  30162. typedef struct tagEMRSELECTCLIPPATH
  30163. {
  30164.     EMR emr;
  30165.     DWORD iMode;
  30166. } EMRSELECTCLIPPATH, *PEMRSELECTCLIPPATH,
  30167.   EMRSETBKMODE, *PEMRSETBKMODE,
  30168.   EMRSETMAPMODE, *PEMRSETMAPMODE,
  30169.  
  30170.   EMRSETLAYOUT, *PEMRSETLAYOUT,
  30171.  
  30172.   EMRSETPOLYFILLMODE, *PEMRSETPOLYFILLMODE,
  30173.   EMRSETROP2, *PEMRSETROP2,
  30174.   EMRSETSTRETCHBLTMODE, *PEMRSETSTRETCHBLTMODE,
  30175.   EMRSETICMMODE, *PEMRSETICMMODE,
  30176.   EMRSETTEXTALIGN, *PEMRSETTEXTALIGN;
  30177.  
  30178. typedef struct tagEMRSETMITERLIMIT
  30179. {
  30180.     EMR emr;
  30181.     FLOAT eMiterLimit;
  30182. } EMRSETMITERLIMIT, *PEMRSETMITERLIMIT;
  30183.  
  30184. typedef struct tagEMRRESTOREDC
  30185. {
  30186.     EMR emr;
  30187.     LONG iRelative;
  30188. } EMRRESTOREDC, *PEMRRESTOREDC;
  30189.  
  30190. typedef struct tagEMRSETARCDIRECTION
  30191. {
  30192.     EMR emr;
  30193.     DWORD iArcDirection;
  30194.  
  30195. } EMRSETARCDIRECTION, *PEMRSETARCDIRECTION;
  30196.  
  30197. typedef struct tagEMRSETMAPPERFLAGS
  30198. {
  30199.     EMR emr;
  30200.     DWORD dwFlags;
  30201. } EMRSETMAPPERFLAGS, *PEMRSETMAPPERFLAGS;
  30202.  
  30203. typedef struct tagEMRSETTEXTCOLOR
  30204. {
  30205.     EMR emr;
  30206.     COLORREF crColor;
  30207. } EMRSETBKCOLOR, *PEMRSETBKCOLOR,
  30208.   EMRSETTEXTCOLOR, *PEMRSETTEXTCOLOR;
  30209.  
  30210. typedef struct tagEMRSELECTOBJECT
  30211. {
  30212.     EMR emr;
  30213.     DWORD ihObject;
  30214. } EMRSELECTOBJECT, *PEMRSELECTOBJECT,
  30215.   EMRDELETEOBJECT, *PEMRDELETEOBJECT;
  30216.  
  30217. typedef struct tagEMRSELECTPALETTE
  30218. {
  30219.     EMR emr;
  30220.     DWORD ihPal;
  30221. } EMRSELECTPALETTE, *PEMRSELECTPALETTE;
  30222.  
  30223. typedef struct tagEMRRESIZEPALETTE
  30224. {
  30225.     EMR emr;
  30226.     DWORD ihPal;
  30227.     DWORD cEntries;
  30228. } EMRRESIZEPALETTE, *PEMRRESIZEPALETTE;
  30229.  
  30230. typedef struct tagEMRSETPALETTEENTRIES
  30231. {
  30232.     EMR emr;
  30233.     DWORD ihPal;
  30234.     DWORD iStart;
  30235.     DWORD cEntries;
  30236.     PALETTEENTRY aPalEntries[1];
  30237. } EMRSETPALETTEENTRIES, *PEMRSETPALETTEENTRIES;
  30238.  
  30239. typedef struct tagEMRSETCOLORADJUSTMENT
  30240. {
  30241.     EMR emr;
  30242.     COLORADJUSTMENT ColorAdjustment;
  30243. } EMRSETCOLORADJUSTMENT, *PEMRSETCOLORADJUSTMENT;
  30244.  
  30245. typedef struct tagEMRGDICOMMENT
  30246. {
  30247.     EMR emr;
  30248.     DWORD cbData;
  30249.     BYTE Data[1];
  30250. } EMRGDICOMMENT, *PEMRGDICOMMENT;
  30251.  
  30252. typedef struct tagEMREOF
  30253. {
  30254.     EMR emr;
  30255.     DWORD nPalEntries;
  30256.     DWORD offPalEntries;
  30257.     DWORD nSizeLast;
  30258.  
  30259.  
  30260. } EMREOF, *PEMREOF;
  30261.  
  30262. typedef struct tagEMRLINETO
  30263. {
  30264.     EMR emr;
  30265.     POINTL ptl;
  30266. } EMRLINETO, *PEMRLINETO,
  30267.   EMRMOVETOEX, *PEMRMOVETOEX;
  30268.  
  30269. typedef struct tagEMROFFSETCLIPRGN
  30270. {
  30271.     EMR emr;
  30272.     POINTL ptlOffset;
  30273. } EMROFFSETCLIPRGN, *PEMROFFSETCLIPRGN;
  30274.  
  30275. typedef struct tagEMRFILLPATH
  30276. {
  30277.     EMR emr;
  30278.     RECTL rclBounds;
  30279. } EMRFILLPATH, *PEMRFILLPATH,
  30280.   EMRSTROKEANDFILLPATH, *PEMRSTROKEANDFILLPATH,
  30281.   EMRSTROKEPATH, *PEMRSTROKEPATH;
  30282.  
  30283. typedef struct tagEMREXCLUDECLIPRECT
  30284. {
  30285.     EMR emr;
  30286.     RECTL rclClip;
  30287. } EMREXCLUDECLIPRECT, *PEMREXCLUDECLIPRECT,
  30288.   EMRINTERSECTCLIPRECT, *PEMRINTERSECTCLIPRECT;
  30289.  
  30290. typedef struct tagEMRSETVIEWPORTORGEX
  30291. {
  30292.     EMR emr;
  30293.     POINTL ptlOrigin;
  30294. } EMRSETVIEWPORTORGEX, *PEMRSETVIEWPORTORGEX,
  30295.   EMRSETWINDOWORGEX, *PEMRSETWINDOWORGEX,
  30296.   EMRSETBRUSHORGEX, *PEMRSETBRUSHORGEX;
  30297.  
  30298. typedef struct tagEMRSETVIEWPORTEXTEX
  30299. {
  30300.     EMR emr;
  30301.     SIZEL szlExtent;
  30302. } EMRSETVIEWPORTEXTEX, *PEMRSETVIEWPORTEXTEX,
  30303.   EMRSETWINDOWEXTEX, *PEMRSETWINDOWEXTEX;
  30304.  
  30305. typedef struct tagEMRSCALEVIEWPORTEXTEX
  30306. {
  30307.     EMR emr;
  30308.     LONG xNum;
  30309.     LONG xDenom;
  30310.     LONG yNum;
  30311.     LONG yDenom;
  30312. } EMRSCALEVIEWPORTEXTEX, *PEMRSCALEVIEWPORTEXTEX,
  30313.   EMRSCALEWINDOWEXTEX, *PEMRSCALEWINDOWEXTEX;
  30314.  
  30315. typedef struct tagEMRSETWORLDTRANSFORM
  30316. {
  30317.     EMR emr;
  30318.     XFORM xform;
  30319. } EMRSETWORLDTRANSFORM, *PEMRSETWORLDTRANSFORM;
  30320.  
  30321. typedef struct tagEMRMODIFYWORLDTRANSFORM
  30322. {
  30323.     EMR emr;
  30324.     XFORM xform;
  30325.     DWORD iMode;
  30326. } EMRMODIFYWORLDTRANSFORM, *PEMRMODIFYWORLDTRANSFORM;
  30327.  
  30328. typedef struct tagEMRSETPIXELV
  30329. {
  30330.     EMR emr;
  30331.     POINTL ptlPixel;
  30332.     COLORREF crColor;
  30333. } EMRSETPIXELV, *PEMRSETPIXELV;
  30334.  
  30335. typedef struct tagEMREXTFLOODFILL
  30336. {
  30337.     EMR emr;
  30338.     POINTL ptlStart;
  30339.     COLORREF crColor;
  30340.     DWORD iMode;
  30341. } EMREXTFLOODFILL, *PEMREXTFLOODFILL;
  30342.  
  30343. typedef struct tagEMRELLIPSE
  30344. {
  30345.     EMR emr;
  30346.     RECTL rclBox;
  30347. } EMRELLIPSE, *PEMRELLIPSE,
  30348.   EMRRECTANGLE, *PEMRRECTANGLE;
  30349.  
  30350.  
  30351. typedef struct tagEMRROUNDRECT
  30352. {
  30353.     EMR emr;
  30354.     RECTL rclBox;
  30355.     SIZEL szlCorner;
  30356. } EMRROUNDRECT, *PEMRROUNDRECT;
  30357.  
  30358. typedef struct tagEMRARC
  30359. {
  30360.     EMR emr;
  30361.     RECTL rclBox;
  30362.     POINTL ptlStart;
  30363.     POINTL ptlEnd;
  30364. } EMRARC, *PEMRARC,
  30365.   EMRARCTO, *PEMRARCTO,
  30366.   EMRCHORD, *PEMRCHORD,
  30367.   EMRPIE, *PEMRPIE;
  30368.  
  30369. typedef struct tagEMRANGLEARC
  30370. {
  30371.     EMR emr;
  30372.     POINTL ptlCenter;
  30373.     DWORD nRadius;
  30374.     FLOAT eStartAngle;
  30375.     FLOAT eSweepAngle;
  30376. } EMRANGLEARC, *PEMRANGLEARC;
  30377.  
  30378. typedef struct tagEMRPOLYLINE
  30379. {
  30380.     EMR emr;
  30381.     RECTL rclBounds;
  30382.     DWORD cptl;
  30383.     POINTL aptl[1];
  30384. } EMRPOLYLINE, *PEMRPOLYLINE,
  30385.   EMRPOLYBEZIER, *PEMRPOLYBEZIER,
  30386.   EMRPOLYGON, *PEMRPOLYGON,
  30387.   EMRPOLYBEZIERTO, *PEMRPOLYBEZIERTO,
  30388.   EMRPOLYLINETO, *PEMRPOLYLINETO;
  30389.  
  30390. typedef struct tagEMRPOLYLINE16
  30391. {
  30392.     EMR emr;
  30393.     RECTL rclBounds;
  30394.     DWORD cpts;
  30395.     POINTS apts[1];
  30396. } EMRPOLYLINE16, *PEMRPOLYLINE16,
  30397.   EMRPOLYBEZIER16, *PEMRPOLYBEZIER16,
  30398.   EMRPOLYGON16, *PEMRPOLYGON16,
  30399.   EMRPOLYBEZIERTO16, *PEMRPOLYBEZIERTO16,
  30400.   EMRPOLYLINETO16, *PEMRPOLYLINETO16;
  30401.  
  30402. typedef struct tagEMRPOLYDRAW
  30403. {
  30404.     EMR emr;
  30405.     RECTL rclBounds;
  30406.     DWORD cptl;
  30407.     POINTL aptl[1];
  30408.     BYTE abTypes[1];
  30409. } EMRPOLYDRAW, *PEMRPOLYDRAW;
  30410.  
  30411. typedef struct tagEMRPOLYDRAW16
  30412. {
  30413.     EMR emr;
  30414.     RECTL rclBounds;
  30415.     DWORD cpts;
  30416.     POINTS apts[1];
  30417.     BYTE abTypes[1];
  30418. } EMRPOLYDRAW16, *PEMRPOLYDRAW16;
  30419.  
  30420. typedef struct tagEMRPOLYPOLYLINE
  30421. {
  30422.     EMR emr;
  30423.     RECTL rclBounds;
  30424.     DWORD nPolys;
  30425.     DWORD cptl;
  30426.     DWORD aPolyCounts[1];
  30427.     POINTL aptl[1];
  30428. } EMRPOLYPOLYLINE, *PEMRPOLYPOLYLINE,
  30429.   EMRPOLYPOLYGON, *PEMRPOLYPOLYGON;
  30430.  
  30431. typedef struct tagEMRPOLYPOLYLINE16
  30432. {
  30433.     EMR emr;
  30434.     RECTL rclBounds;
  30435.     DWORD nPolys;
  30436.     DWORD cpts;
  30437.     DWORD aPolyCounts[1];
  30438.     POINTS apts[1];
  30439. } EMRPOLYPOLYLINE16, *PEMRPOLYPOLYLINE16,
  30440.   EMRPOLYPOLYGON16, *PEMRPOLYPOLYGON16;
  30441.  
  30442. typedef struct tagEMRINVERTRGN
  30443. {
  30444.     EMR emr;
  30445.     RECTL rclBounds;
  30446.     DWORD cbRgnData;
  30447.     BYTE RgnData[1];
  30448. } EMRINVERTRGN, *PEMRINVERTRGN,
  30449.   EMRPAINTRGN, *PEMRPAINTRGN;
  30450.  
  30451. typedef struct tagEMRFILLRGN
  30452. {
  30453.     EMR emr;
  30454.     RECTL rclBounds;
  30455.     DWORD cbRgnData;
  30456.     DWORD ihBrush;
  30457.     BYTE RgnData[1];
  30458. } EMRFILLRGN, *PEMRFILLRGN;
  30459.  
  30460. typedef struct tagEMRFRAMERGN
  30461. {
  30462.     EMR emr;
  30463.     RECTL rclBounds;
  30464.     DWORD cbRgnData;
  30465.     DWORD ihBrush;
  30466.     SIZEL szlStroke;
  30467.     BYTE RgnData[1];
  30468. } EMRFRAMERGN, *PEMRFRAMERGN;
  30469.  
  30470. typedef struct tagEMREXTSELECTCLIPRGN
  30471. {
  30472.     EMR emr;
  30473.     DWORD cbRgnData;
  30474.     DWORD iMode;
  30475.     BYTE RgnData[1];
  30476. } EMREXTSELECTCLIPRGN, *PEMREXTSELECTCLIPRGN;
  30477.  
  30478. typedef struct tagEMREXTTEXTOUTA
  30479. {
  30480.     EMR emr;
  30481.     RECTL rclBounds;
  30482.     DWORD iGraphicsMode;
  30483.     FLOAT exScale;
  30484.     FLOAT eyScale;
  30485.     EMRTEXT emrtext;
  30486.  
  30487. } EMREXTTEXTOUTA, *PEMREXTTEXTOUTA,
  30488.   EMREXTTEXTOUTW, *PEMREXTTEXTOUTW;
  30489.  
  30490. typedef struct tagEMRPOLYTEXTOUTA
  30491. {
  30492.     EMR emr;
  30493.     RECTL rclBounds;
  30494.     DWORD iGraphicsMode;
  30495.     FLOAT exScale;
  30496.     FLOAT eyScale;
  30497.     LONG cStrings;
  30498.     EMRTEXT aemrtext[1];
  30499.  
  30500. } EMRPOLYTEXTOUTA, *PEMRPOLYTEXTOUTA,
  30501.   EMRPOLYTEXTOUTW, *PEMRPOLYTEXTOUTW;
  30502.  
  30503. typedef struct tagEMRBITBLT
  30504. {
  30505.     EMR emr;
  30506.     RECTL rclBounds;
  30507.     LONG xDest;
  30508.     LONG yDest;
  30509.     LONG cxDest;
  30510.     LONG cyDest;
  30511.     DWORD dwRop;
  30512.     LONG xSrc;
  30513.     LONG ySrc;
  30514.     XFORM xformSrc;
  30515.     COLORREF crBkColorSrc;
  30516.     DWORD iUsageSrc;
  30517.  
  30518.     DWORD offBmiSrc;
  30519.     DWORD cbBmiSrc;
  30520.     DWORD offBitsSrc;
  30521.     DWORD cbBitsSrc;
  30522. } EMRBITBLT, *PEMRBITBLT;
  30523.  
  30524. typedef struct tagEMRSTRETCHBLT
  30525. {
  30526.     EMR emr;
  30527.     RECTL rclBounds;
  30528.     LONG xDest;
  30529.     LONG yDest;
  30530.     LONG cxDest;
  30531.     LONG cyDest;
  30532.     DWORD dwRop;
  30533.     LONG xSrc;
  30534.     LONG ySrc;
  30535.     XFORM xformSrc;
  30536.     COLORREF crBkColorSrc;
  30537.     DWORD iUsageSrc;
  30538.  
  30539.     DWORD offBmiSrc;
  30540.     DWORD cbBmiSrc;
  30541.     DWORD offBitsSrc;
  30542.     DWORD cbBitsSrc;
  30543.     LONG cxSrc;
  30544.     LONG cySrc;
  30545. } EMRSTRETCHBLT, *PEMRSTRETCHBLT;
  30546.  
  30547. typedef struct tagEMRMASKBLT
  30548. {
  30549.     EMR emr;
  30550.     RECTL rclBounds;
  30551.     LONG xDest;
  30552.     LONG yDest;
  30553.     LONG cxDest;
  30554.     LONG cyDest;
  30555.     DWORD dwRop;
  30556.     LONG xSrc;
  30557.     LONG ySrc;
  30558.     XFORM xformSrc;
  30559.     COLORREF crBkColorSrc;
  30560.     DWORD iUsageSrc;
  30561.  
  30562.     DWORD offBmiSrc;
  30563.     DWORD cbBmiSrc;
  30564.     DWORD offBitsSrc;
  30565.     DWORD cbBitsSrc;
  30566.     LONG xMask;
  30567.     LONG yMask;
  30568.     DWORD iUsageMask;
  30569.     DWORD offBmiMask;
  30570.     DWORD cbBmiMask;
  30571.     DWORD offBitsMask;
  30572.     DWORD cbBitsMask;
  30573. } EMRMASKBLT, *PEMRMASKBLT;
  30574.  
  30575. typedef struct tagEMRPLGBLT
  30576. {
  30577.     EMR emr;
  30578.     RECTL rclBounds;
  30579.     POINTL aptlDest[3];
  30580.     LONG xSrc;
  30581.     LONG ySrc;
  30582.     LONG cxSrc;
  30583.     LONG cySrc;
  30584.     XFORM xformSrc;
  30585.     COLORREF crBkColorSrc;
  30586.     DWORD iUsageSrc;
  30587.  
  30588.     DWORD offBmiSrc;
  30589.     DWORD cbBmiSrc;
  30590.     DWORD offBitsSrc;
  30591.     DWORD cbBitsSrc;
  30592.     LONG xMask;
  30593.     LONG yMask;
  30594.     DWORD iUsageMask;
  30595.     DWORD offBmiMask;
  30596.     DWORD cbBmiMask;
  30597.     DWORD offBitsMask;
  30598.     DWORD cbBitsMask;
  30599. } EMRPLGBLT, *PEMRPLGBLT;
  30600.  
  30601. typedef struct tagEMRSETDIBITSTODEVICE
  30602. {
  30603.     EMR emr;
  30604.     RECTL rclBounds;
  30605.     LONG xDest;
  30606.     LONG yDest;
  30607.     LONG xSrc;
  30608.     LONG ySrc;
  30609.     LONG cxSrc;
  30610.     LONG cySrc;
  30611.     DWORD offBmiSrc;
  30612.     DWORD cbBmiSrc;
  30613.     DWORD offBitsSrc;
  30614.     DWORD cbBitsSrc;
  30615.     DWORD iUsageSrc;
  30616.     DWORD iStartScan;
  30617.     DWORD cScans;
  30618. } EMRSETDIBITSTODEVICE, *PEMRSETDIBITSTODEVICE;
  30619.  
  30620. typedef struct tagEMRSTRETCHDIBITS
  30621. {
  30622.     EMR emr;
  30623.     RECTL rclBounds;
  30624.     LONG xDest;
  30625.     LONG yDest;
  30626.     LONG xSrc;
  30627.     LONG ySrc;
  30628.     LONG cxSrc;
  30629.     LONG cySrc;
  30630.     DWORD offBmiSrc;
  30631.     DWORD cbBmiSrc;
  30632.     DWORD offBitsSrc;
  30633.     DWORD cbBitsSrc;
  30634.     DWORD iUsageSrc;
  30635.     DWORD dwRop;
  30636.     LONG cxDest;
  30637.     LONG cyDest;
  30638. } EMRSTRETCHDIBITS, *PEMRSTRETCHDIBITS;
  30639.  
  30640. typedef struct tagEMREXTCREATEFONTINDIRECTW
  30641. {
  30642.     EMR emr;
  30643.     DWORD ihFont;
  30644.     EXTLOGFONTW elfw;
  30645. } EMREXTCREATEFONTINDIRECTW, *PEMREXTCREATEFONTINDIRECTW;
  30646.  
  30647. typedef struct tagEMRCREATEPALETTE
  30648. {
  30649.     EMR emr;
  30650.     DWORD ihPal;
  30651.     LOGPALETTE lgpl;
  30652.  
  30653. } EMRCREATEPALETTE, *PEMRCREATEPALETTE;
  30654.  
  30655. typedef struct tagEMRCREATEPEN
  30656. {
  30657.     EMR emr;
  30658.     DWORD ihPen;
  30659.     LOGPEN lopn;
  30660. } EMRCREATEPEN, *PEMRCREATEPEN;
  30661.  
  30662. typedef struct tagEMREXTCREATEPEN
  30663. {
  30664.     EMR emr;
  30665.     DWORD ihPen;
  30666.     DWORD offBmi;
  30667.     DWORD cbBmi;
  30668.  
  30669.  
  30670.     DWORD offBits;
  30671.     DWORD cbBits;
  30672.     EXTLOGPEN32 elp;
  30673. } EMREXTCREATEPEN, *PEMREXTCREATEPEN;
  30674.  
  30675. typedef struct tagEMRCREATEBRUSHINDIRECT
  30676. {
  30677.     EMR emr;
  30678.     DWORD ihBrush;
  30679.     LOGBRUSH32 lb;
  30680.  
  30681. } EMRCREATEBRUSHINDIRECT, *PEMRCREATEBRUSHINDIRECT;
  30682.  
  30683. typedef struct tagEMRCREATEMONOBRUSH
  30684. {
  30685.     EMR emr;
  30686.     DWORD ihBrush;
  30687.     DWORD iUsage;
  30688.     DWORD offBmi;
  30689.     DWORD cbBmi;
  30690.     DWORD offBits;
  30691.     DWORD cbBits;
  30692. } EMRCREATEMONOBRUSH, *PEMRCREATEMONOBRUSH;
  30693.  
  30694. typedef struct tagEMRCREATEDIBPATTERNBRUSHPT
  30695. {
  30696.     EMR emr;
  30697.     DWORD ihBrush;
  30698.     DWORD iUsage;
  30699.     DWORD offBmi;
  30700.     DWORD cbBmi;
  30701.  
  30702.  
  30703.     DWORD offBits;
  30704.     DWORD cbBits;
  30705. } EMRCREATEDIBPATTERNBRUSHPT, *PEMRCREATEDIBPATTERNBRUSHPT;
  30706.  
  30707. typedef struct tagEMRFORMAT
  30708. {
  30709.     DWORD dSignature;
  30710.     DWORD nVersion;
  30711.     DWORD cbData;
  30712.     DWORD offData;
  30713.  
  30714. } EMRFORMAT, *PEMRFORMAT;
  30715.  
  30716.  
  30717.  
  30718. typedef struct tagEMRGLSRECORD
  30719. {
  30720.     EMR emr;
  30721.     DWORD cbData;
  30722.     BYTE Data[1];
  30723. } EMRGLSRECORD, *PEMRGLSRECORD;
  30724.  
  30725. typedef struct tagEMRGLSBOUNDEDRECORD
  30726. {
  30727.     EMR emr;
  30728.     RECTL rclBounds;
  30729.     DWORD cbData;
  30730.     BYTE Data[1];
  30731. } EMRGLSBOUNDEDRECORD, *PEMRGLSBOUNDEDRECORD;
  30732.  
  30733. typedef struct tagEMRPIXELFORMAT
  30734. {
  30735.     EMR emr;
  30736.     PIXELFORMATDESCRIPTOR pfd;
  30737. } EMRPIXELFORMAT, *PEMRPIXELFORMAT;
  30738.  
  30739. typedef struct tagEMRCREATECOLORSPACE
  30740. {
  30741.     EMR emr;
  30742.     DWORD ihCS;
  30743.     LOGCOLORSPACEA lcs;
  30744. } EMRCREATECOLORSPACE, *PEMRCREATECOLORSPACE;
  30745.  
  30746. typedef struct tagEMRSETCOLORSPACE
  30747. {
  30748.     EMR emr;
  30749.     DWORD ihCS;
  30750. } EMRSETCOLORSPACE, *PEMRSETCOLORSPACE,
  30751.   EMRSELECTCOLORSPACE, *PEMRSELECTCOLORSPACE,
  30752.   EMRDELETECOLORSPACE, *PEMRDELETECOLORSPACE;
  30753.  
  30754.  
  30755.  
  30756.  
  30757.  
  30758. typedef struct tagEMREXTESCAPE
  30759. {
  30760.     EMR emr;
  30761.     INT iEscape;
  30762.     INT cbEscData;
  30763.     BYTE EscData[1];
  30764. } EMREXTESCAPE, *PEMREXTESCAPE,
  30765.   EMRDRAWESCAPE, *PEMRDRAWESCAPE;
  30766.  
  30767. typedef struct tagEMRNAMEDESCAPE
  30768. {
  30769.     EMR emr;
  30770.     INT iEscape;
  30771.     INT cbDriver;
  30772.     INT cbEscData;
  30773.     BYTE EscData[1];
  30774. } EMRNAMEDESCAPE, *PEMRNAMEDESCAPE;
  30775.  
  30776.  
  30777.  
  30778. typedef struct tagEMRSETICMPROFILE
  30779. {
  30780.     EMR emr;
  30781.     DWORD dwFlags;
  30782.     DWORD cbName;
  30783.     DWORD cbData;
  30784.     BYTE Data[1];
  30785. } EMRSETICMPROFILE, *PEMRSETICMPROFILE,
  30786.   EMRSETICMPROFILEA, *PEMRSETICMPROFILEA,
  30787.   EMRSETICMPROFILEW, *PEMRSETICMPROFILEW;
  30788.  
  30789.  
  30790.  
  30791. typedef struct tagEMRCREATECOLORSPACEW
  30792. {
  30793.     EMR emr;
  30794.     DWORD ihCS;
  30795.     LOGCOLORSPACEW lcs;
  30796.     DWORD dwFlags;
  30797.     DWORD cbData;
  30798.     BYTE Data[1];
  30799. } EMRCREATECOLORSPACEW, *PEMRCREATECOLORSPACEW;
  30800.  
  30801.  
  30802.  
  30803. typedef struct tagCOLORMATCHTOTARGET
  30804. {
  30805.     EMR emr;
  30806.     DWORD dwAction;
  30807.     DWORD dwFlags;
  30808.     DWORD cbName;
  30809.     DWORD cbData;
  30810.     BYTE Data[1];
  30811. } EMRCOLORMATCHTOTARGET, *PEMRCOLORMATCHTOTARGET;
  30812.  
  30813. typedef struct tagCOLORCORRECTPALETTE
  30814. {
  30815.     EMR emr;
  30816.     DWORD ihPalette;
  30817.     DWORD nFirstEntry;
  30818.     DWORD nPalEntries;
  30819.     DWORD nReserved;
  30820. } EMRCOLORCORRECTPALETTE, *PEMRCOLORCORRECTPALETTE;
  30821.  
  30822. typedef struct tagEMRALPHABLEND
  30823. {
  30824.     EMR emr;
  30825.     RECTL rclBounds;
  30826.     LONG xDest;
  30827.     LONG yDest;
  30828.     LONG cxDest;
  30829.     LONG cyDest;
  30830.     DWORD dwRop;
  30831.     LONG xSrc;
  30832.     LONG ySrc;
  30833.     XFORM xformSrc;
  30834.     COLORREF crBkColorSrc;
  30835.     DWORD iUsageSrc;
  30836.  
  30837.     DWORD offBmiSrc;
  30838.     DWORD cbBmiSrc;
  30839.     DWORD offBitsSrc;
  30840.     DWORD cbBitsSrc;
  30841.     LONG cxSrc;
  30842.     LONG cySrc;
  30843. } EMRALPHABLEND, *PEMRALPHABLEND;
  30844.  
  30845. typedef struct tagEMRGRADIENTFILL
  30846. {
  30847.     EMR emr;
  30848.     RECTL rclBounds;
  30849.     DWORD nVer;
  30850.     DWORD nTri;
  30851.     ULONG ulMode;
  30852.     TRIVERTEX Ver[1];
  30853. }EMRGRADIENTFILL,*PEMRGRADIENTFILL;
  30854.  
  30855. typedef struct tagEMRTRANSPARENTBLT
  30856. {
  30857.     EMR emr;
  30858.     RECTL rclBounds;
  30859.     LONG xDest;
  30860.     LONG yDest;
  30861.     LONG cxDest;
  30862.     LONG cyDest;
  30863.     DWORD dwRop;
  30864.     LONG xSrc;
  30865.     LONG ySrc;
  30866.     XFORM xformSrc;
  30867.     COLORREF crBkColorSrc;
  30868.     DWORD iUsageSrc;
  30869.  
  30870.     DWORD offBmiSrc;
  30871.     DWORD cbBmiSrc;
  30872.     DWORD offBitsSrc;
  30873.     DWORD cbBitsSrc;
  30874.     LONG cxSrc;
  30875.     LONG cySrc;
  30876. } EMRTRANSPARENTBLT, *PEMRTRANSPARENTBLT;
  30877. # 6203 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  30878. __declspec(dllimport) BOOL __stdcall wglCopyContext(HGLRC, HGLRC, UINT);
  30879. __declspec(dllimport) HGLRC __stdcall wglCreateContext(HDC);
  30880. __declspec(dllimport) HGLRC __stdcall wglCreateLayerContext(HDC, int);
  30881. __declspec(dllimport) BOOL __stdcall wglDeleteContext(HGLRC);
  30882. __declspec(dllimport) HGLRC __stdcall wglGetCurrentContext(void);
  30883. __declspec(dllimport) HDC __stdcall wglGetCurrentDC(void);
  30884. __declspec(dllimport) PROC __stdcall wglGetProcAddress(LPCSTR);
  30885. __declspec(dllimport) BOOL __stdcall wglMakeCurrent(HDC, HGLRC);
  30886. __declspec(dllimport) BOOL __stdcall wglShareLists(HGLRC, HGLRC);
  30887. __declspec(dllimport) BOOL __stdcall wglUseFontBitmapsA(HDC, DWORD, DWORD, DWORD);
  30888. __declspec(dllimport) BOOL __stdcall wglUseFontBitmapsW(HDC, DWORD, DWORD, DWORD);
  30889.  
  30890.  
  30891.  
  30892.  
  30893.  
  30894. __declspec(dllimport) BOOL __stdcall SwapBuffers(HDC);
  30895.  
  30896. typedef struct _POINTFLOAT {
  30897.     FLOAT x;
  30898.     FLOAT y;
  30899. } POINTFLOAT, *PPOINTFLOAT;
  30900.  
  30901. typedef struct _GLYPHMETRICSFLOAT {
  30902.     FLOAT gmfBlackBoxX;
  30903.     FLOAT gmfBlackBoxY;
  30904.     POINTFLOAT gmfptGlyphOrigin;
  30905.     FLOAT gmfCellIncX;
  30906.     FLOAT gmfCellIncY;
  30907. } GLYPHMETRICSFLOAT, *PGLYPHMETRICSFLOAT, *LPGLYPHMETRICSFLOAT;
  30908.  
  30909.  
  30910.  
  30911. __declspec(dllimport) BOOL __stdcall wglUseFontOutlinesA(HDC, DWORD, DWORD, DWORD, FLOAT,
  30912.                                            FLOAT, int, LPGLYPHMETRICSFLOAT);
  30913. __declspec(dllimport) BOOL __stdcall wglUseFontOutlinesW(HDC, DWORD, DWORD, DWORD, FLOAT,
  30914.                                            FLOAT, int, LPGLYPHMETRICSFLOAT);
  30915.  
  30916.  
  30917.  
  30918.  
  30919.  
  30920.  
  30921.  
  30922. typedef struct tagLAYERPLANEDESCRIPTOR {
  30923.     WORD nSize;
  30924.     WORD nVersion;
  30925.     DWORD dwFlags;
  30926.     BYTE iPixelType;
  30927.     BYTE cColorBits;
  30928.     BYTE cRedBits;
  30929.     BYTE cRedShift;
  30930.     BYTE cGreenBits;
  30931.     BYTE cGreenShift;
  30932.     BYTE cBlueBits;
  30933.     BYTE cBlueShift;
  30934.     BYTE cAlphaBits;
  30935.     BYTE cAlphaShift;
  30936.     BYTE cAccumBits;
  30937.     BYTE cAccumRedBits;
  30938.     BYTE cAccumGreenBits;
  30939.     BYTE cAccumBlueBits;
  30940.     BYTE cAccumAlphaBits;
  30941.     BYTE cDepthBits;
  30942.     BYTE cStencilBits;
  30943.     BYTE cAuxBuffers;
  30944.     BYTE iLayerPlane;
  30945.     BYTE bReserved;
  30946.     COLORREF crTransparent;
  30947. } LAYERPLANEDESCRIPTOR, *PLAYERPLANEDESCRIPTOR, *LPLAYERPLANEDESCRIPTOR;
  30948. # 6322 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  30949. __declspec(dllimport) BOOL __stdcall wglDescribeLayerPlane(HDC, int, int, UINT,
  30950.                                              LPLAYERPLANEDESCRIPTOR);
  30951. __declspec(dllimport) int __stdcall wglSetLayerPaletteEntries(HDC, int, int, int,
  30952.                                                  const COLORREF *);
  30953. __declspec(dllimport) int __stdcall wglGetLayerPaletteEntries(HDC, int, int, int,
  30954.                                                  COLORREF *);
  30955. __declspec(dllimport) BOOL __stdcall wglRealizeLayerPalette(HDC, int, BOOL);
  30956. __declspec(dllimport) BOOL __stdcall wglSwapLayerBuffers(HDC, UINT);
  30957.  
  30958.  
  30959.  
  30960. typedef struct _WGLSWAP
  30961. {
  30962.     HDC hdc;
  30963.     UINT uiFlags;
  30964. } WGLSWAP, *PWGLSWAP, *LPWGLSWAP;
  30965.  
  30966.  
  30967.  
  30968. __declspec(dllimport) DWORD __stdcall wglSwapMultipleBuffers(UINT, const WGLSWAP *);
  30969.  
  30970.  
  30971.  
  30972.  
  30973. #pragma endregion
  30974.  
  30975.  
  30976.  
  30977. #pragma region Desktop Family
  30978.  
  30979.  
  30980.  
  30981.  
  30982. #pragma endregion
  30983. # 6367 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wingdi.h" 3
  30984. #pragma option pop
  30985. # 204 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  30986.  
  30987. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 1 3
  30988. #pragma option push -b -a8 -pc -A- -w-pun -w-inl
  30989. # 59 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  30990. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\DE\\stdarg.h" 1 3
  30991. # 59 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 2 3
  30992.  
  30993.  
  30994.  
  30995. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 1 3
  30996. #pragma option push -b -a8 -pc -A- -w-pun
  30997. # 688 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 3
  30998. #pragma option pop
  30999. # 62 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 2 3
  31000.  
  31001.  
  31002.  
  31003.  
  31004.  
  31005. #pragma region Desktop Family
  31006.  
  31007.  
  31008. typedef HANDLE HDWP;
  31009. typedef void MENUTEMPLATEA;
  31010. typedef void MENUTEMPLATEW;
  31011.  
  31012.  
  31013.  
  31014. typedef MENUTEMPLATEA MENUTEMPLATE;
  31015.  
  31016. typedef PVOID LPMENUTEMPLATEA;
  31017. typedef PVOID LPMENUTEMPLATEW;
  31018.  
  31019.  
  31020.  
  31021. typedef LPMENUTEMPLATEA LPMENUTEMPLATE;
  31022.  
  31023.  
  31024. typedef LRESULT (__stdcall* WNDPROC)(HWND, UINT, WPARAM, LPARAM);
  31025.  
  31026.  
  31027. #pragma endregion
  31028.  
  31029.  
  31030.  
  31031. #pragma region Application Family or OneCore Family
  31032.  
  31033.  
  31034. typedef INT_PTR (__stdcall* DLGPROC)(HWND, UINT, WPARAM, LPARAM);
  31035.  
  31036.  
  31037. #pragma endregion
  31038.  
  31039. #pragma region Desktop Family
  31040.  
  31041.  
  31042. typedef void (__stdcall* TIMERPROC)(HWND, UINT, UINT_PTR, DWORD);
  31043. typedef BOOL (__stdcall* GRAYSTRINGPROC)(HDC, LPARAM, int);
  31044. typedef BOOL (__stdcall* WNDENUMPROC)(HWND, LPARAM);
  31045. typedef LRESULT (__stdcall* HOOKPROC)(int code, WPARAM wParam, LPARAM lParam);
  31046. typedef void (__stdcall* SENDASYNCPROC)(HWND, UINT, ULONG_PTR, LRESULT);
  31047.  
  31048. typedef BOOL (__stdcall* PROPENUMPROCA)(HWND, LPCSTR, HANDLE);
  31049. typedef BOOL (__stdcall* PROPENUMPROCW)(HWND, LPCWSTR, HANDLE);
  31050.  
  31051. typedef BOOL (__stdcall* PROPENUMPROCEXA)(HWND, LPSTR, HANDLE, ULONG_PTR);
  31052. typedef BOOL (__stdcall* PROPENUMPROCEXW)(HWND, LPWSTR, HANDLE, ULONG_PTR);
  31053.  
  31054. typedef int (__stdcall* EDITWORDBREAKPROCA)(LPSTR lpch, int ichCurrent, int cch, int code);
  31055. typedef int (__stdcall* EDITWORDBREAKPROCW)(LPWSTR lpch, int ichCurrent, int cch, int code);
  31056.  
  31057.  
  31058. typedef BOOL (__stdcall* DRAWSTATEPROC)(HDC hdc, LPARAM lData, WPARAM wData, int cx, int cy);
  31059.  
  31060.  
  31061.  
  31062.  
  31063. #pragma endregion
  31064. # 165 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31065. #pragma region Desktop Family
  31066.  
  31067.  
  31068.  
  31069.  
  31070.  
  31071.  
  31072.  
  31073. typedef PROPENUMPROCA PROPENUMPROC;
  31074. typedef PROPENUMPROCEXA PROPENUMPROCEX;
  31075. typedef EDITWORDBREAKPROCA EDITWORDBREAKPROC;
  31076.  
  31077.  
  31078.  
  31079.  
  31080. typedef BOOL (__stdcall* NAMEENUMPROCA)(LPSTR, LPARAM);
  31081. typedef BOOL (__stdcall* NAMEENUMPROCW)(LPWSTR, LPARAM);
  31082.  
  31083. typedef NAMEENUMPROCA WINSTAENUMPROCA;
  31084. typedef NAMEENUMPROCA DESKTOPENUMPROCA;
  31085. typedef NAMEENUMPROCW WINSTAENUMPROCW;
  31086. typedef NAMEENUMPROCW DESKTOPENUMPROCW;
  31087. # 207 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31088. typedef WINSTAENUMPROCA WINSTAENUMPROC;
  31089. typedef DESKTOPENUMPROCA DESKTOPENUMPROC;
  31090.  
  31091.  
  31092.  
  31093.  
  31094. #pragma endregion
  31095. # 272 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31096. #pragma region Desktop Family
  31097.  
  31098.  
  31099.  
  31100.  
  31101.  
  31102.  
  31103.  
  31104. __declspec(dllimport)
  31105. int
  31106. __stdcall
  31107. wvsprintfA(
  31108.           LPSTR,
  31109.                                 LPCSTR,
  31110.          va_list arglist);
  31111. __declspec(dllimport)
  31112. int
  31113. __stdcall
  31114. wvsprintfW(
  31115.           LPWSTR,
  31116.                                 LPCWSTR,
  31117.          va_list arglist);
  31118.  
  31119.  
  31120.  
  31121.  
  31122.  
  31123.  
  31124. __declspec(dllimport)
  31125. int
  31126. __cdecl
  31127. wsprintfA(
  31128.           LPSTR,
  31129.                                 LPCSTR,
  31130.     ...);
  31131. __declspec(dllimport)
  31132. int
  31133. __cdecl
  31134. wsprintfW(
  31135.           LPWSTR,
  31136.                                 LPCWSTR,
  31137.     ...);
  31138. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31139. #pragma endregion
  31140. # 831 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31141. #pragma region Desktop Family
  31142.  
  31143.  
  31144.  
  31145.  
  31146.  
  31147. typedef struct tagCBT_CREATEWNDA
  31148. {
  31149.     struct tagCREATESTRUCTA *lpcs;
  31150.     HWND hwndInsertAfter;
  31151. } CBT_CREATEWNDA, *LPCBT_CREATEWNDA;
  31152.  
  31153.  
  31154.  
  31155. typedef struct tagCBT_CREATEWNDW
  31156. {
  31157.     struct tagCREATESTRUCTW *lpcs;
  31158.     HWND hwndInsertAfter;
  31159. } CBT_CREATEWNDW, *LPCBT_CREATEWNDW;
  31160.  
  31161.  
  31162.  
  31163.  
  31164. typedef CBT_CREATEWNDA CBT_CREATEWND;
  31165. typedef LPCBT_CREATEWNDA LPCBT_CREATEWND;
  31166.  
  31167.  
  31168.  
  31169.  
  31170.  
  31171. typedef struct tagCBTACTIVATESTRUCT
  31172. {
  31173.     BOOL fMouse;
  31174.     HWND hWndActive;
  31175. } CBTACTIVATESTRUCT, *LPCBTACTIVATESTRUCT;
  31176.  
  31177.  
  31178. #pragma endregion
  31179.  
  31180.  
  31181.  
  31182. #pragma region Desktop Family
  31183.  
  31184.  
  31185.  
  31186.  
  31187.  
  31188. typedef struct tagWTSSESSION_NOTIFICATION
  31189. {
  31190.     DWORD cbSize;
  31191.     DWORD dwSessionId;
  31192.  
  31193. } WTSSESSION_NOTIFICATION, *PWTSSESSION_NOTIFICATION;
  31194.  
  31195.  
  31196. #pragma endregion
  31197. # 1029 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31198. #pragma region Desktop Family
  31199.  
  31200.  
  31201. typedef struct
  31202. {
  31203.     HWND hwnd;
  31204.     RECT rc;
  31205. } SHELLHOOKINFO, *LPSHELLHOOKINFO;
  31206.  
  31207.  
  31208.  
  31209.  
  31210. typedef struct tagEVENTMSG {
  31211.     UINT message;
  31212.     UINT paramL;
  31213.     UINT paramH;
  31214.     DWORD time;
  31215.     HWND hwnd;
  31216. } EVENTMSG, *PEVENTMSGMSG, *NPEVENTMSGMSG, *LPEVENTMSGMSG;
  31217.  
  31218. typedef struct tagEVENTMSG *PEVENTMSG, *NPEVENTMSG, *LPEVENTMSG;
  31219.  
  31220.  
  31221.  
  31222.  
  31223. typedef struct tagCWPSTRUCT {
  31224.     LPARAM lParam;
  31225.     WPARAM wParam;
  31226.     UINT message;
  31227.     HWND hwnd;
  31228. } CWPSTRUCT, *PCWPSTRUCT, *NPCWPSTRUCT, *LPCWPSTRUCT;
  31229.  
  31230.  
  31231.  
  31232.  
  31233.  
  31234. typedef struct tagCWPRETSTRUCT {
  31235.     LRESULT lResult;
  31236.     LPARAM lParam;
  31237.     WPARAM wParam;
  31238.     UINT message;
  31239.     HWND hwnd;
  31240. } CWPRETSTRUCT, *PCWPRETSTRUCT, *NPCWPRETSTRUCT, *LPCWPRETSTRUCT;
  31241.  
  31242.  
  31243.  
  31244.  
  31245. #pragma endregion
  31246. # 1093 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31247. #pragma region Desktop Family
  31248.  
  31249.  
  31250.  
  31251.  
  31252.  
  31253. typedef struct tagKBDLLHOOKSTRUCT {
  31254.     DWORD vkCode;
  31255.     DWORD scanCode;
  31256.     DWORD flags;
  31257.     DWORD time;
  31258.     ULONG_PTR dwExtraInfo;
  31259. } KBDLLHOOKSTRUCT, *LPKBDLLHOOKSTRUCT, *PKBDLLHOOKSTRUCT;
  31260.  
  31261.  
  31262.  
  31263.  
  31264. typedef struct tagMSLLHOOKSTRUCT {
  31265.     POINT pt;
  31266.     DWORD mouseData;
  31267.     DWORD flags;
  31268.     DWORD time;
  31269.     ULONG_PTR dwExtraInfo;
  31270. } MSLLHOOKSTRUCT, *LPMSLLHOOKSTRUCT, *PMSLLHOOKSTRUCT;
  31271.  
  31272.  
  31273. #pragma endregion
  31274.  
  31275.  
  31276.  
  31277. #pragma region Desktop Family
  31278.  
  31279.  
  31280.  
  31281.  
  31282.  
  31283. typedef struct tagDEBUGHOOKINFO
  31284. {
  31285.     DWORD idThread;
  31286.     DWORD idThreadInstaller;
  31287.     LPARAM lParam;
  31288.     WPARAM wParam;
  31289.     int code;
  31290. } DEBUGHOOKINFO, *PDEBUGHOOKINFO, *NPDEBUGHOOKINFO, * LPDEBUGHOOKINFO;
  31291.  
  31292.  
  31293.  
  31294.  
  31295. typedef struct tagMOUSEHOOKSTRUCT {
  31296.     POINT pt;
  31297.     HWND hwnd;
  31298.     UINT wHitTestCode;
  31299.     ULONG_PTR dwExtraInfo;
  31300. } MOUSEHOOKSTRUCT, *LPMOUSEHOOKSTRUCT, *PMOUSEHOOKSTRUCT;
  31301. # 1155 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31302. typedef struct tagMOUSEHOOKSTRUCTEX
  31303. {
  31304.     MOUSEHOOKSTRUCT ;
  31305.     DWORD mouseData;
  31306. } MOUSEHOOKSTRUCTEX, *LPMOUSEHOOKSTRUCTEX, *PMOUSEHOOKSTRUCTEX;
  31307.  
  31308.  
  31309.  
  31310.  
  31311.  
  31312.  
  31313.  
  31314. typedef struct tagHARDWAREHOOKSTRUCT {
  31315.     HWND hwnd;
  31316.     UINT message;
  31317.     WPARAM wParam;
  31318.     LPARAM lParam;
  31319. } HARDWAREHOOKSTRUCT, *LPHARDWAREHOOKSTRUCT, *PHARDWAREHOOKSTRUCT;
  31320.  
  31321.  
  31322.  
  31323. #pragma endregion
  31324. # 1215 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31325. #pragma region Desktop Family
  31326.  
  31327.  
  31328. __declspec(dllimport)
  31329. HKL
  31330. __stdcall
  31331. LoadKeyboardLayoutA(
  31332.          LPCSTR pwszKLID,
  31333.          UINT Flags);
  31334. __declspec(dllimport)
  31335. HKL
  31336. __stdcall
  31337. LoadKeyboardLayoutW(
  31338.          LPCWSTR pwszKLID,
  31339.          UINT Flags);
  31340. # 1238 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31341. __declspec(dllimport)
  31342. HKL
  31343. __stdcall
  31344. ActivateKeyboardLayout(
  31345.          HKL hkl,
  31346.          UINT Flags);
  31347. # 1254 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31348. __declspec(dllimport)
  31349. int
  31350. __stdcall
  31351. ToUnicodeEx(
  31352.          UINT wVirtKey,
  31353.          UINT wScanCode,
  31354.                           const BYTE *lpKeyState,
  31355.                           LPWSTR pwszBuff,
  31356.          int cchBuff,
  31357.          UINT wFlags,
  31358.              HKL dwhkl);
  31359.  
  31360.  
  31361. __declspec(dllimport)
  31362. BOOL
  31363. __stdcall
  31364. UnloadKeyboardLayout(
  31365.          HKL hkl);
  31366.  
  31367. __declspec(dllimport)
  31368. BOOL
  31369. __stdcall
  31370. GetKeyboardLayoutNameA(
  31371.                                 LPSTR pwszKLID);
  31372. __declspec(dllimport)
  31373. BOOL
  31374. __stdcall
  31375. GetKeyboardLayoutNameW(
  31376.                                 LPWSTR pwszKLID);
  31377.  
  31378.  
  31379.  
  31380.  
  31381.  
  31382.  
  31383.  
  31384. __declspec(dllimport)
  31385. int
  31386. __stdcall
  31387. GetKeyboardLayoutList(
  31388.          int nBuff,
  31389.                                        HKL *lpList);
  31390.  
  31391. __declspec(dllimport)
  31392. HKL
  31393. __stdcall
  31394. GetKeyboardLayout(
  31395.          DWORD idThread);
  31396.  
  31397.  
  31398.  
  31399.  
  31400.  
  31401. #pragma endregion
  31402.  
  31403.  
  31404.  
  31405. #pragma region Desktop Family
  31406.  
  31407.  
  31408. typedef struct tagMOUSEMOVEPOINT {
  31409.     int x;
  31410.     int y;
  31411.     DWORD time;
  31412.     ULONG_PTR dwExtraInfo;
  31413. } MOUSEMOVEPOINT, *PMOUSEMOVEPOINT, * LPMOUSEMOVEPOINT;
  31414.  
  31415.  
  31416. #pragma endregion
  31417.  
  31418.  
  31419.  
  31420.  
  31421.  
  31422.  
  31423.  
  31424. #pragma region Desktop Family
  31425.  
  31426.  
  31427. __declspec(dllimport)
  31428. int
  31429. __stdcall
  31430. GetMouseMovePointsEx(
  31431.          UINT cbSize,
  31432.          LPMOUSEMOVEPOINT lppt,
  31433.                              LPMOUSEMOVEPOINT lpptBuf,
  31434.          int nBufPoints,
  31435.          DWORD resolution);
  31436.  
  31437.  
  31438. #pragma endregion
  31439. # 1370 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31440. #pragma region Desktop Family
  31441.  
  31442.  
  31443. __declspec(dllimport)
  31444. HDESK
  31445. __stdcall
  31446. CreateDesktopA(
  31447.          LPCSTR lpszDesktop,
  31448.                LPCSTR lpszDevice,
  31449.                DEVMODEA* pDevmode,
  31450.          DWORD dwFlags,
  31451.          ACCESS_MASK dwDesiredAccess,
  31452.              LPSECURITY_ATTRIBUTES lpsa);
  31453. __declspec(dllimport)
  31454. HDESK
  31455. __stdcall
  31456. CreateDesktopW(
  31457.          LPCWSTR lpszDesktop,
  31458.                LPCWSTR lpszDevice,
  31459.                DEVMODEW* pDevmode,
  31460.          DWORD dwFlags,
  31461.          ACCESS_MASK dwDesiredAccess,
  31462.              LPSECURITY_ATTRIBUTES lpsa);
  31463.  
  31464.  
  31465.  
  31466.  
  31467.  
  31468.  
  31469. __declspec(dllimport)
  31470. HDESK
  31471. __stdcall
  31472. CreateDesktopExA(
  31473.          LPCSTR lpszDesktop,
  31474.                LPCSTR lpszDevice,
  31475.                DEVMODEA* pDevmode,
  31476.          DWORD dwFlags,
  31477.          ACCESS_MASK dwDesiredAccess,
  31478.              LPSECURITY_ATTRIBUTES lpsa,
  31479.          ULONG ulHeapSize,
  31480.                PVOID pvoid);
  31481. __declspec(dllimport)
  31482. HDESK
  31483. __stdcall
  31484. CreateDesktopExW(
  31485.          LPCWSTR lpszDesktop,
  31486.                LPCWSTR lpszDevice,
  31487.                DEVMODEW* pDevmode,
  31488.          DWORD dwFlags,
  31489.          ACCESS_MASK dwDesiredAccess,
  31490.              LPSECURITY_ATTRIBUTES lpsa,
  31491.          ULONG ulHeapSize,
  31492.                PVOID pvoid);
  31493.  
  31494.  
  31495.  
  31496.  
  31497.  
  31498.  
  31499.  
  31500. #pragma endregion
  31501.  
  31502.  
  31503.  
  31504.  
  31505. #pragma region Desktop Family
  31506.  
  31507.  
  31508. __declspec(dllimport)
  31509. HDESK
  31510. __stdcall
  31511. OpenDesktopA(
  31512.          LPCSTR lpszDesktop,
  31513.          DWORD dwFlags,
  31514.          BOOL fInherit,
  31515.          ACCESS_MASK dwDesiredAccess);
  31516. __declspec(dllimport)
  31517. HDESK
  31518. __stdcall
  31519. OpenDesktopW(
  31520.          LPCWSTR lpszDesktop,
  31521.          DWORD dwFlags,
  31522.          BOOL fInherit,
  31523.          ACCESS_MASK dwDesiredAccess);
  31524.  
  31525.  
  31526.  
  31527.  
  31528.  
  31529.  
  31530. __declspec(dllimport)
  31531. HDESK
  31532. __stdcall
  31533. OpenInputDesktop(
  31534.          DWORD dwFlags,
  31535.          BOOL fInherit,
  31536.          ACCESS_MASK dwDesiredAccess);
  31537.  
  31538.  
  31539. __declspec(dllimport)
  31540. BOOL
  31541. __stdcall
  31542. EnumDesktopsA(
  31543.              HWINSTA hwinsta,
  31544.          DESKTOPENUMPROCA lpEnumFunc,
  31545.          LPARAM lParam);
  31546. __declspec(dllimport)
  31547. BOOL
  31548. __stdcall
  31549. EnumDesktopsW(
  31550.              HWINSTA hwinsta,
  31551.          DESKTOPENUMPROCW lpEnumFunc,
  31552.          LPARAM lParam);
  31553.  
  31554.  
  31555.  
  31556.  
  31557.  
  31558.  
  31559. __declspec(dllimport)
  31560. BOOL
  31561. __stdcall
  31562. EnumDesktopWindows(
  31563.              HDESK hDesktop,
  31564.          WNDENUMPROC lpfn,
  31565.          LPARAM lParam);
  31566.  
  31567.  
  31568. __declspec(dllimport)
  31569. BOOL
  31570. __stdcall
  31571. SwitchDesktop(
  31572.          HDESK hDesktop);
  31573.  
  31574.  
  31575. __declspec(dllimport)
  31576. BOOL
  31577. __stdcall
  31578. SetThreadDesktop(
  31579.           HDESK hDesktop);
  31580.  
  31581. __declspec(dllimport)
  31582. BOOL
  31583. __stdcall
  31584. CloseDesktop(
  31585.          HDESK hDesktop);
  31586.  
  31587. __declspec(dllimport)
  31588. HDESK
  31589. __stdcall
  31590. GetThreadDesktop(
  31591.          DWORD dwThreadId);
  31592.  
  31593.  
  31594. #pragma endregion
  31595. # 1556 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31596. #pragma region Desktop Family
  31597.  
  31598.  
  31599. __declspec(dllimport)
  31600. HWINSTA
  31601. __stdcall
  31602. CreateWindowStationA(
  31603.              LPCSTR lpwinsta,
  31604.          DWORD dwFlags,
  31605.          ACCESS_MASK dwDesiredAccess,
  31606.              LPSECURITY_ATTRIBUTES lpsa);
  31607. __declspec(dllimport)
  31608. HWINSTA
  31609. __stdcall
  31610. CreateWindowStationW(
  31611.              LPCWSTR lpwinsta,
  31612.          DWORD dwFlags,
  31613.          ACCESS_MASK dwDesiredAccess,
  31614.              LPSECURITY_ATTRIBUTES lpsa);
  31615.  
  31616.  
  31617.  
  31618.  
  31619.  
  31620.  
  31621. __declspec(dllimport)
  31622. HWINSTA
  31623. __stdcall
  31624. OpenWindowStationA(
  31625.          LPCSTR lpszWinSta,
  31626.          BOOL fInherit,
  31627.          ACCESS_MASK dwDesiredAccess);
  31628. __declspec(dllimport)
  31629. HWINSTA
  31630. __stdcall
  31631. OpenWindowStationW(
  31632.          LPCWSTR lpszWinSta,
  31633.          BOOL fInherit,
  31634.          ACCESS_MASK dwDesiredAccess);
  31635.  
  31636.  
  31637.  
  31638.  
  31639.  
  31640.  
  31641. __declspec(dllimport)
  31642. BOOL
  31643. __stdcall
  31644. EnumWindowStationsA(
  31645.          WINSTAENUMPROCA lpEnumFunc,
  31646.          LPARAM lParam);
  31647. __declspec(dllimport)
  31648. BOOL
  31649. __stdcall
  31650. EnumWindowStationsW(
  31651.          WINSTAENUMPROCW lpEnumFunc,
  31652.          LPARAM lParam);
  31653.  
  31654.  
  31655.  
  31656.  
  31657.  
  31658.  
  31659. __declspec(dllimport)
  31660. BOOL
  31661. __stdcall
  31662. CloseWindowStation(
  31663.          HWINSTA hWinSta);
  31664.  
  31665. __declspec(dllimport)
  31666. BOOL
  31667. __stdcall
  31668. SetProcessWindowStation(
  31669.          HWINSTA hWinSta);
  31670.  
  31671. __declspec(dllimport)
  31672. HWINSTA
  31673. __stdcall
  31674. GetProcessWindowStation(
  31675.     void);
  31676.  
  31677.  
  31678. #pragma endregion
  31679.  
  31680.  
  31681.  
  31682.  
  31683.  
  31684. #pragma region Desktop Family
  31685.  
  31686.  
  31687. __declspec(dllimport)
  31688. BOOL
  31689. __stdcall
  31690. SetUserObjectSecurity(
  31691.          HANDLE hObj,
  31692.          PSECURITY_INFORMATION pSIRequested,
  31693.          PSECURITY_DESCRIPTOR pSID);
  31694.  
  31695. __declspec(dllimport)
  31696. BOOL
  31697. __stdcall
  31698. GetUserObjectSecurity(
  31699.          HANDLE hObj,
  31700.          PSECURITY_INFORMATION pSIRequested,
  31701.                                     PSECURITY_DESCRIPTOR pSID,
  31702.          DWORD nLength,
  31703.           LPDWORD lpnLengthNeeded);
  31704.  
  31705.  
  31706. #pragma endregion
  31707. # 1678 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31708. #pragma region Desktop Family
  31709.  
  31710.  
  31711. typedef struct tagUSEROBJECTFLAGS {
  31712.     BOOL fInherit;
  31713.     BOOL fReserved;
  31714.     DWORD dwFlags;
  31715. } USEROBJECTFLAGS, *PUSEROBJECTFLAGS;
  31716.  
  31717. __declspec(dllimport)
  31718. BOOL
  31719. __stdcall
  31720. GetUserObjectInformationA(
  31721.          HANDLE hObj,
  31722.          int nIndex,
  31723.                                     PVOID pvInfo,
  31724.          DWORD nLength,
  31725.               LPDWORD lpnLengthNeeded);
  31726. __declspec(dllimport)
  31727. BOOL
  31728. __stdcall
  31729. GetUserObjectInformationW(
  31730.          HANDLE hObj,
  31731.          int nIndex,
  31732.                                     PVOID pvInfo,
  31733.          DWORD nLength,
  31734.               LPDWORD lpnLengthNeeded);
  31735.  
  31736.  
  31737.  
  31738.  
  31739.  
  31740.  
  31741. __declspec(dllimport)
  31742. BOOL
  31743. __stdcall
  31744. SetUserObjectInformationA(
  31745.          HANDLE hObj,
  31746.          int nIndex,
  31747.                               PVOID pvInfo,
  31748.          DWORD nLength);
  31749. __declspec(dllimport)
  31750. BOOL
  31751. __stdcall
  31752. SetUserObjectInformationW(
  31753.          HANDLE hObj,
  31754.          int nIndex,
  31755.                               PVOID pvInfo,
  31756.          DWORD nLength);
  31757.  
  31758.  
  31759.  
  31760.  
  31761.  
  31762.  
  31763.  
  31764. #pragma endregion
  31765.  
  31766.  
  31767.  
  31768. #pragma region Desktop Family
  31769.  
  31770.  
  31771.  
  31772. typedef struct tagWNDCLASSEXA {
  31773.     UINT cbSize;
  31774.  
  31775.     UINT style;
  31776.     WNDPROC lpfnWndProc;
  31777.     int cbClsExtra;
  31778.     int cbWndExtra;
  31779.     HINSTANCE hInstance;
  31780.     HICON hIcon;
  31781.     HCURSOR hCursor;
  31782.     HBRUSH hbrBackground;
  31783.     LPCSTR lpszMenuName;
  31784.     LPCSTR lpszClassName;
  31785.  
  31786.     HICON hIconSm;
  31787. } WNDCLASSEXA, *PWNDCLASSEXA, *NPWNDCLASSEXA, *LPWNDCLASSEXA;
  31788. typedef struct tagWNDCLASSEXW {
  31789.     UINT cbSize;
  31790.  
  31791.     UINT style;
  31792.     WNDPROC lpfnWndProc;
  31793.     int cbClsExtra;
  31794.     int cbWndExtra;
  31795.     HINSTANCE hInstance;
  31796.     HICON hIcon;
  31797.     HCURSOR hCursor;
  31798.     HBRUSH hbrBackground;
  31799.     LPCWSTR lpszMenuName;
  31800.     LPCWSTR lpszClassName;
  31801.  
  31802.     HICON hIconSm;
  31803. } WNDCLASSEXW, *PWNDCLASSEXW, *NPWNDCLASSEXW, *LPWNDCLASSEXW;
  31804.  
  31805.  
  31806.  
  31807.  
  31808.  
  31809.  
  31810. typedef WNDCLASSEXA WNDCLASSEX;
  31811. typedef PWNDCLASSEXA PWNDCLASSEX;
  31812. typedef NPWNDCLASSEXA NPWNDCLASSEX;
  31813. typedef LPWNDCLASSEXA LPWNDCLASSEX;
  31814.  
  31815.  
  31816.  
  31817. typedef struct tagWNDCLASSA {
  31818.     UINT style;
  31819.     WNDPROC lpfnWndProc;
  31820.     int cbClsExtra;
  31821.     int cbWndExtra;
  31822.     HINSTANCE hInstance;
  31823.     HICON hIcon;
  31824.     HCURSOR hCursor;
  31825.     HBRUSH hbrBackground;
  31826.     LPCSTR lpszMenuName;
  31827.     LPCSTR lpszClassName;
  31828. } WNDCLASSA, *PWNDCLASSA, *NPWNDCLASSA, *LPWNDCLASSA;
  31829. typedef struct tagWNDCLASSW {
  31830.     UINT style;
  31831.     WNDPROC lpfnWndProc;
  31832.     int cbClsExtra;
  31833.     int cbWndExtra;
  31834.     HINSTANCE hInstance;
  31835.     HICON hIcon;
  31836.     HCURSOR hCursor;
  31837.     HBRUSH hbrBackground;
  31838.     LPCWSTR lpszMenuName;
  31839.     LPCWSTR lpszClassName;
  31840. } WNDCLASSW, *PWNDCLASSW, *NPWNDCLASSW, *LPWNDCLASSW;
  31841.  
  31842.  
  31843.  
  31844.  
  31845.  
  31846.  
  31847. typedef WNDCLASSA WNDCLASS;
  31848. typedef PWNDCLASSA PWNDCLASS;
  31849. typedef NPWNDCLASSA NPWNDCLASS;
  31850. typedef LPWNDCLASSA LPWNDCLASS;
  31851.  
  31852.  
  31853. __declspec(dllimport)
  31854. BOOL
  31855. __stdcall
  31856. IsHungAppWindow(
  31857.          HWND hwnd);
  31858.  
  31859.  
  31860.  
  31861. __declspec(dllimport)
  31862. void
  31863. __stdcall
  31864. DisableProcessWindowsGhosting(
  31865.     void);
  31866.  
  31867.  
  31868.  
  31869. #pragma endregion
  31870.  
  31871.  
  31872.  
  31873.  
  31874. #pragma region Application Family or OneCore Family
  31875.  
  31876.  
  31877.  
  31878.  
  31879.  
  31880. typedef struct tagMSG {
  31881.     HWND hwnd;
  31882.     UINT message;
  31883.     WPARAM wParam;
  31884.     LPARAM lParam;
  31885.     DWORD time;
  31886.     POINT pt;
  31887.  
  31888.  
  31889.  
  31890. } MSG, *PMSG, *NPMSG, *LPMSG;
  31891.  
  31892.  
  31893. #pragma endregion
  31894. # 2002 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31895. #pragma region Desktop Family
  31896.  
  31897.  
  31898.  
  31899.  
  31900.  
  31901. typedef struct tagMINMAXINFO {
  31902.     POINT ptReserved;
  31903.     POINT ptMaxSize;
  31904.     POINT ptMaxPosition;
  31905.     POINT ptMinTrackSize;
  31906.     POINT ptMaxTrackSize;
  31907. } MINMAXINFO, *PMINMAXINFO, *LPMINMAXINFO;
  31908.  
  31909.  
  31910. #pragma endregion
  31911. # 2058 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31912. #pragma region Desktop Family
  31913.  
  31914.  
  31915.  
  31916.  
  31917.  
  31918. typedef struct tagCOPYDATASTRUCT {
  31919.     ULONG_PTR dwData;
  31920.     DWORD cbData;
  31921.                                PVOID lpData;
  31922. } COPYDATASTRUCT, *PCOPYDATASTRUCT;
  31923.  
  31924.  
  31925. typedef struct tagMDINEXTMENU
  31926. {
  31927.     HMENU hmenuIn;
  31928.     HMENU hmenuNext;
  31929.     HWND hwndNext;
  31930. } MDINEXTMENU, * PMDINEXTMENU, * LPMDINEXTMENU;
  31931.  
  31932.  
  31933.  
  31934. #pragma endregion
  31935. # 2323 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31936. #pragma region Desktop Family
  31937.  
  31938.  
  31939. typedef struct {
  31940.     GUID PowerSetting;
  31941.     DWORD DataLength;
  31942.     UCHAR Data[1];
  31943. } POWERBROADCAST_SETTING, *PPOWERBROADCAST_SETTING;
  31944.  
  31945.  
  31946.  
  31947. #pragma endregion
  31948. # 2608 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31949. #pragma region Desktop Family
  31950.  
  31951.  
  31952. __declspec(dllimport)
  31953. UINT
  31954. __stdcall
  31955. RegisterWindowMessageA(
  31956.          LPCSTR lpString);
  31957. __declspec(dllimport)
  31958. UINT
  31959. __stdcall
  31960. RegisterWindowMessageW(
  31961.          LPCWSTR lpString);
  31962.  
  31963.  
  31964.  
  31965.  
  31966.  
  31967.  
  31968.  
  31969. #pragma endregion
  31970. # 2650 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31971. #pragma region Desktop Family
  31972.  
  31973.  
  31974.  
  31975.  
  31976.  
  31977. typedef struct tagWINDOWPOS {
  31978.     HWND hwnd;
  31979.     HWND hwndInsertAfter;
  31980.     int x;
  31981.     int y;
  31982.     int cx;
  31983.     int cy;
  31984.     UINT flags;
  31985. } WINDOWPOS, *LPWINDOWPOS, *PWINDOWPOS;
  31986.  
  31987.  
  31988.  
  31989.  
  31990. typedef struct tagNCCALCSIZE_PARAMS {
  31991.     RECT rgrc[3];
  31992.     PWINDOWPOS lppos;
  31993. } NCCALCSIZE_PARAMS, *LPNCCALCSIZE_PARAMS;
  31994.  
  31995.  
  31996. #pragma endregion
  31997. # 2726 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  31998. #pragma region Desktop Family
  31999.  
  32000.  
  32001. typedef struct tagTRACKMOUSEEVENT {
  32002.     DWORD cbSize;
  32003.     DWORD dwFlags;
  32004.     HWND hwndTrack;
  32005.     DWORD dwHoverTime;
  32006. } TRACKMOUSEEVENT, *LPTRACKMOUSEEVENT;
  32007.  
  32008. __declspec(dllimport)
  32009. BOOL
  32010. __stdcall
  32011. TrackMouseEvent(
  32012.             LPTRACKMOUSEEVENT lpEventTrack);
  32013.  
  32014.  
  32015. #pragma endregion
  32016. # 2944 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32017. #pragma region Desktop Family
  32018.  
  32019.  
  32020. __declspec(dllimport)
  32021. BOOL
  32022. __stdcall
  32023. DrawEdge(
  32024.          HDC hdc,
  32025.             LPRECT qrc,
  32026.          UINT edge,
  32027.          UINT grfFlags);
  32028.  
  32029.  
  32030. #pragma endregion
  32031. # 3007 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32032. #pragma region Desktop Family
  32033.  
  32034.  
  32035. __declspec(dllimport)
  32036. BOOL
  32037. __stdcall
  32038. DrawFrameControl(
  32039.          HDC,
  32040.             LPRECT,
  32041.          UINT,
  32042.          UINT);
  32043.  
  32044.  
  32045.  
  32046. #pragma endregion
  32047. # 3037 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32048. #pragma region Desktop Family
  32049.  
  32050.  
  32051. __declspec(dllimport)
  32052. BOOL
  32053. __stdcall
  32054. DrawCaption(
  32055.          HWND hwnd,
  32056.          HDC hdc,
  32057.          const RECT * lprect,
  32058.          UINT flags);
  32059.  
  32060.  
  32061.  
  32062. #pragma endregion
  32063.  
  32064.  
  32065.  
  32066.  
  32067. #pragma region Desktop Family
  32068.  
  32069.  
  32070. __declspec(dllimport)
  32071. BOOL
  32072. __stdcall
  32073. DrawAnimatedRects(
  32074.              HWND hwnd,
  32075.          int idAni,
  32076.          const RECT *lprcFrom,
  32077.          const RECT *lprcTo);
  32078.  
  32079.  
  32080. #pragma endregion
  32081. # 3139 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32082. #pragma region Desktop Family
  32083.  
  32084.  
  32085. typedef struct tagACCEL {
  32086.  
  32087.     BYTE fVirt;
  32088.     WORD key;
  32089.     WORD cmd;
  32090.  
  32091.  
  32092.  
  32093.  
  32094.  
  32095. } ACCEL, *LPACCEL;
  32096.  
  32097. typedef struct tagPAINTSTRUCT {
  32098.     HDC hdc;
  32099.     BOOL fErase;
  32100.     RECT rcPaint;
  32101.     BOOL fRestore;
  32102.     BOOL fIncUpdate;
  32103.     BYTE rgbReserved[32];
  32104. } PAINTSTRUCT, *PPAINTSTRUCT, *NPPAINTSTRUCT, *LPPAINTSTRUCT;
  32105.  
  32106. typedef struct tagCREATESTRUCTA {
  32107.     LPVOID lpCreateParams;
  32108.     HINSTANCE hInstance;
  32109.     HMENU hMenu;
  32110.     HWND hwndParent;
  32111.     int cy;
  32112.     int cx;
  32113.     int y;
  32114.     int x;
  32115.     LONG style;
  32116.     LPCSTR lpszName;
  32117.     LPCSTR lpszClass;
  32118.     DWORD dwExStyle;
  32119. } CREATESTRUCTA, *LPCREATESTRUCTA;
  32120. typedef struct tagCREATESTRUCTW {
  32121.     LPVOID lpCreateParams;
  32122.     HINSTANCE hInstance;
  32123.     HMENU hMenu;
  32124.     HWND hwndParent;
  32125.     int cy;
  32126.     int cx;
  32127.     int y;
  32128.     int x;
  32129.     LONG style;
  32130.     LPCWSTR lpszName;
  32131.     LPCWSTR lpszClass;
  32132.     DWORD dwExStyle;
  32133. } CREATESTRUCTW, *LPCREATESTRUCTW;
  32134.  
  32135.  
  32136.  
  32137.  
  32138. typedef CREATESTRUCTA CREATESTRUCT;
  32139. typedef LPCREATESTRUCTA LPCREATESTRUCT;
  32140.  
  32141.  
  32142. typedef struct tagWINDOWPLACEMENT {
  32143.     UINT length;
  32144.     UINT flags;
  32145.     UINT showCmd;
  32146.     POINT ptMinPosition;
  32147.     POINT ptMaxPosition;
  32148.     RECT rcNormalPosition;
  32149.  
  32150.  
  32151.  
  32152. } WINDOWPLACEMENT;
  32153. typedef WINDOWPLACEMENT *PWINDOWPLACEMENT, *LPWINDOWPLACEMENT;
  32154.  
  32155.  
  32156.  
  32157.  
  32158.  
  32159.  
  32160.  
  32161.  
  32162. #pragma endregion
  32163.  
  32164.  
  32165.  
  32166. #pragma region Application Family or OneCore Family
  32167.  
  32168.  
  32169. typedef struct tagNMHDR
  32170. {
  32171.     HWND hwndFrom;
  32172.     UINT_PTR idFrom;
  32173.     UINT code;
  32174. } NMHDR;
  32175.  
  32176.  
  32177. #pragma endregion
  32178.  
  32179. #pragma region Desktop Family
  32180.  
  32181.  
  32182. typedef NMHDR * LPNMHDR;
  32183.  
  32184. typedef struct tagSTYLESTRUCT
  32185. {
  32186.     DWORD styleOld;
  32187.     DWORD styleNew;
  32188. } STYLESTRUCT, * LPSTYLESTRUCT;
  32189.  
  32190.  
  32191. #pragma endregion
  32192. # 3291 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32193. #pragma region Desktop Family
  32194.  
  32195.  
  32196.  
  32197.  
  32198.  
  32199. typedef struct tagMEASUREITEMSTRUCT {
  32200.     UINT CtlType;
  32201.     UINT CtlID;
  32202.     UINT itemID;
  32203.     UINT itemWidth;
  32204.     UINT itemHeight;
  32205.     ULONG_PTR itemData;
  32206. } MEASUREITEMSTRUCT, *PMEASUREITEMSTRUCT, *LPMEASUREITEMSTRUCT;
  32207.  
  32208.  
  32209.  
  32210.  
  32211. typedef struct tagDRAWITEMSTRUCT {
  32212.     UINT CtlType;
  32213.     UINT CtlID;
  32214.     UINT itemID;
  32215.     UINT itemAction;
  32216.     UINT itemState;
  32217.     HWND hwndItem;
  32218.     HDC hDC;
  32219.     RECT rcItem;
  32220.     ULONG_PTR itemData;
  32221. } DRAWITEMSTRUCT, *PDRAWITEMSTRUCT, *LPDRAWITEMSTRUCT;
  32222.  
  32223.  
  32224.  
  32225.  
  32226. typedef struct tagDELETEITEMSTRUCT {
  32227.     UINT CtlType;
  32228.     UINT CtlID;
  32229.     UINT itemID;
  32230.     HWND hwndItem;
  32231.     ULONG_PTR itemData;
  32232. } DELETEITEMSTRUCT, *PDELETEITEMSTRUCT, *LPDELETEITEMSTRUCT;
  32233.  
  32234.  
  32235.  
  32236.  
  32237. typedef struct tagCOMPAREITEMSTRUCT {
  32238.     UINT CtlType;
  32239.     UINT CtlID;
  32240.     HWND hwndItem;
  32241.     UINT itemID1;
  32242.     ULONG_PTR itemData1;
  32243.     UINT itemID2;
  32244.     ULONG_PTR itemData2;
  32245.     DWORD dwLocaleId;
  32246. } COMPAREITEMSTRUCT, *PCOMPAREITEMSTRUCT, *LPCOMPAREITEMSTRUCT;
  32247.  
  32248.  
  32249. #pragma endregion
  32250.  
  32251.  
  32252.  
  32253. #pragma region Desktop Family
  32254.  
  32255.  
  32256.  
  32257.  
  32258.  
  32259.  
  32260. __declspec(dllimport)
  32261. BOOL
  32262. __stdcall
  32263. GetMessageA(
  32264.           LPMSG lpMsg,
  32265.              HWND hWnd,
  32266.          UINT wMsgFilterMin,
  32267.          UINT wMsgFilterMax);
  32268. __declspec(dllimport)
  32269. BOOL
  32270. __stdcall
  32271. GetMessageW(
  32272.           LPMSG lpMsg,
  32273.              HWND hWnd,
  32274.          UINT wMsgFilterMin,
  32275.          UINT wMsgFilterMax);
  32276. # 3405 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32277. __declspec(dllimport)
  32278. BOOL
  32279. __stdcall
  32280. TranslateMessage(
  32281.          const MSG *lpMsg);
  32282.  
  32283. __declspec(dllimport)
  32284. LRESULT
  32285. __stdcall
  32286. DispatchMessageA(
  32287.          const MSG *lpMsg);
  32288. __declspec(dllimport)
  32289. LRESULT
  32290. __stdcall
  32291. DispatchMessageW(
  32292.          const MSG *lpMsg);
  32293. # 3445 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32294. __declspec(dllimport)
  32295. BOOL
  32296. __stdcall
  32297. SetMessageQueue(
  32298.          int cMessagesMax);
  32299.  
  32300. __declspec(dllimport)
  32301. BOOL
  32302. __stdcall
  32303. PeekMessageA(
  32304.           LPMSG lpMsg,
  32305.              HWND hWnd,
  32306.          UINT wMsgFilterMin,
  32307.          UINT wMsgFilterMax,
  32308.          UINT wRemoveMsg);
  32309. __declspec(dllimport)
  32310. BOOL
  32311. __stdcall
  32312. PeekMessageW(
  32313.           LPMSG lpMsg,
  32314.              HWND hWnd,
  32315.          UINT wMsgFilterMin,
  32316.          UINT wMsgFilterMax,
  32317.          UINT wRemoveMsg);
  32318.  
  32319.  
  32320.  
  32321.  
  32322.  
  32323.  
  32324.  
  32325. #pragma endregion
  32326. # 3494 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32327. #pragma region Desktop Family
  32328.  
  32329.  
  32330. __declspec(dllimport)
  32331. BOOL
  32332. __stdcall
  32333. RegisterHotKey(
  32334.              HWND hWnd,
  32335.          int id,
  32336.          UINT fsModifiers,
  32337.          UINT vk);
  32338.  
  32339. __declspec(dllimport)
  32340. BOOL
  32341. __stdcall
  32342. UnregisterHotKey(
  32343.              HWND hWnd,
  32344.          int id);
  32345.  
  32346.  
  32347. #pragma endregion
  32348. # 3565 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32349. #pragma region Desktop Family
  32350.  
  32351.  
  32352.  
  32353.  
  32354.  
  32355.  
  32356.  
  32357. __declspec(dllimport)
  32358. BOOL
  32359. __stdcall
  32360. ExitWindowsEx(
  32361.          UINT uFlags,
  32362.          DWORD dwReason);
  32363.  
  32364. __declspec(dllimport)
  32365. BOOL
  32366. __stdcall
  32367. SwapMouseButton(
  32368.          BOOL fSwap);
  32369.  
  32370. __declspec(dllimport)
  32371. DWORD
  32372. __stdcall
  32373. GetMessagePos(
  32374.     void);
  32375.  
  32376. __declspec(dllimport)
  32377. LONG
  32378. __stdcall
  32379. GetMessageTime(
  32380.     void);
  32381.  
  32382. __declspec(dllimport)
  32383. LPARAM
  32384. __stdcall
  32385. GetMessageExtraInfo(
  32386.     void);
  32387.  
  32388.  
  32389. __declspec(dllimport)
  32390. DWORD
  32391. __stdcall
  32392. GetUnpredictedMessagePos(
  32393.     void);
  32394.  
  32395.  
  32396.  
  32397. __declspec(dllimport)
  32398. BOOL
  32399. __stdcall
  32400. IsWow64Message(
  32401.     void);
  32402.  
  32403.  
  32404.  
  32405. __declspec(dllimport)
  32406. LPARAM
  32407. __stdcall
  32408. SetMessageExtraInfo(
  32409.          LPARAM lParam);
  32410.  
  32411.  
  32412. __declspec(dllimport)
  32413. LRESULT
  32414. __stdcall
  32415. SendMessageA(
  32416.          HWND hWnd,
  32417.          UINT Msg,
  32418.                                  WPARAM wParam,
  32419.                                  LPARAM lParam);
  32420. __declspec(dllimport)
  32421. LRESULT
  32422. __stdcall
  32423. SendMessageW(
  32424.          HWND hWnd,
  32425.          UINT Msg,
  32426.                                  WPARAM wParam,
  32427.                                  LPARAM lParam);
  32428. # 3676 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32429. __declspec(dllimport)
  32430. LRESULT
  32431. __stdcall
  32432. SendMessageTimeoutA(
  32433.          HWND hWnd,
  32434.          UINT Msg,
  32435.          WPARAM wParam,
  32436.          LPARAM lParam,
  32437.          UINT fuFlags,
  32438.          UINT uTimeout,
  32439.               PDWORD_PTR lpdwResult);
  32440. __declspec(dllimport)
  32441. LRESULT
  32442. __stdcall
  32443. SendMessageTimeoutW(
  32444.          HWND hWnd,
  32445.          UINT Msg,
  32446.          WPARAM wParam,
  32447.          LPARAM lParam,
  32448.          UINT fuFlags,
  32449.          UINT uTimeout,
  32450.               PDWORD_PTR lpdwResult);
  32451.  
  32452.  
  32453.  
  32454.  
  32455.  
  32456.  
  32457. __declspec(dllimport)
  32458. BOOL
  32459. __stdcall
  32460. SendNotifyMessageA(
  32461.          HWND hWnd,
  32462.          UINT Msg,
  32463.          WPARAM wParam,
  32464.          LPARAM lParam);
  32465. __declspec(dllimport)
  32466. BOOL
  32467. __stdcall
  32468. SendNotifyMessageW(
  32469.          HWND hWnd,
  32470.          UINT Msg,
  32471.          WPARAM wParam,
  32472.          LPARAM lParam);
  32473.  
  32474.  
  32475.  
  32476.  
  32477.  
  32478.  
  32479. __declspec(dllimport)
  32480. BOOL
  32481. __stdcall
  32482. SendMessageCallbackA(
  32483.          HWND hWnd,
  32484.          UINT Msg,
  32485.          WPARAM wParam,
  32486.          LPARAM lParam,
  32487.          SENDASYNCPROC lpResultCallBack,
  32488.          ULONG_PTR dwData);
  32489. __declspec(dllimport)
  32490. BOOL
  32491. __stdcall
  32492. SendMessageCallbackW(
  32493.          HWND hWnd,
  32494.          UINT Msg,
  32495.          WPARAM wParam,
  32496.          LPARAM lParam,
  32497.          SENDASYNCPROC lpResultCallBack,
  32498.          ULONG_PTR dwData);
  32499.  
  32500.  
  32501.  
  32502.  
  32503.  
  32504.  
  32505.  
  32506. typedef struct {
  32507.     UINT cbSize;
  32508.     HDESK hdesk;
  32509.     HWND hwnd;
  32510.     LUID luid;
  32511. } BSMINFO, *PBSMINFO;
  32512.  
  32513. __declspec(dllimport)
  32514. long
  32515. __stdcall
  32516. BroadcastSystemMessageExA(
  32517.          DWORD flags,
  32518.                 LPDWORD lpInfo,
  32519.          UINT Msg,
  32520.          WPARAM wParam,
  32521.          LPARAM lParam,
  32522.               PBSMINFO pbsmInfo);
  32523. __declspec(dllimport)
  32524. long
  32525. __stdcall
  32526. BroadcastSystemMessageExW(
  32527.          DWORD flags,
  32528.                 LPDWORD lpInfo,
  32529.          UINT Msg,
  32530.          WPARAM wParam,
  32531.          LPARAM lParam,
  32532.               PBSMINFO pbsmInfo);
  32533.  
  32534.  
  32535.  
  32536.  
  32537.  
  32538.  
  32539.  
  32540.  
  32541. #pragma endregion
  32542.  
  32543.  
  32544.  
  32545. #pragma region Desktop Family
  32546.  
  32547.  
  32548.  
  32549. __declspec(dllimport)
  32550. long
  32551. __stdcall
  32552. BroadcastSystemMessageA(
  32553.          DWORD flags,
  32554.                 LPDWORD lpInfo,
  32555.          UINT Msg,
  32556.          WPARAM wParam,
  32557.          LPARAM lParam);
  32558. __declspec(dllimport)
  32559. long
  32560. __stdcall
  32561. BroadcastSystemMessageW(
  32562.          DWORD flags,
  32563.                 LPDWORD lpInfo,
  32564.          UINT Msg,
  32565.          WPARAM wParam,
  32566.          LPARAM lParam);
  32567. # 3834 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32568. #pragma endregion
  32569. # 3866 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32570. #pragma region Desktop Family
  32571.  
  32572.  
  32573.  
  32574. typedef PVOID HDEVNOTIFY;
  32575. typedef HDEVNOTIFY *PHDEVNOTIFY;
  32576.  
  32577.  
  32578.  
  32579.  
  32580.  
  32581.  
  32582.  
  32583. __declspec(dllimport)
  32584. HDEVNOTIFY
  32585. __stdcall
  32586. RegisterDeviceNotificationA(
  32587.          HANDLE hRecipient,
  32588.          LPVOID NotificationFilter,
  32589.          DWORD Flags);
  32590. __declspec(dllimport)
  32591. HDEVNOTIFY
  32592. __stdcall
  32593. RegisterDeviceNotificationW(
  32594.          HANDLE hRecipient,
  32595.          LPVOID NotificationFilter,
  32596.          DWORD Flags);
  32597.  
  32598.  
  32599.  
  32600.  
  32601.  
  32602.  
  32603. __declspec(dllimport)
  32604. BOOL
  32605. __stdcall
  32606. UnregisterDeviceNotification(
  32607.          HDEVNOTIFY Handle
  32608.     );
  32609.  
  32610.  
  32611.  
  32612.  
  32613.  
  32614.  
  32615.  
  32616. typedef PVOID HPOWERNOTIFY;
  32617. typedef HPOWERNOTIFY *PHPOWERNOTIFY;
  32618.  
  32619.  
  32620.  
  32621. __declspec(dllimport)
  32622. HPOWERNOTIFY
  32623. __stdcall
  32624. RegisterPowerSettingNotification(
  32625.        HANDLE hRecipient,
  32626.        LPCGUID PowerSettingGuid,
  32627.        DWORD Flags
  32628.     );
  32629.  
  32630. __declspec(dllimport)
  32631. BOOL
  32632. __stdcall
  32633. UnregisterPowerSettingNotification(
  32634.        HPOWERNOTIFY Handle
  32635.     );
  32636.  
  32637. __declspec(dllimport)
  32638. HPOWERNOTIFY
  32639. __stdcall
  32640. RegisterSuspendResumeNotification (
  32641.        HANDLE hRecipient,
  32642.        DWORD Flags
  32643.     );
  32644.  
  32645. __declspec(dllimport)
  32646. BOOL
  32647. __stdcall
  32648. UnregisterSuspendResumeNotification (
  32649.        HPOWERNOTIFY Handle
  32650.     );
  32651.  
  32652.  
  32653.  
  32654.  
  32655.  
  32656.  
  32657. #pragma endregion
  32658.  
  32659. #pragma region Desktop Family
  32660.  
  32661.  
  32662. __declspec(dllimport)
  32663. BOOL
  32664. __stdcall
  32665. PostMessageA(
  32666.              HWND hWnd,
  32667.          UINT Msg,
  32668.          WPARAM wParam,
  32669.          LPARAM lParam);
  32670. __declspec(dllimport)
  32671. BOOL
  32672. __stdcall
  32673. PostMessageW(
  32674.              HWND hWnd,
  32675.          UINT Msg,
  32676.          WPARAM wParam,
  32677.          LPARAM lParam);
  32678.  
  32679.  
  32680.  
  32681.  
  32682.  
  32683.  
  32684. __declspec(dllimport)
  32685. BOOL
  32686. __stdcall
  32687. PostThreadMessageA(
  32688.          DWORD idThread,
  32689.          UINT Msg,
  32690.          WPARAM wParam,
  32691.          LPARAM lParam);
  32692. __declspec(dllimport)
  32693. BOOL
  32694. __stdcall
  32695. PostThreadMessageW(
  32696.          DWORD idThread,
  32697.          UINT Msg,
  32698.          WPARAM wParam,
  32699.          LPARAM lParam);
  32700.  
  32701.  
  32702.  
  32703.  
  32704.  
  32705.  
  32706.  
  32707. #pragma endregion
  32708. # 4024 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32709. #pragma region Desktop Family
  32710.  
  32711.  
  32712. __declspec(dllimport)
  32713. BOOL
  32714. __stdcall
  32715. AttachThreadInput(
  32716.          DWORD idAttach,
  32717.          DWORD idAttachTo,
  32718.          BOOL fAttach);
  32719.  
  32720.  
  32721. __declspec(dllimport)
  32722. BOOL
  32723. __stdcall
  32724. ReplyMessage(
  32725.          LRESULT lResult);
  32726.  
  32727. __declspec(dllimport)
  32728. BOOL
  32729. __stdcall
  32730. WaitMessage(
  32731.     void);
  32732.  
  32733.  
  32734.  
  32735.  
  32736.  
  32737. __declspec(dllimport)
  32738. DWORD
  32739. __stdcall
  32740. WaitForInputIdle(
  32741.          HANDLE hProcess,
  32742.          DWORD dwMilliseconds);
  32743.  
  32744. __declspec(dllimport)
  32745.  
  32746. LRESULT
  32747. __stdcall
  32748.  
  32749.  
  32750.  
  32751.  
  32752. DefWindowProcA(
  32753.          HWND hWnd,
  32754.          UINT Msg,
  32755.          WPARAM wParam,
  32756.          LPARAM lParam);
  32757. __declspec(dllimport)
  32758.  
  32759. LRESULT
  32760. __stdcall
  32761.  
  32762.  
  32763.  
  32764.  
  32765. DefWindowProcW(
  32766.          HWND hWnd,
  32767.          UINT Msg,
  32768.          WPARAM wParam,
  32769.          LPARAM lParam);
  32770.  
  32771.  
  32772.  
  32773.  
  32774.  
  32775.  
  32776. __declspec(dllimport)
  32777. void
  32778. __stdcall
  32779. PostQuitMessage(
  32780.          int nExitCode);
  32781.  
  32782.  
  32783.  
  32784. __declspec(dllimport)
  32785. LRESULT
  32786. __stdcall
  32787. CallWindowProcA(
  32788.          WNDPROC lpPrevWndFunc,
  32789.          HWND hWnd,
  32790.          UINT Msg,
  32791.          WPARAM wParam,
  32792.          LPARAM lParam);
  32793. __declspec(dllimport)
  32794. LRESULT
  32795. __stdcall
  32796. CallWindowProcW(
  32797.          WNDPROC lpPrevWndFunc,
  32798.          HWND hWnd,
  32799.          UINT Msg,
  32800.          WPARAM wParam,
  32801.          LPARAM lParam);
  32802. # 4151 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32803. __declspec(dllimport)
  32804. BOOL
  32805. __stdcall
  32806. InSendMessage(
  32807.     void);
  32808.  
  32809.  
  32810. #pragma endregion
  32811.  
  32812.  
  32813.  
  32814. #pragma region Desktop Family
  32815.  
  32816.  
  32817. __declspec(dllimport)
  32818. DWORD
  32819. __stdcall
  32820. InSendMessageEx(
  32821.                LPVOID lpReserved);
  32822.  
  32823.  
  32824. #pragma endregion
  32825. # 4185 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32826. #pragma region Desktop Family
  32827.  
  32828.  
  32829. __declspec(dllimport)
  32830. UINT
  32831. __stdcall
  32832. GetDoubleClickTime(
  32833.     void);
  32834.  
  32835. __declspec(dllimport)
  32836. BOOL
  32837. __stdcall
  32838. SetDoubleClickTime(
  32839.          UINT);
  32840.  
  32841. __declspec(dllimport)
  32842. ATOM
  32843. __stdcall
  32844. RegisterClassA(
  32845.          const WNDCLASSA *lpWndClass);
  32846. __declspec(dllimport)
  32847. ATOM
  32848. __stdcall
  32849. RegisterClassW(
  32850.          const WNDCLASSW *lpWndClass);
  32851.  
  32852.  
  32853.  
  32854.  
  32855.  
  32856.  
  32857. __declspec(dllimport)
  32858. BOOL
  32859. __stdcall
  32860. UnregisterClassA(
  32861.          LPCSTR lpClassName,
  32862.              HINSTANCE hInstance);
  32863. __declspec(dllimport)
  32864. BOOL
  32865. __stdcall
  32866. UnregisterClassW(
  32867.          LPCWSTR lpClassName,
  32868.              HINSTANCE hInstance);
  32869.  
  32870.  
  32871.  
  32872.  
  32873.  
  32874.  
  32875.  
  32876. __declspec(dllimport)
  32877. BOOL
  32878. __stdcall
  32879. GetClassInfoA(
  32880.              HINSTANCE hInstance,
  32881.          LPCSTR lpClassName,
  32882.           LPWNDCLASSA lpWndClass);
  32883.  
  32884. __declspec(dllimport)
  32885. BOOL
  32886. __stdcall
  32887. GetClassInfoW(
  32888.              HINSTANCE hInstance,
  32889.          LPCWSTR lpClassName,
  32890.           LPWNDCLASSW lpWndClass);
  32891.  
  32892.  
  32893.  
  32894.  
  32895.  
  32896.  
  32897.  
  32898. __declspec(dllimport)
  32899. ATOM
  32900. __stdcall
  32901. RegisterClassExA(
  32902.          const WNDCLASSEXA *);
  32903. __declspec(dllimport)
  32904. ATOM
  32905. __stdcall
  32906. RegisterClassExW(
  32907.          const WNDCLASSEXW *);
  32908.  
  32909.  
  32910.  
  32911.  
  32912.  
  32913.  
  32914.  
  32915. __declspec(dllimport)
  32916. BOOL
  32917. __stdcall
  32918. GetClassInfoExA(
  32919.              HINSTANCE hInstance,
  32920.          LPCSTR lpszClass,
  32921.           LPWNDCLASSEXA lpwcx);
  32922.  
  32923. __declspec(dllimport)
  32924. BOOL
  32925. __stdcall
  32926. GetClassInfoExW(
  32927.              HINSTANCE hInstance,
  32928.          LPCWSTR lpszClass,
  32929.           LPWNDCLASSEXW lpwcx);
  32930. # 4298 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32931. #pragma endregion
  32932.  
  32933.  
  32934.  
  32935.  
  32936.  
  32937.  
  32938.  
  32939.  
  32940. #pragma region Desktop Family
  32941.  
  32942.  
  32943.  
  32944. typedef BOOLEAN (__stdcall * PREGISTERCLASSNAMEW)(LPCWSTR);
  32945.  
  32946.  
  32947. __declspec(dllimport)
  32948. HWND
  32949. __stdcall
  32950. CreateWindowExA(
  32951.          DWORD dwExStyle,
  32952.              LPCSTR lpClassName,
  32953.              LPCSTR lpWindowName,
  32954.          DWORD dwStyle,
  32955.          int X,
  32956.          int Y,
  32957.          int nWidth,
  32958.          int nHeight,
  32959.              HWND hWndParent,
  32960.              HMENU hMenu,
  32961.              HINSTANCE hInstance,
  32962.              LPVOID lpParam);
  32963. __declspec(dllimport)
  32964. HWND
  32965. __stdcall
  32966. CreateWindowExW(
  32967.          DWORD dwExStyle,
  32968.              LPCWSTR lpClassName,
  32969.              LPCWSTR lpWindowName,
  32970.          DWORD dwStyle,
  32971.          int X,
  32972.          int Y,
  32973.          int nWidth,
  32974.          int nHeight,
  32975.              HWND hWndParent,
  32976.              HMENU hMenu,
  32977.              HINSTANCE hInstance,
  32978.              LPVOID lpParam);
  32979.  
  32980.  
  32981.  
  32982.  
  32983.  
  32984.  
  32985.  
  32986. #pragma endregion
  32987. # 4369 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  32988. #pragma region Desktop Family
  32989.  
  32990.  
  32991.  
  32992. __declspec(dllimport)
  32993. BOOL
  32994. __stdcall
  32995. IsWindow(
  32996.              HWND hWnd);
  32997.  
  32998.  
  32999. __declspec(dllimport)
  33000. BOOL
  33001. __stdcall
  33002. IsMenu(
  33003.          HMENU hMenu);
  33004.  
  33005. __declspec(dllimport)
  33006. BOOL
  33007. __stdcall
  33008. IsChild(
  33009.          HWND hWndParent,
  33010.          HWND hWnd);
  33011.  
  33012. __declspec(dllimport)
  33013. BOOL
  33014. __stdcall
  33015. DestroyWindow(
  33016.          HWND hWnd);
  33017.  
  33018. __declspec(dllimport)
  33019. BOOL
  33020. __stdcall
  33021. ShowWindow(
  33022.          HWND hWnd,
  33023.          int nCmdShow);
  33024.  
  33025.  
  33026. __declspec(dllimport)
  33027. BOOL
  33028. __stdcall
  33029. AnimateWindow(
  33030.          HWND hWnd,
  33031.          DWORD dwTime,
  33032.          DWORD dwFlags);
  33033.  
  33034.  
  33035.  
  33036. #pragma endregion
  33037.  
  33038.  
  33039.  
  33040.  
  33041. #pragma region Desktop Family
  33042.  
  33043.  
  33044. __declspec(dllimport)
  33045. BOOL
  33046. __stdcall
  33047. UpdateLayeredWindow(
  33048.          HWND hWnd,
  33049.              HDC hdcDst,
  33050.              POINT* pptDst,
  33051.              SIZE* psize,
  33052.              HDC hdcSrc,
  33053.              POINT* pptSrc,
  33054.          COLORREF crKey,
  33055.              BLENDFUNCTION* pblend,
  33056.          DWORD dwFlags);
  33057.  
  33058.  
  33059.  
  33060.  
  33061. typedef struct tagUPDATELAYEREDWINDOWINFO
  33062. {
  33063.     DWORD cbSize;
  33064.     HDC hdcDst;
  33065.     const POINT* pptDst;
  33066.     const SIZE* psize;
  33067.     HDC hdcSrc;
  33068.     const POINT* pptSrc;
  33069.     COLORREF crKey;
  33070.     const BLENDFUNCTION* pblend;
  33071.     DWORD dwFlags;
  33072.     const RECT* prcDirty;
  33073. } UPDATELAYEREDWINDOWINFO, *PUPDATELAYEREDWINDOWINFO;
  33074.  
  33075.  
  33076.  
  33077.  
  33078.  
  33079. __declspec(dllimport)
  33080. BOOL
  33081. __stdcall
  33082. UpdateLayeredWindowIndirect(
  33083.          HWND hWnd,
  33084.          const UPDATELAYEREDWINDOWINFO* pULWInfo);
  33085.  
  33086.  
  33087. #pragma endregion
  33088.  
  33089.  
  33090.  
  33091.  
  33092.  
  33093. #pragma region Desktop Family
  33094.  
  33095.  
  33096. __declspec(dllimport)
  33097. BOOL
  33098. __stdcall
  33099. GetLayeredWindowAttributes(
  33100.          HWND hwnd,
  33101.               COLORREF* pcrKey,
  33102.               BYTE* pbAlpha,
  33103.               DWORD* pdwFlags);
  33104. # 4493 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  33105. __declspec(dllimport)
  33106. BOOL
  33107. __stdcall
  33108. PrintWindow(
  33109.          HWND hwnd,
  33110.          HDC hdcBlt,
  33111.          UINT nFlags);
  33112.  
  33113.  
  33114. #pragma endregion
  33115.  
  33116.  
  33117.  
  33118. #pragma region Desktop Family
  33119.  
  33120.  
  33121. __declspec(dllimport)
  33122. BOOL
  33123. __stdcall
  33124. SetLayeredWindowAttributes(
  33125.          HWND hwnd,
  33126.          COLORREF crKey,
  33127.          BYTE bAlpha,
  33128.          DWORD dwFlags);
  33129.  
  33130.  
  33131. #pragma endregion
  33132. # 4534 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  33133. #pragma region Desktop Family
  33134.  
  33135.  
  33136.  
  33137.  
  33138. __declspec(dllimport)
  33139. BOOL
  33140. __stdcall
  33141. ShowWindowAsync(
  33142.           HWND hWnd,
  33143.           int nCmdShow);
  33144.  
  33145.  
  33146. __declspec(dllimport)
  33147. BOOL
  33148. __stdcall
  33149. FlashWindow(
  33150.           HWND hWnd,
  33151.           BOOL bInvert);
  33152.  
  33153.  
  33154. typedef struct {
  33155.     UINT cbSize;
  33156.     HWND hwnd;
  33157.     DWORD dwFlags;
  33158.     UINT uCount;
  33159.     DWORD dwTimeout;
  33160. } FLASHWINFO, *PFLASHWINFO;
  33161.  
  33162. __declspec(dllimport)
  33163. BOOL
  33164. __stdcall
  33165. FlashWindowEx(
  33166.          PFLASHWINFO pfwi);
  33167. # 4578 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  33168. __declspec(dllimport)
  33169. BOOL
  33170. __stdcall
  33171. ShowOwnedPopups(
  33172.           HWND hWnd,
  33173.           BOOL fShow);
  33174.  
  33175. __declspec(dllimport)
  33176. BOOL
  33177. __stdcall
  33178. OpenIcon(
  33179.           HWND hWnd);
  33180.  
  33181. __declspec(dllimport)
  33182. BOOL
  33183. __stdcall
  33184. CloseWindow(
  33185.           HWND hWnd);
  33186.  
  33187. __declspec(dllimport)
  33188. BOOL
  33189. __stdcall
  33190. MoveWindow(
  33191.          HWND hWnd,
  33192.          int X,
  33193.          int Y,
  33194.          int nWidth,
  33195.          int nHeight,
  33196.          BOOL bRepaint);
  33197.  
  33198. __declspec(dllimport)
  33199. BOOL
  33200. __stdcall
  33201. SetWindowPos(
  33202.          HWND hWnd,
  33203.              HWND hWndInsertAfter,
  33204.          int X,
  33205.          int Y,
  33206.          int cx,
  33207.          int cy,
  33208.          UINT uFlags);
  33209.  
  33210. __declspec(dllimport)
  33211. BOOL
  33212. __stdcall
  33213. GetWindowPlacement(
  33214.          HWND hWnd,
  33215.             WINDOWPLACEMENT *lpwndpl);
  33216.  
  33217. __declspec(dllimport)
  33218. BOOL
  33219. __stdcall
  33220. SetWindowPlacement(
  33221.          HWND hWnd,
  33222.          const WINDOWPLACEMENT *lpwndpl);
  33223.  
  33224.  
  33225.  
  33226.  
  33227.  
  33228.  
  33229. __declspec(dllimport)
  33230. BOOL
  33231. __stdcall
  33232. GetWindowDisplayAffinity(
  33233.          HWND hWnd,
  33234.           DWORD* pdwAffinity);
  33235.  
  33236. __declspec(dllimport)
  33237. BOOL
  33238. __stdcall
  33239. SetWindowDisplayAffinity(
  33240.          HWND hWnd,
  33241.          DWORD dwAffinity);
  33242.  
  33243.  
  33244.  
  33245.  
  33246. #pragma endregion
  33247.  
  33248.  
  33249.  
  33250. #pragma region Desktop Family
  33251.  
  33252.  
  33253. __declspec(dllimport)
  33254. HDWP
  33255. __stdcall
  33256. BeginDeferWindowPos(
  33257.          int nNumWindows);
  33258.  
  33259. __declspec(dllimport)
  33260. HDWP
  33261. __stdcall
  33262. DeferWindowPos(
  33263.          HDWP hWinPosInfo,
  33264.          HWND hWnd,
  33265.              HWND hWndInsertAfter,
  33266.          int x,
  33267.          int y,
  33268.          int cx,
  33269.          int cy,
  33270.          UINT uFlags);
  33271.  
  33272.  
  33273. __declspec(dllimport)
  33274. BOOL
  33275. __stdcall
  33276. EndDeferWindowPos(
  33277.          HDWP hWinPosInfo);
  33278.  
  33279.  
  33280. #pragma endregion
  33281.  
  33282.  
  33283.  
  33284. #pragma region Desktop Family
  33285.  
  33286.  
  33287. __declspec(dllimport)
  33288. BOOL
  33289. __stdcall
  33290. IsWindowVisible(
  33291.          HWND hWnd);
  33292.  
  33293. __declspec(dllimport)
  33294. BOOL
  33295. __stdcall
  33296. IsIconic(
  33297.          HWND hWnd);
  33298.  
  33299. __declspec(dllimport)
  33300. BOOL
  33301. __stdcall
  33302. AnyPopup(
  33303.     void);
  33304.  
  33305. __declspec(dllimport)
  33306. BOOL
  33307. __stdcall
  33308. BringWindowToTop(
  33309.          HWND hWnd);
  33310.  
  33311. __declspec(dllimport)
  33312. BOOL
  33313. __stdcall
  33314. IsZoomed(
  33315.          HWND hWnd);
  33316.  
  33317.  
  33318. #pragma endregion
  33319. # 4766 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  33320. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack2.h" 1 3
  33321. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack2.h" 3
  33322. #pragma warning(disable: 4103)
  33323.  
  33324. #pragma pack(push,2)
  33325. # 4766 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 2 3
  33326.  
  33327.  
  33328. #pragma region Application Family or OneCore Family
  33329.  
  33330.  
  33331.  
  33332.  
  33333.  
  33334. typedef struct {
  33335.     DWORD style;
  33336.     DWORD dwExtendedStyle;
  33337.     WORD cdit;
  33338.     short x;
  33339.     short y;
  33340.     short cx;
  33341.     short cy;
  33342. } DLGTEMPLATE;
  33343.  
  33344.  
  33345. #pragma endregion
  33346.  
  33347. #pragma region Desktop Family
  33348.  
  33349.  
  33350. typedef DLGTEMPLATE *LPDLGTEMPLATEA;
  33351. typedef DLGTEMPLATE *LPDLGTEMPLATEW;
  33352.  
  33353.  
  33354.  
  33355. typedef LPDLGTEMPLATEA LPDLGTEMPLATE;
  33356.  
  33357.  
  33358.  
  33359. #pragma endregion
  33360.  
  33361. #pragma region Application Family or OneCore Family
  33362.  
  33363.  
  33364. typedef const DLGTEMPLATE *LPCDLGTEMPLATEA;
  33365. typedef const DLGTEMPLATE *LPCDLGTEMPLATEW;
  33366.  
  33367.  
  33368.  
  33369. typedef LPCDLGTEMPLATEA LPCDLGTEMPLATE;
  33370.  
  33371.  
  33372.  
  33373. #pragma endregion
  33374.  
  33375.  
  33376. #pragma region Desktop Family
  33377.  
  33378.  
  33379.  
  33380.  
  33381.  
  33382. typedef struct {
  33383.     DWORD style;
  33384.     DWORD dwExtendedStyle;
  33385.     short x;
  33386.     short y;
  33387.     short cx;
  33388.     short cy;
  33389.     WORD id;
  33390. } DLGITEMTEMPLATE;
  33391. typedef DLGITEMTEMPLATE *PDLGITEMTEMPLATEA;
  33392. typedef DLGITEMTEMPLATE *PDLGITEMTEMPLATEW;
  33393.  
  33394.  
  33395.  
  33396. typedef PDLGITEMTEMPLATEA PDLGITEMTEMPLATE;
  33397.  
  33398. typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEA;
  33399. typedef DLGITEMTEMPLATE *LPDLGITEMTEMPLATEW;
  33400.  
  33401.  
  33402.  
  33403. typedef LPDLGITEMTEMPLATEA LPDLGITEMTEMPLATE;
  33404.  
  33405.  
  33406.  
  33407. #pragma endregion
  33408.  
  33409.  
  33410.  
  33411. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  33412. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  33413. #pragma warning(disable: 4103)
  33414.  
  33415. #pragma pack(pop)
  33416. # 4850 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 2 3
  33417.  
  33418.  
  33419. #pragma region Desktop Family
  33420.  
  33421.  
  33422. __declspec(dllimport)
  33423. HWND
  33424. __stdcall
  33425. CreateDialogParamA(
  33426.              HINSTANCE hInstance,
  33427.          LPCSTR lpTemplateName,
  33428.              HWND hWndParent,
  33429.              DLGPROC lpDialogFunc,
  33430.          LPARAM dwInitParam);
  33431. __declspec(dllimport)
  33432. HWND
  33433. __stdcall
  33434. CreateDialogParamW(
  33435.              HINSTANCE hInstance,
  33436.          LPCWSTR lpTemplateName,
  33437.              HWND hWndParent,
  33438.              DLGPROC lpDialogFunc,
  33439.          LPARAM dwInitParam);
  33440.  
  33441.  
  33442.  
  33443.  
  33444.  
  33445.  
  33446. __declspec(dllimport)
  33447. HWND
  33448. __stdcall
  33449. CreateDialogIndirectParamA(
  33450.              HINSTANCE hInstance,
  33451.          LPCDLGTEMPLATEA lpTemplate,
  33452.              HWND hWndParent,
  33453.              DLGPROC lpDialogFunc,
  33454.          LPARAM dwInitParam);
  33455. __declspec(dllimport)
  33456. HWND
  33457. __stdcall
  33458. CreateDialogIndirectParamW(
  33459.              HINSTANCE hInstance,
  33460.          LPCDLGTEMPLATEW lpTemplate,
  33461.              HWND hWndParent,
  33462.              DLGPROC lpDialogFunc,
  33463.          LPARAM dwInitParam);
  33464. # 4923 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  33465. __declspec(dllimport)
  33466. INT_PTR
  33467. __stdcall
  33468. DialogBoxParamA(
  33469.              HINSTANCE hInstance,
  33470.          LPCSTR lpTemplateName,
  33471.              HWND hWndParent,
  33472.              DLGPROC lpDialogFunc,
  33473.          LPARAM dwInitParam);
  33474. __declspec(dllimport)
  33475. INT_PTR
  33476. __stdcall
  33477. DialogBoxParamW(
  33478.              HINSTANCE hInstance,
  33479.          LPCWSTR lpTemplateName,
  33480.              HWND hWndParent,
  33481.              DLGPROC lpDialogFunc,
  33482.          LPARAM dwInitParam);
  33483.  
  33484.  
  33485.  
  33486.  
  33487.  
  33488.  
  33489. __declspec(dllimport)
  33490. INT_PTR
  33491. __stdcall
  33492. DialogBoxIndirectParamA(
  33493.              HINSTANCE hInstance,
  33494.          LPCDLGTEMPLATEA hDialogTemplate,
  33495.              HWND hWndParent,
  33496.              DLGPROC lpDialogFunc,
  33497.          LPARAM dwInitParam);
  33498. __declspec(dllimport)
  33499. INT_PTR
  33500. __stdcall
  33501. DialogBoxIndirectParamW(
  33502.              HINSTANCE hInstance,
  33503.          LPCDLGTEMPLATEW hDialogTemplate,
  33504.              HWND hWndParent,
  33505.              DLGPROC lpDialogFunc,
  33506.          LPARAM dwInitParam);
  33507. # 4991 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  33508. __declspec(dllimport)
  33509. BOOL
  33510. __stdcall
  33511. EndDialog(
  33512.          HWND hDlg,
  33513.          INT_PTR nResult);
  33514.  
  33515. __declspec(dllimport)
  33516. HWND
  33517. __stdcall
  33518. GetDlgItem(
  33519.              HWND hDlg,
  33520.          int nIDDlgItem);
  33521.  
  33522. __declspec(dllimport)
  33523. BOOL
  33524. __stdcall
  33525. SetDlgItemInt(
  33526.          HWND hDlg,
  33527.          int nIDDlgItem,
  33528.          UINT uValue,
  33529.          BOOL bSigned);
  33530.  
  33531. __declspec(dllimport)
  33532. UINT
  33533. __stdcall
  33534. GetDlgItemInt(
  33535.          HWND hDlg,
  33536.          int nIDDlgItem,
  33537.               BOOL *lpTranslated,
  33538.          BOOL bSigned);
  33539.  
  33540. __declspec(dllimport)
  33541. BOOL
  33542. __stdcall
  33543. SetDlgItemTextA(
  33544.          HWND hDlg,
  33545.          int nIDDlgItem,
  33546.          LPCSTR lpString);
  33547. __declspec(dllimport)
  33548. BOOL
  33549. __stdcall
  33550. SetDlgItemTextW(
  33551.          HWND hDlg,
  33552.          int nIDDlgItem,
  33553.          LPCWSTR lpString);
  33554.  
  33555.  
  33556.  
  33557.  
  33558.  
  33559.  
  33560.  
  33561. __declspec(dllimport)
  33562. UINT
  33563. __stdcall
  33564. GetDlgItemTextA(
  33565.          HWND hDlg,
  33566.          int nIDDlgItem,
  33567.                          LPSTR lpString,
  33568.          int cchMax);
  33569.  
  33570. __declspec(dllimport)
  33571. UINT
  33572. __stdcall
  33573. GetDlgItemTextW(
  33574.          HWND hDlg,
  33575.          int nIDDlgItem,
  33576.                          LPWSTR lpString,
  33577.          int cchMax);
  33578.  
  33579.  
  33580.  
  33581.  
  33582.  
  33583.  
  33584. __declspec(dllimport)
  33585. BOOL
  33586. __stdcall
  33587. CheckDlgButton(
  33588.          HWND hDlg,
  33589.          int nIDButton,
  33590.          UINT uCheck);
  33591.  
  33592. __declspec(dllimport)
  33593. BOOL
  33594. __stdcall
  33595. CheckRadioButton(
  33596.          HWND hDlg,
  33597.          int nIDFirstButton,
  33598.          int nIDLastButton,
  33599.          int nIDCheckButton);
  33600.  
  33601. __declspec(dllimport)
  33602. UINT
  33603. __stdcall
  33604. IsDlgButtonChecked(
  33605.          HWND hDlg,
  33606.          int nIDButton);
  33607.  
  33608. __declspec(dllimport)
  33609. LRESULT
  33610. __stdcall
  33611. SendDlgItemMessageA(
  33612.          HWND hDlg,
  33613.          int nIDDlgItem,
  33614.          UINT Msg,
  33615.          WPARAM wParam,
  33616.          LPARAM lParam);
  33617. __declspec(dllimport)
  33618. LRESULT
  33619. __stdcall
  33620. SendDlgItemMessageW(
  33621.          HWND hDlg,
  33622.          int nIDDlgItem,
  33623.          UINT Msg,
  33624.          WPARAM wParam,
  33625.          LPARAM lParam);
  33626.  
  33627.  
  33628.  
  33629.  
  33630.  
  33631.  
  33632. __declspec(dllimport)
  33633. HWND
  33634. __stdcall
  33635. GetNextDlgGroupItem(
  33636.          HWND hDlg,
  33637.              HWND hCtl,
  33638.          BOOL bPrevious);
  33639.  
  33640. __declspec(dllimport)
  33641. HWND
  33642. __stdcall
  33643. GetNextDlgTabItem(
  33644.          HWND hDlg,
  33645.              HWND hCtl,
  33646.          BOOL bPrevious);
  33647.  
  33648. __declspec(dllimport)
  33649. int
  33650. __stdcall
  33651. GetDlgCtrlID(
  33652.          HWND hWnd);
  33653.  
  33654. __declspec(dllimport)
  33655. long
  33656. __stdcall
  33657. GetDialogBaseUnits(void);
  33658.  
  33659.  
  33660. __declspec(dllimport)
  33661.  
  33662. LRESULT
  33663. __stdcall
  33664.  
  33665.  
  33666.  
  33667.  
  33668. DefDlgProcA(
  33669.          HWND hDlg,
  33670.          UINT Msg,
  33671.          WPARAM wParam,
  33672.          LPARAM lParam);
  33673. __declspec(dllimport)
  33674.  
  33675. LRESULT
  33676. __stdcall
  33677.  
  33678.  
  33679.  
  33680.  
  33681. DefDlgProcW(
  33682.          HWND hDlg,
  33683.          UINT Msg,
  33684.          WPARAM wParam,
  33685.          LPARAM lParam);
  33686.  
  33687.  
  33688.  
  33689.  
  33690.  
  33691.  
  33692.  
  33693. typedef enum DIALOG_CONTROL_DPI_CHANGE_BEHAVIORS {
  33694.      DCDC_DEFAULT = 0x0000,
  33695.      DCDC_DISABLE_FONT_UPDATE = 0x0001,
  33696.      DCDC_DISABLE_RELAYOUT = 0x0002,
  33697. } DIALOG_CONTROL_DPI_CHANGE_BEHAVIORS;
  33698.  
  33699.  
  33700.                                                                ;
  33701.  
  33702.  
  33703. BOOL
  33704. __stdcall
  33705. SetDialogControlDpiChangeBehavior(
  33706.          HWND hWnd,
  33707.          DIALOG_CONTROL_DPI_CHANGE_BEHAVIORS mask,
  33708.          DIALOG_CONTROL_DPI_CHANGE_BEHAVIORS values);
  33709.  
  33710. DIALOG_CONTROL_DPI_CHANGE_BEHAVIORS
  33711. __stdcall
  33712. GetDialogControlDpiChangeBehavior(
  33713.          HWND hWnd);
  33714.  
  33715. typedef enum DIALOG_DPI_CHANGE_BEHAVIORS {
  33716.     DDC_DEFAULT = 0x0000,
  33717.     DDC_DISABLE_ALL = 0x0001,
  33718.     DDC_DISABLE_RESIZE = 0x0002,
  33719.     DDC_DISABLE_CONTROL_RELAYOUT = 0x0004,
  33720. } DIALOG_DPI_CHANGE_BEHAVIORS;
  33721.  
  33722.  
  33723.                                                        ;
  33724.  
  33725.  
  33726. BOOL
  33727. __stdcall
  33728. SetDialogDpiChangeBehavior(
  33729.          HWND hDlg,
  33730.          DIALOG_DPI_CHANGE_BEHAVIORS mask,
  33731.          DIALOG_DPI_CHANGE_BEHAVIORS values);
  33732.  
  33733. DIALOG_DPI_CHANGE_BEHAVIORS
  33734. __stdcall
  33735. GetDialogDpiChangeBehavior(
  33736.          HWND hDlg);
  33737.  
  33738.  
  33739. #pragma endregion
  33740. # 5235 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  33741. #pragma region Desktop Family
  33742.  
  33743.  
  33744.  
  33745.  
  33746. __declspec(dllimport)
  33747. BOOL
  33748. __stdcall
  33749. CallMsgFilterA(
  33750.          LPMSG lpMsg,
  33751.          int nCode);
  33752. __declspec(dllimport)
  33753. BOOL
  33754. __stdcall
  33755. CallMsgFilterW(
  33756.          LPMSG lpMsg,
  33757.          int nCode);
  33758. # 5266 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  33759. __declspec(dllimport)
  33760. BOOL
  33761. __stdcall
  33762. OpenClipboard(
  33763.              HWND hWndNewOwner);
  33764.  
  33765. __declspec(dllimport)
  33766. BOOL
  33767. __stdcall
  33768. CloseClipboard(
  33769.     void);
  33770.  
  33771.  
  33772.  
  33773.  
  33774. __declspec(dllimport)
  33775. DWORD
  33776. __stdcall
  33777. GetClipboardSequenceNumber(
  33778.     void);
  33779.  
  33780.  
  33781.  
  33782. __declspec(dllimport)
  33783. HWND
  33784. __stdcall
  33785. GetClipboardOwner(
  33786.     void);
  33787.  
  33788. __declspec(dllimport)
  33789. HWND
  33790. __stdcall
  33791. SetClipboardViewer(
  33792.          HWND hWndNewViewer);
  33793.  
  33794. __declspec(dllimport)
  33795. HWND
  33796. __stdcall
  33797. GetClipboardViewer(
  33798.     void);
  33799.  
  33800. __declspec(dllimport)
  33801. BOOL
  33802. __stdcall
  33803. ChangeClipboardChain(
  33804.          HWND hWndRemove,
  33805.          HWND hWndNewNext);
  33806.  
  33807. __declspec(dllimport)
  33808. HANDLE
  33809. __stdcall
  33810. SetClipboardData(
  33811.          UINT uFormat,
  33812.              HANDLE hMem);
  33813.  
  33814. __declspec(dllimport)
  33815. HANDLE
  33816. __stdcall
  33817. GetClipboardData(
  33818.          UINT uFormat);
  33819.  
  33820. __declspec(dllimport)
  33821. UINT
  33822. __stdcall
  33823. RegisterClipboardFormatA(
  33824.          LPCSTR lpszFormat);
  33825. __declspec(dllimport)
  33826. UINT
  33827. __stdcall
  33828. RegisterClipboardFormatW(
  33829.          LPCWSTR lpszFormat);
  33830.  
  33831.  
  33832.  
  33833.  
  33834.  
  33835.  
  33836. __declspec(dllimport)
  33837. int
  33838. __stdcall
  33839. CountClipboardFormats(
  33840.     void);
  33841.  
  33842. __declspec(dllimport)
  33843. UINT
  33844. __stdcall
  33845. EnumClipboardFormats(
  33846.          UINT format);
  33847.  
  33848. __declspec(dllimport)
  33849. int
  33850. __stdcall
  33851. GetClipboardFormatNameA(
  33852.          UINT format,
  33853.                               LPSTR lpszFormatName,
  33854.          int cchMaxCount);
  33855. __declspec(dllimport)
  33856. int
  33857. __stdcall
  33858. GetClipboardFormatNameW(
  33859.          UINT format,
  33860.                               LPWSTR lpszFormatName,
  33861.          int cchMaxCount);
  33862.  
  33863.  
  33864.  
  33865.  
  33866.  
  33867.  
  33868. __declspec(dllimport)
  33869. BOOL
  33870. __stdcall
  33871. EmptyClipboard(
  33872.     void);
  33873.  
  33874. __declspec(dllimport)
  33875. BOOL
  33876. __stdcall
  33877. IsClipboardFormatAvailable(
  33878.          UINT format);
  33879.  
  33880. __declspec(dllimport)
  33881. int
  33882. __stdcall
  33883. GetPriorityClipboardFormat(
  33884.                          UINT *paFormatPriorityList,
  33885.          int cFormats);
  33886.  
  33887. __declspec(dllimport)
  33888. HWND
  33889. __stdcall
  33890. GetOpenClipboardWindow(
  33891.     void);
  33892.  
  33893.  
  33894. __declspec(dllimport)
  33895. BOOL
  33896. __stdcall
  33897. AddClipboardFormatListener(
  33898.          HWND hwnd);
  33899.  
  33900. __declspec(dllimport)
  33901. BOOL
  33902. __stdcall
  33903. RemoveClipboardFormatListener(
  33904.          HWND hwnd);
  33905.  
  33906. __declspec(dllimport)
  33907. BOOL
  33908. __stdcall
  33909. GetUpdatedClipboardFormats(
  33910.                            PUINT lpuiFormats,
  33911.          UINT cFormats,
  33912.           PUINT pcFormatsOut);
  33913. # 5428 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  33914. __declspec(dllimport)
  33915. BOOL
  33916. __stdcall
  33917. CharToOemA(
  33918.          LPCSTR pSrc,
  33919.                                                     LPSTR pDst);
  33920. __declspec(dllimport)
  33921. BOOL
  33922. __stdcall
  33923. CharToOemW(
  33924.          LPCWSTR pSrc,
  33925.                                                     LPSTR pDst);
  33926.  
  33927.  
  33928.  
  33929.  
  33930.  
  33931.  
  33932.  
  33933. __declspec(dllimport)
  33934. BOOL
  33935. __stdcall
  33936. OemToCharA(
  33937.          LPCSTR pSrc,
  33938.                                                     LPSTR pDst);
  33939.  
  33940. __declspec(dllimport)
  33941. BOOL
  33942. __stdcall
  33943. OemToCharW(
  33944.          LPCSTR pSrc,
  33945.                                                     LPWSTR pDst);
  33946.  
  33947.  
  33948.  
  33949.  
  33950.  
  33951.  
  33952. __declspec(dllimport)
  33953. BOOL
  33954. __stdcall
  33955. CharToOemBuffA(
  33956.          LPCSTR lpszSrc,
  33957.                                LPSTR lpszDst,
  33958.          DWORD cchDstLength);
  33959. __declspec(dllimport)
  33960. BOOL
  33961. __stdcall
  33962. CharToOemBuffW(
  33963.          LPCWSTR lpszSrc,
  33964.                                LPSTR lpszDst,
  33965.          DWORD cchDstLength);
  33966.  
  33967.  
  33968.  
  33969.  
  33970.  
  33971.  
  33972. __declspec(dllimport)
  33973. BOOL
  33974. __stdcall
  33975. OemToCharBuffA(
  33976.          LPCSTR lpszSrc,
  33977.                                LPSTR lpszDst,
  33978.          DWORD cchDstLength);
  33979. __declspec(dllimport)
  33980. BOOL
  33981. __stdcall
  33982. OemToCharBuffW(
  33983.          LPCSTR lpszSrc,
  33984.                                LPWSTR lpszDst,
  33985.          DWORD cchDstLength);
  33986.  
  33987.  
  33988.  
  33989.  
  33990.  
  33991.  
  33992.  
  33993. #pragma endregion
  33994.  
  33995. #pragma region Desktop Family or OneCore Family
  33996.  
  33997.  
  33998. __declspec(dllimport)
  33999. LPSTR
  34000. __stdcall
  34001. CharUpperA(
  34002.             LPSTR lpsz);
  34003. __declspec(dllimport)
  34004. LPWSTR
  34005. __stdcall
  34006. CharUpperW(
  34007.             LPWSTR lpsz);
  34008.  
  34009.  
  34010.  
  34011.  
  34012.  
  34013.  
  34014. __declspec(dllimport)
  34015. DWORD
  34016. __stdcall
  34017. CharUpperBuffA(
  34018.                                LPSTR lpsz,
  34019.          DWORD cchLength);
  34020. __declspec(dllimport)
  34021. DWORD
  34022. __stdcall
  34023. CharUpperBuffW(
  34024.                                LPWSTR lpsz,
  34025.          DWORD cchLength);
  34026.  
  34027.  
  34028.  
  34029.  
  34030.  
  34031.  
  34032. __declspec(dllimport)
  34033. LPSTR
  34034. __stdcall
  34035. CharLowerA(
  34036.             LPSTR lpsz);
  34037. __declspec(dllimport)
  34038. LPWSTR
  34039. __stdcall
  34040. CharLowerW(
  34041.             LPWSTR lpsz);
  34042.  
  34043.  
  34044.  
  34045.  
  34046.  
  34047.  
  34048. __declspec(dllimport)
  34049. DWORD
  34050. __stdcall
  34051. CharLowerBuffA(
  34052.                                LPSTR lpsz,
  34053.          DWORD cchLength);
  34054. __declspec(dllimport)
  34055. DWORD
  34056. __stdcall
  34057. CharLowerBuffW(
  34058.                                LPWSTR lpsz,
  34059.          DWORD cchLength);
  34060.  
  34061.  
  34062.  
  34063.  
  34064.  
  34065.  
  34066. __declspec(dllimport)
  34067. LPSTR
  34068. __stdcall
  34069. CharNextA(
  34070.          LPCSTR lpsz);
  34071. __declspec(dllimport)
  34072. LPWSTR
  34073. __stdcall
  34074. CharNextW(
  34075.          LPCWSTR lpsz);
  34076.  
  34077.  
  34078.  
  34079.  
  34080.  
  34081.  
  34082. __declspec(dllimport)
  34083. LPSTR
  34084. __stdcall
  34085. CharPrevA(
  34086.          LPCSTR lpszStart,
  34087.          LPCSTR lpszCurrent);
  34088. __declspec(dllimport)
  34089. LPWSTR
  34090. __stdcall
  34091. CharPrevW(
  34092.          LPCWSTR lpszStart,
  34093.          LPCWSTR lpszCurrent);
  34094.  
  34095.  
  34096.  
  34097.  
  34098.  
  34099.  
  34100.  
  34101. __declspec(dllimport)
  34102. LPSTR
  34103. __stdcall
  34104. CharNextExA(
  34105.           WORD CodePage,
  34106.           LPCSTR lpCurrentChar,
  34107.           DWORD dwFlags);
  34108.  
  34109. __declspec(dllimport)
  34110. LPSTR
  34111. __stdcall
  34112. CharPrevExA(
  34113.           WORD CodePage,
  34114.           LPCSTR lpStart,
  34115.           LPCSTR lpCurrentChar,
  34116.           DWORD dwFlags);
  34117.  
  34118.  
  34119.  
  34120. #pragma endregion
  34121. # 5650 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  34122. #pragma region Desktop or OneCore Family
  34123.  
  34124.  
  34125.  
  34126.  
  34127.  
  34128.  
  34129.  
  34130. __declspec(dllimport)
  34131. BOOL
  34132. __stdcall
  34133. IsCharAlphaA(
  34134.          CHAR ch);
  34135. __declspec(dllimport)
  34136. BOOL
  34137. __stdcall
  34138. IsCharAlphaW(
  34139.          WCHAR ch);
  34140.  
  34141.  
  34142.  
  34143.  
  34144.  
  34145.  
  34146. __declspec(dllimport)
  34147. BOOL
  34148. __stdcall
  34149. IsCharAlphaNumericA(
  34150.          CHAR ch);
  34151. __declspec(dllimport)
  34152. BOOL
  34153. __stdcall
  34154. IsCharAlphaNumericW(
  34155.          WCHAR ch);
  34156.  
  34157.  
  34158.  
  34159.  
  34160.  
  34161.  
  34162. __declspec(dllimport)
  34163. BOOL
  34164. __stdcall
  34165. IsCharUpperA(
  34166.          CHAR ch);
  34167. __declspec(dllimport)
  34168. BOOL
  34169. __stdcall
  34170. IsCharUpperW(
  34171.          WCHAR ch);
  34172.  
  34173.  
  34174.  
  34175.  
  34176.  
  34177.  
  34178. __declspec(dllimport)
  34179. BOOL
  34180. __stdcall
  34181. IsCharLowerA(
  34182.          CHAR ch);
  34183. __declspec(dllimport)
  34184. BOOL
  34185. __stdcall
  34186. IsCharLowerW(
  34187.          WCHAR ch);
  34188. # 5725 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  34189. #pragma endregion
  34190.  
  34191. #pragma region Desktop Family
  34192.  
  34193.  
  34194. __declspec(dllimport)
  34195. HWND
  34196. __stdcall
  34197. SetFocus(
  34198.              HWND hWnd);
  34199.  
  34200. __declspec(dllimport)
  34201. HWND
  34202. __stdcall
  34203. GetActiveWindow(
  34204.     void);
  34205.  
  34206. __declspec(dllimport)
  34207. HWND
  34208. __stdcall
  34209. GetFocus(
  34210.     void);
  34211.  
  34212. __declspec(dllimport)
  34213. UINT
  34214. __stdcall
  34215. GetKBCodePage(
  34216.     void);
  34217.  
  34218. __declspec(dllimport)
  34219. SHORT
  34220. __stdcall
  34221. GetKeyState(
  34222.          int nVirtKey);
  34223.  
  34224. __declspec(dllimport)
  34225. SHORT
  34226. __stdcall
  34227. GetAsyncKeyState(
  34228.          int vKey);
  34229.  
  34230. __declspec(dllimport)
  34231.  
  34232. BOOL
  34233. __stdcall
  34234. GetKeyboardState(
  34235.                       PBYTE lpKeyState);
  34236.  
  34237. __declspec(dllimport)
  34238. BOOL
  34239. __stdcall
  34240. SetKeyboardState(
  34241.                     LPBYTE lpKeyState);
  34242.  
  34243.  
  34244.  
  34245. #pragma endregion
  34246.  
  34247. #pragma region Desktop or PC Family
  34248.  
  34249.  
  34250. __declspec(dllimport)
  34251. int
  34252. __stdcall
  34253. GetKeyNameTextA(
  34254.          LONG lParam,
  34255.                           LPSTR lpString,
  34256.          int cchSize);
  34257. __declspec(dllimport)
  34258. int
  34259. __stdcall
  34260. GetKeyNameTextW(
  34261.          LONG lParam,
  34262.                           LPWSTR lpString,
  34263.          int cchSize);
  34264.  
  34265.  
  34266.  
  34267.  
  34268.  
  34269.  
  34270.  
  34271. #pragma endregion
  34272.  
  34273. #pragma region Desktop Family
  34274.  
  34275.  
  34276.  
  34277. __declspec(dllimport)
  34278. int
  34279. __stdcall
  34280. GetKeyboardType(
  34281.          int nTypeFlag);
  34282.  
  34283. __declspec(dllimport)
  34284. int
  34285. __stdcall
  34286. ToAscii(
  34287.          UINT uVirtKey,
  34288.          UINT uScanCode,
  34289.                         const BYTE *lpKeyState,
  34290.           LPWORD lpChar,
  34291.          UINT uFlags);
  34292.  
  34293.  
  34294. __declspec(dllimport)
  34295. int
  34296. __stdcall
  34297. ToAsciiEx(
  34298.          UINT uVirtKey,
  34299.          UINT uScanCode,
  34300.                         const BYTE *lpKeyState,
  34301.           LPWORD lpChar,
  34302.          UINT uFlags,
  34303.              HKL dwhkl);
  34304.  
  34305.  
  34306. __declspec(dllimport)
  34307. int
  34308. __stdcall
  34309. ToUnicode(
  34310.          UINT wVirtKey,
  34311.          UINT wScanCode,
  34312.                               const BYTE *lpKeyState,
  34313.                           LPWSTR pwszBuff,
  34314.          int cchBuff,
  34315.          UINT wFlags);
  34316.  
  34317. __declspec(dllimport)
  34318. DWORD
  34319. __stdcall
  34320. OemKeyScan(
  34321.          WORD wOemChar);
  34322.  
  34323. __declspec(dllimport)
  34324. SHORT
  34325. __stdcall
  34326. VkKeyScanA(
  34327.          CHAR ch);
  34328. __declspec(dllimport)
  34329. SHORT
  34330. __stdcall
  34331. VkKeyScanW(
  34332.          WCHAR ch);
  34333.  
  34334.  
  34335.  
  34336.  
  34337.  
  34338.  
  34339.  
  34340. __declspec(dllimport)
  34341. SHORT
  34342. __stdcall
  34343. VkKeyScanExA(
  34344.          CHAR ch,
  34345.          HKL dwhkl);
  34346. __declspec(dllimport)
  34347. SHORT
  34348. __stdcall
  34349. VkKeyScanExW(
  34350.          WCHAR ch,
  34351.          HKL dwhkl);
  34352. # 5901 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  34353. __declspec(dllimport)
  34354. void
  34355. __stdcall
  34356. keybd_event(
  34357.          BYTE bVk,
  34358.          BYTE bScan,
  34359.          DWORD dwFlags,
  34360.          ULONG_PTR dwExtraInfo);
  34361.  
  34362.  
  34363. #pragma endregion
  34364. # 5932 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  34365. #pragma region Desktop Family
  34366.  
  34367.  
  34368. __declspec(dllimport)
  34369. void
  34370. __stdcall
  34371. mouse_event(
  34372.          DWORD dwFlags,
  34373.          DWORD dx,
  34374.          DWORD dy,
  34375.          DWORD dwData,
  34376.          ULONG_PTR dwExtraInfo);
  34377.  
  34378.  
  34379. #pragma endregion
  34380.  
  34381.  
  34382.  
  34383. typedef struct tagMOUSEINPUT {
  34384.     LONG dx;
  34385.     LONG dy;
  34386.     DWORD mouseData;
  34387.     DWORD dwFlags;
  34388.     DWORD time;
  34389.     ULONG_PTR dwExtraInfo;
  34390. } MOUSEINPUT, *PMOUSEINPUT, * LPMOUSEINPUT;
  34391.  
  34392. typedef struct tagKEYBDINPUT {
  34393.     WORD wVk;
  34394.     WORD wScan;
  34395.     DWORD dwFlags;
  34396.     DWORD time;
  34397.     ULONG_PTR dwExtraInfo;
  34398. } KEYBDINPUT, *PKEYBDINPUT, * LPKEYBDINPUT;
  34399.  
  34400. #pragma region Desktop Family
  34401.  
  34402.  
  34403. typedef struct tagHARDWAREINPUT {
  34404.     DWORD uMsg;
  34405.     WORD wParamL;
  34406.     WORD wParamH;
  34407. } HARDWAREINPUT, *PHARDWAREINPUT, * LPHARDWAREINPUT;
  34408.  
  34409.  
  34410.  
  34411.  
  34412.  
  34413. typedef struct tagINPUT {
  34414.     DWORD type;
  34415.  
  34416.     union
  34417.     {
  34418.         MOUSEINPUT mi;
  34419.         KEYBDINPUT ki;
  34420.         HARDWAREINPUT hi;
  34421.     } ;
  34422. } INPUT, *PINPUT, * LPINPUT;
  34423.  
  34424. __declspec(dllimport)
  34425. UINT
  34426. __stdcall
  34427. SendInput(
  34428.          UINT cInputs,
  34429.                         LPINPUT pInputs,
  34430.          int cbSize);
  34431.  
  34432.  
  34433. #pragma endregion
  34434.  
  34435.  
  34436.  
  34437.  
  34438.  
  34439. #pragma region Desktop Family
  34440. # 6016 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  34441. struct HTOUCHINPUT__{int unused;}; typedef struct HTOUCHINPUT__ *HTOUCHINPUT;
  34442.  
  34443. typedef struct tagTOUCHINPUT {
  34444.     LONG x;
  34445.     LONG y;
  34446.     HANDLE hSource;
  34447.     DWORD dwID;
  34448.     DWORD dwFlags;
  34449.     DWORD dwMask;
  34450.     DWORD dwTime;
  34451.     ULONG_PTR dwExtraInfo;
  34452.     DWORD cxContact;
  34453.     DWORD cyContact;
  34454. } TOUCHINPUT, *PTOUCHINPUT;
  34455. typedef TOUCHINPUT const * PCTOUCHINPUT;
  34456.  
  34457.  
  34458.  
  34459. #pragma endregion
  34460. # 6060 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  34461. #pragma region Desktop Family
  34462.  
  34463.  
  34464. __declspec(dllimport)
  34465. BOOL
  34466. __stdcall
  34467. GetTouchInputInfo(
  34468.          HTOUCHINPUT hTouchInput,
  34469.          UINT cInputs,
  34470.                           PTOUCHINPUT pInputs,
  34471.          int cbSize);
  34472.  
  34473. __declspec(dllimport)
  34474. BOOL
  34475. __stdcall
  34476. CloseTouchInputHandle(
  34477.          HTOUCHINPUT hTouchInput);
  34478.  
  34479.  
  34480.  
  34481. #pragma endregion
  34482.  
  34483.  
  34484.  
  34485.  
  34486.  
  34487.  
  34488.  
  34489.  
  34490. #pragma region Desktop Family
  34491.  
  34492.  
  34493. __declspec(dllimport)
  34494. BOOL
  34495. __stdcall
  34496. RegisterTouchWindow(
  34497.          HWND hwnd,
  34498.          ULONG ulFlags);
  34499.  
  34500. __declspec(dllimport)
  34501. BOOL
  34502. __stdcall
  34503. UnregisterTouchWindow(
  34504.          HWND hwnd);
  34505.  
  34506. __declspec(dllimport)
  34507. BOOL
  34508. __stdcall
  34509. IsTouchWindow(
  34510.          HWND hwnd,
  34511.               PULONG pulFlags);
  34512.  
  34513.  
  34514. #pragma endregion
  34515.  
  34516.  
  34517.  
  34518.  
  34519.  
  34520. #pragma region Desktop Family
  34521.  
  34522.  
  34523.  
  34524.  
  34525. enum tagPOINTER_INPUT_TYPE {
  34526.     PT_POINTER = 1,
  34527.     PT_TOUCH = 2,
  34528.     PT_PEN = 3,
  34529.     PT_MOUSE = 4,
  34530.  
  34531.     PT_TOUCHPAD = 5,
  34532.  
  34533. };
  34534.  
  34535.  
  34536. typedef DWORD POINTER_INPUT_TYPE;
  34537.  
  34538. typedef UINT32 POINTER_FLAGS;
  34539.  
  34540.  
  34541. #pragma endregion
  34542. # 6169 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  34543. #pragma region Desktop Family
  34544.  
  34545.  
  34546. typedef enum tagPOINTER_BUTTON_CHANGE_TYPE {
  34547.     POINTER_CHANGE_NONE,
  34548.     POINTER_CHANGE_FIRSTBUTTON_DOWN,
  34549.     POINTER_CHANGE_FIRSTBUTTON_UP,
  34550.     POINTER_CHANGE_SECONDBUTTON_DOWN,
  34551.     POINTER_CHANGE_SECONDBUTTON_UP,
  34552.     POINTER_CHANGE_THIRDBUTTON_DOWN,
  34553.     POINTER_CHANGE_THIRDBUTTON_UP,
  34554.     POINTER_CHANGE_FOURTHBUTTON_DOWN,
  34555.     POINTER_CHANGE_FOURTHBUTTON_UP,
  34556.     POINTER_CHANGE_FIFTHBUTTON_DOWN,
  34557.     POINTER_CHANGE_FIFTHBUTTON_UP,
  34558. } POINTER_BUTTON_CHANGE_TYPE;
  34559.  
  34560. typedef struct tagPOINTER_INFO {
  34561.     POINTER_INPUT_TYPE pointerType;
  34562.     UINT32 pointerId;
  34563.     UINT32 frameId;
  34564.     POINTER_FLAGS pointerFlags;
  34565.     HANDLE sourceDevice;
  34566.     HWND hwndTarget;
  34567.     POINT ptPixelLocation;
  34568.     POINT ptHimetricLocation;
  34569.     POINT ptPixelLocationRaw;
  34570.     POINT ptHimetricLocationRaw;
  34571.     DWORD dwTime;
  34572.     UINT32 historyCount;
  34573.     INT32 InputData;
  34574.     DWORD dwKeyStates;
  34575.     UINT64 PerformanceCount;
  34576.     POINTER_BUTTON_CHANGE_TYPE ButtonChangeType;
  34577. } POINTER_INFO;
  34578.  
  34579.  
  34580. typedef UINT32 TOUCH_FLAGS;
  34581.  
  34582.  
  34583. typedef UINT32 TOUCH_MASK;
  34584.  
  34585.  
  34586.  
  34587.  
  34588.  
  34589. typedef struct tagPOINTER_TOUCH_INFO {
  34590.     POINTER_INFO pointerInfo;
  34591.     TOUCH_FLAGS touchFlags;
  34592.     TOUCH_MASK touchMask;
  34593.     RECT rcContact;
  34594.     RECT rcContactRaw;
  34595.     UINT32 orientation;
  34596.     UINT32 pressure;
  34597. } POINTER_TOUCH_INFO;
  34598.  
  34599. typedef UINT32 PEN_FLAGS;
  34600.  
  34601.  
  34602.  
  34603.  
  34604.  
  34605. typedef UINT32 PEN_MASK;
  34606.  
  34607.  
  34608.  
  34609.  
  34610.  
  34611.  
  34612. typedef struct tagPOINTER_PEN_INFO {
  34613.     POINTER_INFO pointerInfo;
  34614.     PEN_FLAGS penFlags;
  34615.     PEN_MASK penMask;
  34616.     UINT32 pressure;
  34617.     UINT32 rotation;
  34618.     INT32 tiltX;
  34619.     INT32 tiltY;
  34620. } POINTER_PEN_INFO;
  34621.  
  34622.  
  34623. #pragma endregion
  34624. # 6296 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  34625. #pragma region Desktop Family
  34626.  
  34627.  
  34628. __declspec(dllimport)
  34629. BOOL
  34630. __stdcall
  34631. InitializeTouchInjection(
  34632.          UINT32 maxCount,
  34633.          DWORD dwMode);
  34634.  
  34635. __declspec(dllimport)
  34636. BOOL
  34637. __stdcall
  34638. InjectTouchInput(
  34639.          UINT32 count,
  34640.                       const POINTER_TOUCH_INFO *contacts);
  34641.  
  34642. typedef struct tagUSAGE_PROPERTIES {
  34643.     USHORT level;
  34644.     USHORT page;
  34645.     USHORT usage;
  34646.     INT32 logicalMinimum;
  34647.     INT32 logicalMaximum;
  34648.     USHORT unit;
  34649.     USHORT exponent;
  34650.     BYTE count;
  34651.     INT32 physicalMinimum;
  34652.     INT32 physicalMaximum;
  34653. }USAGE_PROPERTIES, *PUSAGE_PROPERTIES;
  34654.  
  34655. typedef struct tagPOINTER_TYPE_INFO {
  34656.     POINTER_INPUT_TYPE type;
  34657.     union{
  34658.         POINTER_TOUCH_INFO touchInfo;
  34659.         POINTER_PEN_INFO penInfo;
  34660.     } ;
  34661. }POINTER_TYPE_INFO, *PPOINTER_TYPE_INFO;
  34662.  
  34663. typedef struct tagINPUT_INJECTION_VALUE {
  34664.     USHORT page;
  34665.     USHORT usage;
  34666.     INT32 value;
  34667.     USHORT index;
  34668. }INPUT_INJECTION_VALUE, *PINPUT_INJECTION_VALUE;
  34669.  
  34670. __declspec(dllimport)
  34671. BOOL
  34672. __stdcall
  34673. GetPointerType(
  34674.          UINT32 pointerId,
  34675.           POINTER_INPUT_TYPE *pointerType);
  34676.  
  34677. __declspec(dllimport)
  34678. BOOL
  34679. __stdcall
  34680. GetPointerCursorId(
  34681.          UINT32 pointerId,
  34682.           UINT32 *cursorId);
  34683.  
  34684. __declspec(dllimport)
  34685. BOOL
  34686. __stdcall
  34687. GetPointerInfo(
  34688.          UINT32 pointerId,
  34689.                     POINTER_INFO *pointerInfo);
  34690.  
  34691. __declspec(dllimport)
  34692. BOOL
  34693. __stdcall
  34694. GetPointerInfoHistory(
  34695.          UINT32 pointerId,
  34696.             UINT32 *entriesCount,
  34697.                                     POINTER_INFO *pointerInfo);
  34698.  
  34699. __declspec(dllimport)
  34700. BOOL
  34701. __stdcall
  34702. GetPointerFrameInfo(
  34703.          UINT32 pointerId,
  34704.             UINT32 *pointerCount,
  34705.                                     POINTER_INFO *pointerInfo);
  34706.  
  34707. __declspec(dllimport)
  34708. BOOL
  34709. __stdcall
  34710. GetPointerFrameInfoHistory(
  34711.          UINT32 pointerId,
  34712.             UINT32 *entriesCount,
  34713.             UINT32 *pointerCount,
  34714.                                                     POINTER_INFO *pointerInfo);
  34715.  
  34716. __declspec(dllimport)
  34717. BOOL
  34718. __stdcall
  34719. GetPointerTouchInfo(
  34720.          UINT32 pointerId,
  34721.                     POINTER_TOUCH_INFO *touchInfo);
  34722.  
  34723. __declspec(dllimport)
  34724. BOOL
  34725. __stdcall
  34726. GetPointerTouchInfoHistory(
  34727.          UINT32 pointerId,
  34728.             UINT32 *entriesCount,
  34729.                                     POINTER_TOUCH_INFO *touchInfo);
  34730.  
  34731. __declspec(dllimport)
  34732. BOOL
  34733. __stdcall
  34734. GetPointerFrameTouchInfo(
  34735.          UINT32 pointerId,
  34736.             UINT32 *pointerCount,
  34737.                                     POINTER_TOUCH_INFO *touchInfo);
  34738.  
  34739. __declspec(dllimport)
  34740. BOOL
  34741. __stdcall
  34742. GetPointerFrameTouchInfoHistory(
  34743.          UINT32 pointerId,
  34744.             UINT32 *entriesCount,
  34745.             UINT32 *pointerCount,
  34746.                                                     POINTER_TOUCH_INFO *touchInfo);
  34747.  
  34748. __declspec(dllimport)
  34749. BOOL
  34750. __stdcall
  34751. GetPointerPenInfo(
  34752.          UINT32 pointerId,
  34753.                     POINTER_PEN_INFO *penInfo);
  34754.  
  34755. __declspec(dllimport)
  34756. BOOL
  34757. __stdcall
  34758. GetPointerPenInfoHistory(
  34759.          UINT32 pointerId,
  34760.             UINT32 *entriesCount,
  34761.                                     POINTER_PEN_INFO *penInfo);
  34762.  
  34763. __declspec(dllimport)
  34764. BOOL
  34765. __stdcall
  34766. GetPointerFramePenInfo(
  34767.          UINT32 pointerId,
  34768.             UINT32 *pointerCount,
  34769.                                     POINTER_PEN_INFO *penInfo);
  34770.  
  34771. __declspec(dllimport)
  34772. BOOL
  34773. __stdcall
  34774. GetPointerFramePenInfoHistory(
  34775.          UINT32 pointerId,
  34776.             UINT32 *entriesCount,
  34777.             UINT32 *pointerCount,
  34778.                                                     POINTER_PEN_INFO *penInfo);
  34779.  
  34780. __declspec(dllimport)
  34781. BOOL
  34782. __stdcall
  34783. SkipPointerFrameMessages(
  34784.          UINT32 pointerId);
  34785.  
  34786. __declspec(dllimport)
  34787. BOOL
  34788. __stdcall
  34789. RegisterPointerInputTarget(
  34790.          HWND hwnd,
  34791.          POINTER_INPUT_TYPE pointerType);
  34792.  
  34793. __declspec(dllimport)
  34794. BOOL
  34795. __stdcall
  34796. UnregisterPointerInputTarget(
  34797.          HWND hwnd,
  34798.          POINTER_INPUT_TYPE pointerType);
  34799.  
  34800. __declspec(dllimport)
  34801. BOOL
  34802. __stdcall
  34803. RegisterPointerInputTargetEx(
  34804.          HWND hwnd,
  34805.          POINTER_INPUT_TYPE pointerType,
  34806.          BOOL fObserve);
  34807.  
  34808. __declspec(dllimport)
  34809. BOOL
  34810. __stdcall
  34811. UnregisterPointerInputTargetEx(
  34812.          HWND hwnd,
  34813.          POINTER_INPUT_TYPE pointerType);
  34814.  
  34815.  
  34816. __declspec(dllimport)
  34817. BOOL
  34818. __stdcall
  34819. EnableMouseInPointer(
  34820.          BOOL fEnable);
  34821.  
  34822. __declspec(dllimport)
  34823. BOOL
  34824. __stdcall
  34825. IsMouseInPointerEnabled(
  34826.     void);
  34827.  
  34828.  
  34829. __declspec(dllimport)
  34830. BOOL
  34831. __stdcall
  34832. EnableMouseInPointerForThread();
  34833.  
  34834.  
  34835.  
  34836.  
  34837.  
  34838.  
  34839. __declspec(dllimport)
  34840. BOOL
  34841. __stdcall
  34842. RegisterTouchHitTestingWindow(
  34843.          HWND hwnd,
  34844.          ULONG value);
  34845.  
  34846. typedef struct tagTOUCH_HIT_TESTING_PROXIMITY_EVALUATION
  34847. {
  34848.     UINT16 score;
  34849.     POINT adjustedPoint;
  34850. } TOUCH_HIT_TESTING_PROXIMITY_EVALUATION, *PTOUCH_HIT_TESTING_PROXIMITY_EVALUATION;
  34851.  
  34852.  
  34853.  
  34854.  
  34855.  
  34856. typedef struct tagTOUCH_HIT_TESTING_INPUT
  34857. {
  34858.     UINT32 pointerId;
  34859.     POINT point;
  34860.     RECT boundingBox;
  34861.     RECT nonOccludedBoundingBox;
  34862.     UINT32 orientation;
  34863. } TOUCH_HIT_TESTING_INPUT, *PTOUCH_HIT_TESTING_INPUT;
  34864.  
  34865.  
  34866.  
  34867.  
  34868.  
  34869. __declspec(dllimport)
  34870. BOOL
  34871. __stdcall
  34872. EvaluateProximityToRect(
  34873.          const RECT *controlBoundingBox,
  34874.          const TOUCH_HIT_TESTING_INPUT *pHitTestingInput,
  34875.           TOUCH_HIT_TESTING_PROXIMITY_EVALUATION *pProximityEval);
  34876.  
  34877. __declspec(dllimport)
  34878. BOOL
  34879. __stdcall
  34880. EvaluateProximityToPolygon(
  34881.     UINT32 numVertices,
  34882.                             const POINT *controlPolygon,
  34883.          const TOUCH_HIT_TESTING_INPUT *pHitTestingInput,
  34884.           TOUCH_HIT_TESTING_PROXIMITY_EVALUATION *pProximityEval);
  34885.  
  34886. __declspec(dllimport)
  34887. LRESULT
  34888. __stdcall
  34889. PackTouchHitTestingProximityEvaluation(
  34890.          const TOUCH_HIT_TESTING_INPUT *pHitTestingInput,
  34891.          const TOUCH_HIT_TESTING_PROXIMITY_EVALUATION *pProximityEval);
  34892.  
  34893.  
  34894. typedef enum tagFEEDBACK_TYPE {
  34895.     FEEDBACK_TOUCH_CONTACTVISUALIZATION = 1,
  34896.     FEEDBACK_PEN_BARRELVISUALIZATION = 2,
  34897.     FEEDBACK_PEN_TAP = 3,
  34898.     FEEDBACK_PEN_DOUBLETAP = 4,
  34899.     FEEDBACK_PEN_PRESSANDHOLD = 5,
  34900.     FEEDBACK_PEN_RIGHTTAP = 6,
  34901.     FEEDBACK_TOUCH_TAP = 7,
  34902.     FEEDBACK_TOUCH_DOUBLETAP = 8,
  34903.     FEEDBACK_TOUCH_PRESSANDHOLD = 9,
  34904.     FEEDBACK_TOUCH_RIGHTTAP = 10,
  34905.     FEEDBACK_GESTURE_PRESSANDTAP = 11,
  34906.     FEEDBACK_MAX = 0xFFFFFFFF
  34907. } FEEDBACK_TYPE;
  34908.  
  34909.  
  34910.  
  34911.  
  34912.  
  34913. __declspec(dllimport)
  34914. BOOL
  34915. __stdcall
  34916. GetWindowFeedbackSetting(
  34917.          HWND hwnd,
  34918.          FEEDBACK_TYPE feedback,
  34919.          DWORD dwFlags,
  34920.             UINT32* pSize,
  34921.                                    void* config);
  34922.  
  34923. __declspec(dllimport)
  34924. BOOL
  34925. __stdcall
  34926. SetWindowFeedbackSetting(
  34927.          HWND hwnd,
  34928.          FEEDBACK_TYPE feedback,
  34929.          DWORD dwFlags,
  34930.          UINT32 size,
  34931.                                const void* configuration);
  34932.  
  34933.  
  34934.  
  34935. #pragma endregion
  34936.  
  34937.  
  34938.  
  34939.  
  34940.  
  34941. #pragma region Desktop Family
  34942.  
  34943.  
  34944.  
  34945.  
  34946.  
  34947.  
  34948. #pragma warning(disable: 4201)
  34949.  
  34950. typedef struct tagINPUT_TRANSFORM {
  34951.     union {
  34952.         struct {
  34953.             float _11, _12, _13, _14;
  34954.             float _21, _22, _23, _24;
  34955.             float _31, _32, _33, _34;
  34956.             float _41, _42, _43, _44;
  34957.         } ;
  34958.         float m[4][4];
  34959.     } ;
  34960. } INPUT_TRANSFORM;
  34961.  
  34962.  
  34963.  
  34964.  
  34965.  
  34966.  
  34967. __declspec(dllimport)
  34968. BOOL
  34969. __stdcall
  34970. GetPointerInputTransform(
  34971.          UINT32 pointerId,
  34972.          UINT32 historyCount,
  34973.                                INPUT_TRANSFORM *inputTransform);
  34974.  
  34975.  
  34976. #pragma endregion
  34977.  
  34978.  
  34979.  
  34980. #pragma region Desktop Family
  34981.  
  34982.  
  34983.  
  34984. #pragma endregion
  34985.  
  34986. #pragma region Desktop Family
  34987.  
  34988.  
  34989.  
  34990. typedef struct tagLASTINPUTINFO {
  34991.     UINT cbSize;
  34992.     DWORD dwTime;
  34993. } LASTINPUTINFO, * PLASTINPUTINFO;
  34994.  
  34995. __declspec(dllimport)
  34996. BOOL
  34997. __stdcall
  34998. GetLastInputInfo(
  34999.           PLASTINPUTINFO plii);
  35000.  
  35001.  
  35002.  
  35003. #pragma endregion
  35004.  
  35005. #pragma region Desktop or PC Family
  35006.  
  35007.  
  35008. __declspec(dllimport)
  35009. UINT
  35010. __stdcall
  35011. MapVirtualKeyA(
  35012.          UINT uCode,
  35013.          UINT uMapType);
  35014. __declspec(dllimport)
  35015. UINT
  35016. __stdcall
  35017. MapVirtualKeyW(
  35018.          UINT uCode,
  35019.          UINT uMapType);
  35020.  
  35021.  
  35022.  
  35023.  
  35024.  
  35025.  
  35026.  
  35027. __declspec(dllimport)
  35028. UINT
  35029. __stdcall
  35030. MapVirtualKeyExA(
  35031.          UINT uCode,
  35032.          UINT uMapType,
  35033.              HKL dwhkl);
  35034. __declspec(dllimport)
  35035. UINT
  35036. __stdcall
  35037. MapVirtualKeyExW(
  35038.          UINT uCode,
  35039.          UINT uMapType,
  35040.              HKL dwhkl);
  35041.  
  35042.  
  35043.  
  35044.  
  35045.  
  35046.  
  35047.  
  35048. #pragma endregion
  35049.  
  35050. #pragma region Desktop Family
  35051. # 6733 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35052. __declspec(dllimport)
  35053. BOOL
  35054. __stdcall
  35055. GetInputState(
  35056.     void);
  35057.  
  35058. __declspec(dllimport)
  35059. DWORD
  35060. __stdcall
  35061. GetQueueStatus(
  35062.          UINT flags);
  35063.  
  35064.  
  35065. __declspec(dllimport)
  35066. HWND
  35067. __stdcall
  35068. GetCapture(
  35069.     void);
  35070.  
  35071. __declspec(dllimport)
  35072. HWND
  35073. __stdcall
  35074. SetCapture(
  35075.          HWND hWnd);
  35076.  
  35077. __declspec(dllimport)
  35078. BOOL
  35079. __stdcall
  35080. ReleaseCapture(
  35081.     void);
  35082.  
  35083. __declspec(dllimport)
  35084. DWORD
  35085. __stdcall
  35086. MsgWaitForMultipleObjects(
  35087.          DWORD nCount,
  35088.                            const HANDLE *pHandles,
  35089.          BOOL fWaitAll,
  35090.          DWORD dwMilliseconds,
  35091.          DWORD dwWakeMask);
  35092.  
  35093. __declspec(dllimport)
  35094. DWORD
  35095. __stdcall
  35096. MsgWaitForMultipleObjectsEx(
  35097.          DWORD nCount,
  35098.                            const HANDLE *pHandles,
  35099.          DWORD dwMilliseconds,
  35100.          DWORD dwWakeMask,
  35101.          DWORD dwFlags);
  35102.  
  35103.  
  35104.  
  35105. #pragma endregion
  35106. # 6854 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35107. #pragma region Desktop Family
  35108.  
  35109.  
  35110.  
  35111.  
  35112.  
  35113.  
  35114. __declspec(dllimport)
  35115. UINT_PTR
  35116. __stdcall
  35117. SetTimer(
  35118.              HWND hWnd,
  35119.          UINT_PTR nIDEvent,
  35120.          UINT uElapse,
  35121.              TIMERPROC lpTimerFunc);
  35122. # 6878 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35123. __declspec(dllimport)
  35124. UINT_PTR
  35125. __stdcall
  35126. SetCoalescableTimer(
  35127.              HWND hWnd,
  35128.          UINT_PTR nIDEvent,
  35129.          UINT uElapse,
  35130.              TIMERPROC lpTimerFunc,
  35131.          ULONG uToleranceDelay);
  35132.  
  35133.  
  35134.  
  35135. __declspec(dllimport)
  35136. BOOL
  35137. __stdcall
  35138. KillTimer(
  35139.              HWND hWnd,
  35140.          UINT_PTR uIDEvent);
  35141.  
  35142. __declspec(dllimport)
  35143. BOOL
  35144. __stdcall
  35145. IsWindowUnicode(
  35146.          HWND hWnd);
  35147.  
  35148. __declspec(dllimport)
  35149. BOOL
  35150. __stdcall
  35151. EnableWindow(
  35152.          HWND hWnd,
  35153.          BOOL bEnable);
  35154.  
  35155. __declspec(dllimport)
  35156. BOOL
  35157. __stdcall
  35158. IsWindowEnabled(
  35159.          HWND hWnd);
  35160.  
  35161. __declspec(dllimport)
  35162. HACCEL
  35163. __stdcall
  35164. LoadAcceleratorsA(
  35165.              HINSTANCE hInstance,
  35166.          LPCSTR lpTableName);
  35167. __declspec(dllimport)
  35168. HACCEL
  35169. __stdcall
  35170. LoadAcceleratorsW(
  35171.              HINSTANCE hInstance,
  35172.          LPCWSTR lpTableName);
  35173.  
  35174.  
  35175.  
  35176.  
  35177.  
  35178.  
  35179. __declspec(dllimport)
  35180. HACCEL
  35181. __stdcall
  35182. CreateAcceleratorTableA(
  35183.                        LPACCEL paccel,
  35184.          int cAccel);
  35185. __declspec(dllimport)
  35186. HACCEL
  35187. __stdcall
  35188. CreateAcceleratorTableW(
  35189.                        LPACCEL paccel,
  35190.          int cAccel);
  35191.  
  35192.  
  35193.  
  35194.  
  35195.  
  35196.  
  35197. __declspec(dllimport)
  35198. BOOL
  35199. __stdcall
  35200. DestroyAcceleratorTable(
  35201.          HACCEL hAccel);
  35202.  
  35203. __declspec(dllimport)
  35204. int
  35205. __stdcall
  35206. CopyAcceleratorTableA(
  35207.          HACCEL hAccelSrc,
  35208.                                                LPACCEL lpAccelDst,
  35209.          int cAccelEntries);
  35210. __declspec(dllimport)
  35211. int
  35212. __stdcall
  35213. CopyAcceleratorTableW(
  35214.          HACCEL hAccelSrc,
  35215.                                                LPACCEL lpAccelDst,
  35216.          int cAccelEntries);
  35217. # 6980 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35218. __declspec(dllimport)
  35219. int
  35220. __stdcall
  35221. TranslateAcceleratorA(
  35222.          HWND hWnd,
  35223.          HACCEL hAccTable,
  35224.          LPMSG lpMsg);
  35225. __declspec(dllimport)
  35226. int
  35227. __stdcall
  35228. TranslateAcceleratorW(
  35229.          HWND hWnd,
  35230.          HACCEL hAccTable,
  35231.          LPMSG lpMsg);
  35232. # 7003 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35233. #pragma endregion
  35234. # 7167 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35235. #pragma region Desktop Family
  35236.  
  35237.  
  35238. __declspec(dllimport)
  35239. int
  35240. __stdcall
  35241. GetSystemMetrics(
  35242.          int nIndex);
  35243.  
  35244.  
  35245.  
  35246. __declspec(dllimport)
  35247. int
  35248. __stdcall
  35249. GetSystemMetricsForDpi(
  35250.          int nIndex,
  35251.          UINT dpi);
  35252.  
  35253.  
  35254.  
  35255.  
  35256. #pragma endregion
  35257.  
  35258.  
  35259.  
  35260. #pragma region Desktop Family
  35261.  
  35262.  
  35263.  
  35264.  
  35265. __declspec(dllimport)
  35266. HMENU
  35267. __stdcall
  35268. LoadMenuA(
  35269.              HINSTANCE hInstance,
  35270.          LPCSTR lpMenuName);
  35271. __declspec(dllimport)
  35272. HMENU
  35273. __stdcall
  35274. LoadMenuW(
  35275.              HINSTANCE hInstance,
  35276.          LPCWSTR lpMenuName);
  35277.  
  35278.  
  35279.  
  35280.  
  35281.  
  35282.  
  35283. __declspec(dllimport)
  35284. HMENU
  35285. __stdcall
  35286. LoadMenuIndirectA(
  35287.          const MENUTEMPLATEA *lpMenuTemplate);
  35288. __declspec(dllimport)
  35289. HMENU
  35290. __stdcall
  35291. LoadMenuIndirectW(
  35292.          const MENUTEMPLATEW *lpMenuTemplate);
  35293.  
  35294.  
  35295.  
  35296.  
  35297.  
  35298.  
  35299. __declspec(dllimport)
  35300. HMENU
  35301. __stdcall
  35302. GetMenu(
  35303.          HWND hWnd);
  35304.  
  35305. __declspec(dllimport)
  35306. BOOL
  35307. __stdcall
  35308. SetMenu(
  35309.          HWND hWnd,
  35310.              HMENU hMenu);
  35311.  
  35312. __declspec(dllimport)
  35313. BOOL
  35314. __stdcall
  35315. ChangeMenuA(
  35316.          HMENU hMenu,
  35317.          UINT cmd,
  35318.              LPCSTR lpszNewItem,
  35319.          UINT cmdInsert,
  35320.          UINT flags);
  35321. __declspec(dllimport)
  35322. BOOL
  35323. __stdcall
  35324. ChangeMenuW(
  35325.          HMENU hMenu,
  35326.          UINT cmd,
  35327.              LPCWSTR lpszNewItem,
  35328.          UINT cmdInsert,
  35329.          UINT flags);
  35330.  
  35331.  
  35332.  
  35333.  
  35334.  
  35335.  
  35336. __declspec(dllimport)
  35337. BOOL
  35338. __stdcall
  35339. HiliteMenuItem(
  35340.          HWND hWnd,
  35341.          HMENU hMenu,
  35342.          UINT uIDHiliteItem,
  35343.          UINT uHilite);
  35344.  
  35345. __declspec(dllimport)
  35346. int
  35347. __stdcall
  35348. GetMenuStringA(
  35349.          HMENU hMenu,
  35350.          UINT uIDItem,
  35351.                              LPSTR lpString,
  35352.          int cchMax,
  35353.          UINT flags);
  35354. __declspec(dllimport)
  35355. int
  35356. __stdcall
  35357. GetMenuStringW(
  35358.          HMENU hMenu,
  35359.          UINT uIDItem,
  35360.                              LPWSTR lpString,
  35361.          int cchMax,
  35362.          UINT flags);
  35363.  
  35364.  
  35365.  
  35366.  
  35367.  
  35368.  
  35369. __declspec(dllimport)
  35370. UINT
  35371. __stdcall
  35372. GetMenuState(
  35373.          HMENU hMenu,
  35374.          UINT uId,
  35375.          UINT uFlags);
  35376.  
  35377. __declspec(dllimport)
  35378. BOOL
  35379. __stdcall
  35380. DrawMenuBar(
  35381.          HWND hWnd);
  35382.  
  35383.  
  35384.  
  35385.  
  35386.  
  35387.  
  35388.  
  35389. __declspec(dllimport)
  35390. HMENU
  35391. __stdcall
  35392. GetSystemMenu(
  35393.          HWND hWnd,
  35394.          BOOL bRevert);
  35395.  
  35396.  
  35397. __declspec(dllimport)
  35398. HMENU
  35399. __stdcall
  35400. CreateMenu(
  35401.     void);
  35402.  
  35403. __declspec(dllimport)
  35404. HMENU
  35405. __stdcall
  35406. CreatePopupMenu(
  35407.     void);
  35408.  
  35409. __declspec(dllimport)
  35410. BOOL
  35411. __stdcall
  35412. DestroyMenu(
  35413.          HMENU hMenu);
  35414.  
  35415. __declspec(dllimport)
  35416. DWORD
  35417. __stdcall
  35418. CheckMenuItem(
  35419.          HMENU hMenu,
  35420.          UINT uIDCheckItem,
  35421.          UINT uCheck);
  35422.  
  35423. __declspec(dllimport)
  35424. BOOL
  35425. __stdcall
  35426. EnableMenuItem(
  35427.          HMENU hMenu,
  35428.          UINT uIDEnableItem,
  35429.          UINT uEnable);
  35430.  
  35431. __declspec(dllimport)
  35432. HMENU
  35433. __stdcall
  35434. GetSubMenu(
  35435.          HMENU hMenu,
  35436.          int nPos);
  35437.  
  35438. __declspec(dllimport)
  35439. UINT
  35440. __stdcall
  35441. GetMenuItemID(
  35442.          HMENU hMenu,
  35443.          int nPos);
  35444.  
  35445. __declspec(dllimport)
  35446. int
  35447. __stdcall
  35448. GetMenuItemCount(
  35449.              HMENU hMenu);
  35450.  
  35451. __declspec(dllimport)
  35452. BOOL
  35453. __stdcall
  35454. InsertMenuA(
  35455.          HMENU hMenu,
  35456.          UINT uPosition,
  35457.          UINT uFlags,
  35458.          UINT_PTR uIDNewItem,
  35459.              LPCSTR lpNewItem);
  35460. __declspec(dllimport)
  35461. BOOL
  35462. __stdcall
  35463. InsertMenuW(
  35464.          HMENU hMenu,
  35465.          UINT uPosition,
  35466.          UINT uFlags,
  35467.          UINT_PTR uIDNewItem,
  35468.              LPCWSTR lpNewItem);
  35469.  
  35470.  
  35471.  
  35472.  
  35473.  
  35474.  
  35475. __declspec(dllimport)
  35476. BOOL
  35477. __stdcall
  35478. AppendMenuA(
  35479.          HMENU hMenu,
  35480.          UINT uFlags,
  35481.          UINT_PTR uIDNewItem,
  35482.              LPCSTR lpNewItem);
  35483. __declspec(dllimport)
  35484. BOOL
  35485. __stdcall
  35486. AppendMenuW(
  35487.          HMENU hMenu,
  35488.          UINT uFlags,
  35489.          UINT_PTR uIDNewItem,
  35490.              LPCWSTR lpNewItem);
  35491.  
  35492.  
  35493.  
  35494.  
  35495.  
  35496.  
  35497. __declspec(dllimport)
  35498. BOOL
  35499. __stdcall
  35500. ModifyMenuA(
  35501.          HMENU hMnu,
  35502.          UINT uPosition,
  35503.          UINT uFlags,
  35504.          UINT_PTR uIDNewItem,
  35505.              LPCSTR lpNewItem);
  35506. __declspec(dllimport)
  35507. BOOL
  35508. __stdcall
  35509. ModifyMenuW(
  35510.          HMENU hMnu,
  35511.          UINT uPosition,
  35512.          UINT uFlags,
  35513.          UINT_PTR uIDNewItem,
  35514.              LPCWSTR lpNewItem);
  35515.  
  35516.  
  35517.  
  35518.  
  35519.  
  35520.  
  35521. __declspec(dllimport)
  35522. BOOL
  35523. __stdcall RemoveMenu(
  35524.          HMENU hMenu,
  35525.          UINT uPosition,
  35526.          UINT uFlags);
  35527.  
  35528. __declspec(dllimport)
  35529. BOOL
  35530. __stdcall
  35531. DeleteMenu(
  35532.          HMENU hMenu,
  35533.          UINT uPosition,
  35534.          UINT uFlags);
  35535.  
  35536. __declspec(dllimport)
  35537. BOOL
  35538. __stdcall
  35539. SetMenuItemBitmaps(
  35540.          HMENU hMenu,
  35541.          UINT uPosition,
  35542.          UINT uFlags,
  35543.              HBITMAP hBitmapUnchecked,
  35544.              HBITMAP hBitmapChecked);
  35545.  
  35546. __declspec(dllimport)
  35547. LONG
  35548. __stdcall
  35549. GetMenuCheckMarkDimensions(
  35550.     void);
  35551.  
  35552. __declspec(dllimport)
  35553. BOOL
  35554. __stdcall
  35555. TrackPopupMenu(
  35556.          HMENU hMenu,
  35557.          UINT uFlags,
  35558.          int x,
  35559.          int y,
  35560.                int nReserved,
  35561.          HWND hWnd,
  35562.                const RECT *prcRect);
  35563. # 7503 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35564. typedef struct tagTPMPARAMS
  35565. {
  35566.     UINT cbSize;
  35567.     RECT rcExclude;
  35568. } TPMPARAMS;
  35569. typedef TPMPARAMS *LPTPMPARAMS;
  35570.  
  35571. __declspec(dllimport)
  35572. BOOL
  35573. __stdcall
  35574. TrackPopupMenuEx(
  35575.          HMENU hMenu,
  35576.          UINT uFlags,
  35577.          int x,
  35578.          int y,
  35579.          HWND hwnd,
  35580.              LPTPMPARAMS lptpm);
  35581.  
  35582.  
  35583.  
  35584. __declspec(dllimport)
  35585. BOOL
  35586. __stdcall
  35587. CalculatePopupWindowPosition(
  35588.          const POINT *anchorPoint,
  35589.          const SIZE *windowSize,
  35590.          UINT flags,
  35591.              RECT *excludeRect,
  35592.           RECT *popupWindowPosition);
  35593. # 7551 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35594. typedef struct tagMENUINFO
  35595. {
  35596.     DWORD cbSize;
  35597.     DWORD fMask;
  35598.     DWORD dwStyle;
  35599.     UINT cyMax;
  35600.     HBRUSH hbrBack;
  35601.     DWORD dwContextHelpID;
  35602.     ULONG_PTR dwMenuData;
  35603. } MENUINFO, *LPMENUINFO;
  35604. typedef MENUINFO const *LPCMENUINFO;
  35605.  
  35606. __declspec(dllimport)
  35607. BOOL
  35608. __stdcall
  35609. GetMenuInfo(
  35610.          HMENU,
  35611.             LPMENUINFO);
  35612.  
  35613. __declspec(dllimport)
  35614. BOOL
  35615. __stdcall
  35616. SetMenuInfo(
  35617.          HMENU,
  35618.          LPCMENUINFO);
  35619.  
  35620. __declspec(dllimport)
  35621. BOOL
  35622. __stdcall
  35623. EndMenu(
  35624.         void);
  35625.  
  35626.  
  35627.  
  35628.  
  35629.  
  35630.  
  35631.  
  35632. typedef struct tagMENUGETOBJECTINFO
  35633. {
  35634.     DWORD dwFlags;
  35635.     UINT uPos;
  35636.     HMENU hmenu;
  35637.     PVOID riid;
  35638.     PVOID pvObj;
  35639. } MENUGETOBJECTINFO, * PMENUGETOBJECTINFO;
  35640. # 7639 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35641. typedef struct tagMENUITEMINFOA
  35642. {
  35643.     UINT cbSize;
  35644.     UINT fMask;
  35645.     UINT fType;
  35646.     UINT fState;
  35647.     UINT wID;
  35648.     HMENU hSubMenu;
  35649.     HBITMAP hbmpChecked;
  35650.     HBITMAP hbmpUnchecked;
  35651.     ULONG_PTR dwItemData;
  35652.     LPSTR dwTypeData;
  35653.     UINT cch;
  35654.  
  35655.     HBITMAP hbmpItem;
  35656.  
  35657. } MENUITEMINFOA, *LPMENUITEMINFOA;
  35658. typedef struct tagMENUITEMINFOW
  35659. {
  35660.     UINT cbSize;
  35661.     UINT fMask;
  35662.     UINT fType;
  35663.     UINT fState;
  35664.     UINT wID;
  35665.     HMENU hSubMenu;
  35666.     HBITMAP hbmpChecked;
  35667.     HBITMAP hbmpUnchecked;
  35668.     ULONG_PTR dwItemData;
  35669.     LPWSTR dwTypeData;
  35670.     UINT cch;
  35671.  
  35672.     HBITMAP hbmpItem;
  35673.  
  35674. } MENUITEMINFOW, *LPMENUITEMINFOW;
  35675.  
  35676.  
  35677.  
  35678.  
  35679. typedef MENUITEMINFOA MENUITEMINFO;
  35680. typedef LPMENUITEMINFOA LPMENUITEMINFO;
  35681.  
  35682. typedef MENUITEMINFOA const *LPCMENUITEMINFOA;
  35683. typedef MENUITEMINFOW const *LPCMENUITEMINFOW;
  35684.  
  35685.  
  35686.  
  35687. typedef LPCMENUITEMINFOA LPCMENUITEMINFO;
  35688.  
  35689.  
  35690.  
  35691. __declspec(dllimport)
  35692. BOOL
  35693. __stdcall
  35694. InsertMenuItemA(
  35695.          HMENU hmenu,
  35696.          UINT item,
  35697.          BOOL fByPosition,
  35698.          LPCMENUITEMINFOA lpmi);
  35699. __declspec(dllimport)
  35700. BOOL
  35701. __stdcall
  35702. InsertMenuItemW(
  35703.          HMENU hmenu,
  35704.          UINT item,
  35705.          BOOL fByPosition,
  35706.          LPCMENUITEMINFOW lpmi);
  35707.  
  35708.  
  35709.  
  35710.  
  35711.  
  35712.  
  35713. __declspec(dllimport)
  35714. BOOL
  35715. __stdcall
  35716. GetMenuItemInfoA(
  35717.          HMENU hmenu,
  35718.          UINT item,
  35719.          BOOL fByPosition,
  35720.             LPMENUITEMINFOA lpmii);
  35721. __declspec(dllimport)
  35722. BOOL
  35723. __stdcall
  35724. GetMenuItemInfoW(
  35725.          HMENU hmenu,
  35726.          UINT item,
  35727.          BOOL fByPosition,
  35728.             LPMENUITEMINFOW lpmii);
  35729.  
  35730.  
  35731.  
  35732.  
  35733.  
  35734.  
  35735. __declspec(dllimport)
  35736. BOOL
  35737. __stdcall
  35738. SetMenuItemInfoA(
  35739.          HMENU hmenu,
  35740.          UINT item,
  35741.          BOOL fByPositon,
  35742.          LPCMENUITEMINFOA lpmii);
  35743. __declspec(dllimport)
  35744. BOOL
  35745. __stdcall
  35746. SetMenuItemInfoW(
  35747.          HMENU hmenu,
  35748.          UINT item,
  35749.          BOOL fByPositon,
  35750.          LPCMENUITEMINFOW lpmii);
  35751. # 7759 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35752. __declspec(dllimport)
  35753. UINT
  35754. __stdcall
  35755. GetMenuDefaultItem(
  35756.          HMENU hMenu,
  35757.          UINT fByPos,
  35758.          UINT gmdiFlags);
  35759.  
  35760. __declspec(dllimport)
  35761. BOOL
  35762. __stdcall
  35763. SetMenuDefaultItem(
  35764.          HMENU hMenu,
  35765.          UINT uItem,
  35766.          UINT fByPos);
  35767.  
  35768. __declspec(dllimport)
  35769. BOOL
  35770. __stdcall
  35771. GetMenuItemRect(
  35772.              HWND hWnd,
  35773.          HMENU hMenu,
  35774.          UINT uItem,
  35775.           LPRECT lprcItem);
  35776.  
  35777. __declspec(dllimport)
  35778. int
  35779. __stdcall
  35780. MenuItemFromPoint(
  35781.              HWND hWnd,
  35782.          HMENU hMenu,
  35783.          POINT ptScreen);
  35784. # 7832 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35785. #pragma endregion
  35786.  
  35787.  
  35788.  
  35789.  
  35790. #pragma region Desktop Family
  35791.  
  35792.  
  35793.  
  35794.  
  35795.  
  35796.  
  35797. typedef struct tagDROPSTRUCT
  35798. {
  35799.     HWND hwndSource;
  35800.     HWND hwndSink;
  35801.     DWORD wFmt;
  35802.     ULONG_PTR dwData;
  35803.     POINT ptDrop;
  35804.     DWORD dwControlData;
  35805. } DROPSTRUCT, *PDROPSTRUCT, *LPDROPSTRUCT;
  35806.  
  35807.  
  35808. #pragma endregion
  35809. # 7867 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35810. #pragma region Desktop Family
  35811.  
  35812.  
  35813. __declspec(dllimport)
  35814. DWORD
  35815. __stdcall
  35816. DragObject(
  35817.          HWND hwndParent,
  35818.          HWND hwndFrom,
  35819.          UINT fmt,
  35820.          ULONG_PTR data,
  35821.              HCURSOR hcur);
  35822.  
  35823. __declspec(dllimport)
  35824. BOOL
  35825. __stdcall
  35826. DragDetect(
  35827.          HWND hwnd,
  35828.          POINT pt);
  35829.  
  35830.  
  35831. #pragma endregion
  35832.  
  35833.  
  35834.  
  35835. #pragma region Desktop Family
  35836.  
  35837.  
  35838. __declspec(dllimport)
  35839. BOOL
  35840. __stdcall
  35841. DrawIcon(
  35842.          HDC hDC,
  35843.          int X,
  35844.          int Y,
  35845.          HICON hIcon);
  35846.  
  35847.  
  35848. #pragma endregion
  35849. # 7943 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35850. #pragma region Desktop Family
  35851.  
  35852.  
  35853. typedef struct tagDRAWTEXTPARAMS
  35854. {
  35855.     UINT cbSize;
  35856.     int iTabLength;
  35857.     int iLeftMargin;
  35858.     int iRightMargin;
  35859.     UINT uiLengthDrawn;
  35860. } DRAWTEXTPARAMS, *LPDRAWTEXTPARAMS;
  35861.  
  35862.  
  35863. #pragma endregion
  35864.  
  35865.  
  35866.  
  35867.  
  35868. #pragma region Desktop Family
  35869. # 7972 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35870. __declspec(dllimport)
  35871.  
  35872. int
  35873. __stdcall
  35874. DrawTextA(
  35875.          HDC hdc,
  35876.  
  35877.  
  35878.     LPCSTR lpchText,
  35879.          int cchText,
  35880.             LPRECT lprc,
  35881.          UINT format);
  35882. __declspec(dllimport)
  35883.  
  35884. int
  35885. __stdcall
  35886. DrawTextW(
  35887.          HDC hdc,
  35888.  
  35889.  
  35890.     LPCWSTR lpchText,
  35891.          int cchText,
  35892.             LPRECT lprc,
  35893.          UINT format);
  35894. # 8030 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35895. __declspec(dllimport)
  35896.  
  35897. int
  35898. __stdcall
  35899. DrawTextExA(
  35900.          HDC hdc,
  35901.  
  35902.  
  35903.  
  35904.     LPSTR lpchText,
  35905.          int cchText,
  35906.             LPRECT lprc,
  35907.          UINT format,
  35908.              LPDRAWTEXTPARAMS lpdtp);
  35909. __declspec(dllimport)
  35910.  
  35911. int
  35912. __stdcall
  35913. DrawTextExW(
  35914.          HDC hdc,
  35915.  
  35916.  
  35917.  
  35918.     LPWSTR lpchText,
  35919.          int cchText,
  35920.             LPRECT lprc,
  35921.          UINT format,
  35922.              LPDRAWTEXTPARAMS lpdtp);
  35923.  
  35924.  
  35925.  
  35926.  
  35927.  
  35928.  
  35929.  
  35930.  
  35931. #pragma endregion
  35932.  
  35933.  
  35934.  
  35935. #pragma region Desktop Family
  35936.  
  35937.  
  35938. __declspec(dllimport)
  35939. BOOL
  35940. __stdcall
  35941. GrayStringA(
  35942.          HDC hDC,
  35943.              HBRUSH hBrush,
  35944.              GRAYSTRINGPROC lpOutputFunc,
  35945.          LPARAM lpData,
  35946.          int nCount,
  35947.          int X,
  35948.          int Y,
  35949.          int nWidth,
  35950.          int nHeight);
  35951. __declspec(dllimport)
  35952. BOOL
  35953. __stdcall
  35954. GrayStringW(
  35955.          HDC hDC,
  35956.              HBRUSH hBrush,
  35957.              GRAYSTRINGPROC lpOutputFunc,
  35958.          LPARAM lpData,
  35959.          int nCount,
  35960.          int X,
  35961.          int Y,
  35962.          int nWidth,
  35963.          int nHeight);
  35964.  
  35965.  
  35966.  
  35967.  
  35968.  
  35969.  
  35970.  
  35971. #pragma endregion
  35972. # 8128 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  35973. #pragma region Desktop Family
  35974.  
  35975.  
  35976. __declspec(dllimport)
  35977. BOOL
  35978. __stdcall
  35979. DrawStateA(
  35980.          HDC hdc,
  35981.              HBRUSH hbrFore,
  35982.              DRAWSTATEPROC qfnCallBack,
  35983.          LPARAM lData,
  35984.          WPARAM wData,
  35985.          int x,
  35986.          int y,
  35987.          int cx,
  35988.          int cy,
  35989.          UINT uFlags);
  35990. __declspec(dllimport)
  35991. BOOL
  35992. __stdcall
  35993. DrawStateW(
  35994.          HDC hdc,
  35995.              HBRUSH hbrFore,
  35996.              DRAWSTATEPROC qfnCallBack,
  35997.          LPARAM lData,
  35998.          WPARAM wData,
  35999.          int x,
  36000.          int y,
  36001.          int cx,
  36002.          int cy,
  36003.          UINT uFlags);
  36004.  
  36005.  
  36006.  
  36007.  
  36008.  
  36009.  
  36010.  
  36011. #pragma endregion
  36012.  
  36013.  
  36014.  
  36015. #pragma region Desktop Family
  36016.  
  36017.  
  36018. __declspec(dllimport)
  36019. LONG
  36020. __stdcall
  36021. TabbedTextOutA(
  36022.          HDC hdc,
  36023.          int x,
  36024.          int y,
  36025.                         LPCSTR lpString,
  36026.          int chCount,
  36027.          int nTabPositions,
  36028.                                   const INT *lpnTabStopPositions,
  36029.          int nTabOrigin);
  36030. __declspec(dllimport)
  36031. LONG
  36032. __stdcall
  36033. TabbedTextOutW(
  36034.          HDC hdc,
  36035.          int x,
  36036.          int y,
  36037.                         LPCWSTR lpString,
  36038.          int chCount,
  36039.          int nTabPositions,
  36040.                                   const INT *lpnTabStopPositions,
  36041.          int nTabOrigin);
  36042.  
  36043.  
  36044.  
  36045.  
  36046.  
  36047.  
  36048. __declspec(dllimport)
  36049. DWORD
  36050. __stdcall
  36051. GetTabbedTextExtentA(
  36052.          HDC hdc,
  36053.                         LPCSTR lpString,
  36054.          int chCount,
  36055.          int nTabPositions,
  36056.                                   const INT *lpnTabStopPositions);
  36057. __declspec(dllimport)
  36058. DWORD
  36059. __stdcall
  36060. GetTabbedTextExtentW(
  36061.          HDC hdc,
  36062.                         LPCWSTR lpString,
  36063.          int chCount,
  36064.          int nTabPositions,
  36065.                                   const INT *lpnTabStopPositions);
  36066.  
  36067.  
  36068.  
  36069.  
  36070.  
  36071.  
  36072. __declspec(dllimport)
  36073. BOOL
  36074. __stdcall
  36075. UpdateWindow(
  36076.          HWND hWnd);
  36077.  
  36078. __declspec(dllimport)
  36079. HWND
  36080. __stdcall
  36081. SetActiveWindow(
  36082.          HWND hWnd);
  36083.  
  36084.  
  36085. __declspec(dllimport)
  36086. HWND
  36087. __stdcall
  36088. GetForegroundWindow(
  36089.     void);
  36090.  
  36091.  
  36092. __declspec(dllimport)
  36093. BOOL
  36094. __stdcall
  36095. PaintDesktop(
  36096.          HDC hdc);
  36097.  
  36098. __declspec(dllimport)
  36099. void
  36100. __stdcall
  36101. SwitchToThisWindow(
  36102.          HWND hwnd,
  36103.          BOOL fUnknown);
  36104.  
  36105.  
  36106.  
  36107. __declspec(dllimport)
  36108. BOOL
  36109. __stdcall
  36110. SetForegroundWindow(
  36111.          HWND hWnd);
  36112.  
  36113.  
  36114. __declspec(dllimport)
  36115. BOOL
  36116. __stdcall
  36117. AllowSetForegroundWindow(
  36118.          DWORD dwProcessId);
  36119.  
  36120.  
  36121.  
  36122. __declspec(dllimport)
  36123. BOOL
  36124. __stdcall
  36125. LockSetForegroundWindow(
  36126.          UINT uLockCode);
  36127.  
  36128.  
  36129.  
  36130.  
  36131.  
  36132.  
  36133. __declspec(dllimport)
  36134. HWND
  36135. __stdcall
  36136. WindowFromDC(
  36137.          HDC hDC);
  36138.  
  36139. __declspec(dllimport)
  36140. HDC
  36141. __stdcall
  36142. GetDC(
  36143.              HWND hWnd);
  36144.  
  36145. __declspec(dllimport)
  36146. HDC
  36147. __stdcall
  36148. GetDCEx(
  36149.              HWND hWnd,
  36150.              HRGN hrgnClip,
  36151.          DWORD flags);
  36152.  
  36153.  
  36154. #pragma endregion
  36155. # 8328 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  36156. #pragma region Desktop Family
  36157.  
  36158.  
  36159. __declspec(dllimport)
  36160. HDC
  36161. __stdcall
  36162. GetWindowDC(
  36163.              HWND hWnd);
  36164.  
  36165. __declspec(dllimport)
  36166. int
  36167. __stdcall
  36168. ReleaseDC(
  36169.              HWND hWnd,
  36170.          HDC hDC);
  36171.  
  36172. __declspec(dllimport)
  36173. HDC
  36174. __stdcall
  36175. BeginPaint(
  36176.          HWND hWnd,
  36177.           LPPAINTSTRUCT lpPaint);
  36178.  
  36179. __declspec(dllimport)
  36180. BOOL
  36181. __stdcall
  36182. EndPaint(
  36183.          HWND hWnd,
  36184.          const PAINTSTRUCT *lpPaint);
  36185.  
  36186. __declspec(dllimport)
  36187. BOOL
  36188. __stdcall
  36189. GetUpdateRect(
  36190.          HWND hWnd,
  36191.               LPRECT lpRect,
  36192.          BOOL bErase);
  36193.  
  36194. __declspec(dllimport)
  36195. int
  36196. __stdcall
  36197. GetUpdateRgn(
  36198.          HWND hWnd,
  36199.          HRGN hRgn,
  36200.          BOOL bErase);
  36201.  
  36202. __declspec(dllimport)
  36203. int
  36204. __stdcall
  36205. SetWindowRgn(
  36206.          HWND hWnd,
  36207.              HRGN hRgn,
  36208.          BOOL bRedraw);
  36209.  
  36210.  
  36211. #pragma endregion
  36212.  
  36213.  
  36214. #pragma region Desktop Family
  36215.  
  36216.  
  36217. __declspec(dllimport)
  36218. int
  36219. __stdcall
  36220. GetWindowRgn(
  36221.          HWND hWnd,
  36222.          HRGN hRgn);
  36223.  
  36224.  
  36225.  
  36226. __declspec(dllimport)
  36227. int
  36228. __stdcall
  36229. GetWindowRgnBox(
  36230.          HWND hWnd,
  36231.           LPRECT lprc);
  36232.  
  36233.  
  36234.  
  36235. __declspec(dllimport)
  36236. int
  36237. __stdcall
  36238. ExcludeUpdateRgn(
  36239.          HDC hDC,
  36240.          HWND hWnd);
  36241.  
  36242. __declspec(dllimport)
  36243. BOOL
  36244. __stdcall
  36245. InvalidateRect(
  36246.              HWND hWnd,
  36247.              const RECT *lpRect,
  36248.          BOOL bErase);
  36249.  
  36250. __declspec(dllimport)
  36251. BOOL
  36252. __stdcall
  36253. ValidateRect(
  36254.              HWND hWnd,
  36255.              const RECT *lpRect);
  36256.  
  36257. __declspec(dllimport)
  36258. BOOL
  36259. __stdcall
  36260. InvalidateRgn(
  36261.          HWND hWnd,
  36262.              HRGN hRgn,
  36263.          BOOL bErase);
  36264.  
  36265. __declspec(dllimport)
  36266. BOOL
  36267. __stdcall
  36268. ValidateRgn(
  36269.          HWND hWnd,
  36270.              HRGN hRgn);
  36271.  
  36272.  
  36273. __declspec(dllimport)
  36274. BOOL
  36275. __stdcall
  36276. RedrawWindow(
  36277.              HWND hWnd,
  36278.              const RECT *lprcUpdate,
  36279.              HRGN hrgnUpdate,
  36280.          UINT flags);
  36281.  
  36282.  
  36283. #pragma endregion
  36284. # 8478 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  36285. #pragma region Desktop Family
  36286.  
  36287.  
  36288.  
  36289.  
  36290.  
  36291.  
  36292. __declspec(dllimport)
  36293. BOOL
  36294. __stdcall
  36295. LockWindowUpdate(
  36296.              HWND hWndLock);
  36297.  
  36298. __declspec(dllimport)
  36299. BOOL
  36300. __stdcall
  36301. ScrollWindow(
  36302.          HWND hWnd,
  36303.          int XAmount,
  36304.          int YAmount,
  36305.              const RECT *lpRect,
  36306.              const RECT *lpClipRect);
  36307.  
  36308. __declspec(dllimport)
  36309. BOOL
  36310. __stdcall
  36311. ScrollDC(
  36312.          HDC hDC,
  36313.          int dx,
  36314.          int dy,
  36315.              const RECT *lprcScroll,
  36316.              const RECT *lprcClip,
  36317.              HRGN hrgnUpdate,
  36318.               LPRECT lprcUpdate);
  36319.  
  36320. __declspec(dllimport)
  36321. int
  36322. __stdcall
  36323. ScrollWindowEx(
  36324.          HWND hWnd,
  36325.          int dx,
  36326.          int dy,
  36327.              const RECT *prcScroll,
  36328.              const RECT *prcClip,
  36329.              HRGN hrgnUpdate,
  36330.               LPRECT prcUpdate,
  36331.          UINT flags);
  36332.  
  36333.  
  36334. #pragma endregion
  36335.  
  36336.  
  36337.  
  36338.  
  36339.  
  36340.  
  36341.  
  36342.  
  36343. #pragma region Desktop Family
  36344.  
  36345.  
  36346.  
  36347.  
  36348. __declspec(dllimport)
  36349. int
  36350. __stdcall
  36351. SetScrollPos(
  36352.          HWND hWnd,
  36353.          int nBar,
  36354.          int nPos,
  36355.          BOOL bRedraw);
  36356.  
  36357. __declspec(dllimport)
  36358. int
  36359. __stdcall
  36360. GetScrollPos(
  36361.          HWND hWnd,
  36362.          int nBar);
  36363.  
  36364. __declspec(dllimport)
  36365. BOOL
  36366. __stdcall
  36367. SetScrollRange(
  36368.          HWND hWnd,
  36369.          int nBar,
  36370.          int nMinPos,
  36371.          int nMaxPos,
  36372.          BOOL bRedraw);
  36373.  
  36374. __declspec(dllimport)
  36375. BOOL
  36376. __stdcall
  36377. GetScrollRange(
  36378.          HWND hWnd,
  36379.          int nBar,
  36380.           LPINT lpMinPos,
  36381.           LPINT lpMaxPos);
  36382.  
  36383. __declspec(dllimport)
  36384. BOOL
  36385. __stdcall
  36386. ShowScrollBar(
  36387.          HWND hWnd,
  36388.          int wBar,
  36389.          BOOL bShow);
  36390.  
  36391. __declspec(dllimport)
  36392. BOOL
  36393. __stdcall
  36394. EnableScrollBar(
  36395.          HWND hWnd,
  36396.          UINT wSBflags,
  36397.          UINT wArrows);
  36398. # 8611 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  36399. __declspec(dllimport)
  36400. BOOL
  36401. __stdcall
  36402. SetPropA(
  36403.          HWND hWnd,
  36404.          LPCSTR lpString,
  36405.              HANDLE hData);
  36406. __declspec(dllimport)
  36407. BOOL
  36408. __stdcall
  36409. SetPropW(
  36410.          HWND hWnd,
  36411.          LPCWSTR lpString,
  36412.              HANDLE hData);
  36413.  
  36414.  
  36415.  
  36416.  
  36417.  
  36418.  
  36419. __declspec(dllimport)
  36420. HANDLE
  36421. __stdcall
  36422. GetPropA(
  36423.          HWND hWnd,
  36424.          LPCSTR lpString);
  36425. __declspec(dllimport)
  36426. HANDLE
  36427. __stdcall
  36428. GetPropW(
  36429.          HWND hWnd,
  36430.          LPCWSTR lpString);
  36431.  
  36432.  
  36433.  
  36434.  
  36435.  
  36436.  
  36437. __declspec(dllimport)
  36438. HANDLE
  36439. __stdcall
  36440. RemovePropA(
  36441.          HWND hWnd,
  36442.          LPCSTR lpString);
  36443. __declspec(dllimport)
  36444. HANDLE
  36445. __stdcall
  36446. RemovePropW(
  36447.          HWND hWnd,
  36448.          LPCWSTR lpString);
  36449.  
  36450.  
  36451.  
  36452.  
  36453.  
  36454.  
  36455. __declspec(dllimport)
  36456. int
  36457. __stdcall
  36458. EnumPropsExA(
  36459.          HWND hWnd,
  36460.          PROPENUMPROCEXA lpEnumFunc,
  36461.          LPARAM lParam);
  36462. __declspec(dllimport)
  36463. int
  36464. __stdcall
  36465. EnumPropsExW(
  36466.          HWND hWnd,
  36467.          PROPENUMPROCEXW lpEnumFunc,
  36468.          LPARAM lParam);
  36469.  
  36470.  
  36471.  
  36472.  
  36473.  
  36474.  
  36475. __declspec(dllimport)
  36476. int
  36477. __stdcall
  36478. EnumPropsA(
  36479.          HWND hWnd,
  36480.          PROPENUMPROCA lpEnumFunc);
  36481. __declspec(dllimport)
  36482. int
  36483. __stdcall
  36484. EnumPropsW(
  36485.          HWND hWnd,
  36486.          PROPENUMPROCW lpEnumFunc);
  36487.  
  36488.  
  36489.  
  36490.  
  36491.  
  36492.  
  36493. __declspec(dllimport)
  36494. BOOL
  36495. __stdcall
  36496. SetWindowTextA(
  36497.          HWND hWnd,
  36498.              LPCSTR lpString);
  36499. __declspec(dllimport)
  36500. BOOL
  36501. __stdcall
  36502. SetWindowTextW(
  36503.          HWND hWnd,
  36504.              LPCWSTR lpString);
  36505.  
  36506.  
  36507.  
  36508.  
  36509.  
  36510.  
  36511.  
  36512. __declspec(dllimport)
  36513. int
  36514. __stdcall
  36515. GetWindowTextA(
  36516.          HWND hWnd,
  36517.                             LPSTR lpString,
  36518.          int nMaxCount);
  36519.  
  36520. __declspec(dllimport)
  36521. int
  36522. __stdcall
  36523. GetWindowTextW(
  36524.          HWND hWnd,
  36525.                             LPWSTR lpString,
  36526.          int nMaxCount);
  36527.  
  36528.  
  36529.  
  36530.  
  36531.  
  36532.  
  36533. __declspec(dllimport)
  36534. int
  36535. __stdcall
  36536. GetWindowTextLengthA(
  36537.          HWND hWnd);
  36538. __declspec(dllimport)
  36539. int
  36540. __stdcall
  36541. GetWindowTextLengthW(
  36542.          HWND hWnd);
  36543.  
  36544.  
  36545.  
  36546.  
  36547.  
  36548.  
  36549. __declspec(dllimport)
  36550. BOOL
  36551. __stdcall
  36552. GetClientRect(
  36553.          HWND hWnd,
  36554.           LPRECT lpRect);
  36555.  
  36556. __declspec(dllimport)
  36557. BOOL
  36558. __stdcall
  36559. GetWindowRect(
  36560.          HWND hWnd,
  36561.           LPRECT lpRect);
  36562.  
  36563. __declspec(dllimport)
  36564. BOOL
  36565. __stdcall
  36566. AdjustWindowRect(
  36567.             LPRECT lpRect,
  36568.          DWORD dwStyle,
  36569.          BOOL bMenu);
  36570.  
  36571. __declspec(dllimport)
  36572. BOOL
  36573. __stdcall
  36574. AdjustWindowRectEx(
  36575.             LPRECT lpRect,
  36576.          DWORD dwStyle,
  36577.          BOOL bMenu,
  36578.          DWORD dwExStyle);
  36579.  
  36580.  
  36581. __declspec(dllimport)
  36582. BOOL
  36583. __stdcall
  36584. AdjustWindowRectExForDpi(
  36585.             LPRECT lpRect,
  36586.          DWORD dwStyle,
  36587.          BOOL bMenu,
  36588.          DWORD dwExStyle,
  36589.          UINT dpi);
  36590.  
  36591.  
  36592.  
  36593.  
  36594. #pragma endregion
  36595.  
  36596.  
  36597.  
  36598.  
  36599.  
  36600. #pragma region Desktop Family
  36601.  
  36602.  
  36603. typedef struct tagHELPINFO
  36604. {
  36605.     UINT cbSize;
  36606.     int iContextType;
  36607.     int iCtrlId;
  36608.     HANDLE hItemHandle;
  36609.     DWORD_PTR dwContextId;
  36610.     POINT MousePos;
  36611. } HELPINFO, *LPHELPINFO;
  36612.  
  36613. __declspec(dllimport)
  36614. BOOL
  36615. __stdcall
  36616. SetWindowContextHelpId(
  36617.          HWND,
  36618.          DWORD);
  36619.  
  36620. __declspec(dllimport)
  36621. DWORD
  36622. __stdcall
  36623. GetWindowContextHelpId(
  36624.          HWND);
  36625.  
  36626. __declspec(dllimport)
  36627. BOOL
  36628. __stdcall
  36629. SetMenuContextHelpId(
  36630.          HMENU,
  36631.          DWORD);
  36632.  
  36633. __declspec(dllimport)
  36634. DWORD
  36635. __stdcall
  36636. GetMenuContextHelpId(
  36637.          HMENU);
  36638.  
  36639.  
  36640. #pragma endregion
  36641. # 8927 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  36642. #pragma region Desktop Family
  36643.  
  36644.  
  36645. __declspec(dllimport)
  36646. int
  36647. __stdcall
  36648. MessageBoxA(
  36649.              HWND hWnd,
  36650.              LPCSTR lpText,
  36651.              LPCSTR lpCaption,
  36652.          UINT uType);
  36653. __declspec(dllimport)
  36654. int
  36655. __stdcall
  36656. MessageBoxW(
  36657.              HWND hWnd,
  36658.              LPCWSTR lpText,
  36659.              LPCWSTR lpCaption,
  36660.          UINT uType);
  36661. # 8976 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  36662. __declspec(dllimport)
  36663. int
  36664. __stdcall
  36665. MessageBoxExA(
  36666.              HWND hWnd,
  36667.              LPCSTR lpText,
  36668.              LPCSTR lpCaption,
  36669.          UINT uType,
  36670.          WORD wLanguageId);
  36671. __declspec(dllimport)
  36672. int
  36673. __stdcall
  36674. MessageBoxExW(
  36675.              HWND hWnd,
  36676.              LPCWSTR lpText,
  36677.              LPCWSTR lpCaption,
  36678.          UINT uType,
  36679.          WORD wLanguageId);
  36680. # 9002 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  36681. typedef void (__stdcall *MSGBOXCALLBACK)(LPHELPINFO lpHelpInfo);
  36682.  
  36683. typedef struct tagMSGBOXPARAMSA
  36684. {
  36685.     UINT cbSize;
  36686.     HWND hwndOwner;
  36687.     HINSTANCE hInstance;
  36688.     LPCSTR lpszText;
  36689.     LPCSTR lpszCaption;
  36690.     DWORD dwStyle;
  36691.     LPCSTR lpszIcon;
  36692.     DWORD_PTR dwContextHelpId;
  36693.     MSGBOXCALLBACK lpfnMsgBoxCallback;
  36694.     DWORD dwLanguageId;
  36695. } MSGBOXPARAMSA, *PMSGBOXPARAMSA, *LPMSGBOXPARAMSA;
  36696. typedef struct tagMSGBOXPARAMSW
  36697. {
  36698.     UINT cbSize;
  36699.     HWND hwndOwner;
  36700.     HINSTANCE hInstance;
  36701.     LPCWSTR lpszText;
  36702.     LPCWSTR lpszCaption;
  36703.     DWORD dwStyle;
  36704.     LPCWSTR lpszIcon;
  36705.     DWORD_PTR dwContextHelpId;
  36706.     MSGBOXCALLBACK lpfnMsgBoxCallback;
  36707.     DWORD dwLanguageId;
  36708. } MSGBOXPARAMSW, *PMSGBOXPARAMSW, *LPMSGBOXPARAMSW;
  36709.  
  36710.  
  36711.  
  36712.  
  36713.  
  36714. typedef MSGBOXPARAMSA MSGBOXPARAMS;
  36715. typedef PMSGBOXPARAMSA PMSGBOXPARAMS;
  36716. typedef LPMSGBOXPARAMSA LPMSGBOXPARAMS;
  36717.  
  36718.  
  36719. __declspec(dllimport)
  36720. int
  36721. __stdcall
  36722. MessageBoxIndirectA(
  36723.          const MSGBOXPARAMSA * lpmbp);
  36724. __declspec(dllimport)
  36725. int
  36726. __stdcall
  36727. MessageBoxIndirectW(
  36728.          const MSGBOXPARAMSW * lpmbp);
  36729. # 9059 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  36730. #pragma endregion
  36731.  
  36732.  
  36733. #pragma region Desktop Family
  36734.  
  36735.  
  36736. __declspec(dllimport)
  36737. BOOL
  36738. __stdcall
  36739. MessageBeep(
  36740.          UINT uType);
  36741.  
  36742.  
  36743. #pragma endregion
  36744.  
  36745.  
  36746.  
  36747. #pragma region Desktop Family
  36748.  
  36749.  
  36750.  
  36751. __declspec(dllimport)
  36752. int
  36753. __stdcall
  36754. ShowCursor(
  36755.          BOOL bShow);
  36756.  
  36757. __declspec(dllimport)
  36758. BOOL
  36759. __stdcall
  36760. SetCursorPos(
  36761.          int X,
  36762.          int Y);
  36763.  
  36764.  
  36765. __declspec(dllimport)
  36766. BOOL
  36767. __stdcall
  36768. SetPhysicalCursorPos(
  36769.          int X,
  36770.          int Y);
  36771.  
  36772.  
  36773. __declspec(dllimport)
  36774. HCURSOR
  36775. __stdcall
  36776. SetCursor(
  36777.              HCURSOR hCursor);
  36778.  
  36779. __declspec(dllimport)
  36780. BOOL
  36781. __stdcall
  36782. GetCursorPos(
  36783.           LPPOINT lpPoint);
  36784.  
  36785.  
  36786. __declspec(dllimport)
  36787. BOOL
  36788. __stdcall
  36789. GetPhysicalCursorPos(
  36790.           LPPOINT lpPoint);
  36791.  
  36792.  
  36793.  
  36794. __declspec(dllimport)
  36795. BOOL
  36796. __stdcall
  36797. GetClipCursor(
  36798.           LPRECT lpRect);
  36799.  
  36800. __declspec(dllimport)
  36801. HCURSOR
  36802. __stdcall
  36803. GetCursor(
  36804.     void);
  36805.  
  36806. __declspec(dllimport)
  36807. BOOL
  36808. __stdcall
  36809. CreateCaret(
  36810.          HWND hWnd,
  36811.              HBITMAP hBitmap,
  36812.          int nWidth,
  36813.          int nHeight);
  36814.  
  36815. __declspec(dllimport)
  36816. UINT
  36817. __stdcall
  36818. GetCaretBlinkTime(
  36819.     void);
  36820.  
  36821. __declspec(dllimport)
  36822. BOOL
  36823. __stdcall
  36824. SetCaretBlinkTime(
  36825.          UINT uMSeconds);
  36826.  
  36827. __declspec(dllimport)
  36828. BOOL
  36829. __stdcall
  36830. DestroyCaret(
  36831.     void);
  36832.  
  36833. __declspec(dllimport)
  36834. BOOL
  36835. __stdcall
  36836. HideCaret(
  36837.              HWND hWnd);
  36838.  
  36839. __declspec(dllimport)
  36840. BOOL
  36841. __stdcall
  36842. ShowCaret(
  36843.              HWND hWnd);
  36844.  
  36845. __declspec(dllimport)
  36846. BOOL
  36847. __stdcall
  36848. SetCaretPos(
  36849.          int X,
  36850.          int Y);
  36851.  
  36852. __declspec(dllimport)
  36853. BOOL
  36854. __stdcall
  36855. GetCaretPos(
  36856.           LPPOINT lpPoint);
  36857.  
  36858. __declspec(dllimport)
  36859. BOOL
  36860. __stdcall
  36861. ClientToScreen(
  36862.          HWND hWnd,
  36863.             LPPOINT lpPoint);
  36864.  
  36865. __declspec(dllimport)
  36866. BOOL
  36867. __stdcall
  36868. ScreenToClient(
  36869.          HWND hWnd,
  36870.             LPPOINT lpPoint);
  36871.  
  36872.  
  36873. __declspec(dllimport)
  36874. BOOL
  36875. __stdcall
  36876. LogicalToPhysicalPoint(
  36877.          HWND hWnd,
  36878.             LPPOINT lpPoint);
  36879.  
  36880. __declspec(dllimport)
  36881. BOOL
  36882. __stdcall
  36883. PhysicalToLogicalPoint(
  36884.          HWND hWnd,
  36885.             LPPOINT lpPoint);
  36886.  
  36887.  
  36888.  
  36889.  
  36890. __declspec(dllimport)
  36891. BOOL
  36892. __stdcall
  36893. LogicalToPhysicalPointForPerMonitorDPI(
  36894.              HWND hWnd,
  36895.             LPPOINT lpPoint);
  36896.  
  36897. __declspec(dllimport)
  36898. BOOL
  36899. __stdcall
  36900. PhysicalToLogicalPointForPerMonitorDPI(
  36901.              HWND hWnd,
  36902.             LPPOINT lpPoint);
  36903.  
  36904.  
  36905.  
  36906. __declspec(dllimport)
  36907. int
  36908. __stdcall
  36909. MapWindowPoints(
  36910.              HWND hWndFrom,
  36911.              HWND hWndTo,
  36912.                              LPPOINT lpPoints,
  36913.          UINT cPoints);
  36914.  
  36915. __declspec(dllimport)
  36916. HWND
  36917. __stdcall
  36918. WindowFromPoint(
  36919.          POINT Point);
  36920.  
  36921.  
  36922. __declspec(dllimport)
  36923. HWND
  36924. __stdcall
  36925. WindowFromPhysicalPoint(
  36926.          POINT Point);
  36927.  
  36928.  
  36929. __declspec(dllimport)
  36930. HWND
  36931. __stdcall
  36932. ChildWindowFromPoint(
  36933.          HWND hWndParent,
  36934.          POINT Point);
  36935.  
  36936.  
  36937. #pragma endregion
  36938.  
  36939. #pragma region Desktop or PC Family
  36940.  
  36941. __declspec(dllimport)
  36942. BOOL
  36943. __stdcall
  36944. ClipCursor(
  36945.              const RECT *lpRect);
  36946.  
  36947. #pragma endregion
  36948.  
  36949.  
  36950.  
  36951.  
  36952.  
  36953.  
  36954.  
  36955. #pragma region Desktop Family
  36956.  
  36957.  
  36958. __declspec(dllimport)
  36959. HWND
  36960. __stdcall
  36961. ChildWindowFromPointEx(
  36962.          HWND hwnd,
  36963.          POINT pt,
  36964.          UINT flags);
  36965.  
  36966.  
  36967. #pragma endregion
  36968. # 9363 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  36969. #pragma region Desktop Family
  36970.  
  36971.  
  36972. __declspec(dllimport)
  36973. DWORD
  36974. __stdcall
  36975. GetSysColor(
  36976.          int nIndex);
  36977.  
  36978.  
  36979. __declspec(dllimport)
  36980. HBRUSH
  36981. __stdcall
  36982. GetSysColorBrush(
  36983.          int nIndex);
  36984.  
  36985.  
  36986.  
  36987.  
  36988. __declspec(dllimport)
  36989. BOOL
  36990. __stdcall
  36991. SetSysColors(
  36992.          int cElements,
  36993.                           const INT * lpaElements,
  36994.                           const COLORREF * lpaRgbValues);
  36995.  
  36996.  
  36997. #pragma endregion
  36998.  
  36999.  
  37000.  
  37001. #pragma region Desktop Family
  37002.  
  37003.  
  37004. __declspec(dllimport)
  37005. BOOL
  37006. __stdcall
  37007. DrawFocusRect(
  37008.          HDC hDC,
  37009.          const RECT * lprc);
  37010.  
  37011. __declspec(dllimport)
  37012. int
  37013. __stdcall
  37014. FillRect(
  37015.          HDC hDC,
  37016.          const RECT *lprc,
  37017.          HBRUSH hbr);
  37018.  
  37019. __declspec(dllimport)
  37020. int
  37021. __stdcall
  37022. FrameRect(
  37023.          HDC hDC,
  37024.          const RECT *lprc,
  37025.          HBRUSH hbr);
  37026.  
  37027. __declspec(dllimport)
  37028. BOOL
  37029. __stdcall
  37030. InvertRect(
  37031.          HDC hDC,
  37032.          const RECT *lprc);
  37033.  
  37034. __declspec(dllimport)
  37035. BOOL
  37036. __stdcall
  37037. SetRect(
  37038.           LPRECT lprc,
  37039.          int xLeft,
  37040.          int yTop,
  37041.          int xRight,
  37042.          int yBottom);
  37043.  
  37044. __declspec(dllimport)
  37045. BOOL
  37046. __stdcall
  37047. SetRectEmpty(
  37048.           LPRECT lprc);
  37049.  
  37050. __declspec(dllimport)
  37051. BOOL
  37052. __stdcall
  37053. CopyRect(
  37054.           LPRECT lprcDst,
  37055.          const RECT *lprcSrc);
  37056.  
  37057. __declspec(dllimport)
  37058. BOOL
  37059. __stdcall
  37060. InflateRect(
  37061.             LPRECT lprc,
  37062.          int dx,
  37063.          int dy);
  37064.  
  37065. __declspec(dllimport)
  37066. BOOL
  37067. __stdcall
  37068. IntersectRect(
  37069.           LPRECT lprcDst,
  37070.          const RECT *lprcSrc1,
  37071.          const RECT *lprcSrc2);
  37072.  
  37073. __declspec(dllimport)
  37074. BOOL
  37075. __stdcall
  37076. UnionRect(
  37077.           LPRECT lprcDst,
  37078.          const RECT *lprcSrc1,
  37079.          const RECT *lprcSrc2);
  37080.  
  37081. __declspec(dllimport)
  37082. BOOL
  37083. __stdcall
  37084. SubtractRect(
  37085.           LPRECT lprcDst,
  37086.          const RECT *lprcSrc1,
  37087.          const RECT *lprcSrc2);
  37088.  
  37089. __declspec(dllimport)
  37090. BOOL
  37091. __stdcall
  37092. OffsetRect(
  37093.             LPRECT lprc,
  37094.          int dx,
  37095.          int dy);
  37096.  
  37097. __declspec(dllimport)
  37098. BOOL
  37099. __stdcall
  37100. IsRectEmpty(
  37101.          const RECT *lprc);
  37102.  
  37103. __declspec(dllimport)
  37104. BOOL
  37105. __stdcall
  37106. EqualRect(
  37107.          const RECT *lprc1,
  37108.          const RECT *lprc2);
  37109.  
  37110. __declspec(dllimport)
  37111. BOOL
  37112. __stdcall
  37113. PtInRect(
  37114.          const RECT *lprc,
  37115.          POINT pt);
  37116.  
  37117.  
  37118.  
  37119. __declspec(dllimport)
  37120. WORD
  37121. __stdcall
  37122. GetWindowWord(
  37123.          HWND hWnd,
  37124.          int nIndex);
  37125.  
  37126. __declspec(dllimport)
  37127. WORD
  37128. __stdcall
  37129. SetWindowWord(
  37130.          HWND hWnd,
  37131.          int nIndex,
  37132.          WORD wNewWord);
  37133.  
  37134. __declspec(dllimport)
  37135. LONG
  37136. __stdcall
  37137. GetWindowLongA(
  37138.          HWND hWnd,
  37139.          int nIndex);
  37140. __declspec(dllimport)
  37141. LONG
  37142. __stdcall
  37143. GetWindowLongW(
  37144.          HWND hWnd,
  37145.          int nIndex);
  37146.  
  37147.  
  37148.  
  37149.  
  37150.  
  37151.  
  37152. __declspec(dllimport)
  37153. LONG
  37154. __stdcall
  37155. SetWindowLongA(
  37156.          HWND hWnd,
  37157.          int nIndex,
  37158.          LONG dwNewLong);
  37159. __declspec(dllimport)
  37160. LONG
  37161. __stdcall
  37162. SetWindowLongW(
  37163.          HWND hWnd,
  37164.          int nIndex,
  37165.          LONG dwNewLong);
  37166. # 9626 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37167. __declspec(dllimport)
  37168. WORD
  37169. __stdcall
  37170. GetClassWord(
  37171.          HWND hWnd,
  37172.          int nIndex);
  37173.  
  37174. __declspec(dllimport)
  37175. WORD
  37176. __stdcall
  37177. SetClassWord(
  37178.          HWND hWnd,
  37179.          int nIndex,
  37180.          WORD wNewWord);
  37181.  
  37182. __declspec(dllimport)
  37183. DWORD
  37184. __stdcall
  37185. GetClassLongA(
  37186.          HWND hWnd,
  37187.          int nIndex);
  37188. __declspec(dllimport)
  37189. DWORD
  37190. __stdcall
  37191. GetClassLongW(
  37192.          HWND hWnd,
  37193.          int nIndex);
  37194.  
  37195.  
  37196.  
  37197.  
  37198.  
  37199.  
  37200. __declspec(dllimport)
  37201. DWORD
  37202. __stdcall
  37203. SetClassLongA(
  37204.          HWND hWnd,
  37205.          int nIndex,
  37206.          LONG dwNewLong);
  37207. __declspec(dllimport)
  37208. DWORD
  37209. __stdcall
  37210. SetClassLongW(
  37211.          HWND hWnd,
  37212.          int nIndex,
  37213.          LONG dwNewLong);
  37214. # 9742 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37215. __declspec(dllimport)
  37216. BOOL
  37217. __stdcall
  37218. GetProcessDefaultLayout(
  37219.           DWORD *pdwDefaultLayout);
  37220.  
  37221. __declspec(dllimport)
  37222. BOOL
  37223. __stdcall
  37224. SetProcessDefaultLayout(
  37225.          DWORD dwDefaultLayout);
  37226.  
  37227.  
  37228. __declspec(dllimport)
  37229. HWND
  37230. __stdcall
  37231. GetDesktopWindow(
  37232.     void);
  37233.  
  37234.  
  37235. __declspec(dllimport)
  37236. HWND
  37237. __stdcall
  37238. GetParent(
  37239.          HWND hWnd);
  37240.  
  37241. __declspec(dllimport)
  37242. HWND
  37243. __stdcall
  37244. SetParent(
  37245.          HWND hWndChild,
  37246.              HWND hWndNewParent);
  37247.  
  37248. __declspec(dllimport)
  37249. BOOL
  37250. __stdcall
  37251. EnumChildWindows(
  37252.              HWND hWndParent,
  37253.          WNDENUMPROC lpEnumFunc,
  37254.          LPARAM lParam);
  37255.  
  37256.  
  37257. __declspec(dllimport)
  37258. HWND
  37259. __stdcall
  37260. FindWindowA(
  37261.              LPCSTR lpClassName,
  37262.              LPCSTR lpWindowName);
  37263. __declspec(dllimport)
  37264. HWND
  37265. __stdcall
  37266. FindWindowW(
  37267.              LPCWSTR lpClassName,
  37268.              LPCWSTR lpWindowName);
  37269.  
  37270.  
  37271.  
  37272.  
  37273.  
  37274.  
  37275.  
  37276. __declspec(dllimport)
  37277. HWND
  37278. __stdcall
  37279. FindWindowExA(
  37280.              HWND hWndParent,
  37281.              HWND hWndChildAfter,
  37282.              LPCSTR lpszClass,
  37283.              LPCSTR lpszWindow);
  37284. __declspec(dllimport)
  37285. HWND
  37286. __stdcall
  37287. FindWindowExW(
  37288.              HWND hWndParent,
  37289.              HWND hWndChildAfter,
  37290.              LPCWSTR lpszClass,
  37291.              LPCWSTR lpszWindow);
  37292.  
  37293.  
  37294.  
  37295.  
  37296.  
  37297.  
  37298. __declspec(dllimport)
  37299. HWND
  37300. __stdcall
  37301. GetShellWindow(
  37302.     void);
  37303.  
  37304.  
  37305.  
  37306.  
  37307. __declspec(dllimport)
  37308. BOOL
  37309. __stdcall
  37310. RegisterShellHookWindow(
  37311.          HWND hwnd);
  37312.  
  37313. __declspec(dllimport)
  37314. BOOL
  37315. __stdcall
  37316. DeregisterShellHookWindow(
  37317.          HWND hwnd);
  37318.  
  37319. __declspec(dllimport)
  37320. BOOL
  37321. __stdcall
  37322. EnumWindows(
  37323.          WNDENUMPROC lpEnumFunc,
  37324.          LPARAM lParam);
  37325.  
  37326. __declspec(dllimport)
  37327. BOOL
  37328. __stdcall
  37329. EnumThreadWindows(
  37330.          DWORD dwThreadId,
  37331.          WNDENUMPROC lpfn,
  37332.          LPARAM lParam);
  37333.  
  37334.  
  37335.  
  37336.  
  37337. __declspec(dllimport)
  37338. int
  37339. __stdcall
  37340. GetClassNameA(
  37341.          HWND hWnd,
  37342.                                        LPSTR lpClassName,
  37343.          int nMaxCount
  37344.     );
  37345. __declspec(dllimport)
  37346. int
  37347. __stdcall
  37348. GetClassNameW(
  37349.          HWND hWnd,
  37350.                                        LPWSTR lpClassName,
  37351.          int nMaxCount
  37352.     );
  37353. # 9910 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37354. __declspec(dllimport)
  37355. HWND
  37356. __stdcall
  37357. GetTopWindow(
  37358.              HWND hWnd);
  37359.  
  37360.  
  37361.  
  37362.  
  37363.  
  37364. __declspec(dllimport)
  37365. DWORD
  37366. __stdcall
  37367. GetWindowThreadProcessId(
  37368.          HWND hWnd,
  37369.               LPDWORD lpdwProcessId);
  37370.  
  37371.  
  37372.  
  37373. __declspec(dllimport)
  37374. BOOL
  37375. __stdcall
  37376. IsGUIThread(
  37377.          BOOL bConvert);
  37378.  
  37379.  
  37380.  
  37381.  
  37382.  
  37383.  
  37384.  
  37385. __declspec(dllimport)
  37386. HWND
  37387. __stdcall
  37388. GetLastActivePopup(
  37389.          HWND hWnd);
  37390. # 9963 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37391. __declspec(dllimport)
  37392. HWND
  37393. __stdcall
  37394. GetWindow(
  37395.          HWND hWnd,
  37396.          UINT uCmd);
  37397.  
  37398.  
  37399.  
  37400.  
  37401.  
  37402.  
  37403. __declspec(dllimport)
  37404. HHOOK
  37405. __stdcall
  37406. SetWindowsHookA(
  37407.          int nFilterType,
  37408.          HOOKPROC pfnFilterProc);
  37409. __declspec(dllimport)
  37410. HHOOK
  37411. __stdcall
  37412. SetWindowsHookW(
  37413.          int nFilterType,
  37414.          HOOKPROC pfnFilterProc);
  37415. # 10015 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37416. __declspec(dllimport)
  37417. BOOL
  37418. __stdcall
  37419. UnhookWindowsHook(
  37420.          int nCode,
  37421.          HOOKPROC pfnFilterProc);
  37422.  
  37423. __declspec(dllimport)
  37424. HHOOK
  37425. __stdcall
  37426. SetWindowsHookExA(
  37427.          int idHook,
  37428.          HOOKPROC lpfn,
  37429.              HINSTANCE hmod,
  37430.          DWORD dwThreadId);
  37431. __declspec(dllimport)
  37432. HHOOK
  37433. __stdcall
  37434. SetWindowsHookExW(
  37435.          int idHook,
  37436.          HOOKPROC lpfn,
  37437.              HINSTANCE hmod,
  37438.          DWORD dwThreadId);
  37439.  
  37440.  
  37441.  
  37442.  
  37443.  
  37444.  
  37445. __declspec(dllimport)
  37446. BOOL
  37447. __stdcall
  37448. UnhookWindowsHookEx(
  37449.          HHOOK hhk);
  37450.  
  37451. __declspec(dllimport)
  37452. LRESULT
  37453. __stdcall
  37454. CallNextHookEx(
  37455.              HHOOK hhk,
  37456.          int nCode,
  37457.          WPARAM wParam,
  37458.          LPARAM lParam);
  37459. # 10072 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37460. #pragma endregion
  37461. # 10149 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37462. #pragma region Desktop Family
  37463.  
  37464.  
  37465.  
  37466.  
  37467. __declspec(dllimport)
  37468. BOOL
  37469. __stdcall
  37470. CheckMenuRadioItem(
  37471.          HMENU hmenu,
  37472.          UINT first,
  37473.          UINT last,
  37474.          UINT check,
  37475.          UINT flags);
  37476.  
  37477.  
  37478.  
  37479.  
  37480.  
  37481. typedef struct {
  37482.     WORD versionNumber;
  37483.     WORD offset;
  37484. } MENUITEMTEMPLATEHEADER, *PMENUITEMTEMPLATEHEADER;
  37485.  
  37486. typedef struct {
  37487.     WORD mtOption;
  37488.     WORD mtID;
  37489.     WCHAR mtString[1];
  37490. } MENUITEMTEMPLATE, *PMENUITEMTEMPLATE;
  37491.  
  37492.  
  37493.  
  37494. #pragma endregion
  37495. # 10231 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37496. #pragma region Desktop Family
  37497.  
  37498.  
  37499. __declspec(dllimport)
  37500. HBITMAP
  37501. __stdcall
  37502. LoadBitmapA(
  37503.              HINSTANCE hInstance,
  37504.          LPCSTR lpBitmapName);
  37505. __declspec(dllimport)
  37506. HBITMAP
  37507. __stdcall
  37508. LoadBitmapW(
  37509.              HINSTANCE hInstance,
  37510.          LPCWSTR lpBitmapName);
  37511.  
  37512.  
  37513.  
  37514.  
  37515.  
  37516.  
  37517. __declspec(dllimport)
  37518. HCURSOR
  37519. __stdcall
  37520. LoadCursorA(
  37521.              HINSTANCE hInstance,
  37522.          LPCSTR lpCursorName);
  37523. __declspec(dllimport)
  37524. HCURSOR
  37525. __stdcall
  37526. LoadCursorW(
  37527.              HINSTANCE hInstance,
  37528.          LPCWSTR lpCursorName);
  37529.  
  37530.  
  37531.  
  37532.  
  37533.  
  37534.  
  37535. __declspec(dllimport)
  37536. HCURSOR
  37537. __stdcall
  37538. LoadCursorFromFileA(
  37539.          LPCSTR lpFileName);
  37540. __declspec(dllimport)
  37541. HCURSOR
  37542. __stdcall
  37543. LoadCursorFromFileW(
  37544.          LPCWSTR lpFileName);
  37545.  
  37546.  
  37547.  
  37548.  
  37549.  
  37550.  
  37551. __declspec(dllimport)
  37552. HCURSOR
  37553. __stdcall
  37554. CreateCursor(
  37555.              HINSTANCE hInst,
  37556.          int xHotSpot,
  37557.          int yHotSpot,
  37558.          int nWidth,
  37559.          int nHeight,
  37560.          const void *pvANDPlane,
  37561.          const void *pvXORPlane);
  37562.  
  37563. __declspec(dllimport)
  37564. BOOL
  37565. __stdcall
  37566. DestroyCursor(
  37567.          HCURSOR hCursor);
  37568. # 10315 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37569. #pragma endregion
  37570. # 10346 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37571. #pragma region Desktop Family
  37572.  
  37573.  
  37574. __declspec(dllimport)
  37575. BOOL
  37576. __stdcall
  37577. SetSystemCursor(
  37578.          HCURSOR hcur,
  37579.          DWORD id);
  37580.  
  37581. typedef struct _ICONINFO {
  37582.     BOOL fIcon;
  37583.     DWORD xHotspot;
  37584.     DWORD yHotspot;
  37585.     HBITMAP hbmMask;
  37586.     HBITMAP hbmColor;
  37587. } ICONINFO;
  37588. typedef ICONINFO *PICONINFO;
  37589.  
  37590. __declspec(dllimport)
  37591. HICON
  37592. __stdcall
  37593. LoadIconA(
  37594.              HINSTANCE hInstance,
  37595.          LPCSTR lpIconName);
  37596. __declspec(dllimport)
  37597. HICON
  37598. __stdcall
  37599. LoadIconW(
  37600.              HINSTANCE hInstance,
  37601.          LPCWSTR lpIconName);
  37602.  
  37603.  
  37604.  
  37605.  
  37606.  
  37607.  
  37608.  
  37609. __declspec(dllimport)
  37610. UINT
  37611. __stdcall
  37612. PrivateExtractIconsA(
  37613.                          LPCSTR szFileName,
  37614.          int nIconIndex,
  37615.          int cxIcon,
  37616.          int cyIcon,
  37617.                              HICON *phicon,
  37618.                              UINT *piconid,
  37619.          UINT nIcons,
  37620.          UINT flags);
  37621. __declspec(dllimport)
  37622. UINT
  37623. __stdcall
  37624. PrivateExtractIconsW(
  37625.                          LPCWSTR szFileName,
  37626.          int nIconIndex,
  37627.          int cxIcon,
  37628.          int cyIcon,
  37629.                              HICON *phicon,
  37630.                              UINT *piconid,
  37631.          UINT nIcons,
  37632.          UINT flags);
  37633.  
  37634.  
  37635.  
  37636.  
  37637.  
  37638.  
  37639. __declspec(dllimport)
  37640. HICON
  37641. __stdcall
  37642. CreateIcon(
  37643.              HINSTANCE hInstance,
  37644.          int nWidth,
  37645.          int nHeight,
  37646.          BYTE cPlanes,
  37647.          BYTE cBitsPixel,
  37648.          const BYTE *lpbANDbits,
  37649.          const BYTE *lpbXORbits);
  37650.  
  37651. __declspec(dllimport)
  37652. BOOL
  37653. __stdcall
  37654. DestroyIcon(
  37655.          HICON hIcon);
  37656.  
  37657. __declspec(dllimport)
  37658. int
  37659. __stdcall
  37660. LookupIconIdFromDirectory(
  37661.                                        PBYTE presbits,
  37662.          BOOL fIcon);
  37663.  
  37664.  
  37665. __declspec(dllimport)
  37666. int
  37667. __stdcall
  37668. LookupIconIdFromDirectoryEx(
  37669.                                        PBYTE presbits,
  37670.          BOOL fIcon,
  37671.          int cxDesired,
  37672.          int cyDesired,
  37673.          UINT Flags);
  37674.  
  37675.  
  37676. __declspec(dllimport)
  37677. HICON
  37678. __stdcall
  37679. CreateIconFromResource(
  37680.                                 PBYTE presbits,
  37681.          DWORD dwResSize,
  37682.          BOOL fIcon,
  37683.          DWORD dwVer);
  37684.  
  37685.  
  37686. __declspec(dllimport)
  37687. HICON
  37688. __stdcall
  37689. CreateIconFromResourceEx(
  37690.                                 PBYTE presbits,
  37691.          DWORD dwResSize,
  37692.          BOOL fIcon,
  37693.          DWORD dwVer,
  37694.          int cxDesired,
  37695.          int cyDesired,
  37696.          UINT Flags);
  37697.  
  37698.  
  37699. typedef struct tagCURSORSHAPE
  37700. {
  37701.     int xHotSpot;
  37702.     int yHotSpot;
  37703.     int cx;
  37704.     int cy;
  37705.     int cbWidth;
  37706.     BYTE Planes;
  37707.     BYTE BitsPixel;
  37708. } CURSORSHAPE, *LPCURSORSHAPE;
  37709.  
  37710.  
  37711.  
  37712. #pragma endregion
  37713. # 10509 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37714. #pragma region Desktop Family
  37715.  
  37716.  
  37717. __declspec(dllimport)
  37718. HANDLE
  37719. __stdcall
  37720. LoadImageA(
  37721.              HINSTANCE hInst,
  37722.          LPCSTR name,
  37723.          UINT type,
  37724.          int cx,
  37725.          int cy,
  37726.          UINT fuLoad);
  37727. __declspec(dllimport)
  37728. HANDLE
  37729. __stdcall
  37730. LoadImageW(
  37731.              HINSTANCE hInst,
  37732.          LPCWSTR name,
  37733.          UINT type,
  37734.          int cx,
  37735.          int cy,
  37736.          UINT fuLoad);
  37737.  
  37738.  
  37739.  
  37740.  
  37741.  
  37742.  
  37743. __declspec(dllimport)
  37744. HANDLE
  37745. __stdcall
  37746. CopyImage(
  37747.          HANDLE h,
  37748.          UINT type,
  37749.          int cx,
  37750.          int cy,
  37751.          UINT flags);
  37752. # 10557 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37753. __declspec(dllimport) BOOL __stdcall DrawIconEx(
  37754.          HDC hdc,
  37755.          int xLeft,
  37756.          int yTop,
  37757.          HICON hIcon,
  37758.          int cxWidth,
  37759.          int cyWidth,
  37760.          UINT istepIfAniCur,
  37761.              HBRUSH hbrFlickerFreeDraw,
  37762.          UINT diFlags);
  37763.  
  37764.  
  37765. #pragma endregion
  37766.  
  37767.  
  37768.  
  37769. #pragma region Desktop Family
  37770.  
  37771.  
  37772. __declspec(dllimport)
  37773. HICON
  37774. __stdcall
  37775. CreateIconIndirect(
  37776.          PICONINFO piconinfo);
  37777.  
  37778. __declspec(dllimport)
  37779. HICON
  37780. __stdcall
  37781. CopyIcon(
  37782.          HICON hIcon);
  37783.  
  37784. __declspec(dllimport)
  37785. BOOL
  37786. __stdcall
  37787. GetIconInfo(
  37788.          HICON hIcon,
  37789.           PICONINFO piconinfo);
  37790.  
  37791.  
  37792. typedef struct _ICONINFOEXA {
  37793.     DWORD cbSize;
  37794.     BOOL fIcon;
  37795.     DWORD xHotspot;
  37796.     DWORD yHotspot;
  37797.     HBITMAP hbmMask;
  37798.     HBITMAP hbmColor;
  37799.     WORD wResID;
  37800.     CHAR szModName[260];
  37801.     CHAR szResName[260];
  37802. } ICONINFOEXA, *PICONINFOEXA;
  37803. typedef struct _ICONINFOEXW {
  37804.     DWORD cbSize;
  37805.     BOOL fIcon;
  37806.     DWORD xHotspot;
  37807.     DWORD yHotspot;
  37808.     HBITMAP hbmMask;
  37809.     HBITMAP hbmColor;
  37810.     WORD wResID;
  37811.     WCHAR szModName[260];
  37812.     WCHAR szResName[260];
  37813. } ICONINFOEXW, *PICONINFOEXW;
  37814.  
  37815.  
  37816.  
  37817.  
  37818. typedef ICONINFOEXA ICONINFOEX;
  37819. typedef PICONINFOEXA PICONINFOEX;
  37820.  
  37821.  
  37822. __declspec(dllimport)
  37823. BOOL
  37824. __stdcall
  37825. GetIconInfoExA(
  37826.          HICON hicon,
  37827.             PICONINFOEXA piconinfo);
  37828. __declspec(dllimport)
  37829. BOOL
  37830. __stdcall
  37831. GetIconInfoExW(
  37832.          HICON hicon,
  37833.             PICONINFOEXW piconinfo);
  37834. # 10651 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37835. #pragma endregion
  37836. # 10975 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37837. typedef enum {
  37838.     EDIT_CONTROL_FEATURE_ENTERPRISE_DATA_PROTECTION_PASTE_SUPPORT = 0,
  37839.     EDIT_CONTROL_FEATURE_PASTE_NOTIFICATIONS = 1,
  37840. } EDIT_CONTROL_FEATURE;
  37841. # 11150 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37842. #pragma region Desktop Family
  37843.  
  37844.  
  37845.  
  37846.  
  37847.  
  37848.  
  37849.  
  37850.  
  37851. __declspec(dllimport)
  37852. BOOL
  37853. __stdcall
  37854. IsDialogMessageA(
  37855.          HWND hDlg,
  37856.          LPMSG lpMsg);
  37857. __declspec(dllimport)
  37858. BOOL
  37859. __stdcall
  37860. IsDialogMessageW(
  37861.          HWND hDlg,
  37862.          LPMSG lpMsg);
  37863. # 11179 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37864. __declspec(dllimport)
  37865. BOOL
  37866. __stdcall
  37867. MapDialogRect(
  37868.          HWND hDlg,
  37869.             LPRECT lpRect);
  37870.  
  37871. __declspec(dllimport)
  37872. int
  37873. __stdcall
  37874. DlgDirListA(
  37875.          HWND hDlg,
  37876.             LPSTR lpPathSpec,
  37877.          int nIDListBox,
  37878.          int nIDStaticPath,
  37879.          UINT uFileType);
  37880. __declspec(dllimport)
  37881. int
  37882. __stdcall
  37883. DlgDirListW(
  37884.          HWND hDlg,
  37885.             LPWSTR lpPathSpec,
  37886.          int nIDListBox,
  37887.          int nIDStaticPath,
  37888.          UINT uFileType);
  37889.  
  37890.  
  37891.  
  37892.  
  37893.  
  37894.  
  37895.  
  37896. #pragma endregion
  37897. # 11227 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37898. #pragma region Desktop Family
  37899.  
  37900.  
  37901. __declspec(dllimport)
  37902. BOOL
  37903. __stdcall
  37904. DlgDirSelectExA(
  37905.          HWND hwndDlg,
  37906.                           LPSTR lpString,
  37907.          int chCount,
  37908.          int idListBox);
  37909. __declspec(dllimport)
  37910. BOOL
  37911. __stdcall
  37912. DlgDirSelectExW(
  37913.          HWND hwndDlg,
  37914.                           LPWSTR lpString,
  37915.          int chCount,
  37916.          int idListBox);
  37917.  
  37918.  
  37919.  
  37920.  
  37921.  
  37922.  
  37923. __declspec(dllimport)
  37924. int
  37925. __stdcall
  37926. DlgDirListComboBoxA(
  37927.          HWND hDlg,
  37928.             LPSTR lpPathSpec,
  37929.          int nIDComboBox,
  37930.          int nIDStaticPath,
  37931.          UINT uFiletype);
  37932. __declspec(dllimport)
  37933. int
  37934. __stdcall
  37935. DlgDirListComboBoxW(
  37936.          HWND hDlg,
  37937.             LPWSTR lpPathSpec,
  37938.          int nIDComboBox,
  37939.          int nIDStaticPath,
  37940.          UINT uFiletype);
  37941.  
  37942.  
  37943.  
  37944.  
  37945.  
  37946.  
  37947. __declspec(dllimport)
  37948. BOOL
  37949. __stdcall
  37950. DlgDirSelectComboBoxExA(
  37951.          HWND hwndDlg,
  37952.                          LPSTR lpString,
  37953.          int cchOut,
  37954.          int idComboBox);
  37955. __declspec(dllimport)
  37956. BOOL
  37957. __stdcall
  37958. DlgDirSelectComboBoxExW(
  37959.          HWND hwndDlg,
  37960.                          LPWSTR lpString,
  37961.          int cchOut,
  37962.          int idComboBox);
  37963.  
  37964.  
  37965.  
  37966.  
  37967.  
  37968.  
  37969.  
  37970. #pragma endregion
  37971. # 11643 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  37972. #pragma region Desktop Family
  37973.  
  37974.  
  37975. typedef struct tagSCROLLINFO
  37976. {
  37977.     UINT cbSize;
  37978.     UINT fMask;
  37979.     int nMin;
  37980.     int nMax;
  37981.     UINT nPage;
  37982.     int nPos;
  37983.     int nTrackPos;
  37984. } SCROLLINFO, *LPSCROLLINFO;
  37985. typedef SCROLLINFO const *LPCSCROLLINFO;
  37986.  
  37987. __declspec(dllimport)
  37988. int
  37989. __stdcall
  37990. SetScrollInfo(
  37991.          HWND hwnd,
  37992.          int nBar,
  37993.          LPCSCROLLINFO lpsi,
  37994.          BOOL redraw);
  37995.  
  37996. __declspec(dllimport)
  37997. BOOL
  37998. __stdcall
  37999. GetScrollInfo(
  38000.          HWND hwnd,
  38001.          int nBar,
  38002.             LPSCROLLINFO lpsi);
  38003.  
  38004.  
  38005.  
  38006. #pragma endregion
  38007. # 11700 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38008. #pragma region Desktop Family
  38009.  
  38010.  
  38011. typedef struct tagMDICREATESTRUCTA {
  38012.     LPCSTR szClass;
  38013.     LPCSTR szTitle;
  38014.     HANDLE hOwner;
  38015.     int x;
  38016.     int y;
  38017.     int cx;
  38018.     int cy;
  38019.     DWORD style;
  38020.     LPARAM lParam;
  38021. } MDICREATESTRUCTA, *LPMDICREATESTRUCTA;
  38022. typedef struct tagMDICREATESTRUCTW {
  38023.     LPCWSTR szClass;
  38024.     LPCWSTR szTitle;
  38025.     HANDLE hOwner;
  38026.     int x;
  38027.     int y;
  38028.     int cx;
  38029.     int cy;
  38030.     DWORD style;
  38031.     LPARAM lParam;
  38032. } MDICREATESTRUCTW, *LPMDICREATESTRUCTW;
  38033.  
  38034.  
  38035.  
  38036.  
  38037. typedef MDICREATESTRUCTA MDICREATESTRUCT;
  38038. typedef LPMDICREATESTRUCTA LPMDICREATESTRUCT;
  38039.  
  38040.  
  38041. typedef struct tagCLIENTCREATESTRUCT {
  38042.     HANDLE hWindowMenu;
  38043.     UINT idFirstChild;
  38044. } CLIENTCREATESTRUCT, *LPCLIENTCREATESTRUCT;
  38045.  
  38046. __declspec(dllimport)
  38047. LRESULT
  38048. __stdcall
  38049. DefFrameProcA(
  38050.          HWND hWnd,
  38051.              HWND hWndMDIClient,
  38052.          UINT uMsg,
  38053.          WPARAM wParam,
  38054.          LPARAM lParam);
  38055. __declspec(dllimport)
  38056. LRESULT
  38057. __stdcall
  38058. DefFrameProcW(
  38059.          HWND hWnd,
  38060.              HWND hWndMDIClient,
  38061.          UINT uMsg,
  38062.          WPARAM wParam,
  38063.          LPARAM lParam);
  38064.  
  38065.  
  38066.  
  38067.  
  38068.  
  38069.  
  38070. __declspec(dllimport)
  38071.  
  38072. LRESULT
  38073. __stdcall
  38074.  
  38075.  
  38076.  
  38077.  
  38078. DefMDIChildProcA(
  38079.          HWND hWnd,
  38080.          UINT uMsg,
  38081.          WPARAM wParam,
  38082.          LPARAM lParam);
  38083. __declspec(dllimport)
  38084.  
  38085. LRESULT
  38086. __stdcall
  38087.  
  38088.  
  38089.  
  38090.  
  38091. DefMDIChildProcW(
  38092.          HWND hWnd,
  38093.          UINT uMsg,
  38094.          WPARAM wParam,
  38095.          LPARAM lParam);
  38096. # 11796 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38097. __declspec(dllimport)
  38098. BOOL
  38099. __stdcall
  38100. TranslateMDISysAccel(
  38101.          HWND hWndClient,
  38102.          LPMSG lpMsg);
  38103.  
  38104.  
  38105.  
  38106. __declspec(dllimport)
  38107. UINT
  38108. __stdcall
  38109. ArrangeIconicWindows(
  38110.          HWND hWnd);
  38111.  
  38112. __declspec(dllimport)
  38113. HWND
  38114. __stdcall
  38115. CreateMDIWindowA(
  38116.          LPCSTR lpClassName,
  38117.          LPCSTR lpWindowName,
  38118.          DWORD dwStyle,
  38119.          int X,
  38120.          int Y,
  38121.          int nWidth,
  38122.          int nHeight,
  38123.              HWND hWndParent,
  38124.              HINSTANCE hInstance,
  38125.          LPARAM lParam);
  38126. __declspec(dllimport)
  38127. HWND
  38128. __stdcall
  38129. CreateMDIWindowW(
  38130.          LPCWSTR lpClassName,
  38131.          LPCWSTR lpWindowName,
  38132.          DWORD dwStyle,
  38133.          int X,
  38134.          int Y,
  38135.          int nWidth,
  38136.          int nHeight,
  38137.              HWND hWndParent,
  38138.              HINSTANCE hInstance,
  38139.          LPARAM lParam);
  38140.  
  38141.  
  38142.  
  38143.  
  38144.  
  38145.  
  38146.  
  38147. __declspec(dllimport)
  38148. WORD
  38149. __stdcall
  38150. TileWindows(
  38151.              HWND hwndParent,
  38152.          UINT wHow,
  38153.              const RECT * lpRect,
  38154.          UINT cKids,
  38155.                           const HWND * lpKids);
  38156.  
  38157. __declspec(dllimport)
  38158. WORD
  38159. __stdcall CascadeWindows(
  38160.              HWND hwndParent,
  38161.          UINT wHow,
  38162.              const RECT * lpRect,
  38163.          UINT cKids,
  38164.                           const HWND * lpKids);
  38165.  
  38166.  
  38167.  
  38168.  
  38169. #pragma endregion
  38170.  
  38171.  
  38172.  
  38173.  
  38174.  
  38175.  
  38176.  
  38177. #pragma region Desktop Family
  38178.  
  38179.  
  38180.  
  38181.  
  38182. typedef DWORD HELPPOLY;
  38183. typedef struct tagMULTIKEYHELPA {
  38184.  
  38185.     DWORD mkSize;
  38186.  
  38187.  
  38188.  
  38189.     CHAR mkKeylist;
  38190.     CHAR szKeyphrase[1];
  38191. } MULTIKEYHELPA, *PMULTIKEYHELPA, *LPMULTIKEYHELPA;
  38192. typedef struct tagMULTIKEYHELPW {
  38193.  
  38194.     DWORD mkSize;
  38195.  
  38196.  
  38197.  
  38198.     WCHAR mkKeylist;
  38199.     WCHAR szKeyphrase[1];
  38200. } MULTIKEYHELPW, *PMULTIKEYHELPW, *LPMULTIKEYHELPW;
  38201.  
  38202.  
  38203.  
  38204.  
  38205.  
  38206. typedef MULTIKEYHELPA MULTIKEYHELP;
  38207. typedef PMULTIKEYHELPA PMULTIKEYHELP;
  38208. typedef LPMULTIKEYHELPA LPMULTIKEYHELP;
  38209.  
  38210.  
  38211. typedef struct tagHELPWININFOA {
  38212.     int wStructSize;
  38213.     int x;
  38214.     int y;
  38215.     int dx;
  38216.     int dy;
  38217.     int wMax;
  38218.     CHAR rgchMember[2];
  38219. } HELPWININFOA, *PHELPWININFOA, *LPHELPWININFOA;
  38220. typedef struct tagHELPWININFOW {
  38221.     int wStructSize;
  38222.     int x;
  38223.     int y;
  38224.     int dx;
  38225.     int dy;
  38226.     int wMax;
  38227.     WCHAR rgchMember[2];
  38228. } HELPWININFOW, *PHELPWININFOW, *LPHELPWININFOW;
  38229.  
  38230.  
  38231.  
  38232.  
  38233.  
  38234. typedef HELPWININFOA HELPWININFO;
  38235. typedef PHELPWININFOA PHELPWININFO;
  38236. typedef LPHELPWININFOA LPHELPWININFO;
  38237. # 11978 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38238. __declspec(dllimport)
  38239. BOOL
  38240. __stdcall
  38241. WinHelpA(
  38242.              HWND hWndMain,
  38243.              LPCSTR lpszHelp,
  38244.          UINT uCommand,
  38245.          ULONG_PTR dwData);
  38246. __declspec(dllimport)
  38247. BOOL
  38248. __stdcall
  38249. WinHelpW(
  38250.              HWND hWndMain,
  38251.              LPCWSTR lpszHelp,
  38252.          UINT uCommand,
  38253.          ULONG_PTR dwData);
  38254. # 12003 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38255. #pragma endregion
  38256. # 12019 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38257. #pragma region Desktop Family
  38258.  
  38259.  
  38260.  
  38261. __declspec(dllimport)
  38262. DWORD
  38263. __stdcall
  38264. GetGuiResources(
  38265.          HANDLE hProcess,
  38266.          DWORD uiFlags);
  38267.  
  38268.  
  38269.  
  38270. #pragma endregion
  38271.  
  38272.  
  38273. #pragma region Desktop Family
  38274.  
  38275.  
  38276.  
  38277.  
  38278. #pragma endregion
  38279. # 12217 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38280. #pragma region Desktop Family
  38281.  
  38282.  
  38283. typedef struct tagTouchPredictionParameters
  38284. {
  38285.     UINT cbSize;
  38286.     UINT dwLatency;
  38287.     UINT dwSampleTime;
  38288.     UINT bUseHWTimeStamp;
  38289. } TOUCHPREDICTIONPARAMETERS, *PTOUCHPREDICTIONPARAMETERS;
  38290. # 12238 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38291. #pragma endregion
  38292. # 12426 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38293. typedef enum tagHANDEDNESS {
  38294.     HANDEDNESS_LEFT = 0,
  38295.     HANDEDNESS_RIGHT
  38296. } HANDEDNESS, *PHANDEDNESS;
  38297. # 12446 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38298. #pragma region Desktop Family
  38299.  
  38300.  
  38301. typedef struct tagNONCLIENTMETRICSA
  38302. {
  38303.     UINT cbSize;
  38304.     int iBorderWidth;
  38305.     int iScrollWidth;
  38306.     int iScrollHeight;
  38307.     int iCaptionWidth;
  38308.     int iCaptionHeight;
  38309.     LOGFONTA lfCaptionFont;
  38310.     int iSmCaptionWidth;
  38311.     int iSmCaptionHeight;
  38312.     LOGFONTA lfSmCaptionFont;
  38313.     int iMenuWidth;
  38314.     int iMenuHeight;
  38315.     LOGFONTA lfMenuFont;
  38316.     LOGFONTA lfStatusFont;
  38317.     LOGFONTA lfMessageFont;
  38318.  
  38319.     int iPaddedBorderWidth;
  38320.  
  38321. } NONCLIENTMETRICSA, *PNONCLIENTMETRICSA, * LPNONCLIENTMETRICSA;
  38322. typedef struct tagNONCLIENTMETRICSW
  38323. {
  38324.     UINT cbSize;
  38325.     int iBorderWidth;
  38326.     int iScrollWidth;
  38327.     int iScrollHeight;
  38328.     int iCaptionWidth;
  38329.     int iCaptionHeight;
  38330.     LOGFONTW lfCaptionFont;
  38331.     int iSmCaptionWidth;
  38332.     int iSmCaptionHeight;
  38333.     LOGFONTW lfSmCaptionFont;
  38334.     int iMenuWidth;
  38335.     int iMenuHeight;
  38336.     LOGFONTW lfMenuFont;
  38337.     LOGFONTW lfStatusFont;
  38338.     LOGFONTW lfMessageFont;
  38339.  
  38340.     int iPaddedBorderWidth;
  38341.  
  38342. } NONCLIENTMETRICSW, *PNONCLIENTMETRICSW, * LPNONCLIENTMETRICSW;
  38343.  
  38344.  
  38345.  
  38346.  
  38347.  
  38348. typedef NONCLIENTMETRICSA NONCLIENTMETRICS;
  38349. typedef PNONCLIENTMETRICSA PNONCLIENTMETRICS;
  38350. typedef LPNONCLIENTMETRICSA LPNONCLIENTMETRICS;
  38351.  
  38352.  
  38353.  
  38354. #pragma endregion
  38355. # 12521 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38356. #pragma region Desktop Family
  38357.  
  38358.  
  38359. typedef struct tagMINIMIZEDMETRICS
  38360. {
  38361.     UINT cbSize;
  38362.     int iWidth;
  38363.     int iHorzGap;
  38364.     int iVertGap;
  38365.     int iArrange;
  38366. } MINIMIZEDMETRICS, *PMINIMIZEDMETRICS, *LPMINIMIZEDMETRICS;
  38367.  
  38368.  
  38369.  
  38370. typedef struct tagICONMETRICSA
  38371. {
  38372.     UINT cbSize;
  38373.     int iHorzSpacing;
  38374.     int iVertSpacing;
  38375.     int iTitleWrap;
  38376.     LOGFONTA lfFont;
  38377. } ICONMETRICSA, *PICONMETRICSA, *LPICONMETRICSA;
  38378. typedef struct tagICONMETRICSW
  38379. {
  38380.     UINT cbSize;
  38381.     int iHorzSpacing;
  38382.     int iVertSpacing;
  38383.     int iTitleWrap;
  38384.     LOGFONTW lfFont;
  38385. } ICONMETRICSW, *PICONMETRICSW, *LPICONMETRICSW;
  38386.  
  38387.  
  38388.  
  38389.  
  38390.  
  38391. typedef ICONMETRICSA ICONMETRICS;
  38392. typedef PICONMETRICSA PICONMETRICS;
  38393. typedef LPICONMETRICSA LPICONMETRICS;
  38394.  
  38395.  
  38396.  
  38397.  
  38398. typedef struct tagANIMATIONINFO
  38399. {
  38400.     UINT cbSize;
  38401.     int iMinAnimate;
  38402. } ANIMATIONINFO, *LPANIMATIONINFO;
  38403.  
  38404. typedef struct tagSERIALKEYSA
  38405. {
  38406.     UINT cbSize;
  38407.     DWORD dwFlags;
  38408.     LPSTR lpszActivePort;
  38409.     LPSTR lpszPort;
  38410.     UINT iBaudRate;
  38411.     UINT iPortState;
  38412.     UINT iActive;
  38413. } SERIALKEYSA, *LPSERIALKEYSA;
  38414. typedef struct tagSERIALKEYSW
  38415. {
  38416.     UINT cbSize;
  38417.     DWORD dwFlags;
  38418.     LPWSTR lpszActivePort;
  38419.     LPWSTR lpszPort;
  38420.     UINT iBaudRate;
  38421.     UINT iPortState;
  38422.     UINT iActive;
  38423. } SERIALKEYSW, *LPSERIALKEYSW;
  38424.  
  38425.  
  38426.  
  38427.  
  38428. typedef SERIALKEYSA SERIALKEYS;
  38429. typedef LPSERIALKEYSA LPSERIALKEYS;
  38430. # 12603 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38431. typedef struct tagHIGHCONTRASTA
  38432. {
  38433.     UINT cbSize;
  38434.     DWORD dwFlags;
  38435.     LPSTR lpszDefaultScheme;
  38436. } HIGHCONTRASTA, *LPHIGHCONTRASTA;
  38437. typedef struct tagHIGHCONTRASTW
  38438. {
  38439.     UINT cbSize;
  38440.     DWORD dwFlags;
  38441.     LPWSTR lpszDefaultScheme;
  38442. } HIGHCONTRASTW, *LPHIGHCONTRASTW;
  38443.  
  38444.  
  38445.  
  38446.  
  38447. typedef HIGHCONTRASTA HIGHCONTRAST;
  38448. typedef LPHIGHCONTRASTA LPHIGHCONTRAST;
  38449.  
  38450.  
  38451.  
  38452. #pragma endregion
  38453. # 12652 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38454. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\tvout.h" 1 3
  38455. #pragma option push -b -a8 -pc -A- -w-pun
  38456. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\tvout.h" 3
  38457. #pragma region Desktop Family
  38458.  
  38459.  
  38460. typedef struct _VIDEOPARAMETERS {
  38461.     GUID Guid;
  38462.     ULONG dwOffset;
  38463.     ULONG dwCommand;
  38464.     ULONG dwFlags;
  38465.     ULONG dwMode;
  38466.     ULONG dwTVStandard;
  38467.     ULONG dwAvailableModes;
  38468.     ULONG dwAvailableTVStandard;
  38469.     ULONG dwFlickerFilter;
  38470.     ULONG dwOverScanX;
  38471.     ULONG dwOverScanY;
  38472.     ULONG dwMaxUnscaledX;
  38473.     ULONG dwMaxUnscaledY;
  38474.     ULONG dwPositionX;
  38475.     ULONG dwPositionY;
  38476.     ULONG dwBrightness;
  38477.     ULONG dwContrast;
  38478.     ULONG dwCPType;
  38479.     ULONG dwCPCommand;
  38480.     ULONG dwCPStandard;
  38481.     ULONG dwCPKey;
  38482.     ULONG bCP_APSTriggerBits;
  38483.     UCHAR bOEMCopyProtection[256];
  38484. } VIDEOPARAMETERS, *PVIDEOPARAMETERS, *LPVIDEOPARAMETERS;
  38485. # 96 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\tvout.h" 3
  38486. #pragma endregion
  38487.  
  38488.  
  38489. #pragma option pop
  38490. # 12652 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 2 3
  38491. # 12666 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38492. #pragma region Desktop Family
  38493.  
  38494.  
  38495.  
  38496.  
  38497.  
  38498. __declspec(dllimport)
  38499. LONG
  38500. __stdcall
  38501. ChangeDisplaySettingsA(
  38502.              DEVMODEA* lpDevMode,
  38503.          DWORD dwFlags);
  38504. __declspec(dllimport)
  38505. LONG
  38506. __stdcall
  38507. ChangeDisplaySettingsW(
  38508.              DEVMODEW* lpDevMode,
  38509.          DWORD dwFlags);
  38510.  
  38511.  
  38512.  
  38513.  
  38514.  
  38515.  
  38516. __declspec(dllimport)
  38517. LONG
  38518. __stdcall
  38519. ChangeDisplaySettingsExA(
  38520.              LPCSTR lpszDeviceName,
  38521.              DEVMODEA* lpDevMode,
  38522.                HWND hwnd,
  38523.          DWORD dwflags,
  38524.              LPVOID lParam);
  38525. __declspec(dllimport)
  38526. LONG
  38527. __stdcall
  38528. ChangeDisplaySettingsExW(
  38529.              LPCWSTR lpszDeviceName,
  38530.              DEVMODEW* lpDevMode,
  38531.                HWND hwnd,
  38532.          DWORD dwflags,
  38533.              LPVOID lParam);
  38534. # 12718 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38535. __declspec(dllimport)
  38536. BOOL
  38537. __stdcall
  38538. EnumDisplaySettingsA(
  38539.              LPCSTR lpszDeviceName,
  38540.          DWORD iModeNum,
  38541.             DEVMODEA* lpDevMode);
  38542. __declspec(dllimport)
  38543. BOOL
  38544. __stdcall
  38545. EnumDisplaySettingsW(
  38546.              LPCWSTR lpszDeviceName,
  38547.          DWORD iModeNum,
  38548.             DEVMODEW* lpDevMode);
  38549. # 12740 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38550. __declspec(dllimport)
  38551. BOOL
  38552. __stdcall
  38553. EnumDisplaySettingsExA(
  38554.              LPCSTR lpszDeviceName,
  38555.          DWORD iModeNum,
  38556.             DEVMODEA* lpDevMode,
  38557.          DWORD dwFlags);
  38558. __declspec(dllimport)
  38559. BOOL
  38560. __stdcall
  38561. EnumDisplaySettingsExW(
  38562.              LPCWSTR lpszDeviceName,
  38563.          DWORD iModeNum,
  38564.             DEVMODEW* lpDevMode,
  38565.          DWORD dwFlags);
  38566. # 12766 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38567. __declspec(dllimport)
  38568. BOOL
  38569. __stdcall
  38570. EnumDisplayDevicesA(
  38571.              LPCSTR lpDevice,
  38572.          DWORD iDevNum,
  38573.             PDISPLAY_DEVICEA lpDisplayDevice,
  38574.          DWORD dwFlags);
  38575. __declspec(dllimport)
  38576. BOOL
  38577. __stdcall
  38578. EnumDisplayDevicesW(
  38579.              LPCWSTR lpDevice,
  38580.          DWORD iDevNum,
  38581.             PDISPLAY_DEVICEW lpDisplayDevice,
  38582.          DWORD dwFlags);
  38583. # 12795 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38584. __declspec(dllimport)
  38585. LONG
  38586. __stdcall
  38587. GetDisplayConfigBufferSizes(
  38588.          UINT32 flags,
  38589.           UINT32* numPathArrayElements,
  38590.           UINT32* numModeInfoArrayElements);
  38591.  
  38592. __declspec(dllimport)
  38593. LONG
  38594. __stdcall
  38595. SetDisplayConfig(
  38596.          UINT32 numPathArrayElements,
  38597.                                          DISPLAYCONFIG_PATH_INFO* pathArray,
  38598.          UINT32 numModeInfoArrayElements,
  38599.                                              DISPLAYCONFIG_MODE_INFO* modeInfoArray,
  38600.          UINT32 flags);
  38601.  
  38602. __declspec(dllimport)
  38603.                                    LONG
  38604. __stdcall
  38605. QueryDisplayConfig(
  38606.          UINT32 flags,
  38607.             UINT32* numPathArrayElements,
  38608.                                                                   DISPLAYCONFIG_PATH_INFO* pathArray,
  38609.             UINT32* numModeInfoArrayElements,
  38610.                                                                           DISPLAYCONFIG_MODE_INFO* modeInfoArray,
  38611.  
  38612.  
  38613.         DISPLAYCONFIG_TOPOLOGY_ID* currentTopologyId);
  38614.  
  38615. __declspec(dllimport)
  38616. LONG
  38617. __stdcall
  38618. DisplayConfigGetDeviceInfo(
  38619.             DISPLAYCONFIG_DEVICE_INFO_HEADER* requestPacket);
  38620.  
  38621. __declspec(dllimport)
  38622. LONG
  38623. __stdcall
  38624. DisplayConfigSetDeviceInfo(
  38625.          DISPLAYCONFIG_DEVICE_INFO_HEADER* setPacket);
  38626. # 12845 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38627. __declspec(dllimport)
  38628.  
  38629. BOOL
  38630. __stdcall
  38631. SystemParametersInfoA(
  38632.          UINT uiAction,
  38633.          UINT uiParam,
  38634.                                  PVOID pvParam,
  38635.          UINT fWinIni);
  38636. __declspec(dllimport)
  38637.  
  38638. BOOL
  38639. __stdcall
  38640. SystemParametersInfoW(
  38641.          UINT uiAction,
  38642.          UINT uiParam,
  38643.                                  PVOID pvParam,
  38644.          UINT fWinIni);
  38645. # 12871 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38646. __declspec(dllimport)
  38647.  
  38648. BOOL
  38649. __stdcall
  38650. SystemParametersInfoForDpi(
  38651.          UINT uiAction,
  38652.          UINT uiParam,
  38653.                                  PVOID pvParam,
  38654.          UINT fWinIni,
  38655.          UINT dpi);
  38656.  
  38657.  
  38658.  
  38659.  
  38660. #pragma endregion
  38661.  
  38662.  
  38663.  
  38664. #pragma region Desktop Family
  38665.  
  38666.  
  38667.  
  38668.  
  38669.  
  38670. typedef struct tagFILTERKEYS
  38671. {
  38672.     UINT cbSize;
  38673.     DWORD dwFlags;
  38674.     DWORD iWaitMSec;
  38675.     DWORD iDelayMSec;
  38676.     DWORD iRepeatMSec;
  38677.     DWORD iBounceMSec;
  38678. } FILTERKEYS, *LPFILTERKEYS;
  38679.  
  38680.  
  38681. #pragma endregion
  38682. # 12919 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38683. #pragma region Desktop Family
  38684.  
  38685.  
  38686. typedef struct tagSTICKYKEYS
  38687. {
  38688.     UINT cbSize;
  38689.     DWORD dwFlags;
  38690. } STICKYKEYS, *LPSTICKYKEYS;
  38691.  
  38692.  
  38693. #pragma endregion
  38694. # 12962 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38695. #pragma region Desktop Family
  38696.  
  38697.  
  38698. typedef struct tagMOUSEKEYS
  38699. {
  38700.     UINT cbSize;
  38701.     DWORD dwFlags;
  38702.     DWORD iMaxSpeed;
  38703.     DWORD iTimeToMaxSpeed;
  38704.     DWORD iCtrlSpeed;
  38705.     DWORD dwReserved1;
  38706.     DWORD dwReserved2;
  38707. } MOUSEKEYS, *LPMOUSEKEYS;
  38708.  
  38709.  
  38710. #pragma endregion
  38711. # 12998 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38712. #pragma region Desktop Family
  38713.  
  38714.  
  38715. typedef struct tagACCESSTIMEOUT
  38716. {
  38717.     UINT cbSize;
  38718.     DWORD dwFlags;
  38719.     DWORD iTimeOutMSec;
  38720. } ACCESSTIMEOUT, *LPACCESSTIMEOUT;
  38721.  
  38722.  
  38723. #pragma endregion
  38724. # 13034 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38725. #pragma region Desktop Family
  38726.  
  38727.  
  38728. typedef struct tagSOUNDSENTRYA
  38729. {
  38730.     UINT cbSize;
  38731.     DWORD dwFlags;
  38732.     DWORD iFSTextEffect;
  38733.     DWORD iFSTextEffectMSec;
  38734.     DWORD iFSTextEffectColorBits;
  38735.     DWORD iFSGrafEffect;
  38736.     DWORD iFSGrafEffectMSec;
  38737.     DWORD iFSGrafEffectColor;
  38738.     DWORD iWindowsEffect;
  38739.     DWORD iWindowsEffectMSec;
  38740.     LPSTR lpszWindowsEffectDLL;
  38741.     DWORD iWindowsEffectOrdinal;
  38742. } SOUNDSENTRYA, *LPSOUNDSENTRYA;
  38743. typedef struct tagSOUNDSENTRYW
  38744. {
  38745.     UINT cbSize;
  38746.     DWORD dwFlags;
  38747.     DWORD iFSTextEffect;
  38748.     DWORD iFSTextEffectMSec;
  38749.     DWORD iFSTextEffectColorBits;
  38750.     DWORD iFSGrafEffect;
  38751.     DWORD iFSGrafEffectMSec;
  38752.     DWORD iFSGrafEffectColor;
  38753.     DWORD iWindowsEffect;
  38754.     DWORD iWindowsEffectMSec;
  38755.     LPWSTR lpszWindowsEffectDLL;
  38756.     DWORD iWindowsEffectOrdinal;
  38757. } SOUNDSENTRYW, *LPSOUNDSENTRYW;
  38758.  
  38759.  
  38760.  
  38761.  
  38762. typedef SOUNDSENTRYA SOUNDSENTRY;
  38763. typedef LPSOUNDSENTRYA LPSOUNDSENTRY;
  38764.  
  38765.  
  38766.  
  38767. #pragma endregion
  38768.  
  38769.  
  38770.  
  38771.  
  38772.  
  38773.  
  38774.  
  38775.  
  38776. #pragma region Desktop or PC Family
  38777.  
  38778.  
  38779. __declspec(dllimport)
  38780. BOOL
  38781. __stdcall
  38782. SoundSentry(void);
  38783.  
  38784.  
  38785. #pragma endregion
  38786.  
  38787. #pragma region Desktop Family
  38788.  
  38789. typedef struct tagTOGGLEKEYS
  38790. {
  38791.     UINT cbSize;
  38792.     DWORD dwFlags;
  38793. } TOGGLEKEYS, *LPTOGGLEKEYS;
  38794.  
  38795.  
  38796. #pragma endregion
  38797. # 13117 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38798. #pragma region Desktop Family
  38799.  
  38800.  
  38801.  
  38802. typedef struct tagAUDIODESCRIPTION {
  38803.     UINT cbSize;
  38804.     BOOL Enabled;
  38805.     LCID Locale;
  38806. } AUDIODESCRIPTION, *LPAUDIODESCRIPTION;
  38807.  
  38808.  
  38809.  
  38810.  
  38811.  
  38812.  
  38813.  
  38814. __declspec(dllimport)
  38815. void
  38816. __stdcall
  38817. SetDebugErrorLevel(
  38818.          DWORD dwLevel);
  38819.  
  38820.  
  38821. #pragma endregion
  38822. # 13150 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38823. #pragma region Desktop Family
  38824.  
  38825.  
  38826. __declspec(dllimport)
  38827. void
  38828. __stdcall
  38829. SetLastErrorEx(
  38830.          DWORD dwErrCode,
  38831.          DWORD dwType);
  38832.  
  38833. __declspec(dllimport)
  38834. int
  38835. __stdcall
  38836. InternalGetWindowText(
  38837.          HWND hWnd,
  38838.                                              LPWSTR pString,
  38839.          int cchMaxCount);
  38840. # 13179 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38841. __declspec(dllimport)
  38842. BOOL
  38843. __stdcall
  38844. CancelShutdown(
  38845.     void);
  38846.  
  38847.  
  38848. #pragma endregion
  38849. # 13199 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38850. #pragma region Desktop Family
  38851.  
  38852.  
  38853. __declspec(dllimport)
  38854. HMONITOR
  38855. __stdcall
  38856. MonitorFromPoint(
  38857.          POINT pt,
  38858.          DWORD dwFlags);
  38859.  
  38860. __declspec(dllimport)
  38861. HMONITOR
  38862. __stdcall
  38863. MonitorFromRect(
  38864.          LPCRECT lprc,
  38865.          DWORD dwFlags);
  38866.  
  38867. __declspec(dllimport)
  38868. HMONITOR
  38869. __stdcall
  38870. MonitorFromWindow(
  38871.          HWND hwnd,
  38872.          DWORD dwFlags);
  38873.  
  38874.  
  38875. #pragma endregion
  38876.  
  38877.  
  38878.  
  38879.  
  38880.  
  38881.  
  38882.  
  38883. #pragma region Desktop Family
  38884.  
  38885.  
  38886. typedef struct tagMONITORINFO
  38887. {
  38888.     DWORD cbSize;
  38889.     RECT rcMonitor;
  38890.     RECT rcWork;
  38891.     DWORD dwFlags;
  38892. } MONITORINFO, *LPMONITORINFO;
  38893. # 13260 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38894. typedef struct tagMONITORINFOEXA
  38895. {
  38896.     MONITORINFO ;
  38897.     CHAR szDevice[32];
  38898. } MONITORINFOEXA, *LPMONITORINFOEXA;
  38899. typedef struct tagMONITORINFOEXW
  38900. {
  38901.     MONITORINFO ;
  38902.     WCHAR szDevice[32];
  38903. } MONITORINFOEXW, *LPMONITORINFOEXW;
  38904.  
  38905.  
  38906.  
  38907.  
  38908. typedef MONITORINFOEXA MONITORINFOEX;
  38909. typedef LPMONITORINFOEXA LPMONITORINFOEX;
  38910.  
  38911.  
  38912.  
  38913. __declspec(dllimport)
  38914. BOOL
  38915. __stdcall
  38916. GetMonitorInfoA(
  38917.          HMONITOR hMonitor,
  38918.             LPMONITORINFO lpmi);
  38919. __declspec(dllimport)
  38920. BOOL
  38921. __stdcall
  38922. GetMonitorInfoW(
  38923.          HMONITOR hMonitor,
  38924.             LPMONITORINFO lpmi);
  38925.  
  38926.  
  38927.  
  38928.  
  38929.  
  38930.  
  38931. typedef BOOL (__stdcall* MONITORENUMPROC)(HMONITOR, HDC, LPRECT, LPARAM);
  38932.  
  38933. __declspec(dllimport)
  38934. BOOL
  38935. __stdcall
  38936. EnumDisplayMonitors(
  38937.              HDC hdc,
  38938.              LPCRECT lprcClip,
  38939.          MONITORENUMPROC lpfnEnum,
  38940.          LPARAM dwData);
  38941.  
  38942.  
  38943. #pragma endregion
  38944.  
  38945.  
  38946.  
  38947.  
  38948. #pragma region Desktop Family
  38949.  
  38950.  
  38951.  
  38952.  
  38953.  
  38954.  
  38955. __declspec(dllimport)
  38956. void
  38957. __stdcall
  38958. NotifyWinEvent(
  38959.          DWORD event,
  38960.          HWND hwnd,
  38961.          LONG idObject,
  38962.          LONG idChild);
  38963.  
  38964. typedef void (__stdcall* WINEVENTPROC)(
  38965.     HWINEVENTHOOK hWinEventHook,
  38966.     DWORD event,
  38967.     HWND hwnd,
  38968.     LONG idObject,
  38969.     LONG idChild,
  38970.     DWORD idEventThread,
  38971.     DWORD dwmsEventTime);
  38972.  
  38973. __declspec(dllimport)
  38974. HWINEVENTHOOK
  38975. __stdcall
  38976. SetWinEventHook(
  38977.          DWORD eventMin,
  38978.          DWORD eventMax,
  38979.              HMODULE hmodWinEventProc,
  38980.          WINEVENTPROC pfnWinEventProc,
  38981.          DWORD idProcess,
  38982.          DWORD idThread,
  38983.          DWORD dwFlags);
  38984.  
  38985.  
  38986. __declspec(dllimport)
  38987. BOOL
  38988. __stdcall
  38989. IsWinEventHookInstalled(
  38990.          DWORD event);
  38991.  
  38992.  
  38993.  
  38994. #pragma endregion
  38995. # 13370 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  38996. #pragma region Desktop Family
  38997.  
  38998.  
  38999. __declspec(dllimport)
  39000. BOOL
  39001. __stdcall
  39002. UnhookWinEvent(
  39003.          HWINEVENTHOOK hWinEventHook);
  39004.  
  39005.  
  39006. #pragma endregion
  39007. # 13988 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39008. #pragma region Desktop Family
  39009.  
  39010.  
  39011. typedef struct tagGUITHREADINFO
  39012. {
  39013.     DWORD cbSize;
  39014.     DWORD flags;
  39015.     HWND hwndActive;
  39016.     HWND hwndFocus;
  39017.     HWND hwndCapture;
  39018.     HWND hwndMenuOwner;
  39019.     HWND hwndMoveSize;
  39020.     HWND hwndCaret;
  39021.     RECT rcCaret;
  39022. } GUITHREADINFO, *PGUITHREADINFO, * LPGUITHREADINFO;
  39023.  
  39024.  
  39025. #pragma endregion
  39026. # 14020 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39027. #pragma region Desktop Family
  39028.  
  39029.  
  39030. __declspec(dllimport)
  39031. BOOL
  39032. __stdcall
  39033. GetGUIThreadInfo(
  39034.          DWORD idThread,
  39035.             PGUITHREADINFO pgui);
  39036.  
  39037. __declspec(dllimport)
  39038. BOOL
  39039. __stdcall
  39040. BlockInput(
  39041.     BOOL fBlockIt);
  39042.  
  39043.  
  39044.  
  39045.  
  39046.  
  39047. __declspec(dllimport)
  39048. BOOL
  39049. __stdcall
  39050. SetProcessDPIAware(
  39051.     void);
  39052.  
  39053. __declspec(dllimport)
  39054. BOOL
  39055. __stdcall
  39056. IsProcessDPIAware(
  39057.     void);
  39058.  
  39059.  
  39060.  
  39061.  
  39062. __declspec(dllimport)
  39063. DPI_AWARENESS_CONTEXT
  39064. __stdcall
  39065. SetThreadDpiAwarenessContext(
  39066.          DPI_AWARENESS_CONTEXT dpiContext);
  39067.  
  39068. __declspec(dllimport)
  39069. DPI_AWARENESS_CONTEXT
  39070. __stdcall
  39071. GetThreadDpiAwarenessContext(
  39072.     void);
  39073.  
  39074. __declspec(dllimport)
  39075. DPI_AWARENESS_CONTEXT
  39076. __stdcall
  39077. GetWindowDpiAwarenessContext(
  39078.          HWND hwnd);
  39079.  
  39080. __declspec(dllimport)
  39081. DPI_AWARENESS
  39082. __stdcall
  39083. GetAwarenessFromDpiAwarenessContext(
  39084.          DPI_AWARENESS_CONTEXT value);
  39085.  
  39086. __declspec(dllimport)
  39087. UINT
  39088. __stdcall
  39089. GetDpiFromDpiAwarenessContext(
  39090.          DPI_AWARENESS_CONTEXT value);
  39091.  
  39092. __declspec(dllimport)
  39093. BOOL
  39094. __stdcall
  39095. AreDpiAwarenessContextsEqual(
  39096.          DPI_AWARENESS_CONTEXT dpiContextA,
  39097.          DPI_AWARENESS_CONTEXT dpiContextB);
  39098.  
  39099. __declspec(dllimport)
  39100. BOOL
  39101. __stdcall
  39102. IsValidDpiAwarenessContext(
  39103.          DPI_AWARENESS_CONTEXT value);
  39104.  
  39105. __declspec(dllimport)
  39106. UINT
  39107. __stdcall
  39108. GetDpiForWindow(
  39109.          HWND hwnd);
  39110.  
  39111. __declspec(dllimport)
  39112. UINT
  39113. __stdcall
  39114. GetDpiForSystem(
  39115.     void);
  39116.  
  39117. __declspec(dllimport)
  39118. UINT
  39119. __stdcall
  39120. GetSystemDpiForProcess(
  39121.          HANDLE hProcess);
  39122.  
  39123. __declspec(dllimport)
  39124. BOOL
  39125. __stdcall
  39126. EnableNonClientDpiScaling(
  39127.          HWND hwnd);
  39128.  
  39129. __declspec(dllimport)
  39130. BOOL
  39131. __stdcall
  39132. InheritWindowMonitor(
  39133.          HWND hwnd,
  39134.              HWND hwndInherit);
  39135.  
  39136.  
  39137.  
  39138.  
  39139. __declspec(dllimport)
  39140. BOOL
  39141. __stdcall
  39142. SetProcessDpiAwarenessContext(
  39143.          DPI_AWARENESS_CONTEXT value);
  39144.  
  39145.  
  39146.  
  39147.  
  39148.  
  39149. __declspec(dllimport)
  39150. DPI_HOSTING_BEHAVIOR
  39151. __stdcall
  39152. SetThreadDpiHostingBehavior(
  39153.          DPI_HOSTING_BEHAVIOR value);
  39154.  
  39155. __declspec(dllimport)
  39156. DPI_HOSTING_BEHAVIOR
  39157. __stdcall
  39158. GetThreadDpiHostingBehavior();
  39159.  
  39160. __declspec(dllimport)
  39161. DPI_HOSTING_BEHAVIOR
  39162. __stdcall
  39163. GetWindowDpiHostingBehavior(
  39164.          HWND hwnd);
  39165.  
  39166.  
  39167.  
  39168.  
  39169. __declspec(dllimport)
  39170. UINT
  39171. __stdcall
  39172. GetWindowModuleFileNameA(
  39173.          HWND hwnd,
  39174.                                             LPSTR pszFileName,
  39175.          UINT cchFileNameMax);
  39176. __declspec(dllimport)
  39177. UINT
  39178. __stdcall
  39179. GetWindowModuleFileNameW(
  39180.          HWND hwnd,
  39181.                                             LPWSTR pszFileName,
  39182.          UINT cchFileNameMax);
  39183.  
  39184.  
  39185.  
  39186.  
  39187.  
  39188.  
  39189.  
  39190. #pragma endregion
  39191. # 14223 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39192. #pragma region Desktop Family
  39193.  
  39194.  
  39195.  
  39196.  
  39197.  
  39198. typedef struct tagCURSORINFO
  39199. {
  39200.     DWORD cbSize;
  39201.     DWORD flags;
  39202.     HCURSOR hCursor;
  39203.     POINT ptScreenPos;
  39204. } CURSORINFO, *PCURSORINFO, *LPCURSORINFO;
  39205.  
  39206.  
  39207.  
  39208.  
  39209.  
  39210.  
  39211. __declspec(dllimport)
  39212. BOOL
  39213. __stdcall
  39214. GetCursorInfo(
  39215.             PCURSORINFO pci);
  39216.  
  39217.  
  39218.  
  39219.  
  39220. typedef struct tagWINDOWINFO
  39221. {
  39222.     DWORD cbSize;
  39223.     RECT rcWindow;
  39224.     RECT rcClient;
  39225.     DWORD dwStyle;
  39226.     DWORD dwExStyle;
  39227.     DWORD dwWindowStatus;
  39228.     UINT cxWindowBorders;
  39229.     UINT cyWindowBorders;
  39230.     ATOM atomWindowType;
  39231.     WORD wCreatorVersion;
  39232. } WINDOWINFO, *PWINDOWINFO, *LPWINDOWINFO;
  39233.  
  39234.  
  39235.  
  39236. __declspec(dllimport)
  39237. BOOL
  39238. __stdcall
  39239. GetWindowInfo(
  39240.          HWND hwnd,
  39241.             PWINDOWINFO pwi);
  39242.  
  39243.  
  39244.  
  39245.  
  39246. typedef struct tagTITLEBARINFO
  39247. {
  39248.     DWORD cbSize;
  39249.     RECT rcTitleBar;
  39250.     DWORD rgstate[5 + 1];
  39251. } TITLEBARINFO, *PTITLEBARINFO, *LPTITLEBARINFO;
  39252.  
  39253. __declspec(dllimport)
  39254. BOOL
  39255. __stdcall
  39256. GetTitleBarInfo(
  39257.          HWND hwnd,
  39258.             PTITLEBARINFO pti);
  39259.  
  39260.  
  39261. typedef struct tagTITLEBARINFOEX
  39262. {
  39263.     DWORD cbSize;
  39264.     RECT rcTitleBar;
  39265.     DWORD rgstate[5 + 1];
  39266.     RECT rgrect[5 + 1];
  39267. } TITLEBARINFOEX, *PTITLEBARINFOEX, *LPTITLEBARINFOEX;
  39268.  
  39269.  
  39270.  
  39271.  
  39272.  
  39273. typedef struct tagMENUBARINFO
  39274. {
  39275.     DWORD cbSize;
  39276.     RECT rcBar;
  39277.     HMENU hMenu;
  39278.     HWND hwndMenu;
  39279.     BOOL fBarFocused:1;
  39280.     BOOL fFocused:1;
  39281. } MENUBARINFO, *PMENUBARINFO, *LPMENUBARINFO;
  39282.  
  39283. __declspec(dllimport)
  39284. BOOL
  39285. __stdcall
  39286. GetMenuBarInfo(
  39287.          HWND hwnd,
  39288.          LONG idObject,
  39289.          LONG idItem,
  39290.             PMENUBARINFO pmbi);
  39291.  
  39292.  
  39293.  
  39294.  
  39295. typedef struct tagSCROLLBARINFO
  39296. {
  39297.     DWORD cbSize;
  39298.     RECT rcScrollBar;
  39299.     int dxyLineButton;
  39300.     int xyThumbTop;
  39301.     int xyThumbBottom;
  39302.     int reserved;
  39303.     DWORD rgstate[5 + 1];
  39304. } SCROLLBARINFO, *PSCROLLBARINFO, *LPSCROLLBARINFO;
  39305.  
  39306. __declspec(dllimport)
  39307. BOOL
  39308. __stdcall
  39309. GetScrollBarInfo(
  39310.          HWND hwnd,
  39311.          LONG idObject,
  39312.             PSCROLLBARINFO psbi);
  39313.  
  39314.  
  39315.  
  39316.  
  39317. typedef struct tagCOMBOBOXINFO
  39318. {
  39319.     DWORD cbSize;
  39320.     RECT rcItem;
  39321.     RECT rcButton;
  39322.     DWORD stateButton;
  39323.     HWND hwndCombo;
  39324.     HWND hwndItem;
  39325.     HWND hwndList;
  39326. } COMBOBOXINFO, *PCOMBOBOXINFO, *LPCOMBOBOXINFO;
  39327.  
  39328. __declspec(dllimport)
  39329. BOOL
  39330. __stdcall
  39331. GetComboBoxInfo(
  39332.          HWND hwndCombo,
  39333.             PCOMBOBOXINFO pcbi);
  39334.  
  39335.  
  39336. #pragma endregion
  39337.  
  39338.  
  39339.  
  39340.  
  39341.  
  39342.  
  39343.  
  39344.  
  39345. #pragma region Desktop Family
  39346.  
  39347.  
  39348. __declspec(dllimport)
  39349. HWND
  39350. __stdcall
  39351. GetAncestor(
  39352.          HWND hwnd,
  39353.          UINT gaFlags);
  39354. # 14393 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39355. __declspec(dllimport)
  39356. HWND
  39357. __stdcall
  39358. RealChildWindowFromPoint(
  39359.          HWND hwndParent,
  39360.          POINT ptParentClientCoords);
  39361.  
  39362.  
  39363.  
  39364.  
  39365.  
  39366.  
  39367. __declspec(dllimport)
  39368. UINT
  39369. __stdcall
  39370. RealGetWindowClassA(
  39371.          HWND hwnd,
  39372.                                              LPSTR ptszClassName,
  39373.          UINT cchClassNameMax);
  39374.  
  39375.  
  39376.  
  39377.  
  39378. __declspec(dllimport)
  39379. UINT
  39380. __stdcall
  39381. RealGetWindowClassW(
  39382.          HWND hwnd,
  39383.                                              LPWSTR ptszClassName,
  39384.          UINT cchClassNameMax);
  39385. # 14432 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39386. typedef struct tagALTTABINFO
  39387. {
  39388.     DWORD cbSize;
  39389.     int cItems;
  39390.     int cColumns;
  39391.     int cRows;
  39392.     int iColFocus;
  39393.     int iRowFocus;
  39394.     int cxItem;
  39395.     int cyItem;
  39396.     POINT ptStart;
  39397. } ALTTABINFO, *PALTTABINFO, *LPALTTABINFO;
  39398.  
  39399. __declspec(dllimport)
  39400. BOOL
  39401. __stdcall
  39402. GetAltTabInfoA(
  39403.              HWND hwnd,
  39404.          int iItem,
  39405.             PALTTABINFO pati,
  39406.                                   LPSTR pszItemText,
  39407.          UINT cchItemText);
  39408. __declspec(dllimport)
  39409. BOOL
  39410. __stdcall
  39411. GetAltTabInfoW(
  39412.              HWND hwnd,
  39413.          int iItem,
  39414.             PALTTABINFO pati,
  39415.                                   LPWSTR pszItemText,
  39416.          UINT cchItemText);
  39417. # 14473 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39418. __declspec(dllimport)
  39419. DWORD
  39420. __stdcall
  39421. GetListBoxInfo(
  39422.          HWND hwnd);
  39423.  
  39424.  
  39425. #pragma endregion
  39426.  
  39427.  
  39428.  
  39429.  
  39430. #pragma region Desktop Family
  39431.  
  39432.  
  39433.  
  39434.  
  39435. __declspec(dllimport)
  39436. BOOL
  39437. __stdcall
  39438. LockWorkStation(
  39439.     void);
  39440.  
  39441.  
  39442.  
  39443.  
  39444. __declspec(dllimport)
  39445. BOOL
  39446. __stdcall
  39447. UserHandleGrantAccess(
  39448.          HANDLE hUserHandle,
  39449.          HANDLE hJob,
  39450.          BOOL bGrant);
  39451.  
  39452.  
  39453.  
  39454.  
  39455. #pragma endregion
  39456.  
  39457.  
  39458.  
  39459.  
  39460.  
  39461.  
  39462.  
  39463. #pragma region Desktop Family
  39464.  
  39465.  
  39466. struct HRAWINPUT__{int unused;}; typedef struct HRAWINPUT__ *HRAWINPUT;
  39467.  
  39468.  
  39469. #pragma endregion
  39470. # 14548 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39471. #pragma region Desktop Family
  39472.  
  39473.  
  39474.  
  39475.  
  39476.  
  39477. typedef struct tagRAWINPUTHEADER {
  39478.     DWORD dwType;
  39479.     DWORD dwSize;
  39480.     HANDLE hDevice;
  39481.     WPARAM wParam;
  39482. } RAWINPUTHEADER, *PRAWINPUTHEADER, *LPRAWINPUTHEADER;
  39483.  
  39484.  
  39485. #pragma endregion
  39486. # 14572 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39487. #pragma region Desktop Family
  39488.  
  39489.  
  39490.  
  39491.  
  39492.  
  39493.  
  39494. #pragma warning(disable: 4201)
  39495.  
  39496.  
  39497.  
  39498.  
  39499. typedef struct tagRAWMOUSE {
  39500.  
  39501.  
  39502.  
  39503.     USHORT usFlags;
  39504.  
  39505.  
  39506.  
  39507.  
  39508.     union {
  39509.         ULONG ulButtons;
  39510.         struct {
  39511.             USHORT usButtonFlags;
  39512.             USHORT usButtonData;
  39513.         } ;
  39514.     } ;
  39515.  
  39516.  
  39517.  
  39518.  
  39519.  
  39520.     ULONG ulRawButtons;
  39521.  
  39522.  
  39523.  
  39524.  
  39525.     LONG lLastX;
  39526.  
  39527.  
  39528.  
  39529.  
  39530.     LONG lLastY;
  39531.  
  39532.  
  39533.  
  39534.  
  39535.     ULONG ulExtraInformation;
  39536.  
  39537. } RAWMOUSE, *PRAWMOUSE, *LPRAWMOUSE;
  39538.  
  39539.  
  39540.  
  39541.  
  39542.  
  39543.  
  39544. #pragma endregion
  39545. # 14674 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39546. #pragma region Desktop Family
  39547.  
  39548.  
  39549.  
  39550.  
  39551.  
  39552. typedef struct tagRAWKEYBOARD {
  39553.  
  39554.  
  39555.  
  39556.     USHORT MakeCode;
  39557.  
  39558.  
  39559.  
  39560.  
  39561.  
  39562.     USHORT Flags;
  39563.  
  39564.     USHORT Reserved;
  39565.  
  39566.  
  39567.  
  39568.  
  39569.     USHORT VKey;
  39570.     UINT Message;
  39571.  
  39572.  
  39573.  
  39574.  
  39575.     ULONG ExtraInformation;
  39576.  
  39577.  
  39578. } RAWKEYBOARD, *PRAWKEYBOARD, *LPRAWKEYBOARD;
  39579.  
  39580.  
  39581. #pragma endregion
  39582. # 14727 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39583. #pragma region Desktop Family
  39584.  
  39585.  
  39586.  
  39587.  
  39588.  
  39589. typedef struct tagRAWHID {
  39590.     DWORD dwSizeHid;
  39591.     DWORD dwCount;
  39592.     BYTE bRawData[1];
  39593. } RAWHID, *PRAWHID, *LPRAWHID;
  39594.  
  39595.  
  39596. #pragma endregion
  39597.  
  39598.  
  39599.  
  39600.  
  39601.  
  39602. #pragma region Desktop Family
  39603.  
  39604.  
  39605. typedef struct tagRAWINPUT {
  39606.     RAWINPUTHEADER header;
  39607.     union {
  39608.         RAWMOUSE mouse;
  39609.         RAWKEYBOARD keyboard;
  39610.         RAWHID hid;
  39611.     } data;
  39612. } RAWINPUT, *PRAWINPUT, *LPRAWINPUT;
  39613.  
  39614.  
  39615. #pragma endregion
  39616. # 14776 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39617. #pragma region Desktop Family
  39618.  
  39619.  
  39620. __declspec(dllimport)
  39621. UINT
  39622. __stdcall
  39623. GetRawInputData(
  39624.          HRAWINPUT hRawInput,
  39625.          UINT uiCommand,
  39626.                                                 LPVOID pData,
  39627.             PUINT pcbSize,
  39628.          UINT cbSizeHeader);
  39629.  
  39630.  
  39631. #pragma endregion
  39632.  
  39633.  
  39634.  
  39635.  
  39636.  
  39637.  
  39638.  
  39639.  
  39640. #pragma region Desktop Family
  39641.  
  39642.  
  39643. typedef struct tagRID_DEVICE_INFO_MOUSE {
  39644.     DWORD dwId;
  39645.     DWORD dwNumberOfButtons;
  39646.     DWORD dwSampleRate;
  39647.     BOOL fHasHorizontalWheel;
  39648. } RID_DEVICE_INFO_MOUSE, *PRID_DEVICE_INFO_MOUSE;
  39649.  
  39650. typedef struct tagRID_DEVICE_INFO_KEYBOARD {
  39651.     DWORD dwType;
  39652.     DWORD dwSubType;
  39653.     DWORD dwKeyboardMode;
  39654.     DWORD dwNumberOfFunctionKeys;
  39655.     DWORD dwNumberOfIndicators;
  39656.     DWORD dwNumberOfKeysTotal;
  39657. } RID_DEVICE_INFO_KEYBOARD, *PRID_DEVICE_INFO_KEYBOARD;
  39658.  
  39659. typedef struct tagRID_DEVICE_INFO_HID {
  39660.     DWORD dwVendorId;
  39661.     DWORD dwProductId;
  39662.     DWORD dwVersionNumber;
  39663.  
  39664.  
  39665.  
  39666.  
  39667.     USHORT usUsagePage;
  39668.     USHORT usUsage;
  39669. } RID_DEVICE_INFO_HID, *PRID_DEVICE_INFO_HID;
  39670.  
  39671. typedef struct tagRID_DEVICE_INFO {
  39672.     DWORD cbSize;
  39673.     DWORD dwType;
  39674.     union {
  39675.         RID_DEVICE_INFO_MOUSE mouse;
  39676.         RID_DEVICE_INFO_KEYBOARD keyboard;
  39677.         RID_DEVICE_INFO_HID hid;
  39678.     } ;
  39679. } RID_DEVICE_INFO, *PRID_DEVICE_INFO, *LPRID_DEVICE_INFO;
  39680.  
  39681. __declspec(dllimport)
  39682. UINT
  39683. __stdcall
  39684. GetRawInputDeviceInfoA(
  39685.              HANDLE hDevice,
  39686.          UINT uiCommand,
  39687.                                                      LPVOID pData,
  39688.             PUINT pcbSize);
  39689. __declspec(dllimport)
  39690. UINT
  39691. __stdcall
  39692. GetRawInputDeviceInfoW(
  39693.              HANDLE hDevice,
  39694.          UINT uiCommand,
  39695.                                                      LPVOID pData,
  39696.             PUINT pcbSize);
  39697. # 14866 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39698. __declspec(dllimport)
  39699. UINT
  39700. __stdcall
  39701. GetRawInputBuffer(
  39702.                                      PRAWINPUT pData,
  39703.             PUINT pcbSize,
  39704.          UINT cbSizeHeader);
  39705.  
  39706.  
  39707.  
  39708.  
  39709. typedef struct tagRAWINPUTDEVICE {
  39710.     USHORT usUsagePage;
  39711.     USHORT usUsage;
  39712.     DWORD dwFlags;
  39713.     HWND hwndTarget;
  39714. } RAWINPUTDEVICE, *PRAWINPUTDEVICE, *LPRAWINPUTDEVICE;
  39715.  
  39716. typedef const RAWINPUTDEVICE* PCRAWINPUTDEVICE;
  39717.  
  39718.  
  39719. #pragma endregion
  39720. # 14919 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39721. #pragma region Desktop Family
  39722.  
  39723.  
  39724. __declspec(dllimport)
  39725. BOOL
  39726. __stdcall
  39727. RegisterRawInputDevices(
  39728.                              PCRAWINPUTDEVICE pRawInputDevices,
  39729.          UINT uiNumDevices,
  39730.          UINT cbSize);
  39731.  
  39732. __declspec(dllimport)
  39733. UINT
  39734. __stdcall
  39735. GetRegisteredRawInputDevices(
  39736.                                       PRAWINPUTDEVICE pRawInputDevices,
  39737.             PUINT puiNumDevices,
  39738.          UINT cbSize);
  39739.  
  39740.  
  39741. typedef struct tagRAWINPUTDEVICELIST {
  39742.     HANDLE hDevice;
  39743.     DWORD dwType;
  39744. } RAWINPUTDEVICELIST, *PRAWINPUTDEVICELIST;
  39745.  
  39746. __declspec(dllimport)
  39747. UINT
  39748. __stdcall
  39749. GetRawInputDeviceList(
  39750.                                      PRAWINPUTDEVICELIST pRawInputDeviceList,
  39751.             PUINT puiNumDevices,
  39752.          UINT cbSize);
  39753.  
  39754. __declspec(dllimport)
  39755. LRESULT
  39756. __stdcall
  39757. DefRawInputProc(
  39758.                        PRAWINPUT* paRawInput,
  39759.          INT nInput,
  39760.          UINT cbSizeHeader);
  39761.  
  39762.  
  39763. #pragma endregion
  39764. # 14985 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39765. #pragma region Desktop Family
  39766.  
  39767.  
  39768. typedef enum tagPOINTER_DEVICE_TYPE {
  39769.     POINTER_DEVICE_TYPE_INTEGRATED_PEN = 0x00000001,
  39770.     POINTER_DEVICE_TYPE_EXTERNAL_PEN = 0x00000002,
  39771.     POINTER_DEVICE_TYPE_TOUCH = 0x00000003,
  39772.  
  39773.     POINTER_DEVICE_TYPE_TOUCH_PAD = 0x00000004,
  39774.  
  39775.     POINTER_DEVICE_TYPE_MAX = 0xFFFFFFFF
  39776. } POINTER_DEVICE_TYPE;
  39777.  
  39778. typedef struct tagPOINTER_DEVICE_INFO {
  39779.     DWORD displayOrientation;
  39780.     HANDLE device;
  39781.     POINTER_DEVICE_TYPE pointerDeviceType;
  39782.     HMONITOR monitor;
  39783.     ULONG startingCursorId;
  39784.     USHORT maxActiveContacts;
  39785.     WCHAR productString[520];
  39786. } POINTER_DEVICE_INFO;
  39787.  
  39788. typedef struct tagPOINTER_DEVICE_PROPERTY {
  39789.     INT32 logicalMin;
  39790.     INT32 logicalMax;
  39791.     INT32 physicalMin;
  39792.     INT32 physicalMax;
  39793.     UINT32 unit;
  39794.     UINT32 unitExponent;
  39795.     USHORT usagePageId;
  39796.     USHORT usageId;
  39797. } POINTER_DEVICE_PROPERTY;
  39798.  
  39799. typedef enum tagPOINTER_DEVICE_CURSOR_TYPE {
  39800.     POINTER_DEVICE_CURSOR_TYPE_UNKNOWN = 0x00000000,
  39801.     POINTER_DEVICE_CURSOR_TYPE_TIP = 0x00000001,
  39802.     POINTER_DEVICE_CURSOR_TYPE_ERASER = 0x00000002,
  39803.     POINTER_DEVICE_CURSOR_TYPE_MAX = 0xFFFFFFFF
  39804. } POINTER_DEVICE_CURSOR_TYPE;
  39805.  
  39806. typedef struct tagPOINTER_DEVICE_CURSOR_INFO {
  39807.     UINT32 cursorId;
  39808.     POINTER_DEVICE_CURSOR_TYPE cursor;
  39809. } POINTER_DEVICE_CURSOR_INFO;
  39810.  
  39811. __declspec(dllimport)
  39812. BOOL
  39813. __stdcall
  39814. GetPointerDevices(
  39815.             UINT32* deviceCount,
  39816.                                    POINTER_DEVICE_INFO *pointerDevices);
  39817.  
  39818. __declspec(dllimport)
  39819. BOOL
  39820. __stdcall
  39821. GetPointerDevice(
  39822.          HANDLE device,
  39823.                     POINTER_DEVICE_INFO *pointerDevice);
  39824.  
  39825. __declspec(dllimport)
  39826. BOOL
  39827. __stdcall
  39828. GetPointerDeviceProperties(
  39829.          HANDLE device,
  39830.             UINT32* propertyCount,
  39831.                                      POINTER_DEVICE_PROPERTY *pointerProperties);
  39832.  
  39833. __declspec(dllimport)
  39834. BOOL
  39835. __stdcall
  39836. RegisterPointerDeviceNotifications(
  39837.          HWND window,
  39838.          BOOL notifyRange);
  39839.  
  39840. __declspec(dllimport)
  39841. BOOL
  39842. __stdcall
  39843. GetPointerDeviceRects(
  39844.          HANDLE device,
  39845.                     RECT* pointerDeviceRect,
  39846.                     RECT* displayRect);
  39847.  
  39848. __declspec(dllimport)
  39849. BOOL
  39850. __stdcall
  39851. GetPointerDeviceCursors(
  39852.          HANDLE device,
  39853.             UINT32* cursorCount,
  39854.                                    POINTER_DEVICE_CURSOR_INFO *deviceCursors);
  39855.  
  39856. __declspec(dllimport)
  39857. BOOL
  39858. __stdcall
  39859. GetRawPointerDeviceData(
  39860.          UINT32 pointerId,
  39861.          UINT32 historyCount,
  39862.          UINT32 propertiesCount,
  39863.                                 POINTER_DEVICE_PROPERTY* pProperties,
  39864.                                                  LONG* pValues);
  39865.  
  39866.  
  39867.  
  39868. #pragma endregion
  39869. # 15102 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39870. #pragma region Desktop Family
  39871.  
  39872.  
  39873. __declspec(dllimport)
  39874. BOOL
  39875. __stdcall
  39876. ChangeWindowMessageFilter(
  39877.          UINT message,
  39878.          DWORD dwFlag);
  39879.  
  39880.  
  39881. #pragma endregion
  39882. # 15127 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39883. #pragma region Desktop Family
  39884.  
  39885.  
  39886. typedef struct tagCHANGEFILTERSTRUCT {
  39887.     DWORD cbSize;
  39888.     DWORD ExtStatus;
  39889. } CHANGEFILTERSTRUCT, *PCHANGEFILTERSTRUCT;
  39890.  
  39891.  
  39892. #pragma endregion
  39893.  
  39894.  
  39895.  
  39896.  
  39897.  
  39898.  
  39899.  
  39900.  
  39901. #pragma region Desktop Family
  39902.  
  39903.  
  39904. __declspec(dllimport)
  39905. BOOL
  39906. __stdcall
  39907. ChangeWindowMessageFilterEx(
  39908.          HWND hwnd,
  39909.          UINT message,
  39910.          DWORD action,
  39911.                 PCHANGEFILTERSTRUCT pChangeFilterStruct);
  39912.  
  39913.  
  39914. #pragma endregion
  39915. # 15171 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39916. #pragma region Desktop Family
  39917.  
  39918.  
  39919.  
  39920.  
  39921.  
  39922. struct HGESTUREINFO__{int unused;}; typedef struct HGESTUREINFO__ *HGESTUREINFO;
  39923.  
  39924.  
  39925. #pragma endregion
  39926. # 15201 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39927. #pragma region Desktop Family
  39928. # 15212 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39929. typedef struct tagGESTUREINFO {
  39930.     UINT cbSize;
  39931.     DWORD dwFlags;
  39932.     DWORD dwID;
  39933.     HWND hwndTarget;
  39934.     POINTS ptsLocation;
  39935.     DWORD dwInstanceID;
  39936.     DWORD dwSequenceID;
  39937.     ULONGLONG ullArguments;
  39938.     UINT cbExtraArgs;
  39939. } GESTUREINFO, *PGESTUREINFO;
  39940. typedef GESTUREINFO const * PCGESTUREINFO;
  39941. # 15233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39942. typedef struct tagGESTURENOTIFYSTRUCT {
  39943.     UINT cbSize;
  39944.     DWORD dwFlags;
  39945.     HWND hwndTarget;
  39946.     POINTS ptsLocation;
  39947.     DWORD dwInstanceID;
  39948. } GESTURENOTIFYSTRUCT, *PGESTURENOTIFYSTRUCT;
  39949. # 15253 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39950. __declspec(dllimport)
  39951. BOOL
  39952. __stdcall
  39953. GetGestureInfo(
  39954.          HGESTUREINFO hGestureInfo,
  39955.           PGESTUREINFO pGestureInfo);
  39956.  
  39957.  
  39958.  
  39959.  
  39960.  
  39961.  
  39962.  
  39963. __declspec(dllimport)
  39964. BOOL
  39965. __stdcall
  39966. GetGestureExtraArgs(
  39967.          HGESTUREINFO hGestureInfo,
  39968.          UINT cbExtraArgs,
  39969.                                     PBYTE pExtraArgs);
  39970. # 15284 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39971. __declspec(dllimport)
  39972. BOOL
  39973. __stdcall
  39974. CloseGestureInfoHandle(
  39975.          HGESTUREINFO hGestureInfo);
  39976. # 15298 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39977. typedef struct tagGESTURECONFIG {
  39978.     DWORD dwID;
  39979.     DWORD dwWant;
  39980.     DWORD dwBlock;
  39981. } GESTURECONFIG, *PGESTURECONFIG;
  39982.  
  39983.  
  39984. #pragma endregion
  39985. # 15349 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  39986. #pragma region Desktop Family
  39987.  
  39988.  
  39989. __declspec(dllimport)
  39990. BOOL
  39991. __stdcall
  39992. SetGestureConfig(
  39993.          HWND hwnd,
  39994.          DWORD dwReserved,
  39995.          UINT cIDs,
  39996.                      PGESTURECONFIG pGestureConfig,
  39997.  
  39998.          UINT cbSize);
  39999.  
  40000.  
  40001.  
  40002.  
  40003.  
  40004. __declspec(dllimport)
  40005. BOOL
  40006. __stdcall
  40007. GetGestureConfig(
  40008.          HWND hwnd,
  40009.          DWORD dwReserved,
  40010.          DWORD dwFlags,
  40011.          PUINT pcIDs,
  40012.  
  40013.                             PGESTURECONFIG pGestureConfig,
  40014.  
  40015.          UINT cbSize);
  40016.  
  40017.  
  40018. #pragma endregion
  40019. # 15404 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  40020. #pragma region Desktop Family
  40021.  
  40022.  
  40023. __declspec(dllimport)
  40024. BOOL
  40025. __stdcall
  40026. ShutdownBlockReasonCreate(
  40027.          HWND hWnd,
  40028.          LPCWSTR pwszReason);
  40029.  
  40030. __declspec(dllimport)
  40031. BOOL
  40032. __stdcall
  40033. ShutdownBlockReasonQuery(
  40034.          HWND hWnd,
  40035.                                 LPWSTR pwszBuff,
  40036.             DWORD *pcchBuff);
  40037.  
  40038. __declspec(dllimport)
  40039. BOOL
  40040. __stdcall
  40041. ShutdownBlockReasonDestroy(
  40042.          HWND hWnd);
  40043.  
  40044.  
  40045. #pragma endregion
  40046.  
  40047.  
  40048.  
  40049.  
  40050. #pragma region Desktop Family
  40051.  
  40052.  
  40053.  
  40054.  
  40055.  
  40056. typedef enum tagINPUT_MESSAGE_DEVICE_TYPE {
  40057.     IMDT_UNAVAILABLE = 0x00000000,
  40058.     IMDT_KEYBOARD = 0x00000001,
  40059.     IMDT_MOUSE = 0x00000002,
  40060.     IMDT_TOUCH = 0x00000004,
  40061.     IMDT_PEN = 0x00000008,
  40062.  
  40063.     IMDT_TOUCHPAD = 0x00000010,
  40064.  
  40065.  } INPUT_MESSAGE_DEVICE_TYPE;
  40066.  
  40067. typedef enum tagINPUT_MESSAGE_ORIGIN_ID {
  40068.      IMO_UNAVAILABLE = 0x00000000,
  40069.      IMO_HARDWARE = 0x00000001,
  40070.      IMO_INJECTED = 0x00000002,
  40071.      IMO_SYSTEM = 0x00000004,
  40072. } INPUT_MESSAGE_ORIGIN_ID;
  40073.  
  40074.  
  40075.  
  40076.  
  40077.  typedef struct tagINPUT_MESSAGE_SOURCE {
  40078.      INPUT_MESSAGE_DEVICE_TYPE deviceType;
  40079.      INPUT_MESSAGE_ORIGIN_ID originId;
  40080.  } INPUT_MESSAGE_SOURCE;
  40081.  
  40082.  
  40083.  
  40084.  
  40085.  
  40086. __declspec(dllimport)
  40087. BOOL
  40088. __stdcall
  40089. GetCurrentInputMessageSource(
  40090.           INPUT_MESSAGE_SOURCE *inputMessageSource);
  40091.  
  40092. __declspec(dllimport)
  40093. BOOL
  40094. __stdcall
  40095. GetCIMSSM(
  40096.           INPUT_MESSAGE_SOURCE *inputMessageSource);
  40097.  
  40098.  
  40099. #pragma endregion
  40100.  
  40101.  
  40102.  
  40103.  
  40104.  
  40105. #pragma region Application Family or OneCore Family
  40106.  
  40107.  
  40108.  
  40109.  
  40110.  
  40111. typedef enum tagAR_STATE {
  40112.     AR_ENABLED = 0x0,
  40113.     AR_DISABLED = 0x1,
  40114.     AR_SUPPRESSED = 0x2,
  40115.     AR_REMOTESESSION = 0x4,
  40116.     AR_MULTIMON = 0x8,
  40117.     AR_NOSENSOR = 0x10,
  40118.     AR_NOT_SUPPORTED = 0x20,
  40119.     AR_DOCKED = 0x40,
  40120.     AR_LAPTOP = 0x80
  40121. } AR_STATE, *PAR_STATE;
  40122.  
  40123.  
  40124. #pragma endregion
  40125.  
  40126.  
  40127.  
  40128.  
  40129.  
  40130.  
  40131.  
  40132.  
  40133. #pragma region Desktop Family
  40134.  
  40135.  
  40136.  
  40137.  
  40138.  
  40139.  
  40140. typedef enum ORIENTATION_PREFERENCE {
  40141.     ORIENTATION_PREFERENCE_NONE = 0x0,
  40142.     ORIENTATION_PREFERENCE_LANDSCAPE = 0x1,
  40143.     ORIENTATION_PREFERENCE_PORTRAIT = 0x2,
  40144.     ORIENTATION_PREFERENCE_LANDSCAPE_FLIPPED = 0x4,
  40145.     ORIENTATION_PREFERENCE_PORTRAIT_FLIPPED = 0x8
  40146. } ORIENTATION_PREFERENCE;
  40147. # 15540 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  40148. __declspec(dllimport)
  40149. BOOL
  40150. __stdcall
  40151. GetAutoRotationState(
  40152.           PAR_STATE pState);
  40153.  
  40154. __declspec(dllimport)
  40155. BOOL
  40156. __stdcall
  40157. GetDisplayAutoRotationPreferences(
  40158.           ORIENTATION_PREFERENCE *pOrientation);
  40159.  
  40160. __declspec(dllimport)
  40161. BOOL
  40162. __stdcall
  40163. GetDisplayAutoRotationPreferencesByProcessId(
  40164.          DWORD dwProcessId,
  40165.           ORIENTATION_PREFERENCE *pOrientation,
  40166.           BOOL *fRotateScreen);
  40167.  
  40168. __declspec(dllimport)
  40169. BOOL
  40170. __stdcall
  40171. SetDisplayAutoRotationPreferences(
  40172.          ORIENTATION_PREFERENCE orientation);
  40173.  
  40174.  
  40175. #pragma endregion
  40176.  
  40177.  
  40178.  
  40179.  
  40180.  
  40181. #pragma region Desktop Family
  40182.  
  40183.  
  40184.  
  40185. __declspec(dllimport)
  40186. BOOL
  40187. __stdcall
  40188. IsImmersiveProcess(
  40189.          HANDLE hProcess);
  40190.  
  40191. __declspec(dllimport)
  40192. BOOL
  40193. __stdcall
  40194. SetProcessRestrictionExemption(
  40195.          BOOL fEnableExemption);
  40196.  
  40197.  
  40198. #pragma endregion
  40199.  
  40200.  
  40201.  
  40202.  
  40203. #pragma region Desktop Family
  40204. # 15625 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winuser.h" 3
  40205. #pragma option pop
  40206. # 205 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  40207.  
  40208.  
  40209. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 1 3
  40210. # 18 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40211. #pragma option push -b -a8 -pc -A- -w-pun
  40212. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40213. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\datetimeapi.h" 1 3
  40214. #pragma option push -b -a8 -pc -A- -w-pun
  40215. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\datetimeapi.h" 3
  40216. #pragma region Desktop Family or OneCore Family
  40217.  
  40218.  
  40219.  
  40220. __declspec(dllimport)
  40221. int
  40222. __stdcall
  40223. GetDateFormatA(
  40224.          LCID Locale,
  40225.          DWORD dwFlags,
  40226.              const SYSTEMTIME* lpDate,
  40227.              LPCSTR lpFormat,
  40228.                               LPSTR lpDateStr,
  40229.          int cchDate
  40230.     );
  40231.  
  40232. __declspec(dllimport)
  40233. int
  40234. __stdcall
  40235. GetDateFormatW(
  40236.          LCID Locale,
  40237.          DWORD dwFlags,
  40238.              const SYSTEMTIME* lpDate,
  40239.              LPCWSTR lpFormat,
  40240.                               LPWSTR lpDateStr,
  40241.          int cchDate
  40242.     );
  40243. # 61 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\datetimeapi.h" 3
  40244. __declspec(dllimport)
  40245. int
  40246. __stdcall
  40247. GetTimeFormatA(
  40248.          LCID Locale,
  40249.          DWORD dwFlags,
  40250.              const SYSTEMTIME* lpTime,
  40251.              LPCSTR lpFormat,
  40252.                               LPSTR lpTimeStr,
  40253.          int cchTime
  40254.     );
  40255.  
  40256. __declspec(dllimport)
  40257. int
  40258. __stdcall
  40259. GetTimeFormatW(
  40260.          LCID Locale,
  40261.          DWORD dwFlags,
  40262.              const SYSTEMTIME* lpTime,
  40263.              LPCWSTR lpFormat,
  40264.                               LPWSTR lpTimeStr,
  40265.          int cchTime
  40266.     );
  40267.  
  40268.  
  40269.  
  40270.  
  40271.  
  40272.  
  40273.  
  40274.  
  40275. #pragma endregion
  40276.  
  40277. #pragma region Application Family or OneCore Family
  40278.  
  40279.  
  40280. __declspec(dllimport)
  40281. int
  40282. __stdcall
  40283. GetTimeFormatEx(
  40284.              LPCWSTR lpLocaleName,
  40285.          DWORD dwFlags,
  40286.              const SYSTEMTIME* lpTime,
  40287.              LPCWSTR lpFormat,
  40288.                               LPWSTR lpTimeStr,
  40289.          int cchTime
  40290.     );
  40291.  
  40292.  
  40293. __declspec(dllimport)
  40294. int
  40295. __stdcall
  40296. GetDateFormatEx(
  40297.              LPCWSTR lpLocaleName,
  40298.          DWORD dwFlags,
  40299.              const SYSTEMTIME* lpDate,
  40300.              LPCWSTR lpFormat,
  40301.                               LPWSTR lpDateStr,
  40302.          int cchDate,
  40303.              LPCWSTR lpCalendar
  40304.     );
  40305.  
  40306.  
  40307.  
  40308. #pragma endregion
  40309.  
  40310. #pragma region Desktop Family or OneCore Family
  40311.  
  40312.  
  40313.  
  40314.  
  40315. __declspec(dllimport)
  40316. int
  40317. __stdcall
  40318. GetDurationFormatEx(
  40319.              LPCWSTR lpLocaleName,
  40320.          DWORD dwFlags,
  40321.              const SYSTEMTIME* lpDuration,
  40322.          ULONGLONG ullDuration,
  40323.              LPCWSTR lpFormat,
  40324.                                   LPWSTR lpDurationStr,
  40325.          int cchDuration
  40326.     );
  40327.  
  40328.  
  40329.  
  40330. #pragma endregion
  40331.  
  40332.  
  40333.  
  40334.  
  40335.  
  40336.  
  40337.  
  40338. #pragma option pop
  40339. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 2 3
  40340.  
  40341. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 1 3
  40342. #pragma option push -b -a8 -pc -A- -w-pun
  40343. # 688 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\libloaderapi.h" 3
  40344. #pragma option pop
  40345. # 32 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 2 3
  40346. # 76 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40347. #pragma region Application Family or OneCore Family
  40348. # 1054 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40349. typedef DWORD LGRPID;
  40350.  
  40351.  
  40352.  
  40353.  
  40354. typedef DWORD LCTYPE;
  40355.  
  40356.  
  40357.  
  40358.  
  40359. typedef DWORD CALTYPE;
  40360.  
  40361.  
  40362.  
  40363.  
  40364.  
  40365. typedef DWORD CALID;
  40366. # 1082 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40367. typedef struct _cpinfo {
  40368.     UINT MaxCharSize;
  40369.     BYTE DefaultChar[2];
  40370.     BYTE LeadByte[12];
  40371. } CPINFO, *LPCPINFO;
  40372.  
  40373.  
  40374.  
  40375. typedef struct _cpinfoexA {
  40376.     UINT MaxCharSize;
  40377.     BYTE DefaultChar[2];
  40378.     BYTE LeadByte[12];
  40379.     WCHAR UnicodeDefaultChar;
  40380.     UINT CodePage;
  40381.     CHAR CodePageName[260];
  40382. } CPINFOEXA, *LPCPINFOEXA;
  40383.  
  40384. typedef struct _cpinfoexW {
  40385.     UINT MaxCharSize;
  40386.     BYTE DefaultChar[2];
  40387.     BYTE LeadByte[12];
  40388.     WCHAR UnicodeDefaultChar;
  40389.     UINT CodePage;
  40390.     WCHAR CodePageName[260];
  40391. } CPINFOEXW, *LPCPINFOEXW;
  40392.  
  40393.  
  40394.  
  40395.  
  40396. typedef CPINFOEXA CPINFOEX;
  40397. typedef LPCPINFOEXA LPCPINFOEX;
  40398.  
  40399.  
  40400.  
  40401.  
  40402.  
  40403.  
  40404.  
  40405. typedef struct _numberfmtA {
  40406.     UINT NumDigits;
  40407.     UINT LeadingZero;
  40408.     UINT Grouping;
  40409.     LPSTR lpDecimalSep;
  40410.     LPSTR lpThousandSep;
  40411.     UINT NegativeOrder;
  40412. } NUMBERFMTA, *LPNUMBERFMTA;
  40413. typedef struct _numberfmtW {
  40414.     UINT NumDigits;
  40415.     UINT LeadingZero;
  40416.     UINT Grouping;
  40417.     LPWSTR lpDecimalSep;
  40418.     LPWSTR lpThousandSep;
  40419.     UINT NegativeOrder;
  40420. } NUMBERFMTW, *LPNUMBERFMTW;
  40421.  
  40422.  
  40423.  
  40424.  
  40425. typedef NUMBERFMTA NUMBERFMT;
  40426. typedef LPNUMBERFMTA LPNUMBERFMT;
  40427.  
  40428.  
  40429.  
  40430.  
  40431.  
  40432.  
  40433.  
  40434. typedef struct _currencyfmtA {
  40435.     UINT NumDigits;
  40436.     UINT LeadingZero;
  40437.     UINT Grouping;
  40438.     LPSTR lpDecimalSep;
  40439.     LPSTR lpThousandSep;
  40440.     UINT NegativeOrder;
  40441.     UINT PositiveOrder;
  40442.     LPSTR lpCurrencySymbol;
  40443. } CURRENCYFMTA, *LPCURRENCYFMTA;
  40444. typedef struct _currencyfmtW {
  40445.     UINT NumDigits;
  40446.     UINT LeadingZero;
  40447.     UINT Grouping;
  40448.     LPWSTR lpDecimalSep;
  40449.     LPWSTR lpThousandSep;
  40450.     UINT NegativeOrder;
  40451.     UINT PositiveOrder;
  40452.     LPWSTR lpCurrencySymbol;
  40453. } CURRENCYFMTW, *LPCURRENCYFMTW;
  40454.  
  40455.  
  40456.  
  40457.  
  40458. typedef CURRENCYFMTA CURRENCYFMT;
  40459. typedef LPCURRENCYFMTA LPCURRENCYFMT;
  40460.  
  40461.  
  40462.  
  40463.  
  40464.  
  40465.  
  40466. enum SYSNLS_FUNCTION{
  40467.     COMPARE_STRING = 0x0001,
  40468. };
  40469. typedef DWORD NLS_FUNCTION;
  40470. # 1199 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40471. typedef struct _nlsversioninfo{
  40472.     DWORD dwNLSVersionInfoSize;
  40473.     DWORD dwNLSVersion;
  40474.     DWORD dwDefinedVersion;
  40475.     DWORD dwEffectiveId;
  40476.     GUID guidCustomVersion;
  40477. } NLSVERSIONINFO, *LPNLSVERSIONINFO;
  40478. # 1224 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40479. typedef struct _nlsversioninfoex{
  40480.     DWORD dwNLSVersionInfoSize;
  40481.     DWORD dwNLSVersion;
  40482.     DWORD dwDefinedVersion;
  40483.     DWORD dwEffectiveId;
  40484.     GUID guidCustomVersion;
  40485. } NLSVERSIONINFOEX, *LPNLSVERSIONINFOEX;
  40486.  
  40487.  
  40488.  
  40489.  
  40490. typedef DWORD GEOTYPE;
  40491. typedef DWORD GEOCLASS;
  40492. # 1249 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40493. typedef LONG GEOID;
  40494. # 1261 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40495. enum SYSGEOTYPE {
  40496.     GEO_NATION = 0x0001,
  40497.     GEO_LATITUDE = 0x0002,
  40498.     GEO_LONGITUDE = 0x0003,
  40499.     GEO_ISO2 = 0x0004,
  40500.     GEO_ISO3 = 0x0005,
  40501.     GEO_RFC1766 = 0x0006,
  40502.     GEO_LCID = 0x0007,
  40503.     GEO_FRIENDLYNAME= 0x0008,
  40504.     GEO_OFFICIALNAME= 0x0009,
  40505.     GEO_TIMEZONES = 0x000A,
  40506.     GEO_OFFICIALLANGUAGES = 0x000B,
  40507.     GEO_ISO_UN_NUMBER = 0x000C,
  40508.     GEO_PARENT = 0x000D,
  40509.     GEO_DIALINGCODE = 0x000E,
  40510.     GEO_CURRENCYCODE= 0x000F,
  40511.     GEO_CURRENCYSYMBOL= 0x0010,
  40512.  
  40513.     GEO_NAME = 0x0011,
  40514.     GEO_ID = 0x0012
  40515.  
  40516. };
  40517.  
  40518.  
  40519.  
  40520.  
  40521.  
  40522. enum SYSGEOCLASS {
  40523.     GEOCLASS_NATION = 16,
  40524.     GEOCLASS_REGION = 14,
  40525.     GEOCLASS_ALL = 0
  40526. };
  40527.  
  40528.  
  40529.  
  40530.  
  40531.  
  40532.  
  40533. typedef enum _NORM_FORM {
  40534.     NormalizationOther = 0,
  40535.     NormalizationC = 0x1,
  40536.     NormalizationD = 0x2,
  40537.     NormalizationKC = 0x5,
  40538.  
  40539.     NormalizationKD = 0x6
  40540.  
  40541. } NORM_FORM;
  40542. # 1330 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40543. typedef BOOL (__stdcall* LANGUAGEGROUP_ENUMPROCA)(LGRPID, LPSTR, LPSTR, DWORD, LONG_PTR);
  40544.  
  40545. typedef BOOL (__stdcall* LANGGROUPLOCALE_ENUMPROCA)(LGRPID, LCID, LPSTR, LONG_PTR);
  40546. typedef BOOL (__stdcall* UILANGUAGE_ENUMPROCA)(LPSTR, LONG_PTR);
  40547. typedef BOOL (__stdcall* CODEPAGE_ENUMPROCA)(LPSTR);
  40548. typedef BOOL (__stdcall* DATEFMT_ENUMPROCA)(LPSTR);
  40549. typedef BOOL (__stdcall* DATEFMT_ENUMPROCEXA)(LPSTR, CALID);
  40550. typedef BOOL (__stdcall* TIMEFMT_ENUMPROCA)(LPSTR);
  40551. typedef BOOL (__stdcall* CALINFO_ENUMPROCA)(LPSTR);
  40552. typedef BOOL (__stdcall* CALINFO_ENUMPROCEXA)(LPSTR, CALID);
  40553. typedef BOOL (__stdcall* LOCALE_ENUMPROCA)(LPSTR);
  40554. typedef BOOL (__stdcall* LOCALE_ENUMPROCW)(LPWSTR);
  40555.  
  40556. typedef BOOL (__stdcall* LANGUAGEGROUP_ENUMPROCW)(LGRPID, LPWSTR, LPWSTR, DWORD, LONG_PTR);
  40557.  
  40558. typedef BOOL (__stdcall* LANGGROUPLOCALE_ENUMPROCW)(LGRPID, LCID, LPWSTR, LONG_PTR);
  40559. typedef BOOL (__stdcall* UILANGUAGE_ENUMPROCW)(LPWSTR, LONG_PTR);
  40560. typedef BOOL (__stdcall* CODEPAGE_ENUMPROCW)(LPWSTR);
  40561. typedef BOOL (__stdcall* DATEFMT_ENUMPROCW)(LPWSTR);
  40562. typedef BOOL (__stdcall* DATEFMT_ENUMPROCEXW)(LPWSTR, CALID);
  40563. typedef BOOL (__stdcall* TIMEFMT_ENUMPROCW)(LPWSTR);
  40564. typedef BOOL (__stdcall* CALINFO_ENUMPROCW)(LPWSTR);
  40565. typedef BOOL (__stdcall* CALINFO_ENUMPROCEXW)(LPWSTR, CALID);
  40566. typedef BOOL (__stdcall* GEO_ENUMPROC)(GEOID);
  40567.  
  40568. typedef BOOL (__stdcall* GEO_ENUMNAMEPROC)(PWSTR, LPARAM);
  40569. # 1428 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40570. typedef struct _FILEMUIINFO {
  40571.     DWORD dwSize;
  40572.     DWORD dwVersion;
  40573.     DWORD dwFileType;
  40574.     BYTE pChecksum[16];
  40575.     BYTE pServiceChecksum[16];
  40576.     DWORD dwLanguageNameOffset;
  40577.     DWORD dwTypeIDMainSize;
  40578.     DWORD dwTypeIDMainOffset;
  40579.     DWORD dwTypeNameMainOffset;
  40580.     DWORD dwTypeIDMUISize;
  40581.     DWORD dwTypeIDMUIOffset;
  40582.     DWORD dwTypeNameMUIOffset;
  40583.     BYTE abBuffer[8];
  40584. } FILEMUIINFO, *PFILEMUIINFO;
  40585.  
  40586.  
  40587.  
  40588. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\stringapiset.h" 1 3
  40589. #pragma option push -b -a8 -pc -A- -w-pun
  40590. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\stringapiset.h" 3
  40591. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 1 3
  40592. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\stringapiset.h" 2 3
  40593.  
  40594.  
  40595.  
  40596.  
  40597.  
  40598.  
  40599.  
  40600.  
  40601. #pragma region Application or OneCore Family
  40602.  
  40603.  
  40604. __declspec(dllimport)
  40605. int
  40606. __stdcall
  40607. CompareStringEx(
  40608.              LPCWSTR lpLocaleName,
  40609.          DWORD dwCmpFlags,
  40610.                                LPCWCH lpString1,
  40611.          int cchCount1,
  40612.                                LPCWCH lpString2,
  40613.          int cchCount2,
  40614.                LPNLSVERSIONINFO lpVersionInformation,
  40615.                LPVOID lpReserved,
  40616.                LPARAM lParam
  40617.     );
  40618.  
  40619.  
  40620. __declspec(dllimport)
  40621. int
  40622. __stdcall
  40623. CompareStringOrdinal(
  40624.                                LPCWCH lpString1,
  40625.          int cchCount1,
  40626.                                LPCWCH lpString2,
  40627.          int cchCount2,
  40628.          BOOL bIgnoreCase
  40629.     );
  40630.  
  40631.  
  40632.  
  40633. #pragma endregion
  40634.  
  40635.  
  40636.  
  40637. #pragma region Desktop or OneCore Family
  40638.  
  40639.  
  40640. __declspec(dllimport)
  40641. int
  40642. __stdcall
  40643. CompareStringW(
  40644.          LCID Locale,
  40645.          DWORD dwCmpFlags,
  40646.                                PCNZWCH lpString1,
  40647.          int cchCount1,
  40648.                                PCNZWCH lpString2,
  40649.          int cchCount2
  40650.     );
  40651.  
  40652.  
  40653.  
  40654.  
  40655.  
  40656. __declspec(dllimport)
  40657. int
  40658. __stdcall
  40659. FoldStringW(
  40660.          DWORD dwMapFlags,
  40661.                             LPCWCH lpSrcStr,
  40662.          int cchSrc,
  40663.                               LPWSTR lpDestStr,
  40664.          int cchDest
  40665.     );
  40666.  
  40667.  
  40668.  
  40669.  
  40670.  
  40671.  
  40672. #pragma endregion
  40673.  
  40674. #pragma region Application or OneCore Family
  40675.  
  40676.  
  40677. __declspec(dllimport)
  40678. BOOL
  40679. __stdcall
  40680. GetStringTypeExW(
  40681.          LCID Locale,
  40682.          DWORD dwInfoType,
  40683.                             LPCWCH lpSrcStr,
  40684.          int cchSrc,
  40685.                          LPWORD lpCharType
  40686.     );
  40687.  
  40688.  
  40689.  
  40690.  
  40691.  
  40692. __declspec(dllimport)
  40693. BOOL
  40694. __stdcall
  40695. GetStringTypeW(
  40696.          DWORD dwInfoType,
  40697.                             LPCWCH lpSrcStr,
  40698.          int cchSrc,
  40699.           LPWORD lpCharType
  40700.     );
  40701.  
  40702.  
  40703.  
  40704.  
  40705.  
  40706.  
  40707. __declspec(dllimport)
  40708.  
  40709.  
  40710. int
  40711. __stdcall
  40712. MultiByteToWideChar(
  40713.          UINT CodePage,
  40714.          DWORD dwFlags,
  40715.                                  LPCCH lpMultiByteStr,
  40716.          int cbMultiByte,
  40717.                                             LPWSTR lpWideCharStr,
  40718.          int cchWideChar
  40719.     );
  40720.  
  40721.  
  40722. __declspec(dllimport)
  40723.  
  40724.  
  40725. int
  40726. __stdcall
  40727. WideCharToMultiByte(
  40728.          UINT CodePage,
  40729.          DWORD dwFlags,
  40730.                                  LPCWCH lpWideCharStr,
  40731.          int cchWideChar,
  40732.                                                   LPSTR lpMultiByteStr,
  40733.          int cbMultiByte,
  40734.              LPCCH lpDefaultChar,
  40735.               LPBOOL lpUsedDefaultChar
  40736.     );
  40737.  
  40738.  
  40739.  
  40740. #pragma endregion
  40741.  
  40742.  
  40743.  
  40744.  
  40745.  
  40746.  
  40747. #pragma option pop
  40748. # 1445 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 2 3
  40749. # 1513 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40750. __declspec(dllimport)
  40751. BOOL
  40752. __stdcall
  40753. IsValidCodePage(
  40754.          UINT CodePage);
  40755.  
  40756. __declspec(dllimport)
  40757. UINT
  40758. __stdcall
  40759. GetACP(void);
  40760.  
  40761.  
  40762. #pragma endregion
  40763.  
  40764. #pragma region Desktop Family or OneCore Family
  40765.  
  40766.  
  40767. __declspec(dllimport)
  40768. UINT
  40769. __stdcall
  40770. GetOEMCP(void);
  40771.  
  40772.  
  40773. #pragma endregion
  40774.  
  40775. #pragma region Desktop or Pc Family or OneCore Family
  40776.  
  40777.  
  40778.  
  40779. __declspec(dllimport)
  40780. BOOL
  40781. __stdcall
  40782. GetCPInfo(
  40783.          UINT CodePage,
  40784.           LPCPINFO lpCPInfo);
  40785.  
  40786.  
  40787. __declspec(dllimport)
  40788. BOOL
  40789. __stdcall
  40790. GetCPInfoExA(
  40791.          UINT CodePage,
  40792.          DWORD dwFlags,
  40793.           LPCPINFOEXA lpCPInfoEx);
  40794.  
  40795. __declspec(dllimport)
  40796. BOOL
  40797. __stdcall
  40798. GetCPInfoExW(
  40799.          UINT CodePage,
  40800.          DWORD dwFlags,
  40801.           LPCPINFOEXW lpCPInfoEx);
  40802.  
  40803.  
  40804.  
  40805.  
  40806.  
  40807.  
  40808.  
  40809. #pragma endregion
  40810.  
  40811. #pragma region Desktop or OneCore Family
  40812.  
  40813.  
  40814.  
  40815.  
  40816.  
  40817.  
  40818.  
  40819. __declspec(dllimport)
  40820. int
  40821. __stdcall
  40822. CompareStringA(
  40823.          LCID Locale,
  40824.          DWORD dwCmpFlags,
  40825.                           PCNZCH lpString1,
  40826.          int cchCount1,
  40827.                           PCNZCH lpString2,
  40828.          int cchCount2);
  40829. # 1628 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40830. __declspec(dllimport)
  40831. int
  40832. __stdcall
  40833. FindNLSString(
  40834.                             LCID Locale,
  40835.                             DWORD dwFindNLSStringFlags,
  40836.                            LPCWSTR lpStringSource,
  40837.                             int cchSource,
  40838.                            LPCWSTR lpStringValue,
  40839.                             int cchValue,
  40840.                             LPINT pcchFound);
  40841.  
  40842.  
  40843.  
  40844.  
  40845. __declspec(dllimport)
  40846. int
  40847. __stdcall
  40848. LCMapStringW(
  40849.          LCID Locale,
  40850.          DWORD dwMapFlags,
  40851.                        LPCWSTR lpSrcStr,
  40852.          int cchSrc,
  40853.                                                LPWSTR lpDestStr,
  40854.          int cchDest);
  40855.  
  40856.  
  40857.  
  40858.  
  40859.  
  40860. __declspec(dllimport)
  40861. int
  40862. __stdcall
  40863. LCMapStringA(
  40864.          LCID Locale,
  40865.          DWORD dwMapFlags,
  40866.                        LPCSTR lpSrcStr,
  40867.          int cchSrc,
  40868.                                                LPSTR lpDestStr,
  40869.          int cchDest);
  40870.  
  40871.  
  40872.  
  40873.  
  40874.  
  40875. #pragma endregion
  40876.  
  40877. #pragma region Application Family or OneCore Family
  40878.  
  40879.  
  40880.  
  40881. __declspec(dllimport)
  40882. int
  40883. __stdcall
  40884. GetLocaleInfoW(
  40885.          LCID Locale,
  40886.          LCTYPE LCType,
  40887.                               LPWSTR lpLCData,
  40888.          int cchData);
  40889.  
  40890.  
  40891.  
  40892.  
  40893.  
  40894.  
  40895. __declspec(dllimport)
  40896. int
  40897. __stdcall
  40898. GetLocaleInfoA(
  40899.          LCID Locale,
  40900.          LCTYPE LCType,
  40901.                               LPSTR lpLCData,
  40902.          int cchData
  40903.     );
  40904.  
  40905.  
  40906.  
  40907.  
  40908.  
  40909.  
  40910. #pragma endregion
  40911.  
  40912. #pragma region Desktop or OneCore Family
  40913.  
  40914.  
  40915. __declspec(dllimport)
  40916. BOOL
  40917. __stdcall
  40918. SetLocaleInfoA(
  40919.          LCID Locale,
  40920.          LCTYPE LCType,
  40921.          LPCSTR lpLCData);
  40922. __declspec(dllimport)
  40923. BOOL
  40924. __stdcall
  40925. SetLocaleInfoW(
  40926.          LCID Locale,
  40927.          LCTYPE LCType,
  40928.          LPCWSTR lpLCData);
  40929. # 1736 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40930. __declspec(dllimport)
  40931. int
  40932. __stdcall
  40933. GetCalendarInfoA(
  40934.          LCID Locale,
  40935.          CALID Calendar,
  40936.          CALTYPE CalType,
  40937.                               LPSTR lpCalData,
  40938.          int cchData,
  40939.               LPDWORD lpValue);
  40940.  
  40941. __declspec(dllimport)
  40942. int
  40943. __stdcall
  40944. GetCalendarInfoW(
  40945.          LCID Locale,
  40946.          CALID Calendar,
  40947.          CALTYPE CalType,
  40948.                               LPWSTR lpCalData,
  40949.          int cchData,
  40950.               LPDWORD lpValue);
  40951.  
  40952.  
  40953.  
  40954.  
  40955.  
  40956.  
  40957. __declspec(dllimport)
  40958. BOOL
  40959. __stdcall
  40960. SetCalendarInfoA(
  40961.          LCID Locale,
  40962.          CALID Calendar,
  40963.          CALTYPE CalType,
  40964.          LPCSTR lpCalData);
  40965. __declspec(dllimport)
  40966. BOOL
  40967. __stdcall
  40968. SetCalendarInfoW(
  40969.          LCID Locale,
  40970.          CALID Calendar,
  40971.          CALTYPE CalType,
  40972.          LPCWSTR lpCalData);
  40973.  
  40974.  
  40975.  
  40976.  
  40977.  
  40978.  
  40979.  
  40980.  
  40981. #pragma endregion
  40982.  
  40983. #pragma region Desktop Family
  40984. # 1802 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  40985. __declspec(dllimport)
  40986. BOOL
  40987. __stdcall
  40988. LoadStringByReference(
  40989.                DWORD Flags,
  40990.                    PCWSTR Language,
  40991.                PCWSTR SourceString,
  40992.                                   PWSTR Buffer,
  40993.                ULONG cchBuffer,
  40994.                PCWSTR Directory,
  40995.                PULONG pcchBufferOut
  40996.     );
  40997.  
  40998.  
  40999.  
  41000.  
  41001. #pragma endregion
  41002.  
  41003. #pragma region Application Family or OneCore Family
  41004.  
  41005.  
  41006.  
  41007. __declspec(dllimport)
  41008. BOOL
  41009. __stdcall
  41010. IsDBCSLeadByte(
  41011.          BYTE TestChar
  41012.     );
  41013.  
  41014.  
  41015. __declspec(dllimport)
  41016. BOOL
  41017. __stdcall
  41018. IsDBCSLeadByteEx(
  41019.          UINT CodePage,
  41020.          BYTE TestChar
  41021.     );
  41022.  
  41023.  
  41024.  
  41025.  
  41026. __declspec(dllimport)
  41027. int
  41028. __stdcall
  41029. LCIDToLocaleName(
  41030.          LCID Locale,
  41031.                               LPWSTR lpName,
  41032.          int cchName,
  41033.          DWORD dwFlags);
  41034.  
  41035.  
  41036.  
  41037. __declspec(dllimport)
  41038. LCID
  41039. __stdcall
  41040. LocaleNameToLCID(
  41041.          LPCWSTR lpName,
  41042.          DWORD dwFlags);
  41043.  
  41044.  
  41045.  
  41046.  
  41047. #pragma endregion
  41048.  
  41049. #pragma region Desktop Family
  41050.  
  41051.  
  41052.  
  41053.  
  41054. __declspec(dllimport)
  41055. int
  41056. __stdcall
  41057. GetDurationFormat(
  41058.          LCID Locale,
  41059.          DWORD dwFlags,
  41060.              const SYSTEMTIME *lpDuration,
  41061.          ULONGLONG ullDuration,
  41062.              LPCWSTR lpFormat,
  41063.                                   LPWSTR lpDurationStr,
  41064.          int cchDuration);
  41065.  
  41066.  
  41067.  
  41068. #pragma endregion
  41069.  
  41070. #pragma region Desktop Family or OneCore Family
  41071.  
  41072.  
  41073.  
  41074. __declspec(dllimport)
  41075. int
  41076. __stdcall
  41077. GetNumberFormatA(
  41078.          LCID Locale,
  41079.          DWORD dwFlags,
  41080.          LPCSTR lpValue,
  41081.              const NUMBERFMTA *lpFormat,
  41082.                                 LPSTR lpNumberStr,
  41083.          int cchNumber);
  41084.  
  41085. __declspec(dllimport)
  41086. int
  41087. __stdcall
  41088. GetNumberFormatW(
  41089.          LCID Locale,
  41090.          DWORD dwFlags,
  41091.          LPCWSTR lpValue,
  41092.              const NUMBERFMTW *lpFormat,
  41093.                                 LPWSTR lpNumberStr,
  41094.          int cchNumber);
  41095.  
  41096.  
  41097.  
  41098.  
  41099.  
  41100.  
  41101.  
  41102. __declspec(dllimport)
  41103. int
  41104. __stdcall
  41105. GetCurrencyFormatA(
  41106.          LCID Locale,
  41107.          DWORD dwFlags,
  41108.          LPCSTR lpValue,
  41109.              const CURRENCYFMTA *lpFormat,
  41110.                                   LPSTR lpCurrencyStr,
  41111.          int cchCurrency);
  41112.  
  41113. __declspec(dllimport)
  41114. int
  41115. __stdcall
  41116. GetCurrencyFormatW(
  41117.          LCID Locale,
  41118.          DWORD dwFlags,
  41119.          LPCWSTR lpValue,
  41120.              const CURRENCYFMTW *lpFormat,
  41121.                                   LPWSTR lpCurrencyStr,
  41122.          int cchCurrency);
  41123.  
  41124.  
  41125.  
  41126.  
  41127.  
  41128.  
  41129.  
  41130. __declspec(dllimport)
  41131. BOOL
  41132. __stdcall
  41133. EnumCalendarInfoA(
  41134.          CALINFO_ENUMPROCA lpCalInfoEnumProc,
  41135.          LCID Locale,
  41136.          CALID Calendar,
  41137.          CALTYPE CalType);
  41138.  
  41139. __declspec(dllimport)
  41140. BOOL
  41141. __stdcall
  41142. EnumCalendarInfoW(
  41143.          CALINFO_ENUMPROCW lpCalInfoEnumProc,
  41144.          LCID Locale,
  41145.          CALID Calendar,
  41146.          CALTYPE CalType);
  41147. # 1972 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41148. __declspec(dllimport)
  41149. BOOL
  41150. __stdcall
  41151. EnumCalendarInfoExA(
  41152.          CALINFO_ENUMPROCEXA lpCalInfoEnumProcEx,
  41153.          LCID Locale,
  41154.          CALID Calendar,
  41155.          CALTYPE CalType);
  41156.  
  41157. __declspec(dllimport)
  41158. BOOL
  41159. __stdcall
  41160. EnumCalendarInfoExW(
  41161.          CALINFO_ENUMPROCEXW lpCalInfoEnumProcEx,
  41162.          LCID Locale,
  41163.          CALID Calendar,
  41164.          CALTYPE CalType);
  41165. # 1997 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41166. __declspec(dllimport)
  41167. BOOL
  41168. __stdcall
  41169. EnumTimeFormatsA(
  41170.          TIMEFMT_ENUMPROCA lpTimeFmtEnumProc,
  41171.          LCID Locale,
  41172.          DWORD dwFlags);
  41173.  
  41174. __declspec(dllimport)
  41175. BOOL
  41176. __stdcall
  41177. EnumTimeFormatsW(
  41178.          TIMEFMT_ENUMPROCW lpTimeFmtEnumProc,
  41179.          LCID Locale,
  41180.          DWORD dwFlags);
  41181.  
  41182.  
  41183.  
  41184.  
  41185.  
  41186.  
  41187.  
  41188. __declspec(dllimport)
  41189. BOOL
  41190. __stdcall
  41191. EnumDateFormatsA(
  41192.          DATEFMT_ENUMPROCA lpDateFmtEnumProc,
  41193.          LCID Locale,
  41194.          DWORD dwFlags);
  41195.  
  41196. __declspec(dllimport)
  41197. BOOL
  41198. __stdcall
  41199. EnumDateFormatsW(
  41200.          DATEFMT_ENUMPROCW lpDateFmtEnumProc,
  41201.          LCID Locale,
  41202.          DWORD dwFlags);
  41203. # 2042 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41204. __declspec(dllimport)
  41205. BOOL
  41206. __stdcall
  41207. EnumDateFormatsExA(
  41208.          DATEFMT_ENUMPROCEXA lpDateFmtEnumProcEx,
  41209.          LCID Locale,
  41210.          DWORD dwFlags);
  41211.  
  41212. __declspec(dllimport)
  41213. BOOL
  41214. __stdcall
  41215. EnumDateFormatsExW(
  41216.          DATEFMT_ENUMPROCEXW lpDateFmtEnumProcEx,
  41217.          LCID Locale,
  41218.          DWORD dwFlags);
  41219. # 2066 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41220. __declspec(dllimport)
  41221. BOOL
  41222. __stdcall
  41223. IsValidLanguageGroup(
  41224.          LGRPID LanguageGroup,
  41225.          DWORD dwFlags);
  41226.  
  41227.  
  41228.  
  41229. __declspec(dllimport)
  41230. BOOL
  41231. __stdcall
  41232. GetNLSVersion(
  41233.             NLS_FUNCTION Function,
  41234.             LCID Locale,
  41235.             LPNLSVERSIONINFO lpVersionInformation);
  41236.  
  41237.  
  41238. __declspec(dllimport)
  41239. BOOL
  41240. __stdcall
  41241. IsValidLocale(
  41242.          LCID Locale,
  41243.          DWORD dwFlags);
  41244.  
  41245.  
  41246. #pragma endregion
  41247.  
  41248. #pragma region Application Family or OneCore Family
  41249.  
  41250.  
  41251.  
  41252. __declspec(dllimport)
  41253. int
  41254. __stdcall
  41255. GetGeoInfoA(
  41256.          GEOID Location,
  41257.          GEOTYPE GeoType,
  41258.                               LPSTR lpGeoData,
  41259.          int cchData,
  41260.          LANGID LangId);
  41261.  
  41262. __declspec(dllimport)
  41263. int
  41264. __stdcall
  41265. GetGeoInfoW(
  41266.          GEOID Location,
  41267.          GEOTYPE GeoType,
  41268.                               LPWSTR lpGeoData,
  41269.          int cchData,
  41270.          LANGID LangId);
  41271.  
  41272.  
  41273.  
  41274.  
  41275.  
  41276.  
  41277.  
  41278. __declspec(dllimport)
  41279. int
  41280. __stdcall
  41281. GetGeoInfoEx(
  41282.          PWSTR location,
  41283.          GEOTYPE geoType,
  41284.                                    PWSTR geoData,
  41285.          int geoDataCount);
  41286.  
  41287.  
  41288.  
  41289. #pragma endregion
  41290.  
  41291. #pragma region Desktop or PC Family or OneCore Family
  41292.  
  41293.  
  41294.  
  41295. __declspec(dllimport)
  41296. BOOL
  41297. __stdcall
  41298. EnumSystemGeoID(
  41299.          GEOCLASS GeoClass,
  41300.          GEOID ParentGeoId,
  41301.          GEO_ENUMPROC lpGeoEnumProc);
  41302.  
  41303.  
  41304. __declspec(dllimport)
  41305. BOOL
  41306. __stdcall
  41307. EnumSystemGeoNames(
  41308.          GEOCLASS geoClass,
  41309.          GEO_ENUMNAMEPROC geoEnumProc,
  41310.              LPARAM data);
  41311.  
  41312.  
  41313.  
  41314. #pragma endregion
  41315.  
  41316.  
  41317. #pragma region Application Family or OneCore Family
  41318.  
  41319.  
  41320.  
  41321. __declspec(dllimport)
  41322. GEOID
  41323. __stdcall
  41324. GetUserGeoID(
  41325.          GEOCLASS GeoClass);
  41326.  
  41327.  
  41328.  
  41329.  
  41330.  
  41331.  
  41332. __declspec(dllimport)
  41333. int
  41334. __stdcall
  41335. GetUserDefaultGeoName(
  41336.                                  LPWSTR geoName,
  41337.          int geoNameCount
  41338. );
  41339.  
  41340.  
  41341. #pragma endregion
  41342.  
  41343. #pragma region Desktop Family or OneCore Family
  41344.  
  41345.  
  41346.  
  41347.  
  41348. __declspec(dllimport)
  41349. BOOL
  41350. __stdcall
  41351. SetUserGeoID(
  41352.          GEOID GeoId);
  41353.  
  41354.  
  41355.  
  41356. __declspec(dllimport)
  41357. BOOL
  41358. __stdcall
  41359. SetUserGeoName(
  41360.          PWSTR geoName);
  41361.  
  41362.  
  41363.  
  41364. __declspec(dllimport)
  41365. LCID
  41366. __stdcall
  41367. ConvertDefaultLocale(
  41368.          LCID Locale);
  41369.  
  41370. __declspec(dllimport)
  41371. LCID
  41372. __stdcall
  41373. GetThreadLocale(void);
  41374.  
  41375. __declspec(dllimport)
  41376. BOOL
  41377. __stdcall
  41378. SetThreadLocale(
  41379.          LCID Locale
  41380.     );
  41381.  
  41382.  
  41383.  
  41384. __declspec(dllimport)
  41385. LANGID
  41386. __stdcall
  41387. GetSystemDefaultUILanguage(void);
  41388.  
  41389.  
  41390. #pragma endregion
  41391.  
  41392. #pragma region Application Family or OneCore Family
  41393.  
  41394.  
  41395.  
  41396. __declspec(dllimport)
  41397. LANGID
  41398. __stdcall
  41399. GetUserDefaultUILanguage(void);
  41400.  
  41401.  
  41402.  
  41403. __declspec(dllimport)
  41404. LANGID
  41405. __stdcall
  41406. GetUserDefaultLangID(void);
  41407.  
  41408.  
  41409. #pragma endregion
  41410.  
  41411. #pragma region Desktop Family or OneCore Family
  41412.  
  41413.  
  41414.  
  41415. __declspec(dllimport)
  41416. LANGID
  41417. __stdcall
  41418. GetSystemDefaultLangID(void);
  41419.  
  41420.  
  41421. __declspec(dllimport)
  41422. LCID
  41423. __stdcall
  41424. GetSystemDefaultLCID(void);
  41425.  
  41426.  
  41427. __declspec(dllimport)
  41428. LCID
  41429. __stdcall
  41430. GetUserDefaultLCID(void);
  41431.  
  41432.  
  41433. #pragma endregion
  41434.  
  41435. #pragma region Desktop Family
  41436.  
  41437.  
  41438.  
  41439.  
  41440. #pragma endregion
  41441.  
  41442. #pragma region Desktop Family or OneCore Family
  41443.  
  41444.  
  41445. __declspec(dllimport)
  41446. LANGID
  41447. __stdcall
  41448. SetThreadUILanguage( LANGID LangId);
  41449.  
  41450.  
  41451.  
  41452.  
  41453. __declspec(dllimport)
  41454. LANGID
  41455. __stdcall
  41456. GetThreadUILanguage(void);
  41457.  
  41458. __declspec(dllimport)
  41459. BOOL
  41460. __stdcall
  41461. GetProcessPreferredUILanguages(
  41462.          DWORD dwFlags,
  41463.           PULONG pulNumLanguages,
  41464.                                            PZZWSTR pwszLanguagesBuffer,
  41465.             PULONG pcchLanguagesBuffer
  41466. );
  41467.  
  41468.  
  41469. __declspec(dllimport)
  41470. BOOL
  41471. __stdcall
  41472. SetProcessPreferredUILanguages(
  41473.                 DWORD dwFlags,
  41474.                 PCZZWSTR pwszLanguagesBuffer,
  41475.                 PULONG pulNumLanguages
  41476. );
  41477.  
  41478.  
  41479.  
  41480. #pragma endregion
  41481.  
  41482. #pragma region Desktop Family or Phone Family or OneCore Family
  41483.  
  41484.  
  41485.  
  41486. __declspec(dllimport)
  41487. BOOL
  41488. __stdcall
  41489. GetUserPreferredUILanguages (
  41490.          DWORD dwFlags,
  41491.           PULONG pulNumLanguages,
  41492.                                            PZZWSTR pwszLanguagesBuffer,
  41493.             PULONG pcchLanguagesBuffer
  41494. );
  41495.  
  41496.  
  41497.  
  41498.  
  41499. #pragma endregion
  41500.  
  41501. #pragma region Desktop Family or OneCore Family
  41502.  
  41503.  
  41504.  
  41505.  
  41506. __declspec(dllimport)
  41507. BOOL
  41508. __stdcall
  41509. GetSystemPreferredUILanguages (
  41510.          DWORD dwFlags,
  41511.           PULONG pulNumLanguages,
  41512.                                            PZZWSTR pwszLanguagesBuffer,
  41513.             PULONG pcchLanguagesBuffer
  41514. );
  41515.  
  41516.  
  41517. __declspec(dllimport)
  41518. BOOL
  41519. __stdcall
  41520. GetThreadPreferredUILanguages(
  41521.          DWORD dwFlags,
  41522.           PULONG pulNumLanguages,
  41523.                                            PZZWSTR pwszLanguagesBuffer,
  41524.             PULONG pcchLanguagesBuffer
  41525. );
  41526.  
  41527.  
  41528. __declspec(dllimport)
  41529. BOOL
  41530. __stdcall
  41531. SetThreadPreferredUILanguages(
  41532.                 DWORD dwFlags,
  41533.                 PCZZWSTR pwszLanguagesBuffer,
  41534.                 PULONG pulNumLanguages
  41535. );
  41536.  
  41537. __declspec(dllimport)
  41538.  
  41539. BOOL
  41540. __stdcall
  41541. GetFileMUIInfo(
  41542.                         DWORD dwFlags,
  41543.                         PCWSTR pcwszFilePath,
  41544.                                                                   PFILEMUIINFO pFileMUIInfo,
  41545.                         DWORD* pcbFileMUIInfo);
  41546.  
  41547. __declspec(dllimport)
  41548. BOOL
  41549. __stdcall
  41550. GetFileMUIPath(
  41551.          DWORD dwFlags,
  41552.          PCWSTR pcwszFilePath ,
  41553.                                              PWSTR pwszLanguage,
  41554.             PULONG pcchLanguage,
  41555.                                            PWSTR pwszFileMUIPath,
  41556.                     PULONG pcchFileMUIPath,
  41557.                     PULONGLONG pululEnumerator
  41558. );
  41559.  
  41560.  
  41561. __declspec(dllimport)
  41562. BOOL
  41563. __stdcall
  41564. GetUILanguageInfo(
  41565.          DWORD dwFlags,
  41566.          PCZZWSTR pwmszLanguage,
  41567.                                              PZZWSTR pwszFallbackLanguages,
  41568.                 PDWORD pcchFallbackLanguages,
  41569.           PDWORD pAttributes
  41570. );
  41571.  
  41572.  
  41573.  
  41574.  
  41575. #pragma endregion
  41576.  
  41577. #pragma region Desktop Family
  41578.  
  41579.  
  41580.  
  41581.  
  41582. __declspec(dllimport)
  41583. BOOL
  41584. __stdcall
  41585. NotifyUILanguageChange(
  41586.                 DWORD dwFlags,
  41587.                 PCWSTR pcwstrNewLanguage,
  41588.                 PCWSTR pcwstrPreviousLanguage,
  41589.                 DWORD dwReserved,
  41590.                 PDWORD pdwStatusRtrn
  41591. );
  41592.  
  41593.  
  41594.  
  41595.  
  41596. #pragma endregion
  41597.  
  41598.  
  41599.  
  41600.  
  41601.  
  41602.  
  41603. #pragma region Application Family or OneCore Family
  41604.  
  41605.  
  41606. __declspec(dllimport)
  41607. BOOL
  41608. __stdcall
  41609. GetStringTypeExA(
  41610.                          LCID Locale,
  41611.                          DWORD dwInfoType,
  41612.                          LPCSTR lpSrcStr,
  41613.                          int cchSrc,
  41614.                          LPWORD lpCharType);
  41615.  
  41616.  
  41617.  
  41618.  
  41619.  
  41620. #pragma endregion
  41621.  
  41622. #pragma region Desktop Family or OneCore Family
  41623. # 2482 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41624. __declspec(dllimport)
  41625. BOOL
  41626. __stdcall
  41627. GetStringTypeA(
  41628.          LCID Locale,
  41629.          DWORD dwInfoType,
  41630.                        LPCSTR lpSrcStr,
  41631.          int cchSrc,
  41632.           LPWORD lpCharType);
  41633.  
  41634. __declspec(dllimport)
  41635. int
  41636. __stdcall
  41637. FoldStringA(
  41638.          DWORD dwMapFlags,
  41639.                        LPCSTR lpSrcStr,
  41640.          int cchSrc,
  41641.                               LPSTR lpDestStr,
  41642.          int cchDest);
  41643.  
  41644.  
  41645.  
  41646.  
  41647.  
  41648.  
  41649.  
  41650. __declspec(dllimport)
  41651. BOOL
  41652. __stdcall
  41653. EnumSystemLocalesA(
  41654.          LOCALE_ENUMPROCA lpLocaleEnumProc,
  41655.          DWORD dwFlags);
  41656.  
  41657. __declspec(dllimport)
  41658. BOOL
  41659. __stdcall
  41660. EnumSystemLocalesW(
  41661.          LOCALE_ENUMPROCW lpLocaleEnumProc,
  41662.          DWORD dwFlags);
  41663. # 2532 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41664. __declspec(dllimport)
  41665. BOOL
  41666. __stdcall
  41667. EnumSystemLanguageGroupsA(
  41668.          LANGUAGEGROUP_ENUMPROCA lpLanguageGroupEnumProc,
  41669.          DWORD dwFlags,
  41670.          LONG_PTR lParam);
  41671.  
  41672. __declspec(dllimport)
  41673. BOOL
  41674. __stdcall
  41675. EnumSystemLanguageGroupsW(
  41676.          LANGUAGEGROUP_ENUMPROCW lpLanguageGroupEnumProc,
  41677.          DWORD dwFlags,
  41678.          LONG_PTR lParam);
  41679.  
  41680.  
  41681.  
  41682.  
  41683.  
  41684.  
  41685.  
  41686. __declspec(dllimport)
  41687. BOOL
  41688. __stdcall
  41689. EnumLanguageGroupLocalesA(
  41690.          LANGGROUPLOCALE_ENUMPROCA lpLangGroupLocaleEnumProc,
  41691.          LGRPID LanguageGroup,
  41692.          DWORD dwFlags,
  41693.          LONG_PTR lParam);
  41694.  
  41695. __declspec(dllimport)
  41696. BOOL
  41697. __stdcall
  41698. EnumLanguageGroupLocalesW(
  41699.          LANGGROUPLOCALE_ENUMPROCW lpLangGroupLocaleEnumProc,
  41700.          LGRPID LanguageGroup,
  41701.          DWORD dwFlags,
  41702.          LONG_PTR lParam);
  41703.  
  41704.  
  41705.  
  41706.  
  41707.  
  41708.  
  41709.  
  41710. #pragma endregion
  41711.  
  41712. #pragma region Application Family or OneCore Family
  41713.  
  41714.  
  41715.  
  41716. __declspec(dllimport)
  41717. BOOL
  41718. __stdcall
  41719. EnumUILanguagesA(
  41720.          UILANGUAGE_ENUMPROCA lpUILanguageEnumProc,
  41721.          DWORD dwFlags,
  41722.          LONG_PTR lParam);
  41723.  
  41724. __declspec(dllimport)
  41725. BOOL
  41726. __stdcall
  41727. EnumUILanguagesW(
  41728.          UILANGUAGE_ENUMPROCW lpUILanguageEnumProc,
  41729.          DWORD dwFlags,
  41730.          LONG_PTR lParam);
  41731. # 2608 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41732. #pragma endregion
  41733.  
  41734. #pragma region Desktop or PC Family or OneCore Family
  41735.  
  41736.  
  41737.  
  41738. __declspec(dllimport)
  41739. BOOL
  41740. __stdcall
  41741. EnumSystemCodePagesA(
  41742.          CODEPAGE_ENUMPROCA lpCodePageEnumProc,
  41743.          DWORD dwFlags);
  41744.  
  41745. __declspec(dllimport)
  41746. BOOL
  41747. __stdcall
  41748. EnumSystemCodePagesW(
  41749.          CODEPAGE_ENUMPROCW lpCodePageEnumProc,
  41750.          DWORD dwFlags);
  41751.  
  41752.  
  41753.  
  41754.  
  41755.  
  41756.  
  41757.  
  41758. #pragma endregion
  41759.  
  41760.  
  41761.  
  41762.  
  41763.  
  41764. #pragma region Application Family or OneCore Family
  41765.  
  41766.  
  41767.  
  41768.  
  41769. __declspec(dllimport)
  41770. int
  41771. __stdcall NormalizeString( NORM_FORM NormForm,
  41772.                                                      LPCWSTR lpSrcString,
  41773.                                                       int cwSrcLength,
  41774.                                                       LPWSTR lpDstString,
  41775.                                                       int cwDstLength );
  41776.  
  41777. __declspec(dllimport)
  41778. BOOL
  41779. __stdcall IsNormalizedString( NORM_FORM NormForm,
  41780.                                                  LPCWSTR lpString,
  41781.                                                   int cwLength );
  41782. # 2667 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41783. __declspec(dllimport)
  41784. int
  41785. __stdcall IdnToAscii( DWORD dwFlags,
  41786.                                                LPCWSTR lpUnicodeCharStr,
  41787.                                                 int cchUnicodeChar,
  41788.                                                  LPWSTR lpASCIICharStr,
  41789.                                                 int cchASCIIChar);
  41790.  
  41791.  
  41792.  
  41793.  
  41794.  
  41795. __declspec(dllimport)
  41796. int
  41797. __stdcall IdnToNameprepUnicode( DWORD dwFlags,
  41798.                                                             LPCWSTR lpUnicodeCharStr,
  41799.                                                              int cchUnicodeChar,
  41800.                                                                 LPWSTR lpNameprepCharStr,
  41801.                                                              int cchNameprepChar);
  41802.  
  41803.  
  41804.  
  41805.  
  41806.  
  41807. __declspec(dllimport)
  41808. int
  41809. __stdcall IdnToUnicode( DWORD dwFlags,
  41810.                                                   LPCWSTR lpASCIICharStr,
  41811.                                                    int cchASCIIChar,
  41812.                                                      LPWSTR lpUnicodeCharStr,
  41813.                                                    int cchUnicodeChar);
  41814.  
  41815.  
  41816.  
  41817.  
  41818.  
  41819. __declspec(dllimport)
  41820. BOOL
  41821. __stdcall VerifyScripts(
  41822.             DWORD dwFlags,
  41823.             LPCWSTR lpLocaleScripts,
  41824.             int cchLocaleScripts,
  41825.             LPCWSTR lpTestScripts,
  41826.             int cchTestScripts);
  41827.  
  41828. __declspec(dllimport)
  41829. int
  41830. __stdcall GetStringScripts(
  41831.                                      DWORD dwFlags,
  41832.                                      LPCWSTR lpString,
  41833.                                      int cchString,
  41834.                                      LPWSTR lpScripts,
  41835.                                      int cchScripts);
  41836.  
  41837.  
  41838.  
  41839.  
  41840. #pragma endregion
  41841.  
  41842.  
  41843.  
  41844. #pragma region Application Family or OneCore Family
  41845. # 2739 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41846. __declspec(dllimport)
  41847. int
  41848. __stdcall
  41849. GetLocaleInfoEx(
  41850.              LPCWSTR lpLocaleName,
  41851.          LCTYPE LCType,
  41852.                                          LPWSTR lpLCData,
  41853.          int cchData
  41854. );
  41855.  
  41856.  
  41857. #pragma endregion
  41858.  
  41859. #pragma region Desktop or PC Family or OneCore Family
  41860.  
  41861.  
  41862. __declspec(dllimport)
  41863. int
  41864. __stdcall
  41865. GetCalendarInfoEx(
  41866.              LPCWSTR lpLocaleName,
  41867.          CALID Calendar,
  41868.              LPCWSTR lpReserved,
  41869.          CALTYPE CalType,
  41870.                               LPWSTR lpCalData,
  41871.          int cchData,
  41872.               LPDWORD lpValue
  41873. );
  41874.  
  41875.  
  41876. #pragma endregion
  41877.  
  41878. #pragma region Application Family
  41879. # 2790 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41880. #pragma endregion
  41881.  
  41882. #pragma region Application Family or OneCore Family
  41883.  
  41884.  
  41885. __declspec(dllimport)
  41886. int
  41887. __stdcall
  41888. GetNumberFormatEx(
  41889.              LPCWSTR lpLocaleName,
  41890.          DWORD dwFlags,
  41891.          LPCWSTR lpValue,
  41892.              const NUMBERFMTW *lpFormat,
  41893.                                 LPWSTR lpNumberStr,
  41894.          int cchNumber
  41895. );
  41896.  
  41897. __declspec(dllimport)
  41898. int
  41899. __stdcall
  41900. GetCurrencyFormatEx(
  41901.              LPCWSTR lpLocaleName,
  41902.          DWORD dwFlags,
  41903.          LPCWSTR lpValue,
  41904.              const CURRENCYFMTW *lpFormat,
  41905.                                   LPWSTR lpCurrencyStr,
  41906.          int cchCurrency
  41907. );
  41908.  
  41909. __declspec(dllimport)
  41910. int
  41911. __stdcall
  41912. GetUserDefaultLocaleName(
  41913.                                 LPWSTR lpLocaleName,
  41914.          int cchLocaleName
  41915. );
  41916.  
  41917.  
  41918. #pragma endregion
  41919.  
  41920. #pragma region Desktop or PC Family or OneCore Family
  41921.  
  41922.  
  41923. __declspec(dllimport)
  41924. int
  41925. __stdcall
  41926. GetSystemDefaultLocaleName(
  41927.                                 LPWSTR lpLocaleName,
  41928.          int cchLocaleName
  41929. );
  41930.  
  41931. __declspec(dllimport)
  41932. BOOL
  41933. __stdcall
  41934. IsNLSDefinedString(
  41935.          NLS_FUNCTION Function,
  41936.          DWORD dwFlags,
  41937.          LPNLSVERSIONINFO lpVersionInformation,
  41938.                        LPCWSTR lpString,
  41939.          INT cchStr);
  41940.  
  41941. __declspec(dllimport)
  41942. BOOL
  41943. __stdcall
  41944. GetNLSVersionEx(
  41945.              NLS_FUNCTION function,
  41946.                 LPCWSTR lpLocaleName,
  41947.                 LPNLSVERSIONINFOEX lpVersionInformation
  41948. );
  41949.  
  41950.  
  41951. __declspec(dllimport)
  41952. DWORD
  41953. __stdcall
  41954. IsValidNLSVersion(
  41955.                 NLS_FUNCTION function,
  41956.                 LPCWSTR lpLocaleName,
  41957.                 LPNLSVERSIONINFOEX lpVersionInformation
  41958. );
  41959.  
  41960.  
  41961.  
  41962. #pragma endregion
  41963.  
  41964. #pragma region Application Family or OneCore Family
  41965.  
  41966.  
  41967. __declspec(dllimport)
  41968. int
  41969. __stdcall
  41970. FindNLSStringEx(
  41971.              LPCWSTR lpLocaleName,
  41972.          DWORD dwFindNLSStringFlags,
  41973.                           LPCWSTR lpStringSource,
  41974.          int cchSource,
  41975.                          LPCWSTR lpStringValue,
  41976.          int cchValue,
  41977.               LPINT pcchFound,
  41978.              LPNLSVERSIONINFO lpVersionInformation,
  41979.              LPVOID lpReserved,
  41980.              LPARAM sortHandle
  41981. );
  41982. # 2900 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  41983. __declspec(dllimport)
  41984. int
  41985. __stdcall
  41986. LCMapStringEx(
  41987.              LPCWSTR lpLocaleName,
  41988.          DWORD dwMapFlags,
  41989.                        LPCWSTR lpSrcStr,
  41990.          int cchSrc,
  41991.                               LPWSTR lpDestStr,
  41992.          int cchDest,
  41993.              LPNLSVERSIONINFO lpVersionInformation,
  41994.              LPVOID lpReserved,
  41995.              LPARAM sortHandle
  41996. );
  41997.  
  41998. __declspec(dllimport)
  41999. BOOL
  42000. __stdcall
  42001. IsValidLocaleName(
  42002.          LPCWSTR lpLocaleName
  42003. );
  42004.  
  42005. #pragma endregion
  42006.  
  42007. #pragma region Desktop or PC Family or OneCore Family
  42008.  
  42009.  
  42010. typedef BOOL (__stdcall* CALINFO_ENUMPROCEXEX)(LPWSTR, CALID, LPWSTR, LPARAM);
  42011.  
  42012. __declspec(dllimport)
  42013. BOOL
  42014. __stdcall
  42015. EnumCalendarInfoExEx(
  42016.          CALINFO_ENUMPROCEXEX pCalInfoEnumProcExEx,
  42017.              LPCWSTR lpLocaleName,
  42018.          CALID Calendar,
  42019.              LPCWSTR lpReserved,
  42020.          CALTYPE CalType,
  42021.          LPARAM lParam
  42022. );
  42023.  
  42024. typedef BOOL (__stdcall* DATEFMT_ENUMPROCEXEX)(LPWSTR, CALID, LPARAM);
  42025.  
  42026. __declspec(dllimport)
  42027. BOOL
  42028. __stdcall
  42029. EnumDateFormatsExEx(
  42030.          DATEFMT_ENUMPROCEXEX lpDateFmtEnumProcExEx,
  42031.              LPCWSTR lpLocaleName,
  42032.          DWORD dwFlags,
  42033.          LPARAM lParam
  42034. );
  42035.  
  42036. typedef BOOL (__stdcall* TIMEFMT_ENUMPROCEX)(LPWSTR, LPARAM);
  42037.  
  42038. __declspec(dllimport)
  42039. BOOL
  42040. __stdcall
  42041. EnumTimeFormatsEx(
  42042.          TIMEFMT_ENUMPROCEX lpTimeFmtEnumProcEx,
  42043.              LPCWSTR lpLocaleName,
  42044.          DWORD dwFlags,
  42045.          LPARAM lParam
  42046. );
  42047.  
  42048. typedef BOOL (__stdcall* LOCALE_ENUMPROCEX)(LPWSTR, DWORD, LPARAM);
  42049.  
  42050. __declspec(dllimport)
  42051. BOOL
  42052. __stdcall
  42053. EnumSystemLocalesEx(
  42054.          LOCALE_ENUMPROCEX lpLocaleEnumProcEx,
  42055.          DWORD dwFlags,
  42056.          LPARAM lParam,
  42057.              LPVOID lpReserved
  42058. );
  42059.  
  42060.  
  42061. #pragma endregion
  42062.  
  42063.  
  42064.  
  42065.  
  42066.  
  42067. #pragma region Application Family or OneCore Family
  42068.  
  42069.  
  42070. __declspec(dllimport)
  42071. int
  42072. __stdcall
  42073. ResolveLocaleName(
  42074.                                     LPCWSTR lpNameToResolve,
  42075.                                     LPWSTR lpLocaleName,
  42076.                                     int cchLocaleName
  42077. );
  42078.  
  42079.  
  42080. #pragma endregion
  42081.  
  42082.  
  42083.  
  42084. #pragma region Desktop Family
  42085.  
  42086.  
  42087.  
  42088.  
  42089. #pragma endregion
  42090. # 3023 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnls.h" 3
  42091. #pragma option pop
  42092. # 207 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  42093.  
  42094.  
  42095.  
  42096. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincon.h" 1 3
  42097. #pragma option push -b -a8 -pc -A- -w-pun
  42098. # 39 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincon.h" 3
  42099. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincontypes.h" 1 3
  42100. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincontypes.h" 3
  42101. #pragma option push -b -a8 -pc -A- -w-pun
  42102. # 34 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincontypes.h" 3
  42103. #pragma region Application Family
  42104.  
  42105.  
  42106. typedef struct _COORD {
  42107.     SHORT X;
  42108.     SHORT Y;
  42109. } COORD, *PCOORD;
  42110.  
  42111. typedef struct _SMALL_RECT {
  42112.     SHORT Left;
  42113.     SHORT Top;
  42114.     SHORT Right;
  42115.     SHORT Bottom;
  42116. } SMALL_RECT, *PSMALL_RECT;
  42117.  
  42118. typedef struct _KEY_EVENT_RECORD {
  42119.     BOOL bKeyDown;
  42120.     WORD wRepeatCount;
  42121.     WORD wVirtualKeyCode;
  42122.     WORD wVirtualScanCode;
  42123.     union {
  42124.         WCHAR UnicodeChar;
  42125.         CHAR AsciiChar;
  42126.     } uChar;
  42127.     DWORD dwControlKeyState;
  42128. } KEY_EVENT_RECORD, *PKEY_EVENT_RECORD;
  42129. # 83 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincontypes.h" 3
  42130. typedef struct _MOUSE_EVENT_RECORD {
  42131.     COORD dwMousePosition;
  42132.     DWORD dwButtonState;
  42133.     DWORD dwControlKeyState;
  42134.     DWORD dwEventFlags;
  42135. } MOUSE_EVENT_RECORD, *PMOUSE_EVENT_RECORD;
  42136. # 111 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincontypes.h" 3
  42137. typedef struct _WINDOW_BUFFER_SIZE_RECORD {
  42138.     COORD dwSize;
  42139. } WINDOW_BUFFER_SIZE_RECORD, *PWINDOW_BUFFER_SIZE_RECORD;
  42140.  
  42141. typedef struct _MENU_EVENT_RECORD {
  42142.     UINT dwCommandId;
  42143. } MENU_EVENT_RECORD, *PMENU_EVENT_RECORD;
  42144.  
  42145. typedef struct _FOCUS_EVENT_RECORD {
  42146.     BOOL bSetFocus;
  42147. } FOCUS_EVENT_RECORD, *PFOCUS_EVENT_RECORD;
  42148.  
  42149. typedef struct _INPUT_RECORD {
  42150.     WORD EventType;
  42151.     union {
  42152.         KEY_EVENT_RECORD KeyEvent;
  42153.         MOUSE_EVENT_RECORD MouseEvent;
  42154.         WINDOW_BUFFER_SIZE_RECORD WindowBufferSizeEvent;
  42155.         MENU_EVENT_RECORD MenuEvent;
  42156.         FOCUS_EVENT_RECORD FocusEvent;
  42157.     } Event;
  42158. } INPUT_RECORD, *PINPUT_RECORD;
  42159. # 144 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincontypes.h" 3
  42160. typedef struct _CHAR_INFO {
  42161.     union {
  42162.         WCHAR UnicodeChar;
  42163.         CHAR AsciiChar;
  42164.     } Char;
  42165.     WORD Attributes;
  42166. } CHAR_INFO, *PCHAR_INFO;
  42167.  
  42168. typedef struct _CONSOLE_FONT_INFO {
  42169.     DWORD nFont;
  42170.     COORD dwFontSize;
  42171. } CONSOLE_FONT_INFO, *PCONSOLE_FONT_INFO;
  42172.  
  42173.  
  42174. #pragma endregion
  42175.  
  42176.  
  42177.  
  42178.  
  42179.  
  42180. #pragma option pop
  42181. # 39 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincon.h" 2 3
  42182.  
  42183.  
  42184.  
  42185.  
  42186.  
  42187.  
  42188.  
  42189.  
  42190. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi.h" 1 3
  42191. #pragma option push -b -a8 -pc -A- -w-pun
  42192. # 28 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi.h" 3
  42193. #pragma region Application Family or OneCore Family
  42194.  
  42195.  
  42196. __declspec(dllimport)
  42197. BOOL
  42198. __stdcall
  42199. AllocConsole(
  42200.     void
  42201.     );
  42202.  
  42203.  
  42204. __declspec(dllimport)
  42205. BOOL
  42206. __stdcall
  42207. FreeConsole(
  42208.     void
  42209.     );
  42210.  
  42211.  
  42212.  
  42213.  
  42214. __declspec(dllimport)
  42215. BOOL
  42216. __stdcall
  42217. AttachConsole(
  42218.          DWORD dwProcessId
  42219.     );
  42220.  
  42221.  
  42222.  
  42223.  
  42224.  
  42225.  
  42226. __declspec(dllimport)
  42227. UINT
  42228. __stdcall
  42229. GetConsoleCP(
  42230.     void
  42231.     );
  42232.  
  42233.  
  42234. __declspec(dllimport)
  42235. UINT
  42236. __stdcall
  42237. GetConsoleOutputCP(
  42238.     void
  42239.     );
  42240. # 102 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi.h" 3
  42241. __declspec(dllimport)
  42242. BOOL
  42243. __stdcall
  42244. GetConsoleMode(
  42245.          HANDLE hConsoleHandle,
  42246.           LPDWORD lpMode
  42247.     );
  42248.  
  42249.  
  42250. __declspec(dllimport)
  42251. BOOL
  42252. __stdcall
  42253. SetConsoleMode(
  42254.          HANDLE hConsoleHandle,
  42255.          DWORD dwMode
  42256.     );
  42257.  
  42258.  
  42259. __declspec(dllimport)
  42260. BOOL
  42261. __stdcall
  42262. GetNumberOfConsoleInputEvents(
  42263.          HANDLE hConsoleInput,
  42264.           LPDWORD lpNumberOfEvents
  42265.     );
  42266.  
  42267.  
  42268. __declspec(dllimport)
  42269.  
  42270. BOOL
  42271. __stdcall
  42272. ReadConsoleInputA(
  42273.          HANDLE hConsoleInput,
  42274.                                                    PINPUT_RECORD lpBuffer,
  42275.          DWORD nLength,
  42276.                                         LPDWORD lpNumberOfEventsRead
  42277.     );
  42278.  
  42279. __declspec(dllimport)
  42280.  
  42281. BOOL
  42282. __stdcall
  42283. ReadConsoleInputW(
  42284.          HANDLE hConsoleInput,
  42285.                                                    PINPUT_RECORD lpBuffer,
  42286.          DWORD nLength,
  42287.                                         LPDWORD lpNumberOfEventsRead
  42288.     );
  42289. # 158 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi.h" 3
  42290. __declspec(dllimport)
  42291. BOOL
  42292. __stdcall
  42293. PeekConsoleInputA(
  42294.          HANDLE hConsoleInput,
  42295.                           PINPUT_RECORD lpBuffer,
  42296.          DWORD nLength,
  42297.           LPDWORD lpNumberOfEventsRead
  42298.     );
  42299.  
  42300. __declspec(dllimport)
  42301. BOOL
  42302. __stdcall
  42303. PeekConsoleInputW(
  42304.          HANDLE hConsoleInput,
  42305.                           PINPUT_RECORD lpBuffer,
  42306.          DWORD nLength,
  42307.           LPDWORD lpNumberOfEventsRead
  42308.     );
  42309.  
  42310.  
  42311.  
  42312.  
  42313.  
  42314.  
  42315.  
  42316. typedef struct _CONSOLE_READCONSOLE_CONTROL {
  42317.     ULONG nLength;
  42318.     ULONG nInitialChars;
  42319.     ULONG dwCtrlWakeupMask;
  42320.     ULONG dwControlKeyState;
  42321. } CONSOLE_READCONSOLE_CONTROL, *PCONSOLE_READCONSOLE_CONTROL;
  42322.  
  42323. __declspec(dllimport)
  42324.  
  42325. BOOL
  42326. __stdcall
  42327. ReadConsoleA(
  42328.          HANDLE hConsoleInput,
  42329.                                                                                                    LPVOID lpBuffer,
  42330.          DWORD nNumberOfCharsToRead,
  42331.                                                      LPDWORD lpNumberOfCharsRead,
  42332.              PCONSOLE_READCONSOLE_CONTROL pInputControl
  42333.     );
  42334.  
  42335. __declspec(dllimport)
  42336.  
  42337. BOOL
  42338. __stdcall
  42339. ReadConsoleW(
  42340.          HANDLE hConsoleInput,
  42341.                                                                                                      LPVOID lpBuffer,
  42342.          DWORD nNumberOfCharsToRead,
  42343.                                                      LPDWORD lpNumberOfCharsRead,
  42344.              PCONSOLE_READCONSOLE_CONTROL pInputControl
  42345.     );
  42346.  
  42347.  
  42348.  
  42349.  
  42350.  
  42351.  
  42352.  
  42353. __declspec(dllimport)
  42354. BOOL
  42355. __stdcall
  42356. WriteConsoleA(
  42357.          HANDLE hConsoleOutput,
  42358.                                       const void* lpBuffer,
  42359.          DWORD nNumberOfCharsToWrite,
  42360.               LPDWORD lpNumberOfCharsWritten,
  42361.                LPVOID lpReserved
  42362.     );
  42363.  
  42364. __declspec(dllimport)
  42365. BOOL
  42366. __stdcall
  42367. WriteConsoleW(
  42368.          HANDLE hConsoleOutput,
  42369.                                       const void* lpBuffer,
  42370.          DWORD nNumberOfCharsToWrite,
  42371.               LPDWORD lpNumberOfCharsWritten,
  42372.                LPVOID lpReserved
  42373.     );
  42374. # 265 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi.h" 3
  42375. typedef
  42376. BOOL
  42377. (__stdcall *PHANDLER_ROUTINE)(
  42378.          DWORD CtrlType
  42379.     );
  42380.  
  42381. __declspec(dllimport)
  42382. BOOL
  42383. __stdcall
  42384. SetConsoleCtrlHandler(
  42385.              PHANDLER_ROUTINE HandlerRoutine,
  42386.          BOOL Add
  42387.     );
  42388.  
  42389.  
  42390.  
  42391. #pragma endregion
  42392.  
  42393.  
  42394.  
  42395.  
  42396.  
  42397.  
  42398. #pragma option pop
  42399. # 47 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincon.h" 2 3
  42400.  
  42401. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi2.h" 1 3
  42402. #pragma option push -b -a8 -pc -A- -w-pun
  42403. # 29 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi2.h" 3
  42404. #pragma region Application Family or OneCore Family
  42405. # 54 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi2.h" 3
  42406. __declspec(dllimport)
  42407. BOOL
  42408. __stdcall
  42409. FillConsoleOutputCharacterA(
  42410.          HANDLE hConsoleOutput,
  42411.          CHAR cCharacter,
  42412.          DWORD nLength,
  42413.          COORD dwWriteCoord,
  42414.           LPDWORD lpNumberOfCharsWritten
  42415.     );
  42416.  
  42417. __declspec(dllimport)
  42418. BOOL
  42419. __stdcall
  42420. FillConsoleOutputCharacterW(
  42421.          HANDLE hConsoleOutput,
  42422.          WCHAR cCharacter,
  42423.          DWORD nLength,
  42424.          COORD dwWriteCoord,
  42425.           LPDWORD lpNumberOfCharsWritten
  42426.     );
  42427.  
  42428.  
  42429.  
  42430.  
  42431.  
  42432.  
  42433.  
  42434. __declspec(dllimport)
  42435. BOOL
  42436. __stdcall
  42437. FillConsoleOutputAttribute(
  42438.          HANDLE hConsoleOutput,
  42439.          WORD wAttribute,
  42440.          DWORD nLength,
  42441.          COORD dwWriteCoord,
  42442.           LPDWORD lpNumberOfAttrsWritten
  42443.     );
  42444.  
  42445.  
  42446. __declspec(dllimport)
  42447. BOOL
  42448. __stdcall
  42449. GenerateConsoleCtrlEvent(
  42450.          DWORD dwCtrlEvent,
  42451.          DWORD dwProcessGroupId
  42452.     );
  42453.  
  42454.  
  42455. __declspec(dllimport)
  42456. HANDLE
  42457. __stdcall
  42458. CreateConsoleScreenBuffer(
  42459.          DWORD dwDesiredAccess,
  42460.          DWORD dwShareMode,
  42461.              const SECURITY_ATTRIBUTES* lpSecurityAttributes,
  42462.          DWORD dwFlags,
  42463.                LPVOID lpScreenBufferData
  42464.     );
  42465.  
  42466.  
  42467. __declspec(dllimport)
  42468. BOOL
  42469. __stdcall
  42470. SetConsoleActiveScreenBuffer(
  42471.          HANDLE hConsoleOutput
  42472.     );
  42473.  
  42474.  
  42475. __declspec(dllimport)
  42476. BOOL
  42477. __stdcall
  42478. FlushConsoleInputBuffer(
  42479.          HANDLE hConsoleInput
  42480.     );
  42481.  
  42482.  
  42483. __declspec(dllimport)
  42484. BOOL
  42485. __stdcall
  42486. SetConsoleCP(
  42487.          UINT wCodePageID
  42488.     );
  42489.  
  42490.  
  42491. __declspec(dllimport)
  42492. BOOL
  42493. __stdcall
  42494. SetConsoleOutputCP(
  42495.          UINT wCodePageID
  42496.     );
  42497.  
  42498.  
  42499. typedef struct _CONSOLE_CURSOR_INFO {
  42500.     DWORD dwSize;
  42501.     BOOL bVisible;
  42502. } CONSOLE_CURSOR_INFO, *PCONSOLE_CURSOR_INFO;
  42503.  
  42504. __declspec(dllimport)
  42505. BOOL
  42506. __stdcall
  42507. GetConsoleCursorInfo(
  42508.          HANDLE hConsoleOutput,
  42509.           PCONSOLE_CURSOR_INFO lpConsoleCursorInfo
  42510.     );
  42511.  
  42512.  
  42513. __declspec(dllimport)
  42514. BOOL
  42515. __stdcall
  42516. SetConsoleCursorInfo(
  42517.          HANDLE hConsoleOutput,
  42518.          const CONSOLE_CURSOR_INFO* lpConsoleCursorInfo
  42519.     );
  42520.  
  42521.  
  42522. typedef struct _CONSOLE_SCREEN_BUFFER_INFO {
  42523.     COORD dwSize;
  42524.     COORD dwCursorPosition;
  42525.     WORD wAttributes;
  42526.     SMALL_RECT srWindow;
  42527.     COORD dwMaximumWindowSize;
  42528. } CONSOLE_SCREEN_BUFFER_INFO, *PCONSOLE_SCREEN_BUFFER_INFO;
  42529.  
  42530. __declspec(dllimport)
  42531. BOOL
  42532. __stdcall
  42533. GetConsoleScreenBufferInfo(
  42534.          HANDLE hConsoleOutput,
  42535.           PCONSOLE_SCREEN_BUFFER_INFO lpConsoleScreenBufferInfo
  42536.     );
  42537.  
  42538.  
  42539. typedef struct _CONSOLE_SCREEN_BUFFER_INFOEX {
  42540.     ULONG cbSize;
  42541.     COORD dwSize;
  42542.     COORD dwCursorPosition;
  42543.     WORD wAttributes;
  42544.     SMALL_RECT srWindow;
  42545.     COORD dwMaximumWindowSize;
  42546.     WORD wPopupAttributes;
  42547.     BOOL bFullscreenSupported;
  42548.     COLORREF ColorTable[16];
  42549. } CONSOLE_SCREEN_BUFFER_INFOEX, *PCONSOLE_SCREEN_BUFFER_INFOEX;
  42550.  
  42551. __declspec(dllimport)
  42552. BOOL
  42553. __stdcall
  42554. GetConsoleScreenBufferInfoEx(
  42555.          HANDLE hConsoleOutput,
  42556.             PCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx
  42557.     );
  42558.  
  42559.  
  42560. __declspec(dllimport)
  42561. BOOL
  42562. __stdcall
  42563. SetConsoleScreenBufferInfoEx(
  42564.          HANDLE hConsoleOutput,
  42565.          PCONSOLE_SCREEN_BUFFER_INFOEX lpConsoleScreenBufferInfoEx
  42566.     );
  42567.  
  42568.  
  42569. __declspec(dllimport)
  42570. BOOL
  42571. __stdcall
  42572. SetConsoleScreenBufferSize(
  42573.          HANDLE hConsoleOutput,
  42574.          COORD dwSize
  42575.     );
  42576.  
  42577.  
  42578. __declspec(dllimport)
  42579. BOOL
  42580. __stdcall
  42581. SetConsoleCursorPosition(
  42582.          HANDLE hConsoleOutput,
  42583.          COORD dwCursorPosition
  42584.     );
  42585.  
  42586.  
  42587. __declspec(dllimport)
  42588. COORD
  42589. __stdcall
  42590. GetLargestConsoleWindowSize(
  42591.          HANDLE hConsoleOutput
  42592.     );
  42593.  
  42594.  
  42595. __declspec(dllimport)
  42596. BOOL
  42597. __stdcall
  42598. SetConsoleTextAttribute(
  42599.          HANDLE hConsoleOutput,
  42600.          WORD wAttributes
  42601.     );
  42602.  
  42603.  
  42604. __declspec(dllimport)
  42605. BOOL
  42606. __stdcall
  42607. SetConsoleWindowInfo(
  42608.          HANDLE hConsoleOutput,
  42609.          BOOL bAbsolute,
  42610.          const SMALL_RECT* lpConsoleWindow
  42611.     );
  42612.  
  42613.  
  42614. __declspec(dllimport)
  42615. BOOL
  42616. __stdcall
  42617. WriteConsoleOutputCharacterA(
  42618.          HANDLE hConsoleOutput,
  42619.                         LPCSTR lpCharacter,
  42620.          DWORD nLength,
  42621.          COORD dwWriteCoord,
  42622.           LPDWORD lpNumberOfCharsWritten
  42623.     );
  42624.  
  42625. __declspec(dllimport)
  42626. BOOL
  42627. __stdcall
  42628. WriteConsoleOutputCharacterW(
  42629.          HANDLE hConsoleOutput,
  42630.                         LPCWSTR lpCharacter,
  42631.          DWORD nLength,
  42632.          COORD dwWriteCoord,
  42633.           LPDWORD lpNumberOfCharsWritten
  42634.     );
  42635.  
  42636.  
  42637.  
  42638.  
  42639.  
  42640.  
  42641.  
  42642. __declspec(dllimport)
  42643. BOOL
  42644. __stdcall
  42645. WriteConsoleOutputAttribute(
  42646.          HANDLE hConsoleOutput,
  42647.                         const WORD* lpAttribute,
  42648.          DWORD nLength,
  42649.          COORD dwWriteCoord,
  42650.           LPDWORD lpNumberOfAttrsWritten
  42651.     );
  42652.  
  42653.  
  42654. __declspec(dllimport)
  42655. BOOL
  42656. __stdcall
  42657. ReadConsoleOutputCharacterA(
  42658.          HANDLE hConsoleOutput,
  42659.                           LPSTR lpCharacter,
  42660.          DWORD nLength,
  42661.          COORD dwReadCoord,
  42662.           LPDWORD lpNumberOfCharsRead
  42663.     );
  42664.  
  42665. __declspec(dllimport)
  42666. BOOL
  42667. __stdcall
  42668. ReadConsoleOutputCharacterW(
  42669.          HANDLE hConsoleOutput,
  42670.                           LPWSTR lpCharacter,
  42671.          DWORD nLength,
  42672.          COORD dwReadCoord,
  42673.           LPDWORD lpNumberOfCharsRead
  42674.     );
  42675.  
  42676.  
  42677.  
  42678.  
  42679.  
  42680.  
  42681.  
  42682. __declspec(dllimport)
  42683. BOOL
  42684. __stdcall
  42685. ReadConsoleOutputAttribute(
  42686.          HANDLE hConsoleOutput,
  42687.                           LPWORD lpAttribute,
  42688.          DWORD nLength,
  42689.          COORD dwReadCoord,
  42690.           LPDWORD lpNumberOfAttrsRead
  42691.     );
  42692.  
  42693.  
  42694. __declspec(dllimport)
  42695. BOOL
  42696. __stdcall
  42697. WriteConsoleInputA(
  42698.          HANDLE hConsoleInput,
  42699.                         const INPUT_RECORD* lpBuffer,
  42700.          DWORD nLength,
  42701.           LPDWORD lpNumberOfEventsWritten
  42702.     );
  42703.  
  42704. __declspec(dllimport)
  42705. BOOL
  42706. __stdcall
  42707. WriteConsoleInputW(
  42708.          HANDLE hConsoleInput,
  42709.                         const INPUT_RECORD* lpBuffer,
  42710.          DWORD nLength,
  42711.           LPDWORD lpNumberOfEventsWritten
  42712.     );
  42713.  
  42714.  
  42715.  
  42716.  
  42717.  
  42718.  
  42719.  
  42720. __declspec(dllimport)
  42721. BOOL
  42722. __stdcall
  42723. ScrollConsoleScreenBufferA(
  42724.          HANDLE hConsoleOutput,
  42725.          const SMALL_RECT* lpScrollRectangle,
  42726.              const SMALL_RECT* lpClipRectangle,
  42727.          COORD dwDestinationOrigin,
  42728.          const CHAR_INFO* lpFill
  42729.     );
  42730.  
  42731. __declspec(dllimport)
  42732. BOOL
  42733. __stdcall
  42734. ScrollConsoleScreenBufferW(
  42735.          HANDLE hConsoleOutput,
  42736.          const SMALL_RECT* lpScrollRectangle,
  42737.              const SMALL_RECT* lpClipRectangle,
  42738.          COORD dwDestinationOrigin,
  42739.          const CHAR_INFO* lpFill
  42740.     );
  42741.  
  42742.  
  42743.  
  42744.  
  42745.  
  42746.  
  42747.  
  42748. __declspec(dllimport)
  42749. BOOL
  42750. __stdcall
  42751. WriteConsoleOutputA(
  42752.          HANDLE hConsoleOutput,
  42753.                                                 const CHAR_INFO* lpBuffer,
  42754.          COORD dwBufferSize,
  42755.          COORD dwBufferCoord,
  42756.             PSMALL_RECT lpWriteRegion
  42757.     );
  42758.  
  42759. __declspec(dllimport)
  42760. BOOL
  42761. __stdcall
  42762. WriteConsoleOutputW(
  42763.          HANDLE hConsoleOutput,
  42764.                                                 const CHAR_INFO* lpBuffer,
  42765.          COORD dwBufferSize,
  42766.          COORD dwBufferCoord,
  42767.             PSMALL_RECT lpWriteRegion
  42768.     );
  42769.  
  42770.  
  42771.  
  42772.  
  42773.  
  42774.  
  42775.  
  42776. __declspec(dllimport)
  42777. BOOL
  42778. __stdcall
  42779. ReadConsoleOutputA(
  42780.          HANDLE hConsoleOutput,
  42781.                                                   PCHAR_INFO lpBuffer,
  42782.          COORD dwBufferSize,
  42783.          COORD dwBufferCoord,
  42784.             PSMALL_RECT lpReadRegion
  42785.     );
  42786.  
  42787. __declspec(dllimport)
  42788. BOOL
  42789. __stdcall
  42790. ReadConsoleOutputW(
  42791.          HANDLE hConsoleOutput,
  42792.                                                   PCHAR_INFO lpBuffer,
  42793.          COORD dwBufferSize,
  42794.          COORD dwBufferCoord,
  42795.             PSMALL_RECT lpReadRegion
  42796.     );
  42797. # 453 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi2.h" 3
  42798. __declspec(dllimport)
  42799. DWORD
  42800. __stdcall
  42801. GetConsoleTitleA(
  42802.                         LPSTR lpConsoleTitle,
  42803.          DWORD nSize
  42804.     );
  42805.  
  42806. __declspec(dllimport)
  42807. DWORD
  42808. __stdcall
  42809. GetConsoleTitleW(
  42810.                         LPWSTR lpConsoleTitle,
  42811.          DWORD nSize
  42812.     );
  42813. # 477 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi2.h" 3
  42814. __declspec(dllimport)
  42815. DWORD
  42816. __stdcall
  42817. GetConsoleOriginalTitleA(
  42818.                         LPSTR lpConsoleTitle,
  42819.          DWORD nSize
  42820.     );
  42821.  
  42822. __declspec(dllimport)
  42823. DWORD
  42824. __stdcall
  42825. GetConsoleOriginalTitleW(
  42826.                         LPWSTR lpConsoleTitle,
  42827.          DWORD nSize
  42828.     );
  42829. # 501 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi2.h" 3
  42830. __declspec(dllimport)
  42831. BOOL
  42832. __stdcall
  42833. SetConsoleTitleA(
  42834.          LPCSTR lpConsoleTitle
  42835.     );
  42836.  
  42837. __declspec(dllimport)
  42838. BOOL
  42839. __stdcall
  42840. SetConsoleTitleW(
  42841.          LPCWSTR lpConsoleTitle
  42842.     );
  42843.  
  42844.  
  42845.  
  42846.  
  42847.  
  42848.  
  42849.  
  42850.  
  42851. #pragma endregion
  42852.  
  42853.  
  42854.  
  42855.  
  42856.  
  42857.  
  42858. #pragma option pop
  42859. # 48 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincon.h" 2 3
  42860.  
  42861. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi3.h" 1 3
  42862. #pragma option push -b -a8 -pc -A- -w-pun
  42863. # 33 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi3.h" 3
  42864. #pragma region Application Family or OneCore Family
  42865.  
  42866.  
  42867. __declspec(dllimport)
  42868. BOOL
  42869. __stdcall
  42870. GetNumberOfConsoleMouseButtons(
  42871.           LPDWORD lpNumberOfMouseButtons
  42872.     );
  42873.  
  42874.  
  42875.  
  42876.  
  42877. __declspec(dllimport)
  42878. COORD
  42879. __stdcall
  42880. GetConsoleFontSize(
  42881.          HANDLE hConsoleOutput,
  42882.          DWORD nFont
  42883.     );
  42884.  
  42885.  
  42886. __declspec(dllimport)
  42887. BOOL
  42888. __stdcall
  42889. GetCurrentConsoleFont(
  42890.          HANDLE hConsoleOutput,
  42891.          BOOL bMaximumWindow,
  42892.           PCONSOLE_FONT_INFO lpConsoleCurrentFont
  42893.     );
  42894.  
  42895.  
  42896.  
  42897.  
  42898. typedef struct _CONSOLE_FONT_INFOEX {
  42899.     ULONG cbSize;
  42900.     DWORD nFont;
  42901.     COORD dwFontSize;
  42902.     UINT FontFamily;
  42903.     UINT FontWeight;
  42904.     WCHAR FaceName[32];
  42905. } CONSOLE_FONT_INFOEX, *PCONSOLE_FONT_INFOEX;
  42906.  
  42907. __declspec(dllimport)
  42908. BOOL
  42909. __stdcall
  42910. GetCurrentConsoleFontEx(
  42911.          HANDLE hConsoleOutput,
  42912.          BOOL bMaximumWindow,
  42913.           PCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx
  42914.     );
  42915.  
  42916.  
  42917. __declspec(dllimport)
  42918. BOOL
  42919. __stdcall
  42920. SetCurrentConsoleFontEx(
  42921.          HANDLE hConsoleOutput,
  42922.          BOOL bMaximumWindow,
  42923.          PCONSOLE_FONT_INFOEX lpConsoleCurrentFontEx
  42924.     );
  42925. # 108 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi3.h" 3
  42926. typedef struct _CONSOLE_SELECTION_INFO {
  42927.     DWORD dwFlags;
  42928.     COORD dwSelectionAnchor;
  42929.     SMALL_RECT srSelection;
  42930. } CONSOLE_SELECTION_INFO, *PCONSOLE_SELECTION_INFO;
  42931.  
  42932. __declspec(dllimport)
  42933. BOOL
  42934. __stdcall
  42935. GetConsoleSelectionInfo(
  42936.           PCONSOLE_SELECTION_INFO lpConsoleSelectionInfo
  42937.     );
  42938. # 128 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi3.h" 3
  42939. typedef struct _CONSOLE_HISTORY_INFO {
  42940.     UINT cbSize;
  42941.     UINT HistoryBufferSize;
  42942.     UINT NumberOfHistoryBuffers;
  42943.     DWORD dwFlags;
  42944. } CONSOLE_HISTORY_INFO, *PCONSOLE_HISTORY_INFO;
  42945.  
  42946. __declspec(dllimport)
  42947. BOOL
  42948. __stdcall
  42949. GetConsoleHistoryInfo(
  42950.           PCONSOLE_HISTORY_INFO lpConsoleHistoryInfo
  42951.     );
  42952.  
  42953.  
  42954. __declspec(dllimport)
  42955. BOOL
  42956. __stdcall
  42957. SetConsoleHistoryInfo(
  42958.          PCONSOLE_HISTORY_INFO lpConsoleHistoryInfo
  42959.     );
  42960.  
  42961.  
  42962.  
  42963.  
  42964.  
  42965. __declspec(dllimport)
  42966. BOOL
  42967. __stdcall
  42968. GetConsoleDisplayMode(
  42969.           LPDWORD lpModeFlags
  42970.     );
  42971.  
  42972.  
  42973.  
  42974.  
  42975.  
  42976. __declspec(dllimport)
  42977. BOOL
  42978. __stdcall
  42979. SetConsoleDisplayMode(
  42980.          HANDLE hConsoleOutput,
  42981.          DWORD dwFlags,
  42982.               PCOORD lpNewScreenBufferDimensions
  42983.     );
  42984.  
  42985.  
  42986. __declspec(dllimport)
  42987. HWND
  42988. __stdcall
  42989. GetConsoleWindow(
  42990.     void
  42991.     );
  42992.  
  42993.  
  42994.  
  42995.  
  42996.  
  42997.  
  42998. __declspec(dllimport)
  42999. BOOL
  43000. __stdcall
  43001. AddConsoleAliasA(
  43002.          LPSTR Source,
  43003.          LPSTR Target,
  43004.          LPSTR ExeName
  43005.     );
  43006.  
  43007. __declspec(dllimport)
  43008. BOOL
  43009. __stdcall
  43010. AddConsoleAliasW(
  43011.          LPWSTR Source,
  43012.          LPWSTR Target,
  43013.          LPWSTR ExeName
  43014.     );
  43015.  
  43016.  
  43017.  
  43018.  
  43019.  
  43020.  
  43021.  
  43022. __declspec(dllimport)
  43023. DWORD
  43024. __stdcall
  43025. GetConsoleAliasA(
  43026.          LPSTR Source,
  43027.                                      LPSTR TargetBuffer,
  43028.          DWORD TargetBufferLength,
  43029.          LPSTR ExeName
  43030.     );
  43031.  
  43032. __declspec(dllimport)
  43033. DWORD
  43034. __stdcall
  43035. GetConsoleAliasW(
  43036.          LPWSTR Source,
  43037.                                      LPWSTR TargetBuffer,
  43038.          DWORD TargetBufferLength,
  43039.          LPWSTR ExeName
  43040.     );
  43041.  
  43042.  
  43043.  
  43044.  
  43045.  
  43046.  
  43047.  
  43048. __declspec(dllimport)
  43049. DWORD
  43050. __stdcall
  43051. GetConsoleAliasesLengthA(
  43052.          LPSTR ExeName
  43053.     );
  43054.  
  43055. __declspec(dllimport)
  43056. DWORD
  43057. __stdcall
  43058. GetConsoleAliasesLengthW(
  43059.          LPWSTR ExeName
  43060.     );
  43061.  
  43062.  
  43063.  
  43064.  
  43065.  
  43066.  
  43067.  
  43068. __declspec(dllimport)
  43069. DWORD
  43070. __stdcall
  43071. GetConsoleAliasExesLengthA(
  43072.     void
  43073.     );
  43074.  
  43075. __declspec(dllimport)
  43076. DWORD
  43077. __stdcall
  43078. GetConsoleAliasExesLengthW(
  43079.     void
  43080.     );
  43081.  
  43082.  
  43083.  
  43084.  
  43085.  
  43086.  
  43087.  
  43088. __declspec(dllimport)
  43089. DWORD
  43090. __stdcall
  43091. GetConsoleAliasesA(
  43092.                                     LPSTR AliasBuffer,
  43093.          DWORD AliasBufferLength,
  43094.          LPSTR ExeName
  43095.     );
  43096.  
  43097. __declspec(dllimport)
  43098. DWORD
  43099. __stdcall
  43100. GetConsoleAliasesW(
  43101.                                     LPWSTR AliasBuffer,
  43102.          DWORD AliasBufferLength,
  43103.          LPWSTR ExeName
  43104.     );
  43105.  
  43106.  
  43107.  
  43108.  
  43109.  
  43110.  
  43111.  
  43112. __declspec(dllimport)
  43113. DWORD
  43114. __stdcall
  43115. GetConsoleAliasExesA(
  43116.                                       LPSTR ExeNameBuffer,
  43117.          DWORD ExeNameBufferLength
  43118.     );
  43119.  
  43120. __declspec(dllimport)
  43121. DWORD
  43122. __stdcall
  43123. GetConsoleAliasExesW(
  43124.                                       LPWSTR ExeNameBuffer,
  43125.          DWORD ExeNameBufferLength
  43126.     );
  43127. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi3.h" 3
  43128. __declspec(dllimport)
  43129. void
  43130. __stdcall
  43131. ExpungeConsoleCommandHistoryA(
  43132.          LPSTR ExeName
  43133.     );
  43134.  
  43135. __declspec(dllimport)
  43136. void
  43137. __stdcall
  43138. ExpungeConsoleCommandHistoryW(
  43139.          LPWSTR ExeName
  43140.     );
  43141.  
  43142.  
  43143.  
  43144.  
  43145.  
  43146.  
  43147.  
  43148. __declspec(dllimport)
  43149. BOOL
  43150. __stdcall
  43151. SetConsoleNumberOfCommandsA(
  43152.          DWORD Number,
  43153.          LPSTR ExeName
  43154.     );
  43155.  
  43156. __declspec(dllimport)
  43157. BOOL
  43158. __stdcall
  43159. SetConsoleNumberOfCommandsW(
  43160.          DWORD Number,
  43161.          LPWSTR ExeName
  43162.     );
  43163.  
  43164.  
  43165.  
  43166.  
  43167.  
  43168.  
  43169.  
  43170. __declspec(dllimport)
  43171. DWORD
  43172. __stdcall
  43173. GetConsoleCommandHistoryLengthA(
  43174.          LPSTR ExeName
  43175.     );
  43176.  
  43177. __declspec(dllimport)
  43178. DWORD
  43179. __stdcall
  43180. GetConsoleCommandHistoryLengthW(
  43181.          LPWSTR ExeName
  43182.     );
  43183.  
  43184.  
  43185.  
  43186.  
  43187.  
  43188.  
  43189.  
  43190. __declspec(dllimport)
  43191. DWORD
  43192. __stdcall
  43193. GetConsoleCommandHistoryA(
  43194.                                             LPSTR Commands,
  43195.          DWORD CommandBufferLength,
  43196.          LPSTR ExeName
  43197.     );
  43198.  
  43199. __declspec(dllimport)
  43200. DWORD
  43201. __stdcall
  43202. GetConsoleCommandHistoryW(
  43203.                                             LPWSTR Commands,
  43204.          DWORD CommandBufferLength,
  43205.          LPWSTR ExeName
  43206.     );
  43207. # 413 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\consoleapi3.h" 3
  43208. __declspec(dllimport)
  43209. DWORD
  43210. __stdcall
  43211. GetConsoleProcessList(
  43212.                                  LPDWORD lpdwProcessList,
  43213.          DWORD dwProcessCount
  43214.     );
  43215.  
  43216.  
  43217.  
  43218.  
  43219.  
  43220. #pragma endregion
  43221.  
  43222.  
  43223.  
  43224.  
  43225.  
  43226.  
  43227. #pragma option pop
  43228. # 49 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincon.h" 2 3
  43229. # 71 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincon.h" 3
  43230. #pragma option pop
  43231. # 210 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  43232.  
  43233. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winver.h" 1 3
  43234. #pragma option push -b -a8 -pc -A- -w-pun
  43235. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winver.h" 3
  43236. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\verrsrc.h" 1 3
  43237. #pragma option push -b -a8 -pc -A- -w-pun
  43238. # 14 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\verrsrc.h" 3
  43239. #pragma region Application Family or OneCore Family
  43240. # 89 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\verrsrc.h" 3
  43241. #pragma endregion
  43242.  
  43243. #pragma region Desktop Family
  43244. # 148 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\verrsrc.h" 3
  43245. typedef struct tagVS_FIXEDFILEINFO
  43246. {
  43247.     DWORD dwSignature;
  43248.     DWORD dwStrucVersion;
  43249.     DWORD dwFileVersionMS;
  43250.     DWORD dwFileVersionLS;
  43251.     DWORD dwProductVersionMS;
  43252.     DWORD dwProductVersionLS;
  43253.     DWORD dwFileFlagsMask;
  43254.     DWORD dwFileFlags;
  43255.     DWORD dwFileOS;
  43256.     DWORD dwFileType;
  43257.     DWORD dwFileSubtype;
  43258.     DWORD dwFileDateMS;
  43259.     DWORD dwFileDateLS;
  43260. } VS_FIXEDFILEINFO;
  43261.  
  43262.  
  43263.  
  43264.  
  43265.  
  43266.  
  43267.  
  43268.  
  43269. #pragma endregion
  43270.  
  43271. #pragma option pop
  43272. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winver.h" 2 3
  43273.  
  43274.  
  43275.  
  43276.  
  43277.  
  43278.  
  43279.  
  43280. #pragma region Desktop Family or OneCore Family
  43281.  
  43282.  
  43283.  
  43284.  
  43285.  
  43286.  
  43287.  
  43288. DWORD
  43289. __stdcall
  43290. VerFindFileA(
  43291.                                      DWORD uFlags,
  43292.                                      LPCSTR szFileName,
  43293.                                      LPCSTR szWinDir,
  43294.                                      LPCSTR szAppDir,
  43295.                                      LPSTR szCurDir,
  43296.                                      PUINT puCurDirLen,
  43297.                                      LPSTR szDestDir,
  43298.                                      PUINT puDestDirLen
  43299.         );
  43300. DWORD
  43301. __stdcall
  43302. VerFindFileW(
  43303.                                      DWORD uFlags,
  43304.                                      LPCWSTR szFileName,
  43305.                                      LPCWSTR szWinDir,
  43306.                                      LPCWSTR szAppDir,
  43307.                                      LPWSTR szCurDir,
  43308.                                      PUINT puCurDirLen,
  43309.                                      LPWSTR szDestDir,
  43310.                                      PUINT puDestDirLen
  43311.         );
  43312. # 68 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winver.h" 3
  43313. #pragma endregion
  43314.  
  43315. #pragma region Desktop Family
  43316.  
  43317.  
  43318.  
  43319.  
  43320. DWORD
  43321. __stdcall
  43322. VerInstallFileA(
  43323.                                      DWORD uFlags,
  43324.                                      LPCSTR szSrcFileName,
  43325.                                      LPCSTR szDestFileName,
  43326.                                      LPCSTR szSrcDir,
  43327.                                      LPCSTR szDestDir,
  43328.                                      LPCSTR szCurDir,
  43329.                                      LPSTR szTmpFile,
  43330.                                      PUINT puTmpFileLen
  43331.         );
  43332. DWORD
  43333. __stdcall
  43334. VerInstallFileW(
  43335.                                      DWORD uFlags,
  43336.                                      LPCWSTR szSrcFileName,
  43337.                                      LPCWSTR szDestFileName,
  43338.                                      LPCWSTR szSrcDir,
  43339.                                      LPCWSTR szDestDir,
  43340.                                      LPCWSTR szCurDir,
  43341.                                      LPWSTR szTmpFile,
  43342.                                      PUINT puTmpFileLen
  43343.         );
  43344. # 108 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winver.h" 3
  43345. #pragma endregion
  43346.  
  43347. #pragma region Desktop Family or OneCore Family
  43348.  
  43349.  
  43350.  
  43351.  
  43352.  
  43353. DWORD
  43354. __stdcall
  43355. GetFileVersionInfoSizeA(
  43356.                     LPCSTR lptstrFilename,
  43357.                   LPDWORD lpdwHandle
  43358.         );
  43359.  
  43360. DWORD
  43361. __stdcall
  43362. GetFileVersionInfoSizeW(
  43363.                     LPCWSTR lptstrFilename,
  43364.                   LPDWORD lpdwHandle
  43365.         );
  43366.  
  43367.  
  43368.  
  43369.  
  43370.  
  43371.  
  43372.  
  43373. BOOL
  43374. __stdcall
  43375. GetFileVersionInfoA(
  43376.                             LPCSTR lptstrFilename,
  43377.                             DWORD dwHandle,
  43378.                             DWORD dwLen,
  43379.                                   LPVOID lpData
  43380.         );
  43381.  
  43382. BOOL
  43383. __stdcall
  43384. GetFileVersionInfoW(
  43385.                             LPCWSTR lptstrFilename,
  43386.                             DWORD dwHandle,
  43387.                             DWORD dwLen,
  43388.                                   LPVOID lpData
  43389.         );
  43390. # 162 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winver.h" 3
  43391. #pragma endregion
  43392.  
  43393. #pragma region Application or OneCore Family
  43394.  
  43395.  
  43396.  
  43397.  
  43398. DWORD __stdcall GetFileVersionInfoSizeExA( DWORD dwFlags, LPCSTR lpwstrFilename, LPDWORD lpdwHandle);
  43399. DWORD __stdcall GetFileVersionInfoSizeExW( DWORD dwFlags, LPCWSTR lpwstrFilename, LPDWORD lpdwHandle);
  43400.  
  43401.  
  43402.  
  43403.  
  43404.  
  43405.  
  43406. BOOL __stdcall GetFileVersionInfoExA( DWORD dwFlags,
  43407.                                          LPCSTR lpwstrFilename,
  43408.                                                DWORD dwHandle,
  43409.                                          DWORD dwLen,
  43410.                                                               LPVOID lpData);
  43411. BOOL __stdcall GetFileVersionInfoExW( DWORD dwFlags,
  43412.                                          LPCWSTR lpwstrFilename,
  43413.                                                DWORD dwHandle,
  43414.                                          DWORD dwLen,
  43415.                                                               LPVOID lpData);
  43416. # 196 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winver.h" 3
  43417. #pragma endregion
  43418.  
  43419. #pragma region Desktop Family
  43420.  
  43421.  
  43422.  
  43423.  
  43424.  
  43425.  
  43426.  
  43427.  
  43428. #pragma endregion
  43429.  
  43430. #pragma region Application Family or OneCore Family
  43431.  
  43432.  
  43433.  
  43434.  
  43435. DWORD
  43436. __stdcall
  43437. VerLanguageNameA(
  43438.                               DWORD wLang,
  43439.                               LPSTR szLang,
  43440.                               DWORD cchLang
  43441.         );
  43442. DWORD
  43443. __stdcall
  43444. VerLanguageNameW(
  43445.                               DWORD wLang,
  43446.                               LPWSTR szLang,
  43447.                               DWORD cchLang
  43448.         );
  43449.  
  43450.  
  43451.  
  43452.  
  43453.  
  43454.  
  43455. BOOL
  43456. __stdcall
  43457. VerQueryValueA(
  43458.              LPCVOID pBlock,
  43459.              LPCSTR lpSubBlock,
  43460.                                                                                  LPVOID * lplpBuffer,
  43461.               PUINT puLen
  43462.         );
  43463. BOOL
  43464. __stdcall
  43465. VerQueryValueW(
  43466.              LPCVOID pBlock,
  43467.              LPCWSTR lpSubBlock,
  43468.                                                                                  LPVOID * lplpBuffer,
  43469.               PUINT puLen
  43470.         );
  43471. # 260 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winver.h" 3
  43472. #pragma endregion
  43473.  
  43474.  
  43475.  
  43476.  
  43477.  
  43478.  
  43479.  
  43480.  
  43481. #pragma option pop
  43482. # 211 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  43483.  
  43484.  
  43485.  
  43486. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 1 3
  43487. # 17 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  43488. #pragma option push -b -a8 -pc -A- -w-pun
  43489. # 41 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  43490. #pragma region Application Family or Desktop Family or OneCore Family
  43491.  
  43492.  
  43493.  
  43494.  
  43495.  
  43496.  
  43497.  
  43498. typedef LONG LSTATUS;
  43499. # 85 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  43500. typedef ACCESS_MASK REGSAM;
  43501. # 108 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  43502. struct val_context {
  43503.     int valuelen;
  43504.     LPVOID value_context;
  43505.     LPVOID val_buff_ptr;
  43506. };
  43507.  
  43508. typedef struct val_context *PVALCONTEXT;
  43509.  
  43510. typedef struct pvalueA {
  43511.     LPSTR pv_valuename;
  43512.     int pv_valuelen;
  43513.     LPVOID pv_value_context;
  43514.     DWORD pv_type;
  43515. }PVALUEA, *PPVALUEA;
  43516. typedef struct pvalueW {
  43517.     LPWSTR pv_valuename;
  43518.     int pv_valuelen;
  43519.     LPVOID pv_value_context;
  43520.     DWORD pv_type;
  43521. }PVALUEW, *PPVALUEW;
  43522.  
  43523.  
  43524.  
  43525.  
  43526. typedef PVALUEA PVALUE;
  43527. typedef PPVALUEA PPVALUE;
  43528.  
  43529.  
  43530. typedef
  43531. DWORD __cdecl
  43532. QUERYHANDLER (LPVOID keycontext, PVALCONTEXT val_list, DWORD num_vals,
  43533.           LPVOID outputbuffer, DWORD *total_outlen, DWORD input_blen);
  43534.  
  43535. typedef QUERYHANDLER *PQUERYHANDLER;
  43536.  
  43537. typedef struct provider_info {
  43538.     PQUERYHANDLER pi_R0_1val;
  43539.     PQUERYHANDLER pi_R0_allvals;
  43540.     PQUERYHANDLER pi_R3_1val;
  43541.     PQUERYHANDLER pi_R3_allvals;
  43542.     DWORD pi_flags;
  43543.     LPVOID pi_key_context;
  43544. }REG_PROVIDER;
  43545.  
  43546. typedef struct provider_info *PPROVIDER;
  43547.  
  43548. typedef struct value_entA {
  43549.     LPSTR ve_valuename;
  43550.     DWORD ve_valuelen;
  43551.     DWORD_PTR ve_valueptr;
  43552.     DWORD ve_type;
  43553. }VALENTA, *PVALENTA;
  43554. typedef struct value_entW {
  43555.     LPWSTR ve_valuename;
  43556.     DWORD ve_valuelen;
  43557.     DWORD_PTR ve_valueptr;
  43558.     DWORD ve_type;
  43559. }VALENTW, *PVALENTW;
  43560.  
  43561.  
  43562.  
  43563.  
  43564. typedef VALENTA VALENT;
  43565. typedef PVALENTA PVALENT;
  43566. # 187 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  43567. #pragma endregion
  43568.  
  43569. #pragma region Desktop Family or OneCore Family
  43570. # 210 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  43571. __declspec(dllimport)
  43572. LSTATUS
  43573. __stdcall
  43574. RegCloseKey(
  43575.          HKEY hKey
  43576.     );
  43577.  
  43578.  
  43579. __declspec(dllimport)
  43580. LSTATUS
  43581. __stdcall
  43582. RegOverridePredefKey (
  43583.          HKEY hKey,
  43584.              HKEY hNewHKey
  43585.     );
  43586.  
  43587. __declspec(dllimport)
  43588. LSTATUS
  43589. __stdcall
  43590. RegOpenUserClassesRoot(
  43591.          HANDLE hToken,
  43592.                DWORD dwOptions,
  43593.          REGSAM samDesired,
  43594.           PHKEY phkResult
  43595.     );
  43596.  
  43597.  
  43598. __declspec(dllimport)
  43599. LSTATUS
  43600. __stdcall
  43601. RegOpenCurrentUser(
  43602.          REGSAM samDesired,
  43603.           PHKEY phkResult
  43604.     );
  43605.  
  43606.  
  43607. __declspec(dllimport)
  43608. LSTATUS
  43609. __stdcall
  43610. RegDisablePredefinedCache(
  43611.     void
  43612.     );
  43613.  
  43614. __declspec(dllimport)
  43615. LSTATUS
  43616. __stdcall
  43617. RegDisablePredefinedCacheEx(
  43618.     void
  43619.     );
  43620.  
  43621.  
  43622. __declspec(dllimport)
  43623. LSTATUS
  43624. __stdcall
  43625. RegConnectRegistryA (
  43626.              LPCSTR lpMachineName,
  43627.          HKEY hKey,
  43628.           PHKEY phkResult
  43629.     );
  43630. __declspec(dllimport)
  43631. LSTATUS
  43632. __stdcall
  43633. RegConnectRegistryW (
  43634.              LPCWSTR lpMachineName,
  43635.          HKEY hKey,
  43636.           PHKEY phkResult
  43637.     );
  43638.  
  43639.  
  43640.  
  43641.  
  43642.  
  43643.  
  43644. __declspec(dllimport)
  43645. LSTATUS
  43646. __stdcall
  43647. RegConnectRegistryExA (
  43648.              LPCSTR lpMachineName,
  43649.          HKEY hKey,
  43650.          ULONG Flags,
  43651.           PHKEY phkResult
  43652.     );
  43653. __declspec(dllimport)
  43654. LSTATUS
  43655. __stdcall
  43656. RegConnectRegistryExW (
  43657.              LPCWSTR lpMachineName,
  43658.          HKEY hKey,
  43659.          ULONG Flags,
  43660.           PHKEY phkResult
  43661.     );
  43662.  
  43663.  
  43664.  
  43665.  
  43666.  
  43667.  
  43668. __declspec(dllimport)
  43669. LSTATUS
  43670. __stdcall
  43671. RegCreateKeyA (
  43672.          HKEY hKey,
  43673.              LPCSTR lpSubKey,
  43674.           PHKEY phkResult
  43675.     );
  43676. __declspec(dllimport)
  43677. LSTATUS
  43678. __stdcall
  43679. RegCreateKeyW (
  43680.          HKEY hKey,
  43681.              LPCWSTR lpSubKey,
  43682.           PHKEY phkResult
  43683.     );
  43684.  
  43685.  
  43686.  
  43687.  
  43688.  
  43689.  
  43690. __declspec(dllimport)
  43691. LSTATUS
  43692. __stdcall
  43693. RegCreateKeyExA(
  43694.          HKEY hKey,
  43695.          LPCSTR lpSubKey,
  43696.                DWORD Reserved,
  43697.              LPSTR lpClass,
  43698.          DWORD dwOptions,
  43699.          REGSAM samDesired,
  43700.              const LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  43701.           PHKEY phkResult,
  43702.               LPDWORD lpdwDisposition
  43703.     );
  43704.  
  43705. __declspec(dllimport)
  43706. LSTATUS
  43707. __stdcall
  43708. RegCreateKeyExW(
  43709.          HKEY hKey,
  43710.          LPCWSTR lpSubKey,
  43711.                DWORD Reserved,
  43712.              LPWSTR lpClass,
  43713.          DWORD dwOptions,
  43714.          REGSAM samDesired,
  43715.              const LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  43716.           PHKEY phkResult,
  43717.               LPDWORD lpdwDisposition
  43718.     );
  43719.  
  43720.  
  43721.  
  43722.  
  43723.  
  43724.  
  43725.  
  43726. __declspec(dllimport)
  43727. LSTATUS
  43728. __stdcall
  43729. RegCreateKeyTransactedA (
  43730.          HKEY hKey,
  43731.          LPCSTR lpSubKey,
  43732.                DWORD Reserved,
  43733.              LPSTR lpClass,
  43734.          DWORD dwOptions,
  43735.          REGSAM samDesired,
  43736.              const LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  43737.           PHKEY phkResult,
  43738.               LPDWORD lpdwDisposition,
  43739.                 HANDLE hTransaction,
  43740.                PVOID pExtendedParemeter
  43741.     );
  43742. __declspec(dllimport)
  43743. LSTATUS
  43744. __stdcall
  43745. RegCreateKeyTransactedW (
  43746.          HKEY hKey,
  43747.          LPCWSTR lpSubKey,
  43748.                DWORD Reserved,
  43749.              LPWSTR lpClass,
  43750.          DWORD dwOptions,
  43751.          REGSAM samDesired,
  43752.              const LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  43753.           PHKEY phkResult,
  43754.               LPDWORD lpdwDisposition,
  43755.                 HANDLE hTransaction,
  43756.                PVOID pExtendedParemeter
  43757.     );
  43758.  
  43759.  
  43760.  
  43761.  
  43762.  
  43763.  
  43764. __declspec(dllimport)
  43765. LSTATUS
  43766. __stdcall
  43767. RegDeleteKeyA (
  43768.          HKEY hKey,
  43769.          LPCSTR lpSubKey
  43770.     );
  43771. __declspec(dllimport)
  43772. LSTATUS
  43773. __stdcall
  43774. RegDeleteKeyW (
  43775.          HKEY hKey,
  43776.          LPCWSTR lpSubKey
  43777.     );
  43778.  
  43779.  
  43780.  
  43781.  
  43782.  
  43783.  
  43784. __declspec(dllimport)
  43785. LSTATUS
  43786. __stdcall
  43787. RegDeleteKeyExA(
  43788.          HKEY hKey,
  43789.          LPCSTR lpSubKey,
  43790.          REGSAM samDesired,
  43791.                DWORD Reserved
  43792.     );
  43793.  
  43794. __declspec(dllimport)
  43795. LSTATUS
  43796. __stdcall
  43797. RegDeleteKeyExW(
  43798.          HKEY hKey,
  43799.          LPCWSTR lpSubKey,
  43800.          REGSAM samDesired,
  43801.                DWORD Reserved
  43802.     );
  43803.  
  43804.  
  43805.  
  43806.  
  43807.  
  43808.  
  43809.  
  43810. __declspec(dllimport)
  43811. LSTATUS
  43812. __stdcall
  43813. RegDeleteKeyTransactedA (
  43814.          HKEY hKey,
  43815.          LPCSTR lpSubKey,
  43816.          REGSAM samDesired,
  43817.                DWORD Reserved,
  43818.                 HANDLE hTransaction,
  43819.                PVOID pExtendedParameter
  43820.     );
  43821. __declspec(dllimport)
  43822. LSTATUS
  43823. __stdcall
  43824. RegDeleteKeyTransactedW (
  43825.          HKEY hKey,
  43826.          LPCWSTR lpSubKey,
  43827.          REGSAM samDesired,
  43828.                DWORD Reserved,
  43829.                 HANDLE hTransaction,
  43830.                PVOID pExtendedParameter
  43831.     );
  43832.  
  43833.  
  43834.  
  43835.  
  43836.  
  43837.  
  43838. __declspec(dllimport)
  43839. LONG
  43840. __stdcall
  43841. RegDisableReflectionKey (
  43842.          HKEY hBase
  43843.     );
  43844.  
  43845. __declspec(dllimport)
  43846. LONG
  43847. __stdcall
  43848. RegEnableReflectionKey (
  43849.          HKEY hBase
  43850.     );
  43851.  
  43852. __declspec(dllimport)
  43853. LONG
  43854. __stdcall
  43855. RegQueryReflectionKey (
  43856.          HKEY hBase,
  43857.           BOOL *bIsReflectionDisabled
  43858.     );
  43859.  
  43860. __declspec(dllimport)
  43861. LSTATUS
  43862. __stdcall
  43863. RegDeleteValueA(
  43864.          HKEY hKey,
  43865.              LPCSTR lpValueName
  43866.     );
  43867.  
  43868. __declspec(dllimport)
  43869. LSTATUS
  43870. __stdcall
  43871. RegDeleteValueW(
  43872.          HKEY hKey,
  43873.              LPCWSTR lpValueName
  43874.     );
  43875.  
  43876.  
  43877.  
  43878.  
  43879.  
  43880.  
  43881.  
  43882. __declspec(dllimport)
  43883. LSTATUS
  43884. __stdcall
  43885. RegEnumKeyA (
  43886.          HKEY hKey,
  43887.          DWORD dwIndex,
  43888.                               LPSTR lpName,
  43889.          DWORD cchName
  43890.     );
  43891. __declspec(dllimport)
  43892. LSTATUS
  43893. __stdcall
  43894. RegEnumKeyW (
  43895.          HKEY hKey,
  43896.          DWORD dwIndex,
  43897.                               LPWSTR lpName,
  43898.          DWORD cchName
  43899.     );
  43900.  
  43901.  
  43902.  
  43903.  
  43904.  
  43905.  
  43906. __declspec(dllimport)
  43907. LSTATUS
  43908. __stdcall
  43909. RegEnumKeyExA(
  43910.          HKEY hKey,
  43911.          DWORD dwIndex,
  43912.                                                    LPSTR lpName,
  43913.             LPDWORD lpcchName,
  43914.                LPDWORD lpReserved,
  43915.                                                      LPSTR lpClass,
  43916.                 LPDWORD lpcchClass,
  43917.               PFILETIME lpftLastWriteTime
  43918.     );
  43919.  
  43920. __declspec(dllimport)
  43921. LSTATUS
  43922. __stdcall
  43923. RegEnumKeyExW(
  43924.          HKEY hKey,
  43925.          DWORD dwIndex,
  43926.                                                    LPWSTR lpName,
  43927.             LPDWORD lpcchName,
  43928.                LPDWORD lpReserved,
  43929.                                                      LPWSTR lpClass,
  43930.                 LPDWORD lpcchClass,
  43931.               PFILETIME lpftLastWriteTime
  43932.     );
  43933.  
  43934.  
  43935.  
  43936.  
  43937.  
  43938.  
  43939.  
  43940. __declspec(dllimport)
  43941. LSTATUS
  43942. __stdcall
  43943. RegEnumValueA(
  43944.          HKEY hKey,
  43945.          DWORD dwIndex,
  43946.                                                              LPSTR lpValueName,
  43947.             LPDWORD lpcchValueName,
  43948.                LPDWORD lpReserved,
  43949.               LPDWORD lpType,
  43950.                                                                                 LPBYTE lpData,
  43951.                 LPDWORD lpcbData
  43952.     );
  43953.  
  43954. __declspec(dllimport)
  43955. LSTATUS
  43956. __stdcall
  43957. RegEnumValueW(
  43958.          HKEY hKey,
  43959.          DWORD dwIndex,
  43960.                                                              LPWSTR lpValueName,
  43961.             LPDWORD lpcchValueName,
  43962.                LPDWORD lpReserved,
  43963.               LPDWORD lpType,
  43964.                                                                                 LPBYTE lpData,
  43965.                 LPDWORD lpcbData
  43966.     );
  43967.  
  43968.  
  43969.  
  43970.  
  43971.  
  43972.  
  43973.  
  43974. __declspec(dllimport)
  43975. LSTATUS
  43976. __stdcall
  43977. RegFlushKey(
  43978.          HKEY hKey
  43979.     );
  43980.  
  43981.  
  43982. __declspec(dllimport)
  43983. LSTATUS
  43984. __stdcall
  43985. RegGetKeySecurity(
  43986.          HKEY hKey,
  43987.          SECURITY_INFORMATION SecurityInformation,
  43988.                                                     PSECURITY_DESCRIPTOR pSecurityDescriptor,
  43989.             LPDWORD lpcbSecurityDescriptor
  43990.     );
  43991.  
  43992.  
  43993. __declspec(dllimport)
  43994. LSTATUS
  43995. __stdcall
  43996. RegLoadKeyA(
  43997.          HKEY hKey,
  43998.              LPCSTR lpSubKey,
  43999.          LPCSTR lpFile
  44000.     );
  44001.  
  44002. __declspec(dllimport)
  44003. LSTATUS
  44004. __stdcall
  44005. RegLoadKeyW(
  44006.          HKEY hKey,
  44007.              LPCWSTR lpSubKey,
  44008.          LPCWSTR lpFile
  44009.     );
  44010.  
  44011.  
  44012.  
  44013.  
  44014.  
  44015.  
  44016.  
  44017. __declspec(dllimport)
  44018. LSTATUS
  44019. __stdcall
  44020. RegNotifyChangeKeyValue(
  44021.          HKEY hKey,
  44022.          BOOL bWatchSubtree,
  44023.          DWORD dwNotifyFilter,
  44024.              HANDLE hEvent,
  44025.          BOOL fAsynchronous
  44026.     );
  44027.  
  44028.  
  44029. __declspec(dllimport)
  44030. LSTATUS
  44031. __stdcall
  44032. RegOpenKeyA (
  44033.          HKEY hKey,
  44034.              LPCSTR lpSubKey,
  44035.           PHKEY phkResult
  44036.     );
  44037. __declspec(dllimport)
  44038. LSTATUS
  44039. __stdcall
  44040. RegOpenKeyW (
  44041.          HKEY hKey,
  44042.              LPCWSTR lpSubKey,
  44043.           PHKEY phkResult
  44044.     );
  44045.  
  44046.  
  44047.  
  44048.  
  44049.  
  44050.  
  44051. __declspec(dllimport)
  44052. LSTATUS
  44053. __stdcall
  44054. RegOpenKeyExA(
  44055.          HKEY hKey,
  44056.              LPCSTR lpSubKey,
  44057.              DWORD ulOptions,
  44058.          REGSAM samDesired,
  44059.           PHKEY phkResult
  44060.     );
  44061.  
  44062. __declspec(dllimport)
  44063. LSTATUS
  44064. __stdcall
  44065. RegOpenKeyExW(
  44066.          HKEY hKey,
  44067.              LPCWSTR lpSubKey,
  44068.              DWORD ulOptions,
  44069.          REGSAM samDesired,
  44070.           PHKEY phkResult
  44071.     );
  44072.  
  44073.  
  44074.  
  44075.  
  44076.  
  44077.  
  44078.  
  44079. __declspec(dllimport)
  44080. LSTATUS
  44081. __stdcall
  44082. RegOpenKeyTransactedA (
  44083.          HKEY hKey,
  44084.              LPCSTR lpSubKey,
  44085.              DWORD ulOptions,
  44086.          REGSAM samDesired,
  44087.           PHKEY phkResult,
  44088.                 HANDLE hTransaction,
  44089.                PVOID pExtendedParemeter
  44090.     );
  44091. __declspec(dllimport)
  44092. LSTATUS
  44093. __stdcall
  44094. RegOpenKeyTransactedW (
  44095.          HKEY hKey,
  44096.              LPCWSTR lpSubKey,
  44097.              DWORD ulOptions,
  44098.          REGSAM samDesired,
  44099.           PHKEY phkResult,
  44100.                 HANDLE hTransaction,
  44101.                PVOID pExtendedParemeter
  44102.     );
  44103.  
  44104.  
  44105.  
  44106.  
  44107.  
  44108.  
  44109. __declspec(dllimport)
  44110. LSTATUS
  44111. __stdcall
  44112. RegQueryInfoKeyA(
  44113.          HKEY hKey,
  44114.                                                      LPSTR lpClass,
  44115.                 LPDWORD lpcchClass,
  44116.                LPDWORD lpReserved,
  44117.               LPDWORD lpcSubKeys,
  44118.               LPDWORD lpcbMaxSubKeyLen,
  44119.               LPDWORD lpcbMaxClassLen,
  44120.               LPDWORD lpcValues,
  44121.               LPDWORD lpcbMaxValueNameLen,
  44122.               LPDWORD lpcbMaxValueLen,
  44123.               LPDWORD lpcbSecurityDescriptor,
  44124.               PFILETIME lpftLastWriteTime
  44125.     );
  44126.  
  44127. __declspec(dllimport)
  44128. LSTATUS
  44129. __stdcall
  44130. RegQueryInfoKeyW(
  44131.          HKEY hKey,
  44132.                                                      LPWSTR lpClass,
  44133.                 LPDWORD lpcchClass,
  44134.                LPDWORD lpReserved,
  44135.               LPDWORD lpcSubKeys,
  44136.               LPDWORD lpcbMaxSubKeyLen,
  44137.               LPDWORD lpcbMaxClassLen,
  44138.               LPDWORD lpcValues,
  44139.               LPDWORD lpcbMaxValueNameLen,
  44140.               LPDWORD lpcbMaxValueLen,
  44141.               LPDWORD lpcbSecurityDescriptor,
  44142.               PFILETIME lpftLastWriteTime
  44143.     );
  44144.  
  44145.  
  44146.  
  44147.  
  44148.  
  44149.  
  44150.  
  44151. __declspec(dllimport)
  44152. LSTATUS
  44153. __stdcall
  44154. RegQueryValueA (
  44155.          HKEY hKey,
  44156.              LPCSTR lpSubKey,
  44157.                                                                                 LPSTR lpData,
  44158.                 PLONG lpcbData
  44159.     );
  44160. __declspec(dllimport)
  44161. LSTATUS
  44162. __stdcall
  44163. RegQueryValueW (
  44164.          HKEY hKey,
  44165.              LPCWSTR lpSubKey,
  44166.                                                                                 LPWSTR lpData,
  44167.                 PLONG lpcbData
  44168.     );
  44169. # 816 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44170. __declspec(dllimport)
  44171. LSTATUS
  44172. __stdcall
  44173. RegQueryMultipleValuesA(
  44174.          HKEY hKey,
  44175.                            PVALENTA val_list,
  44176.          DWORD num_vals,
  44177.                                                                                     LPSTR lpValueBuf,
  44178.                 LPDWORD ldwTotsize
  44179.     );
  44180.  
  44181. __declspec(dllimport)
  44182. LSTATUS
  44183. __stdcall
  44184. RegQueryMultipleValuesW(
  44185.          HKEY hKey,
  44186.                            PVALENTW val_list,
  44187.          DWORD num_vals,
  44188.                                                                                     LPWSTR lpValueBuf,
  44189.                 LPDWORD ldwTotsize
  44190.     );
  44191. # 846 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44192. __declspec(dllimport)
  44193. LSTATUS
  44194. __stdcall
  44195. RegQueryValueExA(
  44196.          HKEY hKey,
  44197.              LPCSTR lpValueName,
  44198.                LPDWORD lpReserved,
  44199.               LPDWORD lpType,
  44200.                                                                                 LPBYTE lpData,
  44201.                                                                         LPDWORD lpcbData
  44202.     );
  44203.  
  44204. __declspec(dllimport)
  44205. LSTATUS
  44206. __stdcall
  44207. RegQueryValueExW(
  44208.          HKEY hKey,
  44209.              LPCWSTR lpValueName,
  44210.                LPDWORD lpReserved,
  44211.               LPDWORD lpType,
  44212.                                                                                 LPBYTE lpData,
  44213.                                                                         LPDWORD lpcbData
  44214.     );
  44215.  
  44216.  
  44217.  
  44218.  
  44219.  
  44220.  
  44221.  
  44222. __declspec(dllimport)
  44223. LSTATUS
  44224. __stdcall
  44225. RegReplaceKeyA (
  44226.          HKEY hKey,
  44227.              LPCSTR lpSubKey,
  44228.          LPCSTR lpNewFile,
  44229.          LPCSTR lpOldFile
  44230.     );
  44231. __declspec(dllimport)
  44232. LSTATUS
  44233. __stdcall
  44234. RegReplaceKeyW (
  44235.          HKEY hKey,
  44236.              LPCWSTR lpSubKey,
  44237.          LPCWSTR lpNewFile,
  44238.          LPCWSTR lpOldFile
  44239.     );
  44240.  
  44241.  
  44242.  
  44243.  
  44244.  
  44245.  
  44246. __declspec(dllimport)
  44247. LSTATUS
  44248. __stdcall
  44249. RegRestoreKeyA(
  44250.          HKEY hKey,
  44251.          LPCSTR lpFile,
  44252.          DWORD dwFlags
  44253.     );
  44254.  
  44255. __declspec(dllimport)
  44256. LSTATUS
  44257. __stdcall
  44258. RegRestoreKeyW(
  44259.          HKEY hKey,
  44260.          LPCWSTR lpFile,
  44261.          DWORD dwFlags
  44262.     );
  44263. # 926 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44264. __declspec(dllimport)
  44265. LSTATUS
  44266. __stdcall
  44267. RegRenameKey(
  44268.          HKEY hKey,
  44269.              LPCWSTR lpSubKeyName,
  44270.          LPCWSTR lpNewKeyName
  44271.     );
  44272.  
  44273.  
  44274.  
  44275. __declspec(dllimport)
  44276. LSTATUS
  44277. __stdcall
  44278. RegSaveKeyA (
  44279.          HKEY hKey,
  44280.          LPCSTR lpFile,
  44281.              const LPSECURITY_ATTRIBUTES lpSecurityAttributes
  44282.     );
  44283. __declspec(dllimport)
  44284. LSTATUS
  44285. __stdcall
  44286. RegSaveKeyW (
  44287.          HKEY hKey,
  44288.          LPCWSTR lpFile,
  44289.              const LPSECURITY_ATTRIBUTES lpSecurityAttributes
  44290.     );
  44291.  
  44292.  
  44293.  
  44294.  
  44295.  
  44296.  
  44297. __declspec(dllimport)
  44298. LSTATUS
  44299. __stdcall
  44300. RegSetKeySecurity(
  44301.          HKEY hKey,
  44302.          SECURITY_INFORMATION SecurityInformation,
  44303.          PSECURITY_DESCRIPTOR pSecurityDescriptor
  44304.     );
  44305.  
  44306.  
  44307. __declspec(dllimport)
  44308. LSTATUS
  44309. __stdcall
  44310. RegSetValueA (
  44311.          HKEY hKey,
  44312.              LPCSTR lpSubKey,
  44313.          DWORD dwType,
  44314.                                  LPCSTR lpData,
  44315.          DWORD cbData
  44316.     );
  44317. __declspec(dllimport)
  44318. LSTATUS
  44319. __stdcall
  44320. RegSetValueW (
  44321.          HKEY hKey,
  44322.              LPCWSTR lpSubKey,
  44323.          DWORD dwType,
  44324.                                  LPCWSTR lpData,
  44325.          DWORD cbData
  44326.     );
  44327.  
  44328.  
  44329.  
  44330.  
  44331.  
  44332.  
  44333. __declspec(dllimport)
  44334. LSTATUS
  44335. __stdcall
  44336. RegSetValueExA(
  44337.          HKEY hKey,
  44338.              LPCSTR lpValueName,
  44339.                DWORD Reserved,
  44340.          DWORD dwType,
  44341.                                  const BYTE* lpData,
  44342.          DWORD cbData
  44343.     );
  44344.  
  44345. __declspec(dllimport)
  44346. LSTATUS
  44347. __stdcall
  44348. RegSetValueExW(
  44349.          HKEY hKey,
  44350.              LPCWSTR lpValueName,
  44351.                DWORD Reserved,
  44352.          DWORD dwType,
  44353.                                  const BYTE* lpData,
  44354.          DWORD cbData
  44355.     );
  44356.  
  44357.  
  44358.  
  44359.  
  44360.  
  44361.  
  44362.  
  44363. __declspec(dllimport)
  44364. LSTATUS
  44365. __stdcall
  44366. RegUnLoadKeyA(
  44367.          HKEY hKey,
  44368.              LPCSTR lpSubKey
  44369.     );
  44370.  
  44371. __declspec(dllimport)
  44372. LSTATUS
  44373. __stdcall
  44374. RegUnLoadKeyW(
  44375.          HKEY hKey,
  44376.              LPCWSTR lpSubKey
  44377.     );
  44378. # 1052 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44379. __declspec(dllimport)
  44380. LSTATUS
  44381. __stdcall
  44382. RegDeleteKeyValueA(
  44383.          HKEY hKey,
  44384.              LPCSTR lpSubKey,
  44385.              LPCSTR lpValueName
  44386.     );
  44387.  
  44388. __declspec(dllimport)
  44389. LSTATUS
  44390. __stdcall
  44391. RegDeleteKeyValueW(
  44392.          HKEY hKey,
  44393.              LPCWSTR lpSubKey,
  44394.              LPCWSTR lpValueName
  44395.     );
  44396.  
  44397.  
  44398.  
  44399.  
  44400.  
  44401.  
  44402.  
  44403. __declspec(dllimport)
  44404. LSTATUS
  44405. __stdcall
  44406. RegSetKeyValueA(
  44407.          HKEY hKey,
  44408.              LPCSTR lpSubKey,
  44409.              LPCSTR lpValueName,
  44410.          DWORD dwType,
  44411.                                  LPCVOID lpData,
  44412.          DWORD cbData
  44413.     );
  44414.  
  44415. __declspec(dllimport)
  44416. LSTATUS
  44417. __stdcall
  44418. RegSetKeyValueW(
  44419.          HKEY hKey,
  44420.              LPCWSTR lpSubKey,
  44421.              LPCWSTR lpValueName,
  44422.          DWORD dwType,
  44423.                                  LPCVOID lpData,
  44424.          DWORD cbData
  44425.     );
  44426.  
  44427.  
  44428.  
  44429.  
  44430.  
  44431.  
  44432.  
  44433. __declspec(dllimport)
  44434. LSTATUS
  44435. __stdcall
  44436. RegDeleteTreeA(
  44437.          HKEY hKey,
  44438.              LPCSTR lpSubKey
  44439.     );
  44440.  
  44441. __declspec(dllimport)
  44442. LSTATUS
  44443. __stdcall
  44444. RegDeleteTreeW(
  44445.          HKEY hKey,
  44446.              LPCWSTR lpSubKey
  44447.     );
  44448.  
  44449.  
  44450.  
  44451.  
  44452.  
  44453.  
  44454.  
  44455. __declspec(dllimport)
  44456. LSTATUS
  44457. __stdcall
  44458. RegCopyTreeA (
  44459.                 HKEY hKeySrc,
  44460.                 LPCSTR lpSubKey,
  44461.                 HKEY hKeyDest
  44462.     );
  44463. # 1144 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44464. __declspec(dllimport)
  44465. LSTATUS
  44466. __stdcall
  44467. RegGetValueA(
  44468.          HKEY hkey,
  44469.              LPCSTR lpSubKey,
  44470.              LPCSTR lpValue,
  44471.          DWORD dwFlags,
  44472.               LPDWORD pdwType,
  44473.  
  44474.  
  44475.  
  44476.  
  44477.  
  44478.  
  44479.  
  44480.                                                  PVOID pvData,
  44481.                 LPDWORD pcbData
  44482.     );
  44483.  
  44484. __declspec(dllimport)
  44485. LSTATUS
  44486. __stdcall
  44487. RegGetValueW(
  44488.          HKEY hkey,
  44489.              LPCWSTR lpSubKey,
  44490.              LPCWSTR lpValue,
  44491.          DWORD dwFlags,
  44492.               LPDWORD pdwType,
  44493.  
  44494.  
  44495.  
  44496.  
  44497.  
  44498.  
  44499.  
  44500.                                                  PVOID pvData,
  44501.                 LPDWORD pcbData
  44502.     );
  44503. # 1194 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44504. __declspec(dllimport)
  44505. LSTATUS
  44506. __stdcall
  44507. RegCopyTreeW(
  44508.          HKEY hKeySrc,
  44509.              LPCWSTR lpSubKey,
  44510.          HKEY hKeyDest
  44511.     );
  44512.  
  44513.  
  44514.  
  44515.  
  44516.  
  44517. __declspec(dllimport)
  44518. LSTATUS
  44519. __stdcall
  44520. RegLoadMUIStringA(
  44521.          HKEY hKey,
  44522.              LPCSTR pszValue,
  44523.                                      LPSTR pszOutBuf,
  44524.          DWORD cbOutBuf,
  44525.               LPDWORD pcbData,
  44526.          DWORD Flags,
  44527.              LPCSTR pszDirectory
  44528.     );
  44529.  
  44530. __declspec(dllimport)
  44531. LSTATUS
  44532. __stdcall
  44533. RegLoadMUIStringW(
  44534.          HKEY hKey,
  44535.              LPCWSTR pszValue,
  44536.                                      LPWSTR pszOutBuf,
  44537.          DWORD cbOutBuf,
  44538.               LPDWORD pcbData,
  44539.          DWORD Flags,
  44540.              LPCWSTR pszDirectory
  44541.     );
  44542.  
  44543.  
  44544.  
  44545.  
  44546.  
  44547.  
  44548.  
  44549. __declspec(dllimport)
  44550. LSTATUS
  44551. __stdcall
  44552. RegLoadAppKeyA(
  44553.          LPCSTR lpFile,
  44554.           PHKEY phkResult,
  44555.          REGSAM samDesired,
  44556.          DWORD dwOptions,
  44557.                DWORD Reserved
  44558.     );
  44559.  
  44560. __declspec(dllimport)
  44561. LSTATUS
  44562. __stdcall
  44563. RegLoadAppKeyW(
  44564.          LPCWSTR lpFile,
  44565.           PHKEY phkResult,
  44566.          REGSAM samDesired,
  44567.          DWORD dwOptions,
  44568.                DWORD Reserved
  44569.     );
  44570. # 1274 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44571. __declspec(dllimport)
  44572. BOOL
  44573. __stdcall
  44574. InitiateSystemShutdownA(
  44575.              LPSTR lpMachineName,
  44576.              LPSTR lpMessage,
  44577.          DWORD dwTimeout,
  44578.          BOOL bForceAppsClosed,
  44579.          BOOL bRebootAfterShutdown
  44580.     );
  44581.  
  44582. __declspec(dllimport)
  44583. BOOL
  44584. __stdcall
  44585. InitiateSystemShutdownW(
  44586.              LPWSTR lpMachineName,
  44587.              LPWSTR lpMessage,
  44588.          DWORD dwTimeout,
  44589.          BOOL bForceAppsClosed,
  44590.          BOOL bRebootAfterShutdown
  44591.     );
  44592.  
  44593.  
  44594.  
  44595.  
  44596.  
  44597.  
  44598. __declspec(dllimport)
  44599. BOOL
  44600. __stdcall
  44601. AbortSystemShutdownA(
  44602.              LPSTR lpMachineName
  44603.     );
  44604. __declspec(dllimport)
  44605. BOOL
  44606. __stdcall
  44607. AbortSystemShutdownW(
  44608.              LPWSTR lpMachineName
  44609.     );
  44610. # 1323 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44611. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\reason.h" 1 3
  44612. #pragma option push -b -a8 -pc -A- -w-pun
  44613. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\reason.h" 3
  44614. #pragma region Desktop Family
  44615. # 125 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\reason.h" 3
  44616. #pragma endregion
  44617.  
  44618.  
  44619. #pragma option pop
  44620. # 1323 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 2 3
  44621. # 1345 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44622. __declspec(dllimport)
  44623. BOOL
  44624. __stdcall
  44625. InitiateSystemShutdownExA(
  44626.              LPSTR lpMachineName,
  44627.              LPSTR lpMessage,
  44628.          DWORD dwTimeout,
  44629.          BOOL bForceAppsClosed,
  44630.          BOOL bRebootAfterShutdown,
  44631.          DWORD dwReason
  44632.     );
  44633.  
  44634.  
  44635.  
  44636. __declspec(dllimport)
  44637. BOOL
  44638. __stdcall
  44639. InitiateSystemShutdownExW(
  44640.              LPWSTR lpMachineName,
  44641.              LPWSTR lpMessage,
  44642.          DWORD dwTimeout,
  44643.          BOOL bForceAppsClosed,
  44644.          BOOL bRebootAfterShutdown,
  44645.          DWORD dwReason
  44646.     );
  44647. # 1394 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44648. __declspec(dllimport)
  44649. DWORD
  44650. __stdcall
  44651. InitiateShutdownA(
  44652.              LPSTR lpMachineName,
  44653.              LPSTR lpMessage,
  44654.              DWORD dwGracePeriod,
  44655.              DWORD dwShutdownFlags,
  44656.              DWORD dwReason
  44657.     );
  44658. __declspec(dllimport)
  44659. DWORD
  44660. __stdcall
  44661. InitiateShutdownW(
  44662.              LPWSTR lpMachineName,
  44663.              LPWSTR lpMessage,
  44664.              DWORD dwGracePeriod,
  44665.              DWORD dwShutdownFlags,
  44666.              DWORD dwReason
  44667.     );
  44668.  
  44669.  
  44670.  
  44671.  
  44672.  
  44673.  
  44674. __declspec(dllimport)
  44675. DWORD
  44676. __stdcall
  44677. CheckForHiberboot(
  44678.             PBOOLEAN pHiberboot,
  44679.          BOOLEAN bClearFlag
  44680.     );
  44681.  
  44682. __declspec(dllimport)
  44683. LSTATUS
  44684. __stdcall
  44685. RegSaveKeyExA(
  44686.          HKEY hKey,
  44687.          LPCSTR lpFile,
  44688.              const LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  44689.          DWORD Flags
  44690.     );
  44691.  
  44692. __declspec(dllimport)
  44693. LSTATUS
  44694. __stdcall
  44695. RegSaveKeyExW(
  44696.          HKEY hKey,
  44697.          LPCWSTR lpFile,
  44698.              const LPSECURITY_ATTRIBUTES lpSecurityAttributes,
  44699.          DWORD Flags
  44700.     );
  44701. # 1456 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44702. #pragma endregion
  44703. # 1467 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winreg.h" 3
  44704. #pragma option pop
  44705. # 214 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  44706.  
  44707.  
  44708.  
  44709. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 1 3
  44710. #pragma option push -b -a8 -pc -A- -w-pun
  44711. # 43 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  44712. #pragma region Desktop Family or System Family
  44713. # 52 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  44714. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wnnc.h" 1 3
  44715. #pragma option push -b -a8 -pc -A- -w-pun
  44716. # 29 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wnnc.h" 3
  44717. #pragma region Desktop Family or OneCore Family
  44718. # 117 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wnnc.h" 3
  44719. #pragma endregion
  44720.  
  44721.  
  44722.  
  44723.  
  44724.  
  44725. #pragma option pop
  44726. # 52 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 2 3
  44727. # 101 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  44728. typedef struct _NETRESOURCEA {
  44729.     DWORD dwScope;
  44730.     DWORD dwType;
  44731.     DWORD dwDisplayType;
  44732.     DWORD dwUsage;
  44733.     LPSTR lpLocalName;
  44734.     LPSTR lpRemoteName;
  44735.     LPSTR lpComment ;
  44736.     LPSTR lpProvider;
  44737. }NETRESOURCEA, *LPNETRESOURCEA;
  44738. typedef struct _NETRESOURCEW {
  44739.     DWORD dwScope;
  44740.     DWORD dwType;
  44741.     DWORD dwDisplayType;
  44742.     DWORD dwUsage;
  44743.     LPWSTR lpLocalName;
  44744.     LPWSTR lpRemoteName;
  44745.     LPWSTR lpComment ;
  44746.     LPWSTR lpProvider;
  44747. }NETRESOURCEW, *LPNETRESOURCEW;
  44748.  
  44749.  
  44750.  
  44751.  
  44752. typedef NETRESOURCEA NETRESOURCE;
  44753. typedef LPNETRESOURCEA LPNETRESOURCE;
  44754. # 166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  44755. DWORD __stdcall
  44756. WNetAddConnectionA(
  44757.              LPCSTR lpRemoteName,
  44758.              LPCSTR lpPassword,
  44759.              LPCSTR lpLocalName
  44760.     );
  44761.  
  44762. DWORD __stdcall
  44763. WNetAddConnectionW(
  44764.              LPCWSTR lpRemoteName,
  44765.              LPCWSTR lpPassword,
  44766.              LPCWSTR lpLocalName
  44767.     );
  44768.  
  44769.  
  44770.  
  44771.  
  44772.  
  44773.  
  44774.  
  44775. DWORD __stdcall
  44776. WNetAddConnection2A(
  44777.              LPNETRESOURCEA lpNetResource,
  44778.              LPCSTR lpPassword,
  44779.              LPCSTR lpUserName,
  44780.              DWORD dwFlags
  44781.     );
  44782.  
  44783. DWORD __stdcall
  44784. WNetAddConnection2W(
  44785.              LPNETRESOURCEW lpNetResource,
  44786.              LPCWSTR lpPassword,
  44787.              LPCWSTR lpUserName,
  44788.              DWORD dwFlags
  44789.     );
  44790.  
  44791.  
  44792.  
  44793.  
  44794.  
  44795.  
  44796.  
  44797. DWORD __stdcall
  44798. WNetAddConnection3A(
  44799.              HWND hwndOwner,
  44800.              LPNETRESOURCEA lpNetResource,
  44801.              LPCSTR lpPassword,
  44802.              LPCSTR lpUserName,
  44803.              DWORD dwFlags
  44804.     );
  44805.  
  44806. DWORD __stdcall
  44807. WNetAddConnection3W(
  44808.              HWND hwndOwner,
  44809.              LPNETRESOURCEW lpNetResource,
  44810.              LPCWSTR lpPassword,
  44811.              LPCWSTR lpUserName,
  44812.              DWORD dwFlags
  44813.     );
  44814.  
  44815.  
  44816.  
  44817.  
  44818.  
  44819.  
  44820.  
  44821. DWORD __stdcall
  44822. WNetCancelConnectionA(
  44823.          LPCSTR lpName,
  44824.          BOOL fForce
  44825.     );
  44826.  
  44827. DWORD __stdcall
  44828. WNetCancelConnectionW(
  44829.          LPCWSTR lpName,
  44830.          BOOL fForce
  44831.     );
  44832.  
  44833.  
  44834.  
  44835.  
  44836.  
  44837.  
  44838.  
  44839. DWORD __stdcall
  44840. WNetCancelConnection2A(
  44841.          LPCSTR lpName,
  44842.          DWORD dwFlags,
  44843.          BOOL fForce
  44844.     );
  44845.  
  44846. DWORD __stdcall
  44847. WNetCancelConnection2W(
  44848.          LPCWSTR lpName,
  44849.          DWORD dwFlags,
  44850.          BOOL fForce
  44851.     );
  44852.  
  44853.  
  44854.  
  44855.  
  44856.  
  44857.  
  44858.  
  44859. DWORD __stdcall
  44860. WNetGetConnectionA(
  44861.          LPCSTR lpLocalName,
  44862.                                  LPSTR lpRemoteName,
  44863.             LPDWORD lpnLength
  44864.     );
  44865.  
  44866. DWORD __stdcall
  44867. WNetGetConnectionW(
  44868.          LPCWSTR lpLocalName,
  44869.                                  LPWSTR lpRemoteName,
  44870.             LPDWORD lpnLength
  44871.     );
  44872.  
  44873.  
  44874.  
  44875.  
  44876.  
  44877.  
  44878.  
  44879.  
  44880. #pragma endregion
  44881.  
  44882. #pragma region Desktop Family
  44883.  
  44884.  
  44885.  
  44886.  
  44887. DWORD __stdcall
  44888. WNetRestoreSingleConnectionW(
  44889.              HWND hwndParent,
  44890.              LPCWSTR lpDevice,
  44891.              BOOL fUseUI
  44892.     );
  44893. # 316 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  44894. #pragma endregion
  44895.  
  44896. #pragma region Desktop Family or System Family
  44897.  
  44898.  
  44899.  
  44900.  
  44901. DWORD __stdcall
  44902. WNetUseConnectionA(
  44903.              HWND hwndOwner,
  44904.              LPNETRESOURCEA lpNetResource,
  44905.              LPCSTR lpPassword,
  44906.              LPCSTR lpUserId,
  44907.              DWORD dwFlags,
  44908.                                     LPSTR lpAccessName,
  44909.                 LPDWORD lpBufferSize,
  44910.               LPDWORD lpResult
  44911.     );
  44912.  
  44913. DWORD __stdcall
  44914. WNetUseConnectionW(
  44915.              HWND hwndOwner,
  44916.              LPNETRESOURCEW lpNetResource,
  44917.              LPCWSTR lpPassword,
  44918.              LPCWSTR lpUserId,
  44919.              DWORD dwFlags,
  44920.                                     LPWSTR lpAccessName,
  44921.                 LPDWORD lpBufferSize,
  44922.               LPDWORD lpResult
  44923.     );
  44924. # 358 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  44925. DWORD __stdcall
  44926. WNetConnectionDialog(
  44927.          HWND hwnd,
  44928.          DWORD dwType
  44929.     );
  44930.  
  44931.  
  44932. DWORD __stdcall
  44933. WNetDisconnectDialog(
  44934.              HWND hwnd,
  44935.          DWORD dwType
  44936.     );
  44937.  
  44938.  
  44939. typedef struct _CONNECTDLGSTRUCTA{
  44940.     DWORD cbStructure;
  44941.     HWND hwndOwner;
  44942.     LPNETRESOURCEA lpConnRes;
  44943.     DWORD dwFlags;
  44944.     DWORD dwDevNum;
  44945. } CONNECTDLGSTRUCTA, *LPCONNECTDLGSTRUCTA;
  44946. typedef struct _CONNECTDLGSTRUCTW{
  44947.     DWORD cbStructure;
  44948.     HWND hwndOwner;
  44949.     LPNETRESOURCEW lpConnRes;
  44950.     DWORD dwFlags;
  44951.     DWORD dwDevNum;
  44952. } CONNECTDLGSTRUCTW, *LPCONNECTDLGSTRUCTW;
  44953.  
  44954.  
  44955.  
  44956.  
  44957. typedef CONNECTDLGSTRUCTA CONNECTDLGSTRUCT;
  44958. typedef LPCONNECTDLGSTRUCTA LPCONNECTDLGSTRUCT;
  44959. # 408 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  44960. DWORD __stdcall
  44961. WNetConnectionDialog1A(
  44962.             LPCONNECTDLGSTRUCTA lpConnDlgStruct
  44963.     );
  44964.  
  44965. DWORD __stdcall
  44966. WNetConnectionDialog1W(
  44967.             LPCONNECTDLGSTRUCTW lpConnDlgStruct
  44968.     );
  44969.  
  44970.  
  44971.  
  44972.  
  44973.  
  44974.  
  44975. typedef struct _DISCDLGSTRUCTA{
  44976.     DWORD cbStructure;
  44977.     HWND hwndOwner;
  44978.     LPSTR lpLocalName;
  44979.     LPSTR lpRemoteName;
  44980.     DWORD dwFlags;
  44981. } DISCDLGSTRUCTA, *LPDISCDLGSTRUCTA;
  44982. typedef struct _DISCDLGSTRUCTW{
  44983.     DWORD cbStructure;
  44984.     HWND hwndOwner;
  44985.     LPWSTR lpLocalName;
  44986.     LPWSTR lpRemoteName;
  44987.     DWORD dwFlags;
  44988. } DISCDLGSTRUCTW, *LPDISCDLGSTRUCTW;
  44989.  
  44990.  
  44991.  
  44992.  
  44993. typedef DISCDLGSTRUCTA DISCDLGSTRUCT;
  44994. typedef LPDISCDLGSTRUCTA LPDISCDLGSTRUCT;
  44995.  
  44996.  
  44997.  
  44998.  
  44999.  
  45000.  
  45001. DWORD __stdcall
  45002. WNetDisconnectDialog1A(
  45003.          LPDISCDLGSTRUCTA lpConnDlgStruct
  45004.     );
  45005.  
  45006. DWORD __stdcall
  45007. WNetDisconnectDialog1W(
  45008.          LPDISCDLGSTRUCTW lpConnDlgStruct
  45009.     );
  45010. # 470 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  45011. DWORD __stdcall
  45012. WNetOpenEnumA(
  45013.           DWORD dwScope,
  45014.           DWORD dwType,
  45015.           DWORD dwUsage,
  45016.              LPNETRESOURCEA lpNetResource,
  45017.           LPHANDLE lphEnum
  45018.     );
  45019.  
  45020. DWORD __stdcall
  45021. WNetOpenEnumW(
  45022.           DWORD dwScope,
  45023.           DWORD dwType,
  45024.           DWORD dwUsage,
  45025.              LPNETRESOURCEW lpNetResource,
  45026.           LPHANDLE lphEnum
  45027.     );
  45028.  
  45029.  
  45030.  
  45031.  
  45032.  
  45033.  
  45034.  
  45035. DWORD __stdcall
  45036. WNetEnumResourceA(
  45037.             HANDLE hEnum,
  45038.             LPDWORD lpcCount,
  45039.                                       LPVOID lpBuffer,
  45040.             LPDWORD lpBufferSize
  45041.     );
  45042.  
  45043. DWORD __stdcall
  45044. WNetEnumResourceW(
  45045.             HANDLE hEnum,
  45046.             LPDWORD lpcCount,
  45047.                                       LPVOID lpBuffer,
  45048.             LPDWORD lpBufferSize
  45049.     );
  45050.  
  45051.  
  45052.  
  45053.  
  45054.  
  45055.  
  45056.  
  45057. DWORD __stdcall
  45058. WNetCloseEnum(
  45059.          HANDLE hEnum
  45060.     );
  45061.  
  45062.  
  45063.  
  45064. DWORD __stdcall
  45065. WNetGetResourceParentA(
  45066.          LPNETRESOURCEA lpNetResource,
  45067.                                     LPVOID lpBuffer,
  45068.             LPDWORD lpcbBuffer
  45069.     );
  45070.  
  45071. DWORD __stdcall
  45072. WNetGetResourceParentW(
  45073.          LPNETRESOURCEW lpNetResource,
  45074.                                     LPVOID lpBuffer,
  45075.             LPDWORD lpcbBuffer
  45076.     );
  45077.  
  45078.  
  45079.  
  45080.  
  45081.  
  45082.  
  45083.  
  45084. DWORD __stdcall
  45085. WNetGetResourceInformationA(
  45086.          LPNETRESOURCEA lpNetResource,
  45087.                                     LPVOID lpBuffer,
  45088.             LPDWORD lpcbBuffer,
  45089.              LPSTR *lplpSystem
  45090.     );
  45091.  
  45092. DWORD __stdcall
  45093. WNetGetResourceInformationW(
  45094.          LPNETRESOURCEW lpNetResource,
  45095.                                     LPVOID lpBuffer,
  45096.             LPDWORD lpcbBuffer,
  45097.              LPWSTR *lplpSystem
  45098.     );
  45099. # 572 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  45100. typedef struct _UNIVERSAL_NAME_INFOA {
  45101.     LPSTR lpUniversalName;
  45102. }UNIVERSAL_NAME_INFOA, *LPUNIVERSAL_NAME_INFOA;
  45103. typedef struct _UNIVERSAL_NAME_INFOW {
  45104.     LPWSTR lpUniversalName;
  45105. }UNIVERSAL_NAME_INFOW, *LPUNIVERSAL_NAME_INFOW;
  45106.  
  45107.  
  45108.  
  45109.  
  45110. typedef UNIVERSAL_NAME_INFOA UNIVERSAL_NAME_INFO;
  45111. typedef LPUNIVERSAL_NAME_INFOA LPUNIVERSAL_NAME_INFO;
  45112.  
  45113.  
  45114. typedef struct _REMOTE_NAME_INFOA {
  45115.     LPSTR lpUniversalName;
  45116.     LPSTR lpConnectionName;
  45117.     LPSTR lpRemainingPath;
  45118. }REMOTE_NAME_INFOA, *LPREMOTE_NAME_INFOA;
  45119. typedef struct _REMOTE_NAME_INFOW {
  45120.     LPWSTR lpUniversalName;
  45121.     LPWSTR lpConnectionName;
  45122.     LPWSTR lpRemainingPath;
  45123. }REMOTE_NAME_INFOW, *LPREMOTE_NAME_INFOW;
  45124.  
  45125.  
  45126.  
  45127.  
  45128. typedef REMOTE_NAME_INFOA REMOTE_NAME_INFO;
  45129. typedef LPREMOTE_NAME_INFOA LPREMOTE_NAME_INFO;
  45130.  
  45131.  
  45132.  
  45133. DWORD __stdcall
  45134. WNetGetUniversalNameA(
  45135.          LPCSTR lpLocalPath,
  45136.          DWORD dwInfoLevel,
  45137.                                       LPVOID lpBuffer,
  45138.             LPDWORD lpBufferSize
  45139.     );
  45140.  
  45141. DWORD __stdcall
  45142. WNetGetUniversalNameW(
  45143.          LPCWSTR lpLocalPath,
  45144.          DWORD dwInfoLevel,
  45145.                                       LPVOID lpBuffer,
  45146.             LPDWORD lpBufferSize
  45147.     );
  45148. # 630 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  45149. DWORD __stdcall
  45150. WNetGetUserA(
  45151.              LPCSTR lpName,
  45152.                              LPSTR lpUserName,
  45153.              LPDWORD lpnLength
  45154.     );
  45155.  
  45156.  
  45157.  
  45158.  
  45159. DWORD __stdcall
  45160. WNetGetUserW(
  45161.              LPCWSTR lpName,
  45162.                              LPWSTR lpUserName,
  45163.              LPDWORD lpnLength
  45164.     );
  45165. # 668 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  45166. DWORD __stdcall
  45167. WNetGetProviderNameA(
  45168.             DWORD dwNetType,
  45169.                                 LPSTR lpProviderName,
  45170.             LPDWORD lpBufferSize
  45171.     );
  45172.  
  45173. DWORD __stdcall
  45174. WNetGetProviderNameW(
  45175.             DWORD dwNetType,
  45176.                                 LPWSTR lpProviderName,
  45177.             LPDWORD lpBufferSize
  45178.     );
  45179.  
  45180.  
  45181.  
  45182.  
  45183.  
  45184.  
  45185. typedef struct _NETINFOSTRUCT{
  45186.     DWORD cbStructure;
  45187.     DWORD dwProviderVersion;
  45188.     DWORD dwStatus;
  45189.     DWORD dwCharacteristics;
  45190.     ULONG_PTR dwHandle;
  45191.     WORD wNetType;
  45192.     DWORD dwPrinters;
  45193.     DWORD dwDrives;
  45194. } NETINFOSTRUCT, *LPNETINFOSTRUCT;
  45195.  
  45196.  
  45197.  
  45198.  
  45199.  
  45200.  
  45201. DWORD __stdcall
  45202. WNetGetNetworkInformationA(
  45203.           LPCSTR lpProvider,
  45204.           LPNETINFOSTRUCT lpNetInfoStruct
  45205.     );
  45206.  
  45207. DWORD __stdcall
  45208. WNetGetNetworkInformationW(
  45209.           LPCWSTR lpProvider,
  45210.           LPNETINFOSTRUCT lpNetInfoStruct
  45211.     );
  45212. # 727 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  45213. DWORD __stdcall
  45214. WNetGetLastErrorA(
  45215.           LPDWORD lpError,
  45216.                                 LPSTR lpErrorBuf,
  45217.          DWORD nErrorBufSize,
  45218.                                LPSTR lpNameBuf,
  45219.          DWORD nNameBufSize
  45220.     );
  45221.  
  45222. DWORD __stdcall
  45223. WNetGetLastErrorW(
  45224.           LPDWORD lpError,
  45225.                                 LPWSTR lpErrorBuf,
  45226.          DWORD nErrorBufSize,
  45227.                                LPWSTR lpNameBuf,
  45228.          DWORD nNameBufSize
  45229.     );
  45230. # 819 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  45231. typedef struct _NETCONNECTINFOSTRUCT{
  45232.     DWORD cbStructure;
  45233.     DWORD dwFlags;
  45234.     DWORD dwSpeed;
  45235.     DWORD dwDelay;
  45236.     DWORD dwOptDataSize;
  45237. } NETCONNECTINFOSTRUCT, *LPNETCONNECTINFOSTRUCT;
  45238.  
  45239.  
  45240.  
  45241.  
  45242.  
  45243.  
  45244.  
  45245. DWORD __stdcall
  45246. MultinetGetConnectionPerformanceA(
  45247.           LPNETRESOURCEA lpNetResource,
  45248.           LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct
  45249.     );
  45250.  
  45251. DWORD __stdcall
  45252. MultinetGetConnectionPerformanceW(
  45253.           LPNETRESOURCEW lpNetResource,
  45254.           LPNETCONNECTINFOSTRUCT lpNetConnectInfoStruct
  45255.     );
  45256. # 853 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  45257. #pragma endregion
  45258. # 867 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winnetwk.h" 3
  45259. #pragma option pop
  45260. # 217 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  45261.  
  45262.  
  45263.  
  45264.  
  45265. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\cderr.h" 1 3
  45266. # 12 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\cderr.h" 3
  45267. #pragma option push -b -a8 -pc -A- -w-pun
  45268. # 63 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\cderr.h" 3
  45269. #pragma option pop
  45270. # 221 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  45271.  
  45272. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dde.h" 1 3
  45273.  
  45274.  
  45275.  
  45276.  
  45277.  
  45278.  
  45279.  
  45280.  
  45281. #pragma option push -b -a8 -pc -A- -w-pun
  45282. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dde.h" 3
  45283. #pragma region Desktop Family
  45284. # 61 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dde.h" 3
  45285. typedef struct {
  45286.  
  45287.         unsigned short bAppReturnCode:8,
  45288.                  reserved:6,
  45289.                  fBusy:1,
  45290.    fAck:1;
  45291.  
  45292.  
  45293.  
  45294. } DDEACK;
  45295. # 80 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dde.h" 3
  45296. typedef struct {
  45297.  
  45298.         unsigned short reserved:14,
  45299.                  fDeferUpd:1,
  45300.    fAckReq:1;
  45301.  
  45302.  
  45303.  
  45304.  short cfFormat;
  45305. } DDEADVISE;
  45306. # 101 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dde.h" 3
  45307. typedef struct {
  45308.  
  45309.  unsigned short unused:12,
  45310.                  fResponse:1,
  45311.                  fRelease:1,
  45312.                  reserved:1,
  45313.                  fAckReq:1;
  45314.  
  45315.  
  45316.  
  45317.  short cfFormat;
  45318.  BYTE Value[1];
  45319. } DDEDATA;
  45320. # 125 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dde.h" 3
  45321. typedef struct {
  45322.  
  45323.  unsigned short unused:13,
  45324.  
  45325.    fRelease:1,
  45326.    fReserved:2;
  45327.  
  45328.  
  45329.  
  45330.  short cfFormat;
  45331.  BYTE Value[1];
  45332.  
  45333.  
  45334. } DDEPOKE;
  45335. # 150 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dde.h" 3
  45336. typedef struct {
  45337.  
  45338.         unsigned short unused:13,
  45339.                  fRelease:1,
  45340.                  fDeferUpd:1,
  45341.    fAckReq:1;
  45342.  
  45343.  
  45344.  
  45345.  short cfFormat;
  45346. } DDELN;
  45347.  
  45348. typedef struct {
  45349.  
  45350.  unsigned short unused:12,
  45351.                  fAck:1,
  45352.                  fRelease:1,
  45353.                  fReserved:1,
  45354.                  fAckReq:1;
  45355.  
  45356.  
  45357.  
  45358.  short cfFormat;
  45359.  BYTE rgb[1];
  45360. } DDEUP;
  45361.  
  45362.  
  45363.  
  45364.  
  45365.  
  45366.  
  45367. BOOL
  45368. __stdcall
  45369. DdeSetQualityOfService(
  45370.     HWND hwndClient,
  45371.     const SECURITY_QUALITY_OF_SERVICE *pqosNew,
  45372.     PSECURITY_QUALITY_OF_SERVICE pqosPrev);
  45373.  
  45374. BOOL
  45375. __stdcall
  45376. ImpersonateDdeClientWindow(
  45377.     HWND hWndClient,
  45378.     HWND hWndServer);
  45379.  
  45380.  
  45381.  
  45382.  
  45383. LPARAM __stdcall PackDDElParam( UINT msg, UINT_PTR uiLo, UINT_PTR uiHi);
  45384. BOOL __stdcall UnpackDDElParam( UINT msg, LPARAM lParam, PUINT_PTR puiLo, PUINT_PTR puiHi);
  45385. BOOL __stdcall FreeDDElParam( UINT msg, LPARAM lParam);
  45386. LPARAM __stdcall ReuseDDElParam(LPARAM lParam, UINT msgIn, UINT msgOut, UINT_PTR uiLo, UINT_PTR uiHi);
  45387.  
  45388.  
  45389. #pragma endregion
  45390. # 213 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dde.h" 3
  45391. #pragma option pop
  45392. # 222 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  45393.  
  45394. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ddeml.h" 1 3
  45395. #pragma option push -b -a8 -pc -A- -w-pun
  45396. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ddeml.h" 3
  45397. #pragma region Desktop Family
  45398.  
  45399.  
  45400.  
  45401.  
  45402.  
  45403. struct HCONVLIST__{int unused;}; typedef struct HCONVLIST__ *HCONVLIST;
  45404. struct HCONV__{int unused;}; typedef struct HCONV__ *HCONV;
  45405. struct HSZ__{int unused;}; typedef struct HSZ__ *HSZ;
  45406. struct HDDEDATA__{int unused;}; typedef struct HDDEDATA__ *HDDEDATA;
  45407.  
  45408.  
  45409.  
  45410.  
  45411. typedef struct tagHSZPAIR {
  45412.     HSZ hszSvc;
  45413.     HSZ hszTopic;
  45414. } HSZPAIR, *PHSZPAIR;
  45415.  
  45416.  
  45417.  
  45418.  
  45419. typedef struct tagCONVCONTEXT {
  45420.     UINT cb;
  45421.     UINT wFlags;
  45422.     UINT wCountryID;
  45423.     int iCodePage;
  45424.     DWORD dwLangID;
  45425.     DWORD dwSecurity;
  45426.     SECURITY_QUALITY_OF_SERVICE qos;
  45427. } CONVCONTEXT, *PCONVCONTEXT;
  45428.  
  45429.  
  45430.  
  45431.  
  45432. typedef struct tagCONVINFO {
  45433.     DWORD cb;
  45434.     DWORD_PTR hUser;
  45435.     HCONV hConvPartner;
  45436.     HSZ hszSvcPartner;
  45437.     HSZ hszServiceReq;
  45438.     HSZ hszTopic;
  45439.     HSZ hszItem;
  45440.     UINT wFmt;
  45441.     UINT wType;
  45442.     UINT wStatus;
  45443.     UINT wConvst;
  45444.     UINT wLastError;
  45445.     HCONVLIST hConvList;
  45446.     CONVCONTEXT ConvCtxt;
  45447.     HWND hwnd;
  45448.     HWND hwndPartner;
  45449. } CONVINFO, *PCONVINFO;
  45450. # 213 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ddeml.h" 3
  45451. typedef HDDEDATA __stdcall FNCALLBACK(UINT wType, UINT wFmt, HCONV hConv,
  45452.         HSZ hsz1, HSZ hsz2, HDDEDATA hData, ULONG_PTR dwData1, ULONG_PTR dwData2);
  45453. typedef HDDEDATA (__stdcall *PFNCALLBACK)(UINT wType, UINT wFmt, HCONV hConv,
  45454.         HSZ hsz1, HSZ hsz2, HDDEDATA hData, ULONG_PTR dwData1, ULONG_PTR dwData2);
  45455.  
  45456.  
  45457.  
  45458.  
  45459.  
  45460. UINT
  45461. __stdcall
  45462. DdeInitializeA(
  45463.             LPDWORD pidInst,
  45464.          PFNCALLBACK pfnCallback,
  45465.          DWORD afCmd,
  45466.                DWORD ulRes);
  45467. UINT
  45468. __stdcall
  45469. DdeInitializeW(
  45470.             LPDWORD pidInst,
  45471.          PFNCALLBACK pfnCallback,
  45472.          DWORD afCmd,
  45473.                DWORD ulRes);
  45474. # 273 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ddeml.h" 3
  45475. BOOL
  45476. __stdcall
  45477. DdeUninitialize(
  45478.          DWORD idInst);
  45479.  
  45480.  
  45481.  
  45482.  
  45483. HCONVLIST
  45484. __stdcall
  45485. DdeConnectList(
  45486.          DWORD idInst,
  45487.          HSZ hszService,
  45488.          HSZ hszTopic,
  45489.          HCONVLIST hConvList,
  45490.              PCONVCONTEXT pCC);
  45491.  
  45492. HCONV
  45493. __stdcall
  45494. DdeQueryNextServer(
  45495.          HCONVLIST hConvList,
  45496.          HCONV hConvPrev);
  45497. BOOL
  45498. __stdcall
  45499. DdeDisconnectList(
  45500.          HCONVLIST hConvList);
  45501.  
  45502.  
  45503.  
  45504.  
  45505. HCONV
  45506. __stdcall
  45507. DdeConnect(
  45508.          DWORD idInst,
  45509.          HSZ hszService,
  45510.          HSZ hszTopic,
  45511.              PCONVCONTEXT pCC);
  45512.  
  45513. BOOL
  45514. __stdcall
  45515. DdeDisconnect(
  45516.          HCONV hConv);
  45517.  
  45518. HCONV
  45519. __stdcall
  45520. DdeReconnect(
  45521.          HCONV hConv);
  45522.  
  45523. UINT
  45524. __stdcall
  45525. DdeQueryConvInfo(
  45526.          HCONV hConv,
  45527.          DWORD idTransaction,
  45528.             PCONVINFO pConvInfo);
  45529.  
  45530. BOOL
  45531. __stdcall
  45532. DdeSetUserHandle(
  45533.          HCONV hConv,
  45534.          DWORD id,
  45535.          DWORD_PTR hUser);
  45536.  
  45537. BOOL
  45538. __stdcall
  45539. DdeAbandonTransaction(
  45540.          DWORD idInst,
  45541.          HCONV hConv,
  45542.          DWORD idTransaction);
  45543.  
  45544.  
  45545.  
  45546.  
  45547.  
  45548. BOOL
  45549. __stdcall
  45550. DdePostAdvise(
  45551.          DWORD idInst,
  45552.          HSZ hszTopic,
  45553.          HSZ hszItem);
  45554.  
  45555. BOOL
  45556. __stdcall
  45557. DdeEnableCallback(
  45558.          DWORD idInst,
  45559.          HCONV hConv,
  45560.          UINT wCmd);
  45561.  
  45562. BOOL
  45563. __stdcall
  45564. DdeImpersonateClient(
  45565.          HCONV hConv);
  45566.  
  45567.  
  45568.  
  45569.  
  45570.  
  45571.  
  45572.  
  45573. HDDEDATA
  45574. __stdcall
  45575. DdeNameService(
  45576.          DWORD idInst,
  45577.              HSZ hsz1,
  45578.              HSZ hsz2,
  45579.          UINT afCmd);
  45580. # 387 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ddeml.h" 3
  45581. HDDEDATA
  45582. __stdcall
  45583. DdeClientTransaction(
  45584.              LPBYTE pData,
  45585.          DWORD cbData,
  45586.          HCONV hConv,
  45587.              HSZ hszItem,
  45588.          UINT wFmt,
  45589.          UINT wType,
  45590.          DWORD dwTimeout,
  45591.               LPDWORD pdwResult);
  45592.  
  45593.  
  45594.  
  45595.  
  45596.  
  45597.  
  45598. HDDEDATA
  45599. __stdcall
  45600. DdeCreateDataHandle(
  45601.          DWORD idInst,
  45602.                              LPBYTE pSrc,
  45603.          DWORD cb,
  45604.          DWORD cbOff,
  45605.              HSZ hszItem,
  45606.          UINT wFmt,
  45607.          UINT afCmd);
  45608.  
  45609. HDDEDATA
  45610. __stdcall
  45611. DdeAddData(
  45612.          HDDEDATA hData,
  45613.                          LPBYTE pSrc,
  45614.          DWORD cb,
  45615.          DWORD cbOff);
  45616.  
  45617. DWORD
  45618. __stdcall
  45619. DdeGetData(
  45620.          HDDEDATA hData,
  45621.                                   LPBYTE pDst,
  45622.          DWORD cbMax,
  45623.          DWORD cbOff);
  45624.  
  45625. LPBYTE
  45626. __stdcall
  45627. DdeAccessData(
  45628.          HDDEDATA hData,
  45629.               LPDWORD pcbDataSize);
  45630.  
  45631. BOOL
  45632. __stdcall
  45633. DdeUnaccessData(
  45634.          HDDEDATA hData);
  45635.  
  45636. BOOL
  45637. __stdcall
  45638. DdeFreeDataHandle(
  45639.          HDDEDATA hData);
  45640.  
  45641.  
  45642.  
  45643.  
  45644. UINT
  45645. __stdcall
  45646. DdeGetLastError(
  45647.          DWORD idInst);
  45648. # 481 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ddeml.h" 3
  45649. HSZ
  45650. __stdcall
  45651. DdeCreateStringHandleA(
  45652.          DWORD idInst,
  45653.          LPCSTR psz,
  45654.          int iCodePage);
  45655. HSZ
  45656. __stdcall
  45657. DdeCreateStringHandleW(
  45658.          DWORD idInst,
  45659.          LPCWSTR psz,
  45660.          int iCodePage);
  45661.  
  45662.  
  45663.  
  45664.  
  45665.  
  45666.  
  45667. DWORD
  45668. __stdcall
  45669. DdeQueryStringA(
  45670.          DWORD idInst,
  45671.          HSZ hsz,
  45672.                              LPSTR psz,
  45673.          DWORD cchMax,
  45674.          int iCodePage);
  45675. DWORD
  45676. __stdcall
  45677. DdeQueryStringW(
  45678.          DWORD idInst,
  45679.          HSZ hsz,
  45680.                              LPWSTR psz,
  45681.          DWORD cchMax,
  45682.          int iCodePage);
  45683.  
  45684.  
  45685.  
  45686.  
  45687.  
  45688.  
  45689. BOOL
  45690. __stdcall
  45691. DdeFreeStringHandle(
  45692.          DWORD idInst,
  45693.          HSZ hsz);
  45694.  
  45695. BOOL
  45696. __stdcall
  45697. DdeKeepStringHandle(
  45698.          DWORD idInst,
  45699.          HSZ hsz);
  45700.  
  45701. int
  45702. __stdcall
  45703. DdeCmpStringHandles(
  45704.          HSZ hsz1,
  45705.          HSZ hsz2);
  45706.  
  45707.  
  45708.  
  45709.  
  45710.  
  45711.  
  45712. typedef struct tagDDEML_MSG_HOOK_DATA {
  45713.     UINT_PTR uiLo;
  45714.     UINT_PTR uiHi;
  45715.     DWORD cbData;
  45716.     DWORD Data[8];
  45717. } DDEML_MSG_HOOK_DATA, *PDDEML_MSG_HOOK_DATA;
  45718.  
  45719.  
  45720. typedef struct tagMONMSGSTRUCT {
  45721.     UINT cb;
  45722.     HWND hwndTo;
  45723.     DWORD dwTime;
  45724.     HANDLE hTask;
  45725.     UINT wMsg;
  45726.     WPARAM wParam;
  45727.     LPARAM lParam;
  45728.     DDEML_MSG_HOOK_DATA dmhd;
  45729. } MONMSGSTRUCT, *PMONMSGSTRUCT;
  45730.  
  45731. typedef struct tagMONCBSTRUCT {
  45732.     UINT cb;
  45733.     DWORD dwTime;
  45734.     HANDLE hTask;
  45735.     DWORD dwRet;
  45736.     UINT wType;
  45737.     UINT wFmt;
  45738.     HCONV hConv;
  45739.     HSZ hsz1;
  45740.     HSZ hsz2;
  45741.     HDDEDATA hData;
  45742.     ULONG_PTR dwData1;
  45743.     ULONG_PTR dwData2;
  45744.     CONVCONTEXT cc;
  45745.     DWORD cbData;
  45746.     DWORD Data[8];
  45747. } MONCBSTRUCT, *PMONCBSTRUCT;
  45748.  
  45749. typedef struct tagMONHSZSTRUCTA {
  45750.     UINT cb;
  45751.     BOOL fsAction;
  45752.     DWORD dwTime;
  45753.     HSZ hsz;
  45754.     HANDLE hTask;
  45755.     CHAR str[1];
  45756. } MONHSZSTRUCTA, *PMONHSZSTRUCTA;
  45757. typedef struct tagMONHSZSTRUCTW {
  45758.     UINT cb;
  45759.     BOOL fsAction;
  45760.     DWORD dwTime;
  45761.     HSZ hsz;
  45762.     HANDLE hTask;
  45763.     WCHAR str[1];
  45764. } MONHSZSTRUCTW, *PMONHSZSTRUCTW;
  45765.  
  45766.  
  45767.  
  45768.  
  45769. typedef MONHSZSTRUCTA MONHSZSTRUCT;
  45770. typedef PMONHSZSTRUCTA PMONHSZSTRUCT;
  45771.  
  45772.  
  45773.  
  45774.  
  45775.  
  45776.  
  45777.  
  45778. typedef struct tagMONERRSTRUCT {
  45779.     UINT cb;
  45780.     UINT wLastError;
  45781.     DWORD dwTime;
  45782.     HANDLE hTask;
  45783. } MONERRSTRUCT, *PMONERRSTRUCT;
  45784.  
  45785. typedef struct tagMONLINKSTRUCT {
  45786.     UINT cb;
  45787.     DWORD dwTime;
  45788.     HANDLE hTask;
  45789.     BOOL fEstablished;
  45790.     BOOL fNoData;
  45791.     HSZ hszSvc;
  45792.     HSZ hszTopic;
  45793.     HSZ hszItem;
  45794.     UINT wFmt;
  45795.     BOOL fServer;
  45796.     HCONV hConvServer;
  45797.     HCONV hConvClient;
  45798. } MONLINKSTRUCT, *PMONLINKSTRUCT;
  45799.  
  45800. typedef struct tagMONCONVSTRUCT {
  45801.     UINT cb;
  45802.     BOOL fConnect;
  45803.     DWORD dwTime;
  45804.     HANDLE hTask;
  45805.     HSZ hszSvc;
  45806.     HSZ hszTopic;
  45807.     HCONV hConvClient;
  45808.     HCONV hConvServer;
  45809. } MONCONVSTRUCT, *PMONCONVSTRUCT;
  45810. # 664 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ddeml.h" 3
  45811. #pragma endregion
  45812. # 676 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ddeml.h" 3
  45813. #pragma option pop
  45814. # 223 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  45815.  
  45816. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dlgs.h" 1 3
  45817. #pragma option push -b -a8 -pc -A- -w-pun
  45818. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dlgs.h" 3
  45819. #pragma region Desktop Family
  45820. # 265 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dlgs.h" 3
  45821. typedef struct tagCRGB
  45822. {
  45823.     BYTE bRed;
  45824.     BYTE bGreen;
  45825.     BYTE bBlue;
  45826.     BYTE bExtra;
  45827. } CRGB;
  45828.  
  45829.  
  45830.  
  45831.  
  45832. #pragma endregion
  45833.  
  45834.  
  45835.  
  45836. #pragma option pop
  45837. # 224 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  45838.  
  45839.  
  45840. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\lzexpand.h" 1 3
  45841. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\lzexpand.h" 3
  45842. #pragma option push -b -a8 -pc -A- -w-pun
  45843.  
  45844.  
  45845.  
  45846.  
  45847.  
  45848.  
  45849.  
  45850.  
  45851. #pragma region Desktop Family
  45852. # 53 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\lzexpand.h" 3
  45853. INT
  45854. __stdcall
  45855. LZStart(
  45856.     void
  45857.     );
  45858.  
  45859. void
  45860. __stdcall
  45861. LZDone(
  45862.     void
  45863.     );
  45864.  
  45865.  
  45866.  
  45867.  
  45868. LONG
  45869. __stdcall
  45870. CopyLZFile(
  45871.          INT hfSource,
  45872.          INT hfDest
  45873.     );
  45874.  
  45875.  
  45876.  
  45877. LONG
  45878. __stdcall
  45879. LZCopy(
  45880.          INT hfSource,
  45881.          INT hfDest
  45882.     );
  45883.  
  45884.  
  45885.  
  45886. INT
  45887. __stdcall
  45888. LZInit(
  45889.          INT hfSource
  45890.     );
  45891.  
  45892.  
  45893.  
  45894. INT
  45895. __stdcall
  45896. GetExpandedNameA(
  45897.          LPSTR lpszSource,
  45898.                            LPSTR lpszBuffer
  45899.     );
  45900.  
  45901.  
  45902. INT
  45903. __stdcall
  45904. GetExpandedNameW(
  45905.          LPWSTR lpszSource,
  45906.                            LPWSTR lpszBuffer
  45907.     );
  45908. # 116 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\lzexpand.h" 3
  45909. INT
  45910. __stdcall
  45911. LZOpenFileA(
  45912.          LPSTR lpFileName,
  45913.             LPOFSTRUCT lpReOpenBuf,
  45914.          WORD wStyle
  45915.     );
  45916.  
  45917.  
  45918. INT
  45919. __stdcall
  45920. LZOpenFileW(
  45921.          LPWSTR lpFileName,
  45922.             LPOFSTRUCT lpReOpenBuf,
  45923.          WORD wStyle
  45924.     );
  45925. # 140 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\lzexpand.h" 3
  45926. LONG
  45927. __stdcall
  45928. LZSeek(
  45929.          INT hFile,
  45930.          LONG lOffset,
  45931.          INT iOrigin
  45932.     );
  45933.  
  45934.  
  45935.  
  45936. INT
  45937. __stdcall
  45938. LZRead(
  45939.          INT hFile,
  45940.                                           CHAR* lpBuffer,
  45941.          INT cbRead
  45942.     );
  45943.  
  45944. void
  45945. __stdcall
  45946. LZClose(
  45947.          INT hFile
  45948.     );
  45949.  
  45950.  
  45951. #pragma endregion
  45952.  
  45953.  
  45954.  
  45955.  
  45956.  
  45957.  
  45958. #pragma option pop
  45959. # 226 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  45960.  
  45961. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 1 3
  45962. #pragma option push -b -a8 -pc -A- -w-pun
  45963. # 35 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 3
  45964. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 1 3
  45965. #pragma option push -b -a8 -pc -A- -w-pun
  45966. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  45967. #pragma warning(disable: 4201)
  45968.  
  45969.  
  45970.  
  45971. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  45972. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  45973. #pragma warning(disable: 4103)
  45974.  
  45975. #pragma pack(push,1)
  45976. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 2 3
  45977. # 33 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  45978. #pragma region Desktop Family or OneCore Family
  45979. # 95 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  45980. typedef UINT MMVERSION;
  45981.  
  45982.  
  45983.  
  45984. typedef UINT MMRESULT;
  45985.  
  45986.  
  45987.  
  45988. typedef UINT *LPUINT;
  45989.  
  45990.  
  45991.  
  45992.  
  45993. typedef struct mmtime_tag
  45994. {
  45995.     UINT wType;
  45996.     union
  45997.     {
  45998.         DWORD ms;
  45999.         DWORD sample;
  46000.         DWORD cb;
  46001.         DWORD ticks;
  46002.  
  46003.  
  46004.         struct
  46005.         {
  46006.             BYTE hour;
  46007.             BYTE min;
  46008.             BYTE sec;
  46009.             BYTE frame;
  46010.             BYTE fps;
  46011.             BYTE dummy;
  46012.  
  46013.             BYTE pad[2];
  46014.  
  46015.         } smpte;
  46016.  
  46017.  
  46018.         struct
  46019.         {
  46020.             DWORD songptrpos;
  46021.         } midi;
  46022.     } u;
  46023. } MMTIME, *PMMTIME, *NPMMTIME, *LPMMTIME;
  46024. # 276 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  46025. struct HDRVR__{int unused;}; typedef struct HDRVR__ *HDRVR;
  46026. # 298 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  46027. typedef void (__stdcall DRVCALLBACK)(HDRVR hdrvr, UINT uMsg, DWORD_PTR dwUser, DWORD_PTR dw1, DWORD_PTR dw2);
  46028.  
  46029. typedef DRVCALLBACK *LPDRVCALLBACK;
  46030.  
  46031. typedef DRVCALLBACK *PDRVCALLBACK;
  46032.  
  46033.  
  46034.  
  46035. #pragma endregion
  46036.  
  46037.  
  46038.  
  46039.  
  46040.  
  46041.  
  46042.  
  46043. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  46044. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  46045. #pragma warning(disable: 4103)
  46046.  
  46047. #pragma pack(pop)
  46048. # 313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 2 3
  46049. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  46050. #pragma option pop
  46051. # 35 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  46052.  
  46053.  
  46054.  
  46055. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  46056. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  46057. #pragma warning(disable: 4103)
  46058.  
  46059. #pragma pack(push,1)
  46060. # 38 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  46061. # 49 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 3
  46062. #pragma region Desktop Family
  46063. # 62 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 3
  46064. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 1 3
  46065. #pragma option push -b -a8 -pc -A- -w-pun
  46066. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46067. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 1 3
  46068. #pragma option push -b -a8 -pc -A- -w-pun
  46069. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  46070. #pragma option pop
  46071. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 2 3
  46072.  
  46073.  
  46074.  
  46075.  
  46076.  
  46077.  
  46078. #pragma region Desktop Family
  46079. # 38 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46080. typedef DWORD MCIERROR;
  46081.  
  46082.  
  46083.  
  46084.  
  46085. typedef UINT MCIDEVICEID;
  46086.  
  46087.  
  46088. typedef UINT (__stdcall *YIELDPROC)(MCIDEVICEID mciId, DWORD dwYieldData);
  46089.  
  46090.  
  46091.  
  46092.  
  46093. __declspec(dllimport)
  46094. MCIERROR
  46095. __stdcall
  46096. mciSendCommandA(
  46097.          MCIDEVICEID mciId,
  46098.          UINT uMsg,
  46099.              DWORD_PTR dwParam1,
  46100.              DWORD_PTR dwParam2
  46101.     );
  46102.  
  46103. __declspec(dllimport)
  46104. MCIERROR
  46105. __stdcall
  46106. mciSendCommandW(
  46107.          MCIDEVICEID mciId,
  46108.          UINT uMsg,
  46109.              DWORD_PTR dwParam1,
  46110.              DWORD_PTR dwParam2
  46111.     );
  46112.  
  46113.  
  46114.  
  46115.  
  46116.  
  46117.  
  46118. __declspec(dllimport)
  46119. MCIERROR
  46120. __stdcall
  46121. mciSendStringA(
  46122.          LPCSTR lpstrCommand,
  46123.                                     LPSTR lpstrReturnString,
  46124.          UINT uReturnLength,
  46125.              HWND hwndCallback
  46126.     );
  46127.  
  46128. __declspec(dllimport)
  46129. MCIERROR
  46130. __stdcall
  46131. mciSendStringW(
  46132.          LPCWSTR lpstrCommand,
  46133.                                     LPWSTR lpstrReturnString,
  46134.          UINT uReturnLength,
  46135.              HWND hwndCallback
  46136.     );
  46137.  
  46138.  
  46139.  
  46140.  
  46141.  
  46142.  
  46143. __declspec(dllimport)
  46144. MCIDEVICEID
  46145. __stdcall
  46146. mciGetDeviceIDA(
  46147.          LPCSTR pszDevice
  46148.     );
  46149.  
  46150. __declspec(dllimport)
  46151. MCIDEVICEID
  46152. __stdcall
  46153. mciGetDeviceIDW(
  46154.          LPCWSTR pszDevice
  46155.     );
  46156.  
  46157.  
  46158.  
  46159.  
  46160.  
  46161.  
  46162. __declspec(dllimport)
  46163. MCIDEVICEID
  46164. __stdcall
  46165. mciGetDeviceIDFromElementIDA(
  46166.          DWORD dwElementID,
  46167.          LPCSTR lpstrType
  46168.     );
  46169.  
  46170. __declspec(dllimport)
  46171. MCIDEVICEID
  46172. __stdcall
  46173. mciGetDeviceIDFromElementIDW(
  46174.          DWORD dwElementID,
  46175.          LPCWSTR lpstrType
  46176.     );
  46177.  
  46178.  
  46179.  
  46180.  
  46181.  
  46182.  
  46183. __declspec(dllimport)
  46184. BOOL
  46185. __stdcall
  46186. mciGetErrorStringA(
  46187.          MCIERROR mcierr,
  46188.                           LPSTR pszText,
  46189.          UINT cchText
  46190.     );
  46191.  
  46192. __declspec(dllimport)
  46193. BOOL
  46194. __stdcall
  46195. mciGetErrorStringW(
  46196.          MCIERROR mcierr,
  46197.                           LPWSTR pszText,
  46198.          UINT cchText
  46199.     );
  46200. # 172 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46201. __declspec(dllimport)
  46202. BOOL
  46203. __stdcall
  46204. mciSetYieldProc(
  46205.          MCIDEVICEID mciId,
  46206.              YIELDPROC fpYieldProc,
  46207.          DWORD dwYieldData
  46208.     );
  46209.  
  46210.  
  46211.  
  46212. __declspec(dllimport)
  46213. HTASK
  46214. __stdcall
  46215. mciGetCreatorTask(
  46216.          MCIDEVICEID mciId
  46217.     );
  46218.  
  46219. __declspec(dllimport)
  46220. YIELDPROC
  46221. __stdcall
  46222. mciGetYieldProc(
  46223.          MCIDEVICEID mciId,
  46224.          LPDWORD pdwYieldData
  46225.     );
  46226. # 499 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46227. typedef struct tagMCI_GENERIC_PARMS {
  46228.     DWORD_PTR dwCallback;
  46229. } MCI_GENERIC_PARMS, *PMCI_GENERIC_PARMS, *LPMCI_GENERIC_PARMS;
  46230.  
  46231.  
  46232.  
  46233.  
  46234.  
  46235. typedef struct tagMCI_OPEN_PARMSA {
  46236.     DWORD_PTR dwCallback;
  46237.     MCIDEVICEID wDeviceID;
  46238.     LPCSTR lpstrDeviceType;
  46239.     LPCSTR lpstrElementName;
  46240.     LPCSTR lpstrAlias;
  46241. } MCI_OPEN_PARMSA, *PMCI_OPEN_PARMSA, *LPMCI_OPEN_PARMSA;
  46242. typedef struct tagMCI_OPEN_PARMSW {
  46243.     DWORD_PTR dwCallback;
  46244.     MCIDEVICEID wDeviceID;
  46245.     LPCWSTR lpstrDeviceType;
  46246.     LPCWSTR lpstrElementName;
  46247.     LPCWSTR lpstrAlias;
  46248. } MCI_OPEN_PARMSW, *PMCI_OPEN_PARMSW, *LPMCI_OPEN_PARMSW;
  46249.  
  46250.  
  46251.  
  46252.  
  46253.  
  46254. typedef MCI_OPEN_PARMSA MCI_OPEN_PARMS;
  46255. typedef PMCI_OPEN_PARMSA PMCI_OPEN_PARMS;
  46256. typedef LPMCI_OPEN_PARMSA LPMCI_OPEN_PARMS;
  46257. # 544 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46258. typedef struct tagMCI_PLAY_PARMS {
  46259.     DWORD_PTR dwCallback;
  46260.     DWORD dwFrom;
  46261.     DWORD dwTo;
  46262. } MCI_PLAY_PARMS, *PMCI_PLAY_PARMS, *LPMCI_PLAY_PARMS;
  46263.  
  46264.  
  46265.  
  46266. typedef struct tagMCI_SEEK_PARMS {
  46267.     DWORD_PTR dwCallback;
  46268.     DWORD dwTo;
  46269. } MCI_SEEK_PARMS, *PMCI_SEEK_PARMS, *LPMCI_SEEK_PARMS;
  46270.  
  46271.  
  46272.  
  46273. typedef struct tagMCI_STATUS_PARMS {
  46274.     DWORD_PTR dwCallback;
  46275.     DWORD_PTR dwReturn;
  46276.     DWORD dwItem;
  46277.     DWORD dwTrack;
  46278. } MCI_STATUS_PARMS, *PMCI_STATUS_PARMS, * LPMCI_STATUS_PARMS;
  46279.  
  46280.  
  46281.  
  46282.  
  46283.  
  46284. typedef struct tagMCI_INFO_PARMSA {
  46285.     DWORD_PTR dwCallback;
  46286.     LPSTR lpstrReturn;
  46287.     DWORD dwRetSize;
  46288. } MCI_INFO_PARMSA, * LPMCI_INFO_PARMSA;
  46289. typedef struct tagMCI_INFO_PARMSW {
  46290.     DWORD_PTR dwCallback;
  46291.     LPWSTR lpstrReturn;
  46292.     DWORD dwRetSize;
  46293. } MCI_INFO_PARMSW, * LPMCI_INFO_PARMSW;
  46294.  
  46295.  
  46296.  
  46297.  
  46298. typedef MCI_INFO_PARMSA MCI_INFO_PARMS;
  46299. typedef LPMCI_INFO_PARMSA LPMCI_INFO_PARMS;
  46300. # 598 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46301. typedef struct tagMCI_GETDEVCAPS_PARMS {
  46302.     DWORD_PTR dwCallback;
  46303.     DWORD dwReturn;
  46304.     DWORD dwItem;
  46305. } MCI_GETDEVCAPS_PARMS, *PMCI_GETDEVCAPS_PARMS, * LPMCI_GETDEVCAPS_PARMS;
  46306.  
  46307.  
  46308.  
  46309.  
  46310.  
  46311. typedef struct tagMCI_SYSINFO_PARMSA {
  46312.     DWORD_PTR dwCallback;
  46313.     LPSTR lpstrReturn;
  46314.     DWORD dwRetSize;
  46315.     DWORD dwNumber;
  46316.     UINT wDeviceType;
  46317. } MCI_SYSINFO_PARMSA, *PMCI_SYSINFO_PARMSA, * LPMCI_SYSINFO_PARMSA;
  46318. typedef struct tagMCI_SYSINFO_PARMSW {
  46319.     DWORD_PTR dwCallback;
  46320.     LPWSTR lpstrReturn;
  46321.     DWORD dwRetSize;
  46322.     DWORD dwNumber;
  46323.     UINT wDeviceType;
  46324. } MCI_SYSINFO_PARMSW, *PMCI_SYSINFO_PARMSW, * LPMCI_SYSINFO_PARMSW;
  46325.  
  46326.  
  46327.  
  46328.  
  46329.  
  46330. typedef MCI_SYSINFO_PARMSA MCI_SYSINFO_PARMS;
  46331. typedef PMCI_SYSINFO_PARMSA PMCI_SYSINFO_PARMS;
  46332. typedef LPMCI_SYSINFO_PARMSA LPMCI_SYSINFO_PARMS;
  46333. # 644 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46334. typedef struct tagMCI_SET_PARMS {
  46335.     DWORD_PTR dwCallback;
  46336.     DWORD dwTimeFormat;
  46337.     DWORD dwAudio;
  46338. } MCI_SET_PARMS, *PMCI_SET_PARMS, *LPMCI_SET_PARMS;
  46339.  
  46340.  
  46341.  
  46342. typedef struct tagMCI_BREAK_PARMS {
  46343.     DWORD_PTR dwCallback;
  46344.  
  46345.     int nVirtKey;
  46346.     HWND hwndBreak;
  46347.  
  46348.  
  46349.  
  46350.  
  46351.  
  46352.  
  46353. } MCI_BREAK_PARMS, *PMCI_BREAK_PARMS, * LPMCI_BREAK_PARMS;
  46354.  
  46355.  
  46356.  
  46357.  
  46358.  
  46359. typedef struct tagMCI_SAVE_PARMSA {
  46360.     DWORD_PTR dwCallback;
  46361.     LPCSTR lpfilename;
  46362. } MCI_SAVE_PARMSA, *PMCI_SAVE_PARMSA, * LPMCI_SAVE_PARMSA;
  46363. typedef struct tagMCI_SAVE_PARMSW {
  46364.     DWORD_PTR dwCallback;
  46365.     LPCWSTR lpfilename;
  46366. } MCI_SAVE_PARMSW, *PMCI_SAVE_PARMSW, * LPMCI_SAVE_PARMSW;
  46367.  
  46368.  
  46369.  
  46370.  
  46371.  
  46372. typedef MCI_SAVE_PARMSA MCI_SAVE_PARMS;
  46373. typedef PMCI_SAVE_PARMSA PMCI_SAVE_PARMS;
  46374. typedef LPMCI_SAVE_PARMSA LPMCI_SAVE_PARMS;
  46375. # 698 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46376. typedef struct tagMCI_LOAD_PARMSA {
  46377.     DWORD_PTR dwCallback;
  46378.     LPCSTR lpfilename;
  46379. } MCI_LOAD_PARMSA, *PMCI_LOAD_PARMSA, * LPMCI_LOAD_PARMSA;
  46380. typedef struct tagMCI_LOAD_PARMSW {
  46381.     DWORD_PTR dwCallback;
  46382.     LPCWSTR lpfilename;
  46383. } MCI_LOAD_PARMSW, *PMCI_LOAD_PARMSW, * LPMCI_LOAD_PARMSW;
  46384.  
  46385.  
  46386.  
  46387.  
  46388.  
  46389. typedef MCI_LOAD_PARMSA MCI_LOAD_PARMS;
  46390. typedef PMCI_LOAD_PARMSA PMCI_LOAD_PARMS;
  46391. typedef LPMCI_LOAD_PARMSA LPMCI_LOAD_PARMS;
  46392. # 725 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46393. typedef struct tagMCI_RECORD_PARMS {
  46394.     DWORD_PTR dwCallback;
  46395.     DWORD dwFrom;
  46396.     DWORD dwTo;
  46397. } MCI_RECORD_PARMS, *LPMCI_RECORD_PARMS;
  46398. # 784 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46399. typedef struct tagMCI_VD_PLAY_PARMS {
  46400.     DWORD_PTR dwCallback;
  46401.     DWORD dwFrom;
  46402.     DWORD dwTo;
  46403.     DWORD dwSpeed;
  46404. } MCI_VD_PLAY_PARMS, *PMCI_VD_PLAY_PARMS, *LPMCI_VD_PLAY_PARMS;
  46405.  
  46406.  
  46407.  
  46408. typedef struct tagMCI_VD_STEP_PARMS {
  46409.     DWORD_PTR dwCallback;
  46410.     DWORD dwFrames;
  46411. } MCI_VD_STEP_PARMS, *PMCI_VD_STEP_PARMS, *LPMCI_VD_STEP_PARMS;
  46412.  
  46413.  
  46414.  
  46415.  
  46416.  
  46417. typedef struct tagMCI_VD_ESCAPE_PARMSA {
  46418.     DWORD_PTR dwCallback;
  46419.     LPCSTR lpstrCommand;
  46420. } MCI_VD_ESCAPE_PARMSA, *PMCI_VD_ESCAPE_PARMSA, *LPMCI_VD_ESCAPE_PARMSA;
  46421. typedef struct tagMCI_VD_ESCAPE_PARMSW {
  46422.     DWORD_PTR dwCallback;
  46423.     LPCWSTR lpstrCommand;
  46424. } MCI_VD_ESCAPE_PARMSW, *PMCI_VD_ESCAPE_PARMSW, *LPMCI_VD_ESCAPE_PARMSW;
  46425.  
  46426.  
  46427.  
  46428.  
  46429.  
  46430. typedef MCI_VD_ESCAPE_PARMSA MCI_VD_ESCAPE_PARMS;
  46431. typedef PMCI_VD_ESCAPE_PARMSA PMCI_VD_ESCAPE_PARMS;
  46432. typedef LPMCI_VD_ESCAPE_PARMSA LPMCI_VD_ESCAPE_PARMS;
  46433. # 878 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46434. typedef struct tagMCI_WAVE_OPEN_PARMSA {
  46435.     DWORD_PTR dwCallback;
  46436.     MCIDEVICEID wDeviceID;
  46437.     LPCSTR lpstrDeviceType;
  46438.     LPCSTR lpstrElementName;
  46439.     LPCSTR lpstrAlias;
  46440.     DWORD dwBufferSeconds;
  46441. } MCI_WAVE_OPEN_PARMSA, *PMCI_WAVE_OPEN_PARMSA, *LPMCI_WAVE_OPEN_PARMSA;
  46442. typedef struct tagMCI_WAVE_OPEN_PARMSW {
  46443.     DWORD_PTR dwCallback;
  46444.     MCIDEVICEID wDeviceID;
  46445.     LPCWSTR lpstrDeviceType;
  46446.     LPCWSTR lpstrElementName;
  46447.     LPCWSTR lpstrAlias;
  46448.     DWORD dwBufferSeconds;
  46449. } MCI_WAVE_OPEN_PARMSW, *PMCI_WAVE_OPEN_PARMSW, *LPMCI_WAVE_OPEN_PARMSW;
  46450.  
  46451.  
  46452.  
  46453.  
  46454.  
  46455. typedef MCI_WAVE_OPEN_PARMSA MCI_WAVE_OPEN_PARMS;
  46456. typedef PMCI_WAVE_OPEN_PARMSA PMCI_WAVE_OPEN_PARMS;
  46457. typedef LPMCI_WAVE_OPEN_PARMSA LPMCI_WAVE_OPEN_PARMS;
  46458. # 918 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46459. typedef struct tagMCI_WAVE_DELETE_PARMS {
  46460.     DWORD_PTR dwCallback;
  46461.     DWORD dwFrom;
  46462.     DWORD dwTo;
  46463. } MCI_WAVE_DELETE_PARMS, *PMCI_WAVE_DELETE_PARMS, *LPMCI_WAVE_DELETE_PARMS;
  46464.  
  46465.  
  46466.  
  46467. typedef struct tagMCI_WAVE_SET_PARMS {
  46468.     DWORD_PTR dwCallback;
  46469.     DWORD dwTimeFormat;
  46470.     DWORD dwAudio;
  46471.  
  46472.     UINT wInput;
  46473.     UINT wOutput;
  46474.  
  46475.  
  46476.  
  46477.  
  46478.  
  46479.  
  46480.     WORD wFormatTag;
  46481.     WORD wReserved2;
  46482.     WORD nChannels;
  46483.     WORD wReserved3;
  46484.     DWORD nSamplesPerSec;
  46485.     DWORD nAvgBytesPerSec;
  46486.     WORD nBlockAlign;
  46487.     WORD wReserved4;
  46488.     WORD wBitsPerSample;
  46489.     WORD wReserved5;
  46490. } MCI_WAVE_SET_PARMS, *PMCI_WAVE_SET_PARMS, * LPMCI_WAVE_SET_PARMS;
  46491. # 989 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46492. typedef struct tagMCI_SEQ_SET_PARMS {
  46493.     DWORD_PTR dwCallback;
  46494.     DWORD dwTimeFormat;
  46495.     DWORD dwAudio;
  46496.     DWORD dwTempo;
  46497.     DWORD dwPort;
  46498.     DWORD dwSlave;
  46499.     DWORD dwMaster;
  46500.     DWORD dwOffset;
  46501. } MCI_SEQ_SET_PARMS, *PMCI_SEQ_SET_PARMS, * LPMCI_SEQ_SET_PARMS;
  46502. # 1068 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46503. typedef struct tagMCI_ANIM_OPEN_PARMSA {
  46504.     DWORD_PTR dwCallback;
  46505.     MCIDEVICEID wDeviceID;
  46506.     LPCSTR lpstrDeviceType;
  46507.     LPCSTR lpstrElementName;
  46508.     LPCSTR lpstrAlias;
  46509.     DWORD dwStyle;
  46510.     HWND hWndParent;
  46511. } MCI_ANIM_OPEN_PARMSA, *PMCI_ANIM_OPEN_PARMSA, *LPMCI_ANIM_OPEN_PARMSA;
  46512. typedef struct tagMCI_ANIM_OPEN_PARMSW {
  46513.     DWORD_PTR dwCallback;
  46514.     MCIDEVICEID wDeviceID;
  46515.     LPCWSTR lpstrDeviceType;
  46516.     LPCWSTR lpstrElementName;
  46517.     LPCWSTR lpstrAlias;
  46518.     DWORD dwStyle;
  46519.     HWND hWndParent;
  46520. } MCI_ANIM_OPEN_PARMSW, *PMCI_ANIM_OPEN_PARMSW, *LPMCI_ANIM_OPEN_PARMSW;
  46521.  
  46522.  
  46523.  
  46524.  
  46525.  
  46526. typedef MCI_ANIM_OPEN_PARMSA MCI_ANIM_OPEN_PARMS;
  46527. typedef PMCI_ANIM_OPEN_PARMSA PMCI_ANIM_OPEN_PARMS;
  46528. typedef LPMCI_ANIM_OPEN_PARMSA LPMCI_ANIM_OPEN_PARMS;
  46529. # 1112 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46530. typedef struct tagMCI_ANIM_PLAY_PARMS {
  46531.     DWORD_PTR dwCallback;
  46532.     DWORD dwFrom;
  46533.     DWORD dwTo;
  46534.     DWORD dwSpeed;
  46535. } MCI_ANIM_PLAY_PARMS, *PMCI_ANIM_PLAY_PARMS, *LPMCI_ANIM_PLAY_PARMS;
  46536.  
  46537.  
  46538.  
  46539. typedef struct tagMCI_ANIM_STEP_PARMS {
  46540.     DWORD_PTR dwCallback;
  46541.     DWORD dwFrames;
  46542. } MCI_ANIM_STEP_PARMS, *PMCI_ANIM_STEP_PARMS, *LPMCI_ANIM_STEP_PARMS;
  46543.  
  46544.  
  46545.  
  46546.  
  46547.  
  46548. typedef struct tagMCI_ANIM_WINDOW_PARMSA {
  46549.     DWORD_PTR dwCallback;
  46550.     HWND hWnd;
  46551.     UINT nCmdShow;
  46552.     LPCSTR lpstrText;
  46553. } MCI_ANIM_WINDOW_PARMSA, *PMCI_ANIM_WINDOW_PARMSA, * LPMCI_ANIM_WINDOW_PARMSA;
  46554. typedef struct tagMCI_ANIM_WINDOW_PARMSW {
  46555.     DWORD_PTR dwCallback;
  46556.     HWND hWnd;
  46557.     UINT nCmdShow;
  46558.     LPCWSTR lpstrText;
  46559. } MCI_ANIM_WINDOW_PARMSW, *PMCI_ANIM_WINDOW_PARMSW, * LPMCI_ANIM_WINDOW_PARMSW;
  46560.  
  46561.  
  46562.  
  46563.  
  46564.  
  46565. typedef MCI_ANIM_WINDOW_PARMSA MCI_ANIM_WINDOW_PARMS;
  46566. typedef PMCI_ANIM_WINDOW_PARMSA PMCI_ANIM_WINDOW_PARMS;
  46567. typedef LPMCI_ANIM_WINDOW_PARMSA LPMCI_ANIM_WINDOW_PARMS;
  46568. # 1165 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46569. typedef struct tagMCI_ANIM_RECT_PARMS {
  46570.     DWORD_PTR dwCallback;
  46571.  
  46572.  
  46573.  
  46574.  
  46575.     RECT rc;
  46576.  
  46577. } MCI_ANIM_RECT_PARMS;
  46578. typedef MCI_ANIM_RECT_PARMS * PMCI_ANIM_RECT_PARMS;
  46579. typedef MCI_ANIM_RECT_PARMS * LPMCI_ANIM_RECT_PARMS;
  46580.  
  46581.  
  46582.  
  46583. typedef struct tagMCI_ANIM_UPDATE_PARMS {
  46584.     DWORD_PTR dwCallback;
  46585.     RECT rc;
  46586.     HDC hDC;
  46587. } MCI_ANIM_UPDATE_PARMS, *PMCI_ANIM_UPDATE_PARMS, * LPMCI_ANIM_UPDATE_PARMS;
  46588. # 1230 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46589. typedef struct tagMCI_OVLY_OPEN_PARMSA {
  46590.     DWORD_PTR dwCallback;
  46591.     MCIDEVICEID wDeviceID;
  46592.     LPCSTR lpstrDeviceType;
  46593.     LPCSTR lpstrElementName;
  46594.     LPCSTR lpstrAlias;
  46595.     DWORD dwStyle;
  46596.     HWND hWndParent;
  46597. } MCI_OVLY_OPEN_PARMSA, *PMCI_OVLY_OPEN_PARMSA, *LPMCI_OVLY_OPEN_PARMSA;
  46598. typedef struct tagMCI_OVLY_OPEN_PARMSW {
  46599.     DWORD_PTR dwCallback;
  46600.     MCIDEVICEID wDeviceID;
  46601.     LPCWSTR lpstrDeviceType;
  46602.     LPCWSTR lpstrElementName;
  46603.     LPCWSTR lpstrAlias;
  46604.     DWORD dwStyle;
  46605.     HWND hWndParent;
  46606. } MCI_OVLY_OPEN_PARMSW, *PMCI_OVLY_OPEN_PARMSW, *LPMCI_OVLY_OPEN_PARMSW;
  46607.  
  46608.  
  46609.  
  46610.  
  46611.  
  46612. typedef MCI_OVLY_OPEN_PARMSA MCI_OVLY_OPEN_PARMS;
  46613. typedef PMCI_OVLY_OPEN_PARMSA PMCI_OVLY_OPEN_PARMS;
  46614. typedef LPMCI_OVLY_OPEN_PARMSA LPMCI_OVLY_OPEN_PARMS;
  46615. # 1276 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46616. typedef struct tagMCI_OVLY_WINDOW_PARMSA {
  46617.     DWORD_PTR dwCallback;
  46618.     HWND hWnd;
  46619.     UINT nCmdShow;
  46620.     LPCSTR lpstrText;
  46621. } MCI_OVLY_WINDOW_PARMSA, *PMCI_OVLY_WINDOW_PARMSA, * LPMCI_OVLY_WINDOW_PARMSA;
  46622. typedef struct tagMCI_OVLY_WINDOW_PARMSW {
  46623.     DWORD_PTR dwCallback;
  46624.     HWND hWnd;
  46625.     UINT nCmdShow;
  46626.     LPCWSTR lpstrText;
  46627. } MCI_OVLY_WINDOW_PARMSW, *PMCI_OVLY_WINDOW_PARMSW, * LPMCI_OVLY_WINDOW_PARMSW;
  46628.  
  46629.  
  46630.  
  46631.  
  46632.  
  46633. typedef MCI_OVLY_WINDOW_PARMSA MCI_OVLY_WINDOW_PARMS;
  46634. typedef PMCI_OVLY_WINDOW_PARMSA PMCI_OVLY_WINDOW_PARMS;
  46635. typedef LPMCI_OVLY_WINDOW_PARMSA LPMCI_OVLY_WINDOW_PARMS;
  46636. # 1310 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46637. typedef struct tagMCI_OVLY_RECT_PARMS {
  46638.     DWORD_PTR dwCallback;
  46639.  
  46640.  
  46641.  
  46642.  
  46643.     RECT rc;
  46644.  
  46645. } MCI_OVLY_RECT_PARMS, *PMCI_OVLY_RECT_PARMS, * LPMCI_OVLY_RECT_PARMS;
  46646.  
  46647.  
  46648.  
  46649.  
  46650.  
  46651. typedef struct tagMCI_OVLY_SAVE_PARMSA {
  46652.     DWORD_PTR dwCallback;
  46653.     LPCSTR lpfilename;
  46654.     RECT rc;
  46655. } MCI_OVLY_SAVE_PARMSA, *PMCI_OVLY_SAVE_PARMSA, * LPMCI_OVLY_SAVE_PARMSA;
  46656. typedef struct tagMCI_OVLY_SAVE_PARMSW {
  46657.     DWORD_PTR dwCallback;
  46658.     LPCWSTR lpfilename;
  46659.     RECT rc;
  46660. } MCI_OVLY_SAVE_PARMSW, *PMCI_OVLY_SAVE_PARMSW, * LPMCI_OVLY_SAVE_PARMSW;
  46661.  
  46662.  
  46663.  
  46664.  
  46665.  
  46666. typedef MCI_OVLY_SAVE_PARMSA MCI_OVLY_SAVE_PARMS;
  46667. typedef PMCI_OVLY_SAVE_PARMSA PMCI_OVLY_SAVE_PARMS;
  46668. typedef LPMCI_OVLY_SAVE_PARMSA LPMCI_OVLY_SAVE_PARMS;
  46669. # 1355 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46670. typedef struct tagMCI_OVLY_LOAD_PARMSA {
  46671.     DWORD_PTR dwCallback;
  46672.     LPCSTR lpfilename;
  46673.     RECT rc;
  46674. } MCI_OVLY_LOAD_PARMSA, *PMCI_OVLY_LOAD_PARMSA, * LPMCI_OVLY_LOAD_PARMSA;
  46675. typedef struct tagMCI_OVLY_LOAD_PARMSW {
  46676.     DWORD_PTR dwCallback;
  46677.     LPCWSTR lpfilename;
  46678.     RECT rc;
  46679. } MCI_OVLY_LOAD_PARMSW, *PMCI_OVLY_LOAD_PARMSW, * LPMCI_OVLY_LOAD_PARMSW;
  46680.  
  46681.  
  46682.  
  46683.  
  46684.  
  46685. typedef MCI_OVLY_LOAD_PARMSA MCI_OVLY_LOAD_PARMS;
  46686. typedef PMCI_OVLY_LOAD_PARMSA PMCI_OVLY_LOAD_PARMS;
  46687. typedef LPMCI_OVLY_LOAD_PARMSA LPMCI_OVLY_LOAD_PARMS;
  46688. # 1385 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mciapi.h" 3
  46689. DWORD_PTR
  46690. __stdcall
  46691. mciGetDriverData(
  46692.     MCIDEVICEID wDeviceID
  46693.     );
  46694.  
  46695. UINT
  46696. __stdcall
  46697. mciLoadCommandResource(
  46698.     HANDLE hInstance,
  46699.     LPCWSTR lpResName,
  46700.     UINT wType
  46701.     );
  46702.  
  46703. BOOL
  46704. __stdcall
  46705. mciSetDriverData(
  46706.     MCIDEVICEID wDeviceID,
  46707.     DWORD_PTR dwData
  46708.     );
  46709.  
  46710. UINT
  46711. __stdcall
  46712. mciDriverYield(
  46713.     MCIDEVICEID wDeviceID
  46714.     );
  46715.  
  46716. BOOL
  46717. __stdcall
  46718. mciDriverNotify(
  46719.     HANDLE hwndCallback,
  46720.     MCIDEVICEID wDeviceID,
  46721.     UINT uStatus
  46722.     );
  46723.  
  46724. BOOL
  46725. __stdcall
  46726. mciFreeCommandResource(
  46727.     UINT wTable
  46728.     );
  46729.  
  46730.  
  46731.  
  46732. #pragma endregion
  46733.  
  46734.  
  46735.  
  46736.  
  46737.  
  46738.  
  46739.  
  46740.  
  46741. #pragma option pop
  46742. # 62 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  46743.  
  46744.  
  46745.  
  46746.  
  46747.  
  46748. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 1 3
  46749. #pragma option push -b -a8 -pc -A- -w-pun
  46750. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 3
  46751. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 1 3
  46752. #pragma option push -b -a8 -pc -A- -w-pun
  46753. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  46754. #pragma option pop
  46755. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 2 3
  46756.  
  46757.  
  46758.  
  46759.  
  46760.  
  46761.  
  46762. #pragma region Desktop Family
  46763. # 40 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 3
  46764. typedef struct DRVCONFIGINFOEX {
  46765.     DWORD dwDCISize;
  46766.     LPCWSTR lpszDCISectionName;
  46767.     LPCWSTR lpszDCIAliasName;
  46768.     DWORD dnDevNode;
  46769. } DRVCONFIGINFOEX, *PDRVCONFIGINFOEX, *NPDRVCONFIGINFOEX, *LPDRVCONFIGINFOEX;
  46770. # 78 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 3
  46771. typedef struct tagDRVCONFIGINFO {
  46772.     DWORD dwDCISize;
  46773.     LPCWSTR lpszDCISectionName;
  46774.     LPCWSTR lpszDCIAliasName;
  46775. } DRVCONFIGINFO, *PDRVCONFIGINFO, *NPDRVCONFIGINFO, *LPDRVCONFIGINFO;
  46776. # 99 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 3
  46777. typedef LRESULT (__stdcall* DRIVERPROC)(DWORD_PTR, HDRVR, UINT, LPARAM, LPARAM);
  46778.  
  46779. __declspec(dllimport)
  46780. LRESULT
  46781. __stdcall
  46782. CloseDriver(
  46783.          HDRVR hDriver,
  46784.          LPARAM lParam1,
  46785.          LPARAM lParam2
  46786.     );
  46787.  
  46788. __declspec(dllimport)
  46789. HDRVR
  46790. __stdcall
  46791. OpenDriver(
  46792.          LPCWSTR szDriverName,
  46793.          LPCWSTR szSectionName,
  46794.          LPARAM lParam2
  46795.     );
  46796.  
  46797. __declspec(dllimport)
  46798. LRESULT
  46799. __stdcall
  46800. SendDriverMessage(
  46801.          HDRVR hDriver,
  46802.          UINT message,
  46803.          LPARAM lParam1,
  46804.          LPARAM lParam2
  46805.     );
  46806.  
  46807. __declspec(dllimport)
  46808. HMODULE
  46809. __stdcall
  46810. DrvGetModuleHandle(
  46811.          HDRVR hDriver
  46812.     );
  46813.  
  46814. __declspec(dllimport)
  46815. HMODULE
  46816. __stdcall
  46817. GetDriverModuleHandle(
  46818.          HDRVR hDriver
  46819.     );
  46820.  
  46821. __declspec(dllimport)
  46822. LRESULT
  46823. __stdcall
  46824. DefDriverProc(
  46825.          DWORD_PTR dwDriverIdentifier,
  46826.          HDRVR hdrvr,
  46827.          UINT uMsg,
  46828.          LPARAM lParam1,
  46829.          LPARAM lParam2
  46830.     );
  46831. # 181 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 3
  46832. BOOL
  46833. __stdcall
  46834. DriverCallback(
  46835.     DWORD_PTR dwCallback,
  46836.     DWORD dwFlags,
  46837.     HDRVR hDevice,
  46838.     DWORD dwMsg,
  46839.     DWORD_PTR dwUser,
  46840.     DWORD_PTR dwParam1,
  46841.     DWORD_PTR dwParam2
  46842.     );
  46843.  
  46844.  
  46845.  
  46846.  
  46847.  
  46848.  
  46849.                                                                              LONG
  46850. __stdcall
  46851. sndOpenSound(
  46852.          LPCWSTR EventName,
  46853.          LPCWSTR AppName,
  46854.          INT32 Flags,
  46855.              PHANDLE FileHandle
  46856.     );
  46857. # 220 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 3
  46858. typedef DWORD (__stdcall *DRIVERMSGPROC)(DWORD, DWORD, DWORD_PTR, DWORD_PTR, DWORD_PTR);
  46859.  
  46860. UINT
  46861. __stdcall
  46862. mmDrvInstall(
  46863.     HDRVR hDriver,
  46864.     LPCWSTR wszDrvEntry,
  46865.     DRIVERMSGPROC drvMessage,
  46866.     UINT wFlags
  46867.     );
  46868. # 265 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 3
  46869. typedef DWORD FOURCC;
  46870. typedef char * HPSTR;
  46871. struct HMMIO__{int unused;}; typedef struct HMMIO__ *HMMIO;
  46872. typedef LRESULT (__stdcall MMIOPROC)(LPSTR lpmmioinfo, UINT uMsg,
  46873.             LPARAM lParam1, LPARAM lParam2);
  46874. typedef MMIOPROC *LPMMIOPROC;
  46875.  
  46876.  
  46877.  
  46878. typedef struct _MMIOINFO
  46879. {
  46880.  
  46881.         DWORD dwFlags;
  46882.         FOURCC fccIOProc;
  46883.         LPMMIOPROC pIOProc;
  46884.         UINT wErrorRet;
  46885.         HTASK htask;
  46886.  
  46887.  
  46888.         LONG cchBuffer;
  46889.         HPSTR pchBuffer;
  46890.         HPSTR pchNext;
  46891.         HPSTR pchEndRead;
  46892.         HPSTR pchEndWrite;
  46893.         LONG lBufOffset;
  46894.  
  46895.  
  46896.         LONG lDiskOffset;
  46897.         DWORD adwInfo[3];
  46898.  
  46899.  
  46900.         DWORD dwReserved1;
  46901.         DWORD dwReserved2;
  46902.         HMMIO hmmio;
  46903. } MMIOINFO, *PMMIOINFO, *NPMMIOINFO, *LPMMIOINFO;
  46904. typedef const MMIOINFO *LPCMMIOINFO;
  46905.  
  46906.  
  46907. typedef struct _MMCKINFO
  46908. {
  46909.         FOURCC ckid;
  46910.         DWORD cksize;
  46911.         FOURCC fccType;
  46912.         DWORD dwDataOffset;
  46913.         DWORD dwFlags;
  46914. } MMCKINFO, *PMMCKINFO, *NPMMCKINFO, *LPMMCKINFO;
  46915. typedef const MMCKINFO *LPCMMCKINFO;
  46916. # 394 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 3
  46917. __declspec(dllimport)
  46918. FOURCC
  46919. __stdcall
  46920. mmioStringToFOURCCA(
  46921.     LPCSTR sz,
  46922.          UINT uFlags
  46923.     );
  46924.  
  46925. __declspec(dllimport)
  46926. FOURCC
  46927. __stdcall
  46928. mmioStringToFOURCCW(
  46929.     LPCWSTR sz,
  46930.          UINT uFlags
  46931.     );
  46932.  
  46933.  
  46934.  
  46935.  
  46936.  
  46937.  
  46938. __declspec(dllimport)
  46939. LPMMIOPROC
  46940. __stdcall
  46941. mmioInstallIOProcA(
  46942.          FOURCC fccIOProc,
  46943.              LPMMIOPROC pIOProc,
  46944.          DWORD dwFlags
  46945.     );
  46946.  
  46947. __declspec(dllimport)
  46948. LPMMIOPROC
  46949. __stdcall
  46950. mmioInstallIOProcW(
  46951.          FOURCC fccIOProc,
  46952.              LPMMIOPROC pIOProc,
  46953.          DWORD dwFlags
  46954.     );
  46955.  
  46956.  
  46957.  
  46958.  
  46959.  
  46960.  
  46961. __declspec(dllimport)
  46962. HMMIO
  46963. __stdcall
  46964. mmioOpenA(
  46965.                                    LPSTR pszFileName,
  46966.                 LPMMIOINFO pmmioinfo,
  46967.          DWORD fdwOpen
  46968.     );
  46969.  
  46970. __declspec(dllimport)
  46971. HMMIO
  46972. __stdcall
  46973. mmioOpenW(
  46974.                                    LPWSTR pszFileName,
  46975.                 LPMMIOINFO pmmioinfo,
  46976.          DWORD fdwOpen
  46977.     );
  46978.  
  46979.  
  46980.  
  46981.  
  46982.  
  46983.  
  46984. __declspec(dllimport)
  46985. MMRESULT
  46986. __stdcall
  46987. mmioRenameA(
  46988.          LPCSTR pszFileName,
  46989.          LPCSTR pszNewFileName,
  46990.              LPCMMIOINFO pmmioinfo,
  46991.          DWORD fdwRename
  46992.     );
  46993.  
  46994. __declspec(dllimport)
  46995. MMRESULT
  46996. __stdcall
  46997. mmioRenameW(
  46998.          LPCWSTR pszFileName,
  46999.          LPCWSTR pszNewFileName,
  47000.              LPCMMIOINFO pmmioinfo,
  47001.          DWORD fdwRename
  47002.     );
  47003. # 495 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi.h" 3
  47004. __declspec(dllimport)
  47005. MMRESULT
  47006. __stdcall
  47007. mmioClose(
  47008.          HMMIO hmmio,
  47009.          UINT fuClose
  47010.     );
  47011.  
  47012. __declspec(dllimport)
  47013. LONG
  47014. __stdcall
  47015. mmioRead(
  47016.          HMMIO hmmio,
  47017.                             HPSTR pch,
  47018.          LONG cch
  47019.     );
  47020.  
  47021. __declspec(dllimport)
  47022. LONG
  47023. __stdcall
  47024. mmioWrite(
  47025.          HMMIO hmmio,
  47026.                           const char * pch,
  47027.          LONG cch
  47028.     );
  47029.  
  47030. __declspec(dllimport)
  47031. LONG
  47032. __stdcall
  47033. mmioSeek(
  47034.          HMMIO hmmio,
  47035.          LONG lOffset,
  47036.          int iOrigin
  47037.     );
  47038.  
  47039. __declspec(dllimport)
  47040. MMRESULT
  47041. __stdcall
  47042. mmioGetInfo(
  47043.          HMMIO hmmio,
  47044.           LPMMIOINFO pmmioinfo,
  47045.          UINT fuInfo
  47046.     );
  47047.  
  47048. __declspec(dllimport)
  47049. MMRESULT
  47050. __stdcall
  47051. mmioSetInfo(
  47052.          HMMIO hmmio,
  47053.          LPCMMIOINFO pmmioinfo,
  47054.          UINT fuInfo
  47055.     );
  47056.  
  47057. __declspec(dllimport)
  47058. MMRESULT
  47059. __stdcall
  47060. mmioSetBuffer(
  47061.          HMMIO hmmio,
  47062.                                 LPSTR pchBuffer,
  47063.          LONG cchBuffer,
  47064.          UINT fuBuffer
  47065.     );
  47066.  
  47067. __declspec(dllimport)
  47068. MMRESULT
  47069. __stdcall
  47070. mmioFlush(
  47071.          HMMIO hmmio,
  47072.          UINT fuFlush
  47073.     );
  47074.  
  47075. __declspec(dllimport)
  47076. MMRESULT
  47077. __stdcall
  47078. mmioAdvance(
  47079.          HMMIO hmmio,
  47080.              LPMMIOINFO pmmioinfo,
  47081.          UINT fuAdvance
  47082.     );
  47083.  
  47084. __declspec(dllimport)
  47085. LRESULT
  47086. __stdcall
  47087. mmioSendMessage(
  47088.          HMMIO hmmio,
  47089.          UINT uMsg,
  47090.              LPARAM lParam1,
  47091.              LPARAM lParam2
  47092.     );
  47093.  
  47094. __declspec(dllimport)
  47095. MMRESULT
  47096. __stdcall
  47097. mmioDescend(
  47098.          HMMIO hmmio,
  47099.             LPMMCKINFO pmmcki,
  47100.              const MMCKINFO * pmmckiParent,
  47101.          UINT fuDescend
  47102.     );
  47103.  
  47104. __declspec(dllimport)
  47105. MMRESULT
  47106. __stdcall
  47107. mmioAscend(
  47108.          HMMIO hmmio,
  47109.          LPMMCKINFO pmmcki,
  47110.          UINT fuAscend
  47111.     );
  47112.  
  47113. __declspec(dllimport)
  47114. MMRESULT
  47115. __stdcall
  47116. mmioCreateChunk(
  47117.          HMMIO hmmio,
  47118.          LPMMCKINFO pmmcki,
  47119.          UINT fuCreate
  47120.     );
  47121.  
  47122.  
  47123.  
  47124.  
  47125.  
  47126. #pragma endregion
  47127.  
  47128.  
  47129.  
  47130.  
  47131.  
  47132.  
  47133.  
  47134.  
  47135. #pragma option pop
  47136. # 67 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  47137.  
  47138. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi2.h" 1 3
  47139. #pragma option push -b -a8 -pc -A- -w-pun
  47140. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi2.h" 3
  47141. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 1 3
  47142. #pragma option push -b -a8 -pc -A- -w-pun
  47143. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  47144. #pragma option pop
  47145. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi2.h" 2 3
  47146.  
  47147.  
  47148.  
  47149.  
  47150.  
  47151.  
  47152. #pragma region Desktop Family
  47153.  
  47154.  
  47155. typedef void (__stdcall TIMECALLBACK)(UINT uTimerID, UINT uMsg, DWORD_PTR dwUser, DWORD_PTR dw1, DWORD_PTR dw2);
  47156. typedef TIMECALLBACK *LPTIMECALLBACK;
  47157. # 50 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmiscapi2.h" 3
  47158. __declspec(dllimport)
  47159. MMRESULT
  47160. __stdcall
  47161. timeSetEvent(
  47162.          UINT uDelay,
  47163.          UINT uResolution,
  47164.          LPTIMECALLBACK fptc,
  47165.          DWORD_PTR dwUser,
  47166.          UINT fuEvent
  47167.     );
  47168.  
  47169. __declspec(dllimport)
  47170. MMRESULT
  47171. __stdcall
  47172. timeKillEvent(
  47173.          UINT uTimerID
  47174.     );
  47175.  
  47176.  
  47177.  
  47178. #pragma endregion
  47179.  
  47180.  
  47181.  
  47182.  
  47183.  
  47184.  
  47185.  
  47186.  
  47187. #pragma option pop
  47188. # 68 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  47189.  
  47190.  
  47191.  
  47192.  
  47193. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\playsoundapi.h" 1 3
  47194. #pragma option push -b -a8 -pc -A- -w-pun
  47195. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\playsoundapi.h" 3
  47196. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 1 3
  47197. #pragma option push -b -a8 -pc -A- -w-pun
  47198. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  47199. #pragma option pop
  47200. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\playsoundapi.h" 2 3
  47201.  
  47202.  
  47203.  
  47204.  
  47205.  
  47206.  
  47207. #pragma region Desktop Family
  47208. # 39 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\playsoundapi.h" 3
  47209. __declspec(dllimport)
  47210. BOOL
  47211. __stdcall
  47212. sndPlaySoundA(
  47213.              LPCSTR pszSound,
  47214.          UINT fuSound
  47215.     );
  47216.  
  47217. __declspec(dllimport)
  47218. BOOL
  47219. __stdcall
  47220. sndPlaySoundW(
  47221.              LPCWSTR pszSound,
  47222.          UINT fuSound
  47223.     );
  47224. # 103 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\playsoundapi.h" 3
  47225. __declspec(dllimport)
  47226. BOOL
  47227. __stdcall
  47228. PlaySoundA(
  47229.              LPCSTR pszSound,
  47230.              HMODULE hmod,
  47231.          DWORD fdwSound
  47232.     );
  47233.  
  47234. __declspec(dllimport)
  47235. BOOL
  47236. __stdcall
  47237. PlaySoundW(
  47238.              LPCWSTR pszSound,
  47239.              HMODULE hmod,
  47240.          DWORD fdwSound
  47241.     );
  47242. # 135 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\playsoundapi.h" 3
  47243. #pragma endregion
  47244.  
  47245.  
  47246.  
  47247.  
  47248.  
  47249.  
  47250.  
  47251.  
  47252. #pragma option pop
  47253. # 72 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  47254.  
  47255.  
  47256. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 1 3
  47257. #pragma option push -b -a8 -pc -A- -w-pun
  47258. # 18 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47259. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  47260. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  47261. #pragma warning(disable: 4103)
  47262.  
  47263. #pragma pack(push,1)
  47264. # 18 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 2 3
  47265.  
  47266.  
  47267.  
  47268.  
  47269.  
  47270.  
  47271.  
  47272. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 1 3
  47273. #pragma option push -b -a8 -pc -A- -w-pun
  47274. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  47275. #pragma option pop
  47276. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 2 3
  47277.  
  47278.  
  47279.  
  47280.  
  47281.  
  47282.  
  47283. #pragma region Desktop Family
  47284. # 49 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47285. struct HWAVE__{int unused;}; typedef struct HWAVE__ *HWAVE;
  47286. struct HWAVEIN__{int unused;}; typedef struct HWAVEIN__ *HWAVEIN;
  47287. struct HWAVEOUT__{int unused;}; typedef struct HWAVEOUT__ *HWAVEOUT;
  47288. typedef HWAVEIN *LPHWAVEIN;
  47289. typedef HWAVEOUT *LPHWAVEOUT;
  47290. typedef DRVCALLBACK WAVECALLBACK;
  47291. typedef WAVECALLBACK *LPWAVECALLBACK;
  47292. # 80 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47293. typedef struct wavehdr_tag {
  47294.     LPSTR lpData;
  47295.     DWORD dwBufferLength;
  47296.     DWORD dwBytesRecorded;
  47297.     DWORD_PTR dwUser;
  47298.     DWORD dwFlags;
  47299.     DWORD dwLoops;
  47300.     struct wavehdr_tag *lpNext;
  47301.     DWORD_PTR reserved;
  47302. } WAVEHDR, *PWAVEHDR, *NPWAVEHDR, *LPWAVEHDR;
  47303. # 102 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47304. typedef struct tagWAVEOUTCAPSA {
  47305.     WORD wMid;
  47306.     WORD wPid;
  47307.     MMVERSION vDriverVersion;
  47308.     CHAR szPname[32];
  47309.     DWORD dwFormats;
  47310.     WORD wChannels;
  47311.     WORD wReserved1;
  47312.     DWORD dwSupport;
  47313. } WAVEOUTCAPSA, *PWAVEOUTCAPSA, *NPWAVEOUTCAPSA, *LPWAVEOUTCAPSA;
  47314. typedef struct tagWAVEOUTCAPSW {
  47315.     WORD wMid;
  47316.     WORD wPid;
  47317.     MMVERSION vDriverVersion;
  47318.     WCHAR szPname[32];
  47319.     DWORD dwFormats;
  47320.     WORD wChannels;
  47321.     WORD wReserved1;
  47322.     DWORD dwSupport;
  47323. } WAVEOUTCAPSW, *PWAVEOUTCAPSW, *NPWAVEOUTCAPSW, *LPWAVEOUTCAPSW;
  47324.  
  47325.  
  47326.  
  47327.  
  47328.  
  47329.  
  47330. typedef WAVEOUTCAPSA WAVEOUTCAPS;
  47331. typedef PWAVEOUTCAPSA PWAVEOUTCAPS;
  47332. typedef NPWAVEOUTCAPSA NPWAVEOUTCAPS;
  47333. typedef LPWAVEOUTCAPSA LPWAVEOUTCAPS;
  47334.  
  47335. typedef struct tagWAVEOUTCAPS2A {
  47336.     WORD wMid;
  47337.     WORD wPid;
  47338.     MMVERSION vDriverVersion;
  47339.     CHAR szPname[32];
  47340.     DWORD dwFormats;
  47341.     WORD wChannels;
  47342.     WORD wReserved1;
  47343.     DWORD dwSupport;
  47344.     GUID ManufacturerGuid;
  47345.     GUID ProductGuid;
  47346.     GUID NameGuid;
  47347. } WAVEOUTCAPS2A, *PWAVEOUTCAPS2A, *NPWAVEOUTCAPS2A, *LPWAVEOUTCAPS2A;
  47348. typedef struct tagWAVEOUTCAPS2W {
  47349.     WORD wMid;
  47350.     WORD wPid;
  47351.     MMVERSION vDriverVersion;
  47352.     WCHAR szPname[32];
  47353.     DWORD dwFormats;
  47354.     WORD wChannels;
  47355.     WORD wReserved1;
  47356.     DWORD dwSupport;
  47357.     GUID ManufacturerGuid;
  47358.     GUID ProductGuid;
  47359.     GUID NameGuid;
  47360. } WAVEOUTCAPS2W, *PWAVEOUTCAPS2W, *NPWAVEOUTCAPS2W, *LPWAVEOUTCAPS2W;
  47361.  
  47362.  
  47363.  
  47364.  
  47365.  
  47366.  
  47367. typedef WAVEOUTCAPS2A WAVEOUTCAPS2;
  47368. typedef PWAVEOUTCAPS2A PWAVEOUTCAPS2;
  47369. typedef NPWAVEOUTCAPS2A NPWAVEOUTCAPS2;
  47370. typedef LPWAVEOUTCAPS2A LPWAVEOUTCAPS2;
  47371. # 195 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47372. typedef struct tagWAVEINCAPSA {
  47373.     WORD wMid;
  47374.     WORD wPid;
  47375.     MMVERSION vDriverVersion;
  47376.     CHAR szPname[32];
  47377.     DWORD dwFormats;
  47378.     WORD wChannels;
  47379.     WORD wReserved1;
  47380. } WAVEINCAPSA, *PWAVEINCAPSA, *NPWAVEINCAPSA, *LPWAVEINCAPSA;
  47381. typedef struct tagWAVEINCAPSW {
  47382.     WORD wMid;
  47383.     WORD wPid;
  47384.     MMVERSION vDriverVersion;
  47385.     WCHAR szPname[32];
  47386.     DWORD dwFormats;
  47387.     WORD wChannels;
  47388.     WORD wReserved1;
  47389. } WAVEINCAPSW, *PWAVEINCAPSW, *NPWAVEINCAPSW, *LPWAVEINCAPSW;
  47390.  
  47391.  
  47392.  
  47393.  
  47394.  
  47395.  
  47396. typedef WAVEINCAPSA WAVEINCAPS;
  47397. typedef PWAVEINCAPSA PWAVEINCAPS;
  47398. typedef NPWAVEINCAPSA NPWAVEINCAPS;
  47399. typedef LPWAVEINCAPSA LPWAVEINCAPS;
  47400.  
  47401. typedef struct tagWAVEINCAPS2A {
  47402.     WORD wMid;
  47403.     WORD wPid;
  47404.     MMVERSION vDriverVersion;
  47405.     CHAR szPname[32];
  47406.     DWORD dwFormats;
  47407.     WORD wChannels;
  47408.     WORD wReserved1;
  47409.     GUID ManufacturerGuid;
  47410.     GUID ProductGuid;
  47411.     GUID NameGuid;
  47412. } WAVEINCAPS2A, *PWAVEINCAPS2A, *NPWAVEINCAPS2A, *LPWAVEINCAPS2A;
  47413. typedef struct tagWAVEINCAPS2W {
  47414.     WORD wMid;
  47415.     WORD wPid;
  47416.     MMVERSION vDriverVersion;
  47417.     WCHAR szPname[32];
  47418.     DWORD dwFormats;
  47419.     WORD wChannels;
  47420.     WORD wReserved1;
  47421.     GUID ManufacturerGuid;
  47422.     GUID ProductGuid;
  47423.     GUID NameGuid;
  47424. } WAVEINCAPS2W, *PWAVEINCAPS2W, *NPWAVEINCAPS2W, *LPWAVEINCAPS2W;
  47425.  
  47426.  
  47427.  
  47428.  
  47429.  
  47430.  
  47431. typedef WAVEINCAPS2A WAVEINCAPS2;
  47432. typedef PWAVEINCAPS2A PWAVEINCAPS2;
  47433. typedef NPWAVEINCAPS2A NPWAVEINCAPS2;
  47434. typedef LPWAVEINCAPS2A LPWAVEINCAPS2;
  47435. # 303 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47436. typedef struct waveformat_tag {
  47437.     WORD wFormatTag;
  47438.     WORD nChannels;
  47439.     DWORD nSamplesPerSec;
  47440.     DWORD nAvgBytesPerSec;
  47441.     WORD nBlockAlign;
  47442. } WAVEFORMAT, *PWAVEFORMAT, *NPWAVEFORMAT, *LPWAVEFORMAT;
  47443.  
  47444.  
  47445.  
  47446.  
  47447.  
  47448.  
  47449. typedef struct pcmwaveformat_tag {
  47450.     WAVEFORMAT wf;
  47451.     WORD wBitsPerSample;
  47452. } PCMWAVEFORMAT, *PPCMWAVEFORMAT, *NPPCMWAVEFORMAT, *LPPCMWAVEFORMAT;
  47453. # 329 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47454. typedef struct tWAVEFORMATEX
  47455. {
  47456.     WORD wFormatTag;
  47457.     WORD nChannels;
  47458.     DWORD nSamplesPerSec;
  47459.     DWORD nAvgBytesPerSec;
  47460.     WORD nBlockAlign;
  47461.     WORD wBitsPerSample;
  47462.     WORD cbSize;
  47463.  
  47464. } WAVEFORMATEX, *PWAVEFORMATEX, *NPWAVEFORMATEX, *LPWAVEFORMATEX;
  47465.  
  47466.  
  47467. typedef const WAVEFORMATEX *LPCWAVEFORMATEX;
  47468.  
  47469.  
  47470. __declspec(dllimport)
  47471. UINT
  47472. __stdcall
  47473. waveOutGetNumDevs(
  47474.     void
  47475.     );
  47476.  
  47477.  
  47478.  
  47479.  
  47480. __declspec(dllimport)
  47481. MMRESULT
  47482. __stdcall
  47483. waveOutGetDevCapsA(
  47484.          UINT_PTR uDeviceID,
  47485.           LPWAVEOUTCAPSA pwoc,
  47486.          UINT cbwoc
  47487.     );
  47488.  
  47489. __declspec(dllimport)
  47490. MMRESULT
  47491. __stdcall
  47492. waveOutGetDevCapsW(
  47493.          UINT_PTR uDeviceID,
  47494.           LPWAVEOUTCAPSW pwoc,
  47495.          UINT cbwoc
  47496.     );
  47497. # 384 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47498. __declspec(dllimport)
  47499. MMRESULT
  47500. __stdcall
  47501. waveOutGetVolume(
  47502.              HWAVEOUT hwo,
  47503.           LPDWORD pdwVolume
  47504.     );
  47505.  
  47506. __declspec(dllimport)
  47507. MMRESULT
  47508. __stdcall
  47509. waveOutSetVolume(
  47510.              HWAVEOUT hwo,
  47511.          DWORD dwVolume
  47512.     );
  47513. # 407 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47514. __declspec(dllimport)
  47515. MMRESULT
  47516. __stdcall
  47517. waveOutGetErrorTextA(
  47518.          MMRESULT mmrError,
  47519.                           LPSTR pszText,
  47520.          UINT cchText
  47521.     );
  47522.  
  47523. __declspec(dllimport)
  47524. MMRESULT
  47525. __stdcall
  47526. waveOutGetErrorTextW(
  47527.          MMRESULT mmrError,
  47528.                           LPWSTR pszText,
  47529.          UINT cchText
  47530.     );
  47531. # 435 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47532. __declspec(dllimport)
  47533. MMRESULT
  47534. __stdcall
  47535. waveOutOpen(
  47536.               LPHWAVEOUT phwo,
  47537.          UINT uDeviceID,
  47538.          LPCWAVEFORMATEX pwfx,
  47539.              DWORD_PTR dwCallback,
  47540.              DWORD_PTR dwInstance,
  47541.          DWORD fdwOpen
  47542.     );
  47543.  
  47544.  
  47545. __declspec(dllimport)
  47546. MMRESULT
  47547. __stdcall
  47548. waveOutClose(
  47549.          HWAVEOUT hwo
  47550.     );
  47551.  
  47552. __declspec(dllimport)
  47553. MMRESULT
  47554. __stdcall
  47555. waveOutPrepareHeader(
  47556.          HWAVEOUT hwo,
  47557.                                 LPWAVEHDR pwh,
  47558.          UINT cbwh
  47559.     );
  47560.  
  47561. __declspec(dllimport)
  47562. MMRESULT
  47563. __stdcall
  47564. waveOutUnprepareHeader(
  47565.          HWAVEOUT hwo,
  47566.                                 LPWAVEHDR pwh,
  47567.          UINT cbwh
  47568.     );
  47569.  
  47570. __declspec(dllimport)
  47571. MMRESULT
  47572. __stdcall
  47573. waveOutWrite(
  47574.          HWAVEOUT hwo,
  47575.                                 LPWAVEHDR pwh,
  47576.          UINT cbwh
  47577.     );
  47578.  
  47579. __declspec(dllimport)
  47580. MMRESULT
  47581. __stdcall
  47582. waveOutPause(
  47583.          HWAVEOUT hwo
  47584.     );
  47585.  
  47586. __declspec(dllimport)
  47587. MMRESULT
  47588. __stdcall
  47589. waveOutRestart(
  47590.          HWAVEOUT hwo
  47591.     );
  47592.  
  47593. __declspec(dllimport)
  47594. MMRESULT
  47595. __stdcall
  47596. waveOutReset(
  47597.          HWAVEOUT hwo
  47598.     );
  47599.  
  47600. __declspec(dllimport)
  47601. MMRESULT
  47602. __stdcall
  47603. waveOutBreakLoop(
  47604.          HWAVEOUT hwo
  47605.     );
  47606.  
  47607. __declspec(dllimport)
  47608. MMRESULT
  47609. __stdcall
  47610. waveOutGetPosition(
  47611.          HWAVEOUT hwo,
  47612.                                  LPMMTIME pmmt,
  47613.          UINT cbmmt
  47614.     );
  47615.  
  47616. __declspec(dllimport)
  47617. MMRESULT
  47618. __stdcall
  47619. waveOutGetPitch(
  47620.          HWAVEOUT hwo,
  47621.           LPDWORD pdwPitch
  47622.     );
  47623.  
  47624. __declspec(dllimport)
  47625. MMRESULT
  47626. __stdcall
  47627. waveOutSetPitch(
  47628.          HWAVEOUT hwo,
  47629.          DWORD dwPitch
  47630.     );
  47631.  
  47632. __declspec(dllimport)
  47633. MMRESULT
  47634. __stdcall
  47635. waveOutGetPlaybackRate(
  47636.          HWAVEOUT hwo,
  47637.           LPDWORD pdwRate
  47638.     );
  47639.  
  47640. __declspec(dllimport)
  47641. MMRESULT
  47642. __stdcall
  47643. waveOutSetPlaybackRate(
  47644.          HWAVEOUT hwo,
  47645.          DWORD dwRate
  47646.     );
  47647.  
  47648. __declspec(dllimport)
  47649. MMRESULT
  47650. __stdcall
  47651. waveOutGetID(
  47652.          HWAVEOUT hwo,
  47653.           LPUINT puDeviceID
  47654.     );
  47655.  
  47656.  
  47657.  
  47658.  
  47659. __declspec(dllimport)
  47660. MMRESULT
  47661. __stdcall
  47662. waveOutMessage(
  47663.              HWAVEOUT hwo,
  47664.          UINT uMsg,
  47665.          DWORD_PTR dw1,
  47666.          DWORD_PTR dw2
  47667.     );
  47668.  
  47669.  
  47670.  
  47671.  
  47672.  
  47673.  
  47674. __declspec(dllimport)
  47675. UINT
  47676. __stdcall
  47677. waveInGetNumDevs(
  47678.     void
  47679.     );
  47680.  
  47681.  
  47682.  
  47683.  
  47684. __declspec(dllimport)
  47685. MMRESULT
  47686. __stdcall
  47687. waveInGetDevCapsA(
  47688.          UINT_PTR uDeviceID,
  47689.                               LPWAVEINCAPSA pwic,
  47690.          UINT cbwic
  47691.     );
  47692.  
  47693. __declspec(dllimport)
  47694. MMRESULT
  47695. __stdcall
  47696. waveInGetDevCapsW(
  47697.          UINT_PTR uDeviceID,
  47698.                               LPWAVEINCAPSW pwic,
  47699.          UINT cbwic
  47700.     );
  47701. # 617 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47702. __declspec(dllimport)
  47703. MMRESULT
  47704. __stdcall
  47705. waveInGetErrorTextA(
  47706.          MMRESULT mmrError,
  47707.                           LPSTR pszText,
  47708.          UINT cchText
  47709.     );
  47710.  
  47711. __declspec(dllimport)
  47712. MMRESULT
  47713. __stdcall
  47714. waveInGetErrorTextW(
  47715.          MMRESULT mmrError,
  47716.                           LPWSTR pszText,
  47717.          UINT cchText
  47718.     );
  47719. # 645 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47720. __declspec(dllimport)
  47721. MMRESULT
  47722. __stdcall
  47723. waveInOpen(
  47724.               LPHWAVEIN phwi,
  47725.          UINT uDeviceID,
  47726.          LPCWAVEFORMATEX pwfx,
  47727.              DWORD_PTR dwCallback,
  47728.              DWORD_PTR dwInstance,
  47729.          DWORD fdwOpen
  47730.     );
  47731.  
  47732.  
  47733. __declspec(dllimport)
  47734. MMRESULT
  47735. __stdcall
  47736. waveInClose(
  47737.          HWAVEIN hwi
  47738.     );
  47739.  
  47740. __declspec(dllimport)
  47741. MMRESULT
  47742. __stdcall
  47743. waveInPrepareHeader(
  47744.          HWAVEIN hwi,
  47745.                                 LPWAVEHDR pwh,
  47746.          UINT cbwh
  47747.     );
  47748.  
  47749. __declspec(dllimport)
  47750. MMRESULT
  47751. __stdcall
  47752. waveInUnprepareHeader(
  47753.          HWAVEIN hwi,
  47754.                                 LPWAVEHDR pwh,
  47755.          UINT cbwh
  47756.     );
  47757.  
  47758. __declspec(dllimport)
  47759. MMRESULT
  47760. __stdcall
  47761. waveInAddBuffer(
  47762.          HWAVEIN hwi,
  47763.                                 LPWAVEHDR pwh,
  47764.          UINT cbwh
  47765.     );
  47766.  
  47767. __declspec(dllimport)
  47768. MMRESULT
  47769. __stdcall
  47770. waveInStart(
  47771.          HWAVEIN hwi
  47772.     );
  47773.  
  47774. __declspec(dllimport)
  47775. MMRESULT
  47776. __stdcall
  47777. waveInStop(
  47778.          HWAVEIN hwi
  47779.     );
  47780.  
  47781. __declspec(dllimport)
  47782. MMRESULT
  47783. __stdcall
  47784. waveInReset(
  47785.          HWAVEIN hwi
  47786.     );
  47787.  
  47788. __declspec(dllimport)
  47789. MMRESULT
  47790. __stdcall
  47791. waveInGetPosition(
  47792.          HWAVEIN hwi,
  47793.                                  LPMMTIME pmmt,
  47794.          UINT cbmmt
  47795.     );
  47796.  
  47797. __declspec(dllimport)
  47798. MMRESULT
  47799. __stdcall
  47800. waveInGetID(
  47801.          HWAVEIN hwi,
  47802.          LPUINT puDeviceID
  47803.     );
  47804.  
  47805.  
  47806.  
  47807.  
  47808. __declspec(dllimport)
  47809. MMRESULT
  47810. __stdcall
  47811. waveInMessage(
  47812.              HWAVEIN hwi,
  47813.          UINT uMsg,
  47814.              DWORD_PTR dw1,
  47815.              DWORD_PTR dw2
  47816.     );
  47817. # 769 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47818. struct HMIDI__{int unused;}; typedef struct HMIDI__ *HMIDI;
  47819. struct HMIDIIN__{int unused;}; typedef struct HMIDIIN__ *HMIDIIN;
  47820. struct HMIDIOUT__{int unused;}; typedef struct HMIDIOUT__ *HMIDIOUT;
  47821. struct HMIDISTRM__{int unused;}; typedef struct HMIDISTRM__ *HMIDISTRM;
  47822. typedef HMIDI *LPHMIDI;
  47823. typedef HMIDIIN *LPHMIDIIN;
  47824. typedef HMIDIOUT *LPHMIDIOUT;
  47825. typedef HMIDISTRM *LPHMIDISTRM;
  47826. typedef DRVCALLBACK MIDICALLBACK;
  47827. typedef MIDICALLBACK *LPMIDICALLBACK;
  47828.  
  47829. typedef WORD PATCHARRAY[128];
  47830. typedef WORD *LPPATCHARRAY;
  47831. typedef WORD KEYARRAY[128];
  47832. typedef WORD *LPKEYARRAY;
  47833. # 820 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47834. typedef struct tagMIDIOUTCAPSA {
  47835.     WORD wMid;
  47836.     WORD wPid;
  47837.     MMVERSION vDriverVersion;
  47838.     CHAR szPname[32];
  47839.     WORD wTechnology;
  47840.     WORD wVoices;
  47841.     WORD wNotes;
  47842.     WORD wChannelMask;
  47843.     DWORD dwSupport;
  47844. } MIDIOUTCAPSA, *PMIDIOUTCAPSA, *NPMIDIOUTCAPSA, *LPMIDIOUTCAPSA;
  47845. typedef struct tagMIDIOUTCAPSW {
  47846.     WORD wMid;
  47847.     WORD wPid;
  47848.     MMVERSION vDriverVersion;
  47849.     WCHAR szPname[32];
  47850.     WORD wTechnology;
  47851.     WORD wVoices;
  47852.     WORD wNotes;
  47853.     WORD wChannelMask;
  47854.     DWORD dwSupport;
  47855. } MIDIOUTCAPSW, *PMIDIOUTCAPSW, *NPMIDIOUTCAPSW, *LPMIDIOUTCAPSW;
  47856.  
  47857.  
  47858.  
  47859.  
  47860.  
  47861.  
  47862. typedef MIDIOUTCAPSA MIDIOUTCAPS;
  47863. typedef PMIDIOUTCAPSA PMIDIOUTCAPS;
  47864. typedef NPMIDIOUTCAPSA NPMIDIOUTCAPS;
  47865. typedef LPMIDIOUTCAPSA LPMIDIOUTCAPS;
  47866.  
  47867. typedef struct tagMIDIOUTCAPS2A {
  47868.     WORD wMid;
  47869.     WORD wPid;
  47870.     MMVERSION vDriverVersion;
  47871.     CHAR szPname[32];
  47872.     WORD wTechnology;
  47873.     WORD wVoices;
  47874.     WORD wNotes;
  47875.     WORD wChannelMask;
  47876.     DWORD dwSupport;
  47877.     GUID ManufacturerGuid;
  47878.     GUID ProductGuid;
  47879.     GUID NameGuid;
  47880. } MIDIOUTCAPS2A, *PMIDIOUTCAPS2A, *NPMIDIOUTCAPS2A, *LPMIDIOUTCAPS2A;
  47881. typedef struct tagMIDIOUTCAPS2W {
  47882.     WORD wMid;
  47883.     WORD wPid;
  47884.     MMVERSION vDriverVersion;
  47885.     WCHAR szPname[32];
  47886.     WORD wTechnology;
  47887.     WORD wVoices;
  47888.     WORD wNotes;
  47889.     WORD wChannelMask;
  47890.     DWORD dwSupport;
  47891.     GUID ManufacturerGuid;
  47892.     GUID ProductGuid;
  47893.     GUID NameGuid;
  47894. } MIDIOUTCAPS2W, *PMIDIOUTCAPS2W, *NPMIDIOUTCAPS2W, *LPMIDIOUTCAPS2W;
  47895.  
  47896.  
  47897.  
  47898.  
  47899.  
  47900.  
  47901. typedef MIDIOUTCAPS2A MIDIOUTCAPS2;
  47902. typedef PMIDIOUTCAPS2A PMIDIOUTCAPS2;
  47903. typedef NPMIDIOUTCAPS2A NPMIDIOUTCAPS2;
  47904. typedef LPMIDIOUTCAPS2A LPMIDIOUTCAPS2;
  47905. # 927 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47906. typedef struct tagMIDIINCAPSA {
  47907.     WORD wMid;
  47908.     WORD wPid;
  47909.     MMVERSION vDriverVersion;
  47910.     CHAR szPname[32];
  47911.  
  47912.     DWORD dwSupport;
  47913.  
  47914. } MIDIINCAPSA, *PMIDIINCAPSA, *NPMIDIINCAPSA, *LPMIDIINCAPSA;
  47915. typedef struct tagMIDIINCAPSW {
  47916.     WORD wMid;
  47917.     WORD wPid;
  47918.     MMVERSION vDriverVersion;
  47919.     WCHAR szPname[32];
  47920.  
  47921.     DWORD dwSupport;
  47922.  
  47923. } MIDIINCAPSW, *PMIDIINCAPSW, *NPMIDIINCAPSW, *LPMIDIINCAPSW;
  47924.  
  47925.  
  47926.  
  47927.  
  47928.  
  47929.  
  47930. typedef MIDIINCAPSA MIDIINCAPS;
  47931. typedef PMIDIINCAPSA PMIDIINCAPS;
  47932. typedef NPMIDIINCAPSA NPMIDIINCAPS;
  47933. typedef LPMIDIINCAPSA LPMIDIINCAPS;
  47934.  
  47935. typedef struct tagMIDIINCAPS2A {
  47936.     WORD wMid;
  47937.     WORD wPid;
  47938.     MMVERSION vDriverVersion;
  47939.     CHAR szPname[32];
  47940.  
  47941.     DWORD dwSupport;
  47942.  
  47943.     GUID ManufacturerGuid;
  47944.     GUID ProductGuid;
  47945.     GUID NameGuid;
  47946. } MIDIINCAPS2A, *PMIDIINCAPS2A, *NPMIDIINCAPS2A, *LPMIDIINCAPS2A;
  47947. typedef struct tagMIDIINCAPS2W {
  47948.     WORD wMid;
  47949.     WORD wPid;
  47950.     MMVERSION vDriverVersion;
  47951.     WCHAR szPname[32];
  47952.  
  47953.     DWORD dwSupport;
  47954.  
  47955.     GUID ManufacturerGuid;
  47956.     GUID ProductGuid;
  47957.     GUID NameGuid;
  47958. } MIDIINCAPS2W, *PMIDIINCAPS2W, *NPMIDIINCAPS2W, *LPMIDIINCAPS2W;
  47959.  
  47960.  
  47961.  
  47962.  
  47963.  
  47964.  
  47965. typedef MIDIINCAPS2A MIDIINCAPS2;
  47966. typedef PMIDIINCAPS2A PMIDIINCAPS2;
  47967. typedef NPMIDIINCAPS2A NPMIDIINCAPS2;
  47968. typedef LPMIDIINCAPS2A LPMIDIINCAPS2;
  47969. # 1005 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  47970. typedef struct midihdr_tag {
  47971.     LPSTR lpData;
  47972.     DWORD dwBufferLength;
  47973.     DWORD dwBytesRecorded;
  47974.     DWORD_PTR dwUser;
  47975.     DWORD dwFlags;
  47976.     struct midihdr_tag *lpNext;
  47977.     DWORD_PTR reserved;
  47978.  
  47979.     DWORD dwOffset;
  47980.     DWORD_PTR dwReserved[8];
  47981.  
  47982. } MIDIHDR, *PMIDIHDR, *NPMIDIHDR, *LPMIDIHDR;
  47983.  
  47984.  
  47985. typedef struct midievent_tag
  47986. {
  47987.     DWORD dwDeltaTime;
  47988.     DWORD dwStreamID;
  47989.     DWORD dwEvent;
  47990.     DWORD dwParms[1];
  47991. } MIDIEVENT;
  47992.  
  47993. typedef struct midistrmbuffver_tag
  47994. {
  47995.     DWORD dwVersion;
  47996.     DWORD dwMid;
  47997.     DWORD dwOEMVersion;
  47998. } MIDISTRMBUFFVER;
  47999. # 1086 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48000. typedef struct midiproptimediv_tag
  48001. {
  48002.     DWORD cbStruct;
  48003.     DWORD dwTimeDiv;
  48004. } MIDIPROPTIMEDIV, *LPMIDIPROPTIMEDIV;
  48005.  
  48006. typedef struct midiproptempo_tag
  48007. {
  48008.     DWORD cbStruct;
  48009.     DWORD dwTempo;
  48010. } MIDIPROPTEMPO, *LPMIDIPROPTEMPO;
  48011.  
  48012.  
  48013.  
  48014.  
  48015. __declspec(dllimport)
  48016. UINT
  48017. __stdcall
  48018. midiOutGetNumDevs(
  48019.     void
  48020.     );
  48021.  
  48022.  
  48023. __declspec(dllimport)
  48024. MMRESULT
  48025. __stdcall
  48026. midiStreamOpen(
  48027.           LPHMIDISTRM phms,
  48028.                            LPUINT puDeviceID,
  48029.          DWORD cMidi,
  48030.              DWORD_PTR dwCallback,
  48031.              DWORD_PTR dwInstance,
  48032.          DWORD fdwOpen
  48033.     );
  48034.  
  48035. __declspec(dllimport)
  48036. MMRESULT
  48037. __stdcall
  48038. midiStreamClose(
  48039.          HMIDISTRM hms
  48040.     );
  48041.  
  48042.  
  48043. __declspec(dllimport)
  48044. MMRESULT
  48045. __stdcall
  48046. midiStreamProperty(
  48047.          HMIDISTRM hms,
  48048.                                                          LPBYTE lppropdata,
  48049.          DWORD dwProperty
  48050.     );
  48051.  
  48052. __declspec(dllimport)
  48053. MMRESULT
  48054. __stdcall
  48055. midiStreamPosition(
  48056.          HMIDISTRM hms,
  48057.                               LPMMTIME lpmmt,
  48058.          UINT cbmmt
  48059.     );
  48060.  
  48061.  
  48062. __declspec(dllimport)
  48063. MMRESULT
  48064. __stdcall
  48065. midiStreamOut(
  48066.          HMIDISTRM hms,
  48067.                              LPMIDIHDR pmh,
  48068.          UINT cbmh
  48069.     );
  48070.  
  48071. __declspec(dllimport)
  48072. MMRESULT
  48073. __stdcall
  48074. midiStreamPause(
  48075.          HMIDISTRM hms
  48076.     );
  48077.  
  48078. __declspec(dllimport)
  48079. MMRESULT
  48080. __stdcall
  48081. midiStreamRestart(
  48082.          HMIDISTRM hms
  48083.     );
  48084.  
  48085. __declspec(dllimport)
  48086. MMRESULT
  48087. __stdcall
  48088. midiStreamStop(
  48089.          HMIDISTRM hms
  48090.     );
  48091.  
  48092.  
  48093.  
  48094. __declspec(dllimport)
  48095. MMRESULT
  48096. __stdcall
  48097. midiConnect(
  48098.          HMIDI hmi,
  48099.          HMIDIOUT hmo,
  48100.              LPVOID pReserved
  48101.     );
  48102.  
  48103. __declspec(dllimport)
  48104. MMRESULT
  48105. __stdcall
  48106. midiDisconnect(
  48107.          HMIDI hmi,
  48108.          HMIDIOUT hmo,
  48109.              LPVOID pReserved
  48110.     );
  48111.  
  48112.  
  48113.  
  48114.  
  48115.  
  48116.  
  48117. __declspec(dllimport)
  48118. MMRESULT
  48119. __stdcall
  48120. midiOutGetDevCapsA(
  48121.          UINT_PTR uDeviceID,
  48122.                               LPMIDIOUTCAPSA pmoc,
  48123.          UINT cbmoc
  48124.     );
  48125.  
  48126. __declspec(dllimport)
  48127. MMRESULT
  48128. __stdcall
  48129. midiOutGetDevCapsW(
  48130.          UINT_PTR uDeviceID,
  48131.                               LPMIDIOUTCAPSW pmoc,
  48132.          UINT cbmoc
  48133.     );
  48134. # 1232 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48135. __declspec(dllimport)
  48136. MMRESULT
  48137. __stdcall
  48138. midiOutGetVolume(
  48139.              HMIDIOUT hmo,
  48140.           LPDWORD pdwVolume
  48141.     );
  48142.  
  48143. __declspec(dllimport)
  48144. MMRESULT
  48145. __stdcall
  48146. midiOutSetVolume(
  48147.              HMIDIOUT hmo,
  48148.          DWORD dwVolume
  48149.     );
  48150. # 1255 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48151. __declspec(dllimport)
  48152. MMRESULT
  48153. __stdcall
  48154. midiOutGetErrorTextA(
  48155.          MMRESULT mmrError,
  48156.                           LPSTR pszText,
  48157.          UINT cchText
  48158.     );
  48159.  
  48160. __declspec(dllimport)
  48161. MMRESULT
  48162. __stdcall
  48163. midiOutGetErrorTextW(
  48164.          MMRESULT mmrError,
  48165.                           LPWSTR pszText,
  48166.          UINT cchText
  48167.     );
  48168. # 1283 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48169. __declspec(dllimport)
  48170. MMRESULT
  48171. __stdcall
  48172. midiOutOpen(
  48173.           LPHMIDIOUT phmo,
  48174.          UINT uDeviceID,
  48175.              DWORD_PTR dwCallback,
  48176.              DWORD_PTR dwInstance,
  48177.          DWORD fdwOpen
  48178.     );
  48179.  
  48180. __declspec(dllimport)
  48181. MMRESULT
  48182. __stdcall
  48183. midiOutClose(
  48184.          HMIDIOUT hmo
  48185.     );
  48186.  
  48187. __declspec(dllimport)
  48188. MMRESULT
  48189. __stdcall
  48190. midiOutPrepareHeader(
  48191.          HMIDIOUT hmo,
  48192.                                 LPMIDIHDR pmh,
  48193.          UINT cbmh
  48194.     );
  48195.  
  48196. __declspec(dllimport)
  48197. MMRESULT
  48198. __stdcall
  48199. midiOutUnprepareHeader(
  48200.          HMIDIOUT hmo,
  48201.                                 LPMIDIHDR pmh,
  48202.          UINT cbmh
  48203.     );
  48204.  
  48205. __declspec(dllimport)
  48206. MMRESULT
  48207. __stdcall
  48208. midiOutShortMsg(
  48209.          HMIDIOUT hmo,
  48210.          DWORD dwMsg
  48211.     );
  48212.  
  48213. __declspec(dllimport)
  48214. MMRESULT
  48215. __stdcall
  48216. midiOutLongMsg(
  48217.          HMIDIOUT hmo,
  48218.                            LPMIDIHDR pmh,
  48219.          UINT cbmh
  48220.     );
  48221.  
  48222. __declspec(dllimport)
  48223. MMRESULT
  48224. __stdcall
  48225. midiOutReset(
  48226.          HMIDIOUT hmo
  48227.     );
  48228.  
  48229. __declspec(dllimport)
  48230. MMRESULT
  48231. __stdcall
  48232. midiOutCachePatches(
  48233.          HMIDIOUT hmo,
  48234.          UINT uBank,
  48235.                               LPWORD pwpa,
  48236.          UINT fuCache
  48237.     );
  48238.  
  48239. __declspec(dllimport)
  48240. MMRESULT
  48241. __stdcall
  48242. midiOutCacheDrumPatches(
  48243.          HMIDIOUT hmo,
  48244.          UINT uPatch,
  48245.                               LPWORD pwkya,
  48246.          UINT fuCache
  48247.     );
  48248.  
  48249. __declspec(dllimport)
  48250. MMRESULT
  48251. __stdcall
  48252. midiOutGetID(
  48253.          HMIDIOUT hmo,
  48254.           LPUINT puDeviceID
  48255.     );
  48256.  
  48257.  
  48258.  
  48259.  
  48260. __declspec(dllimport)
  48261. MMRESULT
  48262. __stdcall
  48263. midiOutMessage(
  48264.              HMIDIOUT hmo,
  48265.          UINT uMsg,
  48266.              DWORD_PTR dw1,
  48267.              DWORD_PTR dw2
  48268.     );
  48269.  
  48270.  
  48271.  
  48272.  
  48273.  
  48274.  
  48275. __declspec(dllimport)
  48276. UINT
  48277. __stdcall
  48278. midiInGetNumDevs(
  48279.     void
  48280.     );
  48281.  
  48282.  
  48283.  
  48284.  
  48285. __declspec(dllimport)
  48286. MMRESULT
  48287. __stdcall
  48288. midiInGetDevCapsA(
  48289.          UINT_PTR uDeviceID,
  48290.                               LPMIDIINCAPSA pmic,
  48291.          UINT cbmic
  48292.     );
  48293.  
  48294. __declspec(dllimport)
  48295. MMRESULT
  48296. __stdcall
  48297. midiInGetDevCapsW(
  48298.          UINT_PTR uDeviceID,
  48299.                               LPMIDIINCAPSW pmic,
  48300.          UINT cbmic
  48301.     );
  48302.  
  48303.  
  48304.  
  48305.  
  48306.  
  48307.  
  48308. __declspec(dllimport)
  48309. MMRESULT
  48310. __stdcall
  48311. midiInGetErrorTextA(
  48312.          MMRESULT mmrError,
  48313.                           LPSTR pszText,
  48314.          UINT cchText
  48315.     );
  48316.  
  48317. __declspec(dllimport)
  48318. MMRESULT
  48319. __stdcall
  48320. midiInGetErrorTextW(
  48321.          MMRESULT mmrError,
  48322.                           LPWSTR pszText,
  48323.          UINT cchText
  48324.     );
  48325. # 1451 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48326. __declspec(dllimport)
  48327. MMRESULT
  48328. __stdcall
  48329. midiInOpen(
  48330.           LPHMIDIIN phmi,
  48331.          UINT uDeviceID,
  48332.              DWORD_PTR dwCallback,
  48333.              DWORD_PTR dwInstance,
  48334.          DWORD fdwOpen
  48335.     );
  48336.  
  48337. __declspec(dllimport)
  48338. MMRESULT
  48339. __stdcall
  48340. midiInClose(
  48341.          HMIDIIN hmi
  48342.     );
  48343.  
  48344. __declspec(dllimport)
  48345. MMRESULT
  48346. __stdcall
  48347. midiInPrepareHeader(
  48348.          HMIDIIN hmi,
  48349.                                 LPMIDIHDR pmh,
  48350.          UINT cbmh
  48351.     );
  48352.  
  48353. __declspec(dllimport)
  48354. MMRESULT
  48355. __stdcall
  48356. midiInUnprepareHeader(
  48357.          HMIDIIN hmi,
  48358.                                 LPMIDIHDR pmh,
  48359.          UINT cbmh
  48360.     );
  48361.  
  48362. __declspec(dllimport)
  48363. MMRESULT
  48364. __stdcall
  48365. midiInAddBuffer(
  48366.          HMIDIIN hmi,
  48367.                              LPMIDIHDR pmh,
  48368.          UINT cbmh
  48369.     );
  48370.  
  48371. __declspec(dllimport)
  48372. MMRESULT
  48373. __stdcall
  48374. midiInStart(
  48375.          HMIDIIN hmi
  48376.     );
  48377.  
  48378. __declspec(dllimport)
  48379. MMRESULT
  48380. __stdcall
  48381. midiInStop(
  48382.          HMIDIIN hmi
  48383.     );
  48384.  
  48385. __declspec(dllimport)
  48386. MMRESULT
  48387. __stdcall
  48388. midiInReset(
  48389.          HMIDIIN hmi
  48390.     );
  48391.  
  48392. __declspec(dllimport)
  48393. MMRESULT
  48394. __stdcall
  48395. midiInGetID(
  48396.          HMIDIIN hmi,
  48397.           LPUINT puDeviceID
  48398.     );
  48399.  
  48400.  
  48401.  
  48402.  
  48403. __declspec(dllimport)
  48404. MMRESULT
  48405. __stdcall
  48406. midiInMessage(
  48407.              HMIDIIN hmi,
  48408.          UINT uMsg,
  48409.              DWORD_PTR dw1,
  48410.              DWORD_PTR dw2
  48411.     );
  48412. # 1559 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48413. typedef struct tagAUXCAPSA {
  48414.     WORD wMid;
  48415.     WORD wPid;
  48416.     MMVERSION vDriverVersion;
  48417.     CHAR szPname[32];
  48418.     WORD wTechnology;
  48419.     WORD wReserved1;
  48420.     DWORD dwSupport;
  48421. } AUXCAPSA, *PAUXCAPSA, *NPAUXCAPSA, *LPAUXCAPSA;
  48422. typedef struct tagAUXCAPSW {
  48423.     WORD wMid;
  48424.     WORD wPid;
  48425.     MMVERSION vDriverVersion;
  48426.     WCHAR szPname[32];
  48427.     WORD wTechnology;
  48428.     WORD wReserved1;
  48429.     DWORD dwSupport;
  48430. } AUXCAPSW, *PAUXCAPSW, *NPAUXCAPSW, *LPAUXCAPSW;
  48431.  
  48432.  
  48433.  
  48434.  
  48435.  
  48436.  
  48437. typedef AUXCAPSA AUXCAPS;
  48438. typedef PAUXCAPSA PAUXCAPS;
  48439. typedef NPAUXCAPSA NPAUXCAPS;
  48440. typedef LPAUXCAPSA LPAUXCAPS;
  48441.  
  48442. typedef struct tagAUXCAPS2A {
  48443.     WORD wMid;
  48444.     WORD wPid;
  48445.     MMVERSION vDriverVersion;
  48446.     CHAR szPname[32];
  48447.     WORD wTechnology;
  48448.     WORD wReserved1;
  48449.     DWORD dwSupport;
  48450.     GUID ManufacturerGuid;
  48451.     GUID ProductGuid;
  48452.     GUID NameGuid;
  48453. } AUXCAPS2A, *PAUXCAPS2A, *NPAUXCAPS2A, *LPAUXCAPS2A;
  48454. typedef struct tagAUXCAPS2W {
  48455.     WORD wMid;
  48456.     WORD wPid;
  48457.     MMVERSION vDriverVersion;
  48458.     WCHAR szPname[32];
  48459.     WORD wTechnology;
  48460.     WORD wReserved1;
  48461.     DWORD dwSupport;
  48462.     GUID ManufacturerGuid;
  48463.     GUID ProductGuid;
  48464.     GUID NameGuid;
  48465. } AUXCAPS2W, *PAUXCAPS2W, *NPAUXCAPS2W, *LPAUXCAPS2W;
  48466.  
  48467.  
  48468.  
  48469.  
  48470.  
  48471.  
  48472. typedef AUXCAPS2A AUXCAPS2;
  48473. typedef PAUXCAPS2A PAUXCAPS2;
  48474. typedef NPAUXCAPS2A NPAUXCAPS2;
  48475. typedef LPAUXCAPS2A LPAUXCAPS2;
  48476. # 1644 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48477. __declspec(dllimport)
  48478. UINT
  48479. __stdcall
  48480. auxGetNumDevs(
  48481.     void
  48482.     );
  48483.  
  48484.  
  48485.  
  48486. __declspec(dllimport)
  48487. MMRESULT
  48488. __stdcall
  48489. auxGetDevCapsA(
  48490.          UINT_PTR uDeviceID,
  48491.                              LPAUXCAPSA pac,
  48492.          UINT cbac
  48493.     );
  48494.  
  48495. __declspec(dllimport)
  48496. MMRESULT
  48497. __stdcall
  48498. auxGetDevCapsW(
  48499.          UINT_PTR uDeviceID,
  48500.                              LPAUXCAPSW pac,
  48501.          UINT cbac
  48502.     );
  48503. # 1680 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48504. __declspec(dllimport)
  48505. MMRESULT
  48506. __stdcall
  48507. auxSetVolume(
  48508.          UINT uDeviceID,
  48509.          DWORD dwVolume
  48510.     );
  48511.  
  48512. __declspec(dllimport)
  48513. MMRESULT
  48514. __stdcall
  48515. auxGetVolume(
  48516.          UINT uDeviceID,
  48517.           LPDWORD pdwVolume
  48518.     );
  48519.  
  48520.  
  48521.  
  48522.  
  48523. __declspec(dllimport)
  48524. MMRESULT
  48525. __stdcall
  48526. auxOutMessage(
  48527.          UINT uDeviceID,
  48528.          UINT uMsg,
  48529.              DWORD_PTR dw1,
  48530.              DWORD_PTR dw2
  48531.     );
  48532. # 1723 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48533. struct HMIXEROBJ__{int unused;}; typedef struct HMIXEROBJ__ *HMIXEROBJ;
  48534. typedef HMIXEROBJ *LPHMIXEROBJ;
  48535.  
  48536. struct HMIXER__{int unused;}; typedef struct HMIXER__ *HMIXER;
  48537. typedef HMIXER *LPHMIXER;
  48538. # 1754 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48539. __declspec(dllimport)
  48540. UINT
  48541. __stdcall
  48542. mixerGetNumDevs(
  48543.     void
  48544.     );
  48545.  
  48546.  
  48547.  
  48548.  
  48549. typedef struct tagMIXERCAPSA {
  48550.     WORD wMid;
  48551.     WORD wPid;
  48552.     MMVERSION vDriverVersion;
  48553.     CHAR szPname[32];
  48554.     DWORD fdwSupport;
  48555.     DWORD cDestinations;
  48556. } MIXERCAPSA, *PMIXERCAPSA, *LPMIXERCAPSA;
  48557. typedef struct tagMIXERCAPSW {
  48558.     WORD wMid;
  48559.     WORD wPid;
  48560.     MMVERSION vDriverVersion;
  48561.     WCHAR szPname[32];
  48562.     DWORD fdwSupport;
  48563.     DWORD cDestinations;
  48564. } MIXERCAPSW, *PMIXERCAPSW, *LPMIXERCAPSW;
  48565.  
  48566.  
  48567.  
  48568.  
  48569.  
  48570. typedef MIXERCAPSA MIXERCAPS;
  48571. typedef PMIXERCAPSA PMIXERCAPS;
  48572. typedef LPMIXERCAPSA LPMIXERCAPS;
  48573.  
  48574. typedef struct tagMIXERCAPS2A {
  48575.     WORD wMid;
  48576.     WORD wPid;
  48577.     MMVERSION vDriverVersion;
  48578.     CHAR szPname[32];
  48579.     DWORD fdwSupport;
  48580.     DWORD cDestinations;
  48581.     GUID ManufacturerGuid;
  48582.     GUID ProductGuid;
  48583.     GUID NameGuid;
  48584. } MIXERCAPS2A, *PMIXERCAPS2A, *LPMIXERCAPS2A;
  48585. typedef struct tagMIXERCAPS2W {
  48586.     WORD wMid;
  48587.     WORD wPid;
  48588.     MMVERSION vDriverVersion;
  48589.     WCHAR szPname[32];
  48590.     DWORD fdwSupport;
  48591.     DWORD cDestinations;
  48592.     GUID ManufacturerGuid;
  48593.     GUID ProductGuid;
  48594.     GUID NameGuid;
  48595. } MIXERCAPS2W, *PMIXERCAPS2W, *LPMIXERCAPS2W;
  48596.  
  48597.  
  48598.  
  48599.  
  48600.  
  48601. typedef MIXERCAPS2A MIXERCAPS2;
  48602. typedef PMIXERCAPS2A PMIXERCAPS2;
  48603. typedef LPMIXERCAPS2A LPMIXERCAPS2;
  48604. # 1834 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48605. __declspec(dllimport)
  48606. MMRESULT
  48607. __stdcall
  48608. mixerGetDevCapsA(
  48609.          UINT_PTR uMxId,
  48610.                                  LPMIXERCAPSA pmxcaps,
  48611.          UINT cbmxcaps
  48612.     );
  48613.  
  48614. __declspec(dllimport)
  48615. MMRESULT
  48616. __stdcall
  48617. mixerGetDevCapsW(
  48618.          UINT_PTR uMxId,
  48619.                                  LPMIXERCAPSW pmxcaps,
  48620.          UINT cbmxcaps
  48621.     );
  48622. # 1862 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48623. __declspec(dllimport)
  48624. MMRESULT
  48625. __stdcall
  48626. mixerOpen(
  48627.               LPHMIXER phmx,
  48628.          UINT uMxId,
  48629.              DWORD_PTR dwCallback,
  48630.              DWORD_PTR dwInstance,
  48631.          DWORD fdwOpen
  48632.     );
  48633.  
  48634.  
  48635. __declspec(dllimport)
  48636. MMRESULT
  48637. __stdcall
  48638. mixerClose(
  48639.          HMIXER hmx
  48640.     );
  48641.  
  48642.  
  48643. __declspec(dllimport)
  48644. DWORD
  48645. __stdcall
  48646. mixerMessage(
  48647.              HMIXER hmx,
  48648.          UINT uMsg,
  48649.              DWORD_PTR dwParam1,
  48650.              DWORD_PTR dwParam2
  48651.     );
  48652.  
  48653.  
  48654.  
  48655.  
  48656. typedef struct tagMIXERLINEA {
  48657.     DWORD cbStruct;
  48658.     DWORD dwDestination;
  48659.     DWORD dwSource;
  48660.     DWORD dwLineID;
  48661.     DWORD fdwLine;
  48662.     DWORD_PTR dwUser;
  48663.     DWORD dwComponentType;
  48664.     DWORD cChannels;
  48665.     DWORD cConnections;
  48666.     DWORD cControls;
  48667.     CHAR szShortName[16];
  48668.     CHAR szName[64];
  48669.     struct {
  48670.         DWORD dwType;
  48671.         DWORD dwDeviceID;
  48672.         WORD wMid;
  48673.         WORD wPid;
  48674.         MMVERSION vDriverVersion;
  48675.         CHAR szPname[32];
  48676.     } Target;
  48677. } MIXERLINEA, *PMIXERLINEA, *LPMIXERLINEA;
  48678. typedef struct tagMIXERLINEW {
  48679.     DWORD cbStruct;
  48680.     DWORD dwDestination;
  48681.     DWORD dwSource;
  48682.     DWORD dwLineID;
  48683.     DWORD fdwLine;
  48684.     DWORD_PTR dwUser;
  48685.     DWORD dwComponentType;
  48686.     DWORD cChannels;
  48687.     DWORD cConnections;
  48688.     DWORD cControls;
  48689.     WCHAR szShortName[16];
  48690.     WCHAR szName[64];
  48691.     struct {
  48692.         DWORD dwType;
  48693.         DWORD dwDeviceID;
  48694.         WORD wMid;
  48695.         WORD wPid;
  48696.         MMVERSION vDriverVersion;
  48697.         WCHAR szPname[32];
  48698.     } Target;
  48699. } MIXERLINEW, *PMIXERLINEW, *LPMIXERLINEW;
  48700.  
  48701.  
  48702.  
  48703.  
  48704.  
  48705. typedef MIXERLINEA MIXERLINE;
  48706. typedef PMIXERLINEA PMIXERLINE;
  48707. typedef LPMIXERLINEA LPMIXERLINE;
  48708. # 2027 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48709. __declspec(dllimport)
  48710. MMRESULT
  48711. __stdcall
  48712. mixerGetLineInfoA(
  48713.              HMIXEROBJ hmxobj,
  48714.             LPMIXERLINEA pmxl,
  48715.          DWORD fdwInfo
  48716.     );
  48717.  
  48718. __declspec(dllimport)
  48719. MMRESULT
  48720. __stdcall
  48721. mixerGetLineInfoW(
  48722.              HMIXEROBJ hmxobj,
  48723.             LPMIXERLINEW pmxl,
  48724.          DWORD fdwInfo
  48725.     );
  48726. # 2063 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48727. __declspec(dllimport)
  48728. MMRESULT
  48729. __stdcall
  48730. mixerGetID(
  48731.              HMIXEROBJ hmxobj,
  48732.           UINT * puMxId,
  48733.          DWORD fdwId
  48734.     );
  48735. # 2079 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48736. typedef struct tagMIXERCONTROLA {
  48737.     DWORD cbStruct;
  48738.     DWORD dwControlID;
  48739.     DWORD dwControlType;
  48740.     DWORD fdwControl;
  48741.     DWORD cMultipleItems;
  48742.     CHAR szShortName[16];
  48743.     CHAR szName[64];
  48744.     union {
  48745.         struct {
  48746.             LONG lMinimum;
  48747.             LONG lMaximum;
  48748.         } ;
  48749.         struct {
  48750.             DWORD dwMinimum;
  48751.             DWORD dwMaximum;
  48752.         } ;
  48753.         DWORD dwReserved[6];
  48754.     } Bounds;
  48755.     union {
  48756.         DWORD cSteps;
  48757.         DWORD cbCustomData;
  48758.         DWORD dwReserved[6];
  48759.     } Metrics;
  48760. } MIXERCONTROLA, *PMIXERCONTROLA, *LPMIXERCONTROLA;
  48761. typedef struct tagMIXERCONTROLW {
  48762.     DWORD cbStruct;
  48763.     DWORD dwControlID;
  48764.     DWORD dwControlType;
  48765.     DWORD fdwControl;
  48766.     DWORD cMultipleItems;
  48767.     WCHAR szShortName[16];
  48768.     WCHAR szName[64];
  48769.     union {
  48770.         struct {
  48771.             LONG lMinimum;
  48772.             LONG lMaximum;
  48773.         } ;
  48774.         struct {
  48775.             DWORD dwMinimum;
  48776.             DWORD dwMaximum;
  48777.         } ;
  48778.         DWORD dwReserved[6];
  48779.     } Bounds;
  48780.     union {
  48781.         DWORD cSteps;
  48782.         DWORD cbCustomData;
  48783.         DWORD dwReserved[6];
  48784.     } Metrics;
  48785. } MIXERCONTROLW, *PMIXERCONTROLW, *LPMIXERCONTROLW;
  48786.  
  48787.  
  48788.  
  48789.  
  48790.  
  48791. typedef MIXERCONTROLA MIXERCONTROL;
  48792. typedef PMIXERCONTROLA PMIXERCONTROL;
  48793. typedef LPMIXERCONTROLA LPMIXERCONTROL;
  48794. # 2251 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48795. typedef struct tagMIXERLINECONTROLSA {
  48796.     DWORD cbStruct;
  48797.     DWORD dwLineID;
  48798.     union {
  48799.         DWORD dwControlID;
  48800.         DWORD dwControlType;
  48801.     } ;
  48802.     DWORD cControls;
  48803.     DWORD cbmxctrl;
  48804.     LPMIXERCONTROLA pamxctrl;
  48805. } MIXERLINECONTROLSA, *PMIXERLINECONTROLSA, *LPMIXERLINECONTROLSA;
  48806. typedef struct tagMIXERLINECONTROLSW {
  48807.     DWORD cbStruct;
  48808.     DWORD dwLineID;
  48809.     union {
  48810.         DWORD dwControlID;
  48811.         DWORD dwControlType;
  48812.     } ;
  48813.     DWORD cControls;
  48814.     DWORD cbmxctrl;
  48815.     LPMIXERCONTROLW pamxctrl;
  48816. } MIXERLINECONTROLSW, *PMIXERLINECONTROLSW, *LPMIXERLINECONTROLSW;
  48817.  
  48818.  
  48819.  
  48820.  
  48821.  
  48822. typedef MIXERLINECONTROLSA MIXERLINECONTROLS;
  48823. typedef PMIXERLINECONTROLSA PMIXERLINECONTROLS;
  48824. typedef LPMIXERLINECONTROLSA LPMIXERLINECONTROLS;
  48825. # 2302 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48826. __declspec(dllimport)
  48827. MMRESULT
  48828. __stdcall
  48829. mixerGetLineControlsA(
  48830.              HMIXEROBJ hmxobj,
  48831.             LPMIXERLINECONTROLSA pmxlc,
  48832.          DWORD fdwControls
  48833.     );
  48834.  
  48835. __declspec(dllimport)
  48836. MMRESULT
  48837. __stdcall
  48838. mixerGetLineControlsW(
  48839.              HMIXEROBJ hmxobj,
  48840.             LPMIXERLINECONTROLSW pmxlc,
  48841.          DWORD fdwControls
  48842.     );
  48843. # 2336 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48844. typedef struct tMIXERCONTROLDETAILS {
  48845.     DWORD cbStruct;
  48846.     DWORD dwControlID;
  48847.     DWORD cChannels;
  48848.     union {
  48849.         HWND hwndOwner;
  48850.         DWORD cMultipleItems;
  48851.     } ;
  48852.     DWORD cbDetails;
  48853.     LPVOID paDetails;
  48854. } MIXERCONTROLDETAILS, *PMIXERCONTROLDETAILS, *LPMIXERCONTROLDETAILS;
  48855.  
  48856.  
  48857.  
  48858.  
  48859.  
  48860.  
  48861.  
  48862. typedef struct tagMIXERCONTROLDETAILS_LISTTEXTA {
  48863.     DWORD dwParam1;
  48864.     DWORD dwParam2;
  48865.     CHAR szName[64];
  48866. } MIXERCONTROLDETAILS_LISTTEXTA, *PMIXERCONTROLDETAILS_LISTTEXTA, *LPMIXERCONTROLDETAILS_LISTTEXTA;
  48867. typedef struct tagMIXERCONTROLDETAILS_LISTTEXTW {
  48868.     DWORD dwParam1;
  48869.     DWORD dwParam2;
  48870.     WCHAR szName[64];
  48871. } MIXERCONTROLDETAILS_LISTTEXTW, *PMIXERCONTROLDETAILS_LISTTEXTW, *LPMIXERCONTROLDETAILS_LISTTEXTW;
  48872.  
  48873.  
  48874.  
  48875.  
  48876.  
  48877. typedef MIXERCONTROLDETAILS_LISTTEXTA MIXERCONTROLDETAILS_LISTTEXT;
  48878. typedef PMIXERCONTROLDETAILS_LISTTEXTA PMIXERCONTROLDETAILS_LISTTEXT;
  48879. typedef LPMIXERCONTROLDETAILS_LISTTEXTA LPMIXERCONTROLDETAILS_LISTTEXT;
  48880. # 2386 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48881. typedef struct tMIXERCONTROLDETAILS_BOOLEAN {
  48882.     LONG fValue;
  48883. } MIXERCONTROLDETAILS_BOOLEAN,
  48884.       *PMIXERCONTROLDETAILS_BOOLEAN,
  48885.      *LPMIXERCONTROLDETAILS_BOOLEAN;
  48886.  
  48887. typedef struct tMIXERCONTROLDETAILS_SIGNED {
  48888.     LONG lValue;
  48889. } MIXERCONTROLDETAILS_SIGNED,
  48890.       *PMIXERCONTROLDETAILS_SIGNED,
  48891.      *LPMIXERCONTROLDETAILS_SIGNED;
  48892.  
  48893. typedef struct tMIXERCONTROLDETAILS_UNSIGNED {
  48894.     DWORD dwValue;
  48895. } MIXERCONTROLDETAILS_UNSIGNED,
  48896.       *PMIXERCONTROLDETAILS_UNSIGNED,
  48897.      *LPMIXERCONTROLDETAILS_UNSIGNED;
  48898.  
  48899.  
  48900.  
  48901. __declspec(dllimport)
  48902. MMRESULT
  48903. __stdcall
  48904. mixerGetControlDetailsA(
  48905.              HMIXEROBJ hmxobj,
  48906.             LPMIXERCONTROLDETAILS pmxcd,
  48907.          DWORD fdwDetails
  48908.     );
  48909.  
  48910. __declspec(dllimport)
  48911. MMRESULT
  48912. __stdcall
  48913. mixerGetControlDetailsW(
  48914.              HMIXEROBJ hmxobj,
  48915.             LPMIXERCONTROLDETAILS pmxcd,
  48916.          DWORD fdwDetails
  48917.     );
  48918. # 2439 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48919. __declspec(dllimport)
  48920. MMRESULT
  48921. __stdcall
  48922. mixerSetControlDetails(
  48923.              HMIXEROBJ hmxobj,
  48924.          LPMIXERCONTROLDETAILS pmxcd,
  48925.          DWORD fdwDetails
  48926.     );
  48927. # 2457 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 3
  48928. #pragma endregion
  48929.  
  48930.  
  48931.  
  48932.  
  48933.  
  48934.  
  48935.  
  48936. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  48937. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  48938. #pragma warning(disable: 4103)
  48939.  
  48940. #pragma pack(pop)
  48941. # 2464 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmeapi.h" 2 3
  48942.  
  48943.  
  48944.  
  48945.  
  48946.  
  48947.  
  48948. #pragma option pop
  48949. # 74 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  48950.  
  48951.  
  48952.  
  48953. #pragma endregion
  48954.  
  48955. #pragma region Desktop Family or OneCore Family
  48956. # 89 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 3
  48957. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\timeapi.h" 1 3
  48958. #pragma option push -b -a8 -pc -A- -w-pun
  48959. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\timeapi.h" 3
  48960. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 1 3
  48961. #pragma option push -b -a8 -pc -A- -w-pun
  48962. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  48963. #pragma option pop
  48964. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\timeapi.h" 2 3
  48965.  
  48966.  
  48967.  
  48968.  
  48969.  
  48970.  
  48971. #pragma region Desktop Family or OneCore Family
  48972. # 44 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\timeapi.h" 3
  48973. typedef struct timecaps_tag {
  48974.     UINT wPeriodMin;
  48975.     UINT wPeriodMax;
  48976. } TIMECAPS, *PTIMECAPS, *NPTIMECAPS, *LPTIMECAPS;
  48977.  
  48978.  
  48979. __declspec(dllimport)
  48980. MMRESULT
  48981. __stdcall
  48982. timeGetSystemTime(
  48983.                               LPMMTIME pmmt,
  48984.          UINT cbmmt
  48985.     );
  48986.  
  48987. __declspec(dllimport)
  48988. DWORD
  48989. __stdcall
  48990. timeGetTime(
  48991.     void
  48992.     );
  48993.  
  48994. __declspec(dllimport)
  48995. MMRESULT
  48996. __stdcall
  48997. timeGetDevCaps(
  48998.                              LPTIMECAPS ptc,
  48999.          UINT cbtc
  49000.     );
  49001.  
  49002. __declspec(dllimport)
  49003. MMRESULT
  49004. __stdcall
  49005. timeBeginPeriod(
  49006.          UINT uPeriod
  49007.     );
  49008.  
  49009. __declspec(dllimport)
  49010. MMRESULT
  49011. __stdcall
  49012. timeEndPeriod(
  49013.          UINT uPeriod
  49014.     );
  49015.  
  49016.  
  49017.  
  49018.  
  49019.  
  49020. #pragma endregion
  49021.  
  49022.  
  49023.  
  49024.  
  49025.  
  49026.  
  49027.  
  49028.  
  49029. #pragma option pop
  49030. # 89 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  49031.  
  49032.  
  49033.  
  49034.  
  49035.  
  49036.  
  49037.  
  49038. #pragma endregion
  49039.  
  49040. #pragma region Desktop Family
  49041.  
  49042.  
  49043.  
  49044.  
  49045.  
  49046.  
  49047.  
  49048. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\joystickapi.h" 1 3
  49049. #pragma option push -b -a8 -pc -A- -w-pun
  49050. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\joystickapi.h" 3
  49051. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 1 3
  49052. #pragma option push -b -a8 -pc -A- -w-pun
  49053. # 325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsyscom.h" 3
  49054. #pragma option pop
  49055. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\joystickapi.h" 2 3
  49056.  
  49057.  
  49058.  
  49059.  
  49060.  
  49061.  
  49062. #pragma region Desktop Family
  49063. # 137 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\joystickapi.h" 3
  49064. typedef struct tagJOYCAPSA {
  49065.     WORD wMid;
  49066.     WORD wPid;
  49067.     CHAR szPname[32];
  49068.     UINT wXmin;
  49069.     UINT wXmax;
  49070.     UINT wYmin;
  49071.     UINT wYmax;
  49072.     UINT wZmin;
  49073.     UINT wZmax;
  49074.     UINT wNumButtons;
  49075.     UINT wPeriodMin;
  49076.     UINT wPeriodMax;
  49077.  
  49078.     UINT wRmin;
  49079.     UINT wRmax;
  49080.     UINT wUmin;
  49081.     UINT wUmax;
  49082.     UINT wVmin;
  49083.     UINT wVmax;
  49084.     UINT wCaps;
  49085.     UINT wMaxAxes;
  49086.     UINT wNumAxes;
  49087.     UINT wMaxButtons;
  49088.     CHAR szRegKey[32];
  49089.     CHAR szOEMVxD[260];
  49090.  
  49091. } JOYCAPSA, *PJOYCAPSA, *NPJOYCAPSA, *LPJOYCAPSA;
  49092. typedef struct tagJOYCAPSW {
  49093.     WORD wMid;
  49094.     WORD wPid;
  49095.     WCHAR szPname[32];
  49096.     UINT wXmin;
  49097.     UINT wXmax;
  49098.     UINT wYmin;
  49099.     UINT wYmax;
  49100.     UINT wZmin;
  49101.     UINT wZmax;
  49102.     UINT wNumButtons;
  49103.     UINT wPeriodMin;
  49104.     UINT wPeriodMax;
  49105.  
  49106.     UINT wRmin;
  49107.     UINT wRmax;
  49108.     UINT wUmin;
  49109.     UINT wUmax;
  49110.     UINT wVmin;
  49111.     UINT wVmax;
  49112.     UINT wCaps;
  49113.     UINT wMaxAxes;
  49114.     UINT wNumAxes;
  49115.     UINT wMaxButtons;
  49116.     WCHAR szRegKey[32];
  49117.     WCHAR szOEMVxD[260];
  49118.  
  49119. } JOYCAPSW, *PJOYCAPSW, *NPJOYCAPSW, *LPJOYCAPSW;
  49120.  
  49121.  
  49122.  
  49123.  
  49124.  
  49125.  
  49126. typedef JOYCAPSA JOYCAPS;
  49127. typedef PJOYCAPSA PJOYCAPS;
  49128. typedef NPJOYCAPSA NPJOYCAPS;
  49129. typedef LPJOYCAPSA LPJOYCAPS;
  49130.  
  49131. typedef struct tagJOYCAPS2A {
  49132.     WORD wMid;
  49133.     WORD wPid;
  49134.     CHAR szPname[32];
  49135.     UINT wXmin;
  49136.     UINT wXmax;
  49137.     UINT wYmin;
  49138.     UINT wYmax;
  49139.     UINT wZmin;
  49140.     UINT wZmax;
  49141.     UINT wNumButtons;
  49142.     UINT wPeriodMin;
  49143.     UINT wPeriodMax;
  49144.     UINT wRmin;
  49145.     UINT wRmax;
  49146.     UINT wUmin;
  49147.     UINT wUmax;
  49148.     UINT wVmin;
  49149.     UINT wVmax;
  49150.     UINT wCaps;
  49151.     UINT wMaxAxes;
  49152.     UINT wNumAxes;
  49153.     UINT wMaxButtons;
  49154.     CHAR szRegKey[32];
  49155.     CHAR szOEMVxD[260];
  49156.     GUID ManufacturerGuid;
  49157.     GUID ProductGuid;
  49158.     GUID NameGuid;
  49159. } JOYCAPS2A, *PJOYCAPS2A, *NPJOYCAPS2A, *LPJOYCAPS2A;
  49160. typedef struct tagJOYCAPS2W {
  49161.     WORD wMid;
  49162.     WORD wPid;
  49163.     WCHAR szPname[32];
  49164.     UINT wXmin;
  49165.     UINT wXmax;
  49166.     UINT wYmin;
  49167.     UINT wYmax;
  49168.     UINT wZmin;
  49169.     UINT wZmax;
  49170.     UINT wNumButtons;
  49171.     UINT wPeriodMin;
  49172.     UINT wPeriodMax;
  49173.     UINT wRmin;
  49174.     UINT wRmax;
  49175.     UINT wUmin;
  49176.     UINT wUmax;
  49177.     UINT wVmin;
  49178.     UINT wVmax;
  49179.     UINT wCaps;
  49180.     UINT wMaxAxes;
  49181.     UINT wNumAxes;
  49182.     UINT wMaxButtons;
  49183.     WCHAR szRegKey[32];
  49184.     WCHAR szOEMVxD[260];
  49185.     GUID ManufacturerGuid;
  49186.     GUID ProductGuid;
  49187.     GUID NameGuid;
  49188. } JOYCAPS2W, *PJOYCAPS2W, *NPJOYCAPS2W, *LPJOYCAPS2W;
  49189.  
  49190.  
  49191.  
  49192.  
  49193.  
  49194.  
  49195. typedef JOYCAPS2A JOYCAPS2;
  49196. typedef PJOYCAPS2A PJOYCAPS2;
  49197. typedef NPJOYCAPS2A NPJOYCAPS2;
  49198. typedef LPJOYCAPS2A LPJOYCAPS2;
  49199. # 307 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\joystickapi.h" 3
  49200. typedef struct joyinfo_tag {
  49201.     UINT wXpos;
  49202.     UINT wYpos;
  49203.     UINT wZpos;
  49204.     UINT wButtons;
  49205. } JOYINFO, *PJOYINFO, *NPJOYINFO, *LPJOYINFO;
  49206.  
  49207.  
  49208. typedef struct joyinfoex_tag {
  49209.     DWORD dwSize;
  49210.     DWORD dwFlags;
  49211.     DWORD dwXpos;
  49212.     DWORD dwYpos;
  49213.     DWORD dwZpos;
  49214.     DWORD dwRpos;
  49215.     DWORD dwUpos;
  49216.     DWORD dwVpos;
  49217.     DWORD dwButtons;
  49218.     DWORD dwButtonNumber;
  49219.     DWORD dwPOV;
  49220.     DWORD dwReserved1;
  49221.     DWORD dwReserved2;
  49222. } JOYINFOEX, *PJOYINFOEX, *NPJOYINFOEX, *LPJOYINFOEX;
  49223.  
  49224.  
  49225.  
  49226.  
  49227.  
  49228. __declspec(dllimport)
  49229. MMRESULT
  49230. __stdcall
  49231. joyGetPosEx(
  49232.          UINT uJoyID,
  49233.           LPJOYINFOEX pji
  49234.     );
  49235.  
  49236.  
  49237.  
  49238. __declspec(dllimport)
  49239. UINT
  49240. __stdcall
  49241. joyGetNumDevs(
  49242.     void
  49243.     );
  49244.  
  49245.  
  49246.  
  49247. __declspec(dllimport)
  49248. MMRESULT
  49249. __stdcall
  49250. joyGetDevCapsA(
  49251.          UINT_PTR uJoyID,
  49252.                              LPJOYCAPSA pjc,
  49253.          UINT cbjc
  49254.     );
  49255.  
  49256. __declspec(dllimport)
  49257. MMRESULT
  49258. __stdcall
  49259. joyGetDevCapsW(
  49260.          UINT_PTR uJoyID,
  49261.                              LPJOYCAPSW pjc,
  49262.          UINT cbjc
  49263.     );
  49264. # 382 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\joystickapi.h" 3
  49265. __declspec(dllimport)
  49266. MMRESULT
  49267. __stdcall
  49268. joyGetPos(
  49269.          UINT uJoyID,
  49270.           LPJOYINFO pji
  49271.     );
  49272.  
  49273.  
  49274. __declspec(dllimport)
  49275. MMRESULT
  49276. __stdcall
  49277. joyGetThreshold(
  49278.          UINT uJoyID,
  49279.           LPUINT puThreshold
  49280.     );
  49281.  
  49282.  
  49283. __declspec(dllimport)
  49284. MMRESULT
  49285. __stdcall
  49286. joyReleaseCapture(
  49287.          UINT uJoyID
  49288.     );
  49289.  
  49290.  
  49291. __declspec(dllimport)
  49292. MMRESULT
  49293. __stdcall
  49294. joySetCapture(
  49295.          HWND hwnd,
  49296.          UINT uJoyID,
  49297.          UINT uPeriod,
  49298.          BOOL fChanged
  49299.     );
  49300.  
  49301.  
  49302. __declspec(dllimport)
  49303. MMRESULT
  49304. __stdcall
  49305. joySetThreshold(
  49306.          UINT uJoyID,
  49307.          UINT uThreshold
  49308.     );
  49309.  
  49310.  
  49311.  
  49312. __declspec(dllimport)
  49313. MMRESULT
  49314. __stdcall
  49315. joyConfigChanged(
  49316.          DWORD dwFlags
  49317.     );
  49318.  
  49319.  
  49320.  
  49321.  
  49322.  
  49323.  
  49324. #pragma endregion
  49325.  
  49326.  
  49327.  
  49328.  
  49329.  
  49330.  
  49331.  
  49332.  
  49333. #pragma option pop
  49334. # 105 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  49335. # 149 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 3
  49336. #pragma endregion
  49337.  
  49338.  
  49339.  
  49340.  
  49341.  
  49342.  
  49343.  
  49344. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  49345. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  49346. #pragma warning(disable: 4103)
  49347.  
  49348. #pragma pack(pop)
  49349. # 156 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 2 3
  49350. # 168 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mmsystem.h" 3
  49351. #pragma option pop
  49352. # 227 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  49353.  
  49354. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\nb30.h" 1 3
  49355. # 15 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\nb30.h" 3
  49356. #pragma option push -b -a8 -pc -A- -w-pun
  49357. # 33 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\nb30.h" 3
  49358. #pragma region Desktop Family
  49359. # 49 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\nb30.h" 3
  49360. typedef struct _NCB {
  49361.     UCHAR ncb_command;
  49362.     UCHAR ncb_retcode;
  49363.     UCHAR ncb_lsn;
  49364.     UCHAR ncb_num;
  49365.     PUCHAR ncb_buffer;
  49366.     WORD ncb_length;
  49367.     UCHAR ncb_callname[16];
  49368.     UCHAR ncb_name[16];
  49369.     UCHAR ncb_rto;
  49370.     UCHAR ncb_sto;
  49371.     void (__stdcall *ncb_post)( struct _NCB * );
  49372.     UCHAR ncb_lana_num;
  49373.     UCHAR ncb_cmd_cplt;
  49374.  
  49375.  
  49376.  
  49377.     UCHAR ncb_reserve[10];
  49378.  
  49379.     HANDLE ncb_event;
  49380.  
  49381.  
  49382.  
  49383. } NCB, *PNCB;
  49384.  
  49385.  
  49386.  
  49387.  
  49388.  
  49389.  
  49390. typedef struct _ADAPTER_STATUS {
  49391.     UCHAR adapter_address[6];
  49392.     UCHAR rev_major;
  49393.     UCHAR reserved0;
  49394.     UCHAR adapter_type;
  49395.     UCHAR rev_minor;
  49396.     WORD duration;
  49397.     WORD frmr_recv;
  49398.     WORD frmr_xmit;
  49399.  
  49400.     WORD iframe_recv_err;
  49401.  
  49402.     WORD xmit_aborts;
  49403.     DWORD xmit_success;
  49404.     DWORD recv_success;
  49405.  
  49406.     WORD iframe_xmit_err;
  49407.  
  49408.     WORD recv_buff_unavail;
  49409.     WORD t1_timeouts;
  49410.     WORD ti_timeouts;
  49411.     DWORD reserved1;
  49412.     WORD free_ncbs;
  49413.     WORD max_cfg_ncbs;
  49414.     WORD max_ncbs;
  49415.     WORD xmit_buf_unavail;
  49416.     WORD max_dgram_size;
  49417.     WORD pending_sess;
  49418.     WORD max_cfg_sess;
  49419.     WORD max_sess;
  49420.     WORD max_sess_pkt_size;
  49421.     WORD name_count;
  49422. } ADAPTER_STATUS, *PADAPTER_STATUS;
  49423.  
  49424. typedef struct _NAME_BUFFER {
  49425.     UCHAR name[16];
  49426.     UCHAR name_num;
  49427.     UCHAR name_flags;
  49428. } NAME_BUFFER, *PNAME_BUFFER;
  49429. # 139 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\nb30.h" 3
  49430. typedef struct _SESSION_HEADER {
  49431.     UCHAR sess_name;
  49432.     UCHAR num_sess;
  49433.     UCHAR rcv_dg_outstanding;
  49434.     UCHAR rcv_any_outstanding;
  49435. } SESSION_HEADER, *PSESSION_HEADER;
  49436.  
  49437. typedef struct _SESSION_BUFFER {
  49438.     UCHAR lsn;
  49439.     UCHAR state;
  49440.     UCHAR local_name[16];
  49441.     UCHAR remote_name[16];
  49442.     UCHAR rcvs_outstanding;
  49443.     UCHAR sends_outstanding;
  49444. } SESSION_BUFFER, *PSESSION_BUFFER;
  49445. # 171 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\nb30.h" 3
  49446. typedef struct _LANA_ENUM {
  49447.     UCHAR length;
  49448.     UCHAR lana[254 +1];
  49449. } LANA_ENUM, *PLANA_ENUM;
  49450.  
  49451.  
  49452.  
  49453.  
  49454.  
  49455.  
  49456. typedef struct _FIND_NAME_HEADER {
  49457.     WORD node_count;
  49458.     UCHAR reserved;
  49459.     UCHAR unique_group;
  49460. } FIND_NAME_HEADER, *PFIND_NAME_HEADER;
  49461.  
  49462. typedef struct _FIND_NAME_BUFFER {
  49463.     UCHAR length;
  49464.     UCHAR access_control;
  49465.     UCHAR frame_control;
  49466.     UCHAR destination_addr[6];
  49467.     UCHAR source_addr[6];
  49468.     UCHAR routing_info[18];
  49469. } FIND_NAME_BUFFER, *PFIND_NAME_BUFFER;
  49470.  
  49471.  
  49472.  
  49473.  
  49474.  
  49475.  
  49476. typedef struct _ACTION_HEADER {
  49477.     ULONG transport_id;
  49478.     USHORT action_code;
  49479.     USHORT reserved;
  49480. } ACTION_HEADER, *PACTION_HEADER;
  49481. # 306 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\nb30.h" 3
  49482. UCHAR
  49483. __stdcall
  49484. Netbios(
  49485.     PNCB pncb
  49486.     );
  49487. # 322 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\nb30.h" 3
  49488. #pragma endregion
  49489. # 332 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\nb30.h" 3
  49490. #pragma option pop
  49491. # 228 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  49492.  
  49493. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 1 3
  49494. #pragma option push -b -a8 -pc -A- -w-pun
  49495. # 75 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 3
  49496. typedef void * I_RPC_HANDLE;
  49497.  
  49498.  
  49499.  
  49500.  
  49501. typedef long RPC_STATUS;
  49502. # 157 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 3
  49503. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 1 3
  49504. #pragma option push -b -a8 -pc -A- -w-pun
  49505. # 35 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49506. #pragma region Application Family or OneCore Family
  49507. # 64 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49508. typedef unsigned char * RPC_CSTR;
  49509.  
  49510.  
  49511.  
  49512.  
  49513.  
  49514. typedef unsigned short * RPC_WSTR;
  49515. typedef const unsigned short * RPC_CWSTR;
  49516.  
  49517.  
  49518. typedef I_RPC_HANDLE RPC_BINDING_HANDLE;
  49519. typedef RPC_BINDING_HANDLE handle_t;
  49520. # 84 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49521. typedef GUID UUID;
  49522.  
  49523.  
  49524.  
  49525.  
  49526.  
  49527.  
  49528. #pragma endregion
  49529.  
  49530. #pragma region Desktop Family or OneCore Family
  49531.  
  49532.  
  49533. typedef struct _RPC_BINDING_VECTOR
  49534. {
  49535.     unsigned long Count;
  49536.                         RPC_BINDING_HANDLE BindingH[1];
  49537. } RPC_BINDING_VECTOR;
  49538.  
  49539.  
  49540.  
  49541.  
  49542. typedef struct _UUID_VECTOR
  49543. {
  49544.   unsigned long Count;
  49545.                       UUID *Uuid[1];
  49546. } UUID_VECTOR;
  49547.  
  49548.  
  49549.  
  49550.  
  49551.  
  49552. #pragma endregion
  49553.  
  49554. #pragma region Application Family or OneCore Family
  49555.  
  49556.  
  49557. typedef void * RPC_IF_HANDLE;
  49558.  
  49559.  
  49560.  
  49561. typedef struct _RPC_IF_ID
  49562. {
  49563.     UUID Uuid;
  49564.     unsigned short VersMajor;
  49565.     unsigned short VersMinor;
  49566. } RPC_IF_ID;
  49567.  
  49568.  
  49569.  
  49570. #pragma endregion
  49571.  
  49572. #pragma region Desktop Family or OneCore Family
  49573. # 215 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49574. typedef struct _RPC_PROTSEQ_VECTORA
  49575. {
  49576.     unsigned int Count;
  49577.     unsigned char * Protseq[1];
  49578. } RPC_PROTSEQ_VECTORA;
  49579.  
  49580. typedef struct _RPC_PROTSEQ_VECTORW
  49581. {
  49582.     unsigned int Count;
  49583.     unsigned short * Protseq[1];
  49584. } RPC_PROTSEQ_VECTORW;
  49585. # 242 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49586. typedef struct _RPC_POLICY {
  49587.     unsigned int Length ;
  49588.     unsigned long EndpointFlags ;
  49589.     unsigned long NICFlags ;
  49590.     } RPC_POLICY, *PRPC_POLICY ;
  49591.  
  49592. typedef void __stdcall
  49593. RPC_OBJECT_INQ_FN (
  49594.          UUID * ObjectUuid,
  49595.           UUID * TypeUuid,
  49596.           RPC_STATUS * Status
  49597.     );
  49598.  
  49599.  
  49600. typedef RPC_STATUS __stdcall
  49601. RPC_IF_CALLBACK_FN (
  49602.          RPC_IF_HANDLE InterfaceUuid,
  49603.          void *Context
  49604.     ) ;
  49605.  
  49606. typedef void __stdcall
  49607. RPC_SECURITY_CALLBACK_FN (
  49608.          void *Context
  49609.     ) ;
  49610.  
  49611.  
  49612. #pragma endregion
  49613.  
  49614. #pragma region Application Family or OneCore Family
  49615.  
  49616.  
  49617.  
  49618.  
  49619. typedef struct
  49620. {
  49621.     unsigned int Count;
  49622.     unsigned long Stats[1];
  49623. } RPC_STATS_VECTOR;
  49624.  
  49625.  
  49626.  
  49627.  
  49628.  
  49629.  
  49630. typedef struct
  49631. {
  49632.   unsigned long Count;
  49633.   RPC_IF_ID * IfId[1];
  49634. } RPC_IF_ID_VECTOR;
  49635.  
  49636.  
  49637. __declspec(dllimport)
  49638.  
  49639. RPC_STATUS
  49640. __stdcall
  49641. RpcBindingCopy (
  49642.          RPC_BINDING_HANDLE SourceBinding,
  49643.           RPC_BINDING_HANDLE * DestinationBinding
  49644.     );
  49645.  
  49646.  
  49647. __declspec(dllimport)
  49648. RPC_STATUS
  49649. __stdcall
  49650. RpcBindingFree (
  49651.             RPC_BINDING_HANDLE * Binding
  49652.     );
  49653.  
  49654.  
  49655. __declspec(dllimport)
  49656.  
  49657. RPC_STATUS
  49658. __stdcall
  49659. RpcBindingSetOption (
  49660.          RPC_BINDING_HANDLE hBinding,
  49661.          unsigned long option,
  49662.          ULONG_PTR optionValue
  49663.     );
  49664.  
  49665.  
  49666. __declspec(dllimport)
  49667.  
  49668. RPC_STATUS
  49669. __stdcall
  49670. RpcBindingInqOption (
  49671.           RPC_BINDING_HANDLE hBinding,
  49672.           unsigned long option,
  49673.           ULONG_PTR *pOptionValue
  49674.     );
  49675.  
  49676.  
  49677.  
  49678.  
  49679.  
  49680.  
  49681.  
  49682. __declspec(dllimport)
  49683.  
  49684. RPC_STATUS
  49685. __stdcall
  49686. RpcBindingFromStringBindingA (
  49687.          RPC_CSTR StringBinding,
  49688.           RPC_BINDING_HANDLE * Binding
  49689.     );
  49690.  
  49691. __declspec(dllimport)
  49692.  
  49693. RPC_STATUS
  49694. __stdcall
  49695. RpcBindingFromStringBindingW (
  49696.          RPC_WSTR StringBinding,
  49697.           RPC_BINDING_HANDLE * Binding
  49698.     );
  49699. # 376 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49700. #pragma endregion
  49701.  
  49702. #pragma region Desktop Family or OneCore Family
  49703.  
  49704.  
  49705.  
  49706. __declspec(dllimport)
  49707. RPC_STATUS
  49708. __stdcall
  49709. RpcSsGetContextBinding (
  49710.          void *ContextHandle,
  49711.           RPC_BINDING_HANDLE * Binding
  49712.     );
  49713.  
  49714.  
  49715. #pragma endregion
  49716.  
  49717. #pragma region Application Family or OneCore Family
  49718.  
  49719.  
  49720.  
  49721. __declspec(dllimport)
  49722.  
  49723. RPC_STATUS
  49724. __stdcall
  49725. RpcBindingInqObject (
  49726.          RPC_BINDING_HANDLE Binding,
  49727.           UUID * ObjectUuid
  49728.     );
  49729.  
  49730.  
  49731. __declspec(dllimport)
  49732.  
  49733. RPC_STATUS
  49734. __stdcall
  49735. RpcBindingReset (
  49736.          RPC_BINDING_HANDLE Binding
  49737.     );
  49738.  
  49739.  
  49740.  
  49741.  
  49742.  
  49743. __declspec(dllimport)
  49744.  
  49745. RPC_STATUS
  49746. __stdcall
  49747. RpcBindingSetObject (
  49748.          RPC_BINDING_HANDLE Binding,
  49749.          UUID * ObjectUuid
  49750.     );
  49751.  
  49752.  
  49753. #pragma endregion
  49754.  
  49755. #pragma region Desktop Family or OneCore Family
  49756.  
  49757.  
  49758.  
  49759. __declspec(dllimport)
  49760.  
  49761. RPC_STATUS
  49762. __stdcall
  49763. RpcMgmtInqDefaultProtectLevel (
  49764.           unsigned long AuthnSvc,
  49765.           unsigned long *AuthnLevel
  49766.     );
  49767.  
  49768.  
  49769. #pragma endregion
  49770.  
  49771. #pragma region Application Family or OneCore Family
  49772.  
  49773.  
  49774.  
  49775.  
  49776.  
  49777.  
  49778. __declspec(dllimport)
  49779.  
  49780. RPC_STATUS
  49781. __stdcall
  49782. RpcBindingToStringBindingA (
  49783.          RPC_BINDING_HANDLE Binding,
  49784.              RPC_CSTR * StringBinding
  49785.     );
  49786.  
  49787. __declspec(dllimport)
  49788.  
  49789. RPC_STATUS
  49790. __stdcall
  49791. RpcBindingToStringBindingW (
  49792.          RPC_BINDING_HANDLE Binding,
  49793.              RPC_WSTR * StringBinding
  49794.     );
  49795. # 491 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49796. #pragma endregion
  49797.  
  49798. #pragma region Desktop Family or OneCore Family
  49799.  
  49800.  
  49801.  
  49802. __declspec(dllimport)
  49803. RPC_STATUS
  49804. __stdcall
  49805. RpcBindingVectorFree (
  49806.             RPC_BINDING_VECTOR * * BindingVector
  49807.     );
  49808.  
  49809.  
  49810.  
  49811.  
  49812.  
  49813.  
  49814.  
  49815.  
  49816. #pragma endregion
  49817.  
  49818. #pragma region Application Family or OneCore Family
  49819.  
  49820.  
  49821. __declspec(dllimport)
  49822.  
  49823. RPC_STATUS
  49824. __stdcall
  49825. RpcStringBindingComposeA (
  49826.              RPC_CSTR ObjUuid,
  49827.              RPC_CSTR ProtSeq,
  49828.              RPC_CSTR NetworkAddr,
  49829.              RPC_CSTR Endpoint,
  49830.              RPC_CSTR Options,
  49831.                  RPC_CSTR * StringBinding
  49832.     );
  49833.  
  49834. __declspec(dllimport)
  49835.  
  49836. RPC_STATUS
  49837. __stdcall
  49838. RpcStringBindingComposeW (
  49839.              RPC_WSTR ObjUuid,
  49840.              RPC_WSTR ProtSeq,
  49841.              RPC_WSTR NetworkAddr,
  49842.              RPC_WSTR Endpoint,
  49843.              RPC_WSTR Options,
  49844.                  RPC_WSTR * StringBinding
  49845.     );
  49846.  
  49847.  
  49848.  
  49849.  
  49850.  
  49851.  
  49852.  
  49853.  
  49854. #pragma endregion
  49855.  
  49856. #pragma region Desktop Family or OneCore Family
  49857. # 575 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49858. #pragma endregion
  49859.  
  49860. #pragma region Application Family or OneCore Family
  49861.  
  49862.  
  49863. __declspec(dllimport)
  49864.  
  49865. RPC_STATUS
  49866. __stdcall
  49867. RpcStringBindingParseA (
  49868.          RPC_CSTR StringBinding,
  49869.                  RPC_CSTR * ObjUuid,
  49870.                  RPC_CSTR * Protseq,
  49871.                  RPC_CSTR * NetworkAddr,
  49872.                  RPC_CSTR * Endpoint,
  49873.                  RPC_CSTR * NetworkOptions
  49874.     );
  49875.  
  49876. __declspec(dllimport)
  49877.  
  49878. RPC_STATUS
  49879. __stdcall
  49880. RpcStringBindingParseW (
  49881.          RPC_WSTR StringBinding,
  49882.                  RPC_WSTR * ObjUuid,
  49883.                  RPC_WSTR * Protseq,
  49884.                  RPC_WSTR * NetworkAddr,
  49885.                  RPC_WSTR * Endpoint,
  49886.                  RPC_WSTR * NetworkOptions
  49887.     );
  49888.  
  49889.  
  49890.  
  49891.  
  49892.  
  49893.  
  49894.  
  49895.  
  49896. #pragma endregion
  49897.  
  49898. #pragma region Desktop Family or OneCore Family
  49899. # 641 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49900. #pragma endregion
  49901.  
  49902. #pragma region Application Family or OneCore Family
  49903.  
  49904.  
  49905. __declspec(dllimport)
  49906. RPC_STATUS
  49907. __stdcall
  49908. RpcStringFreeA (
  49909.             RPC_CSTR * String
  49910.     );
  49911.  
  49912. __declspec(dllimport)
  49913. RPC_STATUS
  49914. __stdcall
  49915. RpcStringFreeW (
  49916.             RPC_WSTR * String
  49917.     );
  49918.  
  49919.  
  49920.  
  49921.  
  49922.  
  49923.  
  49924.  
  49925.  
  49926. #pragma endregion
  49927.  
  49928. #pragma region Desktop Family or OneCore Family
  49929. # 685 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49930. __declspec(dllimport)
  49931.  
  49932. RPC_STATUS
  49933. __stdcall
  49934. RpcIfInqId (
  49935.          RPC_IF_HANDLE RpcIfHandle,
  49936.           RPC_IF_ID * RpcIfId
  49937.     );
  49938.  
  49939.  
  49940.  
  49941.  
  49942.  
  49943.  
  49944. #pragma endregion
  49945.  
  49946. #pragma region Application Family or OneCore Family
  49947.  
  49948.  
  49949. __declspec(dllimport)
  49950.  
  49951. RPC_STATUS
  49952. __stdcall
  49953. RpcNetworkIsProtseqValidA (
  49954.          RPC_CSTR Protseq
  49955.     );
  49956.  
  49957. __declspec(dllimport)
  49958.  
  49959. RPC_STATUS
  49960. __stdcall
  49961. RpcNetworkIsProtseqValidW (
  49962.          RPC_WSTR Protseq
  49963.     );
  49964.  
  49965.  
  49966.  
  49967.  
  49968.  
  49969.  
  49970.  
  49971.  
  49972. #pragma endregion
  49973.  
  49974. #pragma region Desktop Family or OneCore Family
  49975. # 744 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  49976. __declspec(dllimport)
  49977.  
  49978. RPC_STATUS
  49979. __stdcall
  49980. RpcMgmtInqComTimeout (
  49981.          RPC_BINDING_HANDLE Binding,
  49982.           unsigned int * Timeout
  49983.     );
  49984.  
  49985.  
  49986. #pragma endregion
  49987.  
  49988. #pragma region Application Family or OneCore Family
  49989.  
  49990.  
  49991.  
  49992. __declspec(dllimport)
  49993.  
  49994. RPC_STATUS
  49995. __stdcall
  49996. RpcMgmtSetComTimeout (
  49997.          RPC_BINDING_HANDLE Binding,
  49998.          unsigned int Timeout
  49999.     );
  50000.  
  50001.  
  50002. __declspec(dllimport)
  50003.  
  50004. RPC_STATUS
  50005. __stdcall
  50006. RpcMgmtSetCancelTimeout(
  50007.          long Timeout
  50008.     );
  50009.  
  50010.  
  50011. #pragma endregion
  50012.  
  50013. #pragma region Desktop Family or OneCore Family
  50014.  
  50015.  
  50016.  
  50017.  
  50018.  
  50019.  
  50020. __declspec(dllimport)
  50021.  
  50022. RPC_STATUS
  50023. __stdcall
  50024. RpcNetworkInqProtseqsA (
  50025.              RPC_PROTSEQ_VECTORA * * ProtseqVector
  50026.     );
  50027.  
  50028. __declspec(dllimport)
  50029.  
  50030. RPC_STATUS
  50031. __stdcall
  50032. RpcNetworkInqProtseqsW (
  50033.              RPC_PROTSEQ_VECTORW * * ProtseqVector
  50034.     );
  50035. # 822 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50036. __declspec(dllimport)
  50037.  
  50038. RPC_STATUS
  50039. __stdcall
  50040. RpcObjectInqType (
  50041.          UUID * ObjUuid,
  50042.                        UUID * TypeUuid
  50043.     );
  50044.  
  50045.  
  50046. __declspec(dllimport)
  50047.  
  50048. RPC_STATUS
  50049. __stdcall
  50050. RpcObjectSetInqFn (
  50051.          RPC_OBJECT_INQ_FN * InquiryFn
  50052.     );
  50053.  
  50054.  
  50055. __declspec(dllimport)
  50056.  
  50057. RPC_STATUS
  50058. __stdcall
  50059. RpcObjectSetType (
  50060.          UUID * ObjUuid,
  50061.                       UUID * TypeUuid
  50062.     );
  50063.  
  50064.  
  50065.  
  50066.  
  50067.  
  50068. __declspec(dllimport)
  50069. RPC_STATUS
  50070. __stdcall
  50071. RpcProtseqVectorFreeA (
  50072.             RPC_PROTSEQ_VECTORA * * ProtseqVector
  50073.     );
  50074.  
  50075. __declspec(dllimport)
  50076. RPC_STATUS
  50077. __stdcall
  50078. RpcProtseqVectorFreeW (
  50079.             RPC_PROTSEQ_VECTORW * * ProtseqVector
  50080.     );
  50081. # 886 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50082. __declspec(dllimport)
  50083.  
  50084. RPC_STATUS
  50085. __stdcall
  50086. RpcServerInqBindings (
  50087.              RPC_BINDING_VECTOR * * BindingVector
  50088.     );
  50089.  
  50090.  
  50091. __declspec(dllimport)
  50092.  
  50093. RPC_STATUS
  50094. __stdcall
  50095. RpcServerInqBindingsEx (
  50096.              void * SecurityDescriptor,
  50097.              RPC_BINDING_VECTOR * * BindingVector
  50098.     );
  50099.  
  50100.  
  50101. __declspec(dllimport)
  50102.  
  50103. RPC_STATUS
  50104. __stdcall
  50105. RpcServerInqIf (
  50106.          RPC_IF_HANDLE IfSpec,
  50107.              UUID * MgrTypeUuid,
  50108.              void * * MgrEpv
  50109.     );
  50110.  
  50111.  
  50112. __declspec(dllimport)
  50113.  
  50114. RPC_STATUS
  50115. __stdcall
  50116. RpcServerListen (
  50117.          unsigned int MinimumCallThreads,
  50118.          unsigned int MaxCalls,
  50119.          unsigned int DontWait
  50120.     );
  50121.  
  50122.  
  50123. __declspec(dllimport)
  50124.  
  50125. RPC_STATUS
  50126. __stdcall
  50127. RpcServerRegisterIf (
  50128.          RPC_IF_HANDLE IfSpec,
  50129.              UUID * MgrTypeUuid,
  50130.              void * MgrEpv
  50131.     );
  50132.  
  50133.  
  50134. __declspec(dllimport)
  50135.  
  50136. RPC_STATUS
  50137. __stdcall
  50138. RpcServerRegisterIfEx (
  50139.          RPC_IF_HANDLE IfSpec,
  50140.              UUID * MgrTypeUuid,
  50141.              void * MgrEpv,
  50142.          unsigned int Flags,
  50143.          unsigned int MaxCalls,
  50144.              RPC_IF_CALLBACK_FN *IfCallback
  50145.     );
  50146.  
  50147.  
  50148. __declspec(dllimport)
  50149. RPC_STATUS
  50150. __stdcall
  50151. RpcServerRegisterIf2 (
  50152.          RPC_IF_HANDLE IfSpec,
  50153.              UUID * MgrTypeUuid,
  50154.              void * MgrEpv,
  50155.          unsigned int Flags,
  50156.          unsigned int MaxCalls,
  50157.          unsigned int MaxRpcSize,
  50158.              RPC_IF_CALLBACK_FN *IfCallbackFn
  50159.     );
  50160.  
  50161.  
  50162.  
  50163. __declspec(dllimport)
  50164. RPC_STATUS
  50165. __stdcall
  50166. RpcServerRegisterIf3 (
  50167.          RPC_IF_HANDLE IfSpec,
  50168.              UUID * MgrTypeUuid,
  50169.              void * MgrEpv,
  50170.          unsigned int Flags,
  50171.          unsigned int MaxCalls,
  50172.          unsigned int MaxRpcSize,
  50173.              RPC_IF_CALLBACK_FN *IfCallback,
  50174.              void * SecurityDescriptor
  50175.     );
  50176.  
  50177.  
  50178.  
  50179. __declspec(dllimport)
  50180.  
  50181. RPC_STATUS
  50182. __stdcall
  50183. RpcServerUnregisterIf (
  50184.              RPC_IF_HANDLE IfSpec,
  50185.              UUID * MgrTypeUuid,
  50186.          unsigned int WaitForCallsToComplete
  50187.     );
  50188.  
  50189.  
  50190.  
  50191. __declspec(dllimport)
  50192. RPC_STATUS
  50193. __stdcall
  50194. RpcServerUnregisterIfEx (
  50195.              RPC_IF_HANDLE IfSpec,
  50196.              UUID * MgrTypeUuid,
  50197.          int RundownContextHandles
  50198.     );
  50199.  
  50200.  
  50201.  
  50202. __declspec(dllimport)
  50203.  
  50204. RPC_STATUS
  50205. __stdcall
  50206. RpcServerUseAllProtseqs (
  50207.          unsigned int MaxCalls,
  50208.              void * SecurityDescriptor
  50209.     );
  50210.  
  50211.  
  50212. __declspec(dllimport)
  50213.  
  50214. RPC_STATUS
  50215. __stdcall
  50216. RpcServerUseAllProtseqsEx (
  50217.          unsigned int MaxCalls,
  50218.              void * SecurityDescriptor,
  50219.          PRPC_POLICY Policy
  50220.     );
  50221.  
  50222.  
  50223. __declspec(dllimport)
  50224.  
  50225. RPC_STATUS
  50226. __stdcall
  50227. RpcServerUseAllProtseqsIf (
  50228.          unsigned int MaxCalls,
  50229.          RPC_IF_HANDLE IfSpec,
  50230.              void * SecurityDescriptor
  50231.     );
  50232.  
  50233.  
  50234. __declspec(dllimport)
  50235.  
  50236. RPC_STATUS
  50237. __stdcall
  50238. RpcServerUseAllProtseqsIfEx (
  50239.          unsigned int MaxCalls,
  50240.          RPC_IF_HANDLE IfSpec,
  50241.              void * SecurityDescriptor,
  50242.          PRPC_POLICY Policy
  50243.     );
  50244.  
  50245.  
  50246.  
  50247.  
  50248.  
  50249.  
  50250. __declspec(dllimport)
  50251.  
  50252. RPC_STATUS
  50253. __stdcall
  50254. RpcServerUseProtseqA (
  50255.          RPC_CSTR Protseq,
  50256.          unsigned int MaxCalls,
  50257.              void * SecurityDescriptor
  50258.     );
  50259.  
  50260. __declspec(dllimport)
  50261.  
  50262. RPC_STATUS
  50263. __stdcall
  50264. RpcServerUseProtseqExA (
  50265.          RPC_CSTR Protseq,
  50266.          unsigned int MaxCalls,
  50267.              void * SecurityDescriptor,
  50268.          PRPC_POLICY Policy
  50269.     );
  50270.  
  50271. __declspec(dllimport)
  50272.  
  50273. RPC_STATUS
  50274. __stdcall
  50275. RpcServerUseProtseqW (
  50276.          RPC_WSTR Protseq,
  50277.          unsigned int MaxCalls,
  50278.              void * SecurityDescriptor
  50279.     );
  50280.  
  50281. __declspec(dllimport)
  50282.  
  50283. RPC_STATUS
  50284. __stdcall
  50285. RpcServerUseProtseqExW (
  50286.          RPC_WSTR Protseq,
  50287.          unsigned int MaxCalls,
  50288.              void * SecurityDescriptor,
  50289.          PRPC_POLICY Policy
  50290.     );
  50291. # 1131 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50292. __declspec(dllimport)
  50293.  
  50294. RPC_STATUS
  50295. __stdcall
  50296. RpcServerUseProtseqEpA (
  50297.          RPC_CSTR Protseq,
  50298.          unsigned int MaxCalls,
  50299.          RPC_CSTR Endpoint,
  50300.              void * SecurityDescriptor
  50301.     );
  50302.  
  50303. __declspec(dllimport)
  50304.  
  50305. RPC_STATUS
  50306. __stdcall
  50307. RpcServerUseProtseqEpExA (
  50308.          RPC_CSTR Protseq,
  50309.          unsigned int MaxCalls,
  50310.          RPC_CSTR Endpoint,
  50311.              void * SecurityDescriptor,
  50312.          PRPC_POLICY Policy
  50313.     );
  50314.  
  50315. __declspec(dllimport)
  50316.  
  50317. RPC_STATUS
  50318. __stdcall
  50319. RpcServerUseProtseqEpW (
  50320.          RPC_WSTR Protseq,
  50321.          unsigned int MaxCalls,
  50322.          RPC_WSTR Endpoint,
  50323.              void * SecurityDescriptor
  50324.     );
  50325.  
  50326. __declspec(dllimport)
  50327.  
  50328. RPC_STATUS
  50329. __stdcall
  50330. RpcServerUseProtseqEpExW (
  50331.          RPC_WSTR Protseq,
  50332.          unsigned int MaxCalls,
  50333.          RPC_WSTR Endpoint,
  50334.              void * SecurityDescriptor,
  50335.          PRPC_POLICY Policy
  50336.     );
  50337. # 1214 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50338. __declspec(dllimport)
  50339.  
  50340. RPC_STATUS
  50341. __stdcall
  50342. RpcServerUseProtseqIfA (
  50343.          RPC_CSTR Protseq,
  50344.          unsigned int MaxCalls,
  50345.          RPC_IF_HANDLE IfSpec,
  50346.              void * SecurityDescriptor
  50347.     );
  50348.  
  50349. __declspec(dllimport)
  50350.  
  50351. RPC_STATUS
  50352. __stdcall
  50353. RpcServerUseProtseqIfExA (
  50354.          RPC_CSTR Protseq,
  50355.          unsigned int MaxCalls,
  50356.          RPC_IF_HANDLE IfSpec,
  50357.              void * SecurityDescriptor,
  50358.          PRPC_POLICY Policy
  50359.     );
  50360.  
  50361. __declspec(dllimport)
  50362.  
  50363. RPC_STATUS
  50364. __stdcall
  50365. RpcServerUseProtseqIfW (
  50366.          RPC_WSTR Protseq,
  50367.          unsigned int MaxCalls,
  50368.          RPC_IF_HANDLE IfSpec,
  50369.              void * SecurityDescriptor
  50370.     );
  50371.  
  50372. __declspec(dllimport)
  50373.  
  50374. RPC_STATUS
  50375. __stdcall
  50376. RpcServerUseProtseqIfExW (
  50377.          RPC_WSTR Protseq,
  50378.          unsigned int MaxCalls,
  50379.          RPC_IF_HANDLE IfSpec,
  50380.              void * SecurityDescriptor,
  50381.          PRPC_POLICY Policy
  50382.     );
  50383. # 1293 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50384. __declspec(dllimport)
  50385. void
  50386. __stdcall
  50387. RpcServerYield (
  50388.     void
  50389.     );
  50390.  
  50391.  
  50392. __declspec(dllimport)
  50393. RPC_STATUS
  50394. __stdcall
  50395. RpcMgmtStatsVectorFree (
  50396.             RPC_STATS_VECTOR ** StatsVector
  50397.     );
  50398.  
  50399.  
  50400. #pragma endregion
  50401.  
  50402. #pragma region Application Family or OneCore Family
  50403.  
  50404.  
  50405.  
  50406. __declspec(dllimport)
  50407.  
  50408. RPC_STATUS
  50409. __stdcall
  50410. RpcMgmtInqStats (
  50411.              RPC_BINDING_HANDLE Binding,
  50412.              RPC_STATS_VECTOR ** Statistics
  50413.     );
  50414.  
  50415.  
  50416. __declspec(dllimport)
  50417.  
  50418. RPC_STATUS
  50419. __stdcall
  50420. RpcMgmtIsServerListening (
  50421.              RPC_BINDING_HANDLE Binding
  50422.     );
  50423.  
  50424.  
  50425. #pragma endregion
  50426.  
  50427. #pragma region Desktop Family or OneCore Family
  50428.  
  50429.  
  50430.  
  50431. __declspec(dllimport)
  50432.  
  50433. RPC_STATUS
  50434. __stdcall
  50435. RpcMgmtStopServerListening (
  50436.              RPC_BINDING_HANDLE Binding
  50437.     );
  50438.  
  50439.  
  50440. __declspec(dllimport)
  50441.  
  50442. RPC_STATUS
  50443. __stdcall
  50444. RpcMgmtWaitServerListen (
  50445.     void
  50446.     );
  50447.  
  50448.  
  50449. __declspec(dllimport)
  50450.  
  50451. RPC_STATUS
  50452. __stdcall
  50453. RpcMgmtSetServerStackSize (
  50454.          unsigned long ThreadStackSize
  50455.     );
  50456.  
  50457.  
  50458. __declspec(dllimport)
  50459. void
  50460. __stdcall
  50461. RpcSsDontSerializeContext (
  50462.     void
  50463.     );
  50464.  
  50465.  
  50466. __declspec(dllimport)
  50467.  
  50468. RPC_STATUS
  50469. __stdcall
  50470. RpcMgmtEnableIdleCleanup (
  50471.     void
  50472.     );
  50473.  
  50474. __declspec(dllimport)
  50475.  
  50476. RPC_STATUS
  50477. __stdcall
  50478. RpcMgmtInqIfIds (
  50479.              RPC_BINDING_HANDLE Binding,
  50480.              RPC_IF_ID_VECTOR * * IfIdVector
  50481.     );
  50482.  
  50483. __declspec(dllimport)
  50484. RPC_STATUS
  50485. __stdcall
  50486. RpcIfIdVectorFree (
  50487.             RPC_IF_ID_VECTOR * * IfIdVector
  50488.     );
  50489.  
  50490.  
  50491.  
  50492.  
  50493. #pragma endregion
  50494.  
  50495. #pragma region Application Family or OneCore Family
  50496.  
  50497.  
  50498. __declspec(dllimport)
  50499.  
  50500. RPC_STATUS
  50501. __stdcall
  50502. RpcMgmtInqServerPrincNameA (
  50503.              RPC_BINDING_HANDLE Binding,
  50504.          unsigned long AuthnSvc,
  50505.              RPC_CSTR * ServerPrincName
  50506.     );
  50507.  
  50508. __declspec(dllimport)
  50509.  
  50510. RPC_STATUS
  50511. __stdcall
  50512. RpcMgmtInqServerPrincNameW (
  50513.              RPC_BINDING_HANDLE Binding,
  50514.          unsigned long AuthnSvc,
  50515.              RPC_WSTR * ServerPrincName
  50516.     );
  50517.  
  50518.  
  50519.  
  50520.  
  50521.  
  50522.  
  50523.  
  50524.  
  50525. #pragma endregion
  50526.  
  50527. #pragma region Desktop Family or OneCore Family
  50528. # 1454 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50529. __declspec(dllimport)
  50530.  
  50531. RPC_STATUS
  50532. __stdcall
  50533. RpcServerInqDefaultPrincNameA (
  50534.          unsigned long AuthnSvc,
  50535.              RPC_CSTR * PrincName
  50536.     );
  50537.  
  50538. __declspec(dllimport)
  50539.  
  50540. RPC_STATUS
  50541. __stdcall
  50542. RpcServerInqDefaultPrincNameW (
  50543.          unsigned long AuthnSvc,
  50544.              RPC_WSTR * PrincName
  50545.     );
  50546. # 1491 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50547. #pragma endregion
  50548.  
  50549. #pragma region Application Family or OneCore Family
  50550.  
  50551.  
  50552.  
  50553. __declspec(dllimport)
  50554.  
  50555. RPC_STATUS
  50556. __stdcall
  50557. RpcEpResolveBinding (
  50558.          RPC_BINDING_HANDLE Binding,
  50559.          RPC_IF_HANDLE IfSpec
  50560.     );
  50561.  
  50562.  
  50563. #pragma endregion
  50564.  
  50565. #pragma region Desktop Family or OneCore Family
  50566.  
  50567.  
  50568.  
  50569.  
  50570.  
  50571.  
  50572. __declspec(dllimport)
  50573.  
  50574. RPC_STATUS
  50575. __stdcall
  50576. RpcNsBindingInqEntryNameA (
  50577.          RPC_BINDING_HANDLE Binding,
  50578.          unsigned long EntryNameSyntax,
  50579.              RPC_CSTR * EntryName
  50580.     );
  50581.  
  50582. __declspec(dllimport)
  50583.  
  50584. RPC_STATUS
  50585. __stdcall
  50586. RpcNsBindingInqEntryNameW (
  50587.          RPC_BINDING_HANDLE Binding,
  50588.          unsigned long EntryNameSyntax,
  50589.              RPC_WSTR * EntryName
  50590.     );
  50591. # 1556 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50592. #pragma endregion
  50593.  
  50594. #pragma region Application Family or OneCore Family
  50595.  
  50596.  
  50597. typedef void * RPC_AUTH_IDENTITY_HANDLE;
  50598. typedef void * RPC_AUTHZ_HANDLE;
  50599. # 1636 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50600. typedef struct _RPC_SECURITY_QOS {
  50601.   unsigned long Version;
  50602.   unsigned long Capabilities;
  50603.   unsigned long IdentityTracking;
  50604.   unsigned long ImpersonationType;
  50605. } RPC_SECURITY_QOS, *PRPC_SECURITY_QOS;
  50606.  
  50607.  
  50608.  
  50609.  
  50610.  
  50611.  
  50612.  
  50613. typedef struct _SEC_WINNT_AUTH_IDENTITY_W {
  50614.                                                    unsigned short *User;
  50615.   unsigned long UserLength;
  50616.                                                      unsigned short *Domain;
  50617.   unsigned long DomainLength;
  50618.                                                        unsigned short *Password;
  50619.   unsigned long PasswordLength;
  50620.   unsigned long Flags;
  50621. } SEC_WINNT_AUTH_IDENTITY_W, *PSEC_WINNT_AUTH_IDENTITY_W;
  50622.  
  50623.  
  50624.  
  50625.  
  50626.  
  50627. typedef struct _SEC_WINNT_AUTH_IDENTITY_A {
  50628.                              unsigned char *User;
  50629.   unsigned long UserLength;
  50630.                                unsigned char *Domain;
  50631.   unsigned long DomainLength;
  50632.                                  unsigned char *Password;
  50633.   unsigned long PasswordLength;
  50634.   unsigned long Flags;
  50635. } SEC_WINNT_AUTH_IDENTITY_A, *PSEC_WINNT_AUTH_IDENTITY_A;
  50636. # 1714 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50637. typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_W
  50638. {
  50639.     SEC_WINNT_AUTH_IDENTITY_W *TransportCredentials;
  50640.     unsigned long Flags;
  50641.     unsigned long AuthenticationTarget;
  50642.     unsigned long NumberOfAuthnSchemes;
  50643.     unsigned long *AuthnSchemes;
  50644.     unsigned short *ServerCertificateSubject;
  50645. } RPC_HTTP_TRANSPORT_CREDENTIALS_W, *PRPC_HTTP_TRANSPORT_CREDENTIALS_W;
  50646.  
  50647. typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_A
  50648. {
  50649.     SEC_WINNT_AUTH_IDENTITY_A *TransportCredentials;
  50650.     unsigned long Flags;
  50651.     unsigned long AuthenticationTarget;
  50652.     unsigned long NumberOfAuthnSchemes;
  50653.     unsigned long *AuthnSchemes;
  50654.     unsigned char *ServerCertificateSubject;
  50655. } RPC_HTTP_TRANSPORT_CREDENTIALS_A, *PRPC_HTTP_TRANSPORT_CREDENTIALS_A;
  50656.  
  50657.  
  50658.  
  50659. typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_V2_W
  50660. {
  50661.     SEC_WINNT_AUTH_IDENTITY_W *TransportCredentials;
  50662.     unsigned long Flags;
  50663.     unsigned long AuthenticationTarget;
  50664.     unsigned long NumberOfAuthnSchemes;
  50665.                                        unsigned long *AuthnSchemes;
  50666.     unsigned short *ServerCertificateSubject;
  50667.     SEC_WINNT_AUTH_IDENTITY_W *ProxyCredentials;
  50668.     unsigned long NumberOfProxyAuthnSchemes;
  50669.                                             unsigned long *ProxyAuthnSchemes;
  50670. } RPC_HTTP_TRANSPORT_CREDENTIALS_V2_W, *PRPC_HTTP_TRANSPORT_CREDENTIALS_V2_W;
  50671.  
  50672. typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_V2_A
  50673. {
  50674.     SEC_WINNT_AUTH_IDENTITY_A *TransportCredentials;
  50675.     unsigned long Flags;
  50676.     unsigned long AuthenticationTarget;
  50677.     unsigned long NumberOfAuthnSchemes;
  50678.     unsigned long *AuthnSchemes;
  50679.     unsigned char *ServerCertificateSubject;
  50680.     SEC_WINNT_AUTH_IDENTITY_A *ProxyCredentials;
  50681.     unsigned long NumberOfProxyAuthnSchemes;
  50682.     unsigned long *ProxyAuthnSchemes;
  50683. } RPC_HTTP_TRANSPORT_CREDENTIALS_V2_A, *PRPC_HTTP_TRANSPORT_CREDENTIALS_V2_A;
  50684.  
  50685.  
  50686.  
  50687.  
  50688.  
  50689. typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_V3_W
  50690. {
  50691.     RPC_AUTH_IDENTITY_HANDLE TransportCredentials;
  50692.     unsigned long Flags;
  50693.     unsigned long AuthenticationTarget;
  50694.     unsigned long NumberOfAuthnSchemes;
  50695.                                        unsigned long *AuthnSchemes;
  50696.     unsigned short *ServerCertificateSubject;
  50697.     RPC_AUTH_IDENTITY_HANDLE ProxyCredentials;
  50698.     unsigned long NumberOfProxyAuthnSchemes;
  50699.                                             unsigned long *ProxyAuthnSchemes;
  50700. } RPC_HTTP_TRANSPORT_CREDENTIALS_V3_W, *PRPC_HTTP_TRANSPORT_CREDENTIALS_V3_W;
  50701.  
  50702. typedef struct _RPC_HTTP_TRANSPORT_CREDENTIALS_V3_A
  50703. {
  50704.     RPC_AUTH_IDENTITY_HANDLE TransportCredentials;
  50705.     unsigned long Flags;
  50706.     unsigned long AuthenticationTarget;
  50707.     unsigned long NumberOfAuthnSchemes;
  50708.                                        unsigned long *AuthnSchemes;
  50709.     unsigned char *ServerCertificateSubject;
  50710.     RPC_AUTH_IDENTITY_HANDLE ProxyCredentials;
  50711.     unsigned long NumberOfProxyAuthnSchemes;
  50712.                                             unsigned long *ProxyAuthnSchemes;
  50713. } RPC_HTTP_TRANSPORT_CREDENTIALS_V3_A, *PRPC_HTTP_TRANSPORT_CREDENTIALS_V3_A;
  50714.  
  50715.  
  50716.  
  50717. typedef struct _RPC_SECURITY_QOS_V2_W {
  50718.   unsigned long Version;
  50719.   unsigned long Capabilities;
  50720.   unsigned long IdentityTracking;
  50721.   unsigned long ImpersonationType;
  50722.   unsigned long AdditionalSecurityInfoType;
  50723.   union
  50724.       {
  50725.       RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials;
  50726.       } u;
  50727. } RPC_SECURITY_QOS_V2_W, *PRPC_SECURITY_QOS_V2_W;
  50728.  
  50729. typedef struct _RPC_SECURITY_QOS_V2_A {
  50730.   unsigned long Version;
  50731.   unsigned long Capabilities;
  50732.   unsigned long IdentityTracking;
  50733.   unsigned long ImpersonationType;
  50734.   unsigned long AdditionalSecurityInfoType;
  50735.   union
  50736.       {
  50737.       RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials;
  50738.       } u;
  50739. } RPC_SECURITY_QOS_V2_A, *PRPC_SECURITY_QOS_V2_A;
  50740.  
  50741.  
  50742.  
  50743.  
  50744. typedef struct _RPC_SECURITY_QOS_V3_W {
  50745.   unsigned long Version;
  50746.   unsigned long Capabilities;
  50747.   unsigned long IdentityTracking;
  50748.   unsigned long ImpersonationType;
  50749.   unsigned long AdditionalSecurityInfoType;
  50750.   union
  50751.       {
  50752.       RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials;
  50753.       } u;
  50754.   void *Sid;
  50755. } RPC_SECURITY_QOS_V3_W, *PRPC_SECURITY_QOS_V3_W;
  50756.  
  50757. typedef struct _RPC_SECURITY_QOS_V3_A {
  50758.   unsigned long Version;
  50759.   unsigned long Capabilities;
  50760.   unsigned long IdentityTracking;
  50761.   unsigned long ImpersonationType;
  50762.   unsigned long AdditionalSecurityInfoType;
  50763.   union
  50764.       {
  50765.       RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials;
  50766.       } u;
  50767.   void *Sid;
  50768. } RPC_SECURITY_QOS_V3_A, *PRPC_SECURITY_QOS_V3_A;
  50769.  
  50770.  
  50771.  
  50772.  
  50773.  
  50774.  
  50775. typedef struct _RPC_SECURITY_QOS_V4_W {
  50776.   unsigned long Version;
  50777.   unsigned long Capabilities;
  50778.   unsigned long IdentityTracking;
  50779.   unsigned long ImpersonationType;
  50780.   unsigned long AdditionalSecurityInfoType;
  50781.   union
  50782.       {
  50783.       RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials;
  50784.       } u;
  50785.   void *Sid;
  50786.   unsigned int EffectiveOnly;
  50787. } RPC_SECURITY_QOS_V4_W, *PRPC_SECURITY_QOS_V4_W;
  50788.  
  50789. typedef struct _RPC_SECURITY_QOS_V4_A {
  50790.   unsigned long Version;
  50791.   unsigned long Capabilities;
  50792.   unsigned long IdentityTracking;
  50793.   unsigned long ImpersonationType;
  50794.   unsigned long AdditionalSecurityInfoType;
  50795.   union
  50796.       {
  50797.       RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials;
  50798.       } u;
  50799.   void *Sid;
  50800.   unsigned int EffectiveOnly;
  50801. } RPC_SECURITY_QOS_V4_A, *PRPC_SECURITY_QOS_V4_A;
  50802.  
  50803.  
  50804.  
  50805.  
  50806.  
  50807.  
  50808. typedef struct _RPC_SECURITY_QOS_V5_W {
  50809.   unsigned long Version;
  50810.   unsigned long Capabilities;
  50811.   unsigned long IdentityTracking;
  50812.   unsigned long ImpersonationType;
  50813.   unsigned long AdditionalSecurityInfoType;
  50814.   union
  50815.       {
  50816.       RPC_HTTP_TRANSPORT_CREDENTIALS_W *HttpCredentials;
  50817.       } u;
  50818.   void *Sid;
  50819.   unsigned int EffectiveOnly;
  50820.   void *ServerSecurityDescriptor;
  50821. } RPC_SECURITY_QOS_V5_W, *PRPC_SECURITY_QOS_V5_W;
  50822.  
  50823. typedef struct _RPC_SECURITY_QOS_V5_A {
  50824.   unsigned long Version;
  50825.   unsigned long Capabilities;
  50826.   unsigned long IdentityTracking;
  50827.   unsigned long ImpersonationType;
  50828.   unsigned long AdditionalSecurityInfoType;
  50829.   union
  50830.       {
  50831.       RPC_HTTP_TRANSPORT_CREDENTIALS_A *HttpCredentials;
  50832.       } u;
  50833.   void *Sid;
  50834.   unsigned int EffectiveOnly;
  50835.   void *ServerSecurityDescriptor;
  50836. } RPC_SECURITY_QOS_V5_A, *PRPC_SECURITY_QOS_V5_A;
  50837.  
  50838.  
  50839.  
  50840.  
  50841.  
  50842.  
  50843.  
  50844. #pragma endregion
  50845.  
  50846.  
  50847.  
  50848. #pragma region Desktop Family or OneCore Family
  50849. # 2012 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50850. #pragma endregion
  50851.  
  50852. #pragma region Application Family or OneCore Family
  50853. # 2030 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50854. typedef struct _RPC_BINDING_HANDLE_TEMPLATE_V1_W {
  50855.     unsigned long Version;
  50856.     unsigned long Flags;
  50857.     unsigned long ProtocolSequence;
  50858.     unsigned short *NetworkAddress;
  50859.     unsigned short *StringEndpoint;
  50860.     union
  50861.     {
  50862.         unsigned short *Reserved;
  50863.     } u1;
  50864.     UUID ObjectUuid;
  50865. } RPC_BINDING_HANDLE_TEMPLATE_V1_W, *PRPC_BINDING_HANDLE_TEMPLATE_V1_W;
  50866.  
  50867. typedef struct _RPC_BINDING_HANDLE_TEMPLATE_V1_A {
  50868.     unsigned long Version;
  50869.     unsigned long Flags;
  50870.     unsigned long ProtocolSequence;
  50871.     unsigned char *NetworkAddress;
  50872.     unsigned char *StringEndpoint;
  50873.     union
  50874.     {
  50875.         unsigned char *Reserved;
  50876.     } u1;
  50877.     UUID ObjectUuid;
  50878. } RPC_BINDING_HANDLE_TEMPLATE_V1_A, *PRPC_BINDING_HANDLE_TEMPLATE_V1_A;
  50879.  
  50880. typedef struct _RPC_BINDING_HANDLE_SECURITY_V1_W {
  50881.     unsigned long Version;
  50882.     unsigned short *ServerPrincName;
  50883.     unsigned long AuthnLevel;
  50884.     unsigned long AuthnSvc;
  50885.     SEC_WINNT_AUTH_IDENTITY_W *AuthIdentity;
  50886.     RPC_SECURITY_QOS *SecurityQos;
  50887. } RPC_BINDING_HANDLE_SECURITY_V1_W, *PRPC_BINDING_HANDLE_SECURITY_V1_W;
  50888.  
  50889.  
  50890.  
  50891. typedef struct _RPC_BINDING_HANDLE_SECURITY_V1_A {
  50892.     unsigned long Version;
  50893.     unsigned char *ServerPrincName;
  50894.     unsigned long AuthnLevel;
  50895.     unsigned long AuthnSvc;
  50896.     SEC_WINNT_AUTH_IDENTITY_A *AuthIdentity;
  50897.     RPC_SECURITY_QOS *SecurityQos;
  50898. } RPC_BINDING_HANDLE_SECURITY_V1_A, *PRPC_BINDING_HANDLE_SECURITY_V1_A;
  50899.  
  50900.  
  50901.  
  50902. typedef struct _RPC_BINDING_HANDLE_OPTIONS_V1 {
  50903.     unsigned long Version;
  50904.     unsigned long Flags;
  50905.     unsigned long ComTimeout;
  50906.     unsigned long CallTimeout;
  50907. } RPC_BINDING_HANDLE_OPTIONS_V1, *PRPC_BINDING_HANDLE_OPTIONS_V1;
  50908. # 2109 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  50909. __declspec(dllimport)
  50910. RPC_STATUS
  50911. __stdcall
  50912. RpcBindingCreateA (
  50913.          RPC_BINDING_HANDLE_TEMPLATE_V1_A * Template,
  50914.              RPC_BINDING_HANDLE_SECURITY_V1_A * Security,
  50915.              RPC_BINDING_HANDLE_OPTIONS_V1 * Options,
  50916.           RPC_BINDING_HANDLE * Binding
  50917.     );
  50918.  
  50919.  
  50920.  
  50921. __declspec(dllimport)
  50922. RPC_STATUS
  50923. __stdcall
  50924. RpcBindingCreateW (
  50925.          RPC_BINDING_HANDLE_TEMPLATE_V1_W * Template,
  50926.              RPC_BINDING_HANDLE_SECURITY_V1_W * Security,
  50927.              RPC_BINDING_HANDLE_OPTIONS_V1 * Options,
  50928.           RPC_BINDING_HANDLE * Binding
  50929.     );
  50930.  
  50931.  
  50932.  
  50933.  
  50934.  
  50935.  
  50936.  
  50937.  
  50938. #pragma endregion
  50939.  
  50940. #pragma region Desktop Family or OneCore Family
  50941.  
  50942.  
  50943. __declspec(dllimport)
  50944. RPC_STATUS
  50945. __stdcall
  50946. RpcBindingGetTrainingContextHandle (
  50947.          RPC_BINDING_HANDLE Binding,
  50948.              void ** ContextHandle
  50949.     );
  50950.  
  50951. __declspec(dllimport)
  50952. RPC_STATUS
  50953. __stdcall
  50954. RpcServerInqBindingHandle (
  50955.           RPC_BINDING_HANDLE * Binding
  50956.     );
  50957.  
  50958.  
  50959.  
  50960. #pragma endregion
  50961.  
  50962.  
  50963.  
  50964. #pragma region Application Family or OneCore Family
  50965.  
  50966.  
  50967. typedef enum _RPC_HTTP_REDIRECTOR_STAGE
  50968. {
  50969.     RPCHTTP_RS_REDIRECT = 1,
  50970.     RPCHTTP_RS_ACCESS_1,
  50971.     RPCHTTP_RS_SESSION,
  50972.     RPCHTTP_RS_ACCESS_2,
  50973.     RPCHTTP_RS_INTERFACE
  50974. } RPC_HTTP_REDIRECTOR_STAGE;
  50975.  
  50976.  
  50977. #pragma endregion
  50978.  
  50979.  
  50980.  
  50981. #pragma region Desktop Family or OneCore Family
  50982.  
  50983.  
  50984.  
  50985. typedef RPC_STATUS
  50986. (__stdcall * RPC_NEW_HTTP_PROXY_CHANNEL) (
  50987.          RPC_HTTP_REDIRECTOR_STAGE RedirectorStage,
  50988.          RPC_WSTR ServerName,
  50989.          RPC_WSTR ServerPort,
  50990.              RPC_WSTR RemoteUser,
  50991.              RPC_WSTR AuthType,
  50992.             void * ResourceUuid,
  50993.             void * SessionId,
  50994.              void * Interface,
  50995.              void * Reserved,
  50996.          unsigned long Flags,
  50997.                  RPC_WSTR * NewServerName,
  50998.                  RPC_WSTR * NewServerPort
  50999.     );
  51000. # 2212 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51001. typedef void
  51002. (__stdcall * RPC_HTTP_PROXY_FREE_STRING) (
  51003.          RPC_WSTR String
  51004.     );
  51005.  
  51006.  
  51007. #pragma endregion
  51008.  
  51009.  
  51010.  
  51011. #pragma region Application Family or OneCore Family
  51012.  
  51013.  
  51014.  
  51015.  
  51016.  
  51017.  
  51018.  
  51019.  
  51020. #pragma endregion
  51021.  
  51022. #pragma region Desktop Family or OneCore Family
  51023.  
  51024.  
  51025. __declspec(dllimport)
  51026.  
  51027. RPC_STATUS
  51028. __stdcall
  51029. RpcImpersonateClient (
  51030.              RPC_BINDING_HANDLE BindingHandle
  51031.     );
  51032.  
  51033. __declspec(dllimport)
  51034. RPC_STATUS
  51035. __stdcall
  51036. RpcImpersonateClient2 (
  51037.              RPC_BINDING_HANDLE BindingHandle
  51038.     );
  51039.  
  51040. __declspec(dllimport)
  51041.  
  51042. RPC_STATUS
  51043. __stdcall
  51044. RpcRevertToSelfEx (
  51045.              RPC_BINDING_HANDLE BindingHandle
  51046.     );
  51047.  
  51048. __declspec(dllimport)
  51049.  
  51050. RPC_STATUS
  51051. __stdcall
  51052. RpcRevertToSelf (
  51053.     void
  51054.     );
  51055.  
  51056. __declspec(dllimport)
  51057.  
  51058. RPC_STATUS
  51059. __stdcall
  51060. RpcImpersonateClientContainer (
  51061.              RPC_BINDING_HANDLE BindingHandle
  51062.     );
  51063.  
  51064. __declspec(dllimport)
  51065.  
  51066. RPC_STATUS
  51067. __stdcall
  51068. RpcRevertContainerImpersonation (
  51069.     void
  51070.     );
  51071.  
  51072.  
  51073.  
  51074. __declspec(dllimport)
  51075.  
  51076. RPC_STATUS
  51077. __stdcall
  51078. RpcBindingInqAuthClientA (
  51079.              RPC_BINDING_HANDLE ClientBinding,
  51080.           RPC_AUTHZ_HANDLE * Privs,
  51081.                  RPC_CSTR * ServerPrincName,
  51082.               unsigned long * AuthnLevel,
  51083.               unsigned long * AuthnSvc,
  51084.               unsigned long * AuthzSvc
  51085.     );
  51086.  
  51087. __declspec(dllimport)
  51088.  
  51089. RPC_STATUS
  51090. __stdcall
  51091. RpcBindingInqAuthClientW (
  51092.              RPC_BINDING_HANDLE ClientBinding,
  51093.           RPC_AUTHZ_HANDLE * Privs,
  51094.                  RPC_WSTR * ServerPrincName,
  51095.               unsigned long * AuthnLevel,
  51096.               unsigned long * AuthnSvc,
  51097.               unsigned long * AuthzSvc
  51098.     );
  51099.  
  51100. __declspec(dllimport)
  51101. RPC_STATUS
  51102. __stdcall
  51103. RpcBindingInqAuthClientExA (
  51104.              RPC_BINDING_HANDLE ClientBinding,
  51105.           RPC_AUTHZ_HANDLE * Privs,
  51106.                  RPC_CSTR * ServerPrincName,
  51107.               unsigned long * AuthnLevel,
  51108.               unsigned long * AuthnSvc,
  51109.               unsigned long * AuthzSvc,
  51110.           unsigned long Flags
  51111.     );
  51112.  
  51113. __declspec(dllimport)
  51114. RPC_STATUS
  51115. __stdcall
  51116. RpcBindingInqAuthClientExW (
  51117.              RPC_BINDING_HANDLE ClientBinding,
  51118.           RPC_AUTHZ_HANDLE * Privs,
  51119.                  RPC_WSTR * ServerPrincName,
  51120.               unsigned long * AuthnLevel,
  51121.               unsigned long * AuthnSvc,
  51122.               unsigned long * AuthzSvc,
  51123.           unsigned long Flags
  51124.     );
  51125.  
  51126.  
  51127. #pragma endregion
  51128.  
  51129. #pragma region Application Family or OneCore Family
  51130.  
  51131.  
  51132. __declspec(dllimport)
  51133.  
  51134. RPC_STATUS
  51135. __stdcall
  51136. RpcBindingInqAuthInfoA (
  51137.          RPC_BINDING_HANDLE Binding,
  51138.                  RPC_CSTR * ServerPrincName,
  51139.               unsigned long * AuthnLevel,
  51140.               unsigned long * AuthnSvc,
  51141.               RPC_AUTH_IDENTITY_HANDLE * AuthIdentity,
  51142.               unsigned long * AuthzSvc
  51143.     );
  51144.  
  51145. __declspec(dllimport)
  51146.  
  51147. RPC_STATUS
  51148. __stdcall
  51149. RpcBindingInqAuthInfoW (
  51150.          RPC_BINDING_HANDLE Binding,
  51151.                  RPC_WSTR * ServerPrincName,
  51152.               unsigned long * AuthnLevel,
  51153.               unsigned long * AuthnSvc,
  51154.               RPC_AUTH_IDENTITY_HANDLE * AuthIdentity,
  51155.               unsigned long * AuthzSvc
  51156.     );
  51157.  
  51158. __declspec(dllimport)
  51159.  
  51160. RPC_STATUS
  51161. __stdcall
  51162. RpcBindingSetAuthInfoA (
  51163.          RPC_BINDING_HANDLE Binding,
  51164.              RPC_CSTR ServerPrincName,
  51165.          unsigned long AuthnLevel,
  51166.          unsigned long AuthnSvc,
  51167.              RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
  51168.          unsigned long AuthzSvc
  51169.     );
  51170.  
  51171. __declspec(dllimport)
  51172.  
  51173. RPC_STATUS
  51174. __stdcall
  51175. RpcBindingSetAuthInfoExA (
  51176.          RPC_BINDING_HANDLE Binding,
  51177.              RPC_CSTR ServerPrincName,
  51178.          unsigned long AuthnLevel,
  51179.          unsigned long AuthnSvc,
  51180.              RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
  51181.          unsigned long AuthzSvc,
  51182.              RPC_SECURITY_QOS * SecurityQos
  51183.     );
  51184.  
  51185. __declspec(dllimport)
  51186.  
  51187. RPC_STATUS
  51188. __stdcall
  51189. RpcBindingSetAuthInfoW (
  51190.          RPC_BINDING_HANDLE Binding,
  51191.              RPC_WSTR ServerPrincName,
  51192.          unsigned long AuthnLevel,
  51193.          unsigned long AuthnSvc,
  51194.              RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
  51195.          unsigned long AuthzSvc
  51196.     );
  51197.  
  51198. __declspec(dllimport)
  51199.  
  51200. RPC_STATUS
  51201. __stdcall
  51202. RpcBindingSetAuthInfoExW (
  51203.          RPC_BINDING_HANDLE Binding,
  51204.              RPC_WSTR ServerPrincName,
  51205.          unsigned long AuthnLevel,
  51206.          unsigned long AuthnSvc,
  51207.              RPC_AUTH_IDENTITY_HANDLE AuthIdentity,
  51208.          unsigned long AuthzSvc,
  51209.              RPC_SECURITY_QOS * SecurityQOS
  51210.     );
  51211.  
  51212. __declspec(dllimport)
  51213.  
  51214. RPC_STATUS
  51215. __stdcall
  51216. RpcBindingInqAuthInfoExA (
  51217.          RPC_BINDING_HANDLE Binding,
  51218.                  RPC_CSTR * ServerPrincName,
  51219.               unsigned long * AuthnLevel,
  51220.               unsigned long * AuthnSvc,
  51221.               RPC_AUTH_IDENTITY_HANDLE * AuthIdentity,
  51222.               unsigned long * AuthzSvc,
  51223.           unsigned long RpcQosVersion,
  51224.               RPC_SECURITY_QOS *SecurityQOS
  51225.     );
  51226.  
  51227. __declspec(dllimport)
  51228.  
  51229. RPC_STATUS
  51230. __stdcall
  51231. RpcBindingInqAuthInfoExW (
  51232.          RPC_BINDING_HANDLE Binding,
  51233.                  RPC_WSTR * ServerPrincName,
  51234.               unsigned long * AuthnLevel,
  51235.               unsigned long * AuthnSvc,
  51236.               RPC_AUTH_IDENTITY_HANDLE * AuthIdentity,
  51237.               unsigned long * AuthzSvc,
  51238.          unsigned long RpcQosVersion,
  51239.               RPC_SECURITY_QOS * SecurityQOS
  51240.     );
  51241.  
  51242.  
  51243. #pragma endregion
  51244.  
  51245. #pragma region Desktop Family or OneCore Family
  51246.  
  51247.  
  51248. typedef void
  51249. (__stdcall * RPC_AUTH_KEY_RETRIEVAL_FN) (
  51250.          void * Arg,
  51251.          RPC_WSTR ServerPrincName,
  51252.          unsigned long KeyVer,
  51253.              void * * Key,
  51254.           RPC_STATUS * Status
  51255.     );
  51256.  
  51257. __declspec(dllimport)
  51258. RPC_STATUS
  51259. __stdcall
  51260. RpcServerCompleteSecurityCallback(
  51261.          RPC_BINDING_HANDLE BindingHandle,
  51262.          RPC_STATUS Status
  51263.     );
  51264.  
  51265. __declspec(dllimport)
  51266.  
  51267. RPC_STATUS
  51268. __stdcall
  51269. RpcServerRegisterAuthInfoA (
  51270.              RPC_CSTR ServerPrincName,
  51271.          unsigned long AuthnSvc,
  51272.              RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn,
  51273.              void * Arg
  51274.     );
  51275.  
  51276. __declspec(dllimport)
  51277.  
  51278. RPC_STATUS
  51279. __stdcall
  51280. RpcServerRegisterAuthInfoW (
  51281.              RPC_WSTR ServerPrincName,
  51282.          unsigned long AuthnSvc,
  51283.              RPC_AUTH_KEY_RETRIEVAL_FN GetKeyFn,
  51284.              void * Arg
  51285.     );
  51286.  
  51287.  
  51288. #pragma endregion
  51289.  
  51290. #pragma region Application Family or OneCore Family
  51291. # 2523 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51292. #pragma endregion
  51293.  
  51294. #pragma region Desktop Family or OneCore Family
  51295. # 2602 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51296. typedef struct {
  51297.     unsigned char * UserName;
  51298.     unsigned char * ComputerName;
  51299.     unsigned short Privilege;
  51300.     unsigned long AuthFlags;
  51301. } RPC_CLIENT_INFORMATION1, * PRPC_CLIENT_INFORMATION1;
  51302.  
  51303.  
  51304.  
  51305. __declspec(dllimport)
  51306.  
  51307. RPC_STATUS
  51308. __stdcall
  51309. RpcBindingServerFromClient (
  51310.              RPC_BINDING_HANDLE ClientBinding,
  51311.           RPC_BINDING_HANDLE * ServerBinding
  51312.     );
  51313.  
  51314.  
  51315. #pragma endregion
  51316.  
  51317. #pragma region Application Family or OneCore Family
  51318.  
  51319.  
  51320. __declspec(dllimport)
  51321.  
  51322. void
  51323. __stdcall
  51324. RpcRaiseException (
  51325.          RPC_STATUS exception
  51326.     );
  51327.  
  51328. __declspec(dllimport)
  51329.  
  51330. RPC_STATUS
  51331. __stdcall
  51332. RpcTestCancel(
  51333.     void
  51334.     );
  51335.  
  51336.  
  51337. #pragma endregion
  51338.  
  51339. #pragma region Desktop Family or OneCore Family
  51340.  
  51341.  
  51342. __declspec(dllimport)
  51343.  
  51344. RPC_STATUS
  51345. __stdcall
  51346. RpcServerTestCancel (
  51347.              RPC_BINDING_HANDLE BindingHandle
  51348.     );
  51349.  
  51350. __declspec(dllimport)
  51351.  
  51352. RPC_STATUS
  51353. __stdcall
  51354. RpcCancelThread(
  51355.          void * Thread
  51356.     );
  51357.  
  51358. __declspec(dllimport)
  51359. RPC_STATUS
  51360. __stdcall
  51361. RpcCancelThreadEx(
  51362.          void * Thread,
  51363.          long Timeout
  51364.     );
  51365.  
  51366.  
  51367. #pragma endregion
  51368.  
  51369. #pragma region Application Family or OneCore Family
  51370.  
  51371.  
  51372.  
  51373. __declspec(dllimport)
  51374.  
  51375. RPC_STATUS
  51376. __stdcall
  51377. UuidCreate (
  51378.           UUID * Uuid
  51379.     );
  51380.  
  51381.  
  51382. __declspec(dllimport)
  51383. RPC_STATUS
  51384. __stdcall
  51385. UuidCreateSequential (
  51386.           UUID * Uuid
  51387.     );
  51388.  
  51389.  
  51390.  
  51391.  
  51392. __declspec(dllimport)
  51393.  
  51394. RPC_STATUS
  51395. __stdcall
  51396. UuidToStringA (
  51397.          const UUID * Uuid,
  51398.              RPC_CSTR * StringUuid
  51399.     );
  51400.  
  51401.  
  51402. __declspec(dllimport)
  51403.  
  51404. RPC_STATUS
  51405. __stdcall
  51406. UuidFromStringA (
  51407.              RPC_CSTR StringUuid,
  51408.           UUID * Uuid
  51409.     );
  51410.  
  51411.  
  51412. __declspec(dllimport)
  51413.  
  51414. RPC_STATUS
  51415. __stdcall
  51416. UuidToStringW (
  51417.          const UUID * Uuid,
  51418.              RPC_WSTR * StringUuid
  51419.     );
  51420.  
  51421.  
  51422. __declspec(dllimport)
  51423.  
  51424. RPC_STATUS
  51425. __stdcall
  51426. UuidFromStringW (
  51427.              RPC_WSTR StringUuid,
  51428.           UUID * Uuid
  51429.     );
  51430. # 2767 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51431. __declspec(dllimport)
  51432. signed int
  51433. __stdcall
  51434. UuidCompare (
  51435.          UUID * Uuid1,
  51436.          UUID * Uuid2,
  51437.           RPC_STATUS * Status
  51438.     );
  51439.  
  51440. __declspec(dllimport)
  51441.  
  51442. RPC_STATUS
  51443. __stdcall
  51444. UuidCreateNil (
  51445.           UUID * NilUuid
  51446.     );
  51447.  
  51448. __declspec(dllimport)
  51449. int
  51450. __stdcall
  51451. UuidEqual (
  51452.          UUID * Uuid1,
  51453.          UUID * Uuid2,
  51454.           RPC_STATUS * Status
  51455.     );
  51456.  
  51457. __declspec(dllimport)
  51458. unsigned short
  51459. __stdcall
  51460. UuidHash (
  51461.          UUID * Uuid,
  51462.           RPC_STATUS * Status
  51463.     );
  51464.  
  51465. __declspec(dllimport)
  51466. int
  51467. __stdcall
  51468. UuidIsNil (
  51469.          UUID * Uuid,
  51470.           RPC_STATUS * Status
  51471.     );
  51472.  
  51473.  
  51474. #pragma endregion
  51475.  
  51476. #pragma region Desktop Family or OneCore Family
  51477.  
  51478.  
  51479.  
  51480.  
  51481. __declspec(dllimport)
  51482.  
  51483. RPC_STATUS
  51484. __stdcall
  51485. RpcEpRegisterNoReplaceA (
  51486.          RPC_IF_HANDLE IfSpec,
  51487.          RPC_BINDING_VECTOR * BindingVector,
  51488.              UUID_VECTOR * UuidVector,
  51489.              RPC_CSTR Annotation
  51490.     );
  51491.  
  51492. __declspec(dllimport)
  51493.  
  51494. RPC_STATUS
  51495. __stdcall
  51496. RpcEpRegisterNoReplaceW (
  51497.          RPC_IF_HANDLE IfSpec,
  51498.          RPC_BINDING_VECTOR * BindingVector,
  51499.              UUID_VECTOR * UuidVector,
  51500.              RPC_WSTR Annotation
  51501.     );
  51502.  
  51503. __declspec(dllimport)
  51504.  
  51505. RPC_STATUS
  51506. __stdcall
  51507. RpcEpRegisterA (
  51508.          RPC_IF_HANDLE IfSpec,
  51509.          RPC_BINDING_VECTOR * BindingVector,
  51510.              UUID_VECTOR * UuidVector,
  51511.              RPC_CSTR Annotation
  51512.     );
  51513.  
  51514. __declspec(dllimport)
  51515.  
  51516. RPC_STATUS
  51517. __stdcall
  51518. RpcEpRegisterW (
  51519.          RPC_IF_HANDLE IfSpec,
  51520.          RPC_BINDING_VECTOR * BindingVector,
  51521.              UUID_VECTOR * UuidVector,
  51522.              RPC_WSTR Annotation
  51523.     );
  51524. # 2894 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51525. __declspec(dllimport)
  51526.  
  51527. RPC_STATUS
  51528. __stdcall
  51529. RpcEpUnregister(
  51530.          RPC_IF_HANDLE IfSpec,
  51531.          RPC_BINDING_VECTOR * BindingVector,
  51532.              UUID_VECTOR * UuidVector
  51533.     );
  51534.  
  51535.  
  51536.  
  51537.  
  51538.  
  51539.  
  51540. #pragma endregion
  51541.  
  51542. #pragma region Application Family or OneCore Family
  51543.  
  51544.  
  51545. __declspec(dllimport)
  51546.  
  51547. RPC_STATUS
  51548. __stdcall
  51549. DceErrorInqTextA (
  51550.          RPC_STATUS RpcStatus,
  51551.                                          RPC_CSTR ErrorText
  51552.     );
  51553.  
  51554. __declspec(dllimport)
  51555.  
  51556. RPC_STATUS
  51557. __stdcall
  51558. DceErrorInqTextW (
  51559.          RPC_STATUS RpcStatus,
  51560.                                          RPC_WSTR ErrorText
  51561.     );
  51562.  
  51563.  
  51564.  
  51565.  
  51566.  
  51567.  
  51568.  
  51569.  
  51570. #pragma endregion
  51571.  
  51572. #pragma region Desktop Family or OneCore Family
  51573. # 2956 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51574. typedef I_RPC_HANDLE * RPC_EP_INQ_HANDLE;
  51575. # 2969 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51576. __declspec(dllimport)
  51577.  
  51578. RPC_STATUS
  51579. __stdcall
  51580. RpcMgmtEpEltInqBegin (
  51581.                       RPC_BINDING_HANDLE EpBinding,
  51582.          unsigned long InquiryType,
  51583.              RPC_IF_ID * IfId,
  51584.              unsigned long VersOption,
  51585.              UUID * ObjectUuid,
  51586.           RPC_EP_INQ_HANDLE * InquiryContext
  51587.     );
  51588.  
  51589. __declspec(dllimport)
  51590.  
  51591. RPC_STATUS
  51592. __stdcall
  51593. RpcMgmtEpEltInqDone (
  51594.             RPC_EP_INQ_HANDLE * InquiryContext
  51595.     );
  51596.  
  51597.  
  51598.  
  51599. __declspec(dllimport)
  51600.  
  51601. RPC_STATUS
  51602. __stdcall
  51603. RpcMgmtEpEltInqNextA (
  51604.          RPC_EP_INQ_HANDLE InquiryContext,
  51605.           RPC_IF_ID * IfId,
  51606.               RPC_BINDING_HANDLE * Binding,
  51607.               UUID * ObjectUuid,
  51608.                  RPC_CSTR * Annotation
  51609.     );
  51610.  
  51611. __declspec(dllimport)
  51612.  
  51613. RPC_STATUS
  51614. __stdcall
  51615. RpcMgmtEpEltInqNextW (
  51616.          RPC_EP_INQ_HANDLE InquiryContext,
  51617.           RPC_IF_ID * IfId,
  51618.               RPC_BINDING_HANDLE * Binding,
  51619.               UUID * ObjectUuid,
  51620.                  RPC_WSTR * Annotation
  51621.     );
  51622. # 3036 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51623. __declspec(dllimport)
  51624.  
  51625. RPC_STATUS
  51626. __stdcall
  51627. RpcMgmtEpUnregister (
  51628.              RPC_BINDING_HANDLE EpBinding,
  51629.          RPC_IF_ID * IfId,
  51630.          RPC_BINDING_HANDLE Binding,
  51631.              UUID * ObjectUuid
  51632.     );
  51633.  
  51634. typedef int
  51635. (__stdcall * RPC_MGMT_AUTHORIZATION_FN) (
  51636.          RPC_BINDING_HANDLE ClientBinding,
  51637.          unsigned long RequestedMgmtOperation,
  51638.           RPC_STATUS * Status
  51639.     );
  51640.  
  51641.  
  51642.  
  51643.  
  51644.  
  51645.  
  51646.  
  51647. __declspec(dllimport)
  51648.  
  51649. RPC_STATUS
  51650. __stdcall
  51651. RpcMgmtSetAuthorizationFn (
  51652.          RPC_MGMT_AUTHORIZATION_FN AuthorizationFn
  51653.     );
  51654.  
  51655.  
  51656. #pragma endregion
  51657.  
  51658. #pragma region Application Family or OneCore Family
  51659.  
  51660.  
  51661.  
  51662. __declspec(dllimport)
  51663. int
  51664. __stdcall
  51665. RpcExceptionFilter (
  51666.          unsigned long ExceptionCode
  51667.     );
  51668.  
  51669.  
  51670.  
  51671. #pragma endregion
  51672.  
  51673. #pragma region Desktop Family or OneCore Family
  51674. # 3110 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51675. typedef void *RPC_INTERFACE_GROUP, **PRPC_INTERFACE_GROUP;
  51676.  
  51677.  
  51678. typedef struct
  51679. {
  51680.     unsigned long Version;
  51681.     RPC_WSTR ProtSeq;
  51682.     RPC_WSTR Endpoint;
  51683.     void * SecurityDescriptor;
  51684.     unsigned long Backlog;
  51685. } RPC_ENDPOINT_TEMPLATEW, *PRPC_ENDPOINT_TEMPLATEW;
  51686.  
  51687. typedef struct
  51688. {
  51689.     unsigned long Version;
  51690.     RPC_CSTR ProtSeq;
  51691.     RPC_CSTR Endpoint;
  51692.     void * SecurityDescriptor;
  51693.     unsigned long Backlog;
  51694. } RPC_ENDPOINT_TEMPLATEA, *PRPC_ENDPOINT_TEMPLATEA;
  51695. # 3151 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51696. typedef struct
  51697. {
  51698.     unsigned long Version;
  51699.     RPC_IF_HANDLE IfSpec;
  51700.     UUID * MgrTypeUuid;
  51701.     void * MgrEpv;
  51702.     unsigned int Flags;
  51703.     unsigned int MaxCalls;
  51704.     unsigned int MaxRpcSize;
  51705.     RPC_IF_CALLBACK_FN *IfCallback;
  51706.     UUID_VECTOR *UuidVector;
  51707.     RPC_CSTR Annotation;
  51708.     void * SecurityDescriptor;
  51709. } RPC_INTERFACE_TEMPLATEA, *PRPC_INTERFACE_TEMPLATEA;
  51710.  
  51711. typedef struct
  51712. {
  51713.     unsigned long Version;
  51714.     RPC_IF_HANDLE IfSpec;
  51715.     UUID * MgrTypeUuid;
  51716.     void * MgrEpv;
  51717.     unsigned int Flags;
  51718.     unsigned int MaxCalls;
  51719.     unsigned int MaxRpcSize;
  51720.     RPC_IF_CALLBACK_FN *IfCallback;
  51721.     UUID_VECTOR *UuidVector;
  51722.     RPC_WSTR Annotation;
  51723.     void * SecurityDescriptor;
  51724. } RPC_INTERFACE_TEMPLATEW, *PRPC_INTERFACE_TEMPLATEW;
  51725. # 3210 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51726. typedef void __stdcall
  51727. RPC_INTERFACE_GROUP_IDLE_CALLBACK_FN (
  51728.          RPC_INTERFACE_GROUP IfGroup,
  51729.          void* IdleCallbackContext,
  51730.          unsigned long IsGroupIdle
  51731.     );
  51732.  
  51733.  
  51734.  
  51735.  
  51736. __declspec(dllimport)
  51737. RPC_STATUS
  51738. __stdcall
  51739. RpcServerInterfaceGroupCreateW (
  51740.                        RPC_INTERFACE_TEMPLATEW *Interfaces,
  51741.          unsigned long NumIfs,
  51742.                              RPC_ENDPOINT_TEMPLATEW *Endpoints,
  51743.          unsigned long NumEndpoints,
  51744.          unsigned long IdlePeriod,
  51745.          RPC_INTERFACE_GROUP_IDLE_CALLBACK_FN IdleCallbackFn,
  51746.          void* IdleCallbackContext,
  51747.           PRPC_INTERFACE_GROUP IfGroup
  51748.     );
  51749.  
  51750.  
  51751.  
  51752. __declspec(dllimport)
  51753. RPC_STATUS
  51754. __stdcall
  51755. RpcServerInterfaceGroupCreateA (
  51756.                        RPC_INTERFACE_TEMPLATEA *Interfaces,
  51757.          unsigned long NumIfs,
  51758.                              RPC_ENDPOINT_TEMPLATEA *Endpoints,
  51759.          unsigned long NumEndpoints,
  51760.          unsigned long IdlePeriod,
  51761.          RPC_INTERFACE_GROUP_IDLE_CALLBACK_FN IdleCallbackFn,
  51762.          void* IdleCallbackContext,
  51763.           PRPC_INTERFACE_GROUP IfGroup
  51764.     );
  51765. # 3275 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 3
  51766. __declspec(dllimport)
  51767. RPC_STATUS
  51768. __stdcall
  51769. RpcServerInterfaceGroupClose (
  51770.          RPC_INTERFACE_GROUP IfGroup
  51771.     );
  51772.  
  51773. __declspec(dllimport)
  51774. RPC_STATUS
  51775. __stdcall
  51776. RpcServerInterfaceGroupActivate (
  51777.          RPC_INTERFACE_GROUP IfGroup
  51778.     );
  51779.  
  51780. __declspec(dllimport)
  51781. RPC_STATUS
  51782. __stdcall
  51783. RpcServerInterfaceGroupDeactivate (
  51784.          RPC_INTERFACE_GROUP IfGroup,
  51785.          unsigned long ForceDeactivation
  51786.     );
  51787.  
  51788. __declspec(dllimport)
  51789. RPC_STATUS
  51790. __stdcall
  51791. RpcServerInterfaceGroupInqBindings (
  51792.          RPC_INTERFACE_GROUP IfGroup,
  51793.              RPC_BINDING_VECTOR * * BindingVector
  51794.     );
  51795.  
  51796.  
  51797.  
  51798.  
  51799.  
  51800. #pragma endregion
  51801.  
  51802.  
  51803.  
  51804.  
  51805.  
  51806.  
  51807. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 1 3
  51808. #pragma option push -b -a8 -pc -A- -w-pun
  51809. # 39 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  51810. #pragma region Application Family or OneCore Family
  51811.  
  51812.  
  51813. typedef struct _RPC_VERSION {
  51814.     unsigned short MajorVersion;
  51815.     unsigned short MinorVersion;
  51816. } RPC_VERSION;
  51817.  
  51818. typedef struct _RPC_SYNTAX_IDENTIFIER {
  51819.     GUID SyntaxGUID;
  51820.     RPC_VERSION SyntaxVersion;
  51821. } RPC_SYNTAX_IDENTIFIER, * PRPC_SYNTAX_IDENTIFIER;
  51822.  
  51823. typedef struct _RPC_MESSAGE
  51824. {
  51825.     RPC_BINDING_HANDLE Handle;
  51826.     unsigned long DataRepresentation;
  51827.     void * Buffer;
  51828.     unsigned int BufferLength;
  51829.     unsigned int ProcNum;
  51830.     PRPC_SYNTAX_IDENTIFIER TransferSyntax;
  51831.     void * RpcInterfaceInformation;
  51832.     void * ReservedForRuntime;
  51833.     void * ManagerEpv;
  51834.     void * ImportContext;
  51835.     unsigned long RpcFlags;
  51836. } RPC_MESSAGE, * PRPC_MESSAGE;
  51837.  
  51838.  
  51839. #pragma endregion
  51840.  
  51841. #pragma region Desktop Family or OneCore Family
  51842.  
  51843.  
  51844. typedef RPC_STATUS
  51845. __stdcall RPC_FORWARD_FUNCTION(
  51846.                           UUID * InterfaceId,
  51847.                           RPC_VERSION * InterfaceVersion,
  51848.                           UUID * ObjectId,
  51849.                           unsigned char * Rpcpro,
  51850.                           void * * ppDestEndpoint);
  51851.  
  51852. enum RPC_ADDRESS_CHANGE_TYPE
  51853. {
  51854.     PROTOCOL_NOT_LOADED = 1,
  51855.     PROTOCOL_LOADED,
  51856.     PROTOCOL_ADDRESS_CHANGE
  51857. };
  51858.  
  51859. typedef void
  51860. __stdcall RPC_ADDRESS_CHANGE_FN(
  51861.                            void * arg
  51862.                         );
  51863.  
  51864.  
  51865. #pragma endregion
  51866.  
  51867. #pragma region Application Family or OneCore Family
  51868. # 179 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  51869. typedef
  51870. void
  51871. (__stdcall * RPC_DISPATCH_FUNCTION) (
  51872.            PRPC_MESSAGE Message
  51873.     );
  51874.  
  51875. typedef struct {
  51876.     unsigned int DispatchTableCount;
  51877.     RPC_DISPATCH_FUNCTION * DispatchTable;
  51878.     LONG_PTR Reserved;
  51879. } RPC_DISPATCH_TABLE, * PRPC_DISPATCH_TABLE;
  51880.  
  51881. typedef struct _RPC_PROTSEQ_ENDPOINT
  51882. {
  51883.     unsigned char * RpcProtocolSequence;
  51884.     unsigned char * Endpoint;
  51885. } RPC_PROTSEQ_ENDPOINT, * PRPC_PROTSEQ_ENDPOINT;
  51886. # 204 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  51887. typedef struct _RPC_SERVER_INTERFACE
  51888. {
  51889.     unsigned int Length;
  51890.     RPC_SYNTAX_IDENTIFIER InterfaceId;
  51891.     RPC_SYNTAX_IDENTIFIER TransferSyntax;
  51892.     PRPC_DISPATCH_TABLE DispatchTable;
  51893.     unsigned int RpcProtseqEndpointCount;
  51894.     PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
  51895.     void *DefaultManagerEpv;
  51896.     void const *InterpreterInfo;
  51897.     unsigned int Flags ;
  51898. } RPC_SERVER_INTERFACE, * PRPC_SERVER_INTERFACE;
  51899.  
  51900. typedef struct _RPC_CLIENT_INTERFACE
  51901. {
  51902.     unsigned int Length;
  51903.     RPC_SYNTAX_IDENTIFIER InterfaceId;
  51904.     RPC_SYNTAX_IDENTIFIER TransferSyntax;
  51905.     PRPC_DISPATCH_TABLE DispatchTable;
  51906.     unsigned int RpcProtseqEndpointCount;
  51907.     PRPC_PROTSEQ_ENDPOINT RpcProtseqEndpoint;
  51908.     ULONG_PTR Reserved;
  51909.     void const * InterpreterInfo;
  51910.     unsigned int Flags ;
  51911. } RPC_CLIENT_INTERFACE, * PRPC_CLIENT_INTERFACE;
  51912.  
  51913.  
  51914. #pragma endregion
  51915.  
  51916. #pragma region Desktop Family or OneCore Family
  51917.  
  51918.  
  51919.  
  51920. __declspec(dllimport)
  51921. RPC_STATUS
  51922. __stdcall
  51923. I_RpcNegotiateTransferSyntax (
  51924.            RPC_MESSAGE * Message
  51925.     );
  51926.  
  51927.  
  51928. __declspec(dllimport)
  51929.  
  51930. RPC_STATUS
  51931. __stdcall
  51932. I_RpcGetBuffer (
  51933.            RPC_MESSAGE * Message
  51934.     );
  51935.  
  51936. __declspec(dllimport)
  51937. RPC_STATUS
  51938. __stdcall
  51939. I_RpcGetBufferWithObject (
  51940.            RPC_MESSAGE * Message,
  51941.        UUID * ObjectUuid
  51942.     );
  51943.  
  51944. __declspec(dllimport)
  51945.  
  51946. RPC_STATUS
  51947. __stdcall
  51948. I_RpcSendReceive (
  51949.            RPC_MESSAGE * Message
  51950.     );
  51951.  
  51952. __declspec(dllimport)
  51953.  
  51954. RPC_STATUS
  51955. __stdcall
  51956. I_RpcFreeBuffer (
  51957.            RPC_MESSAGE * Message
  51958.     );
  51959.  
  51960. __declspec(dllimport)
  51961.  
  51962. RPC_STATUS
  51963. __stdcall
  51964. I_RpcSend (
  51965.            PRPC_MESSAGE Message
  51966.     );
  51967.  
  51968. __declspec(dllimport)
  51969.  
  51970. RPC_STATUS
  51971. __stdcall
  51972. I_RpcReceive (
  51973.            PRPC_MESSAGE Message,
  51974.        unsigned int Size
  51975.     );
  51976.  
  51977. __declspec(dllimport)
  51978.  
  51979. RPC_STATUS
  51980. __stdcall
  51981. I_RpcFreePipeBuffer (
  51982.            RPC_MESSAGE * Message
  51983.     );
  51984.  
  51985. __declspec(dllimport)
  51986.  
  51987. RPC_STATUS
  51988. __stdcall
  51989. I_RpcReallocPipeBuffer (
  51990.          PRPC_MESSAGE Message,
  51991.      unsigned int NewSize
  51992.     );
  51993.  
  51994. typedef void * I_RPC_MUTEX;
  51995.  
  51996. __declspec(dllimport)
  51997. void
  51998. __stdcall
  51999. I_RpcRequestMutex (
  52000.            I_RPC_MUTEX * Mutex
  52001.     );
  52002.  
  52003. __declspec(dllimport)
  52004. void
  52005. __stdcall
  52006. I_RpcClearMutex (
  52007.        I_RPC_MUTEX Mutex
  52008.     );
  52009.  
  52010. __declspec(dllimport)
  52011. void
  52012. __stdcall
  52013. I_RpcDeleteMutex (
  52014.        I_RPC_MUTEX Mutex
  52015.     );
  52016.  
  52017. __declspec(dllimport)
  52018. void *
  52019. __stdcall
  52020. I_RpcAllocate (
  52021.        unsigned int Size
  52022.     );
  52023.  
  52024. __declspec(dllimport)
  52025. void
  52026. __stdcall
  52027. I_RpcFree (
  52028.        void * Object
  52029.     );
  52030.  
  52031.  
  52032.  
  52033.  
  52034.  
  52035.  
  52036. __declspec(dllimport)
  52037. unsigned long
  52038. __stdcall
  52039. I_RpcFreeSystemHandleCollection (
  52040.             void * CallObj,
  52041.          unsigned long FreeFlags
  52042.     );
  52043.  
  52044. __declspec(dllimport)
  52045. RPC_STATUS
  52046. __stdcall
  52047. I_RpcSetSystemHandle (
  52048.          void * Handle,
  52049.          unsigned char Type,
  52050.          unsigned long AccessMask,
  52051.             void * CallObj,
  52052.           unsigned long * HandleIndex
  52053.     );
  52054.  
  52055. __declspec(dllimport)
  52056. RPC_STATUS
  52057. __stdcall
  52058. I_RpcGetSystemHandle (
  52059.                                        unsigned char* pMemory,
  52060.          unsigned char Type,
  52061.          unsigned long AccessMask,
  52062.          unsigned long HandleIndex,
  52063.             void * CallObj
  52064.     );
  52065.  
  52066. __declspec(dllimport)
  52067. void
  52068. __stdcall
  52069. I_RpcFreeSystemHandle (
  52070.          unsigned char Type,
  52071.          void * Handle
  52072.     );
  52073.  
  52074. __declspec(dllimport)
  52075. void
  52076. __stdcall
  52077. I_RpcPauseExecution (
  52078.        unsigned long Milliseconds
  52079.     );
  52080.  
  52081. __declspec(dllimport)
  52082. RPC_STATUS
  52083. __stdcall
  52084. I_RpcGetExtendedError (
  52085.     void
  52086.     );
  52087.  
  52088.  
  52089. typedef enum _LRPC_SYSTEM_HANDLE_MARSHAL_DIRECTION
  52090. {
  52091.     MarshalDirectionMarshal,
  52092.     MarshalDirectionUnmarshal
  52093. }LRPC_SYSTEM_HANDLE_MARSHAL_DIRECTION;
  52094.  
  52095. __declspec(dllimport)
  52096. RPC_STATUS
  52097. __stdcall
  52098. I_RpcSystemHandleTypeSpecificWork (
  52099.             void * Handle,
  52100.          unsigned char ActualType,
  52101.          unsigned char IdlType,
  52102.          LRPC_SYSTEM_HANDLE_MARSHAL_DIRECTION MarshalDirection
  52103.     );
  52104.  
  52105. typedef
  52106. void
  52107. (__stdcall * PRPC_RUNDOWN) (
  52108.     void * AssociationContext
  52109.     );
  52110.  
  52111. __declspec(dllimport)
  52112.  
  52113. RPC_STATUS
  52114. __stdcall
  52115. I_RpcMonitorAssociation (
  52116.        RPC_BINDING_HANDLE Handle,
  52117.        PRPC_RUNDOWN RundownRoutine,
  52118.        void * Context
  52119.     );
  52120.  
  52121. __declspec(dllimport)
  52122.  
  52123. RPC_STATUS
  52124. __stdcall
  52125. I_RpcStopMonitorAssociation (
  52126.        RPC_BINDING_HANDLE Handle
  52127.     );
  52128.  
  52129. __declspec(dllimport)
  52130. RPC_BINDING_HANDLE
  52131. __stdcall
  52132. I_RpcGetCurrentCallHandle(
  52133.     void
  52134.     );
  52135.  
  52136. __declspec(dllimport)
  52137.  
  52138. RPC_STATUS
  52139. __stdcall
  52140. I_RpcGetAssociationContext (
  52141.        RPC_BINDING_HANDLE BindingHandle,
  52142.         void * * AssociationContext
  52143.     );
  52144.  
  52145. __declspec(dllimport)
  52146. void *
  52147. __stdcall
  52148. I_RpcGetServerContextList (
  52149.        RPC_BINDING_HANDLE BindingHandle
  52150.     );
  52151.  
  52152. __declspec(dllimport)
  52153. void
  52154. __stdcall
  52155. I_RpcSetServerContextList (
  52156.        RPC_BINDING_HANDLE BindingHandle,
  52157.         void * ServerContextList
  52158.     );
  52159.  
  52160. __declspec(dllimport)
  52161. RPC_STATUS
  52162. __stdcall
  52163. I_RpcNsInterfaceExported (
  52164.        unsigned long EntryNameSyntax,
  52165.        unsigned short *EntryName,
  52166.        RPC_SERVER_INTERFACE * RpcInterfaceInformation
  52167.     );
  52168.  
  52169. __declspec(dllimport)
  52170. RPC_STATUS
  52171. __stdcall
  52172. I_RpcNsInterfaceUnexported (
  52173.        unsigned long EntryNameSyntax,
  52174.        unsigned short *EntryName,
  52175.        RPC_SERVER_INTERFACE * RpcInterfaceInformation
  52176.     );
  52177.  
  52178. __declspec(dllimport)
  52179. RPC_STATUS
  52180. __stdcall
  52181. I_RpcBindingToStaticStringBindingW (
  52182.        RPC_BINDING_HANDLE Binding,
  52183.         unsigned short **StringBinding
  52184.     );
  52185.  
  52186. __declspec(dllimport)
  52187. RPC_STATUS
  52188. __stdcall
  52189. I_RpcBindingInqSecurityContext (
  52190.        RPC_BINDING_HANDLE Binding,
  52191.         void **SecurityContextHandle
  52192.     );
  52193.  
  52194.  
  52195. typedef struct _RPC_SEC_CONTEXT_KEY_INFO
  52196. {
  52197.     unsigned long EncryptAlgorithm;
  52198.     unsigned long KeySize;
  52199.     unsigned long SignatureAlgorithm;
  52200. }
  52201. RPC_SEC_CONTEXT_KEY_INFO, *PRPC_SEC_CONTEXT_KEY_INFO;
  52202.  
  52203. __declspec(dllimport)
  52204. RPC_STATUS
  52205. __stdcall
  52206. I_RpcBindingInqSecurityContextKeyInfo (
  52207.              RPC_BINDING_HANDLE Binding,
  52208.             void *KeyInfo
  52209.     );
  52210.  
  52211.  
  52212.  
  52213. __declspec(dllimport)
  52214. RPC_STATUS
  52215. __stdcall
  52216. I_RpcBindingInqWireIdForSnego (
  52217.          RPC_BINDING_HANDLE Binding,
  52218.           unsigned char * WireId
  52219.     );
  52220.  
  52221.  
  52222. __declspec(dllimport)
  52223. RPC_STATUS
  52224. __stdcall
  52225. I_RpcBindingInqMarshalledTargetInfo (
  52226.          RPC_BINDING_HANDLE Binding,
  52227.           unsigned long * MarshalledTargetInfoSize,
  52228.                                                            RPC_CSTR * MarshalledTargetInfo
  52229.     );
  52230.  
  52231.  
  52232.  
  52233. __declspec(dllimport)
  52234. RPC_STATUS
  52235. __stdcall
  52236. I_RpcBindingInqLocalClientPID (
  52237.        RPC_BINDING_HANDLE Binding,
  52238.         unsigned long *Pid
  52239.     );
  52240.  
  52241. __declspec(dllimport)
  52242. RPC_STATUS
  52243. __stdcall
  52244. I_RpcBindingHandleToAsyncHandle (
  52245.        RPC_BINDING_HANDLE Binding,
  52246.         void **AsyncHandle
  52247.     );
  52248.  
  52249.  
  52250.  
  52251.  
  52252. __declspec(dllimport)
  52253.  
  52254. RPC_STATUS
  52255. __stdcall
  52256. I_RpcNsBindingSetEntryNameW (
  52257.          RPC_BINDING_HANDLE Binding,
  52258.          unsigned long EntryNameSyntax,
  52259.          RPC_WSTR EntryName
  52260.     );
  52261.  
  52262. __declspec(dllimport)
  52263.  
  52264. RPC_STATUS
  52265. __stdcall
  52266. I_RpcNsBindingSetEntryNameA (
  52267.          RPC_BINDING_HANDLE Binding,
  52268.          unsigned long EntryNameSyntax,
  52269.          RPC_CSTR EntryName
  52270.     );
  52271.  
  52272. __declspec(dllimport)
  52273. RPC_STATUS
  52274. __stdcall
  52275. I_RpcServerUseProtseqEp2A (
  52276.              RPC_CSTR NetworkAddress,
  52277.          RPC_CSTR Protseq,
  52278.          unsigned int MaxCalls,
  52279.          RPC_CSTR Endpoint,
  52280.              void * SecurityDescriptor,
  52281.          void * Policy
  52282.     );
  52283.  
  52284. __declspec(dllimport)
  52285. RPC_STATUS
  52286. __stdcall
  52287. I_RpcServerUseProtseqEp2W (
  52288.              RPC_WSTR NetworkAddress,
  52289.          RPC_WSTR Protseq,
  52290.          unsigned int MaxCalls,
  52291.          RPC_WSTR Endpoint,
  52292.              void * SecurityDescriptor,
  52293.          void * Policy
  52294.     );
  52295.  
  52296. __declspec(dllimport)
  52297. RPC_STATUS
  52298. __stdcall
  52299. I_RpcServerUseProtseq2W (
  52300.              RPC_WSTR NetworkAddress,
  52301.          RPC_WSTR Protseq,
  52302.          unsigned int MaxCalls,
  52303.              void * SecurityDescriptor,
  52304.          void * Policy
  52305.     );
  52306.  
  52307. __declspec(dllimport)
  52308. RPC_STATUS
  52309. __stdcall
  52310. I_RpcServerUseProtseq2A (
  52311.              RPC_CSTR NetworkAddress,
  52312.          RPC_CSTR Protseq,
  52313.          unsigned int MaxCalls,
  52314.              void * SecurityDescriptor,
  52315.          void * Policy
  52316.     );
  52317. # 681 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  52318. __declspec(dllimport)
  52319. RPC_STATUS
  52320. __stdcall
  52321. I_RpcServerStartService (
  52322.          RPC_WSTR Protseq,
  52323.          RPC_WSTR Endpoint,
  52324.          RPC_IF_HANDLE IfSpec
  52325.     );
  52326.  
  52327.  
  52328.  
  52329. __declspec(dllimport)
  52330.  
  52331. RPC_STATUS
  52332. __stdcall
  52333. I_RpcBindingInqDynamicEndpointW (
  52334.          RPC_BINDING_HANDLE Binding,
  52335.                               RPC_WSTR *DynamicEndpoint
  52336.     );
  52337.  
  52338. __declspec(dllimport)
  52339.  
  52340. RPC_STATUS
  52341. __stdcall
  52342. I_RpcBindingInqDynamicEndpointA (
  52343.          RPC_BINDING_HANDLE Binding,
  52344.                               RPC_CSTR *DynamicEndpoint
  52345.     );
  52346. # 730 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  52347. __declspec(dllimport)
  52348. RPC_STATUS
  52349. __stdcall
  52350. I_RpcServerCheckClientRestriction (
  52351.        RPC_BINDING_HANDLE Context
  52352.     );
  52353. # 744 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  52354. __declspec(dllimport)
  52355.  
  52356. RPC_STATUS
  52357. __stdcall
  52358. I_RpcBindingInqTransportType (
  52359.        RPC_BINDING_HANDLE Binding,
  52360.         unsigned int * Type
  52361.     );
  52362.  
  52363. typedef struct _RPC_TRANSFER_SYNTAX
  52364. {
  52365.     UUID Uuid;
  52366.     unsigned short VersMajor;
  52367.     unsigned short VersMinor;
  52368. } RPC_TRANSFER_SYNTAX;
  52369.  
  52370. __declspec(dllimport)
  52371.  
  52372. RPC_STATUS
  52373. __stdcall
  52374. I_RpcIfInqTransferSyntaxes (
  52375.        RPC_IF_HANDLE RpcIfHandle,
  52376.         RPC_TRANSFER_SYNTAX * TransferSyntaxes,
  52377.        unsigned int TransferSyntaxSize,
  52378.         unsigned int * TransferSyntaxCount
  52379.     );
  52380.  
  52381. __declspec(dllimport)
  52382.  
  52383. RPC_STATUS
  52384. __stdcall
  52385. I_UuidCreate (
  52386.         UUID * Uuid
  52387.     );
  52388.  
  52389. __declspec(dllimport)
  52390. void
  52391. __stdcall
  52392. I_RpcUninitializeNdrOle (
  52393.     void
  52394.     );
  52395.  
  52396. __declspec(dllimport)
  52397.  
  52398. RPC_STATUS
  52399. __stdcall
  52400. I_RpcBindingCopy (
  52401.        RPC_BINDING_HANDLE SourceBinding,
  52402.         RPC_BINDING_HANDLE * DestinationBinding
  52403.     );
  52404.  
  52405. __declspec(dllimport)
  52406. RPC_STATUS
  52407. __stdcall
  52408. I_RpcBindingIsClientLocal (
  52409.                 RPC_BINDING_HANDLE BindingHandle,
  52410.         unsigned int * ClientLocalFlag
  52411.     );
  52412.  
  52413. __declspec(dllimport)
  52414. RPC_STATUS
  52415. __stdcall
  52416. I_RpcBindingInqConnId (
  52417.        RPC_BINDING_HANDLE Binding,
  52418.         void **ConnId,
  52419.         int *pfFirstCall
  52420.     );
  52421.  
  52422. __declspec(dllimport)
  52423. RPC_STATUS
  52424. __stdcall
  52425. I_RpcBindingCreateNP (
  52426.          RPC_WSTR ServerName,
  52427.          RPC_WSTR ServiceName,
  52428.          RPC_WSTR NetworkOptions,
  52429.           RPC_BINDING_HANDLE *Binding
  52430.     );
  52431.  
  52432. __declspec(dllimport)
  52433. void
  52434. __stdcall
  52435. I_RpcSsDontSerializeContext (
  52436.     void
  52437.     );
  52438.  
  52439. __declspec(dllimport)
  52440.  
  52441. RPC_STATUS
  52442. __stdcall
  52443. I_RpcLaunchDatagramReceiveThread(
  52444.     void * pAddress
  52445.     );
  52446.  
  52447. __declspec(dllimport)
  52448.  
  52449. RPC_STATUS
  52450. __stdcall
  52451. I_RpcServerRegisterForwardFunction (
  52452.        RPC_FORWARD_FUNCTION * pForwardFunction
  52453.     );
  52454.  
  52455. RPC_ADDRESS_CHANGE_FN * __stdcall
  52456. I_RpcServerInqAddressChangeFn(
  52457.     void
  52458.     );
  52459.  
  52460. RPC_STATUS __stdcall
  52461. I_RpcServerSetAddressChangeFn(
  52462.        RPC_ADDRESS_CHANGE_FN * pAddressChangeFn
  52463.     );
  52464. # 862 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  52465. __declspec(dllimport)
  52466. RPC_STATUS
  52467. __stdcall
  52468. I_RpcServerInqLocalConnAddress (
  52469.        RPC_BINDING_HANDLE Binding,
  52470.            void *Buffer,
  52471.            unsigned long *BufferSize,
  52472.         unsigned long *AddressFormat
  52473.     );
  52474.  
  52475. __declspec(dllimport)
  52476. RPC_STATUS
  52477. __stdcall
  52478. I_RpcServerInqRemoteConnAddress (
  52479.        RPC_BINDING_HANDLE Binding,
  52480.            void *Buffer,
  52481.            unsigned long *BufferSize,
  52482.         unsigned long *AddressFormat
  52483.     );
  52484.  
  52485. __declspec(dllimport)
  52486. void
  52487. __stdcall
  52488. I_RpcSessionStrictContextHandle (
  52489.     void
  52490.     );
  52491.  
  52492. __declspec(dllimport)
  52493. RPC_STATUS
  52494. __stdcall
  52495. I_RpcTurnOnEEInfoPropagation (
  52496.     void
  52497.     );
  52498.  
  52499.  
  52500. __declspec(dllimport)
  52501.  
  52502. RPC_STATUS
  52503. __stdcall
  52504. I_RpcConnectionInqSockBuffSize(
  52505.       unsigned long * RecvBuffSize,
  52506.       unsigned long * SendBuffSize
  52507.   );
  52508.  
  52509. __declspec(dllimport)
  52510.  
  52511. RPC_STATUS
  52512. __stdcall
  52513. I_RpcConnectionSetSockBuffSize(
  52514.       unsigned long RecvBuffSize,
  52515.       unsigned long SendBuffSize
  52516.    );
  52517.  
  52518. typedef
  52519. void
  52520. (*RPCLT_PDU_FILTER_FUNC) (
  52521.        void *Buffer,
  52522.        unsigned int BufferLength,
  52523.        int fDatagram
  52524.     );
  52525.  
  52526. typedef
  52527. void
  52528. (__cdecl *RPC_SETFILTER_FUNC) (
  52529.        RPCLT_PDU_FILTER_FUNC pfnFilter
  52530.     );
  52531.  
  52532.  
  52533. __declspec(dllimport)
  52534.  
  52535. RPC_STATUS
  52536. __stdcall
  52537. I_RpcServerStartListening(
  52538.     void * hWnd
  52539.     );
  52540.  
  52541. __declspec(dllimport)
  52542.  
  52543. RPC_STATUS
  52544. __stdcall
  52545. I_RpcServerStopListening(
  52546.     void
  52547.     );
  52548.  
  52549. typedef RPC_STATUS (*RPC_BLOCKING_FN) (
  52550.        void * hWnd,
  52551.        void * Context,
  52552.                 void * hSyncEvent
  52553.     );
  52554.  
  52555. __declspec(dllimport)
  52556.  
  52557. RPC_STATUS
  52558. __stdcall
  52559. I_RpcBindingSetAsync(
  52560.        RPC_BINDING_HANDLE Binding,
  52561.        RPC_BLOCKING_FN BlockingFn,
  52562.        unsigned long ServerTid
  52563.     );
  52564.  
  52565. __declspec(dllimport)
  52566.  
  52567. RPC_STATUS
  52568. __stdcall
  52569. I_RpcSetThreadParams(
  52570.        int fClientFree,
  52571.                 void *Context,
  52572.                 void * hWndClient
  52573.     );
  52574.  
  52575. __declspec(dllimport)
  52576. unsigned int
  52577. __stdcall
  52578. I_RpcWindowProc(
  52579.        void * hWnd,
  52580.        unsigned int Message,
  52581.        unsigned int wParam,
  52582.        unsigned long lParam
  52583.     );
  52584.  
  52585. __declspec(dllimport)
  52586.  
  52587. RPC_STATUS
  52588. __stdcall
  52589. I_RpcServerUnregisterEndpointA (
  52590.          RPC_CSTR Protseq,
  52591.          RPC_CSTR Endpoint
  52592.     );
  52593.  
  52594. __declspec(dllimport)
  52595.  
  52596. RPC_STATUS
  52597. __stdcall
  52598. I_RpcServerUnregisterEndpointW (
  52599.          RPC_WSTR Protseq,
  52600.          RPC_WSTR Endpoint
  52601.     );
  52602. # 1007 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  52603. __declspec(dllimport)
  52604. RPC_STATUS
  52605. __stdcall
  52606. I_RpcServerInqTransportType(
  52607.         unsigned int * Type
  52608.     );
  52609.  
  52610. __declspec(dllimport)
  52611. long
  52612. __stdcall
  52613. I_RpcMapWin32Status (
  52614.        RPC_STATUS Status
  52615.     );
  52616.  
  52617.  
  52618.  
  52619.  
  52620.  
  52621.  
  52622.  
  52623. typedef struct _RPC_C_OPT_COOKIE_AUTH_DESCRIPTOR
  52624. {
  52625.     unsigned long BufferSize;
  52626.                                    char *Buffer;
  52627. } RPC_C_OPT_COOKIE_AUTH_DESCRIPTOR;
  52628.  
  52629. typedef struct _RDR_CALLOUT_STATE
  52630. {
  52631.  
  52632.     RPC_STATUS LastError;
  52633.     void *LastEEInfo;
  52634.  
  52635.     RPC_HTTP_REDIRECTOR_STAGE LastCalledStage;
  52636.  
  52637.  
  52638.     unsigned short *ServerName;
  52639.     unsigned short *ServerPort;
  52640.     unsigned short *RemoteUser;
  52641.     unsigned short *AuthType;
  52642.     unsigned char ResourceTypePresent;
  52643.     unsigned char SessionIdPresent;
  52644.     unsigned char InterfacePresent;
  52645.     UUID ResourceType;
  52646.     UUID SessionId;
  52647.     RPC_SYNTAX_IDENTIFIER Interface;
  52648.     void *CertContext;
  52649.  
  52650.  
  52651. } RDR_CALLOUT_STATE;
  52652.  
  52653.  
  52654.  
  52655. typedef RPC_STATUS
  52656. (__stdcall *I_RpcProxyIsValidMachineFn)
  52657.         (
  52658.              RPC_WSTR Machine,
  52659.              RPC_WSTR DotMachine,
  52660.              unsigned long PortNumber
  52661.         );
  52662.  
  52663. typedef RPC_STATUS
  52664. (__stdcall *I_RpcProxyGetClientAddressFn)
  52665.         (
  52666.            void *Context,
  52667.             char *Buffer,
  52668.             unsigned long *BufferLength
  52669.         );
  52670.  
  52671. typedef RPC_STATUS
  52672. (__stdcall *I_RpcProxyGetConnectionTimeoutFn)
  52673.         (
  52674.             unsigned long *ConnectionTimeout
  52675.         );
  52676.  
  52677.  
  52678. typedef RPC_STATUS
  52679. (__stdcall *I_RpcPerformCalloutFn)
  52680.     (
  52681.        void *Context,
  52682.        RDR_CALLOUT_STATE *CallOutState,
  52683.        RPC_HTTP_REDIRECTOR_STAGE Stage
  52684.     );
  52685.  
  52686. typedef void
  52687. (__stdcall *I_RpcFreeCalloutStateFn)
  52688.     (
  52689.        RDR_CALLOUT_STATE *CallOutState
  52690.     );
  52691.  
  52692. typedef RPC_STATUS
  52693. (__stdcall *I_RpcProxyGetClientSessionAndResourceUUID)
  52694.         (
  52695.              void *Context,
  52696.                   int *SessionIdPresent,
  52697.                   UUID *SessionId,
  52698.               int *ResourceIdPresent,
  52699.               UUID *ResourceId
  52700.         );
  52701.  
  52702.  
  52703.  
  52704.  
  52705. typedef RPC_STATUS
  52706. (__stdcall *I_RpcProxyFilterIfFn)
  52707.     (
  52708.          void *Context,
  52709.          UUID *IfUuid,
  52710.          unsigned short IfMajorVersion,
  52711.           int *fAllow
  52712.     );
  52713.  
  52714. typedef enum RpcProxyPerfCounters
  52715. {
  52716.     RpcCurrentUniqueUser = 1,
  52717.     RpcBackEndConnectionAttempts,
  52718.     RpcBackEndConnectionFailed,
  52719.     RpcRequestsPerSecond,
  52720.     RpcIncomingConnections,
  52721.     RpcIncomingBandwidth,
  52722.     RpcOutgoingBandwidth,
  52723.     RpcAttemptedLbsDecisions,
  52724.     RpcFailedLbsDecisions,
  52725.     RpcAttemptedLbsMessages,
  52726.     RpcFailedLbsMessages,
  52727.     RpcLastCounter
  52728. } RpcPerfCounters;
  52729.  
  52730. typedef void
  52731. (__stdcall *I_RpcProxyUpdatePerfCounterFn)
  52732.     (
  52733.          RpcPerfCounters Counter,
  52734.          int ModifyTrend,
  52735.          unsigned long Size
  52736.     );
  52737.  
  52738.  typedef void
  52739. (__stdcall *I_RpcProxyUpdatePerfCounterBackendServerFn)
  52740.     (
  52741.          unsigned short* MachineName,
  52742.          int IsConnectEvent
  52743.     );
  52744.  
  52745.  
  52746.  
  52747.  
  52748.  
  52749.  
  52750.  
  52751. typedef struct tagI_RpcProxyCallbackInterface
  52752. {
  52753.     I_RpcProxyIsValidMachineFn IsValidMachineFn;
  52754.     I_RpcProxyGetClientAddressFn GetClientAddressFn;
  52755.     I_RpcProxyGetConnectionTimeoutFn GetConnectionTimeoutFn;
  52756.     I_RpcPerformCalloutFn PerformCalloutFn;
  52757.     I_RpcFreeCalloutStateFn FreeCalloutStateFn;
  52758.     I_RpcProxyGetClientSessionAndResourceUUID GetClientSessionAndResourceUUIDFn;
  52759.  
  52760.     I_RpcProxyFilterIfFn ProxyFilterIfFn;
  52761.     I_RpcProxyUpdatePerfCounterFn RpcProxyUpdatePerfCounterFn;
  52762.     I_RpcProxyUpdatePerfCounterBackendServerFn RpcProxyUpdatePerfCounterBackendServerFn;
  52763.  
  52764. } I_RpcProxyCallbackInterface;
  52765.  
  52766. __declspec(dllimport)
  52767. RPC_STATUS
  52768. __stdcall
  52769. I_RpcProxyNewConnection (
  52770.        unsigned long ConnectionType,
  52771.        unsigned short *ServerAddress,
  52772.        unsigned short *ServerPort,
  52773.        unsigned short *MinConnTimeout,
  52774.        void *ConnectionParameter,
  52775.                 RDR_CALLOUT_STATE *CallOutState,
  52776.        I_RpcProxyCallbackInterface *ProxyCallbackInterface
  52777.     );
  52778. # 1207 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  52779. __declspec(dllimport)
  52780. RPC_STATUS
  52781. __stdcall
  52782. I_RpcReplyToClientWithStatus (
  52783.        void *ConnectionParameter,
  52784.        RPC_STATUS RpcStatus
  52785.     );
  52786.  
  52787. __declspec(dllimport)
  52788. void
  52789. __stdcall
  52790. I_RpcRecordCalloutFailure (
  52791.        RPC_STATUS RpcStatus,
  52792.        RDR_CALLOUT_STATE *CallOutState,
  52793.        unsigned short *DllName
  52794.     );
  52795.  
  52796.  
  52797.  
  52798. __declspec(dllimport)
  52799. RPC_STATUS
  52800. __stdcall
  52801. I_RpcMgmtEnableDedicatedThreadPool (
  52802.     void
  52803.     );
  52804.  
  52805.  
  52806.  
  52807. __declspec(dllimport)
  52808. RPC_STATUS
  52809. __stdcall
  52810. I_RpcGetDefaultSD(
  52811.           void ** ppSecurityDescriptor
  52812.     );
  52813.  
  52814.  
  52815.  
  52816. __declspec(dllimport)
  52817. RPC_STATUS
  52818. __stdcall
  52819. I_RpcOpenClientProcess(
  52820.              RPC_BINDING_HANDLE Binding,
  52821.          unsigned long DesiredAccess,
  52822.              void** ClientProcess
  52823.     );
  52824.  
  52825.  
  52826.  
  52827. __declspec(dllimport)
  52828. RPC_STATUS
  52829. __stdcall
  52830. I_RpcBindingIsServerLocal(
  52831.          RPC_BINDING_HANDLE Binding,
  52832.           unsigned int * ServerLocalFlag
  52833.     );
  52834.  
  52835. RPC_STATUS __stdcall
  52836. I_RpcBindingSetPrivateOption (
  52837.          RPC_BINDING_HANDLE hBinding,
  52838.          unsigned long option,
  52839.          ULONG_PTR optionValue
  52840.     );
  52841.  
  52842.  
  52843.  
  52844.  
  52845.  
  52846.  
  52847.  
  52848. RPC_STATUS
  52849. __stdcall
  52850. I_RpcServerSubscribeForDisconnectNotification (
  52851.          RPC_BINDING_HANDLE Binding,
  52852.          void * hEvent
  52853.     );
  52854.  
  52855. RPC_STATUS
  52856. __stdcall
  52857. I_RpcServerGetAssociationID (
  52858.          RPC_BINDING_HANDLE Binding,
  52859.           unsigned long * AssociationID
  52860.     );
  52861.  
  52862. __declspec(dllimport)
  52863. long
  52864. __stdcall
  52865. I_RpcServerDisableExceptionFilter (
  52866.     void
  52867.     );
  52868.  
  52869.  
  52870.  
  52871.  
  52872. #pragma endregion
  52873. # 1317 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdcep.h" 3
  52874. #pragma option pop
  52875. # 3315 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcdce.h" 2 3
  52876.  
  52877.  
  52878.  
  52879.  
  52880.  
  52881.  
  52882.  
  52883. #pragma option pop
  52884. # 157 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 2 3
  52885.  
  52886.  
  52887. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcnsi.h" 1 3
  52888. #pragma option push -b -a8 -pc -A- -w-pun
  52889. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcnsi.h" 3
  52890. #pragma region Desktop Family
  52891.  
  52892.  
  52893. typedef void * RPC_NS_HANDLE;
  52894. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcnsi.h" 3
  52895. __declspec(dllimport) RPC_STATUS __stdcall
  52896. RpcNsBindingExportA(
  52897.          unsigned long EntryNameSyntax,
  52898.              RPC_CSTR EntryName,
  52899.              RPC_IF_HANDLE IfSpec,
  52900.              RPC_BINDING_VECTOR *BindingVec,
  52901.              UUID_VECTOR *ObjectUuidVec
  52902.     );
  52903.  
  52904.  
  52905. __declspec(dllimport) RPC_STATUS __stdcall
  52906. RpcNsBindingUnexportA(
  52907.          unsigned long EntryNameSyntax,
  52908.              RPC_CSTR EntryName,
  52909.              RPC_IF_HANDLE IfSpec,
  52910.              UUID_VECTOR *ObjectUuidVec
  52911.     );
  52912.  
  52913.  
  52914.  
  52915. __declspec(dllimport) RPC_STATUS __stdcall
  52916. RpcNsBindingExportW(
  52917.          unsigned long EntryNameSyntax,
  52918.              RPC_WSTR EntryName,
  52919.              RPC_IF_HANDLE IfSpec,
  52920.              RPC_BINDING_VECTOR *BindingVec,
  52921.              UUID_VECTOR *ObjectUuidVec
  52922.     );
  52923.  
  52924. __declspec(dllimport) RPC_STATUS __stdcall
  52925. RpcNsBindingUnexportW(
  52926.          unsigned long EntryNameSyntax,
  52927.              RPC_WSTR EntryName,
  52928.              RPC_IF_HANDLE IfSpec,
  52929.              UUID_VECTOR *ObjectUuidVec
  52930.     );
  52931.  
  52932.  
  52933.  
  52934.  
  52935.  
  52936. RPC_STATUS __stdcall
  52937. RpcNsBindingExportPnPA(
  52938.          unsigned long EntryNameSyntax,
  52939.              RPC_CSTR EntryName,
  52940.              RPC_IF_HANDLE IfSpec,
  52941.              UUID_VECTOR *ObjectVector
  52942.     );
  52943.  
  52944. RPC_STATUS __stdcall
  52945. RpcNsBindingUnexportPnPA(
  52946.          unsigned long EntryNameSyntax,
  52947.              RPC_CSTR EntryName,
  52948.              RPC_IF_HANDLE IfSpec,
  52949.              UUID_VECTOR *ObjectVector
  52950.     );
  52951.  
  52952.  
  52953.  
  52954. RPC_STATUS __stdcall
  52955. RpcNsBindingExportPnPW(
  52956.          unsigned long EntryNameSyntax,
  52957.              RPC_WSTR EntryName,
  52958.              RPC_IF_HANDLE IfSpec,
  52959.              UUID_VECTOR *ObjectVector
  52960.     );
  52961.  
  52962. RPC_STATUS __stdcall
  52963. RpcNsBindingUnexportPnPW(
  52964.          unsigned long EntryNameSyntax,
  52965.              RPC_WSTR EntryName,
  52966.              RPC_IF_HANDLE IfSpec,
  52967.              UUID_VECTOR *ObjectVector
  52968.     );
  52969.  
  52970.  
  52971.  
  52972.  
  52973.  
  52974. __declspec(dllimport) RPC_STATUS __stdcall
  52975. RpcNsBindingLookupBeginA(
  52976.          unsigned long EntryNameSyntax,
  52977.              RPC_CSTR EntryName,
  52978.              RPC_IF_HANDLE IfSpec,
  52979.              UUID *ObjUuid,
  52980.          unsigned long BindingMaxCount,
  52981.           RPC_NS_HANDLE *LookupContext
  52982.     );
  52983.  
  52984.  
  52985.  
  52986. __declspec(dllimport) RPC_STATUS __stdcall
  52987. RpcNsBindingLookupBeginW(
  52988.          unsigned long EntryNameSyntax,
  52989.              RPC_WSTR EntryName,
  52990.              RPC_IF_HANDLE IfSpec,
  52991.              UUID *ObjUuid,
  52992.          unsigned long BindingMaxCount,
  52993.           RPC_NS_HANDLE *LookupContext
  52994.     );
  52995.  
  52996.  
  52997. __declspec(dllimport) RPC_STATUS __stdcall
  52998. RpcNsBindingLookupNext(
  52999.         RPC_NS_HANDLE LookupContext,
  53000.         RPC_BINDING_VECTOR * * BindingVec
  53001.     );
  53002.  
  53003. __declspec(dllimport) RPC_STATUS __stdcall
  53004. RpcNsBindingLookupDone(
  53005.            RPC_NS_HANDLE * LookupContext
  53006.     );
  53007.  
  53008.  
  53009.  
  53010. __declspec(dllimport) RPC_STATUS __stdcall
  53011. RpcNsGroupDeleteA(
  53012.          unsigned long GroupNameSyntax,
  53013.              RPC_CSTR GroupName
  53014.     );
  53015.  
  53016. __declspec(dllimport) RPC_STATUS __stdcall
  53017. RpcNsGroupMbrAddA(
  53018.          unsigned long GroupNameSyntax,
  53019.          RPC_CSTR GroupName,
  53020.          unsigned long MemberNameSyntax,
  53021.          RPC_CSTR MemberName
  53022.     );
  53023.  
  53024. __declspec(dllimport) RPC_STATUS __stdcall
  53025. RpcNsGroupMbrRemoveA(
  53026.          unsigned long GroupNameSyntax,
  53027.          RPC_CSTR GroupName,
  53028.          unsigned long MemberNameSyntax,
  53029.          RPC_CSTR MemberName
  53030.     );
  53031.  
  53032. __declspec(dllimport) RPC_STATUS __stdcall
  53033. RpcNsGroupMbrInqBeginA(
  53034.          unsigned long GroupNameSyntax,
  53035.          RPC_CSTR GroupName,
  53036.          unsigned long MemberNameSyntax,
  53037.           RPC_NS_HANDLE *InquiryContext
  53038.     );
  53039.  
  53040. __declspec(dllimport) RPC_STATUS __stdcall
  53041. RpcNsGroupMbrInqNextA(
  53042.             RPC_NS_HANDLE InquiryContext,
  53043.              RPC_CSTR *MemberName
  53044.     );
  53045.  
  53046.  
  53047.  
  53048. __declspec(dllimport) RPC_STATUS __stdcall
  53049. RpcNsGroupDeleteW(
  53050.          unsigned long GroupNameSyntax,
  53051.              RPC_WSTR GroupName
  53052.     );
  53053.  
  53054. __declspec(dllimport) RPC_STATUS __stdcall
  53055. RpcNsGroupMbrAddW(
  53056.          unsigned long GroupNameSyntax,
  53057.          RPC_WSTR GroupName,
  53058.          unsigned long MemberNameSyntax,
  53059.          RPC_WSTR MemberName
  53060.     );
  53061.  
  53062. __declspec(dllimport) RPC_STATUS __stdcall
  53063. RpcNsGroupMbrRemoveW(
  53064.          unsigned long GroupNameSyntax,
  53065.          RPC_WSTR GroupName,
  53066.          unsigned long MemberNameSyntax,
  53067.          RPC_WSTR MemberName
  53068.     );
  53069.  
  53070. __declspec(dllimport) RPC_STATUS __stdcall
  53071. RpcNsGroupMbrInqBeginW(
  53072.          unsigned long GroupNameSyntax,
  53073.          RPC_WSTR GroupName,
  53074.          unsigned long MemberNameSyntax,
  53075.           RPC_NS_HANDLE *InquiryContext
  53076.     );
  53077.  
  53078. __declspec(dllimport) RPC_STATUS __stdcall
  53079. RpcNsGroupMbrInqNextW(
  53080.             RPC_NS_HANDLE InquiryContext,
  53081.              RPC_WSTR *MemberName
  53082.     );
  53083.  
  53084.  
  53085.  
  53086. __declspec(dllimport) RPC_STATUS __stdcall
  53087. RpcNsGroupMbrInqDone(
  53088.            RPC_NS_HANDLE * InquiryContext
  53089.     );
  53090.  
  53091.  
  53092.  
  53093. __declspec(dllimport) RPC_STATUS __stdcall
  53094. RpcNsProfileDeleteA(
  53095.          unsigned long ProfileNameSyntax,
  53096.          RPC_CSTR ProfileName
  53097.     );
  53098.  
  53099. __declspec(dllimport) RPC_STATUS __stdcall
  53100. RpcNsProfileEltAddA(
  53101.          unsigned long ProfileNameSyntax,
  53102.          RPC_CSTR ProfileName,
  53103.              RPC_IF_ID *IfId,
  53104.          unsigned long MemberNameSyntax,
  53105.          RPC_CSTR MemberName,
  53106.          unsigned long Priority,
  53107.              RPC_CSTR Annotation
  53108.     );
  53109.  
  53110. __declspec(dllimport) RPC_STATUS __stdcall
  53111. RpcNsProfileEltRemoveA(
  53112.          unsigned long ProfileNameSyntax,
  53113.          RPC_CSTR ProfileName,
  53114.              RPC_IF_ID *IfId,
  53115.          unsigned long MemberNameSyntax,
  53116.          RPC_CSTR MemberName
  53117.     );
  53118.  
  53119. __declspec(dllimport) RPC_STATUS __stdcall
  53120. RpcNsProfileEltInqBeginA(
  53121.          unsigned long ProfileNameSyntax,
  53122.          RPC_CSTR ProfileName,
  53123.          unsigned long InquiryType,
  53124.              RPC_IF_ID *IfId,
  53125.          unsigned long VersOption,
  53126.          unsigned long MemberNameSyntax,
  53127.              RPC_CSTR MemberName,
  53128.           RPC_NS_HANDLE *InquiryContext
  53129.     );
  53130.  
  53131. __declspec(dllimport) RPC_STATUS __stdcall
  53132. RpcNsProfileEltInqNextA(
  53133.          RPC_NS_HANDLE InquiryContext,
  53134.               RPC_IF_ID *IfId,
  53135.           RPC_CSTR *MemberName,
  53136.           unsigned long *Priority,
  53137.           RPC_CSTR *Annotation
  53138.     );
  53139.  
  53140.  
  53141.  
  53142. __declspec(dllimport) RPC_STATUS __stdcall
  53143. RpcNsProfileDeleteW(
  53144.          unsigned long ProfileNameSyntax,
  53145.          RPC_WSTR ProfileName
  53146.     );
  53147.  
  53148. __declspec(dllimport) RPC_STATUS __stdcall
  53149. RpcNsProfileEltAddW(
  53150.          unsigned long ProfileNameSyntax,
  53151.          RPC_WSTR ProfileName,
  53152.              RPC_IF_ID *IfId,
  53153.          unsigned long MemberNameSyntax,
  53154.          RPC_WSTR MemberName,
  53155.          unsigned long Priority,
  53156.              RPC_WSTR Annotation
  53157.     );
  53158.  
  53159. __declspec(dllimport) RPC_STATUS __stdcall
  53160. RpcNsProfileEltRemoveW(
  53161.          unsigned long ProfileNameSyntax,
  53162.          RPC_WSTR ProfileName,
  53163.              RPC_IF_ID *IfId,
  53164.          unsigned long MemberNameSyntax,
  53165.          RPC_WSTR MemberName
  53166.     );
  53167.  
  53168. __declspec(dllimport) RPC_STATUS __stdcall
  53169. RpcNsProfileEltInqBeginW(
  53170.          unsigned long ProfileNameSyntax,
  53171.          RPC_WSTR ProfileName,
  53172.          unsigned long InquiryType,
  53173.              RPC_IF_ID *IfId,
  53174.          unsigned long VersOption,
  53175.          unsigned long MemberNameSyntax,
  53176.              RPC_WSTR MemberName,
  53177.           RPC_NS_HANDLE *InquiryContext
  53178.     );
  53179.  
  53180. __declspec(dllimport) RPC_STATUS __stdcall
  53181. RpcNsProfileEltInqNextW(
  53182.          RPC_NS_HANDLE InquiryContext,
  53183.               RPC_IF_ID *IfId,
  53184.           RPC_WSTR *MemberName,
  53185.           unsigned long *Priority,
  53186.           RPC_WSTR *Annotation
  53187.     );
  53188.  
  53189.  
  53190.  
  53191. __declspec(dllimport) RPC_STATUS __stdcall
  53192. RpcNsProfileEltInqDone(
  53193.            RPC_NS_HANDLE * InquiryContext
  53194.     );
  53195.  
  53196.  
  53197.  
  53198. __declspec(dllimport) RPC_STATUS __stdcall
  53199. RpcNsEntryObjectInqBeginA(
  53200.          unsigned long EntryNameSyntax,
  53201.          RPC_CSTR EntryName,
  53202.           RPC_NS_HANDLE *InquiryContext
  53203.     );
  53204.  
  53205.  
  53206.  
  53207. __declspec(dllimport) RPC_STATUS __stdcall
  53208. RpcNsEntryObjectInqBeginW(
  53209.          unsigned long EntryNameSyntax,
  53210.          RPC_WSTR EntryName,
  53211.           RPC_NS_HANDLE *InquiryContext
  53212.     );
  53213.  
  53214.  
  53215.  
  53216. __declspec(dllimport) RPC_STATUS __stdcall
  53217. RpcNsEntryObjectInqNext(
  53218.         RPC_NS_HANDLE InquiryContext,
  53219.         UUID * ObjUuid
  53220.     );
  53221.  
  53222. __declspec(dllimport) RPC_STATUS __stdcall
  53223. RpcNsEntryObjectInqDone(
  53224.            RPC_NS_HANDLE * InquiryContext
  53225.     );
  53226.  
  53227.  
  53228.  
  53229. __declspec(dllimport) RPC_STATUS __stdcall
  53230. RpcNsEntryExpandNameA(
  53231.          unsigned long EntryNameSyntax,
  53232.          RPC_CSTR EntryName,
  53233.           RPC_CSTR *ExpandedName
  53234.     );
  53235.  
  53236. __declspec(dllimport) RPC_STATUS __stdcall
  53237. RpcNsMgmtBindingUnexportA(
  53238.          unsigned long EntryNameSyntax,
  53239.          RPC_CSTR EntryName,
  53240.              RPC_IF_ID *IfId,
  53241.          unsigned long VersOption,
  53242.              UUID_VECTOR *ObjectUuidVec
  53243.     );
  53244.  
  53245. __declspec(dllimport) RPC_STATUS __stdcall
  53246. RpcNsMgmtEntryCreateA(
  53247.          unsigned long EntryNameSyntax,
  53248.          RPC_CSTR EntryName
  53249.     );
  53250.  
  53251. __declspec(dllimport) RPC_STATUS __stdcall
  53252. RpcNsMgmtEntryDeleteA(
  53253.          unsigned long EntryNameSyntax,
  53254.          RPC_CSTR EntryName
  53255.     );
  53256.  
  53257. __declspec(dllimport) RPC_STATUS __stdcall
  53258. RpcNsMgmtEntryInqIfIdsA(
  53259.          unsigned long EntryNameSyntax,
  53260.          RPC_CSTR EntryName,
  53261.           RPC_IF_ID_VECTOR * *IfIdVec
  53262.     );
  53263.  
  53264. __declspec(dllimport) RPC_STATUS __stdcall
  53265. RpcNsMgmtHandleSetExpAge(
  53266.        RPC_NS_HANDLE NsHandle,
  53267.        unsigned long ExpirationAge
  53268.     );
  53269.  
  53270. __declspec(dllimport) RPC_STATUS __stdcall
  53271. RpcNsMgmtInqExpAge(
  53272.         unsigned long * ExpirationAge
  53273.     );
  53274.  
  53275. __declspec(dllimport) RPC_STATUS __stdcall
  53276. RpcNsMgmtSetExpAge(
  53277.        unsigned long ExpirationAge
  53278.     );
  53279.  
  53280.  
  53281.  
  53282. __declspec(dllimport) RPC_STATUS __stdcall
  53283. RpcNsEntryExpandNameW(
  53284.          unsigned long EntryNameSyntax,
  53285.          RPC_WSTR EntryName,
  53286.           RPC_WSTR *ExpandedName
  53287.     );
  53288.  
  53289. __declspec(dllimport) RPC_STATUS __stdcall
  53290. RpcNsMgmtBindingUnexportW(
  53291.          unsigned long EntryNameSyntax,
  53292.          RPC_WSTR EntryName,
  53293.              RPC_IF_ID *IfId,
  53294.          unsigned long VersOption,
  53295.              UUID_VECTOR *ObjectUuidVec
  53296.     );
  53297.  
  53298. __declspec(dllimport) RPC_STATUS __stdcall
  53299. RpcNsMgmtEntryCreateW(
  53300.          unsigned long EntryNameSyntax,
  53301.          RPC_WSTR EntryName
  53302.     );
  53303.  
  53304. __declspec(dllimport) RPC_STATUS __stdcall
  53305. RpcNsMgmtEntryDeleteW(
  53306.          unsigned long EntryNameSyntax,
  53307.          RPC_WSTR EntryName
  53308.     );
  53309.  
  53310. __declspec(dllimport) RPC_STATUS __stdcall
  53311. RpcNsMgmtEntryInqIfIdsW(
  53312.          unsigned long EntryNameSyntax,
  53313.          RPC_WSTR EntryName,
  53314.           RPC_IF_ID_VECTOR * *IfIdVec
  53315.     );
  53316.  
  53317.  
  53318.  
  53319.  
  53320.  
  53321. __declspec(dllimport) RPC_STATUS __stdcall
  53322. RpcNsBindingImportBeginA(
  53323.          unsigned long EntryNameSyntax,
  53324.              RPC_CSTR EntryName,
  53325.              RPC_IF_HANDLE IfSpec,
  53326.              UUID *ObjUuid,
  53327.           RPC_NS_HANDLE *ImportContext
  53328.     );
  53329.  
  53330.  
  53331.  
  53332. __declspec(dllimport) RPC_STATUS __stdcall
  53333. RpcNsBindingImportBeginW(
  53334.          unsigned long EntryNameSyntax,
  53335.              RPC_WSTR EntryName,
  53336.              RPC_IF_HANDLE IfSpec,
  53337.              UUID *ObjUuid,
  53338.           RPC_NS_HANDLE *ImportContext
  53339.     );
  53340.  
  53341.  
  53342.  
  53343. __declspec(dllimport) RPC_STATUS __stdcall
  53344. RpcNsBindingImportNext(
  53345.        RPC_NS_HANDLE ImportContext,
  53346.         RPC_BINDING_HANDLE * Binding
  53347.     );
  53348.  
  53349. __declspec(dllimport) RPC_STATUS __stdcall
  53350. RpcNsBindingImportDone(
  53351.            RPC_NS_HANDLE * ImportContext
  53352.     );
  53353.  
  53354. __declspec(dllimport) RPC_STATUS __stdcall
  53355. RpcNsBindingSelect(
  53356.            RPC_BINDING_VECTOR * BindingVec,
  53357.         RPC_BINDING_HANDLE * Binding
  53358.     );
  53359. # 562 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcnsi.h" 3
  53360. #pragma endregion
  53361.  
  53362.  
  53363. #pragma option pop
  53364. # 159 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 2 3
  53365.  
  53366.  
  53367. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcnterr.h" 1 3
  53368. #pragma option push -b -a8 -pc -A- -w-pun
  53369. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcnterr.h" 3
  53370. #pragma region Desktop Family or OneCore Family
  53371. # 555 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcnterr.h" 3
  53372. #pragma endregion
  53373.  
  53374.  
  53375.  
  53376.  
  53377.  
  53378.  
  53379. #pragma option pop
  53380. # 161 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 2 3
  53381.  
  53382.  
  53383.  
  53384.  
  53385.  
  53386.  
  53387. #pragma region Application Family or OneCore Family
  53388. # 206 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 3
  53389. #pragma endregion
  53390. # 219 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 3
  53391. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 1 3
  53392. #pragma option push -b -a8 -pc -A- -w-pun
  53393. # 34 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53394. #pragma region Application Family or OneCore Family
  53395. # 59 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53396. typedef
  53397. enum _RPC_NOTIFICATION_TYPES
  53398. {
  53399.     RpcNotificationTypeNone,
  53400.     RpcNotificationTypeEvent,
  53401.  
  53402.     RpcNotificationTypeApc,
  53403.     RpcNotificationTypeIoc,
  53404.     RpcNotificationTypeHwnd,
  53405.  
  53406.     RpcNotificationTypeCallback
  53407. } RPC_NOTIFICATION_TYPES;
  53408.  
  53409.  
  53410. typedef
  53411. enum _RPC_ASYNC_EVENT {
  53412.     RpcCallComplete,
  53413.     RpcSendComplete,
  53414.     RpcReceiveComplete,
  53415.     RpcClientDisconnect,
  53416.     RpcClientCancel
  53417.     } RPC_ASYNC_EVENT;
  53418. # 93 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53419. struct _RPC_ASYNC_STATE;
  53420.  
  53421. typedef void __stdcall
  53422. RPCNOTIFICATION_ROUTINE (
  53423.                   struct _RPC_ASYNC_STATE *pAsync,
  53424.                   void *Context,
  53425.                   RPC_ASYNC_EVENT Event);
  53426. typedef RPCNOTIFICATION_ROUTINE *PFN_RPCNOTIFICATION_ROUTINE;
  53427.  
  53428. typedef union _RPC_ASYNC_NOTIFICATION_INFO {
  53429.  
  53430.  
  53431.  
  53432.  
  53433.     struct {
  53434.         PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
  53435.         HANDLE hThread;
  53436.         } APC;
  53437.  
  53438.  
  53439.  
  53440.  
  53441.  
  53442.  
  53443.  
  53444.     struct {
  53445.         HANDLE hIOPort;
  53446.         DWORD dwNumberOfBytesTransferred;
  53447.         DWORD_PTR dwCompletionKey;
  53448.         LPOVERLAPPED lpOverlapped;
  53449.         } IOC;
  53450.  
  53451.  
  53452.  
  53453.  
  53454.  
  53455.  
  53456.     struct {
  53457.         HWND hWnd;
  53458.         UINT Msg;
  53459.         } HWND;
  53460. # 143 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53461.     HANDLE hEvent;
  53462. # 156 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53463.     PFN_RPCNOTIFICATION_ROUTINE NotificationRoutine;
  53464. } RPC_ASYNC_NOTIFICATION_INFO, *PRPC_ASYNC_NOTIFICATION_INFO;
  53465.  
  53466. typedef struct _RPC_ASYNC_STATE {
  53467.     unsigned int Size;
  53468.     unsigned long Signature;
  53469.     long Lock;
  53470.     unsigned long Flags;
  53471.     void *StubInfo;
  53472.     void *UserInfo;
  53473.     void *RuntimeInfo;
  53474.     RPC_ASYNC_EVENT Event;
  53475.  
  53476.     RPC_NOTIFICATION_TYPES NotificationType;
  53477.     RPC_ASYNC_NOTIFICATION_INFO u;
  53478.  
  53479.     LONG_PTR Reserved[4];
  53480.     } RPC_ASYNC_STATE, *PRPC_ASYNC_STATE;
  53481. # 182 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53482. __declspec(dllimport)
  53483.  
  53484. RPC_STATUS
  53485. __stdcall
  53486. RpcAsyncRegisterInfo (
  53487.          PRPC_ASYNC_STATE pAsync
  53488.     ) ;
  53489.  
  53490.  
  53491. __declspec(dllimport)
  53492.  
  53493. RPC_STATUS
  53494. __stdcall
  53495. RpcAsyncInitializeHandle (
  53496.                              PRPC_ASYNC_STATE pAsync,
  53497.          unsigned int Size
  53498.     );
  53499.  
  53500. __declspec(dllimport)
  53501.  
  53502. RPC_STATUS
  53503. __stdcall
  53504. RpcAsyncGetCallStatus (
  53505.          PRPC_ASYNC_STATE pAsync
  53506.     ) ;
  53507.  
  53508. __declspec(dllimport)
  53509.  
  53510. RPC_STATUS
  53511. __stdcall
  53512. RpcAsyncCompleteCall (
  53513.             PRPC_ASYNC_STATE pAsync,
  53514.               void *Reply
  53515.     ) ;
  53516.  
  53517. __declspec(dllimport)
  53518.  
  53519. RPC_STATUS
  53520. __stdcall
  53521. RpcAsyncAbortCall (
  53522.             PRPC_ASYNC_STATE pAsync,
  53523.          unsigned long ExceptionCode
  53524.     ) ;
  53525.  
  53526. __declspec(dllimport)
  53527.  
  53528. RPC_STATUS
  53529. __stdcall
  53530. RpcAsyncCancelCall (
  53531.             PRPC_ASYNC_STATE pAsync,
  53532.          BOOL fAbort
  53533.     ) ;
  53534.  
  53535.  
  53536.  
  53537.  
  53538.  
  53539.  
  53540. typedef enum tagExtendedErrorParamTypes
  53541. {
  53542.     eeptAnsiString = 1,
  53543.     eeptUnicodeString,
  53544.     eeptLongVal,
  53545.     eeptShortVal,
  53546.     eeptPointerVal,
  53547.     eeptNone,
  53548.     eeptBinary
  53549. } ExtendedErrorParamTypes;
  53550.  
  53551.  
  53552.  
  53553.  
  53554. typedef struct tagBinaryParam
  53555. {
  53556.     void *Buffer;
  53557.     short Size;
  53558. } BinaryParam;
  53559.  
  53560. typedef struct tagRPC_EE_INFO_PARAM
  53561. {
  53562.     ExtendedErrorParamTypes ParameterType;
  53563.     union
  53564.         {
  53565.         LPSTR AnsiString;
  53566.         LPWSTR UnicodeString;
  53567.         long LVal;
  53568.         short SVal;
  53569.         ULONGLONG PVal;
  53570.         BinaryParam BVal;
  53571.         } u;
  53572. } RPC_EE_INFO_PARAM;
  53573. # 283 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53574. typedef struct tagRPC_EXTENDED_ERROR_INFO
  53575. {
  53576.     ULONG Version;
  53577.     LPWSTR ComputerName;
  53578.     ULONG ProcessID;
  53579.     union
  53580.         {
  53581.  
  53582.         SYSTEMTIME SystemTime;
  53583.         FILETIME FileTime;
  53584.  
  53585.  
  53586.  
  53587.         } u;
  53588.     ULONG GeneratingComponent;
  53589.     ULONG Status;
  53590.     USHORT DetectionLocation;
  53591.     USHORT Flags;
  53592.     int NumberOfParameters;
  53593.     RPC_EE_INFO_PARAM Parameters[4];
  53594. } RPC_EXTENDED_ERROR_INFO;
  53595.  
  53596. typedef struct tagRPC_ERROR_ENUM_HANDLE
  53597. {
  53598.     ULONG Signature;
  53599.     void *CurrentPos;
  53600.     void *Head;
  53601. } RPC_ERROR_ENUM_HANDLE;
  53602.  
  53603. __declspec(dllimport)
  53604. RPC_STATUS
  53605. __stdcall
  53606. RpcErrorStartEnumeration (
  53607.           RPC_ERROR_ENUM_HANDLE *EnumHandle
  53608.     );
  53609.  
  53610. __declspec(dllimport)
  53611. RPC_STATUS
  53612. __stdcall
  53613. RpcErrorGetNextRecord (
  53614.          RPC_ERROR_ENUM_HANDLE *EnumHandle,
  53615.          BOOL CopyStrings,
  53616.           RPC_EXTENDED_ERROR_INFO *ErrorInfo
  53617.     );
  53618.  
  53619. __declspec(dllimport)
  53620. RPC_STATUS
  53621. __stdcall
  53622. RpcErrorEndEnumeration (
  53623.             RPC_ERROR_ENUM_HANDLE *EnumHandle
  53624.     );
  53625.  
  53626. __declspec(dllimport)
  53627. RPC_STATUS
  53628. __stdcall
  53629. RpcErrorResetEnumeration (
  53630.             RPC_ERROR_ENUM_HANDLE *EnumHandle
  53631.     );
  53632.  
  53633. __declspec(dllimport)
  53634. RPC_STATUS
  53635. __stdcall
  53636. RpcErrorGetNumberOfRecords (
  53637.          RPC_ERROR_ENUM_HANDLE *EnumHandle,
  53638.           int *Records
  53639.     );
  53640.  
  53641. __declspec(dllimport)
  53642. RPC_STATUS
  53643. __stdcall
  53644. RpcErrorSaveErrorInfo (
  53645.          RPC_ERROR_ENUM_HANDLE *EnumHandle,
  53646.                                           PVOID *ErrorBlob,
  53647.           size_t *BlobSize
  53648.     );
  53649.  
  53650. __declspec(dllimport)
  53651. RPC_STATUS
  53652. __stdcall
  53653. RpcErrorLoadErrorInfo (
  53654.                                PVOID ErrorBlob,
  53655.          size_t BlobSize,
  53656.           RPC_ERROR_ENUM_HANDLE *EnumHandle
  53657.     );
  53658.  
  53659. __declspec(dllimport)
  53660. RPC_STATUS
  53661. __stdcall
  53662. RpcErrorAddRecord (
  53663.          RPC_EXTENDED_ERROR_INFO *ErrorInfo
  53664.     );
  53665.  
  53666. __declspec(dllimport)
  53667. void
  53668. __stdcall
  53669. RpcErrorClearInformation (
  53670.     void
  53671.     );
  53672.  
  53673.  
  53674. #pragma endregion
  53675.  
  53676. #pragma region Desktop Family or OneCore Family
  53677.  
  53678.  
  53679.  
  53680.  
  53681.  
  53682.  
  53683. __declspec(dllimport)
  53684. RPC_STATUS
  53685. __stdcall
  53686. RpcAsyncCleanupThread (
  53687.          DWORD dwTimeout
  53688.     );
  53689.  
  53690. __declspec(dllimport)
  53691. RPC_STATUS
  53692. __stdcall
  53693. RpcGetAuthorizationContextForClient (
  53694.              RPC_BINDING_HANDLE ClientBinding,
  53695.          BOOL ImpersonateOnReturn,
  53696.              PVOID Reserved1,
  53697.              PLARGE_INTEGER pExpirationTime,
  53698.          LUID Reserved2,
  53699.          DWORD Reserved3,
  53700.              PVOID Reserved4,
  53701.           PVOID *pAuthzClientContext
  53702.     );
  53703.  
  53704. __declspec(dllimport)
  53705. RPC_STATUS
  53706. __stdcall
  53707. RpcFreeAuthorizationContext (
  53708.             PVOID *pAuthzClientContext
  53709.     );
  53710.  
  53711. __declspec(dllimport)
  53712. RPC_STATUS
  53713. __stdcall
  53714. RpcSsContextLockExclusive (
  53715.              RPC_BINDING_HANDLE ServerBindingHandle,
  53716.          PVOID UserContext
  53717.     );
  53718.  
  53719. __declspec(dllimport)
  53720. RPC_STATUS
  53721. __stdcall
  53722. RpcSsContextLockShared (
  53723.          RPC_BINDING_HANDLE ServerBindingHandle,
  53724.          PVOID UserContext
  53725.     );
  53726.  
  53727.  
  53728. typedef enum tagRpcLocalAddressFormat
  53729. {
  53730.     rlafInvalid = 0,
  53731.     rlafIPv4,
  53732.     rlafIPv6
  53733. } RpcLocalAddressFormat;
  53734.  
  53735. typedef struct _RPC_CALL_LOCAL_ADDRESS_V1
  53736. {
  53737.     unsigned int Version;
  53738.     void *Buffer;
  53739.     unsigned long BufferSize;
  53740.     RpcLocalAddressFormat AddressFormat;
  53741. } RPC_CALL_LOCAL_ADDRESS_V1, *PRPC_CALL_LOCAL_ADDRESS_V1;
  53742. # 475 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53743. typedef struct tagRPC_CALL_ATTRIBUTES_V1_W
  53744. {
  53745.     unsigned int Version;
  53746.     unsigned long Flags;
  53747.     unsigned long ServerPrincipalNameBufferLength;
  53748.     unsigned short *ServerPrincipalName;
  53749.     unsigned long ClientPrincipalNameBufferLength;
  53750.     unsigned short *ClientPrincipalName;
  53751.     unsigned long AuthenticationLevel;
  53752.     unsigned long AuthenticationService;
  53753.     BOOL NullSession;
  53754. } RPC_CALL_ATTRIBUTES_V1_W;
  53755.  
  53756. typedef struct tagRPC_CALL_ATTRIBUTES_V1_A
  53757. {
  53758.     unsigned int Version;
  53759.     unsigned long Flags;
  53760.     unsigned long ServerPrincipalNameBufferLength;
  53761.     unsigned char *ServerPrincipalName;
  53762.     unsigned long ClientPrincipalNameBufferLength;
  53763.     unsigned char *ClientPrincipalName;
  53764.     unsigned long AuthenticationLevel;
  53765.     unsigned long AuthenticationService;
  53766.     BOOL NullSession;
  53767. } RPC_CALL_ATTRIBUTES_V1_A;
  53768.  
  53769.  
  53770.  
  53771.  
  53772.  
  53773.  
  53774. typedef enum tagRpcCallType
  53775. {
  53776.     rctInvalid = 0,
  53777.     rctNormal,
  53778.     rctTraining,
  53779.     rctGuaranteed
  53780. } RpcCallType;
  53781.  
  53782. typedef enum tagRpcCallClientLocality
  53783. {
  53784.     rcclInvalid = 0,
  53785.     rcclLocal,
  53786.     rcclRemote,
  53787.     rcclClientUnknownLocality
  53788. } RpcCallClientLocality;
  53789.  
  53790.  
  53791. typedef struct tagRPC_CALL_ATTRIBUTES_V2_W
  53792. {
  53793.     unsigned int Version;
  53794.     unsigned long Flags;
  53795.     unsigned long ServerPrincipalNameBufferLength;
  53796.     unsigned short *ServerPrincipalName;
  53797.     unsigned long ClientPrincipalNameBufferLength;
  53798.     unsigned short *ClientPrincipalName;
  53799.     unsigned long AuthenticationLevel;
  53800.     unsigned long AuthenticationService;
  53801.     BOOL NullSession;
  53802.     BOOL KernelModeCaller;
  53803.     unsigned long ProtocolSequence;
  53804.     RpcCallClientLocality IsClientLocal;
  53805.     HANDLE ClientPID;
  53806.     unsigned long CallStatus;
  53807.     RpcCallType CallType;
  53808.     RPC_CALL_LOCAL_ADDRESS_V1 *CallLocalAddress;
  53809.     unsigned short OpNum;
  53810.     UUID InterfaceUuid;
  53811. } RPC_CALL_ATTRIBUTES_V2_W;
  53812.  
  53813. typedef struct tagRPC_CALL_ATTRIBUTES_V2_A
  53814. {
  53815.     unsigned int Version;
  53816.     unsigned long Flags;
  53817.     unsigned long ServerPrincipalNameBufferLength;
  53818.     unsigned char *ServerPrincipalName;
  53819.     unsigned long ClientPrincipalNameBufferLength;
  53820.     unsigned char *ClientPrincipalName;
  53821.     unsigned long AuthenticationLevel;
  53822.     unsigned long AuthenticationService;
  53823.     BOOL NullSession;
  53824.     BOOL KernelModeCaller;
  53825.     unsigned long ProtocolSequence;
  53826.     unsigned long IsClientLocal;
  53827.     HANDLE ClientPID;
  53828.     unsigned long CallStatus;
  53829.     RpcCallType CallType;
  53830.     RPC_CALL_LOCAL_ADDRESS_V1 *CallLocalAddress;
  53831.     unsigned short OpNum;
  53832.     UUID InterfaceUuid;
  53833. } RPC_CALL_ATTRIBUTES_V2_A;
  53834.  
  53835.  
  53836.  
  53837. typedef struct tagRPC_CALL_ATTRIBUTES_V3_W
  53838. {
  53839.     unsigned int Version;
  53840.     unsigned long Flags;
  53841.     unsigned long ServerPrincipalNameBufferLength;
  53842.     unsigned short *ServerPrincipalName;
  53843.     unsigned long ClientPrincipalNameBufferLength;
  53844.     unsigned short *ClientPrincipalName;
  53845.     unsigned long AuthenticationLevel;
  53846.     unsigned long AuthenticationService;
  53847.     BOOL NullSession;
  53848.     BOOL KernelModeCaller;
  53849.     unsigned long ProtocolSequence;
  53850.     RpcCallClientLocality IsClientLocal;
  53851.     HANDLE ClientPID;
  53852.     unsigned long CallStatus;
  53853.     RpcCallType CallType;
  53854.     RPC_CALL_LOCAL_ADDRESS_V1 *CallLocalAddress;
  53855.     unsigned short OpNum;
  53856.     UUID InterfaceUuid;
  53857.     unsigned long ClientIdentifierBufferLength;
  53858.     unsigned char *ClientIdentifier;
  53859. } RPC_CALL_ATTRIBUTES_V3_W;
  53860.  
  53861. typedef struct tagRPC_CALL_ATTRIBUTES_V3_A
  53862. {
  53863.     unsigned int Version;
  53864.     unsigned long Flags;
  53865.     unsigned long ServerPrincipalNameBufferLength;
  53866.     unsigned char *ServerPrincipalName;
  53867.     unsigned long ClientPrincipalNameBufferLength;
  53868.     unsigned char *ClientPrincipalName;
  53869.     unsigned long AuthenticationLevel;
  53870.     unsigned long AuthenticationService;
  53871.     BOOL NullSession;
  53872.     BOOL KernelModeCaller;
  53873.     unsigned long ProtocolSequence;
  53874.     unsigned long IsClientLocal;
  53875.     HANDLE ClientPID;
  53876.     unsigned long CallStatus;
  53877.     RpcCallType CallType;
  53878.     RPC_CALL_LOCAL_ADDRESS_V1 *CallLocalAddress;
  53879.     unsigned short OpNum;
  53880.     UUID InterfaceUuid;
  53881.     unsigned long ClientIdentifierBufferLength;
  53882.     unsigned char *ClientIdentifier;
  53883. } RPC_CALL_ATTRIBUTES_V3_A;
  53884.  
  53885.  
  53886.  
  53887. __declspec(dllimport)
  53888. RPC_STATUS
  53889. __stdcall
  53890. RpcServerInqCallAttributesW (
  53891.              RPC_BINDING_HANDLE ClientBinding,
  53892.             void *RpcCallAttributes
  53893.     );
  53894.  
  53895. __declspec(dllimport)
  53896. RPC_STATUS
  53897. __stdcall
  53898. RpcServerInqCallAttributesA (
  53899.              RPC_BINDING_HANDLE ClientBinding,
  53900.             void *RpcCallAttributes
  53901.     );
  53902. # 656 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53903. typedef RPC_CALL_ATTRIBUTES_V3_A RPC_CALL_ATTRIBUTES;
  53904. # 665 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  53905. typedef enum _RPC_NOTIFICATIONS
  53906. {
  53907.     RpcNotificationCallNone = 0,
  53908.     RpcNotificationClientDisconnect = 1,
  53909.     RpcNotificationCallCancel = 2
  53910. } RPC_NOTIFICATIONS;
  53911.  
  53912.  
  53913.  
  53914. __declspec(dllimport)
  53915. RPC_STATUS
  53916. __stdcall
  53917. RpcServerSubscribeForNotification (
  53918.              RPC_BINDING_HANDLE Binding,
  53919.          RPC_NOTIFICATIONS Notification,
  53920.          RPC_NOTIFICATION_TYPES NotificationType,
  53921.          RPC_ASYNC_NOTIFICATION_INFO *NotificationInfo
  53922.     );
  53923.  
  53924. __declspec(dllimport)
  53925. RPC_STATUS
  53926. __stdcall
  53927. RpcServerUnsubscribeForNotification (
  53928.              RPC_BINDING_HANDLE Binding,
  53929.          RPC_NOTIFICATIONS Notification,
  53930.           unsigned long *NotificationsQueued
  53931.     );
  53932.  
  53933.  
  53934.  
  53935.  
  53936.  
  53937.  
  53938.  
  53939. #pragma endregion
  53940.  
  53941. #pragma region Application Family or OneCore Family
  53942.  
  53943.  
  53944. __declspec(dllimport)
  53945. RPC_STATUS
  53946. __stdcall
  53947. RpcBindingBind (
  53948.              PRPC_ASYNC_STATE pAsync,
  53949.          RPC_BINDING_HANDLE Binding,
  53950.          RPC_IF_HANDLE IfSpec
  53951.     );
  53952.  
  53953. __declspec(dllimport)
  53954. RPC_STATUS
  53955. __stdcall
  53956. RpcBindingUnbind (
  53957.          RPC_BINDING_HANDLE Binding
  53958.     );
  53959.  
  53960.  
  53961.  
  53962.  
  53963.  
  53964. #pragma endregion
  53965.  
  53966. #pragma region Desktop Family or OneCore Family
  53967.  
  53968.  
  53969.  
  53970.  
  53971.  
  53972.  
  53973.  
  53974. RPC_STATUS __stdcall
  53975. I_RpcAsyncSetHandle (
  53976.           PRPC_MESSAGE Message,
  53977.           PRPC_ASYNC_STATE pAsync
  53978.     );
  53979.  
  53980.  
  53981. RPC_STATUS __stdcall
  53982. I_RpcAsyncAbortCall (
  53983.          PRPC_ASYNC_STATE pAsync,
  53984.          unsigned long ExceptionCode
  53985.     ) ;
  53986.  
  53987.  
  53988. int
  53989. __stdcall
  53990. I_RpcExceptionFilter (
  53991.          unsigned long ExceptionCode
  53992.     );
  53993.  
  53994.  
  53995.  
  53996.  
  53997. __declspec(dllimport)
  53998. RPC_STATUS
  53999. __stdcall
  54000. I_RpcBindingInqClientTokenAttributes (
  54001.          RPC_BINDING_HANDLE Binding,
  54002.               LUID * TokenId,
  54003.               LUID * AuthenticationId,
  54004.               LUID * ModifiedId
  54005.     );
  54006.  
  54007.  
  54008.  
  54009.  
  54010.  
  54011.  
  54012.  
  54013.  
  54014. #pragma endregion
  54015. # 786 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcasync.h" 3
  54016. #pragma option pop
  54017. # 219 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 2 3
  54018. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpc.h" 3
  54019. #pragma option pop
  54020. # 229 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  54021.  
  54022.  
  54023. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 1 3
  54024. #pragma option push -b -a8 -pc -A- -w-pun
  54025. # 58 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54026. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  54027. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  54028. #pragma warning(disable: 4103)
  54029.  
  54030. #pragma pack(push,1)
  54031. # 58 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 2 3
  54032.  
  54033.  
  54034.  
  54035.  
  54036.  
  54037.  
  54038.  
  54039.  
  54040. #pragma region Desktop Family
  54041.  
  54042.  
  54043.  
  54044.  
  54045. struct HDROP__{int unused;}; typedef struct HDROP__ *HDROP;
  54046.  
  54047.  
  54048. extern __declspec(dllimport) UINT __stdcall DragQueryFileA( HDROP hDrop, UINT iFile, LPSTR lpszFile, UINT cch);
  54049.  
  54050. extern __declspec(dllimport) UINT __stdcall DragQueryFileW( HDROP hDrop, UINT iFile, LPWSTR lpszFile, UINT cch);
  54051.  
  54052.  
  54053.  
  54054.  
  54055.  
  54056. extern __declspec(dllimport) BOOL __stdcall DragQueryPoint( HDROP hDrop, POINT *ppt);
  54057. extern __declspec(dllimport) void __stdcall DragFinish( HDROP hDrop);
  54058. extern __declspec(dllimport) void __stdcall DragAcceptFiles( HWND hWnd, BOOL fAccept);
  54059.  
  54060. extern __declspec(dllimport) HINSTANCE __stdcall ShellExecuteA( HWND hwnd, LPCSTR lpOperation, LPCSTR lpFile, LPCSTR lpParameters,
  54061.              LPCSTR lpDirectory, INT nShowCmd);
  54062. extern __declspec(dllimport) HINSTANCE __stdcall ShellExecuteW( HWND hwnd, LPCWSTR lpOperation, LPCWSTR lpFile, LPCWSTR lpParameters,
  54063.              LPCWSTR lpDirectory, INT nShowCmd);
  54064.  
  54065.  
  54066.  
  54067.  
  54068.  
  54069.  
  54070. extern __declspec(dllimport) HINSTANCE __stdcall FindExecutableA( LPCSTR lpFile, LPCSTR lpDirectory, LPSTR lpResult);
  54071.  
  54072. extern __declspec(dllimport) HINSTANCE __stdcall FindExecutableW( LPCWSTR lpFile, LPCWSTR lpDirectory, LPWSTR lpResult);
  54073.  
  54074.  
  54075.  
  54076.  
  54077.  
  54078. extern __declspec(dllimport) LPWSTR * __stdcall CommandLineToArgvW( LPCWSTR lpCmdLine, int* pNumArgs);
  54079.  
  54080. extern __declspec(dllimport) INT __stdcall ShellAboutA( HWND hWnd, LPCSTR szApp, LPCSTR szOtherStuff, HICON hIcon);
  54081. extern __declspec(dllimport) INT __stdcall ShellAboutW( HWND hWnd, LPCWSTR szApp, LPCWSTR szOtherStuff, HICON hIcon);
  54082.  
  54083.  
  54084.  
  54085.  
  54086.  
  54087. extern __declspec(dllimport) HICON __stdcall DuplicateIcon( HINSTANCE hInst, HICON hIcon);
  54088. extern __declspec(dllimport) HICON __stdcall ExtractAssociatedIconA( HINSTANCE hInst, LPSTR pszIconPath, WORD *piIcon);
  54089. extern __declspec(dllimport) HICON __stdcall ExtractAssociatedIconW( HINSTANCE hInst, LPWSTR pszIconPath, WORD *piIcon);
  54090.  
  54091.  
  54092.  
  54093.  
  54094.  
  54095. extern __declspec(dllimport) HICON __stdcall ExtractAssociatedIconExA( HINSTANCE hInst, LPSTR pszIconPath, WORD *piIconIndex, WORD *piIconId);
  54096. extern __declspec(dllimport) HICON __stdcall ExtractAssociatedIconExW( HINSTANCE hInst, LPWSTR pszIconPath, WORD *piIconIndex, WORD *piIconId);
  54097.  
  54098.  
  54099.  
  54100.  
  54101.  
  54102. extern __declspec(dllimport) HICON __stdcall ExtractIconA( HINSTANCE hInst, LPCSTR pszExeFileName, UINT nIconIndex);
  54103. extern __declspec(dllimport) HICON __stdcall ExtractIconW( HINSTANCE hInst, LPCWSTR pszExeFileName, UINT nIconIndex);
  54104. # 138 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54105. typedef struct _DRAGINFOA {
  54106.     UINT uSize;
  54107.     POINT pt;
  54108.     BOOL fNC;
  54109.     PZZSTR lpFileList;
  54110.     DWORD grfKeyState;
  54111. } DRAGINFOA, *LPDRAGINFOA;
  54112. typedef struct _DRAGINFOW {
  54113.     UINT uSize;
  54114.     POINT pt;
  54115.     BOOL fNC;
  54116.     PZZWSTR lpFileList;
  54117.     DWORD grfKeyState;
  54118. } DRAGINFOW, *LPDRAGINFOW;
  54119.  
  54120.  
  54121.  
  54122.  
  54123. typedef DRAGINFOA DRAGINFO;
  54124. typedef LPDRAGINFOA LPDRAGINFO;
  54125. # 200 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54126. typedef struct _AppBarData
  54127. {
  54128.     DWORD cbSize;
  54129.     HWND hWnd;
  54130.     UINT uCallbackMessage;
  54131.     UINT uEdge;
  54132.     RECT rc;
  54133.     LPARAM lParam;
  54134. } APPBARDATA, *PAPPBARDATA;
  54135.  
  54136.  
  54137. extern __declspec(dllimport) UINT_PTR __stdcall SHAppBarMessage( DWORD dwMessage, PAPPBARDATA pData);
  54138.  
  54139.  
  54140.  
  54141.  
  54142.  
  54143. extern __declspec(dllimport) DWORD __stdcall DoEnvironmentSubstA( LPSTR pszSrc, UINT cchSrc);
  54144. extern __declspec(dllimport) DWORD __stdcall DoEnvironmentSubstW( LPWSTR pszSrc, UINT cchSrc);
  54145.  
  54146.  
  54147.  
  54148.  
  54149.  
  54150.  
  54151.  
  54152. extern __declspec(dllimport) UINT __stdcall ExtractIconExA( LPCSTR lpszFile, int nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIcons);
  54153. extern __declspec(dllimport) UINT __stdcall ExtractIconExW( LPCWSTR lpszFile, int nIconIndex, HICON *phiconLarge, HICON *phiconSmall, UINT nIcons);
  54154. # 264 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54155. typedef WORD FILEOP_FLAGS;
  54156. # 277 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54157. typedef WORD PRINTEROP_FLAGS;
  54158. # 286 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54159. typedef struct _SHFILEOPSTRUCTA
  54160. {
  54161.     HWND hwnd;
  54162.     UINT wFunc;
  54163.     PCZZSTR pFrom;
  54164.     PCZZSTR pTo;
  54165.     FILEOP_FLAGS fFlags;
  54166.     BOOL fAnyOperationsAborted;
  54167.     LPVOID hNameMappings;
  54168.     PCSTR lpszProgressTitle;
  54169. } SHFILEOPSTRUCTA, *LPSHFILEOPSTRUCTA;
  54170. typedef struct _SHFILEOPSTRUCTW
  54171. {
  54172.     HWND hwnd;
  54173.     UINT wFunc;
  54174.     PCZZWSTR pFrom;
  54175.     PCZZWSTR pTo;
  54176.     FILEOP_FLAGS fFlags;
  54177.     BOOL fAnyOperationsAborted;
  54178.     LPVOID hNameMappings;
  54179.     PCWSTR lpszProgressTitle;
  54180. } SHFILEOPSTRUCTW, *LPSHFILEOPSTRUCTW;
  54181.  
  54182.  
  54183.  
  54184.  
  54185. typedef SHFILEOPSTRUCTA SHFILEOPSTRUCT;
  54186. typedef LPSHFILEOPSTRUCTA LPSHFILEOPSTRUCT;
  54187.  
  54188.  
  54189. extern __declspec(dllimport) int __stdcall SHFileOperationA( LPSHFILEOPSTRUCTA lpFileOp);
  54190. extern __declspec(dllimport) int __stdcall SHFileOperationW( LPSHFILEOPSTRUCTW lpFileOp);
  54191.  
  54192.  
  54193.  
  54194.  
  54195.  
  54196. extern __declspec(dllimport) void __stdcall SHFreeNameMappings( HANDLE hNameMappings);
  54197.  
  54198. typedef struct _SHNAMEMAPPINGA
  54199. {
  54200.     LPSTR pszOldPath;
  54201.     LPSTR pszNewPath;
  54202.     int cchOldPath;
  54203.     int cchNewPath;
  54204. } SHNAMEMAPPINGA, *LPSHNAMEMAPPINGA;
  54205. typedef struct _SHNAMEMAPPINGW
  54206. {
  54207.     LPWSTR pszOldPath;
  54208.     LPWSTR pszNewPath;
  54209.     int cchOldPath;
  54210.     int cchNewPath;
  54211. } SHNAMEMAPPINGW, *LPSHNAMEMAPPINGW;
  54212.  
  54213.  
  54214.  
  54215.  
  54216. typedef SHNAMEMAPPINGA SHNAMEMAPPING;
  54217. typedef LPSHNAMEMAPPINGA LPSHNAMEMAPPING;
  54218. # 438 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54219. typedef struct _SHELLEXECUTEINFOA
  54220. {
  54221.     DWORD cbSize;
  54222.     ULONG fMask;
  54223.     HWND hwnd;
  54224.     LPCSTR lpVerb;
  54225.     LPCSTR lpFile;
  54226.     LPCSTR lpParameters;
  54227.     LPCSTR lpDirectory;
  54228.     int nShow;
  54229.     HINSTANCE hInstApp;
  54230.     void *lpIDList;
  54231.     LPCSTR lpClass;
  54232.     HKEY hkeyClass;
  54233.     DWORD dwHotKey;
  54234.     union
  54235.     {
  54236.         HANDLE hIcon;
  54237.  
  54238.         HANDLE hMonitor;
  54239.  
  54240.     } ;
  54241.     HANDLE hProcess;
  54242. } SHELLEXECUTEINFOA, *LPSHELLEXECUTEINFOA;
  54243. typedef struct _SHELLEXECUTEINFOW
  54244. {
  54245.     DWORD cbSize;
  54246.     ULONG fMask;
  54247.     HWND hwnd;
  54248.     LPCWSTR lpVerb;
  54249.     LPCWSTR lpFile;
  54250.     LPCWSTR lpParameters;
  54251.     LPCWSTR lpDirectory;
  54252.     int nShow;
  54253.     HINSTANCE hInstApp;
  54254.     void *lpIDList;
  54255.     LPCWSTR lpClass;
  54256.     HKEY hkeyClass;
  54257.     DWORD dwHotKey;
  54258.     union
  54259.     {
  54260.         HANDLE hIcon;
  54261.  
  54262.         HANDLE hMonitor;
  54263.  
  54264.     } ;
  54265.     HANDLE hProcess;
  54266. } SHELLEXECUTEINFOW, *LPSHELLEXECUTEINFOW;
  54267.  
  54268.  
  54269.  
  54270.  
  54271. typedef SHELLEXECUTEINFOA SHELLEXECUTEINFO;
  54272. typedef LPSHELLEXECUTEINFOA LPSHELLEXECUTEINFO;
  54273.  
  54274.  
  54275. extern __declspec(dllimport) BOOL __stdcall ShellExecuteExA( SHELLEXECUTEINFOA *pExecInfo);
  54276. extern __declspec(dllimport) BOOL __stdcall ShellExecuteExW( SHELLEXECUTEINFOW *pExecInfo);
  54277. # 504 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54278. typedef struct _SHCREATEPROCESSINFOW
  54279. {
  54280.     DWORD cbSize;
  54281.     ULONG fMask;
  54282.     HWND hwnd;
  54283.     LPCWSTR pszFile;
  54284.     LPCWSTR pszParameters;
  54285.     LPCWSTR pszCurrentDirectory;
  54286.     HANDLE hUserToken;
  54287.     LPSECURITY_ATTRIBUTES lpProcessAttributes;
  54288.     LPSECURITY_ATTRIBUTES lpThreadAttributes;
  54289.     BOOL bInheritHandles;
  54290.     DWORD dwCreationFlags;
  54291.     LPSTARTUPINFOW lpStartupInfo;
  54292.     LPPROCESS_INFORMATION lpProcessInformation;
  54293. } SHCREATEPROCESSINFOW, *PSHCREATEPROCESSINFOW;
  54294.  
  54295. extern __declspec(dllimport) BOOL __stdcall SHCreateProcessAsUserW( PSHCREATEPROCESSINFOW pscpi);
  54296.  
  54297.  
  54298.  
  54299.  
  54300. extern __declspec(dllimport) HRESULT __stdcall SHEvaluateSystemCommandTemplate( PCWSTR pszCmdTemplate, PWSTR *ppszApplication, PWSTR *ppszCommandLine, PWSTR *ppszParameters);
  54301. # 862 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54302. typedef enum ASSOCCLASS
  54303. {
  54304.     ASSOCCLASS_SHELL_KEY = 0,
  54305.     ASSOCCLASS_PROGID_KEY,
  54306.     ASSOCCLASS_PROGID_STR,
  54307.     ASSOCCLASS_CLSID_KEY,
  54308.     ASSOCCLASS_CLSID_STR,
  54309.     ASSOCCLASS_APP_KEY,
  54310.     ASSOCCLASS_APP_STR,
  54311.     ASSOCCLASS_SYSTEM_STR,
  54312.     ASSOCCLASS_FOLDER,
  54313.     ASSOCCLASS_STAR,
  54314.  
  54315.     ASSOCCLASS_FIXED_PROGID_STR,
  54316.     ASSOCCLASS_PROTOCOL_STR,
  54317.  
  54318. } ASSOCCLASS;
  54319.  
  54320. typedef struct ASSOCIATIONELEMENT
  54321. {
  54322.     ASSOCCLASS ac;
  54323.     HKEY hkClass;
  54324.     PCWSTR pszClass;
  54325. } ASSOCIATIONELEMENT;
  54326.  
  54327.  
  54328.  
  54329. extern __declspec(dllimport) HRESULT __stdcall AssocCreateForClasses( const ASSOCIATIONELEMENT *rgClasses, ULONG cClasses, const IID * riid, void **ppv);
  54330. # 935 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54331. typedef struct _SHQUERYRBINFO {
  54332.     DWORD cbSize;
  54333.  
  54334.     __int64 i64Size;
  54335.     __int64 i64NumItems;
  54336.  
  54337.  
  54338.  
  54339.  
  54340. } SHQUERYRBINFO, *LPSHQUERYRBINFO;
  54341. # 954 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54342. extern __declspec(dllimport) HRESULT __stdcall SHQueryRecycleBinA( LPCSTR pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo);
  54343. extern __declspec(dllimport) HRESULT __stdcall SHQueryRecycleBinW( LPCWSTR pszRootPath, LPSHQUERYRBINFO pSHQueryRBInfo);
  54344.  
  54345.  
  54346.  
  54347.  
  54348.  
  54349. extern __declspec(dllimport) HRESULT __stdcall SHEmptyRecycleBinA( HWND hwnd, LPCSTR pszRootPath, DWORD dwFlags);
  54350. extern __declspec(dllimport) HRESULT __stdcall SHEmptyRecycleBinW( HWND hwnd, LPCWSTR pszRootPath, DWORD dwFlags);
  54351. # 979 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54352. typedef enum
  54353. {
  54354.     QUNS_NOT_PRESENT = 1,
  54355.     QUNS_BUSY = 2,
  54356.     QUNS_RUNNING_D3D_FULL_SCREEN = 3,
  54357.     QUNS_PRESENTATION_MODE = 4,
  54358.     QUNS_ACCEPTS_NOTIFICATIONS = 5,
  54359.  
  54360.     QUNS_QUIET_TIME = 6,
  54361.  
  54362.  
  54363.     QUNS_APP = 7,
  54364.  
  54365. } QUERY_USER_NOTIFICATION_STATE;
  54366.  
  54367. extern __declspec(dllimport) HRESULT __stdcall SHQueryUserNotificationState( QUERY_USER_NOTIFICATION_STATE *pquns);
  54368.  
  54369.  
  54370.  
  54371.  
  54372. extern __declspec(dllimport) HRESULT __stdcall SHGetPropertyStoreForWindow( HWND hwnd, const IID * riid, void** ppv);
  54373.  
  54374.  
  54375.  
  54376. typedef struct _NOTIFYICONDATAA {
  54377.     DWORD cbSize;
  54378.     HWND hWnd;
  54379.     UINT uID;
  54380.     UINT uFlags;
  54381.     UINT uCallbackMessage;
  54382.     HICON hIcon;
  54383.  
  54384.  
  54385.  
  54386.  
  54387.     CHAR szTip[128];
  54388.     DWORD dwState;
  54389.     DWORD dwStateMask;
  54390.     CHAR szInfo[256];
  54391.  
  54392.     union {
  54393.         UINT uTimeout;
  54394.         UINT uVersion;
  54395.     } ;
  54396.  
  54397.     CHAR szInfoTitle[64];
  54398.     DWORD dwInfoFlags;
  54399.  
  54400.  
  54401.     GUID guidItem;
  54402.  
  54403.  
  54404.     HICON hBalloonIcon;
  54405.  
  54406. } NOTIFYICONDATAA, *PNOTIFYICONDATAA;
  54407. typedef struct _NOTIFYICONDATAW {
  54408.     DWORD cbSize;
  54409.     HWND hWnd;
  54410.     UINT uID;
  54411.     UINT uFlags;
  54412.     UINT uCallbackMessage;
  54413.     HICON hIcon;
  54414.  
  54415.  
  54416.  
  54417.  
  54418.     WCHAR szTip[128];
  54419.     DWORD dwState;
  54420.     DWORD dwStateMask;
  54421.     WCHAR szInfo[256];
  54422.  
  54423.     union {
  54424.         UINT uTimeout;
  54425.         UINT uVersion;
  54426.     } ;
  54427.  
  54428.     WCHAR szInfoTitle[64];
  54429.     DWORD dwInfoFlags;
  54430.  
  54431.  
  54432.     GUID guidItem;
  54433.  
  54434.  
  54435.     HICON hBalloonIcon;
  54436.  
  54437. } NOTIFYICONDATAW, *PNOTIFYICONDATAW;
  54438.  
  54439.  
  54440.  
  54441.  
  54442. typedef NOTIFYICONDATAA NOTIFYICONDATA;
  54443. typedef PNOTIFYICONDATAA PNOTIFYICONDATA;
  54444. # 1170 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54445. typedef struct _NOTIFYICONIDENTIFIER {
  54446.     DWORD cbSize;
  54447.     HWND hWnd;
  54448.     UINT uID;
  54449.     GUID guidItem;
  54450. } NOTIFYICONIDENTIFIER, *PNOTIFYICONIDENTIFIER;
  54451.  
  54452.  
  54453. extern __declspec(dllimport) BOOL __stdcall Shell_NotifyIconA(DWORD dwMessage, PNOTIFYICONDATAA lpData);
  54454. extern __declspec(dllimport) BOOL __stdcall Shell_NotifyIconW(DWORD dwMessage, PNOTIFYICONDATAW lpData);
  54455.  
  54456.  
  54457.  
  54458.  
  54459.  
  54460.  
  54461.  
  54462. extern __declspec(dllimport) HRESULT __stdcall Shell_NotifyIconGetRect( const NOTIFYICONIDENTIFIER* identifier, RECT* iconLocation);
  54463. # 1216 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54464. typedef struct _SHFILEINFOA
  54465. {
  54466.         HICON hIcon;
  54467.         int iIcon;
  54468.         DWORD dwAttributes;
  54469.         CHAR szDisplayName[260];
  54470.         CHAR szTypeName[80];
  54471. } SHFILEINFOA;
  54472. typedef struct _SHFILEINFOW
  54473. {
  54474.         HICON hIcon;
  54475.         int iIcon;
  54476.         DWORD dwAttributes;
  54477.         WCHAR szDisplayName[260];
  54478.         WCHAR szTypeName[80];
  54479. } SHFILEINFOW;
  54480.  
  54481.  
  54482.  
  54483. typedef SHFILEINFOA SHFILEINFO;
  54484. # 1265 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54485. extern __declspec(dllimport) DWORD_PTR __stdcall SHGetFileInfoA( LPCSTR pszPath, DWORD dwFileAttributes, SHFILEINFOA *psfi,
  54486.     UINT cbFileInfo, UINT uFlags);
  54487. extern __declspec(dllimport) DWORD_PTR __stdcall SHGetFileInfoW( LPCWSTR pszPath, DWORD dwFileAttributes, SHFILEINFOW *psfi,
  54488.     UINT cbFileInfo, UINT uFlags);
  54489.  
  54490.  
  54491.  
  54492.  
  54493.  
  54494.  
  54495.  
  54496. typedef struct _SHSTOCKICONINFO
  54497. {
  54498.     DWORD cbSize;
  54499.     HICON hIcon;
  54500.     int iSysImageIndex;
  54501.     int iIcon;
  54502.     WCHAR szPath[260];
  54503. } SHSTOCKICONINFO;
  54504. # 1297 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54505. typedef enum SHSTOCKICONID
  54506. {
  54507.     SIID_DOCNOASSOC = 0,
  54508.     SIID_DOCASSOC = 1,
  54509.     SIID_APPLICATION = 2,
  54510.     SIID_FOLDER = 3,
  54511.     SIID_FOLDEROPEN = 4,
  54512.     SIID_DRIVE525 = 5,
  54513.     SIID_DRIVE35 = 6,
  54514.     SIID_DRIVEREMOVE = 7,
  54515.     SIID_DRIVEFIXED = 8,
  54516.     SIID_DRIVENET = 9,
  54517.     SIID_DRIVENETDISABLED = 10,
  54518.     SIID_DRIVECD = 11,
  54519.     SIID_DRIVERAM = 12,
  54520.     SIID_WORLD = 13,
  54521.     SIID_SERVER = 15,
  54522.     SIID_PRINTER = 16,
  54523.     SIID_MYNETWORK = 17,
  54524.     SIID_FIND = 22,
  54525.     SIID_HELP = 23,
  54526.     SIID_SHARE = 28,
  54527.     SIID_LINK = 29,
  54528.     SIID_SLOWFILE = 30,
  54529.     SIID_RECYCLER = 31,
  54530.     SIID_RECYCLERFULL = 32,
  54531.     SIID_MEDIACDAUDIO = 40,
  54532.     SIID_LOCK = 47,
  54533.     SIID_AUTOLIST = 49,
  54534.     SIID_PRINTERNET = 50,
  54535.     SIID_SERVERSHARE = 51,
  54536.     SIID_PRINTERFAX = 52,
  54537.     SIID_PRINTERFAXNET = 53,
  54538.     SIID_PRINTERFILE = 54,
  54539.     SIID_STACK = 55,
  54540.     SIID_MEDIASVCD = 56,
  54541.     SIID_STUFFEDFOLDER = 57,
  54542.     SIID_DRIVEUNKNOWN = 58,
  54543.     SIID_DRIVEDVD = 59,
  54544.     SIID_MEDIADVD = 60,
  54545.     SIID_MEDIADVDRAM = 61,
  54546.     SIID_MEDIADVDRW = 62,
  54547.     SIID_MEDIADVDR = 63,
  54548.     SIID_MEDIADVDROM = 64,
  54549.     SIID_MEDIACDAUDIOPLUS = 65,
  54550.     SIID_MEDIACDRW = 66,
  54551.     SIID_MEDIACDR = 67,
  54552.     SIID_MEDIACDBURN = 68,
  54553.     SIID_MEDIABLANKCD = 69,
  54554.     SIID_MEDIACDROM = 70,
  54555.     SIID_AUDIOFILES = 71,
  54556.     SIID_IMAGEFILES = 72,
  54557.     SIID_VIDEOFILES = 73,
  54558.     SIID_MIXEDFILES = 74,
  54559.     SIID_FOLDERBACK = 75,
  54560.     SIID_FOLDERFRONT = 76,
  54561.     SIID_SHIELD = 77,
  54562.     SIID_WARNING = 78,
  54563.     SIID_INFO = 79,
  54564.     SIID_ERROR = 80,
  54565.     SIID_KEY = 81,
  54566.     SIID_SOFTWARE = 82,
  54567.     SIID_RENAME = 83,
  54568.     SIID_DELETE = 84,
  54569.     SIID_MEDIAAUDIODVD = 85,
  54570.     SIID_MEDIAMOVIEDVD = 86,
  54571.     SIID_MEDIAENHANCEDCD = 87,
  54572.     SIID_MEDIAENHANCEDDVD = 88,
  54573.     SIID_MEDIAHDDVD = 89,
  54574.     SIID_MEDIABLURAY = 90,
  54575.     SIID_MEDIAVCD = 91,
  54576.     SIID_MEDIADVDPLUSR = 92,
  54577.     SIID_MEDIADVDPLUSRW = 93,
  54578.     SIID_DESKTOPPC = 94,
  54579.     SIID_MOBILEPC = 95,
  54580.     SIID_USERS = 96,
  54581.     SIID_MEDIASMARTMEDIA = 97,
  54582.     SIID_MEDIACOMPACTFLASH = 98,
  54583.     SIID_DEVICECELLPHONE = 99,
  54584.     SIID_DEVICECAMERA = 100,
  54585.     SIID_DEVICEVIDEOCAMERA = 101,
  54586.     SIID_DEVICEAUDIOPLAYER = 102,
  54587.     SIID_NETWORKCONNECT = 103,
  54588.     SIID_INTERNET = 104,
  54589.     SIID_ZIPFILE = 105,
  54590.     SIID_SETTINGS = 106,
  54591.  
  54592.  
  54593.     SIID_DRIVEHDDVD = 132,
  54594.     SIID_DRIVEBD = 133,
  54595.     SIID_MEDIAHDDVDROM = 134,
  54596.     SIID_MEDIAHDDVDR = 135,
  54597.     SIID_MEDIAHDDVDRAM = 136,
  54598.     SIID_MEDIABDROM = 137,
  54599.     SIID_MEDIABDR = 138,
  54600.     SIID_MEDIABDRE = 139,
  54601.     SIID_CLUSTEREDDRIVE = 140,
  54602.  
  54603.     SIID_MAX_ICONS = 181,
  54604. } SHSTOCKICONID;
  54605.  
  54606.  
  54607.  
  54608. extern __declspec(dllimport) HRESULT __stdcall SHGetStockIconInfo(SHSTOCKICONID siid, UINT uFlags, SHSTOCKICONINFO *psii);
  54609.  
  54610.  
  54611.  
  54612.  
  54613.  
  54614.  
  54615.  
  54616. extern __declspec(dllimport) BOOL __stdcall SHGetDiskFreeSpaceExA( LPCSTR pszDirectoryName, ULARGE_INTEGER* pulFreeBytesAvailableToCaller,
  54617.               ULARGE_INTEGER* pulTotalNumberOfBytes, ULARGE_INTEGER* pulTotalNumberOfFreeBytes);
  54618. extern __declspec(dllimport) BOOL __stdcall SHGetDiskFreeSpaceExW( LPCWSTR pszDirectoryName, ULARGE_INTEGER* pulFreeBytesAvailableToCaller,
  54619.               ULARGE_INTEGER* pulTotalNumberOfBytes, ULARGE_INTEGER* pulTotalNumberOfFreeBytes);
  54620.  
  54621.  
  54622.  
  54623.  
  54624.  
  54625.  
  54626. extern __declspec(dllimport) BOOL __stdcall SHGetNewLinkInfoA( LPCSTR pszLinkTo, LPCSTR pszDir, LPSTR pszName, BOOL *pfMustCopy, UINT uFlags);
  54627.  
  54628. extern __declspec(dllimport) BOOL __stdcall SHGetNewLinkInfoW( LPCWSTR pszLinkTo, LPCWSTR pszDir, LPWSTR pszName, BOOL *pfMustCopy, UINT uFlags);
  54629. # 1452 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54630. extern __declspec(dllimport) BOOL __stdcall SHInvokePrinterCommandA( HWND hwnd, UINT uAction, LPCSTR lpBuf1, LPCSTR lpBuf2, BOOL fModal);
  54631. extern __declspec(dllimport) BOOL __stdcall SHInvokePrinterCommandW( HWND hwnd, UINT uAction, LPCWSTR lpBuf1, LPCWSTR lpBuf2, BOOL fModal);
  54632. # 1462 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54633. typedef struct _OPEN_PRINTER_PROPS_INFOA
  54634. {
  54635.     DWORD dwSize;
  54636.     LPSTR pszSheetName;
  54637.     UINT uSheetIndex;
  54638.     DWORD dwFlags;
  54639.     BOOL bModal;
  54640. } OPEN_PRINTER_PROPS_INFOA, *POPEN_PRINTER_PROPS_INFOA;
  54641. typedef struct _OPEN_PRINTER_PROPS_INFOW
  54642. {
  54643.     DWORD dwSize;
  54644.     LPWSTR pszSheetName;
  54645.     UINT uSheetIndex;
  54646.     DWORD dwFlags;
  54647.     BOOL bModal;
  54648. } OPEN_PRINTER_PROPS_INFOW, *POPEN_PRINTER_PROPS_INFOW;
  54649.  
  54650.  
  54651.  
  54652.  
  54653. typedef OPEN_PRINTER_PROPS_INFOA OPEN_PRINTER_PROPS_INFO;
  54654. typedef POPEN_PRINTER_PROPS_INFOA POPEN_PRINTER_PROPS_INFO;
  54655. # 1505 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54656. extern __declspec(dllimport) HRESULT __stdcall SHLoadNonloadedIconOverlayIdentifiers(void);
  54657. # 1526 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54658. extern __declspec(dllimport) HRESULT __stdcall SHIsFileAvailableOffline( PCWSTR pwszPath, DWORD *pdwStatus);
  54659. # 1539 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54660. extern __declspec(dllimport) HRESULT __stdcall SHSetLocalizedName( PCWSTR pszPath, PCWSTR pszResModule, int idsRes);
  54661.  
  54662.  
  54663.  
  54664.  
  54665. extern __declspec(dllimport) HRESULT __stdcall SHRemoveLocalizedName( PCWSTR pszPath);
  54666.  
  54667. extern __declspec(dllimport) HRESULT __stdcall SHGetLocalizedName( PCWSTR pszPath, PWSTR pszResModule, UINT cch, int *pidsRes);
  54668. # 1575 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54669. extern __declspec(dllimport) int __cdecl ShellMessageBoxA(
  54670.              HINSTANCE hAppInst,
  54671.              HWND hWnd,
  54672.          LPCSTR lpcText,
  54673.              LPCSTR lpcTitle,
  54674.          UINT fuStyle, ...);
  54675. extern __declspec(dllimport) int __cdecl ShellMessageBoxW(
  54676.              HINSTANCE hAppInst,
  54677.              HWND hWnd,
  54678.          LPCWSTR lpcText,
  54679.              LPCWSTR lpcTitle,
  54680.          UINT fuStyle, ...);
  54681.  
  54682.  
  54683.  
  54684.  
  54685.  
  54686.  
  54687.  
  54688. extern __declspec(dllimport) BOOL __stdcall IsLFNDriveA( LPCSTR pszPath);
  54689. extern __declspec(dllimport) BOOL __stdcall IsLFNDriveW( LPCWSTR pszPath);
  54690. # 1606 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54691. extern HRESULT __stdcall SHEnumerateUnreadMailAccountsA( HKEY hKeyUser, DWORD dwIndex, LPSTR pszMailAddress, int cchMailAddress);
  54692. extern HRESULT __stdcall SHEnumerateUnreadMailAccountsW( HKEY hKeyUser, DWORD dwIndex, LPWSTR pszMailAddress, int cchMailAddress);
  54693.  
  54694.  
  54695.  
  54696.  
  54697.  
  54698. extern HRESULT __stdcall SHGetUnreadMailCountA( HKEY hKeyUser, LPCSTR pszMailAddress, DWORD *pdwCount, FILETIME *pFileTime, LPSTR pszShellExecuteCommand, int cchShellExecuteCommand);
  54699. extern HRESULT __stdcall SHGetUnreadMailCountW( HKEY hKeyUser, LPCWSTR pszMailAddress, DWORD *pdwCount, FILETIME *pFileTime, LPWSTR pszShellExecuteCommand, int cchShellExecuteCommand);
  54700.  
  54701.  
  54702.  
  54703.  
  54704.  
  54705. extern HRESULT __stdcall SHSetUnreadMailCountA( LPCSTR pszMailAddress, DWORD dwCount, LPCSTR pszShellExecuteCommand);
  54706. extern HRESULT __stdcall SHSetUnreadMailCountW( LPCWSTR pszMailAddress, DWORD dwCount, LPCWSTR pszShellExecuteCommand);
  54707. # 1631 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54708. extern BOOL __stdcall SHTestTokenMembership( HANDLE hToken, ULONG ulRID);
  54709.  
  54710.  
  54711.  
  54712.  
  54713.  
  54714. extern __declspec(dllimport) HRESULT __stdcall SHGetImageList( int iImageList, const IID * riid, void **ppvObj);
  54715. # 1659 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54716. typedef HRESULT (__stdcall *PFNCANSHAREFOLDERW)( PCWSTR pszPath);
  54717. typedef HRESULT (__stdcall *PFNSHOWSHAREFOLDERUIW)( HWND hwndParent, PCWSTR pszPath);
  54718.  
  54719.  
  54720.  
  54721.  
  54722.  
  54723. #pragma endregion
  54724.  
  54725.  
  54726.  
  54727.  
  54728.  
  54729.  
  54730.  
  54731. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  54732. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  54733. #pragma warning(disable: 4103)
  54734.  
  54735. #pragma pack(pop)
  54736. # 1673 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 2 3
  54737.  
  54738.  
  54739.  
  54740. #pragma region Desktop Family
  54741.  
  54742.  
  54743.  
  54744.  
  54745.  
  54746.  
  54747.  
  54748.  
  54749. extern __declspec(dllimport) BOOL __stdcall InitNetworkAddressControl(void);
  54750. # 1698 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54751. typedef struct tagNC_ADDRESS
  54752. {
  54753.    struct NET_ADDRESS_INFO_ *pAddrInfo;
  54754.    USHORT PortNumber;
  54755.    BYTE PrefixLength;
  54756. } NC_ADDRESS, *PNC_ADDRESS;
  54757. # 1726 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\shellapi.h" 3
  54758. extern HRESULT __stdcall SHGetDriveMedia( PCWSTR pszDrive, DWORD *pdwMediaContent);
  54759.  
  54760.  
  54761.  
  54762.  
  54763.  
  54764.  
  54765.  
  54766.  
  54767. #pragma endregion
  54768.  
  54769.  
  54770.  
  54771.  
  54772.  
  54773.  
  54774. #pragma option pop
  54775. # 231 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  54776.  
  54777.  
  54778. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 1 3
  54779. #pragma option push -b -a8 -pc -A- -w-pun
  54780. # 48 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 3
  54781. #pragma region Desktop Family
  54782.  
  54783.  
  54784.  
  54785. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 1 3
  54786. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 3
  54787. #pragma warning(disable: 4103)
  54788.  
  54789. #pragma pack(push,8)
  54790. # 51 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 2 3
  54791. # 69 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 3
  54792. typedef struct _PERF_DATA_BLOCK {
  54793.     WCHAR Signature[4];
  54794.     DWORD LittleEndian;
  54795.     DWORD Version;
  54796.  
  54797.     DWORD Revision;
  54798.  
  54799.     DWORD TotalByteLength;
  54800.     DWORD HeaderLength;
  54801.     DWORD NumObjectTypes;
  54802.  
  54803.     LONG DefaultObject;
  54804.  
  54805.  
  54806.  
  54807.  
  54808.     SYSTEMTIME SystemTime;
  54809.  
  54810.     LARGE_INTEGER PerfTime;
  54811.  
  54812.     LARGE_INTEGER PerfFreq;
  54813.  
  54814.     LARGE_INTEGER PerfTime100nSec;
  54815.  
  54816.     DWORD SystemNameLength;
  54817.     DWORD SystemNameOffset;
  54818.  
  54819.  
  54820. } PERF_DATA_BLOCK, *PPERF_DATA_BLOCK;
  54821. # 107 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 3
  54822. typedef struct _PERF_OBJECT_TYPE {
  54823.     DWORD TotalByteLength;
  54824.  
  54825.  
  54826.  
  54827.  
  54828.  
  54829.  
  54830.  
  54831.     DWORD DefinitionLength;
  54832.  
  54833.  
  54834.  
  54835.  
  54836.  
  54837.  
  54838.  
  54839.     DWORD HeaderLength;
  54840.  
  54841.  
  54842.  
  54843.     DWORD ObjectNameTitleIndex;
  54844.  
  54845.  
  54846.  
  54847.  
  54848.     LPWSTR ObjectNameTitle;
  54849.  
  54850.  
  54851.  
  54852.     DWORD ObjectHelpTitleIndex;
  54853.  
  54854.  
  54855.  
  54856.  
  54857.     LPWSTR ObjectHelpTitle;
  54858.  
  54859.  
  54860.  
  54861.     DWORD DetailLevel;
  54862.  
  54863.  
  54864.  
  54865.     DWORD NumCounters;
  54866.  
  54867.  
  54868.     LONG DefaultCounter;
  54869.  
  54870.  
  54871.  
  54872.     LONG NumInstances;
  54873. # 169 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 3
  54874.     DWORD CodePage;
  54875.  
  54876.  
  54877.     LARGE_INTEGER PerfTime;
  54878.  
  54879.     LARGE_INTEGER PerfFreq;
  54880.  
  54881. } PERF_OBJECT_TYPE, *PPERF_OBJECT_TYPE;
  54882. # 554 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 3
  54883. typedef struct _PERF_COUNTER_DEFINITION {
  54884.     DWORD ByteLength;
  54885.     DWORD CounterNameTitleIndex;
  54886.  
  54887.  
  54888.  
  54889.  
  54890.  
  54891.     LPWSTR CounterNameTitle;
  54892.  
  54893.  
  54894.  
  54895.     DWORD CounterHelpTitleIndex;
  54896.  
  54897.  
  54898.  
  54899.  
  54900.  
  54901.     LPWSTR CounterHelpTitle;
  54902.  
  54903.  
  54904.  
  54905.     LONG DefaultScale;
  54906.  
  54907.  
  54908.     DWORD DetailLevel;
  54909.  
  54910.     DWORD CounterType;
  54911.     DWORD CounterSize;
  54912.     DWORD CounterOffset;
  54913.  
  54914.  
  54915. } PERF_COUNTER_DEFINITION, *PPERF_COUNTER_DEFINITION;
  54916. # 601 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 3
  54917. typedef struct _PERF_INSTANCE_DEFINITION {
  54918.     DWORD ByteLength;
  54919.  
  54920.     DWORD ParentObjectTitleIndex;
  54921.  
  54922.  
  54923.  
  54924.  
  54925.  
  54926.     DWORD ParentObjectInstance;
  54927.  
  54928.  
  54929.  
  54930.     LONG UniqueID;
  54931.  
  54932.  
  54933.     DWORD NameOffset;
  54934.  
  54935.  
  54936.     DWORD NameLength;
  54937.  
  54938.  
  54939.  
  54940.  
  54941.  
  54942. } PERF_INSTANCE_DEFINITION, *PPERF_INSTANCE_DEFINITION;
  54943. # 640 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 3
  54944. typedef struct _PERF_COUNTER_BLOCK {
  54945.     DWORD ByteLength;
  54946.  
  54947. } PERF_COUNTER_BLOCK, *PPERF_COUNTER_BLOCK;
  54948. # 660 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 3
  54949. typedef DWORD (__stdcall PM_OPEN_PROC) ( LPWSTR);
  54950. typedef DWORD (__stdcall PM_COLLECT_PROC) ( LPWSTR lpValueName,
  54951.  
  54952.  
  54953.  
  54954.                                                   LPVOID *lppData,
  54955.                                                   LPDWORD lpcbTotalBytes,
  54956.                                                   LPDWORD lpNumObjectTypes);
  54957. typedef DWORD (__stdcall PM_CLOSE_PROC) (void);
  54958. typedef DWORD (__stdcall PM_QUERY_PROC) (LPDWORD, LPVOID *, LPDWORD, LPDWORD);
  54959. # 690 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 3
  54960. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  54961. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  54962. #pragma warning(disable: 4103)
  54963.  
  54964. #pragma pack(pop)
  54965. # 690 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winperf.h" 2 3
  54966.  
  54967.  
  54968.  
  54969. #pragma endregion
  54970.  
  54971.  
  54972.  
  54973.  
  54974.  
  54975.  
  54976. #pragma option pop
  54977. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  54978.  
  54979.  
  54980.  
  54981.  
  54982.  
  54983. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 1 3
  54984. # 16 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  54985. #pragma option push -b -a8 -pc -A- -w-pun
  54986. # 108 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  54987. typedef unsigned char u_char;
  54988. typedef unsigned short u_short;
  54989. typedef unsigned int u_int;
  54990. typedef unsigned long u_long;
  54991.  
  54992.  
  54993. typedef unsigned __int64 u_int64;
  54994.  
  54995.  
  54996.  
  54997. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 1 3
  54998. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  54999. #pragma option push -b -a8 -pc -A- -w-pun
  55000. # 51 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55001. #pragma warning(push)
  55002. #pragma warning(disable: 4201)
  55003. #pragma warning(disable: 4214)
  55004. # 73 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55005. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\inaddr.h" 1 3
  55006. # 16 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\inaddr.h" 3
  55007. #pragma option push -b -a8 -pc -A- -w-pun
  55008.  
  55009.  
  55010. #pragma region Desktop Family or OneCore Family
  55011.  
  55012.  
  55013.  
  55014.  
  55015.  
  55016.  
  55017. typedef struct in_addr {
  55018.         union {
  55019.                 struct { UCHAR s_b1,s_b2,s_b3,s_b4; } S_un_b;
  55020.                 struct { USHORT s_w1,s_w2; } S_un_w;
  55021.                 ULONG S_addr;
  55022.         } S_un;
  55023.  
  55024.  
  55025.  
  55026.  
  55027.  
  55028.  
  55029. } IN_ADDR, *PIN_ADDR, *LPIN_ADDR;
  55030.  
  55031.  
  55032. #pragma endregion
  55033.  
  55034. #pragma option pop
  55035. # 73 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 2 3
  55036.  
  55037.  
  55038.  
  55039.  
  55040. #pragma region Desktop Family or OneCore Family
  55041.  
  55042.  
  55043.  
  55044.  
  55045. typedef USHORT ADDRESS_FAMILY;
  55046.  
  55047. #pragma endregion
  55048. # 231 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55049. #pragma region Desktop Family or OneCore Family
  55050.  
  55051.  
  55052.  
  55053.  
  55054. typedef struct sockaddr {
  55055.  
  55056.  
  55057.  
  55058.  
  55059.     ADDRESS_FAMILY sa_family;
  55060.  
  55061.  
  55062.     CHAR sa_data[14];
  55063. } SOCKADDR, *PSOCKADDR, *LPSOCKADDR;
  55064. # 254 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55065. typedef struct _SOCKET_ADDRESS {
  55066.                                         LPSOCKADDR lpSockaddr;
  55067. # 264 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55068.     INT iSockaddrLength;
  55069. } SOCKET_ADDRESS, *PSOCKET_ADDRESS, *LPSOCKET_ADDRESS;
  55070.  
  55071. #pragma endregion
  55072.  
  55073.  
  55074.  
  55075.  
  55076. typedef struct _SOCKET_ADDRESS_LIST {
  55077.     INT iAddressCount;
  55078.     SOCKET_ADDRESS Address[1];
  55079. } SOCKET_ADDRESS_LIST, *PSOCKET_ADDRESS_LIST, *LPSOCKET_ADDRESS_LIST;
  55080. # 288 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55081. typedef struct _CSADDR_INFO {
  55082.     SOCKET_ADDRESS LocalAddr ;
  55083.     SOCKET_ADDRESS RemoteAddr ;
  55084.     INT iSocketType ;
  55085.     INT iProtocol ;
  55086. } CSADDR_INFO, *PCSADDR_INFO, * LPCSADDR_INFO ;
  55087. # 320 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55088. typedef struct sockaddr_storage {
  55089.     ADDRESS_FAMILY ss_family;
  55090.  
  55091.     CHAR __ss_pad1[((sizeof(__int64)) - sizeof(USHORT))];
  55092.  
  55093.  
  55094.  
  55095.     __int64 __ss_align;
  55096.     CHAR __ss_pad2[(128 - (sizeof(USHORT) + ((sizeof(__int64)) - sizeof(USHORT)) + (sizeof(__int64))))];
  55097.  
  55098.  
  55099.  
  55100. } SOCKADDR_STORAGE_LH, *PSOCKADDR_STORAGE_LH, *LPSOCKADDR_STORAGE_LH;
  55101.  
  55102. #pragma region Desktop Family
  55103.  
  55104. typedef struct sockaddr_storage_xp {
  55105.     short ss_family;
  55106.  
  55107.     CHAR __ss_pad1[((sizeof(__int64)) - sizeof(USHORT))];
  55108.  
  55109.  
  55110.  
  55111.     __int64 __ss_align;
  55112.     CHAR __ss_pad2[(128 - (sizeof(USHORT) + ((sizeof(__int64)) - sizeof(USHORT)) + (sizeof(__int64))))];
  55113.  
  55114.  
  55115.  
  55116. } SOCKADDR_STORAGE_XP, *PSOCKADDR_STORAGE_XP, *LPSOCKADDR_STORAGE_XP;
  55117.  
  55118. #pragma endregion
  55119.  
  55120.  
  55121. typedef SOCKADDR_STORAGE_LH SOCKADDR_STORAGE;
  55122. typedef SOCKADDR_STORAGE *PSOCKADDR_STORAGE, *LPSOCKADDR_STORAGE;
  55123.  
  55124.  
  55125.  
  55126.  
  55127.  
  55128.  
  55129. typedef struct _SOCKET_PROCESSOR_AFFINITY {
  55130.     PROCESSOR_NUMBER Processor;
  55131.     USHORT NumaNodeId;
  55132.     USHORT Reserved;
  55133. } SOCKET_PROCESSOR_AFFINITY, *PSOCKET_PROCESSOR_AFFINITY;
  55134. # 434 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55135. typedef enum {
  55136.  
  55137.     IPPROTO_HOPOPTS = 0,
  55138.  
  55139.     IPPROTO_ICMP = 1,
  55140.     IPPROTO_IGMP = 2,
  55141.     IPPROTO_GGP = 3,
  55142.  
  55143.     IPPROTO_IPV4 = 4,
  55144.  
  55145.  
  55146.     IPPROTO_ST = 5,
  55147.  
  55148.     IPPROTO_TCP = 6,
  55149.  
  55150.     IPPROTO_CBT = 7,
  55151.     IPPROTO_EGP = 8,
  55152.     IPPROTO_IGP = 9,
  55153.  
  55154.     IPPROTO_PUP = 12,
  55155.     IPPROTO_UDP = 17,
  55156.     IPPROTO_IDP = 22,
  55157.  
  55158.     IPPROTO_RDP = 27,
  55159.  
  55160.  
  55161.  
  55162.     IPPROTO_IPV6 = 41,
  55163.     IPPROTO_ROUTING = 43,
  55164.     IPPROTO_FRAGMENT = 44,
  55165.     IPPROTO_ESP = 50,
  55166.     IPPROTO_AH = 51,
  55167.     IPPROTO_ICMPV6 = 58,
  55168.     IPPROTO_NONE = 59,
  55169.     IPPROTO_DSTOPTS = 60,
  55170.  
  55171.  
  55172.     IPPROTO_ND = 77,
  55173.  
  55174.     IPPROTO_ICLFXBM = 78,
  55175.  
  55176.  
  55177.     IPPROTO_PIM = 103,
  55178.     IPPROTO_PGM = 113,
  55179.     IPPROTO_L2TP = 115,
  55180.     IPPROTO_SCTP = 132,
  55181.  
  55182.     IPPROTO_RAW = 255,
  55183.  
  55184.     IPPROTO_MAX = 256,
  55185.  
  55186.  
  55187.  
  55188.     IPPROTO_RESERVED_RAW = 257,
  55189.     IPPROTO_RESERVED_IPSEC = 258,
  55190.     IPPROTO_RESERVED_IPSECOFFLOAD = 259,
  55191.     IPPROTO_RESERVED_WNV = 260,
  55192.     IPPROTO_RESERVED_MAX = 261
  55193. } IPPROTO, *PIPROTO;
  55194. # 601 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55195. #pragma region Desktop Family or OneCore Family
  55196.  
  55197.  
  55198.  
  55199.  
  55200.  
  55201. typedef enum {
  55202.     ScopeLevelInterface = 1,
  55203.     ScopeLevelLink = 2,
  55204.     ScopeLevelSubnet = 3,
  55205.     ScopeLevelAdmin = 4,
  55206.     ScopeLevelSite = 5,
  55207.     ScopeLevelOrganization = 8,
  55208.     ScopeLevelGlobal = 14,
  55209.     ScopeLevelCount = 16
  55210. } SCOPE_LEVEL;
  55211.  
  55212. typedef struct {
  55213.     union {
  55214.         struct {
  55215.             ULONG Zone : 28;
  55216.             ULONG Level : 4;
  55217.         };
  55218.         ULONG Value;
  55219.     };
  55220. } SCOPE_ID, *PSCOPE_ID;
  55221.  
  55222.  
  55223.  
  55224.  
  55225.  
  55226.  
  55227.  
  55228. typedef struct sockaddr_in {
  55229.  
  55230.  
  55231.  
  55232.  
  55233.     ADDRESS_FAMILY sin_family;
  55234.  
  55235.  
  55236.     USHORT sin_port;
  55237.     IN_ADDR sin_addr;
  55238.     CHAR sin_zero[8];
  55239. } SOCKADDR_IN, *PSOCKADDR_IN;
  55240.  
  55241.  
  55242. #pragma endregion
  55243. # 659 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55244. typedef struct sockaddr_dl {
  55245.     ADDRESS_FAMILY sdl_family;
  55246.     UCHAR sdl_data[8];
  55247.     UCHAR sdl_zero[4];
  55248. } SOCKADDR_DL, *PSOCKADDR_DL;
  55249. # 685 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55250. typedef struct _WSABUF {
  55251.     ULONG len;
  55252.                             CHAR *buf;
  55253. } WSABUF, * LPWSABUF;
  55254.  
  55255.  
  55256.  
  55257.  
  55258.  
  55259. typedef struct _WSAMSG {
  55260.                                 LPSOCKADDR name;
  55261.     INT namelen;
  55262.     LPWSABUF lpBuffers;
  55263.  
  55264.  
  55265.     ULONG dwBufferCount;
  55266.  
  55267.  
  55268.  
  55269.  
  55270.     WSABUF Control;
  55271.  
  55272.  
  55273.     ULONG dwFlags;
  55274.  
  55275.  
  55276.  
  55277.  
  55278. } WSAMSG, *PWSAMSG, * LPWSAMSG;
  55279. # 722 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55280. typedef struct cmsghdr {
  55281.     SIZE_T cmsg_len;
  55282.     INT cmsg_level;
  55283.     INT cmsg_type;
  55284.  
  55285. } WSACMSGHDR, *PWSACMSGHDR, *LPWSACMSGHDR;
  55286.  
  55287.  
  55288. typedef WSACMSGHDR CMSGHDR, *PCMSGHDR;
  55289. # 900 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55290. typedef struct addrinfo
  55291. {
  55292.     int ai_flags;
  55293.     int ai_family;
  55294.     int ai_socktype;
  55295.     int ai_protocol;
  55296.     size_t ai_addrlen;
  55297.     char * ai_canonname;
  55298.                                    struct sockaddr * ai_addr;
  55299.     struct addrinfo * ai_next;
  55300. }
  55301. ADDRINFOA, *PADDRINFOA;
  55302.  
  55303. typedef struct addrinfoW
  55304. {
  55305.     int ai_flags;
  55306.     int ai_family;
  55307.     int ai_socktype;
  55308.     int ai_protocol;
  55309.     size_t ai_addrlen;
  55310.     PWSTR ai_canonname;
  55311.                                    struct sockaddr * ai_addr;
  55312.     struct addrinfoW * ai_next;
  55313. }
  55314. ADDRINFOW, *PADDRINFOW;
  55315.  
  55316.  
  55317.  
  55318. #pragma region Desktop Family or OneCore Family
  55319.  
  55320. typedef struct addrinfoexA
  55321. {
  55322.     int ai_flags;
  55323.     int ai_family;
  55324.     int ai_socktype;
  55325.     int ai_protocol;
  55326.     size_t ai_addrlen;
  55327.     char *ai_canonname;
  55328.     struct sockaddr *ai_addr;
  55329.     void *ai_blob;
  55330.     size_t ai_bloblen;
  55331.     LPGUID ai_provider;
  55332.     struct addrinfoexA *ai_next;
  55333. } ADDRINFOEXA, *PADDRINFOEXA, *LPADDRINFOEXA;
  55334.  
  55335. #pragma endregion
  55336.  
  55337. typedef struct addrinfoexW
  55338. {
  55339.     int ai_flags;
  55340.     int ai_family;
  55341.     int ai_socktype;
  55342.     int ai_protocol;
  55343.     size_t ai_addrlen;
  55344.     PWSTR ai_canonname;
  55345.                                    struct sockaddr *ai_addr;
  55346.                              void *ai_blob;
  55347.     size_t ai_bloblen;
  55348.     LPGUID ai_provider;
  55349.     struct addrinfoexW *ai_next;
  55350. } ADDRINFOEXW, *PADDRINFOEXW, *LPADDRINFOEXW;
  55351. # 970 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55352. #pragma region Desktop Family
  55353.  
  55354. typedef struct addrinfoex2A
  55355. {
  55356.     int ai_flags;
  55357.     int ai_family;
  55358.     int ai_socktype;
  55359.     int ai_protocol;
  55360.     size_t ai_addrlen;
  55361.     char *ai_canonname;
  55362.     struct sockaddr *ai_addr;
  55363.     void *ai_blob;
  55364.     size_t ai_bloblen;
  55365.     LPGUID ai_provider;
  55366.     struct addrinfoex2A *ai_next;
  55367.     int ai_version;
  55368.     char *ai_fqdn;
  55369. } ADDRINFOEX2A, *PADDRINFOEX2A, *LPADDRINFOEX2A;
  55370.  
  55371. #pragma endregion
  55372.  
  55373. typedef struct addrinfoex2W
  55374. {
  55375.     int ai_flags;
  55376.     int ai_family;
  55377.     int ai_socktype;
  55378.     int ai_protocol;
  55379.     size_t ai_addrlen;
  55380.     PWSTR ai_canonname;
  55381.                                    struct sockaddr *ai_addr;
  55382.                              void *ai_blob;
  55383.     size_t ai_bloblen;
  55384.     LPGUID ai_provider;
  55385.     struct addrinfoex2W *ai_next;
  55386.     int ai_version;
  55387.     PWSTR ai_fqdn;
  55388. } ADDRINFOEX2W, *PADDRINFOEX2W, *LPADDRINFOEX2W;
  55389.  
  55390. typedef struct addrinfoex3
  55391. {
  55392.     int ai_flags;
  55393.     int ai_family;
  55394.     int ai_socktype;
  55395.     int ai_protocol;
  55396.     size_t ai_addrlen;
  55397.     PWSTR ai_canonname;
  55398.                                    struct sockaddr *ai_addr;
  55399.                              void *ai_blob;
  55400.     size_t ai_bloblen;
  55401.     LPGUID ai_provider;
  55402.     struct addrinfoex3 *ai_next;
  55403.     int ai_version;
  55404.     PWSTR ai_fqdn;
  55405.     int ai_interfaceindex;
  55406. } ADDRINFOEX3, *PADDRINFOEX3, *LPADDRINFOEX3;
  55407.  
  55408. typedef struct addrinfoex4
  55409. {
  55410.     int ai_flags;
  55411.     int ai_family;
  55412.     int ai_socktype;
  55413.     int ai_protocol;
  55414.     size_t ai_addrlen;
  55415.     PWSTR ai_canonname;
  55416.                                    struct sockaddr *ai_addr;
  55417.                              void *ai_blob;
  55418.     size_t ai_bloblen;
  55419.     GUID *ai_provider;
  55420.     struct addrinfoex4 *ai_next;
  55421.     int ai_version;
  55422.     PWSTR ai_fqdn;
  55423.     int ai_interfaceindex;
  55424.     HANDLE ai_resolutionhandle;
  55425. } ADDRINFOEX4, *PADDRINFOEX4, *LPADDRINFOEX4;
  55426. # 1108 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ws2def.h" 3
  55427. #pragma warning(pop)
  55428.  
  55429.  
  55430.  
  55431.  
  55432. #pragma option pop
  55433. # 117 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 2 3
  55434.  
  55435.  
  55436.  
  55437.  
  55438.  
  55439.  
  55440. typedef UINT_PTR SOCKET;
  55441. # 137 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55442. typedef struct fd_set {
  55443.         u_int fd_count;
  55444.         SOCKET fd_array[64];
  55445. } fd_set;
  55446.  
  55447. extern int __stdcall __WSAFDIsSet(SOCKET fd, fd_set *);
  55448. # 181 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55449. struct timeval {
  55450.         long tv_sec;
  55451.         long tv_usec;
  55452. };
  55453. # 237 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55454. struct hostent {
  55455.         char * h_name;
  55456.         char * * h_aliases;
  55457.         short h_addrtype;
  55458.         short h_length;
  55459.         char * * h_addr_list;
  55460.  
  55461. };
  55462.  
  55463.  
  55464.  
  55465.  
  55466.  
  55467. struct netent {
  55468.         char * n_name;
  55469.         char * * n_aliases;
  55470.         short n_addrtype;
  55471.         u_long n_net;
  55472. };
  55473.  
  55474. struct servent {
  55475.         char * s_name;
  55476.         char * * s_aliases;
  55477.  
  55478.  
  55479.  
  55480.  
  55481.         short s_port;
  55482.         char * s_proto;
  55483.  
  55484. };
  55485.  
  55486. struct protoent {
  55487.         char * p_name;
  55488.         char * * p_aliases;
  55489.         short p_proto;
  55490. };
  55491. # 365 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55492. typedef struct WSAData {
  55493.         WORD wVersion;
  55494.         WORD wHighVersion;
  55495.  
  55496.  
  55497.  
  55498.  
  55499.  
  55500.  
  55501.  
  55502.         char szDescription[256 +1];
  55503.         char szSystemStatus[128 +1];
  55504.         unsigned short iMaxSockets;
  55505.         unsigned short iMaxUdpDg;
  55506.         char * lpVendorInfo;
  55507.  
  55508. } WSADATA, * LPWSADATA;
  55509. # 463 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55510. struct sockproto {
  55511.         u_short sp_family;
  55512.         u_short sp_protocol;
  55513. };
  55514. # 505 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55515. struct linger {
  55516.         u_short l_onoff;
  55517.         u_short l_linger;
  55518. };
  55519. # 828 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55520. typedef struct _OVERLAPPED * LPWSAOVERLAPPED;
  55521. # 876 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55522. #pragma region Desktop Family
  55523.  
  55524.  
  55525.  
  55526.  
  55527.  
  55528.  
  55529.  
  55530. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\qos.h" 1 3
  55531. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\qos.h" 3
  55532. #pragma option push -b -a8 -pc -A- -w-pun
  55533.  
  55534.  
  55535.  
  55536.  
  55537.  
  55538. #pragma region Desktop Family
  55539.  
  55540.  
  55541.  
  55542.  
  55543.  
  55544.  
  55545.  
  55546. typedef ULONG SERVICETYPE;
  55547. # 100 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\qos.h" 3
  55548. typedef struct _flowspec
  55549. {
  55550.     ULONG TokenRate;
  55551.     ULONG TokenBucketSize;
  55552.     ULONG PeakBandwidth;
  55553.     ULONG Latency;
  55554.     ULONG DelayVariation;
  55555.     SERVICETYPE ServiceType;
  55556.     ULONG MaxSduSize;
  55557.     ULONG MinimumPolicedSize;
  55558.  
  55559. } FLOWSPEC, *PFLOWSPEC, * LPFLOWSPEC;
  55560. # 143 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\qos.h" 3
  55561. typedef struct {
  55562.  
  55563.     ULONG ObjectType;
  55564.     ULONG ObjectLength;
  55565.  
  55566.  
  55567. } QOS_OBJECT_HDR, *LPQOS_OBJECT_HDR;
  55568. # 186 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\qos.h" 3
  55569. typedef struct _QOS_SD_MODE {
  55570.  
  55571.     QOS_OBJECT_HDR ObjectHdr;
  55572.     ULONG ShapeDiscardMode;
  55573.  
  55574. } QOS_SD_MODE, *LPQOS_SD_MODE;
  55575. # 207 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\qos.h" 3
  55576. typedef struct _QOS_SHAPING_RATE {
  55577.  
  55578.     QOS_OBJECT_HDR ObjectHdr;
  55579.     ULONG ShapingRate;
  55580.  
  55581. } QOS_SHAPING_RATE, *LPQOS_SHAPING_RATE;
  55582.  
  55583.  
  55584.  
  55585.  
  55586. #pragma endregion
  55587.  
  55588. #pragma option pop
  55589. # 883 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 2 3
  55590.  
  55591.  
  55592. typedef struct _QualityOfService
  55593. {
  55594.     FLOWSPEC SendingFlowspec;
  55595.     FLOWSPEC ReceivingFlowspec;
  55596.     WSABUF ProviderSpecific;
  55597. } QOS, * LPQOS;
  55598.  
  55599. #pragma endregion
  55600. # 911 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55601. typedef unsigned int GROUP;
  55602.  
  55603.  
  55604.  
  55605.  
  55606.  
  55607.  
  55608.  
  55609. typedef struct _WSANETWORKEVENTS {
  55610.        long lNetworkEvents;
  55611.        int iErrorCode[10];
  55612. } WSANETWORKEVENTS, * LPWSANETWORKEVENTS;
  55613. # 938 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55614. typedef struct _WSAPROTOCOLCHAIN {
  55615.     int ChainLen;
  55616.  
  55617.  
  55618.  
  55619.     DWORD ChainEntries[7];
  55620. } WSAPROTOCOLCHAIN, * LPWSAPROTOCOLCHAIN;
  55621.  
  55622.  
  55623.  
  55624. typedef struct _WSAPROTOCOL_INFOA {
  55625.     DWORD dwServiceFlags1;
  55626.     DWORD dwServiceFlags2;
  55627.     DWORD dwServiceFlags3;
  55628.     DWORD dwServiceFlags4;
  55629.     DWORD dwProviderFlags;
  55630.     GUID ProviderId;
  55631.     DWORD dwCatalogEntryId;
  55632.     WSAPROTOCOLCHAIN ProtocolChain;
  55633.     int iVersion;
  55634.     int iAddressFamily;
  55635.     int iMaxSockAddr;
  55636.     int iMinSockAddr;
  55637.     int iSocketType;
  55638.     int iProtocol;
  55639.     int iProtocolMaxOffset;
  55640.     int iNetworkByteOrder;
  55641.     int iSecurityScheme;
  55642.     DWORD dwMessageSize;
  55643.     DWORD dwProviderReserved;
  55644.     CHAR szProtocol[255 +1];
  55645. } WSAPROTOCOL_INFOA, * LPWSAPROTOCOL_INFOA;
  55646.  
  55647. typedef struct _WSAPROTOCOL_INFOW {
  55648.     DWORD dwServiceFlags1;
  55649.     DWORD dwServiceFlags2;
  55650.     DWORD dwServiceFlags3;
  55651.     DWORD dwServiceFlags4;
  55652.     DWORD dwProviderFlags;
  55653.     GUID ProviderId;
  55654.     DWORD dwCatalogEntryId;
  55655.     WSAPROTOCOLCHAIN ProtocolChain;
  55656.     int iVersion;
  55657.     int iAddressFamily;
  55658.     int iMaxSockAddr;
  55659.     int iMinSockAddr;
  55660.     int iSocketType;
  55661.     int iProtocol;
  55662.     int iProtocolMaxOffset;
  55663.     int iNetworkByteOrder;
  55664.     int iSecurityScheme;
  55665.     DWORD dwMessageSize;
  55666.     DWORD dwProviderReserved;
  55667.     WCHAR szProtocol[255 +1];
  55668. } WSAPROTOCOL_INFOW, * LPWSAPROTOCOL_INFOW;
  55669.  
  55670.  
  55671.  
  55672.  
  55673. typedef WSAPROTOCOL_INFOA WSAPROTOCOL_INFO;
  55674. typedef LPWSAPROTOCOL_INFOA LPWSAPROTOCOL_INFO;
  55675. # 1059 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55676. typedef
  55677. int
  55678. (__stdcall * LPCONDITIONPROC)(
  55679.        LPWSABUF lpCallerId,
  55680.        LPWSABUF lpCallerData,
  55681.            LPQOS lpSQOS,
  55682.            LPQOS lpGQOS,
  55683.        LPWSABUF lpCalleeId,
  55684.        LPWSABUF lpCalleeData,
  55685.         GROUP * g,
  55686.        DWORD_PTR dwCallbackData
  55687.     );
  55688.  
  55689. typedef
  55690. void
  55691. (__stdcall * LPWSAOVERLAPPED_COMPLETION_ROUTINE)(
  55692.        DWORD dwError,
  55693.        DWORD cbTransferred,
  55694.        LPWSAOVERLAPPED lpOverlapped,
  55695.        DWORD dwFlags
  55696.     );
  55697. # 1089 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55698. typedef enum _WSACOMPLETIONTYPE {
  55699.     NSP_NOTIFY_IMMEDIATELY = 0,
  55700.     NSP_NOTIFY_HWND,
  55701.     NSP_NOTIFY_EVENT,
  55702.     NSP_NOTIFY_PORT,
  55703.     NSP_NOTIFY_APC,
  55704. } WSACOMPLETIONTYPE, *PWSACOMPLETIONTYPE, * LPWSACOMPLETIONTYPE;
  55705.  
  55706. typedef struct _WSACOMPLETION {
  55707.     WSACOMPLETIONTYPE Type;
  55708.     union {
  55709.         struct {
  55710.             HWND hWnd;
  55711.             UINT uMsg;
  55712.             WPARAM context;
  55713.         } WindowMessage;
  55714.         struct {
  55715.             LPWSAOVERLAPPED lpOverlapped;
  55716.         } Event;
  55717.         struct {
  55718.             LPWSAOVERLAPPED lpOverlapped;
  55719.             LPWSAOVERLAPPED_COMPLETION_ROUTINE lpfnCompletionProc;
  55720.         } Apc;
  55721.         struct {
  55722.             LPWSAOVERLAPPED lpOverlapped;
  55723.             HANDLE hPort;
  55724.             ULONG_PTR Key;
  55725.         } Port;
  55726.     } Parameters;
  55727. } WSACOMPLETION, *PWSACOMPLETION, *LPWSACOMPLETION;
  55728. # 1136 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55729. typedef struct _BLOB {
  55730.     ULONG cbSize ;
  55731.  
  55732.  
  55733.  
  55734.                                BYTE *pBlobData ;
  55735.  
  55736. } BLOB, *LPBLOB ;
  55737. # 1294 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55738. typedef struct _AFPROTOCOLS {
  55739.     INT iAddressFamily;
  55740.     INT iProtocol;
  55741. } AFPROTOCOLS, *PAFPROTOCOLS, *LPAFPROTOCOLS;
  55742. # 1306 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55743. typedef enum _WSAEcomparator
  55744. {
  55745.     COMP_EQUAL = 0,
  55746.     COMP_NOTLESS
  55747. } WSAECOMPARATOR, *PWSAECOMPARATOR, *LPWSAECOMPARATOR;
  55748.  
  55749. typedef struct _WSAVersion
  55750. {
  55751.     DWORD dwVersion;
  55752.     WSAECOMPARATOR ecHow;
  55753. }WSAVERSION, *PWSAVERSION, *LPWSAVERSION;
  55754.  
  55755. typedef struct _WSAQuerySetA
  55756. {
  55757.     DWORD dwSize;
  55758.     LPSTR lpszServiceInstanceName;
  55759.     LPGUID lpServiceClassId;
  55760.     LPWSAVERSION lpVersion;
  55761.     LPSTR lpszComment;
  55762.     DWORD dwNameSpace;
  55763.     LPGUID lpNSProviderId;
  55764.     LPSTR lpszContext;
  55765.     DWORD dwNumberOfProtocols;
  55766.                                       LPAFPROTOCOLS lpafpProtocols;
  55767.     LPSTR lpszQueryString;
  55768.     DWORD dwNumberOfCsAddrs;
  55769.                                     LPCSADDR_INFO lpcsaBuffer;
  55770.     DWORD dwOutputFlags;
  55771.     LPBLOB lpBlob;
  55772. } WSAQUERYSETA, *PWSAQUERYSETA, *LPWSAQUERYSETA;
  55773.  
  55774. typedef struct _WSAQuerySetW
  55775. {
  55776.                                                    DWORD dwSize;
  55777.     LPWSTR lpszServiceInstanceName;
  55778.     LPGUID lpServiceClassId;
  55779.     LPWSAVERSION lpVersion;
  55780.     LPWSTR lpszComment;
  55781.     DWORD dwNameSpace;
  55782.     LPGUID lpNSProviderId;
  55783.     LPWSTR lpszContext;
  55784.     DWORD dwNumberOfProtocols;
  55785.                                       LPAFPROTOCOLS lpafpProtocols;
  55786.     LPWSTR lpszQueryString;
  55787.     DWORD dwNumberOfCsAddrs;
  55788.                                     LPCSADDR_INFO lpcsaBuffer;
  55789.     DWORD dwOutputFlags;
  55790.     LPBLOB lpBlob;
  55791. } WSAQUERYSETW, *PWSAQUERYSETW, *LPWSAQUERYSETW;
  55792.  
  55793. #pragma region Desktop Family or OneCore Family
  55794.  
  55795.  
  55796. typedef struct _WSAQuerySet2A
  55797. {
  55798.     DWORD dwSize;
  55799.     LPSTR lpszServiceInstanceName;
  55800.     LPWSAVERSION lpVersion;
  55801.     LPSTR lpszComment;
  55802.     DWORD dwNameSpace;
  55803.     LPGUID lpNSProviderId;
  55804.     LPSTR lpszContext;
  55805.     DWORD dwNumberOfProtocols;
  55806.     LPAFPROTOCOLS lpafpProtocols;
  55807.     LPSTR lpszQueryString;
  55808.     DWORD dwNumberOfCsAddrs;
  55809.     LPCSADDR_INFO lpcsaBuffer;
  55810.     DWORD dwOutputFlags;
  55811.     LPBLOB lpBlob;
  55812. } WSAQUERYSET2A, *PWSAQUERYSET2A, *LPWSAQUERYSET2A;
  55813. typedef struct _WSAQuerySet2W
  55814. {
  55815.     DWORD dwSize;
  55816.     LPWSTR lpszServiceInstanceName;
  55817.     LPWSAVERSION lpVersion;
  55818.     LPWSTR lpszComment;
  55819.     DWORD dwNameSpace;
  55820.     LPGUID lpNSProviderId;
  55821.     LPWSTR lpszContext;
  55822.     DWORD dwNumberOfProtocols;
  55823.                                       LPAFPROTOCOLS lpafpProtocols;
  55824.     LPWSTR lpszQueryString;
  55825.     DWORD dwNumberOfCsAddrs;
  55826.                                     LPCSADDR_INFO lpcsaBuffer;
  55827.     DWORD dwOutputFlags;
  55828.     LPBLOB lpBlob;
  55829. } WSAQUERYSET2W, *PWSAQUERYSET2W, *LPWSAQUERYSET2W;
  55830. # 1402 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55831. typedef WSAQUERYSETA WSAQUERYSET;
  55832. typedef PWSAQUERYSETA PWSAQUERYSET;
  55833. typedef LPWSAQUERYSETA LPWSAQUERYSET;
  55834. typedef WSAQUERYSET2A WSAQUERYSET2;
  55835. typedef PWSAQUERYSET2A PWSAQUERYSET2;
  55836. typedef LPWSAQUERYSET2A LPWSAQUERYSET2;
  55837.  
  55838.  
  55839.  
  55840. #pragma endregion
  55841. # 1459 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55842. typedef enum _WSAESETSERVICEOP
  55843. {
  55844.     RNRSERVICE_REGISTER=0,
  55845.     RNRSERVICE_DEREGISTER,
  55846.     RNRSERVICE_DELETE
  55847. } WSAESETSERVICEOP, *PWSAESETSERVICEOP, *LPWSAESETSERVICEOP;
  55848.  
  55849.  
  55850.  
  55851.  
  55852.  
  55853. #pragma region Desktop Family or OneCore Family
  55854.  
  55855. typedef struct _WSANSClassInfoA
  55856. {
  55857.     LPSTR lpszName;
  55858.     DWORD dwNameSpace;
  55859.     DWORD dwValueType;
  55860.     DWORD dwValueSize;
  55861.     LPVOID lpValue;
  55862. }WSANSCLASSINFOA, *PWSANSCLASSINFOA, *LPWSANSCLASSINFOA;
  55863.  
  55864. #pragma endregion
  55865.  
  55866. typedef struct _WSANSClassInfoW
  55867. {
  55868.     LPWSTR lpszName;
  55869.     DWORD dwNameSpace;
  55870.     DWORD dwValueType;
  55871.     DWORD dwValueSize;
  55872.     LPVOID lpValue;
  55873. }WSANSCLASSINFOW, *PWSANSCLASSINFOW, *LPWSANSCLASSINFOW;
  55874.  
  55875.  
  55876.  
  55877.  
  55878.  
  55879. #pragma region Desktop Family
  55880.  
  55881. typedef WSANSCLASSINFOA WSANSCLASSINFO;
  55882. typedef PWSANSCLASSINFOA PWSANSCLASSINFO;
  55883. typedef LPWSANSCLASSINFOA LPWSANSCLASSINFO;
  55884.  
  55885. #pragma endregion
  55886.  
  55887.  
  55888. #pragma region Desktop Family or OneCore Family
  55889.  
  55890. typedef struct _WSAServiceClassInfoA
  55891. {
  55892.     LPGUID lpServiceClassId;
  55893.     LPSTR lpszServiceClassName;
  55894.     DWORD dwCount;
  55895.     LPWSANSCLASSINFOA lpClassInfos;
  55896. }WSASERVICECLASSINFOA, *PWSASERVICECLASSINFOA, *LPWSASERVICECLASSINFOA;
  55897.  
  55898. #pragma endregion
  55899.  
  55900. typedef struct _WSAServiceClassInfoW
  55901. {
  55902.     LPGUID lpServiceClassId;
  55903.     LPWSTR lpszServiceClassName;
  55904.     DWORD dwCount;
  55905.     LPWSANSCLASSINFOW lpClassInfos;
  55906. }WSASERVICECLASSINFOW, *PWSASERVICECLASSINFOW, *LPWSASERVICECLASSINFOW;
  55907.  
  55908.  
  55909.  
  55910.  
  55911.  
  55912.  
  55913. #pragma region Desktop Family
  55914.  
  55915. typedef WSASERVICECLASSINFOA WSASERVICECLASSINFO;
  55916. typedef PWSASERVICECLASSINFOA PWSASERVICECLASSINFO;
  55917. typedef LPWSASERVICECLASSINFOA LPWSASERVICECLASSINFO;
  55918.  
  55919. #pragma endregion
  55920.  
  55921.  
  55922. typedef struct _WSANAMESPACE_INFOA {
  55923.     GUID NSProviderId;
  55924.     DWORD dwNameSpace;
  55925.     BOOL fActive;
  55926.     DWORD dwVersion;
  55927.     LPSTR lpszIdentifier;
  55928. } WSANAMESPACE_INFOA, *PWSANAMESPACE_INFOA, *LPWSANAMESPACE_INFOA;
  55929.  
  55930. typedef struct _WSANAMESPACE_INFOW {
  55931.     GUID NSProviderId;
  55932.     DWORD dwNameSpace;
  55933.     BOOL fActive;
  55934.     DWORD dwVersion;
  55935.     LPWSTR lpszIdentifier;
  55936. } WSANAMESPACE_INFOW, *PWSANAMESPACE_INFOW, *LPWSANAMESPACE_INFOW;
  55937.  
  55938. typedef struct _WSANAMESPACE_INFOEXA {
  55939.     GUID NSProviderId;
  55940.     DWORD dwNameSpace;
  55941.     BOOL fActive;
  55942.     DWORD dwVersion;
  55943.     LPSTR lpszIdentifier;
  55944.     BLOB ProviderSpecific;
  55945. } WSANAMESPACE_INFOEXA, *PWSANAMESPACE_INFOEXA, *LPWSANAMESPACE_INFOEXA;
  55946.  
  55947. typedef struct _WSANAMESPACE_INFOEXW {
  55948.     GUID NSProviderId;
  55949.     DWORD dwNameSpace;
  55950.     BOOL fActive;
  55951.     DWORD dwVersion;
  55952.     LPWSTR lpszIdentifier;
  55953.     BLOB ProviderSpecific;
  55954. } WSANAMESPACE_INFOEXW, *PWSANAMESPACE_INFOEXW, *LPWSANAMESPACE_INFOEXW;
  55955. # 1581 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55956. typedef WSANAMESPACE_INFOA WSANAMESPACE_INFO;
  55957. typedef PWSANAMESPACE_INFOA PWSANAMESPACE_INFO;
  55958. typedef LPWSANAMESPACE_INFOA LPWSANAMESPACE_INFO;
  55959. typedef WSANAMESPACE_INFOEXA WSANAMESPACE_INFOEX;
  55960. typedef PWSANAMESPACE_INFOEXA PWSANAMESPACE_INFOEX;
  55961. typedef LPWSANAMESPACE_INFOEXA LPWSANAMESPACE_INFOEX;
  55962. # 1607 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55963. typedef struct pollfd {
  55964.  
  55965.     SOCKET fd;
  55966.     SHORT events;
  55967.     SHORT revents;
  55968.  
  55969. } WSAPOLLFD, *PWSAPOLLFD, *LPWSAPOLLFD;
  55970.  
  55971.  
  55972.  
  55973.  
  55974.  
  55975.  
  55976.  
  55977. __declspec(dllimport)
  55978.  
  55979. SOCKET
  55980.  __stdcall
  55981. accept(
  55982.          SOCKET s,
  55983.                                      struct sockaddr * addr,
  55984.                 int * addrlen
  55985.     );
  55986. # 1644 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55987. __declspec(dllimport)
  55988. int
  55989.  __stdcall
  55990. bind(
  55991.          SOCKET s,
  55992.                               const struct sockaddr * name,
  55993.          int namelen
  55994.     );
  55995. # 1665 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  55996. __declspec(dllimport)
  55997. int
  55998.  __stdcall
  55999. closesocket(
  56000.          SOCKET s
  56001.     );
  56002. # 1682 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56003. __declspec(dllimport)
  56004. int
  56005.  __stdcall
  56006. connect(
  56007.          SOCKET s,
  56008.                               const struct sockaddr * name,
  56009.          int namelen
  56010.     );
  56011. # 1703 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56012. __declspec(dllimport)
  56013. int
  56014.  __stdcall
  56015. ioctlsocket(
  56016.          SOCKET s,
  56017.          long cmd,
  56018.  
  56019.  
  56020.     u_long * argp
  56021.     );
  56022. # 1726 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56023. __declspec(dllimport)
  56024. int
  56025.  __stdcall
  56026. getpeername(
  56027.          SOCKET s,
  56028.                                              struct sockaddr * name,
  56029.             int * namelen
  56030.     );
  56031. # 1747 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56032. __declspec(dllimport)
  56033. int
  56034.  __stdcall
  56035. getsockname(
  56036.          SOCKET s,
  56037.                                              struct sockaddr * name,
  56038.             int * namelen
  56039.     );
  56040. # 1768 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56041. __declspec(dllimport)
  56042. int
  56043.  __stdcall
  56044. getsockopt(
  56045.          SOCKET s,
  56046.          int level,
  56047.          int optname,
  56048.                                 char * optval,
  56049.             int * optlen
  56050.     );
  56051. # 1793 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56052. __declspec(dllimport)
  56053. u_long
  56054.  __stdcall
  56055. htonl(
  56056.          u_long hostlong
  56057.     );
  56058. # 1810 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56059. __declspec(dllimport)
  56060. u_short
  56061.  __stdcall
  56062. htons(
  56063.          u_short hostshort
  56064.     );
  56065. # 1828 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56066. __declspec(dllimport)
  56067. unsigned long
  56068.  __stdcall
  56069. inet_addr(
  56070.            const char * cp
  56071.     );
  56072. # 1846 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56073. __declspec(dllimport)
  56074. char *
  56075.  __stdcall
  56076. inet_ntoa(
  56077.          struct in_addr in
  56078.     );
  56079. # 1887 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56080. __inline unsigned __int64 htonll ( unsigned __int64 Value )
  56081. {
  56082.  const unsigned __int64 Retval = ( ( ((Value) >> 56) & 0x00000000000000FFLL ) | ( ((Value) >> 40) & 0x000000000000FF00LL ) | ( ((Value) >> 24) & 0x0000000000FF0000LL ) | ( ((Value) >> 8) & 0x00000000FF000000LL ) | ( ((Value) << 8) & 0x000000FF00000000LL ) | ( ((Value) << 24) & 0x0000FF0000000000LL ) | ( ((Value) << 40) & 0x00FF000000000000LL ) | ( ((Value) << 56) & 0xFF00000000000000LL ) );
  56083.  return Retval;
  56084. }
  56085.  
  56086.  
  56087.  
  56088. __inline unsigned __int64 ntohll ( unsigned __int64 Value )
  56089. {
  56090.  const unsigned __int64 Retval = ( ( ((Value) >> 56) & 0x00000000000000FFLL ) | ( ((Value) >> 40) & 0x000000000000FF00LL ) | ( ((Value) >> 24) & 0x0000000000FF0000LL ) | ( ((Value) >> 8) & 0x00000000FF000000LL ) | ( ((Value) << 8) & 0x000000FF00000000LL ) | ( ((Value) << 24) & 0x0000FF0000000000LL ) | ( ((Value) << 40) & 0x00FF000000000000LL ) | ( ((Value) << 56) & 0xFF00000000000000LL ) );
  56091.  return Retval;
  56092. }
  56093.  
  56094.  
  56095.  
  56096. __inline unsigned __int32 htonf ( float Value )
  56097. {
  56098.  unsigned __int32 Tempval;
  56099.  unsigned __int32 Retval;
  56100.  Tempval = *(unsigned __int32*)(&Value);
  56101.  Retval = ( ( ((Tempval) >> 24) & 0x000000FFL ) | ( ((Tempval) >> 8) & 0x0000FF00L ) | ( ((Tempval) << 8) & 0x00FF0000L ) | ( ((Tempval) << 24) & 0xFF000000L ) );
  56102.  return Retval;
  56103. }
  56104.  
  56105.  
  56106.  
  56107. __inline float ntohf ( unsigned __int32 Value )
  56108. {
  56109.  const unsigned __int32 Tempval = ( ( ((Value) >> 24) & 0x000000FFL ) | ( ((Value) >> 8) & 0x0000FF00L ) | ( ((Value) << 8) & 0x00FF0000L ) | ( ((Value) << 24) & 0xFF000000L ) );
  56110.  float Retval;
  56111.  *((unsigned __int32*)&Retval) = Tempval;
  56112.  return Retval;
  56113. }
  56114.  
  56115.  
  56116.  
  56117. __inline unsigned __int64 htond ( double Value )
  56118. {
  56119.  unsigned __int64 Tempval;
  56120.  unsigned __int64 Retval;
  56121.  Tempval = *(unsigned __int64*)(&Value);
  56122.  Retval = ( ( ((Tempval) >> 56) & 0x00000000000000FFLL ) | ( ((Tempval) >> 40) & 0x000000000000FF00LL ) | ( ((Tempval) >> 24) & 0x0000000000FF0000LL ) | ( ((Tempval) >> 8) & 0x00000000FF000000LL ) | ( ((Tempval) << 8) & 0x000000FF00000000LL ) | ( ((Tempval) << 24) & 0x0000FF0000000000LL ) | ( ((Tempval) << 40) & 0x00FF000000000000LL ) | ( ((Tempval) << 56) & 0xFF00000000000000LL ) );
  56123.  return Retval;
  56124. }
  56125.  
  56126.  
  56127.  
  56128. __inline double ntohd ( unsigned __int64 Value )
  56129. {
  56130.  const unsigned __int64 Tempval = ( ( ((Value) >> 56) & 0x00000000000000FFLL ) | ( ((Value) >> 40) & 0x000000000000FF00LL ) | ( ((Value) >> 24) & 0x0000000000FF0000LL ) | ( ((Value) >> 8) & 0x00000000FF000000LL ) | ( ((Value) << 8) & 0x000000FF00000000LL ) | ( ((Value) << 24) & 0x0000FF0000000000LL ) | ( ((Value) << 40) & 0x00FF000000000000LL ) | ( ((Value) << 56) & 0xFF00000000000000LL ) );
  56131.  double Retval;
  56132.  *((unsigned __int64*)&Retval) = Tempval;
  56133.  return Retval;
  56134. }
  56135.  
  56136.  
  56137.  
  56138.  
  56139. __declspec(dllimport)
  56140. int
  56141.  __stdcall
  56142. listen(
  56143.          SOCKET s,
  56144.          int backlog
  56145.     );
  56146. # 1965 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56147. __declspec(dllimport)
  56148. u_long
  56149.  __stdcall
  56150. ntohl(
  56151.          u_long netlong
  56152.     );
  56153. # 1982 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56154. __declspec(dllimport)
  56155. u_short
  56156.  __stdcall
  56157. ntohs(
  56158.          u_short netshort
  56159.     );
  56160. # 1999 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56161. __declspec(dllimport)
  56162. int
  56163.  __stdcall
  56164. recv(
  56165.          SOCKET s,
  56166.                                                                   char * buf,
  56167.          int len,
  56168.          int flags
  56169.     );
  56170. # 2022 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56171. __declspec(dllimport)
  56172. int
  56173.  __stdcall
  56174. recvfrom(
  56175.          SOCKET s,
  56176.                                                                   char * buf,
  56177.          int len,
  56178.          int flags,
  56179.                                                   struct sockaddr * from,
  56180.                 int * fromlen
  56181.     );
  56182. # 2049 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56183. __declspec(dllimport)
  56184. int
  56185.  __stdcall
  56186. select(
  56187.          int nfds,
  56188.                 fd_set * readfds,
  56189.                 fd_set * writefds,
  56190.                 fd_set * exceptfds,
  56191.              const struct timeval * timeout
  56192.     );
  56193. # 2074 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56194. __declspec(dllimport)
  56195. int
  56196.  __stdcall
  56197. send(
  56198.          SOCKET s,
  56199.                           const char * buf,
  56200.          int len,
  56201.          int flags
  56202.     );
  56203. # 2097 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56204. __declspec(dllimport)
  56205. int
  56206.  __stdcall
  56207. sendto(
  56208.          SOCKET s,
  56209.                           const char * buf,
  56210.          int len,
  56211.          int flags,
  56212.                             const struct sockaddr * to,
  56213.          int tolen
  56214.     );
  56215. # 2124 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56216. __declspec(dllimport)
  56217. int
  56218.  __stdcall
  56219. setsockopt(
  56220.          SOCKET s,
  56221.          int level,
  56222.          int optname,
  56223.                                  const char * optval,
  56224.          int optlen
  56225.     );
  56226. # 2149 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56227. __declspec(dllimport)
  56228. int
  56229.  __stdcall
  56230. shutdown(
  56231.          SOCKET s,
  56232.          int how
  56233.     );
  56234. # 2168 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56235. __declspec(dllimport)
  56236.  
  56237. SOCKET
  56238.  __stdcall
  56239. socket(
  56240.          int af,
  56241.          int type,
  56242.          int protocol
  56243.     );
  56244. # 2194 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56245. __declspec(dllimport)
  56246. struct hostent *
  56247.  __stdcall
  56248. gethostbyaddr(
  56249.                           const char * addr,
  56250.          int len,
  56251.          int type
  56252.     );
  56253. # 2216 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56254. __declspec(dllimport)
  56255. struct hostent *
  56256.  __stdcall
  56257. gethostbyname(
  56258.            const char * name
  56259.     );
  56260. # 2233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56261. __declspec(dllimport)
  56262. int
  56263.  __stdcall
  56264. gethostname(
  56265.                                 char * name,
  56266.          int namelen
  56267.     );
  56268. # 2253 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56269. __declspec(dllimport)
  56270. int
  56271.  __stdcall
  56272. GetHostNameW(
  56273.                           PWSTR name,
  56274.          int namelen
  56275.     );
  56276. # 2273 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56277. __declspec(dllimport)
  56278. struct servent *
  56279.  __stdcall
  56280. getservbyport(
  56281.          int port,
  56282.                const char * proto
  56283.     );
  56284. # 2292 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56285. __declspec(dllimport)
  56286. struct servent *
  56287.  __stdcall
  56288. getservbyname(
  56289.            const char * name,
  56290.                const char * proto
  56291.     );
  56292. # 2311 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56293. __declspec(dllimport)
  56294. struct protoent *
  56295.  __stdcall
  56296. getprotobynumber(
  56297.          int number
  56298.     );
  56299. # 2328 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56300. __declspec(dllimport)
  56301. struct protoent *
  56302.  __stdcall
  56303. getprotobyname(
  56304.            const char * name
  56305.     );
  56306. # 2347 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56307. __declspec(dllimport)
  56308.  
  56309. int
  56310.  __stdcall
  56311. WSAStartup(
  56312.          WORD wVersionRequested,
  56313.           LPWSADATA lpWSAData
  56314.     );
  56315. # 2368 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56316. __declspec(dllimport)
  56317. int
  56318.  __stdcall
  56319. WSACleanup(
  56320.     void
  56321.     );
  56322. # 2385 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56323. __declspec(dllimport)
  56324. void
  56325.  __stdcall
  56326. WSASetLastError(
  56327.          int iError
  56328.     );
  56329. # 2402 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56330. __declspec(dllimport)
  56331. int
  56332.  __stdcall
  56333. WSAGetLastError(
  56334.     void
  56335.     );
  56336. # 2418 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56337. #pragma region Desktop Family or OneCore Family
  56338.  
  56339.  
  56340.  
  56341.  
  56342. __declspec(dllimport)
  56343. BOOL
  56344.  __stdcall
  56345. WSAIsBlocking(
  56346.     void
  56347.     );
  56348. # 2441 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56349. __declspec(dllimport)
  56350. int
  56351.  __stdcall
  56352. WSAUnhookBlockingHook(
  56353.     void
  56354.     );
  56355. # 2459 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56356. __declspec(dllimport)
  56357. FARPROC
  56358.  __stdcall
  56359. WSASetBlockingHook(
  56360.          FARPROC lpBlockFunc
  56361.     );
  56362. # 2477 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56363. __declspec(dllimport)
  56364. int
  56365.  __stdcall
  56366. WSACancelBlockingCall(
  56367.     void
  56368.     );
  56369. # 2495 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56370. __declspec(dllimport)
  56371. HANDLE
  56372.  __stdcall
  56373. WSAAsyncGetServByName(
  56374.          HWND hWnd,
  56375.          u_int wMsg,
  56376.            const char * name,
  56377.            const char * proto,
  56378.                                char * buf,
  56379.          int buflen
  56380.     );
  56381. # 2523 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56382. __declspec(dllimport)
  56383. HANDLE
  56384.  __stdcall
  56385. WSAAsyncGetServByPort(
  56386.          HWND hWnd,
  56387.          u_int wMsg,
  56388.          int port,
  56389.          const char * proto,
  56390.                                char * buf,
  56391.          int buflen
  56392.     );
  56393. # 2551 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56394. __declspec(dllimport)
  56395. HANDLE
  56396.  __stdcall
  56397. WSAAsyncGetProtoByName(
  56398.          HWND hWnd,
  56399.          u_int wMsg,
  56400.            const char * name,
  56401.                                char * buf,
  56402.          int buflen
  56403.     );
  56404. # 2577 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56405. __declspec(dllimport)
  56406. HANDLE
  56407.  __stdcall
  56408. WSAAsyncGetProtoByNumber(
  56409.          HWND hWnd,
  56410.          u_int wMsg,
  56411.          int number,
  56412.                                char * buf,
  56413.          int buflen
  56414.     );
  56415. # 2603 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56416. __declspec(dllimport)
  56417. HANDLE
  56418.  __stdcall
  56419. WSAAsyncGetHostByName(
  56420.          HWND hWnd,
  56421.          u_int wMsg,
  56422.            const char * name,
  56423.                                char * buf,
  56424.          int buflen
  56425.     );
  56426. # 2629 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56427. __declspec(dllimport)
  56428. HANDLE
  56429.  __stdcall
  56430. WSAAsyncGetHostByAddr(
  56431.          HWND hWnd,
  56432.          u_int wMsg,
  56433.                           const char * addr,
  56434.          int len,
  56435.          int type,
  56436.                                char * buf,
  56437.          int buflen
  56438.     );
  56439. # 2659 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56440. __declspec(dllimport)
  56441. int
  56442.  __stdcall
  56443. WSACancelAsyncRequest(
  56444.          HANDLE hAsyncTaskHandle
  56445.     );
  56446. # 2677 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56447. __declspec(dllimport)
  56448. int
  56449.  __stdcall
  56450. WSAAsyncSelect(
  56451.          SOCKET s,
  56452.          HWND hWnd,
  56453.          u_int wMsg,
  56454.          long lEvent
  56455.     );
  56456. # 2700 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56457. #pragma endregion
  56458.  
  56459.  
  56460.  
  56461.  
  56462. __declspec(dllimport)
  56463.  
  56464. SOCKET
  56465.  __stdcall
  56466. WSAAccept(
  56467.          SOCKET s,
  56468.                                                  struct sockaddr * addr,
  56469.                 LPINT addrlen,
  56470.              LPCONDITIONPROC lpfnCondition,
  56471.              DWORD_PTR dwCallbackData
  56472.     );
  56473. # 2732 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56474. __declspec(dllimport)
  56475. BOOL
  56476.  __stdcall
  56477. WSACloseEvent(
  56478.          HANDLE hEvent
  56479.     );
  56480. # 2749 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56481. __declspec(dllimport)
  56482. int
  56483.  __stdcall
  56484. WSAConnect(
  56485.          SOCKET s,
  56486.                               const struct sockaddr * name,
  56487.          int namelen,
  56488.              LPWSABUF lpCallerData,
  56489.               LPWSABUF lpCalleeData,
  56490.              LPQOS lpSQOS,
  56491.              LPQOS lpGQOS
  56492.     );
  56493. # 2771 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56494. BOOL
  56495. __stdcall
  56496. WSAConnectByNameW(
  56497.          SOCKET s,
  56498.          LPWSTR nodename,
  56499.          LPWSTR servicename,
  56500.                 LPDWORD LocalAddressLength,
  56501.                                                                        LPSOCKADDR LocalAddress,
  56502.                 LPDWORD RemoteAddressLength,
  56503.                                                                          LPSOCKADDR RemoteAddress,
  56504.              const struct timeval * timeout,
  56505.                LPWSAOVERLAPPED Reserved);
  56506.  
  56507.  
  56508. BOOL
  56509. __stdcall
  56510. WSAConnectByNameA(
  56511.          SOCKET s,
  56512.          LPCSTR nodename,
  56513.          LPCSTR servicename,
  56514.                 LPDWORD LocalAddressLength,
  56515.                                                                        LPSOCKADDR LocalAddress,
  56516.                 LPDWORD RemoteAddressLength,
  56517.                                                                          LPSOCKADDR RemoteAddress,
  56518.              const struct timeval * timeout,
  56519.                LPWSAOVERLAPPED Reserved);
  56520.  
  56521. BOOL
  56522. __stdcall
  56523. WSAConnectByList(
  56524.          SOCKET s,
  56525.          PSOCKET_ADDRESS_LIST SocketAddress,
  56526.                 LPDWORD LocalAddressLength,
  56527.                                                                        LPSOCKADDR LocalAddress,
  56528.                 LPDWORD RemoteAddressLength,
  56529.                                                                          LPSOCKADDR RemoteAddress,
  56530.              const struct timeval * timeout,
  56531.                LPWSAOVERLAPPED Reserved);
  56532. # 2826 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56533. __declspec(dllimport)
  56534. HANDLE
  56535.  __stdcall
  56536. WSACreateEvent(
  56537.     void
  56538.     );
  56539. # 2844 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56540. __declspec(dllimport)
  56541. int
  56542.  __stdcall
  56543. WSADuplicateSocketA(
  56544.          SOCKET s,
  56545.          DWORD dwProcessId,
  56546.           LPWSAPROTOCOL_INFOA lpProtocolInfo
  56547.     );
  56548.  
  56549. __declspec(dllimport)
  56550. int
  56551.  __stdcall
  56552. WSADuplicateSocketW(
  56553.          SOCKET s,
  56554.          DWORD dwProcessId,
  56555.           LPWSAPROTOCOL_INFOW lpProtocolInfo
  56556.     );
  56557. # 2892 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56558. __declspec(dllimport)
  56559. int
  56560.  __stdcall
  56561. WSAEnumNetworkEvents(
  56562.          SOCKET s,
  56563.          HANDLE hEventObject,
  56564.           LPWSANETWORKEVENTS lpNetworkEvents
  56565.     );
  56566. # 2914 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56567. __declspec(dllimport)
  56568. int
  56569.  __stdcall
  56570. WSAEnumProtocolsA(
  56571.              LPINT lpiProtocols,
  56572.                                                                    LPWSAPROTOCOL_INFOA lpProtocolBuffer,
  56573.             LPDWORD lpdwBufferLength
  56574.     );
  56575.  
  56576. __declspec(dllimport)
  56577. int
  56578.  __stdcall
  56579. WSAEnumProtocolsW(
  56580.              LPINT lpiProtocols,
  56581.                                                                    LPWSAPROTOCOL_INFOW lpProtocolBuffer,
  56582.             LPDWORD lpdwBufferLength
  56583.     );
  56584. # 2962 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56585. __declspec(dllimport)
  56586. int
  56587.  __stdcall
  56588. WSAEventSelect(
  56589.          SOCKET s,
  56590.              HANDLE hEventObject,
  56591.          long lNetworkEvents
  56592.     );
  56593. # 2983 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56594. __declspec(dllimport)
  56595. BOOL
  56596.  __stdcall
  56597. WSAGetOverlappedResult(
  56598.          SOCKET s,
  56599.          LPWSAOVERLAPPED lpOverlapped,
  56600.           LPDWORD lpcbTransfer,
  56601.          BOOL fWait,
  56602.           LPDWORD lpdwFlags
  56603.     );
  56604. # 3007 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56605. #pragma region Desktop Family or OneCore Family
  56606.  
  56607.  
  56608.  
  56609.  
  56610. __declspec(dllimport)
  56611. BOOL
  56612.  __stdcall
  56613. WSAGetQOSByName(
  56614.          SOCKET s,
  56615.          LPWSABUF lpQOSName,
  56616.           LPQOS lpQOS
  56617.     );
  56618. # 3033 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56619. #pragma endregion
  56620.  
  56621.  
  56622. __declspec(dllimport)
  56623. int
  56624.  __stdcall
  56625. WSAHtonl(
  56626.             SOCKET s,
  56627.             u_long hostlong,
  56628.               u_long * lpnetlong
  56629.     );
  56630. # 3057 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56631. __declspec(dllimport)
  56632. int
  56633.  __stdcall
  56634. WSAHtons(
  56635.             SOCKET s,
  56636.             u_short hostshort,
  56637.               u_short * lpnetshort
  56638.     );
  56639. # 3078 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56640. __declspec(dllimport)
  56641. int
  56642.  __stdcall
  56643. WSAIoctl(
  56644.          SOCKET s,
  56645.          DWORD dwIoControlCode,
  56646.                                      LPVOID lpvInBuffer,
  56647.          DWORD cbInBuffer,
  56648.                                                                LPVOID lpvOutBuffer,
  56649.          DWORD cbOutBuffer,
  56650.           LPDWORD lpcbBytesReturned,
  56651.                 LPWSAOVERLAPPED lpOverlapped,
  56652.              LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  56653.     );
  56654. # 3111 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56655. __declspec(dllimport)
  56656. SOCKET
  56657.  __stdcall
  56658. WSAJoinLeaf(
  56659.          SOCKET s,
  56660.                               const struct sockaddr * name,
  56661.          int namelen,
  56662.              LPWSABUF lpCallerData,
  56663.               LPWSABUF lpCalleeData,
  56664.              LPQOS lpSQOS,
  56665.              LPQOS lpGQOS,
  56666.          DWORD dwFlags
  56667.     );
  56668. # 3142 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56669. __declspec(dllimport)
  56670. int
  56671.  __stdcall
  56672. WSANtohl(
  56673.          SOCKET s,
  56674.          u_long netlong,
  56675.           u_long * lphostlong
  56676.     );
  56677. # 3163 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56678. __declspec(dllimport)
  56679. int
  56680.  __stdcall
  56681. WSANtohs(
  56682.          SOCKET s,
  56683.          u_short netshort,
  56684.           u_short * lphostshort
  56685.     );
  56686. # 3184 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56687. __declspec(dllimport)
  56688. int
  56689.  __stdcall
  56690. WSARecv(
  56691.          SOCKET s,
  56692.                                                          LPWSABUF lpBuffers,
  56693.          DWORD dwBufferCount,
  56694.               LPDWORD lpNumberOfBytesRecvd,
  56695.             LPDWORD lpFlags,
  56696.                 LPWSAOVERLAPPED lpOverlapped,
  56697.              LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  56698.     );
  56699. # 3212 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56700. #pragma region Desktop Family or OneCore Family
  56701.  
  56702.  
  56703.  
  56704.  
  56705. __declspec(dllimport)
  56706. int
  56707.  __stdcall
  56708. WSARecvDisconnect(
  56709.          SOCKET s,
  56710.                                         LPWSABUF lpInboundDisconnectData
  56711.     );
  56712. # 3236 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56713. #pragma endregion
  56714.  
  56715.  
  56716. __declspec(dllimport)
  56717. int
  56718.  __stdcall
  56719. WSARecvFrom(
  56720.          SOCKET s,
  56721.                                                          LPWSABUF lpBuffers,
  56722.          DWORD dwBufferCount,
  56723.               LPDWORD lpNumberOfBytesRecvd,
  56724.             LPDWORD lpFlags,
  56725.                                                      struct sockaddr * lpFrom,
  56726.                 LPINT lpFromlen,
  56727.                 LPWSAOVERLAPPED lpOverlapped,
  56728.              LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  56729.     );
  56730. # 3272 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56731. __declspec(dllimport)
  56732. BOOL
  56733.  __stdcall
  56734. WSAResetEvent(
  56735.          HANDLE hEvent
  56736.     );
  56737. # 3289 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56738. __declspec(dllimport)
  56739. int
  56740.  __stdcall
  56741. WSASend(
  56742.          SOCKET s,
  56743.                               LPWSABUF lpBuffers,
  56744.          DWORD dwBufferCount,
  56745.               LPDWORD lpNumberOfBytesSent,
  56746.          DWORD dwFlags,
  56747.                 LPWSAOVERLAPPED lpOverlapped,
  56748.              LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  56749.     );
  56750. # 3319 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56751. __declspec(dllimport)
  56752. int
  56753.  __stdcall
  56754. WSASendMsg(
  56755.          SOCKET Handle,
  56756.          LPWSAMSG lpMsg,
  56757.          DWORD dwFlags,
  56758.               LPDWORD lpNumberOfBytesSent,
  56759.                 LPWSAOVERLAPPED lpOverlapped,
  56760.              LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  56761.     );
  56762.  
  56763.  
  56764.  
  56765. #pragma region Desktop Family or OneCore Family
  56766.  
  56767.  
  56768.  
  56769.  
  56770. __declspec(dllimport)
  56771. int
  56772.  __stdcall
  56773. WSASendDisconnect(
  56774.          SOCKET s,
  56775.              LPWSABUF lpOutboundDisconnectData
  56776.     );
  56777. # 3357 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56778. #pragma endregion
  56779.  
  56780.  
  56781. __declspec(dllimport)
  56782. int
  56783.  __stdcall
  56784. WSASendTo(
  56785.          SOCKET s,
  56786.                               LPWSABUF lpBuffers,
  56787.          DWORD dwBufferCount,
  56788.               LPDWORD lpNumberOfBytesSent,
  56789.          DWORD dwFlags,
  56790.                                  const struct sockaddr * lpTo,
  56791.          int iTolen,
  56792.                 LPWSAOVERLAPPED lpOverlapped,
  56793.              LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  56794.     );
  56795. # 3393 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56796. __declspec(dllimport)
  56797. BOOL
  56798.  __stdcall
  56799. WSASetEvent(
  56800.          HANDLE hEvent
  56801.     );
  56802. # 3412 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56803. __declspec(dllimport)
  56804.  
  56805. SOCKET
  56806.  __stdcall
  56807. WSASocketA(
  56808.          int af,
  56809.          int type,
  56810.          int protocol,
  56811.              LPWSAPROTOCOL_INFOA lpProtocolInfo,
  56812.          GROUP g,
  56813.          DWORD dwFlags
  56814.     );
  56815.  
  56816. __declspec(dllimport)
  56817.  
  56818. SOCKET
  56819.  __stdcall
  56820. WSASocketW(
  56821.          int af,
  56822.          int type,
  56823.          int protocol,
  56824.              LPWSAPROTOCOL_INFOW lpProtocolInfo,
  56825.          GROUP g,
  56826.          DWORD dwFlags
  56827.     );
  56828. # 3477 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56829. __declspec(dllimport)
  56830. DWORD
  56831.  __stdcall
  56832. WSAWaitForMultipleEvents(
  56833.          DWORD cEvents,
  56834.                         const HANDLE * lphEvents,
  56835.          BOOL fWaitAll,
  56836.          DWORD dwTimeout,
  56837.          BOOL fAlertable
  56838.     );
  56839. # 3504 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56840. __declspec(dllimport)
  56841. INT
  56842.  __stdcall
  56843. WSAAddressToStringA(
  56844.                                       LPSOCKADDR lpsaAddress,
  56845.              DWORD dwAddressLength,
  56846.              LPWSAPROTOCOL_INFOA lpProtocolInfo,
  56847.                                                                        LPSTR lpszAddressString,
  56848.              LPDWORD lpdwAddressStringLength
  56849.     );
  56850.  
  56851. __declspec(dllimport)
  56852. INT
  56853.  __stdcall
  56854. WSAAddressToStringW(
  56855.                                       LPSOCKADDR lpsaAddress,
  56856.              DWORD dwAddressLength,
  56857.              LPWSAPROTOCOL_INFOW lpProtocolInfo,
  56858.                                                                        LPWSTR lpszAddressString,
  56859.              LPDWORD lpdwAddressStringLength
  56860.     );
  56861. # 3563 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56862. __declspec(dllimport)
  56863. INT
  56864.  __stdcall
  56865. WSAStringToAddressA(
  56866.             LPSTR AddressString,
  56867.             INT AddressFamily,
  56868.              LPWSAPROTOCOL_INFOA lpProtocolInfo,
  56869.                                                              LPSOCKADDR lpAddress,
  56870.             LPINT lpAddressLength
  56871.     );
  56872.  
  56873. __declspec(dllimport)
  56874. INT
  56875.  __stdcall
  56876. WSAStringToAddressW(
  56877.             LPWSTR AddressString,
  56878.             INT AddressFamily,
  56879.              LPWSAPROTOCOL_INFOW lpProtocolInfo,
  56880.                                                              LPSOCKADDR lpAddress,
  56881.             LPINT lpAddressLength
  56882.     );
  56883. # 3625 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56884. __declspec(dllimport)
  56885. INT
  56886.  __stdcall
  56887. WSALookupServiceBeginA(
  56888.          LPWSAQUERYSETA lpqsRestrictions,
  56889.          DWORD dwControlFlags,
  56890.           LPHANDLE lphLookup
  56891.     );
  56892.  
  56893. __declspec(dllimport)
  56894. INT
  56895.  __stdcall
  56896. WSALookupServiceBeginW(
  56897.          LPWSAQUERYSETW lpqsRestrictions,
  56898.          DWORD dwControlFlags,
  56899.           LPHANDLE lphLookup
  56900.     );
  56901. # 3676 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56902. __declspec(dllimport)
  56903. INT
  56904.  __stdcall
  56905. WSALookupServiceNextA(
  56906.          HANDLE hLookup,
  56907.          DWORD dwControlFlags,
  56908.             LPDWORD lpdwBufferLength,
  56909.                                                                LPWSAQUERYSETA lpqsResults
  56910.     );
  56911.  
  56912. __declspec(dllimport)
  56913. INT
  56914.  __stdcall
  56915. WSALookupServiceNextW(
  56916.          HANDLE hLookup,
  56917.          DWORD dwControlFlags,
  56918.             LPDWORD lpdwBufferLength,
  56919.                                                                    LPWSAQUERYSETW lpqsResults
  56920.     );
  56921. # 3730 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56922. __declspec(dllimport)
  56923. INT
  56924.  __stdcall
  56925. WSANSPIoctl(
  56926.          HANDLE hLookup,
  56927.          DWORD dwControlCode,
  56928.                                      LPVOID lpvInBuffer,
  56929.          DWORD cbInBuffer,
  56930.                                                                LPVOID lpvOutBuffer,
  56931.          DWORD cbOutBuffer,
  56932.           LPDWORD lpcbBytesReturned,
  56933.              LPWSACOMPLETION lpCompletion
  56934.     );
  56935. # 3762 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56936. __declspec(dllimport)
  56937. INT
  56938.  __stdcall
  56939. WSALookupServiceEnd(
  56940.          HANDLE hLookup
  56941.     );
  56942. # 3778 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56943. #pragma region Desktop Family or OneCore Family
  56944.  
  56945.  
  56946.  
  56947.  
  56948. __declspec(dllimport)
  56949. INT
  56950.  __stdcall
  56951. WSAInstallServiceClassA(
  56952.           LPWSASERVICECLASSINFOA lpServiceClassInfo
  56953.     );
  56954. __declspec(dllimport)
  56955. INT
  56956.  __stdcall
  56957. WSAInstallServiceClassW(
  56958.           LPWSASERVICECLASSINFOW lpServiceClassInfo
  56959.     );
  56960. # 3821 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56961. __declspec(dllimport)
  56962. INT
  56963.  __stdcall
  56964. WSARemoveServiceClass(
  56965.           LPGUID lpServiceClassId
  56966.     );
  56967. # 3838 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56968. #pragma endregion
  56969.  
  56970.  
  56971. #pragma region Desktop Family or OneCore Family
  56972.  
  56973.  
  56974. __declspec(dllimport)
  56975. INT
  56976.  __stdcall
  56977. WSAGetServiceClassInfoA(
  56978.           LPGUID lpProviderId,
  56979.           LPGUID lpServiceClassId,
  56980.             LPDWORD lpdwBufSize,
  56981.                                                      LPWSASERVICECLASSINFOA lpServiceClassInfo
  56982.     );
  56983.  
  56984. #pragma endregion
  56985.  
  56986. __declspec(dllimport)
  56987. INT
  56988.  __stdcall
  56989. WSAGetServiceClassInfoW(
  56990.           LPGUID lpProviderId,
  56991.           LPGUID lpServiceClassId,
  56992.             LPDWORD lpdwBufSize,
  56993.                                                      LPWSASERVICECLASSINFOW lpServiceClassInfo
  56994.     );
  56995. # 3903 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  56996. __declspec(dllimport)
  56997. INT
  56998.  __stdcall
  56999. WSAEnumNameSpaceProvidersA(
  57000.             LPDWORD lpdwBufferLength,
  57001.                                                                LPWSANAMESPACE_INFOA lpnspBuffer
  57002.     );
  57003.  
  57004. __declspec(dllimport)
  57005. INT
  57006.  __stdcall
  57007. WSAEnumNameSpaceProvidersW(
  57008.             LPDWORD lpdwBufferLength,
  57009.                                                                LPWSANAMESPACE_INFOW lpnspBuffer
  57010.     );
  57011. # 3927 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  57012. __declspec(dllimport)
  57013. INT
  57014.  __stdcall
  57015. WSAEnumNameSpaceProvidersExA(
  57016.             LPDWORD lpdwBufferLength,
  57017.                                                                LPWSANAMESPACE_INFOEXA lpnspBuffer
  57018.     );
  57019.  
  57020. __declspec(dllimport)
  57021. INT
  57022.  __stdcall
  57023. WSAEnumNameSpaceProvidersExW(
  57024.             LPDWORD lpdwBufferLength,
  57025.                                                                LPWSANAMESPACE_INFOEXW lpnspBuffer
  57026.     );
  57027. # 3999 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  57028. #pragma region Desktop Family or OneCore Family
  57029.  
  57030.  
  57031. __declspec(dllimport)
  57032.                        INT
  57033.  __stdcall
  57034. WSAGetServiceClassNameByClassIdA(
  57035.                LPGUID lpServiceClassId,
  57036.                                                                LPSTR lpszServiceClassName,
  57037.             LPDWORD lpdwBufferLength
  57038.     );
  57039.  
  57040. #pragma endregion
  57041.  
  57042. __declspec(dllimport)
  57043.                        INT
  57044.  __stdcall
  57045. WSAGetServiceClassNameByClassIdW(
  57046.                LPGUID lpServiceClassId,
  57047.                                                                LPWSTR lpszServiceClassName,
  57048.             LPDWORD lpdwBufferLength
  57049.     );
  57050. # 4057 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  57051. __declspec(dllimport)
  57052. INT
  57053.  __stdcall
  57054. WSASetServiceA(
  57055.          LPWSAQUERYSETA lpqsRegInfo,
  57056.          WSAESETSERVICEOP essoperation,
  57057.          DWORD dwControlFlags
  57058.     );
  57059.  
  57060. __declspec(dllimport)
  57061. INT
  57062.  __stdcall
  57063. WSASetServiceW(
  57064.          LPWSAQUERYSETW lpqsRegInfo,
  57065.          WSAESETSERVICEOP essoperation,
  57066.          DWORD dwControlFlags
  57067.     );
  57068. # 4105 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  57069. __declspec(dllimport)
  57070. INT
  57071.  __stdcall
  57072. WSAProviderConfigChange(
  57073.             LPHANDLE lpNotificationHandle,
  57074.                 LPWSAOVERLAPPED lpOverlapped,
  57075.              LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine
  57076.     );
  57077. # 4127 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  57078. __declspec(dllimport)
  57079. int
  57080.  __stdcall
  57081. WSAPoll(
  57082.             LPWSAPOLLFD fdArray,
  57083.          ULONG fds,
  57084.          INT timeout
  57085.     );
  57086.  
  57087.  
  57088.  
  57089.  
  57090.  
  57091.  
  57092. typedef struct sockaddr_in *LPSOCKADDR_IN;
  57093.  
  57094. typedef struct linger LINGER;
  57095. typedef struct linger *PLINGER;
  57096. typedef struct linger *LPLINGER;
  57097.  
  57098. typedef struct fd_set FD_SET;
  57099. typedef struct fd_set *PFD_SET;
  57100. typedef struct fd_set *LPFD_SET;
  57101.  
  57102. typedef struct hostent HOSTENT;
  57103. typedef struct hostent *PHOSTENT;
  57104. typedef struct hostent *LPHOSTENT;
  57105.  
  57106. typedef struct servent SERVENT;
  57107. typedef struct servent *PSERVENT;
  57108. typedef struct servent *LPSERVENT;
  57109.  
  57110. typedef struct protoent PROTOENT;
  57111. typedef struct protoent *PPROTOENT;
  57112. typedef struct protoent *LPPROTOENT;
  57113.  
  57114. typedef struct timeval TIMEVAL;
  57115. typedef struct timeval *PTIMEVAL;
  57116. typedef struct timeval *LPTIMEVAL;
  57117. # 4219 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsock2.h" 3
  57118. #pragma option pop
  57119. # 238 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  57120. # 252 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 3
  57121. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 1 3
  57122. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  57123. #pragma option push -b -a8 -pc -A- -w-pun
  57124. # 77 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  57125. #pragma region Application Family or OneCore Family
  57126. # 292 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  57127. typedef unsigned int ALG_ID;
  57128. # 381 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  57129. typedef ULONG_PTR HCRYPTPROV;
  57130. typedef ULONG_PTR HCRYPTKEY;
  57131. typedef ULONG_PTR HCRYPTHASH;
  57132. # 896 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  57133. typedef struct _CMS_KEY_INFO {
  57134.     DWORD dwVersion;
  57135.     ALG_ID Algid;
  57136.     BYTE *pbOID;
  57137.     DWORD cbOID;
  57138. } CMS_KEY_INFO, *PCMS_KEY_INFO;
  57139.  
  57140.  
  57141. typedef struct _HMAC_Info {
  57142.     ALG_ID HashAlgid;
  57143.     BYTE *pbInnerString;
  57144.     DWORD cbInnerString;
  57145.     BYTE *pbOuterString;
  57146.     DWORD cbOuterString;
  57147. } HMAC_INFO, *PHMAC_INFO;
  57148.  
  57149.  
  57150. typedef struct _SCHANNEL_ALG {
  57151.     DWORD dwUse;
  57152.     ALG_ID Algid;
  57153.     DWORD cBits;
  57154.     DWORD dwFlags;
  57155.     DWORD dwReserved;
  57156. } SCHANNEL_ALG, *PSCHANNEL_ALG;
  57157. # 928 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  57158. typedef struct _PROV_ENUMALGS {
  57159.     ALG_ID aiAlgid;
  57160.     DWORD dwBitLen;
  57161.     DWORD dwNameLen;
  57162.     CHAR szName[20];
  57163. } PROV_ENUMALGS;
  57164.  
  57165.  
  57166. typedef struct _PROV_ENUMALGS_EX {
  57167.     ALG_ID aiAlgid;
  57168.     DWORD dwDefaultLen;
  57169.     DWORD dwMinLen;
  57170.     DWORD dwMaxLen;
  57171.     DWORD dwProtocols;
  57172.     DWORD dwNameLen;
  57173.     CHAR szName[20];
  57174.     DWORD dwLongNameLen;
  57175.     CHAR szLongName[40];
  57176. } PROV_ENUMALGS_EX;
  57177.  
  57178.  
  57179. typedef struct _PUBLICKEYSTRUC {
  57180.         BYTE bType;
  57181.         BYTE bVersion;
  57182.         WORD reserved;
  57183.         ALG_ID aiKeyAlg;
  57184. } BLOBHEADER, PUBLICKEYSTRUC;
  57185.  
  57186. typedef struct _RSAPUBKEY {
  57187.         DWORD magic;
  57188.         DWORD bitlen;
  57189.         DWORD pubexp;
  57190.  
  57191. } RSAPUBKEY;
  57192.  
  57193. typedef struct _PUBKEY {
  57194.         DWORD magic;
  57195.         DWORD bitlen;
  57196. } DHPUBKEY, DSSPUBKEY, KEAPUBKEY, TEKPUBKEY;
  57197.  
  57198. typedef struct _DSSSEED {
  57199.         DWORD counter;
  57200.         BYTE seed[20];
  57201. } DSSSEED;
  57202.  
  57203. typedef struct _PUBKEYVER3 {
  57204.         DWORD magic;
  57205.         DWORD bitlenP;
  57206.         DWORD bitlenQ;
  57207.         DWORD bitlenJ;
  57208.         DSSSEED DSSSeed;
  57209. } DHPUBKEY_VER3, DSSPUBKEY_VER3;
  57210.  
  57211. typedef struct _PRIVKEYVER3 {
  57212.         DWORD magic;
  57213.         DWORD bitlenP;
  57214.         DWORD bitlenQ;
  57215.         DWORD bitlenJ;
  57216.         DWORD bitlenX;
  57217.         DSSSEED DSSSeed;
  57218. } DHPRIVKEY_VER3, DSSPRIVKEY_VER3;
  57219.  
  57220. typedef struct _KEY_TYPE_SUBTYPE {
  57221.         DWORD dwKeySpec;
  57222.         GUID Type;
  57223.         GUID Subtype;
  57224. } KEY_TYPE_SUBTYPE, *PKEY_TYPE_SUBTYPE;
  57225.  
  57226. typedef struct _CERT_FORTEZZA_DATA_PROP {
  57227.     unsigned char SerialNumber[8];
  57228.     int CertIndex;
  57229.     unsigned char CertLabel[36];
  57230. } CERT_FORTEZZA_DATA_PROP;
  57231.  
  57232.  
  57233. typedef struct _CRYPT_RC4_KEY_STATE {
  57234.     unsigned char Key[16];
  57235.     unsigned char SBox[256];
  57236.     unsigned char i;
  57237.     unsigned char j;
  57238. } CRYPT_RC4_KEY_STATE, *PCRYPT_RC4_KEY_STATE;
  57239.  
  57240. typedef struct _CRYPT_DES_KEY_STATE {
  57241.     unsigned char Key[8];
  57242.     unsigned char IV[8];
  57243.     unsigned char Feedback[8];
  57244. } CRYPT_DES_KEY_STATE, *PCRYPT_DES_KEY_STATE;
  57245.  
  57246. typedef struct _CRYPT_3DES_KEY_STATE {
  57247.     unsigned char Key[24];
  57248.     unsigned char IV[8];
  57249.     unsigned char Feedback[8];
  57250. } CRYPT_3DES_KEY_STATE, *PCRYPT_3DES_KEY_STATE;
  57251.  
  57252.  
  57253.  
  57254. typedef struct _CRYPT_AES_128_KEY_STATE {
  57255.     unsigned char Key[16];
  57256.     unsigned char IV[16];
  57257.     unsigned char EncryptionState[11][16];
  57258.     unsigned char DecryptionState[11][16];
  57259.     unsigned char Feedback[16];
  57260. } CRYPT_AES_128_KEY_STATE, *PCRYPT_AES_128_KEY_STATE;
  57261.  
  57262. typedef struct _CRYPT_AES_256_KEY_STATE {
  57263.     unsigned char Key[32];
  57264.     unsigned char IV[16];
  57265.     unsigned char EncryptionState[15][16];
  57266.     unsigned char DecryptionState[15][16];
  57267.     unsigned char Feedback[16];
  57268. } CRYPT_AES_256_KEY_STATE, *PCRYPT_AES_256_KEY_STATE;
  57269. # 1047 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  57270. typedef struct _CRYPTOAPI_BLOB {
  57271.                             DWORD cbData;
  57272.                                 BYTE *pbData;
  57273. } CRYPT_INTEGER_BLOB, *PCRYPT_INTEGER_BLOB,
  57274. CRYPT_UINT_BLOB, *PCRYPT_UINT_BLOB,
  57275. CRYPT_OBJID_BLOB, *PCRYPT_OBJID_BLOB,
  57276. CERT_NAME_BLOB, *PCERT_NAME_BLOB,
  57277. CERT_RDN_VALUE_BLOB, *PCERT_RDN_VALUE_BLOB,
  57278. CERT_BLOB, *PCERT_BLOB,
  57279. CRL_BLOB, *PCRL_BLOB,
  57280. DATA_BLOB, *PDATA_BLOB,
  57281. CRYPT_DATA_BLOB, *PCRYPT_DATA_BLOB,
  57282. CRYPT_HASH_BLOB, *PCRYPT_HASH_BLOB,
  57283. CRYPT_DIGEST_BLOB, *PCRYPT_DIGEST_BLOB,
  57284. CRYPT_DER_BLOB, *PCRYPT_DER_BLOB,
  57285. CRYPT_ATTR_BLOB, *PCRYPT_ATTR_BLOB;
  57286.  
  57287.  
  57288.  
  57289.  
  57290. typedef struct _CMS_DH_KEY_INFO {
  57291.     DWORD dwVersion;
  57292.     ALG_ID Algid;
  57293.     LPSTR pszContentEncObjId;
  57294.     CRYPT_DATA_BLOB PubInfo;
  57295.     void *pReserved;
  57296. } CMS_DH_KEY_INFO, *PCMS_DH_KEY_INFO;
  57297.  
  57298.  
  57299. #pragma endregion
  57300.  
  57301. #pragma region Desktop Family or OneCore Family
  57302.  
  57303.  
  57304. __declspec(dllimport)
  57305. BOOL
  57306. __stdcall
  57307. CryptAcquireContextA(
  57308.                 HCRYPTPROV *phProv,
  57309.                 LPCSTR szContainer,
  57310.                 LPCSTR szProvider,
  57311.                 DWORD dwProvType,
  57312.                 DWORD dwFlags
  57313.     );
  57314. __declspec(dllimport)
  57315. BOOL
  57316. __stdcall
  57317. CryptAcquireContextW(
  57318.                 HCRYPTPROV *phProv,
  57319.                 LPCWSTR szContainer,
  57320.                 LPCWSTR szProvider,
  57321.                 DWORD dwProvType,
  57322.                 DWORD dwFlags
  57323.     );
  57324.  
  57325.  
  57326.  
  57327.  
  57328.  
  57329.  
  57330.  
  57331. #pragma endregion
  57332.  
  57333. #pragma region Application Family or OneCore Family
  57334.  
  57335.  
  57336. __declspec(dllimport)
  57337. BOOL
  57338. __stdcall
  57339. CryptReleaseContext(
  57340.             HCRYPTPROV hProv,
  57341.             DWORD dwFlags
  57342.     );
  57343.  
  57344.  
  57345. #pragma endregion
  57346.  
  57347. #pragma region Desktop Family or OneCore Family
  57348.  
  57349.  
  57350. __declspec(dllimport)
  57351. BOOL
  57352. __stdcall
  57353. CryptGenKey(
  57354.             HCRYPTPROV hProv,
  57355.             ALG_ID Algid,
  57356.             DWORD dwFlags,
  57357.             HCRYPTKEY *phKey
  57358.     );
  57359.  
  57360. __declspec(dllimport)
  57361. BOOL
  57362. __stdcall
  57363. CryptDeriveKey(
  57364.             HCRYPTPROV hProv,
  57365.             ALG_ID Algid,
  57366.             HCRYPTHASH hBaseData,
  57367.             DWORD dwFlags,
  57368.             HCRYPTKEY *phKey
  57369.     );
  57370.  
  57371. __declspec(dllimport)
  57372. BOOL
  57373. __stdcall
  57374. CryptDestroyKey(
  57375.             HCRYPTKEY hKey
  57376.     );
  57377.  
  57378. __declspec(dllimport)
  57379. BOOL
  57380. __stdcall
  57381. CryptSetKeyParam(
  57382.             HCRYPTKEY hKey,
  57383.             DWORD dwParam,
  57384.             const BYTE *pbData,
  57385.             DWORD dwFlags
  57386.     );
  57387.  
  57388. __declspec(dllimport)
  57389. BOOL
  57390. __stdcall
  57391. CryptGetKeyParam(
  57392.                                                     HCRYPTKEY hKey,
  57393.                                                     DWORD dwParam,
  57394.                                                         BYTE *pbData,
  57395.                                                     DWORD *pdwDataLen,
  57396.                                                     DWORD dwFlags
  57397.     );
  57398.  
  57399. __declspec(dllimport)
  57400. BOOL
  57401. __stdcall
  57402. CryptSetHashParam(
  57403.             HCRYPTHASH hHash,
  57404.             DWORD dwParam,
  57405.             const BYTE *pbData,
  57406.             DWORD dwFlags
  57407.     );
  57408.  
  57409. __declspec(dllimport)
  57410. BOOL
  57411. __stdcall
  57412. CryptGetHashParam(
  57413.                                                 HCRYPTHASH hHash,
  57414.                                                 DWORD dwParam,
  57415.                                                         BYTE *pbData,
  57416.                                                 DWORD *pdwDataLen,
  57417.                                                 DWORD dwFlags
  57418.     );
  57419.  
  57420. __declspec(dllimport)
  57421. BOOL
  57422. __stdcall
  57423. CryptSetProvParam(
  57424.             HCRYPTPROV hProv,
  57425.             DWORD dwParam,
  57426.             const BYTE *pbData,
  57427.             DWORD dwFlags
  57428.     );
  57429.  
  57430. __declspec(dllimport)
  57431. BOOL
  57432. __stdcall
  57433. CryptGetProvParam(
  57434.                                                     HCRYPTPROV hProv,
  57435.                                                     DWORD dwParam,
  57436.                                                         BYTE *pbData,
  57437.                                                     DWORD *pdwDataLen,
  57438.                                                     DWORD dwFlags
  57439.     );
  57440.  
  57441. __declspec(dllimport)
  57442. BOOL
  57443. __stdcall
  57444. CryptGenRandom(
  57445.                             HCRYPTPROV hProv,
  57446.                             DWORD dwLen,
  57447.                                    BYTE *pbBuffer
  57448.     );
  57449.  
  57450. __declspec(dllimport)
  57451. BOOL
  57452. __stdcall
  57453. CryptGetUserKey(
  57454.             HCRYPTPROV hProv,
  57455.             DWORD dwKeySpec,
  57456.             HCRYPTKEY *phUserKey
  57457.     );
  57458.  
  57459. __declspec(dllimport)
  57460. BOOL
  57461. __stdcall
  57462. CryptExportKey(
  57463.                                                     HCRYPTKEY hKey,
  57464.                                                     HCRYPTKEY hExpKey,
  57465.                                                     DWORD dwBlobType,
  57466.                                                     DWORD dwFlags,
  57467.                                                         BYTE *pbData,
  57468.                                                     DWORD *pdwDataLen
  57469.     );
  57470.  
  57471. __declspec(dllimport)
  57472. BOOL
  57473. __stdcall
  57474. CryptImportKey(
  57475.                             HCRYPTPROV hProv,
  57476.                                  const BYTE *pbData,
  57477.                             DWORD dwDataLen,
  57478.                             HCRYPTKEY hPubKey,
  57479.                             DWORD dwFlags,
  57480.                             HCRYPTKEY *phKey
  57481.     );
  57482.  
  57483. __declspec(dllimport)
  57484.                        BOOL
  57485. __stdcall
  57486. CryptEncrypt(
  57487.                                                     HCRYPTKEY hKey,
  57488.                                                     HCRYPTHASH hHash,
  57489.                                                     BOOL Final,
  57490.                                                     DWORD dwFlags,
  57491.                                                          BYTE *pbData,
  57492.                                                     DWORD *pdwDataLen,
  57493.                                                     DWORD dwBufLen
  57494.     );
  57495.  
  57496. __declspec(dllimport)
  57497.                        BOOL
  57498. __stdcall
  57499. CryptDecrypt(
  57500.                                                     HCRYPTKEY hKey,
  57501.                                                     HCRYPTHASH hHash,
  57502.                                                     BOOL Final,
  57503.                                                     DWORD dwFlags,
  57504.                                                          BYTE *pbData,
  57505.                                                     DWORD *pdwDataLen
  57506.     );
  57507.  
  57508. __declspec(dllimport)
  57509. BOOL
  57510. __stdcall
  57511. CryptCreateHash(
  57512.             HCRYPTPROV hProv,
  57513.             ALG_ID Algid,
  57514.             HCRYPTKEY hKey,
  57515.             DWORD dwFlags,
  57516.             HCRYPTHASH *phHash
  57517.     );
  57518.  
  57519. __declspec(dllimport)
  57520. BOOL
  57521. __stdcall
  57522. CryptHashData(
  57523.                             HCRYPTHASH hHash,
  57524.                                  const BYTE *pbData,
  57525.                             DWORD dwDataLen,
  57526.                             DWORD dwFlags
  57527.     );
  57528.  
  57529. __declspec(dllimport)
  57530. BOOL
  57531. __stdcall
  57532. CryptHashSessionKey(
  57533.             HCRYPTHASH hHash,
  57534.             HCRYPTKEY hKey,
  57535.             DWORD dwFlags
  57536.     );
  57537.  
  57538. __declspec(dllimport)
  57539. BOOL
  57540. __stdcall
  57541. CryptDestroyHash(
  57542.             HCRYPTHASH hHash
  57543.     );
  57544.  
  57545. __declspec(dllimport)
  57546. BOOL
  57547. __stdcall
  57548. CryptSignHashA(
  57549.                                                   HCRYPTHASH hHash,
  57550.                                                   DWORD dwKeySpec,
  57551.                                                   LPCSTR szDescription,
  57552.                                                   DWORD dwFlags,
  57553.                                                       BYTE *pbSignature,
  57554.                                                   DWORD *pdwSigLen
  57555.     );
  57556. __declspec(dllimport)
  57557. BOOL
  57558. __stdcall
  57559. CryptSignHashW(
  57560.                                                   HCRYPTHASH hHash,
  57561.                                                   DWORD dwKeySpec,
  57562.                                                   LPCWSTR szDescription,
  57563.                                                   DWORD dwFlags,
  57564.                                                       BYTE *pbSignature,
  57565.                                                   DWORD *pdwSigLen
  57566.     );
  57567.  
  57568.  
  57569.  
  57570.  
  57571.  
  57572.  
  57573. __declspec(dllimport)
  57574. BOOL
  57575. __stdcall
  57576. CryptVerifySignatureA(
  57577.                             HCRYPTHASH hHash,
  57578.                                  const BYTE *pbSignature,
  57579.                             DWORD dwSigLen,
  57580.                             HCRYPTKEY hPubKey,
  57581.                             LPCSTR szDescription,
  57582.                             DWORD dwFlags
  57583.     );
  57584. __declspec(dllimport)
  57585. BOOL
  57586. __stdcall
  57587. CryptVerifySignatureW(
  57588.                             HCRYPTHASH hHash,
  57589.                                  const BYTE *pbSignature,
  57590.                             DWORD dwSigLen,
  57591.                             HCRYPTKEY hPubKey,
  57592.                             LPCWSTR szDescription,
  57593.                             DWORD dwFlags
  57594.     );
  57595.  
  57596.  
  57597.  
  57598.  
  57599.  
  57600.  
  57601. __declspec(dllimport)
  57602. BOOL
  57603. __stdcall
  57604. CryptSetProviderA(
  57605.             LPCSTR pszProvName,
  57606.             DWORD dwProvType
  57607.     );
  57608. __declspec(dllimport)
  57609. BOOL
  57610. __stdcall
  57611. CryptSetProviderW(
  57612.             LPCWSTR pszProvName,
  57613.             DWORD dwProvType
  57614.     );
  57615.  
  57616.  
  57617.  
  57618.  
  57619.  
  57620.  
  57621. __declspec(dllimport)
  57622. BOOL
  57623. __stdcall
  57624. CryptSetProviderExA(
  57625.                 LPCSTR pszProvName,
  57626.                 DWORD dwProvType,
  57627.                 DWORD *pdwReserved,
  57628.                 DWORD dwFlags
  57629.     );
  57630. __declspec(dllimport)
  57631. BOOL
  57632. __stdcall
  57633. CryptSetProviderExW(
  57634.                 LPCWSTR pszProvName,
  57635.                 DWORD dwProvType,
  57636.                 DWORD *pdwReserved,
  57637.                 DWORD dwFlags
  57638.     );
  57639.  
  57640.  
  57641.  
  57642.  
  57643.  
  57644.  
  57645. __declspec(dllimport)
  57646.                        BOOL
  57647. __stdcall
  57648. CryptGetDefaultProviderA(
  57649.                                                     DWORD dwProvType,
  57650.                                                     DWORD *pdwReserved,
  57651.                                                     DWORD dwFlags,
  57652.                                                             LPSTR pszProvName,
  57653.                                                     DWORD *pcbProvName
  57654.     );
  57655. __declspec(dllimport)
  57656.                        BOOL
  57657. __stdcall
  57658. CryptGetDefaultProviderW(
  57659.                                                     DWORD dwProvType,
  57660.                                                     DWORD *pdwReserved,
  57661.                                                     DWORD dwFlags,
  57662.                                                             LPWSTR pszProvName,
  57663.                                                     DWORD *pcbProvName
  57664.     );
  57665.  
  57666.  
  57667.  
  57668.  
  57669.  
  57670.  
  57671. __declspec(dllimport)
  57672.                        BOOL
  57673. __stdcall
  57674. CryptEnumProviderTypesA(
  57675.                                                     DWORD dwIndex,
  57676.                                                     DWORD *pdwReserved,
  57677.                                                     DWORD dwFlags,
  57678.                                                     DWORD *pdwProvType,
  57679.                                                             LPSTR szTypeName,
  57680.                                                     DWORD *pcbTypeName
  57681.     );
  57682. __declspec(dllimport)
  57683.                        BOOL
  57684. __stdcall
  57685. CryptEnumProviderTypesW(
  57686.                                                     DWORD dwIndex,
  57687.                                                     DWORD *pdwReserved,
  57688.                                                     DWORD dwFlags,
  57689.                                                     DWORD *pdwProvType,
  57690.                                                             LPWSTR szTypeName,
  57691.                                                     DWORD *pcbTypeName
  57692.     );
  57693.  
  57694.  
  57695.  
  57696.  
  57697.  
  57698.  
  57699. __declspec(dllimport)
  57700.                        BOOL
  57701. __stdcall
  57702. CryptEnumProvidersA(
  57703.                                                         DWORD dwIndex,
  57704.                                                         DWORD *pdwReserved,
  57705.                                                         DWORD dwFlags,
  57706.                                                         DWORD *pdwProvType,
  57707.                                                             LPSTR szProvName,
  57708.                                                         DWORD *pcbProvName
  57709.     );
  57710. __declspec(dllimport)
  57711.                        BOOL
  57712. __stdcall
  57713. CryptEnumProvidersW(
  57714.                                                         DWORD dwIndex,
  57715.                                                         DWORD *pdwReserved,
  57716.                                                         DWORD dwFlags,
  57717.                                                         DWORD *pdwProvType,
  57718.                                                             LPWSTR szProvName,
  57719.                                                         DWORD *pcbProvName
  57720.     );
  57721.  
  57722.  
  57723.  
  57724.  
  57725.  
  57726.  
  57727. __declspec(dllimport)
  57728. BOOL
  57729. __stdcall
  57730. CryptContextAddRef(
  57731.                 HCRYPTPROV hProv,
  57732.                 DWORD *pdwReserved,
  57733.                 DWORD dwFlags
  57734.     );
  57735.  
  57736. __declspec(dllimport)
  57737. BOOL
  57738. __stdcall
  57739. CryptDuplicateKey(
  57740.                 HCRYPTKEY hKey,
  57741.                 DWORD *pdwReserved,
  57742.                 DWORD dwFlags,
  57743.                 HCRYPTKEY *phKey
  57744.     );
  57745.  
  57746. __declspec(dllimport)
  57747. BOOL
  57748. __stdcall
  57749. CryptDuplicateHash(
  57750.                 HCRYPTHASH hHash,
  57751.                 DWORD *pdwReserved,
  57752.                 DWORD dwFlags,
  57753.                 HCRYPTHASH *phHash
  57754.     );
  57755.  
  57756.  
  57757. #pragma endregion
  57758.  
  57759. #pragma region Desktop Family
  57760. # 1546 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  57761. BOOL
  57762. __cdecl
  57763. GetEncSChannel(
  57764.                                        BYTE **pData,
  57765.           DWORD *dwDecSize
  57766.     );
  57767.  
  57768.  
  57769.  
  57770. #pragma endregion
  57771.  
  57772.  
  57773.  
  57774. #pragma region Desktop Family or OneCore Family
  57775.  
  57776.  
  57777.  
  57778.  
  57779.  
  57780.  
  57781.  
  57782.  
  57783. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 1 3
  57784. #pragma option push -b -a8 -pc -A- -w-pun
  57785. # 32 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  57786. #pragma region Desktop Family or OneCore Family
  57787.  
  57788.  
  57789.  
  57790.  
  57791.  
  57792.  
  57793.  
  57794. typedef
  57795.  
  57796.  
  57797.  
  57798. LONG NTSTATUS;
  57799. typedef NTSTATUS *PNTSTATUS;
  57800. # 201 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  57801. typedef struct __BCRYPT_KEY_LENGTHS_STRUCT
  57802. {
  57803.     ULONG dwMinLength;
  57804.     ULONG dwMaxLength;
  57805.     ULONG dwIncrement;
  57806. } BCRYPT_KEY_LENGTHS_STRUCT;
  57807.  
  57808. typedef BCRYPT_KEY_LENGTHS_STRUCT BCRYPT_AUTH_TAG_LENGTHS_STRUCT;
  57809.  
  57810. typedef struct _BCRYPT_OID
  57811. {
  57812.     ULONG cbOID;
  57813.     PUCHAR pbOID;
  57814. } BCRYPT_OID;
  57815.  
  57816. typedef struct _BCRYPT_OID_LIST
  57817. {
  57818.     ULONG dwOIDCount;
  57819.     BCRYPT_OID *pOIDs;
  57820. } BCRYPT_OID_LIST;
  57821.  
  57822. typedef struct _BCRYPT_PKCS1_PADDING_INFO
  57823. {
  57824.     LPCWSTR pszAlgId;
  57825. } BCRYPT_PKCS1_PADDING_INFO;
  57826.  
  57827. typedef struct _BCRYPT_PSS_PADDING_INFO
  57828. {
  57829.     LPCWSTR pszAlgId;
  57830.     ULONG cbSalt;
  57831. } BCRYPT_PSS_PADDING_INFO;
  57832.  
  57833. typedef struct _BCRYPT_OAEP_PADDING_INFO
  57834. {
  57835.     LPCWSTR pszAlgId;
  57836.     PUCHAR pbLabel;
  57837.     ULONG cbLabel;
  57838. } BCRYPT_OAEP_PADDING_INFO;
  57839.  
  57840.  
  57841.  
  57842.  
  57843.  
  57844.  
  57845. typedef struct _BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO
  57846. {
  57847.     ULONG cbSize;
  57848.     ULONG dwInfoVersion;
  57849.     PUCHAR pbNonce;
  57850.     ULONG cbNonce;
  57851.     PUCHAR pbAuthData;
  57852.     ULONG cbAuthData;
  57853.     PUCHAR pbTag;
  57854.     ULONG cbTag;
  57855.     PUCHAR pbMacContext;
  57856.     ULONG cbMacContext;
  57857.     ULONG cbAAD;
  57858.     ULONGLONG cbData;
  57859.     ULONG dwFlags;
  57860. } BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO, *PBCRYPT_AUTHENTICATED_CIPHER_MODE_INFO;
  57861. # 396 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  57862. typedef struct _BCryptBuffer {
  57863.     ULONG cbBuffer;
  57864.     ULONG BufferType;
  57865.     PVOID pvBuffer;
  57866. } BCryptBuffer, * PBCryptBuffer;
  57867.  
  57868. typedef struct _BCryptBufferDesc {
  57869.     ULONG ulVersion;
  57870.     ULONG cBuffers;
  57871.     PBCryptBuffer pBuffers;
  57872. } BCryptBufferDesc, * PBCryptBufferDesc;
  57873.  
  57874.  
  57875.  
  57876.  
  57877.  
  57878. typedef PVOID BCRYPT_HANDLE;
  57879. typedef PVOID BCRYPT_ALG_HANDLE;
  57880. typedef PVOID BCRYPT_KEY_HANDLE;
  57881. typedef PVOID BCRYPT_HASH_HANDLE;
  57882. typedef PVOID BCRYPT_SECRET_HANDLE;
  57883. # 425 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  57884. typedef struct _BCRYPT_KEY_BLOB
  57885. {
  57886.     ULONG Magic;
  57887. } BCRYPT_KEY_BLOB;
  57888. # 447 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  57889. typedef struct _BCRYPT_RSAKEY_BLOB
  57890. {
  57891.     ULONG Magic;
  57892.     ULONG BitLength;
  57893.     ULONG cbPublicExp;
  57894.     ULONG cbModulus;
  57895.     ULONG cbPrime1;
  57896.     ULONG cbPrime2;
  57897. } BCRYPT_RSAKEY_BLOB;
  57898. # 513 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  57899. typedef struct _BCRYPT_ECCKEY_BLOB
  57900. {
  57901.     ULONG dwMagic;
  57902.     ULONG cbKey;
  57903. } BCRYPT_ECCKEY_BLOB, *PBCRYPT_ECCKEY_BLOB;
  57904.  
  57905.  
  57906.  
  57907. typedef struct _SSL_ECCKEY_BLOB
  57908. {
  57909.     ULONG dwCurveType;
  57910.     ULONG cbKey;
  57911. } SSL_ECCKEY_BLOB, *PSSL_ECCKEY_BLOB;
  57912.  
  57913.  
  57914.  
  57915.  
  57916. typedef enum
  57917. {
  57918.     BCRYPT_ECC_PRIME_SHORT_WEIERSTRASS_CURVE = 0x1,
  57919.     BCRYPT_ECC_PRIME_TWISTED_EDWARDS_CURVE = 0x2,
  57920.     BCRYPT_ECC_PRIME_MONTGOMERY_CURVE = 0x3
  57921. } ECC_CURVE_TYPE_ENUM;
  57922.  
  57923. typedef enum
  57924. {
  57925.     BCRYPT_NO_CURVE_GENERATION_ALG_ID = 0x0
  57926. } ECC_CURVE_ALG_ID_ENUM;
  57927.  
  57928.  
  57929.  
  57930. typedef struct _BCRYPT_ECCFULLKEY_BLOB
  57931. {
  57932.     ULONG dwMagic;
  57933.     ULONG dwVersion;
  57934.     ECC_CURVE_TYPE_ENUM dwCurveType;
  57935.     ECC_CURVE_ALG_ID_ENUM dwCurveGenerationAlgId;
  57936.     ULONG cbFieldLength;
  57937.     ULONG cbSubgroupOrder;
  57938.     ULONG cbCofactor;
  57939.     ULONG cbSeed;
  57940. # 565 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  57941. } BCRYPT_ECCFULLKEY_BLOB, *PBCRYPT_ECCFULLKEY_BLOB;
  57942. # 579 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  57943. typedef struct _BCRYPT_DH_KEY_BLOB
  57944. {
  57945.     ULONG dwMagic;
  57946.     ULONG cbKey;
  57947. } BCRYPT_DH_KEY_BLOB, *PBCRYPT_DH_KEY_BLOB;
  57948.  
  57949.  
  57950.  
  57951.  
  57952.  
  57953.  
  57954. typedef struct _BCRYPT_DH_PARAMETER_HEADER
  57955. {
  57956.     ULONG cbLength;
  57957.     ULONG dwMagic;
  57958.     ULONG cbKeyLength;
  57959. } BCRYPT_DH_PARAMETER_HEADER;
  57960. # 616 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  57961. typedef struct _BCRYPT_DSA_KEY_BLOB
  57962. {
  57963.     ULONG dwMagic;
  57964.     ULONG cbKey;
  57965.     UCHAR Count[4];
  57966.     UCHAR Seed[20];
  57967.     UCHAR q[20];
  57968. } BCRYPT_DSA_KEY_BLOB, *PBCRYPT_DSA_KEY_BLOB;
  57969.  
  57970.  
  57971. typedef enum
  57972. {
  57973.     DSA_HASH_ALGORITHM_SHA1,
  57974.     DSA_HASH_ALGORITHM_SHA256,
  57975.     DSA_HASH_ALGORITHM_SHA512
  57976. } HASHALGORITHM_ENUM;
  57977.  
  57978. typedef enum
  57979. {
  57980.     DSA_FIPS186_2,
  57981.     DSA_FIPS186_3
  57982. } DSAFIPSVERSION_ENUM;
  57983.  
  57984. typedef struct _BCRYPT_DSA_KEY_BLOB_V2
  57985. {
  57986.     ULONG dwMagic;
  57987.     ULONG cbKey;
  57988.     HASHALGORITHM_ENUM hashAlgorithm;
  57989.     DSAFIPSVERSION_ENUM standardVersion;
  57990.     ULONG cbSeedLength;
  57991.     ULONG cbGroupSize;
  57992.     UCHAR Count[4];
  57993. } BCRYPT_DSA_KEY_BLOB_V2, *PBCRYPT_DSA_KEY_BLOB_V2;
  57994.  
  57995.  
  57996. typedef struct _BCRYPT_KEY_DATA_BLOB_HEADER
  57997. {
  57998.     ULONG dwMagic;
  57999.     ULONG dwVersion;
  58000.     ULONG cbKeyData;
  58001. } BCRYPT_KEY_DATA_BLOB_HEADER, *PBCRYPT_KEY_DATA_BLOB_HEADER;
  58002. # 671 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58003. typedef struct _BCRYPT_DSA_PARAMETER_HEADER
  58004. {
  58005.     ULONG cbLength;
  58006.     ULONG dwMagic;
  58007.     ULONG cbKeyLength;
  58008.     UCHAR Count[4];
  58009.     UCHAR Seed[20];
  58010.     UCHAR q[20];
  58011. } BCRYPT_DSA_PARAMETER_HEADER;
  58012.  
  58013.  
  58014. typedef struct _BCRYPT_DSA_PARAMETER_HEADER_V2
  58015. {
  58016.     ULONG cbLength;
  58017.     ULONG dwMagic;
  58018.     ULONG cbKeyLength;
  58019.     HASHALGORITHM_ENUM hashAlgorithm;
  58020.     DSAFIPSVERSION_ENUM standardVersion;
  58021.     ULONG cbSeedLength;
  58022.     ULONG cbGroupSize;
  58023.     UCHAR Count[4];
  58024. } BCRYPT_DSA_PARAMETER_HEADER_V2;
  58025. # 703 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58026. typedef struct _BCRYPT_ECC_CURVE_NAMES
  58027. {
  58028.     ULONG dwEccCurveNames;
  58029.     LPWSTR *pEccCurveNames;
  58030. } BCRYPT_ECC_CURVE_NAMES;
  58031. # 770 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58032. typedef enum {
  58033.     BCRYPT_HASH_OPERATION_HASH_DATA = 1,
  58034.     BCRYPT_HASH_OPERATION_FINISH_HASH = 2,
  58035. } BCRYPT_HASH_OPERATION_TYPE;
  58036.  
  58037. typedef struct _BCRYPT_MULTI_HASH_OPERATION {
  58038.                             ULONG iHash;
  58039.                             BCRYPT_HASH_OPERATION_TYPE hashOperation;
  58040.                             PUCHAR pbBuffer;
  58041.                             ULONG cbBuffer;
  58042. } BCRYPT_MULTI_HASH_OPERATION;
  58043.  
  58044.  
  58045. typedef enum{
  58046.     BCRYPT_OPERATION_TYPE_HASH = 1,
  58047. } BCRYPT_MULTI_OPERATION_TYPE;
  58048.  
  58049. typedef struct _BCRYPT_MULTI_OBJECT_LENGTH_STRUCT
  58050. {
  58051.     ULONG cbPerObject;
  58052.     ULONG cbPerElement;
  58053. } BCRYPT_MULTI_OBJECT_LENGTH_STRUCT;
  58054. # 1005 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58055. NTSTATUS
  58056. __stdcall
  58057. BCryptOpenAlgorithmProvider(
  58058.                 BCRYPT_ALG_HANDLE *phAlgorithm,
  58059.                 LPCWSTR pszAlgId,
  58060.                 LPCWSTR pszImplementation,
  58061.                 ULONG dwFlags);
  58062. # 1030 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58063. typedef struct _BCRYPT_ALGORITHM_IDENTIFIER
  58064. {
  58065.     LPWSTR pszName;
  58066.     ULONG dwClass;
  58067.     ULONG dwFlags;
  58068.  
  58069. } BCRYPT_ALGORITHM_IDENTIFIER;
  58070.  
  58071.  
  58072.  
  58073. NTSTATUS
  58074. __stdcall
  58075. BCryptEnumAlgorithms(
  58076.             ULONG dwAlgOperations,
  58077.             ULONG *pAlgCount,
  58078.             BCRYPT_ALGORITHM_IDENTIFIER **ppAlgList,
  58079.             ULONG dwFlags);
  58080.  
  58081. typedef struct _BCRYPT_PROVIDER_NAME
  58082. {
  58083.     LPWSTR pszProviderName;
  58084. } BCRYPT_PROVIDER_NAME;
  58085.  
  58086.  
  58087. NTSTATUS
  58088. __stdcall
  58089. BCryptEnumProviders(
  58090.             LPCWSTR pszAlgId,
  58091.             ULONG *pImplCount,
  58092.             BCRYPT_PROVIDER_NAME **ppImplList,
  58093.             ULONG dwFlags);
  58094. # 1069 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58095. NTSTATUS
  58096. __stdcall
  58097. BCryptGetProperty(
  58098.                                                 BCRYPT_HANDLE hObject,
  58099.                                                 LPCWSTR pszProperty,
  58100.                                                     PUCHAR pbOutput,
  58101.                                                 ULONG cbOutput,
  58102.                                                 ULONG *pcbResult,
  58103.                                                 ULONG dwFlags);
  58104.  
  58105.  
  58106.  
  58107. NTSTATUS
  58108. __stdcall
  58109. BCryptSetProperty(
  58110.                             BCRYPT_HANDLE hObject,
  58111.                             LPCWSTR pszProperty,
  58112.                                  PUCHAR pbInput,
  58113.                             ULONG cbInput,
  58114.                             ULONG dwFlags);
  58115.  
  58116.  
  58117. NTSTATUS
  58118. __stdcall
  58119. BCryptCloseAlgorithmProvider(
  58120.             BCRYPT_ALG_HANDLE hAlgorithm,
  58121.             ULONG dwFlags);
  58122.  
  58123.  
  58124. void
  58125. __stdcall
  58126. BCryptFreeBuffer(
  58127.          PVOID pvBuffer);
  58128.  
  58129.  
  58130.  
  58131.  
  58132.  
  58133.  
  58134. NTSTATUS
  58135. __stdcall
  58136. BCryptGenerateSymmetricKey(
  58137.                                         BCRYPT_ALG_HANDLE hAlgorithm,
  58138.                                         BCRYPT_KEY_HANDLE *phKey,
  58139.                                              PUCHAR pbKeyObject,
  58140.                                         ULONG cbKeyObject,
  58141.                                              PUCHAR pbSecret,
  58142.                                         ULONG cbSecret,
  58143.                                         ULONG dwFlags);
  58144.  
  58145.  
  58146.  
  58147. NTSTATUS
  58148. __stdcall
  58149. BCryptGenerateKeyPair(
  58150.             BCRYPT_ALG_HANDLE hAlgorithm,
  58151.             BCRYPT_KEY_HANDLE *phKey,
  58152.             ULONG dwLength,
  58153.             ULONG dwFlags);
  58154.  
  58155.  
  58156.  
  58157. NTSTATUS
  58158. __stdcall
  58159. BCryptEncrypt(
  58160.                                                 BCRYPT_KEY_HANDLE hKey,
  58161.                                                      PUCHAR pbInput,
  58162.                                                 ULONG cbInput,
  58163.                                                 void *pPaddingInfo,
  58164.                                                        PUCHAR pbIV,
  58165.                                                 ULONG cbIV,
  58166.                                                     PUCHAR pbOutput,
  58167.                                                 ULONG cbOutput,
  58168.                                                 ULONG *pcbResult,
  58169.                                                 ULONG dwFlags);
  58170.  
  58171.  
  58172.  
  58173. NTSTATUS
  58174. __stdcall
  58175. BCryptDecrypt(
  58176.                                                 BCRYPT_KEY_HANDLE hKey,
  58177.                                                      PUCHAR pbInput,
  58178.                                                 ULONG cbInput,
  58179.                                                 void *pPaddingInfo,
  58180.                                                        PUCHAR pbIV,
  58181.                                                 ULONG cbIV,
  58182.                                                     PUCHAR pbOutput,
  58183.                                                 ULONG cbOutput,
  58184.                                                 ULONG *pcbResult,
  58185.                                                 ULONG dwFlags);
  58186.  
  58187.  
  58188.  
  58189. NTSTATUS
  58190. __stdcall
  58191. BCryptExportKey(
  58192.                                                 BCRYPT_KEY_HANDLE hKey,
  58193.                                                 BCRYPT_KEY_HANDLE hExportKey,
  58194.                                                 LPCWSTR pszBlobType,
  58195.                                                     PUCHAR pbOutput,
  58196.                                                 ULONG cbOutput,
  58197.                                                 ULONG *pcbResult,
  58198.                                                 ULONG dwFlags);
  58199.  
  58200.  
  58201.  
  58202. NTSTATUS
  58203. __stdcall
  58204. BCryptImportKey(
  58205.                                         BCRYPT_ALG_HANDLE hAlgorithm,
  58206.                                         BCRYPT_KEY_HANDLE hImportKey,
  58207.                                         LPCWSTR pszBlobType,
  58208.                                         BCRYPT_KEY_HANDLE *phKey,
  58209.                                              PUCHAR pbKeyObject,
  58210.                                         ULONG cbKeyObject,
  58211.                                              PUCHAR pbInput,
  58212.                                         ULONG cbInput,
  58213.                                         ULONG dwFlags);
  58214.  
  58215.  
  58216.  
  58217.  
  58218. NTSTATUS
  58219. __stdcall
  58220. BCryptImportKeyPair(
  58221.                                     BCRYPT_ALG_HANDLE hAlgorithm,
  58222.                                     BCRYPT_KEY_HANDLE hImportKey,
  58223.                                     LPCWSTR pszBlobType,
  58224.                                     BCRYPT_KEY_HANDLE *phKey,
  58225.                                          PUCHAR pbInput,
  58226.                                     ULONG cbInput,
  58227.                                     ULONG dwFlags);
  58228.  
  58229.  
  58230.  
  58231. NTSTATUS
  58232. __stdcall
  58233. BCryptDuplicateKey(
  58234.                                         BCRYPT_KEY_HANDLE hKey,
  58235.                                         BCRYPT_KEY_HANDLE *phNewKey,
  58236.                                              PUCHAR pbKeyObject,
  58237.                                         ULONG cbKeyObject,
  58238.                                         ULONG dwFlags);
  58239.  
  58240.  
  58241.  
  58242. NTSTATUS
  58243. __stdcall
  58244. BCryptFinalizeKeyPair(
  58245.             BCRYPT_KEY_HANDLE hKey,
  58246.             ULONG dwFlags);
  58247.  
  58248.  
  58249. NTSTATUS
  58250. __stdcall
  58251. BCryptDestroyKey(
  58252.             BCRYPT_KEY_HANDLE hKey);
  58253.  
  58254.  
  58255. NTSTATUS
  58256. __stdcall
  58257. BCryptDestroySecret(
  58258.             BCRYPT_SECRET_HANDLE hSecret);
  58259.  
  58260.  
  58261.  
  58262. NTSTATUS
  58263. __stdcall
  58264. BCryptSignHash(
  58265.                                                 BCRYPT_KEY_HANDLE hKey,
  58266.                                                 void *pPaddingInfo,
  58267.                                                      PUCHAR pbInput,
  58268.                                                 ULONG cbInput,
  58269.                                                     PUCHAR pbOutput,
  58270.                                                 ULONG cbOutput,
  58271.                                                 ULONG *pcbResult,
  58272.                                                 ULONG dwFlags);
  58273.  
  58274.  
  58275.  
  58276. NTSTATUS
  58277. __stdcall
  58278. BCryptVerifySignature(
  58279.                                 BCRYPT_KEY_HANDLE hKey,
  58280.                                 void *pPaddingInfo,
  58281.                                      PUCHAR pbHash,
  58282.                                 ULONG cbHash,
  58283.                                      PUCHAR pbSignature,
  58284.                                 ULONG cbSignature,
  58285.                                 ULONG dwFlags);
  58286.  
  58287.  
  58288.  
  58289. NTSTATUS
  58290. __stdcall
  58291. BCryptSecretAgreement(
  58292.             BCRYPT_KEY_HANDLE hPrivKey,
  58293.             BCRYPT_KEY_HANDLE hPubKey,
  58294.             BCRYPT_SECRET_HANDLE *phAgreedSecret,
  58295.             ULONG dwFlags);
  58296.  
  58297.  
  58298.  
  58299. NTSTATUS
  58300. __stdcall
  58301. BCryptDeriveKey(
  58302.                 BCRYPT_SECRET_HANDLE hSharedSecret,
  58303.                 LPCWSTR pwszKDF,
  58304.                 BCryptBufferDesc *pParameterList,
  58305.                                                         PUCHAR pbDerivedKey,
  58306.                 ULONG cbDerivedKey,
  58307.                 ULONG *pcbResult,
  58308.                 ULONG dwFlags);
  58309.  
  58310.  
  58311.  
  58312.  
  58313. NTSTATUS
  58314. __stdcall
  58315. BCryptKeyDerivation(
  58316.                 BCRYPT_KEY_HANDLE hKey,
  58317.                 BCryptBufferDesc *pParameterList,
  58318.                                                     PUCHAR pbDerivedKey,
  58319.                 ULONG cbDerivedKey,
  58320.                 ULONG *pcbResult,
  58321.                 ULONG dwFlags);
  58322.  
  58323.  
  58324.  
  58325.  
  58326.  
  58327.  
  58328.  
  58329. NTSTATUS
  58330. __stdcall
  58331. BCryptCreateHash(
  58332.                                         BCRYPT_ALG_HANDLE hAlgorithm,
  58333.                                         BCRYPT_HASH_HANDLE *phHash,
  58334.                                              PUCHAR pbHashObject,
  58335.                                         ULONG cbHashObject,
  58336.                                              PUCHAR pbSecret,
  58337.                                         ULONG cbSecret,
  58338.                                         ULONG dwFlags);
  58339.  
  58340.  
  58341.  
  58342. NTSTATUS
  58343. __stdcall
  58344. BCryptHashData(
  58345.                             BCRYPT_HASH_HANDLE hHash,
  58346.                                  PUCHAR pbInput,
  58347.                             ULONG cbInput,
  58348.                             ULONG dwFlags);
  58349.  
  58350.  
  58351.  
  58352. NTSTATUS
  58353. __stdcall
  58354. BCryptFinishHash(
  58355.                                 BCRYPT_HASH_HANDLE hHash,
  58356.                                      PUCHAR pbOutput,
  58357.                                 ULONG cbOutput,
  58358.                                 ULONG dwFlags);
  58359.  
  58360.  
  58361.  
  58362.  
  58363. NTSTATUS
  58364. __stdcall
  58365. BCryptCreateMultiHash(
  58366.                                                 BCRYPT_ALG_HANDLE hAlgorithm,
  58367.                                                 BCRYPT_HASH_HANDLE *phHash,
  58368.                                                 ULONG nHashes,
  58369.                                                 PUCHAR pbHashObject,
  58370.                                                 ULONG cbHashObject,
  58371.                                                 PUCHAR pbSecret,
  58372.                                                 ULONG cbSecret,
  58373.                                                 ULONG dwFlags);
  58374.  
  58375.  
  58376. NTSTATUS
  58377. __stdcall
  58378. BCryptProcessMultiOperations(
  58379.                                     BCRYPT_HANDLE hObject,
  58380.                                     BCRYPT_MULTI_OPERATION_TYPE operationType,
  58381.                                     PVOID pOperations,
  58382.                                     ULONG cbOperations,
  58383.                                     ULONG dwFlags );
  58384.  
  58385.  
  58386.  
  58387.  
  58388. NTSTATUS
  58389. __stdcall
  58390. BCryptDuplicateHash(
  58391.                                         BCRYPT_HASH_HANDLE hHash,
  58392.                                         BCRYPT_HASH_HANDLE *phNewHash,
  58393.                                              PUCHAR pbHashObject,
  58394.                                         ULONG cbHashObject,
  58395.                                         ULONG dwFlags);
  58396.  
  58397.  
  58398. NTSTATUS
  58399. __stdcall
  58400. BCryptDestroyHash(
  58401.             BCRYPT_HASH_HANDLE hHash);
  58402.  
  58403.  
  58404.  
  58405. NTSTATUS
  58406. __stdcall
  58407. BCryptHash(
  58408.                                         BCRYPT_ALG_HANDLE hAlgorithm,
  58409.                                         PUCHAR pbSecret,
  58410.                                         ULONG cbSecret,
  58411.                                         PUCHAR pbInput,
  58412.                                         ULONG cbInput,
  58413.                                         PUCHAR pbOutput,
  58414.                                         ULONG cbOutput );
  58415. # 1402 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58416. NTSTATUS
  58417. __stdcall
  58418. BCryptGenRandom(
  58419.                                     BCRYPT_ALG_HANDLE hAlgorithm,
  58420.                                     PUCHAR pbBuffer,
  58421.                                     ULONG cbBuffer,
  58422.                                     ULONG dwFlags);
  58423.  
  58424.  
  58425.  
  58426.  
  58427.  
  58428.  
  58429.  
  58430. NTSTATUS
  58431. __stdcall
  58432. BCryptDeriveKeyCapi(
  58433.                                     BCRYPT_HASH_HANDLE hHash,
  58434.                                     BCRYPT_ALG_HANDLE hTargetAlg,
  58435.                                           PUCHAR pbDerivedKey,
  58436.                                     ULONG cbDerivedKey,
  58437.                                     ULONG dwFlags);
  58438.  
  58439.  
  58440.  
  58441.  
  58442.  
  58443. NTSTATUS
  58444. __stdcall
  58445. BCryptDeriveKeyPBKDF2(
  58446.                                     BCRYPT_ALG_HANDLE hPrf,
  58447.                                          PUCHAR pbPassword,
  58448.                                     ULONG cbPassword,
  58449.                                          PUCHAR pbSalt,
  58450.                                     ULONG cbSalt,
  58451.                                     ULONGLONG cIterations,
  58452.                                           PUCHAR pbDerivedKey,
  58453.                                     ULONG cbDerivedKey,
  58454.                                     ULONG dwFlags);
  58455.  
  58456.  
  58457.  
  58458.  
  58459.  
  58460.  
  58461. typedef struct _BCRYPT_INTERFACE_VERSION
  58462. {
  58463.     USHORT MajorVersion;
  58464.     USHORT MinorVersion;
  58465.  
  58466. } BCRYPT_INTERFACE_VERSION, *PBCRYPT_INTERFACE_VERSION;
  58467. # 1537 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58468. typedef struct _CRYPT_INTERFACE_REG
  58469. {
  58470.     ULONG dwInterface;
  58471.     ULONG dwFlags;
  58472.  
  58473.     ULONG cFunctions;
  58474.     PWSTR *rgpszFunctions;
  58475. }
  58476. CRYPT_INTERFACE_REG, *PCRYPT_INTERFACE_REG;
  58477.  
  58478. typedef struct _CRYPT_IMAGE_REG
  58479. {
  58480.     PWSTR pszImage;
  58481.  
  58482.     ULONG cInterfaces;
  58483.     PCRYPT_INTERFACE_REG *rgpInterfaces;
  58484. }
  58485. CRYPT_IMAGE_REG, *PCRYPT_IMAGE_REG;
  58486.  
  58487. typedef struct _CRYPT_PROVIDER_REG
  58488. {
  58489.     ULONG cAliases;
  58490.     PWSTR *rgpszAliases;
  58491.  
  58492.     PCRYPT_IMAGE_REG pUM;
  58493.     PCRYPT_IMAGE_REG pKM;
  58494. }
  58495. CRYPT_PROVIDER_REG, *PCRYPT_PROVIDER_REG;
  58496.  
  58497. typedef struct _CRYPT_PROVIDERS
  58498. {
  58499.     ULONG cProviders;
  58500.     PWSTR *rgpszProviders;
  58501. }
  58502. CRYPT_PROVIDERS, *PCRYPT_PROVIDERS;
  58503.  
  58504.  
  58505.  
  58506.  
  58507.  
  58508. typedef struct _CRYPT_CONTEXT_CONFIG
  58509. {
  58510.     ULONG dwFlags;
  58511.     ULONG dwReserved;
  58512. }
  58513. CRYPT_CONTEXT_CONFIG, *PCRYPT_CONTEXT_CONFIG;
  58514.  
  58515. typedef struct _CRYPT_CONTEXT_FUNCTION_CONFIG
  58516. {
  58517.     ULONG dwFlags;
  58518.     ULONG dwReserved;
  58519. }
  58520. CRYPT_CONTEXT_FUNCTION_CONFIG, *PCRYPT_CONTEXT_FUNCTION_CONFIG;
  58521.  
  58522. typedef struct _CRYPT_CONTEXTS
  58523. {
  58524.     ULONG cContexts;
  58525.     PWSTR *rgpszContexts;
  58526. }
  58527. CRYPT_CONTEXTS, *PCRYPT_CONTEXTS;
  58528.  
  58529. typedef struct _CRYPT_CONTEXT_FUNCTIONS
  58530. {
  58531.     ULONG cFunctions;
  58532.     PWSTR *rgpszFunctions;
  58533. }
  58534. CRYPT_CONTEXT_FUNCTIONS, *PCRYPT_CONTEXT_FUNCTIONS;
  58535.  
  58536. typedef struct _CRYPT_CONTEXT_FUNCTION_PROVIDERS
  58537. {
  58538.     ULONG cProviders;
  58539.     PWSTR *rgpszProviders;
  58540. }
  58541. CRYPT_CONTEXT_FUNCTION_PROVIDERS, *PCRYPT_CONTEXT_FUNCTION_PROVIDERS;
  58542.  
  58543.  
  58544.  
  58545.  
  58546.  
  58547. typedef struct _CRYPT_PROPERTY_REF
  58548. {
  58549.     PWSTR pszProperty;
  58550.  
  58551.     ULONG cbValue;
  58552.     PUCHAR pbValue;
  58553. }
  58554. CRYPT_PROPERTY_REF, *PCRYPT_PROPERTY_REF;
  58555.  
  58556. typedef struct _CRYPT_IMAGE_REF
  58557. {
  58558.     PWSTR pszImage;
  58559.     ULONG dwFlags;
  58560. }
  58561. CRYPT_IMAGE_REF, *PCRYPT_IMAGE_REF;
  58562.  
  58563. typedef struct _CRYPT_PROVIDER_REF
  58564. {
  58565.     ULONG dwInterface;
  58566.     PWSTR pszFunction;
  58567.     PWSTR pszProvider;
  58568.  
  58569.     ULONG cProperties;
  58570.     PCRYPT_PROPERTY_REF *rgpProperties;
  58571.  
  58572.     PCRYPT_IMAGE_REF pUM;
  58573.     PCRYPT_IMAGE_REF pKM;
  58574. }
  58575. CRYPT_PROVIDER_REF, *PCRYPT_PROVIDER_REF;
  58576.  
  58577. typedef struct _CRYPT_PROVIDER_REFS
  58578. {
  58579.     ULONG cProviders;
  58580.     PCRYPT_PROVIDER_REF *rgpProviders;
  58581. }
  58582. CRYPT_PROVIDER_REFS, *PCRYPT_PROVIDER_REFS;
  58583.  
  58584.  
  58585. #pragma endregion
  58586.  
  58587. #pragma region Desktop Family or OneCore Family
  58588. # 1667 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58589. NTSTATUS
  58590. __stdcall
  58591. BCryptQueryProviderRegistration(
  58592.          LPCWSTR pszProvider,
  58593.          ULONG dwMode,
  58594.          ULONG dwInterface,
  58595.             ULONG* pcbBuffer,
  58596.  
  58597.  
  58598.  
  58599.     PCRYPT_PROVIDER_REG *ppBuffer);
  58600.  
  58601.  
  58602. NTSTATUS
  58603. __stdcall
  58604. BCryptEnumRegisteredProviders(
  58605.             ULONG* pcbBuffer,
  58606.  
  58607.  
  58608.  
  58609.     PCRYPT_PROVIDERS *ppBuffer);
  58610.  
  58611.  
  58612.  
  58613.  
  58614.  
  58615. NTSTATUS
  58616. __stdcall
  58617. BCryptCreateContext(
  58618.          ULONG dwTable,
  58619.          LPCWSTR pszContext,
  58620.              PCRYPT_CONTEXT_CONFIG pConfig);
  58621.  
  58622.  
  58623. NTSTATUS
  58624. __stdcall
  58625. BCryptDeleteContext(
  58626.          ULONG dwTable,
  58627.          LPCWSTR pszContext);
  58628.  
  58629.  
  58630. NTSTATUS
  58631. __stdcall
  58632. BCryptEnumContexts(
  58633.          ULONG dwTable,
  58634.             ULONG* pcbBuffer,
  58635.  
  58636.  
  58637.  
  58638.     PCRYPT_CONTEXTS *ppBuffer);
  58639.  
  58640.  
  58641. NTSTATUS
  58642. __stdcall
  58643. BCryptConfigureContext(
  58644.          ULONG dwTable,
  58645.          LPCWSTR pszContext,
  58646.          PCRYPT_CONTEXT_CONFIG pConfig);
  58647.  
  58648.  
  58649. NTSTATUS
  58650. __stdcall
  58651. BCryptQueryContextConfiguration(
  58652.          ULONG dwTable,
  58653.          LPCWSTR pszContext,
  58654.             ULONG* pcbBuffer,
  58655.  
  58656.  
  58657.  
  58658.     PCRYPT_CONTEXT_CONFIG *ppBuffer);
  58659.  
  58660.  
  58661. NTSTATUS
  58662. __stdcall
  58663. BCryptAddContextFunction(
  58664.          ULONG dwTable,
  58665.          LPCWSTR pszContext,
  58666.          ULONG dwInterface,
  58667.          LPCWSTR pszFunction,
  58668.          ULONG dwPosition);
  58669.  
  58670.  
  58671. NTSTATUS
  58672. __stdcall
  58673. BCryptRemoveContextFunction(
  58674.          ULONG dwTable,
  58675.          LPCWSTR pszContext,
  58676.          ULONG dwInterface,
  58677.          LPCWSTR pszFunction);
  58678.  
  58679.  
  58680. NTSTATUS
  58681. __stdcall
  58682. BCryptEnumContextFunctions(
  58683.          ULONG dwTable,
  58684.          LPCWSTR pszContext,
  58685.          ULONG dwInterface,
  58686.             ULONG* pcbBuffer,
  58687.  
  58688.  
  58689.  
  58690.     PCRYPT_CONTEXT_FUNCTIONS *ppBuffer);
  58691.  
  58692.  
  58693. NTSTATUS
  58694. __stdcall
  58695. BCryptConfigureContextFunction(
  58696.          ULONG dwTable,
  58697.          LPCWSTR pszContext,
  58698.          ULONG dwInterface,
  58699.          LPCWSTR pszFunction,
  58700.          PCRYPT_CONTEXT_FUNCTION_CONFIG pConfig);
  58701.  
  58702.  
  58703. NTSTATUS
  58704. __stdcall
  58705. BCryptQueryContextFunctionConfiguration(
  58706.          ULONG dwTable,
  58707.          LPCWSTR pszContext,
  58708.          ULONG dwInterface,
  58709.          LPCWSTR pszFunction,
  58710.             ULONG* pcbBuffer,
  58711.  
  58712.  
  58713.  
  58714.     PCRYPT_CONTEXT_FUNCTION_CONFIG *ppBuffer);
  58715.  
  58716.  
  58717.  
  58718. NTSTATUS
  58719. __stdcall
  58720. BCryptEnumContextFunctionProviders(
  58721.          ULONG dwTable,
  58722.          LPCWSTR pszContext,
  58723.          ULONG dwInterface,
  58724.          LPCWSTR pszFunction,
  58725.             ULONG* pcbBuffer,
  58726.  
  58727.  
  58728.  
  58729.     PCRYPT_CONTEXT_FUNCTION_PROVIDERS *ppBuffer);
  58730.  
  58731.  
  58732. NTSTATUS
  58733. __stdcall
  58734. BCryptSetContextFunctionProperty(
  58735.          ULONG dwTable,
  58736.          LPCWSTR pszContext,
  58737.          ULONG dwInterface,
  58738.          LPCWSTR pszFunction,
  58739.          LPCWSTR pszProperty,
  58740.          ULONG cbValue,
  58741.                                   PUCHAR pbValue);
  58742.  
  58743.  
  58744. NTSTATUS
  58745. __stdcall
  58746. BCryptQueryContextFunctionProperty(
  58747.          ULONG dwTable,
  58748.          LPCWSTR pszContext,
  58749.          ULONG dwInterface,
  58750.          LPCWSTR pszFunction,
  58751.          LPCWSTR pszProperty,
  58752.             ULONG* pcbValue,
  58753.  
  58754.  
  58755.  
  58756.     PUCHAR *ppbValue);
  58757. # 1851 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58758. NTSTATUS
  58759. __stdcall
  58760. BCryptRegisterConfigChangeNotify(
  58761.           HANDLE *phEvent);
  58762. # 1864 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58763. NTSTATUS
  58764. __stdcall
  58765. BCryptUnregisterConfigChangeNotify(
  58766.          HANDLE hEvent);
  58767.  
  58768.  
  58769.  
  58770.  
  58771.  
  58772.  
  58773. NTSTATUS __stdcall
  58774. BCryptResolveProviders(
  58775.              LPCWSTR pszContext,
  58776.              ULONG dwInterface,
  58777.              LPCWSTR pszFunction,
  58778.              LPCWSTR pszProvider,
  58779.          ULONG dwMode,
  58780.          ULONG dwFlags,
  58781.             ULONG* pcbBuffer,
  58782.  
  58783.  
  58784.  
  58785.     PCRYPT_PROVIDER_REFS *ppBuffer);
  58786.  
  58787.  
  58788. #pragma endregion
  58789.  
  58790. #pragma region Application Family or OneCore Family
  58791.  
  58792.  
  58793.  
  58794.  
  58795.  
  58796. NTSTATUS
  58797. __stdcall
  58798. BCryptGetFipsAlgorithmMode(
  58799.           BOOLEAN *pfEnabled
  58800.     );
  58801.  
  58802.  
  58803. #pragma endregion
  58804.  
  58805. #pragma region Desktop Family
  58806.  
  58807.  
  58808. BOOLEAN
  58809. CngGetFipsAlgorithmMode(
  58810.     void
  58811.     );
  58812.  
  58813.  
  58814. #pragma endregion
  58815. # 1926 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\bcrypt.h" 3
  58816. #pragma option pop
  58817. # 1567 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 2 3
  58818.  
  58819.  
  58820.  
  58821. #pragma endregion
  58822.  
  58823. #pragma region Application Family or OneCore Family
  58824.  
  58825.  
  58826.  
  58827. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 1 3
  58828. #pragma option push -b -a8 -pc -A- -w-pun
  58829. # 32 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  58830. typedef LONG SECURITY_STATUS;
  58831. # 62 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  58832. typedef LPVOID (__stdcall *PFN_NCRYPT_ALLOC)(
  58833.          SIZE_T cbSize
  58834.     );
  58835.  
  58836. typedef void (__stdcall *PFN_NCRYPT_FREE)(
  58837.          LPVOID pv
  58838.     );
  58839.  
  58840. typedef struct NCRYPT_ALLOC_PARA {
  58841.     DWORD cbSize;
  58842.     PFN_NCRYPT_ALLOC pfnAlloc;
  58843.     PFN_NCRYPT_FREE pfnFree;
  58844. } NCRYPT_ALLOC_PARA;
  58845. # 245 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  58846. typedef BCryptBuffer NCryptBuffer;
  58847. typedef BCryptBuffer* PNCryptBuffer;
  58848. typedef BCryptBufferDesc NCryptBufferDesc;
  58849. typedef BCryptBufferDesc* PNCryptBufferDesc;
  58850.  
  58851.  
  58852.  
  58853.  
  58854.  
  58855. typedef ULONG_PTR NCRYPT_HANDLE;
  58856. typedef ULONG_PTR NCRYPT_PROV_HANDLE;
  58857. typedef ULONG_PTR NCRYPT_KEY_HANDLE;
  58858. typedef ULONG_PTR NCRYPT_HASH_HANDLE;
  58859. typedef ULONG_PTR NCRYPT_SECRET_HANDLE;
  58860.  
  58861.  
  58862.  
  58863. typedef
  58864. struct _NCRYPT_CIPHER_PADDING_INFO
  58865. {
  58866.  
  58867.     ULONG cbSize;
  58868.  
  58869.  
  58870.     DWORD dwFlags;
  58871.  
  58872.  
  58873.  
  58874.  
  58875.  
  58876.  
  58877.     PUCHAR pbIV;
  58878.     ULONG cbIV;
  58879. # 290 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  58880.     PUCHAR pbOtherInfo;
  58881.     ULONG cbOtherInfo;
  58882.  
  58883. } NCRYPT_CIPHER_PADDING_INFO, *PNCRYPT_CIPHER_PADDING_INFO;
  58884. # 308 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  58885. typedef struct _NCRYPT_PLATFORM_ATTEST_PADDING_INFO {
  58886.     ULONG magic;
  58887.     ULONG pcrMask;
  58888. } NCRYPT_PLATFORM_ATTEST_PADDING_INFO;
  58889.  
  58890.  
  58891.  
  58892. typedef struct _NCRYPT_KEY_ATTEST_PADDING_INFO {
  58893.     ULONG magic;
  58894.     PUCHAR pbKeyBlob;
  58895.     ULONG cbKeyBlob;
  58896.     PUCHAR pbKeyAuth;
  58897.     ULONG cbKeyAuth;
  58898. } NCRYPT_KEY_ATTEST_PADDING_INFO;
  58899. # 351 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  58900. typedef struct _NCRYPT_ISOLATED_KEY_ATTESTED_ATTRIBUTES
  58901. {
  58902.    ULONG Version;
  58903.    ULONG Flags;
  58904.    ULONG cbPublicKeyBlob;
  58905.  
  58906. } NCRYPT_ISOLATED_KEY_ATTESTED_ATTRIBUTES, *PNCRYPT_ISOLATED_KEY_ATTESTED_ATTRIBUTES;
  58907.  
  58908.  
  58909.  
  58910.  
  58911. typedef struct _NCRYPT_VSM_KEY_ATTESTATION_STATEMENT
  58912. {
  58913.     ULONG Magic;
  58914.     ULONG Version;
  58915.     ULONG cbSignature;
  58916.     ULONG cbReport;
  58917.     ULONG cbAttributes;
  58918.  
  58919.  
  58920.  
  58921. } NCRYPT_VSM_KEY_ATTESTATION_STATEMENT, *PNCRYPT_VSM_KEY_ATTESTATION_STATEMENT;
  58922.  
  58923.  
  58924.  
  58925.  
  58926.  
  58927.  
  58928. #pragma warning(disable: 4214)
  58929. typedef struct _NCRYPT_VSM_KEY_ATTESTATION_CLAIM_RESTRICTIONS
  58930. {
  58931.     ULONG Version;
  58932.     ULONGLONG TrustletId;
  58933.     ULONG MinSvn;
  58934.     ULONG FlagsMask;
  58935.     ULONG FlagsExpected;
  58936.     ULONG AllowDebugging : 1;
  58937.     ULONG Reserved : 31;
  58938. } NCRYPT_VSM_KEY_ATTESTATION_CLAIM_RESTRICTIONS, *PNCRYPT_VSM_KEY_ATTESTATION_CLAIM_RESTRICTIONS;
  58939. #pragma warning(default: 4214)
  58940.  
  58941.  
  58942.  
  58943.  
  58944.  
  58945.  
  58946. #pragma warning(disable: 4214)
  58947. typedef struct _NCRYPT_EXPORTED_ISOLATED_KEY_HEADER
  58948. {
  58949.     ULONG Version;
  58950.     ULONG KeyUsage;
  58951.     ULONG PerBootKey : 1;
  58952.     ULONG Reserved : 31;
  58953.     ULONG cbAlgName;
  58954.     ULONG cbNonce;
  58955.     ULONG cbAuthTag;
  58956.     ULONG cbWrappingKey;
  58957.     ULONG cbIsolatedKey;
  58958. } NCRYPT_EXPORTED_ISOLATED_KEY_HEADER, *PNCRYPT_EXPORTED_ISOLATED_KEY_HEADER;
  58959. #pragma warning(default: 4214)
  58960.  
  58961. typedef struct _NCRYPT_EXPORTED_ISOLATED_KEY_ENVELOPE
  58962. {
  58963.     NCRYPT_EXPORTED_ISOLATED_KEY_HEADER Header;
  58964.  
  58965.  
  58966.  
  58967.  
  58968.  
  58969.  
  58970. } NCRYPT_EXPORTED_ISOLATED_KEY_ENVELOPE, *PNCRYPT_EXPORTED_ISOLATED_KEY_ENVELOPE;
  58971.  
  58972.  
  58973.  
  58974.  
  58975.  
  58976. typedef struct __NCRYPT_PCP_TPM_WEB_AUTHN_ATTESTATION_STATEMENT
  58977. {
  58978.     UINT32 Magic;
  58979.     UINT32 Version;
  58980.     UINT32 HeaderSize;
  58981.     UINT32 cbCertifyInfo;
  58982.     UINT32 cbSignature;
  58983.     UINT32 cbTpmPublic;
  58984.  
  58985.  
  58986.  
  58987.  
  58988. } NCRYPT_PCP_TPM_WEB_AUTHN_ATTESTATION_STATEMENT,*PNCRYPT_PCP_TPM_WEB_AUTHN_ATTESTATION_STATEMENT;
  58989. # 500 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  58990. SECURITY_STATUS
  58991. __stdcall
  58992. NCryptOpenStorageProvider(
  58993.             NCRYPT_PROV_HANDLE *phProvider,
  58994.              LPCWSTR pszProviderName,
  58995.             DWORD dwFlags);
  58996. # 522 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  58997. typedef struct _NCryptAlgorithmName
  58998. {
  58999.     LPWSTR pszName;
  59000.     DWORD dwClass;
  59001.     DWORD dwAlgOperations;
  59002.     DWORD dwFlags;
  59003. } NCryptAlgorithmName;
  59004.  
  59005.  
  59006.  
  59007. SECURITY_STATUS
  59008. __stdcall
  59009. NCryptEnumAlgorithms(
  59010.             NCRYPT_PROV_HANDLE hProvider,
  59011.             DWORD dwAlgOperations,
  59012.             DWORD * pdwAlgCount,
  59013.                                          NCryptAlgorithmName **ppAlgList,
  59014.             DWORD dwFlags);
  59015.  
  59016.  
  59017.  
  59018.  
  59019. SECURITY_STATUS
  59020. __stdcall
  59021. NCryptIsAlgSupported(
  59022.             NCRYPT_PROV_HANDLE hProvider,
  59023.             LPCWSTR pszAlgId,
  59024.             DWORD dwFlags);
  59025.  
  59026.  
  59027.  
  59028.  
  59029.  
  59030.  
  59031. typedef struct NCryptKeyName
  59032. {
  59033.     LPWSTR pszName;
  59034.     LPWSTR pszAlgid;
  59035.     DWORD dwLegacyKeySpec;
  59036.     DWORD dwFlags;
  59037. } NCryptKeyName;
  59038.  
  59039.  
  59040. SECURITY_STATUS
  59041. __stdcall
  59042. NCryptEnumKeys(
  59043.             NCRYPT_PROV_HANDLE hProvider,
  59044.              LPCWSTR pszScope,
  59045.              NCryptKeyName **ppKeyName,
  59046.             PVOID * ppEnumState,
  59047.             DWORD dwFlags);
  59048.  
  59049.  
  59050.  
  59051. typedef struct NCryptProviderName
  59052. {
  59053.     LPWSTR pszName;
  59054.     LPWSTR pszComment;
  59055. } NCryptProviderName;
  59056.  
  59057. #pragma region Desktop Family or OneCore Family
  59058.  
  59059.  
  59060.  
  59061. SECURITY_STATUS
  59062. __stdcall
  59063. NCryptEnumStorageProviders(
  59064.             DWORD * pdwProviderCount,
  59065.                                               NCryptProviderName **ppProviderList,
  59066.             DWORD dwFlags);
  59067.  
  59068.  
  59069.  
  59070.  
  59071. #pragma endregion
  59072.  
  59073. SECURITY_STATUS
  59074. __stdcall
  59075. NCryptFreeBuffer(
  59076.                   PVOID pvInput);
  59077. # 613 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  59078. SECURITY_STATUS
  59079. __stdcall
  59080. NCryptOpenKey(
  59081.             NCRYPT_PROV_HANDLE hProvider,
  59082.             NCRYPT_KEY_HANDLE *phKey,
  59083.             LPCWSTR pszKeyName,
  59084.              DWORD dwLegacyKeySpec,
  59085.             DWORD dwFlags);
  59086. # 629 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  59087. SECURITY_STATUS
  59088. __stdcall
  59089. NCryptCreatePersistedKey(
  59090.             NCRYPT_PROV_HANDLE hProvider,
  59091.             NCRYPT_KEY_HANDLE *phKey,
  59092.             LPCWSTR pszAlgId,
  59093.              LPCWSTR pszKeyName,
  59094.             DWORD dwLegacyKeySpec,
  59095.             DWORD dwFlags);
  59096. # 909 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  59097. typedef struct __NCRYPT_UI_POLICY
  59098. {
  59099.     DWORD dwVersion;
  59100.     DWORD dwFlags;
  59101.     LPCWSTR pszCreationTitle;
  59102.     LPCWSTR pszFriendlyName;
  59103.     LPCWSTR pszDescription;
  59104. } NCRYPT_UI_POLICY;
  59105.  
  59106.  
  59107.  
  59108.  
  59109. typedef struct __NCRYPT_KEY_ACCESS_POLICY_BLOB
  59110. {
  59111.  DWORD dwVersion;
  59112.  DWORD dwPolicyFlags;
  59113.  DWORD cbUserSid;
  59114.     DWORD cbApplicationSid;
  59115.  
  59116.  
  59117. }NCRYPT_KEY_ACCESS_POLICY_BLOB;
  59118.  
  59119.  
  59120.  
  59121. typedef struct __NCRYPT_SUPPORTED_LENGTHS
  59122. {
  59123.     DWORD dwMinLength;
  59124.     DWORD dwMaxLength;
  59125.     DWORD dwIncrement;
  59126.     DWORD dwDefaultLength;
  59127. } NCRYPT_SUPPORTED_LENGTHS;
  59128.  
  59129.  
  59130.  
  59131. typedef struct __NCRYPT_PCP_HMAC_AUTH_SIGNATURE_INFO
  59132. {
  59133.     DWORD dwVersion;
  59134.     INT32 iExpiration;
  59135.     BYTE pabNonce[32];
  59136.     BYTE pabPolicyRef[32];
  59137.     BYTE pabHMAC[32];
  59138. } NCRYPT_PCP_HMAC_AUTH_SIGNATURE_INFO;
  59139.  
  59140.  
  59141.  
  59142.  
  59143. typedef struct __NCRYPT_PCP_TPM_FW_VERSION_INFO
  59144. {
  59145.     UINT16 major1;
  59146.     UINT16 major2;
  59147.     UINT16 minor1;
  59148.     UINT16 minor2;
  59149. } NCRYPT_PCP_TPM_FW_VERSION_INFO;
  59150.  
  59151.  
  59152.  
  59153.  
  59154. typedef struct __NCRYPT_PCP_RAW_POLICYDIGEST
  59155. {
  59156.     DWORD dwVersion;
  59157.     DWORD cbDigest;
  59158. } NCRYPT_PCP_RAW_POLICYDIGEST_INFO;
  59159.  
  59160.  
  59161.  
  59162.  
  59163.  
  59164.  
  59165.  
  59166. SECURITY_STATUS
  59167. __stdcall
  59168. NCryptGetProperty(
  59169.             NCRYPT_HANDLE hObject,
  59170.             LPCWSTR pszProperty,
  59171.                                                     PBYTE pbOutput,
  59172.             DWORD cbOutput,
  59173.             DWORD * pcbResult,
  59174.             DWORD dwFlags);
  59175. # 995 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  59176. SECURITY_STATUS
  59177. __stdcall
  59178. NCryptSetProperty(
  59179.             NCRYPT_HANDLE hObject,
  59180.             LPCWSTR pszProperty,
  59181.                               PBYTE pbInput,
  59182.             DWORD cbInput,
  59183.             DWORD dwFlags);
  59184.  
  59185.  
  59186.  
  59187.  
  59188.  
  59189.  
  59190.  
  59191. SECURITY_STATUS
  59192. __stdcall
  59193. NCryptFinalizeKey(
  59194.             NCRYPT_KEY_HANDLE hKey,
  59195.             DWORD dwFlags);
  59196.  
  59197.  
  59198.  
  59199.  
  59200. SECURITY_STATUS
  59201. __stdcall
  59202. NCryptEncrypt(
  59203.             NCRYPT_KEY_HANDLE hKey,
  59204.                                   PBYTE pbInput,
  59205.             DWORD cbInput,
  59206.                 void *pPaddingInfo,
  59207.                                                     PBYTE pbOutput,
  59208.             DWORD cbOutput,
  59209.             DWORD * pcbResult,
  59210.             DWORD dwFlags);
  59211.  
  59212.  
  59213.  
  59214.  
  59215. SECURITY_STATUS
  59216. __stdcall
  59217. NCryptDecrypt(
  59218.             NCRYPT_KEY_HANDLE hKey,
  59219.                                   PBYTE pbInput,
  59220.             DWORD cbInput,
  59221.                 void *pPaddingInfo,
  59222.                                                     PBYTE pbOutput,
  59223.             DWORD cbOutput,
  59224.             DWORD * pcbResult,
  59225.             DWORD dwFlags);
  59226.  
  59227.  
  59228.  
  59229.  
  59230.  
  59231. typedef struct _NCRYPT_KEY_BLOB_HEADER
  59232. {
  59233.     ULONG cbSize;
  59234.     ULONG dwMagic;
  59235.     ULONG cbAlgName;
  59236.     ULONG cbKeyData;
  59237. } NCRYPT_KEY_BLOB_HEADER, *PNCRYPT_KEY_BLOB_HEADER;
  59238. # 1068 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  59239. typedef struct NCRYPT_TPM_LOADABLE_KEY_BLOB_HEADER
  59240. {
  59241.     DWORD magic;
  59242.     DWORD cbHeader;
  59243.     DWORD cbPublic;
  59244.     DWORD cbPrivate;
  59245.     DWORD cbName;
  59246. } NCRYPT_TPM_LOADABLE_KEY_BLOB_HEADER, *PNCRYPT_TPM_LOADABLE_KEY_BLOB_HEADER;
  59247. # 1095 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  59248. SECURITY_STATUS
  59249. __stdcall
  59250. NCryptImportKey(
  59251.             NCRYPT_PROV_HANDLE hProvider,
  59252.              NCRYPT_KEY_HANDLE hImportKey,
  59253.             LPCWSTR pszBlobType,
  59254.              NCryptBufferDesc *pParameterList,
  59255.             NCRYPT_KEY_HANDLE *phKey,
  59256.                              PBYTE pbData,
  59257.             DWORD cbData,
  59258.             DWORD dwFlags);
  59259.  
  59260.  
  59261.  
  59262.  
  59263. SECURITY_STATUS
  59264. __stdcall
  59265. NCryptExportKey(
  59266.             NCRYPT_KEY_HANDLE hKey,
  59267.              NCRYPT_KEY_HANDLE hExportKey,
  59268.             LPCWSTR pszBlobType,
  59269.              NCryptBufferDesc *pParameterList,
  59270.                                                     PBYTE pbOutput,
  59271.             DWORD cbOutput,
  59272.             DWORD * pcbResult,
  59273.             DWORD dwFlags);
  59274.  
  59275.  
  59276.  
  59277.  
  59278. SECURITY_STATUS
  59279. __stdcall
  59280. NCryptSignHash(
  59281.             NCRYPT_KEY_HANDLE hKey,
  59282.                 void *pPaddingInfo,
  59283.                                   PBYTE pbHashValue,
  59284.             DWORD cbHashValue,
  59285.                                                        PBYTE pbSignature,
  59286.             DWORD cbSignature,
  59287.             DWORD * pcbResult,
  59288.             DWORD dwFlags);
  59289.  
  59290.  
  59291.  
  59292.  
  59293. SECURITY_STATUS
  59294. __stdcall
  59295. NCryptVerifySignature(
  59296.             NCRYPT_KEY_HANDLE hKey,
  59297.                 void *pPaddingInfo,
  59298.                                   PBYTE pbHashValue,
  59299.             DWORD cbHashValue,
  59300.                                   PBYTE pbSignature,
  59301.             DWORD cbSignature,
  59302.             DWORD dwFlags);
  59303.  
  59304.  
  59305.  
  59306. SECURITY_STATUS
  59307. __stdcall
  59308. NCryptDeleteKey(
  59309.             NCRYPT_KEY_HANDLE hKey,
  59310.             DWORD dwFlags);
  59311.  
  59312.  
  59313.  
  59314. SECURITY_STATUS
  59315. __stdcall
  59316. NCryptFreeObject(
  59317.             NCRYPT_HANDLE hObject);
  59318.  
  59319.  
  59320.  
  59321. #pragma region Desktop Family or OneCore Family
  59322.  
  59323. BOOL
  59324. __stdcall
  59325. NCryptIsKeyHandle(
  59326.             NCRYPT_KEY_HANDLE hKey);
  59327.  
  59328.  
  59329. SECURITY_STATUS
  59330. __stdcall
  59331. NCryptTranslateHandle(
  59332.               NCRYPT_PROV_HANDLE *phProvider,
  59333.             NCRYPT_KEY_HANDLE *phKey,
  59334.             HCRYPTPROV hLegacyProv,
  59335.              HCRYPTKEY hLegacyKey,
  59336.              DWORD dwLegacyKeySpec,
  59337.             DWORD dwFlags);
  59338.  
  59339.  
  59340. #pragma endregion
  59341.  
  59342.  
  59343.  
  59344.  
  59345.  
  59346.  
  59347.  
  59348. #pragma region Desktop Family or OneCore Family
  59349.  
  59350.  
  59351.  
  59352. SECURITY_STATUS
  59353. __stdcall
  59354. NCryptNotifyChangeKey(
  59355.             NCRYPT_PROV_HANDLE hProvider,
  59356.             HANDLE *phEvent,
  59357.             DWORD dwFlags);
  59358.  
  59359.  
  59360.  
  59361.  
  59362. #pragma endregion
  59363.  
  59364.  
  59365. SECURITY_STATUS
  59366. __stdcall
  59367. NCryptSecretAgreement(
  59368.             NCRYPT_KEY_HANDLE hPrivKey,
  59369.             NCRYPT_KEY_HANDLE hPubKey,
  59370.             NCRYPT_SECRET_HANDLE *phAgreedSecret,
  59371.             DWORD dwFlags);
  59372.  
  59373.  
  59374.  
  59375.  
  59376. SECURITY_STATUS
  59377. __stdcall
  59378. NCryptDeriveKey(
  59379.                 NCRYPT_SECRET_HANDLE hSharedSecret,
  59380.                 LPCWSTR pwszKDF,
  59381.                 NCryptBufferDesc *pParameterList,
  59382.                                                         PBYTE pbDerivedKey,
  59383.                 DWORD cbDerivedKey,
  59384.                 DWORD *pcbResult,
  59385.                 ULONG dwFlags);
  59386.  
  59387.  
  59388.  
  59389.  
  59390.  
  59391.  
  59392. SECURITY_STATUS
  59393. __stdcall
  59394. NCryptKeyDerivation(
  59395.                 NCRYPT_KEY_HANDLE hKey,
  59396.                 NCryptBufferDesc *pParameterList,
  59397.                                                     PUCHAR pbDerivedKey,
  59398.                 DWORD cbDerivedKey,
  59399.                 DWORD *pcbResult,
  59400.                 ULONG dwFlags);
  59401.  
  59402.  
  59403.  
  59404.  
  59405.  
  59406.  
  59407.  
  59408. SECURITY_STATUS
  59409. __stdcall
  59410. NCryptCreateClaim(
  59411.                 NCRYPT_KEY_HANDLE hSubjectKey,
  59412.                 NCRYPT_KEY_HANDLE hAuthorityKey,
  59413.                 DWORD dwClaimType,
  59414.                 NCryptBufferDesc *pParameterList,
  59415.                                                        PBYTE pbClaimBlob,
  59416.                 DWORD cbClaimBlob,
  59417.                 DWORD *pcbResult,
  59418.                 DWORD dwFlags);
  59419.  
  59420.  
  59421.  
  59422.  
  59423.  
  59424.  
  59425.  
  59426. SECURITY_STATUS
  59427. __stdcall
  59428. NCryptVerifyClaim(
  59429.                 NCRYPT_KEY_HANDLE hSubjectKey,
  59430.                 NCRYPT_KEY_HANDLE hAuthorityKey,
  59431.                 DWORD dwClaimType,
  59432.                 NCryptBufferDesc *pParameterList,
  59433.                                   PBYTE pbClaimBlob,
  59434.                 DWORD cbClaimBlob,
  59435.                 NCryptBufferDesc *pOutput,
  59436.                 DWORD dwFlags);
  59437. # 1304 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ncrypt.h" 3
  59438. #pragma option pop
  59439. # 1575 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 2 3
  59440.  
  59441.  
  59442.  
  59443.  
  59444.  
  59445. typedef ULONG_PTR HCRYPTPROV_OR_NCRYPT_KEY_HANDLE;
  59446.  
  59447.  
  59448.  
  59449. typedef ULONG_PTR HCRYPTPROV_LEGACY;
  59450.  
  59451.  
  59452.  
  59453.  
  59454.  
  59455.  
  59456. typedef struct _CRYPT_BIT_BLOB {
  59457.     DWORD cbData;
  59458.     BYTE *pbData;
  59459.     DWORD cUnusedBits;
  59460. } CRYPT_BIT_BLOB, *PCRYPT_BIT_BLOB;
  59461.  
  59462.  
  59463.  
  59464.  
  59465.  
  59466.  
  59467.  
  59468. typedef struct _CRYPT_ALGORITHM_IDENTIFIER {
  59469.     LPSTR pszObjId;
  59470.     CRYPT_OBJID_BLOB Parameters;
  59471. } CRYPT_ALGORITHM_IDENTIFIER, *PCRYPT_ALGORITHM_IDENTIFIER;
  59472. # 1892 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59473. typedef struct _CRYPT_OBJID_TABLE {
  59474.     DWORD dwAlgId;
  59475.     LPCSTR pszObjId;
  59476. } CRYPT_OBJID_TABLE, *PCRYPT_OBJID_TABLE;
  59477.  
  59478.  
  59479.  
  59480.  
  59481.  
  59482. typedef struct _CRYPT_HASH_INFO {
  59483.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  59484.     CRYPT_HASH_BLOB Hash;
  59485. } CRYPT_HASH_INFO, *PCRYPT_HASH_INFO;
  59486.  
  59487.  
  59488.  
  59489.  
  59490.  
  59491.  
  59492.  
  59493. typedef struct _CERT_EXTENSION {
  59494.     LPSTR pszObjId;
  59495.     BOOL fCritical;
  59496.     CRYPT_OBJID_BLOB Value;
  59497. } CERT_EXTENSION, *PCERT_EXTENSION;
  59498. typedef const CERT_EXTENSION* PCCERT_EXTENSION;
  59499. # 1926 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59500. typedef struct _CRYPT_ATTRIBUTE_TYPE_VALUE {
  59501.     LPSTR pszObjId;
  59502.     CRYPT_OBJID_BLOB Value;
  59503. } CRYPT_ATTRIBUTE_TYPE_VALUE, *PCRYPT_ATTRIBUTE_TYPE_VALUE;
  59504. # 1938 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59505. typedef struct _CRYPT_ATTRIBUTE {
  59506.     LPSTR pszObjId;
  59507.     DWORD cValue;
  59508.     PCRYPT_ATTR_BLOB rgValue;
  59509. } CRYPT_ATTRIBUTE, *PCRYPT_ATTRIBUTE;
  59510.  
  59511. typedef struct _CRYPT_ATTRIBUTES {
  59512.     DWORD cAttr;
  59513.     PCRYPT_ATTRIBUTE rgAttr;
  59514. } CRYPT_ATTRIBUTES, *PCRYPT_ATTRIBUTES;
  59515. # 1956 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59516. typedef struct _CERT_RDN_ATTR {
  59517.     LPSTR pszObjId;
  59518.     DWORD dwValueType;
  59519.     CERT_RDN_VALUE_BLOB Value;
  59520. } CERT_RDN_ATTR, *PCERT_RDN_ATTR;
  59521. # 2144 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59522. typedef struct _CERT_RDN {
  59523.     DWORD cRDNAttr;
  59524.     PCERT_RDN_ATTR rgRDNAttr;
  59525. } CERT_RDN, *PCERT_RDN;
  59526.  
  59527.  
  59528.  
  59529.  
  59530.  
  59531. typedef struct _CERT_NAME_INFO {
  59532.     DWORD cRDN;
  59533.     PCERT_RDN rgRDN;
  59534. } CERT_NAME_INFO, *PCERT_NAME_INFO;
  59535.  
  59536.  
  59537.  
  59538.  
  59539.  
  59540.  
  59541.  
  59542. typedef struct _CERT_NAME_VALUE {
  59543.     DWORD dwValueType;
  59544.     CERT_RDN_VALUE_BLOB Value;
  59545. } CERT_NAME_VALUE, *PCERT_NAME_VALUE;
  59546. # 2176 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59547. typedef struct _CERT_PUBLIC_KEY_INFO {
  59548.     CRYPT_ALGORITHM_IDENTIFIER Algorithm;
  59549.     CRYPT_BIT_BLOB PublicKey;
  59550. } CERT_PUBLIC_KEY_INFO, *PCERT_PUBLIC_KEY_INFO;
  59551. # 2189 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59552. typedef struct _CRYPT_ECC_PRIVATE_KEY_INFO{
  59553.     DWORD dwVersion;
  59554.     CRYPT_DER_BLOB PrivateKey;
  59555.     LPSTR szCurveOid;
  59556.     CRYPT_BIT_BLOB PublicKey;
  59557. } CRYPT_ECC_PRIVATE_KEY_INFO, *PCRYPT_ECC_PRIVATE_KEY_INFO;
  59558.  
  59559.  
  59560.  
  59561.  
  59562.  
  59563.  
  59564. typedef struct _CRYPT_PRIVATE_KEY_INFO{
  59565.     DWORD Version;
  59566.     CRYPT_ALGORITHM_IDENTIFIER Algorithm;
  59567.     CRYPT_DER_BLOB PrivateKey;
  59568.     PCRYPT_ATTRIBUTES pAttributes;
  59569. } CRYPT_PRIVATE_KEY_INFO, *PCRYPT_PRIVATE_KEY_INFO;
  59570.  
  59571.  
  59572.  
  59573.  
  59574.  
  59575. typedef struct _CRYPT_ENCRYPTED_PRIVATE_KEY_INFO{
  59576.     CRYPT_ALGORITHM_IDENTIFIER EncryptionAlgorithm;
  59577.     CRYPT_DATA_BLOB EncryptedPrivateKey;
  59578. } CRYPT_ENCRYPTED_PRIVATE_KEY_INFO, *PCRYPT_ENCRYPTED_PRIVATE_KEY_INFO;
  59579. # 2233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59580. typedef BOOL (__stdcall *PCRYPT_DECRYPT_PRIVATE_KEY_FUNC)(
  59581.          CRYPT_ALGORITHM_IDENTIFIER Algorithm,
  59582.          CRYPT_DATA_BLOB EncryptedPrivateKey,
  59583.                                               BYTE* pbClearTextKey,
  59584.             DWORD* pcbClearTextKey,
  59585.          LPVOID pVoidDecryptFunc);
  59586. # 2256 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59587. typedef BOOL (__stdcall *PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC)(
  59588.           CRYPT_ALGORITHM_IDENTIFIER* pAlgorithm,
  59589.          CRYPT_DATA_BLOB* pClearTextPrivateKey,
  59590.                                               BYTE* pbEncryptedKey,
  59591.             DWORD* pcbEncryptedKey,
  59592.          LPVOID pVoidEncryptFunc);
  59593. # 2275 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59594. typedef BOOL (__stdcall *PCRYPT_RESOLVE_HCRYPTPROV_FUNC)(
  59595.                                                        CRYPT_PRIVATE_KEY_INFO *pPrivateKeyInfo,
  59596.                                                        HCRYPTPROV *phCryptProv,
  59597.                                                        LPVOID pVoidResolveFunc);
  59598. # 2289 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59599. typedef struct _CRYPT_PKCS8_IMPORT_PARAMS{
  59600.     CRYPT_DIGEST_BLOB PrivateKey;
  59601.     PCRYPT_RESOLVE_HCRYPTPROV_FUNC pResolvehCryptProvFunc;
  59602.     LPVOID pVoidResolveFunc;
  59603.     PCRYPT_DECRYPT_PRIVATE_KEY_FUNC pDecryptPrivateKeyFunc;
  59604.     LPVOID pVoidDecryptFunc;
  59605. } CRYPT_PKCS8_IMPORT_PARAMS, *PCRYPT_PKCS8_IMPORT_PARAMS, CRYPT_PRIVATE_KEY_BLOB_AND_PARAMS, *PCRYPT_PRIVATE_KEY_BLOB_AND_PARAMS;
  59606. # 2305 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59607. typedef struct _CRYPT_PKCS8_EXPORT_PARAMS{
  59608.     HCRYPTPROV hCryptProv;
  59609.     DWORD dwKeySpec;
  59610.     LPSTR pszPrivateKeyObjId;
  59611.  
  59612.     PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC pEncryptPrivateKeyFunc;
  59613.     LPVOID pVoidEncryptFunc;
  59614. } CRYPT_PKCS8_EXPORT_PARAMS, *PCRYPT_PKCS8_EXPORT_PARAMS;
  59615. # 2321 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59616. typedef struct _CERT_INFO {
  59617.     DWORD dwVersion;
  59618.     CRYPT_INTEGER_BLOB SerialNumber;
  59619.     CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
  59620.     CERT_NAME_BLOB Issuer;
  59621.     FILETIME NotBefore;
  59622.     FILETIME NotAfter;
  59623.     CERT_NAME_BLOB Subject;
  59624.     CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo;
  59625.     CRYPT_BIT_BLOB IssuerUniqueId;
  59626.     CRYPT_BIT_BLOB SubjectUniqueId;
  59627.     DWORD cExtension;
  59628.     PCERT_EXTENSION rgExtension;
  59629. } CERT_INFO, *PCERT_INFO;
  59630. # 2364 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59631. typedef struct _CRL_ENTRY {
  59632.     CRYPT_INTEGER_BLOB SerialNumber;
  59633.     FILETIME RevocationDate;
  59634.     DWORD cExtension;
  59635.     PCERT_EXTENSION rgExtension;
  59636. } CRL_ENTRY, *PCRL_ENTRY;
  59637.  
  59638.  
  59639.  
  59640.  
  59641.  
  59642.  
  59643.  
  59644. typedef struct _CRL_INFO {
  59645.     DWORD dwVersion;
  59646.     CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
  59647.     CERT_NAME_BLOB Issuer;
  59648.     FILETIME ThisUpdate;
  59649.     FILETIME NextUpdate;
  59650.     DWORD cCRLEntry;
  59651.     PCRL_ENTRY rgCRLEntry;
  59652.     DWORD cExtension;
  59653.     PCERT_EXTENSION rgExtension;
  59654. } CRL_INFO, *PCRL_INFO;
  59655. # 2401 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59656. typedef struct _CERT_OR_CRL_BLOB {
  59657.     DWORD dwChoice;
  59658.     DWORD cbEncoded;
  59659.  
  59660.     BYTE *pbEncoded;
  59661. } CERT_OR_CRL_BLOB, * PCERT_OR_CRL_BLOB;
  59662.  
  59663. typedef struct _CERT_OR_CRL_BUNDLE {
  59664.     DWORD cItem;
  59665.  
  59666.     PCERT_OR_CRL_BLOB rgItem;
  59667. } CERT_OR_CRL_BUNDLE, *PCERT_OR_CRL_BUNDLE;
  59668.  
  59669.  
  59670.  
  59671.  
  59672.  
  59673.  
  59674.  
  59675. typedef struct _CERT_REQUEST_INFO {
  59676.     DWORD dwVersion;
  59677.     CERT_NAME_BLOB Subject;
  59678.     CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo;
  59679.     DWORD cAttribute;
  59680.     PCRYPT_ATTRIBUTE rgAttribute;
  59681. } CERT_REQUEST_INFO, *PCERT_REQUEST_INFO;
  59682. # 2436 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59683. typedef struct _CERT_KEYGEN_REQUEST_INFO {
  59684.     DWORD dwVersion;
  59685.     CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo;
  59686.     LPWSTR pwszChallengeString;
  59687. } CERT_KEYGEN_REQUEST_INFO, *PCERT_KEYGEN_REQUEST_INFO;
  59688. # 2452 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59689. typedef struct _CERT_SIGNED_CONTENT_INFO {
  59690.     CRYPT_DER_BLOB ToBeSigned;
  59691.     CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
  59692.     CRYPT_BIT_BLOB Signature;
  59693. } CERT_SIGNED_CONTENT_INFO, *PCERT_SIGNED_CONTENT_INFO;
  59694. # 2466 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59695. typedef struct _CTL_USAGE {
  59696.     DWORD cUsageIdentifier;
  59697.     LPSTR *rgpszUsageIdentifier;
  59698. } CTL_USAGE, *PCTL_USAGE,
  59699. CERT_ENHKEY_USAGE, *PCERT_ENHKEY_USAGE;
  59700. typedef const CTL_USAGE* PCCTL_USAGE;
  59701. typedef const CERT_ENHKEY_USAGE* PCCERT_ENHKEY_USAGE;
  59702.  
  59703.  
  59704.  
  59705.  
  59706.  
  59707. typedef struct _CTL_ENTRY {
  59708.     CRYPT_DATA_BLOB SubjectIdentifier;
  59709.     DWORD cAttribute;
  59710.     PCRYPT_ATTRIBUTE rgAttribute;
  59711. } CTL_ENTRY, *PCTL_ENTRY;
  59712.  
  59713.  
  59714.  
  59715.  
  59716. typedef struct _CTL_INFO {
  59717.     DWORD dwVersion;
  59718.     CTL_USAGE SubjectUsage;
  59719.     CRYPT_DATA_BLOB ListIdentifier;
  59720.     CRYPT_INTEGER_BLOB SequenceNumber;
  59721.     FILETIME ThisUpdate;
  59722.     FILETIME NextUpdate;
  59723.     CRYPT_ALGORITHM_IDENTIFIER SubjectAlgorithm;
  59724.     DWORD cCTLEntry;
  59725.     PCTL_ENTRY rgCTLEntry;
  59726.     DWORD cExtension;
  59727.     PCERT_EXTENSION rgExtension;
  59728. } CTL_INFO, *PCTL_INFO;
  59729. # 2514 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59730. typedef struct _CRYPT_TIME_STAMP_REQUEST_INFO {
  59731.     LPSTR pszTimeStampAlgorithm;
  59732.     LPSTR pszContentType;
  59733.     CRYPT_OBJID_BLOB Content;
  59734.     DWORD cAttribute;
  59735.     PCRYPT_ATTRIBUTE rgAttribute;
  59736. } CRYPT_TIME_STAMP_REQUEST_INFO, *PCRYPT_TIME_STAMP_REQUEST_INFO;
  59737.  
  59738.  
  59739.  
  59740.  
  59741. typedef struct _CRYPT_ENROLLMENT_NAME_VALUE_PAIR {
  59742.     LPWSTR pwszName;
  59743.     LPWSTR pwszValue;
  59744. } CRYPT_ENROLLMENT_NAME_VALUE_PAIR, * PCRYPT_ENROLLMENT_NAME_VALUE_PAIR;
  59745.  
  59746.  
  59747.  
  59748.  
  59749. typedef struct _CRYPT_CSP_PROVIDER {
  59750.     DWORD dwKeySpec;
  59751.     LPWSTR pwszProviderName;
  59752.     CRYPT_BIT_BLOB Signature;
  59753. } CRYPT_CSP_PROVIDER, * PCRYPT_CSP_PROVIDER;
  59754. # 2581 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59755. __declspec(dllimport)
  59756. BOOL
  59757. __stdcall
  59758. CryptFormatObject(
  59759.          DWORD dwCertEncodingType,
  59760.          DWORD dwFormatType,
  59761.          DWORD dwFormatStrType,
  59762.              void *pFormatStruct,
  59763.              LPCSTR lpszStructType,
  59764.                                 const BYTE *pbEncoded,
  59765.          DWORD cbEncoded,
  59766.                                                                                void *pbFormat,
  59767.             DWORD *pcbFormat
  59768.     );
  59769. # 2664 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59770. typedef LPVOID (__stdcall *PFN_CRYPT_ALLOC)(
  59771.          size_t cbSize
  59772.     );
  59773.  
  59774. typedef void (__stdcall *PFN_CRYPT_FREE)(
  59775.          LPVOID pv
  59776.     );
  59777.  
  59778.  
  59779. typedef struct _CRYPT_ENCODE_PARA {
  59780.     DWORD cbSize;
  59781.     PFN_CRYPT_ALLOC pfnAlloc;
  59782.     PFN_CRYPT_FREE pfnFree;
  59783. } CRYPT_ENCODE_PARA, *PCRYPT_ENCODE_PARA;
  59784.  
  59785.  
  59786. __declspec(dllimport)
  59787. BOOL
  59788. __stdcall
  59789. CryptEncodeObjectEx(
  59790.          DWORD dwCertEncodingType,
  59791.          LPCSTR lpszStructType,
  59792.          const void *pvStructInfo,
  59793.          DWORD dwFlags,
  59794.              PCRYPT_ENCODE_PARA pEncodePara,
  59795.               void *pvEncoded,
  59796.             DWORD *pcbEncoded
  59797.     );
  59798.  
  59799. __declspec(dllimport)
  59800. BOOL
  59801. __stdcall
  59802. CryptEncodeObject(
  59803.          DWORD dwCertEncodingType,
  59804.          LPCSTR lpszStructType,
  59805.          const void *pvStructInfo,
  59806.                                                         BYTE *pbEncoded,
  59807.             DWORD *pcbEncoded
  59808.     );
  59809. # 2779 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59810. typedef struct _CRYPT_DECODE_PARA {
  59811.     DWORD cbSize;
  59812.     PFN_CRYPT_ALLOC pfnAlloc;
  59813.     PFN_CRYPT_FREE pfnFree;
  59814. } CRYPT_DECODE_PARA, *PCRYPT_DECODE_PARA;
  59815.  
  59816. __declspec(dllimport)
  59817. BOOL
  59818. __stdcall
  59819. CryptDecodeObjectEx(
  59820.          DWORD dwCertEncodingType,
  59821.          LPCSTR lpszStructType,
  59822.                                 const BYTE *pbEncoded,
  59823.          DWORD cbEncoded,
  59824.          DWORD dwFlags,
  59825.              PCRYPT_DECODE_PARA pDecodePara,
  59826.               void *pvStructInfo,
  59827.             DWORD *pcbStructInfo
  59828.     );
  59829.  
  59830.  
  59831. __declspec(dllimport)
  59832. BOOL
  59833. __stdcall
  59834. CryptDecodeObject(
  59835.          DWORD dwCertEncodingType,
  59836.          LPCSTR lpszStructType,
  59837.                                 const BYTE *pbEncoded,
  59838.          DWORD cbEncoded,
  59839.          DWORD dwFlags,
  59840.                                                               void *pvStructInfo,
  59841.             DWORD *pcbStructInfo
  59842.     );
  59843. # 3713 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59844. typedef struct _CERT_EXTENSIONS {
  59845.     DWORD cExtension;
  59846.     PCERT_EXTENSION rgExtension;
  59847. } CERT_EXTENSIONS, *PCERT_EXTENSIONS;
  59848. # 3880 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59849. typedef struct _CERT_AUTHORITY_KEY_ID_INFO {
  59850.     CRYPT_DATA_BLOB KeyId;
  59851.     CERT_NAME_BLOB CertIssuer;
  59852.     CRYPT_INTEGER_BLOB CertSerialNumber;
  59853. } CERT_AUTHORITY_KEY_ID_INFO, *PCERT_AUTHORITY_KEY_ID_INFO;
  59854.  
  59855.  
  59856.  
  59857.  
  59858.  
  59859.  
  59860.  
  59861. typedef struct _CERT_PRIVATE_KEY_VALIDITY {
  59862.     FILETIME NotBefore;
  59863.     FILETIME NotAfter;
  59864. } CERT_PRIVATE_KEY_VALIDITY, *PCERT_PRIVATE_KEY_VALIDITY;
  59865.  
  59866. typedef struct _CERT_KEY_ATTRIBUTES_INFO {
  59867.     CRYPT_DATA_BLOB KeyId;
  59868.     CRYPT_BIT_BLOB IntendedKeyUsage;
  59869.     PCERT_PRIVATE_KEY_VALIDITY pPrivateKeyUsagePeriod;
  59870. } CERT_KEY_ATTRIBUTES_INFO, *PCERT_KEY_ATTRIBUTES_INFO;
  59871. # 3924 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59872. typedef struct _CERT_POLICY_ID {
  59873.     DWORD cCertPolicyElementId;
  59874.     LPSTR *rgpszCertPolicyElementId;
  59875. } CERT_POLICY_ID, *PCERT_POLICY_ID;
  59876.  
  59877. typedef struct _CERT_KEY_USAGE_RESTRICTION_INFO {
  59878.     DWORD cCertPolicyId;
  59879.     PCERT_POLICY_ID rgCertPolicyId;
  59880.     CRYPT_BIT_BLOB RestrictedKeyUsage;
  59881. } CERT_KEY_USAGE_RESTRICTION_INFO, *PCERT_KEY_USAGE_RESTRICTION_INFO;
  59882. # 3948 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59883. typedef struct _CERT_OTHER_NAME {
  59884.     LPSTR pszObjId;
  59885.     CRYPT_OBJID_BLOB Value;
  59886. } CERT_OTHER_NAME, *PCERT_OTHER_NAME;
  59887.  
  59888. typedef struct _CERT_ALT_NAME_ENTRY {
  59889.     DWORD dwAltNameChoice;
  59890.     union {
  59891.         PCERT_OTHER_NAME pOtherName;
  59892.         LPWSTR pwszRfc822Name;
  59893.         LPWSTR pwszDNSName;
  59894.  
  59895.         CERT_NAME_BLOB DirectoryName;
  59896.  
  59897.         LPWSTR pwszURL;
  59898.         CRYPT_DATA_BLOB IPAddress;
  59899.         LPSTR pszRegisteredID;
  59900.     } ;
  59901. } CERT_ALT_NAME_ENTRY, *PCERT_ALT_NAME_ENTRY;
  59902. # 3982 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59903. typedef struct _CERT_ALT_NAME_INFO {
  59904.     DWORD cAltEntry;
  59905.     PCERT_ALT_NAME_ENTRY rgAltEntry;
  59906. } CERT_ALT_NAME_INFO, *PCERT_ALT_NAME_INFO;
  59907. # 4017 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59908. typedef struct _CERT_BASIC_CONSTRAINTS_INFO {
  59909.     CRYPT_BIT_BLOB SubjectType;
  59910.     BOOL fPathLenConstraint;
  59911.     DWORD dwPathLenConstraint;
  59912.     DWORD cSubtreesConstraint;
  59913.     CERT_NAME_BLOB *rgSubtreesConstraint;
  59914. } CERT_BASIC_CONSTRAINTS_INFO, *PCERT_BASIC_CONSTRAINTS_INFO;
  59915. # 4034 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59916. typedef struct _CERT_BASIC_CONSTRAINTS2_INFO {
  59917.     BOOL fCA;
  59918.     BOOL fPathLenConstraint;
  59919.     DWORD dwPathLenConstraint;
  59920. } CERT_BASIC_CONSTRAINTS2_INFO, *PCERT_BASIC_CONSTRAINTS2_INFO;
  59921. # 4059 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59922. typedef struct _CERT_POLICY_QUALIFIER_INFO {
  59923.     LPSTR pszPolicyQualifierId;
  59924.     CRYPT_OBJID_BLOB Qualifier;
  59925. } CERT_POLICY_QUALIFIER_INFO, *PCERT_POLICY_QUALIFIER_INFO;
  59926.  
  59927. typedef struct _CERT_POLICY_INFO {
  59928.     LPSTR pszPolicyIdentifier;
  59929.     DWORD cPolicyQualifier;
  59930.     CERT_POLICY_QUALIFIER_INFO *rgPolicyQualifier;
  59931. } CERT_POLICY_INFO, *PCERT_POLICY_INFO;
  59932.  
  59933. typedef struct _CERT_POLICIES_INFO {
  59934.     DWORD cPolicyInfo;
  59935.     CERT_POLICY_INFO *rgPolicyInfo;
  59936. } CERT_POLICIES_INFO, *PCERT_POLICIES_INFO;
  59937. # 4083 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59938. typedef struct _CERT_POLICY_QUALIFIER_NOTICE_REFERENCE {
  59939.     LPSTR pszOrganization;
  59940.     DWORD cNoticeNumbers;
  59941.     int *rgNoticeNumbers;
  59942. } CERT_POLICY_QUALIFIER_NOTICE_REFERENCE, *PCERT_POLICY_QUALIFIER_NOTICE_REFERENCE;
  59943.  
  59944. typedef struct _CERT_POLICY_QUALIFIER_USER_NOTICE {
  59945.     CERT_POLICY_QUALIFIER_NOTICE_REFERENCE *pNoticeReference;
  59946.     LPWSTR pszDisplayText;
  59947. } CERT_POLICY_QUALIFIER_USER_NOTICE, *PCERT_POLICY_QUALIFIER_USER_NOTICE;
  59948.  
  59949.  
  59950.  
  59951.  
  59952.  
  59953.  
  59954.  
  59955. typedef struct _CPS_URLS {
  59956.     LPWSTR pszURL;
  59957.     CRYPT_ALGORITHM_IDENTIFIER *pAlgorithm;
  59958.     CRYPT_DATA_BLOB *pDigest;
  59959. } CPS_URLS, *PCPS_URLS;
  59960.  
  59961. typedef struct _CERT_POLICY95_QUALIFIER1 {
  59962.     LPWSTR pszPracticesReference;
  59963.     LPSTR pszNoticeIdentifier;
  59964.     LPSTR pszNSINoticeIdentifier;
  59965.     DWORD cCPSURLs;
  59966.     CPS_URLS *rgCPSURLs;
  59967. } CERT_POLICY95_QUALIFIER1, *PCERT_POLICY95_QUALIFIER1;
  59968. # 4128 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59969. typedef struct _CERT_POLICY_MAPPING {
  59970.     LPSTR pszIssuerDomainPolicy;
  59971.     LPSTR pszSubjectDomainPolicy;
  59972. } CERT_POLICY_MAPPING, *PCERT_POLICY_MAPPING;
  59973.  
  59974. typedef struct _CERT_POLICY_MAPPINGS_INFO {
  59975.     DWORD cPolicyMapping;
  59976.     PCERT_POLICY_MAPPING rgPolicyMapping;
  59977. } CERT_POLICY_MAPPINGS_INFO, *PCERT_POLICY_MAPPINGS_INFO;
  59978.  
  59979.  
  59980.  
  59981.  
  59982.  
  59983.  
  59984.  
  59985. typedef struct _CERT_POLICY_CONSTRAINTS_INFO {
  59986.     BOOL fRequireExplicitPolicy;
  59987.     DWORD dwRequireExplicitPolicySkipCerts;
  59988.  
  59989.     BOOL fInhibitPolicyMapping;
  59990.     DWORD dwInhibitPolicyMappingSkipCerts;
  59991. } CERT_POLICY_CONSTRAINTS_INFO, *PCERT_POLICY_CONSTRAINTS_INFO;
  59992. # 4236 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59993. typedef struct _CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY {
  59994.     LPSTR pszObjId;
  59995.     DWORD cValue;
  59996.     PCRYPT_DER_BLOB rgValue;
  59997. } CRYPT_CONTENT_INFO_SEQUENCE_OF_ANY, *PCRYPT_CONTENT_INFO_SEQUENCE_OF_ANY;
  59998. # 4250 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  59999. typedef struct _CRYPT_CONTENT_INFO {
  60000.     LPSTR pszObjId;
  60001.     CRYPT_DER_BLOB Content;
  60002. } CRYPT_CONTENT_INFO, *PCRYPT_CONTENT_INFO;
  60003. # 4308 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60004. typedef struct _CRYPT_SEQUENCE_OF_ANY {
  60005.     DWORD cValue;
  60006.     PCRYPT_DER_BLOB rgValue;
  60007. } CRYPT_SEQUENCE_OF_ANY, *PCRYPT_SEQUENCE_OF_ANY;
  60008. # 4325 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60009. typedef struct _CERT_AUTHORITY_KEY_ID2_INFO {
  60010.     CRYPT_DATA_BLOB KeyId;
  60011.     CERT_ALT_NAME_INFO AuthorityCertIssuer;
  60012.  
  60013.     CRYPT_INTEGER_BLOB AuthorityCertSerialNumber;
  60014. } CERT_AUTHORITY_KEY_ID2_INFO, *PCERT_AUTHORITY_KEY_ID2_INFO;
  60015. # 4361 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60016. typedef struct _CERT_ACCESS_DESCRIPTION {
  60017.     LPSTR pszAccessMethod;
  60018.     CERT_ALT_NAME_ENTRY AccessLocation;
  60019. } CERT_ACCESS_DESCRIPTION, *PCERT_ACCESS_DESCRIPTION;
  60020.  
  60021.  
  60022. typedef struct _CERT_AUTHORITY_INFO_ACCESS {
  60023.     DWORD cAccDescr;
  60024.     PCERT_ACCESS_DESCRIPTION rgAccDescr;
  60025. } CERT_AUTHORITY_INFO_ACCESS, *PCERT_AUTHORITY_INFO_ACCESS,
  60026.   CERT_SUBJECT_INFO_ACCESS, *PCERT_SUBJECT_INFO_ACCESS;
  60027. # 4425 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60028. typedef struct _CRL_DIST_POINT_NAME {
  60029.     DWORD dwDistPointNameChoice;
  60030.     union {
  60031.         CERT_ALT_NAME_INFO FullName;
  60032.  
  60033.     } ;
  60034. } CRL_DIST_POINT_NAME, *PCRL_DIST_POINT_NAME;
  60035.  
  60036.  
  60037.  
  60038.  
  60039.  
  60040. typedef struct _CRL_DIST_POINT {
  60041.     CRL_DIST_POINT_NAME DistPointName;
  60042.     CRYPT_BIT_BLOB ReasonFlags;
  60043.     CERT_ALT_NAME_INFO CRLIssuer;
  60044. } CRL_DIST_POINT, *PCRL_DIST_POINT;
  60045. # 4455 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60046. typedef struct _CRL_DIST_POINTS_INFO {
  60047.     DWORD cDistPoint;
  60048.     PCRL_DIST_POINT rgDistPoint;
  60049. } CRL_DIST_POINTS_INFO, *PCRL_DIST_POINTS_INFO;
  60050. # 4486 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60051. typedef struct _CROSS_CERT_DIST_POINTS_INFO {
  60052.  
  60053.     DWORD dwSyncDeltaTime;
  60054.  
  60055.     DWORD cDistPoint;
  60056.     PCERT_ALT_NAME_INFO rgDistPoint;
  60057. } CROSS_CERT_DIST_POINTS_INFO, *PCROSS_CERT_DIST_POINTS_INFO;
  60058. # 4514 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60059. typedef struct _CERT_PAIR {
  60060.    CERT_BLOB Forward;
  60061.    CERT_BLOB Reverse;
  60062. } CERT_PAIR, *PCERT_PAIR;
  60063. # 4547 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60064. typedef struct _CRL_ISSUING_DIST_POINT {
  60065.     CRL_DIST_POINT_NAME DistPointName;
  60066.     BOOL fOnlyContainsUserCerts;
  60067.     BOOL fOnlyContainsCACerts;
  60068.     CRYPT_BIT_BLOB OnlySomeReasonFlags;
  60069.     BOOL fIndirectCRL;
  60070. } CRL_ISSUING_DIST_POINT, *PCRL_ISSUING_DIST_POINT;
  60071. # 4578 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60072. typedef struct _CERT_GENERAL_SUBTREE {
  60073.     CERT_ALT_NAME_ENTRY Base;
  60074.     DWORD dwMinimum;
  60075.     BOOL fMaximum;
  60076.     DWORD dwMaximum;
  60077. } CERT_GENERAL_SUBTREE, *PCERT_GENERAL_SUBTREE;
  60078.  
  60079. typedef struct _CERT_NAME_CONSTRAINTS_INFO {
  60080.     DWORD cPermittedSubtree;
  60081.     PCERT_GENERAL_SUBTREE rgPermittedSubtree;
  60082.     DWORD cExcludedSubtree;
  60083.     PCERT_GENERAL_SUBTREE rgExcludedSubtree;
  60084. } CERT_NAME_CONSTRAINTS_INFO, *PCERT_NAME_CONSTRAINTS_INFO;
  60085. # 4679 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60086. typedef struct _CERT_DSS_PARAMETERS {
  60087.     CRYPT_UINT_BLOB p;
  60088.     CRYPT_UINT_BLOB q;
  60089.     CRYPT_UINT_BLOB g;
  60090. } CERT_DSS_PARAMETERS, *PCERT_DSS_PARAMETERS;
  60091. # 4710 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60092. typedef struct _CERT_DH_PARAMETERS {
  60093.     CRYPT_UINT_BLOB p;
  60094.     CRYPT_UINT_BLOB g;
  60095. } CERT_DH_PARAMETERS, *PCERT_DH_PARAMETERS;
  60096. # 4723 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60097. typedef struct _CERT_ECC_SIGNATURE {
  60098.     CRYPT_UINT_BLOB r;
  60099.     CRYPT_UINT_BLOB s;
  60100. } CERT_ECC_SIGNATURE, *PCERT_ECC_SIGNATURE;
  60101. # 4735 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60102. typedef struct _CERT_X942_DH_VALIDATION_PARAMS {
  60103.     CRYPT_BIT_BLOB seed;
  60104.     DWORD pgenCounter;
  60105. } CERT_X942_DH_VALIDATION_PARAMS, *PCERT_X942_DH_VALIDATION_PARAMS;
  60106.  
  60107. typedef struct _CERT_X942_DH_PARAMETERS {
  60108.     CRYPT_UINT_BLOB p;
  60109.     CRYPT_UINT_BLOB g;
  60110.     CRYPT_UINT_BLOB q;
  60111.     CRYPT_UINT_BLOB j;
  60112.     PCERT_X942_DH_VALIDATION_PARAMS pValidationParams;
  60113. } CERT_X942_DH_PARAMETERS, *PCERT_X942_DH_PARAMETERS;
  60114. # 4758 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60115. typedef struct _CRYPT_X942_OTHER_INFO {
  60116.     LPSTR pszContentEncryptionObjId;
  60117.     BYTE rgbCounter[4];
  60118.     BYTE rgbKeyLength[4];
  60119.     CRYPT_DATA_BLOB PubInfo;
  60120. } CRYPT_X942_OTHER_INFO, *PCRYPT_X942_OTHER_INFO;
  60121. # 4774 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60122. typedef struct _CRYPT_ECC_CMS_SHARED_INFO {
  60123.     CRYPT_ALGORITHM_IDENTIFIER Algorithm;
  60124.     CRYPT_DATA_BLOB EntityUInfo;
  60125.     BYTE rgbSuppPubInfo[4];
  60126. } CRYPT_ECC_CMS_SHARED_INFO, *PCRYPT_ECC_CMS_SHARED_INFO;
  60127. # 4787 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60128. typedef struct _CRYPT_RC2_CBC_PARAMETERS {
  60129.     DWORD dwVersion;
  60130.     BOOL fIV;
  60131.     BYTE rgbIV[8];
  60132. } CRYPT_RC2_CBC_PARAMETERS, *PCRYPT_RC2_CBC_PARAMETERS;
  60133. # 4811 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60134. typedef struct _CRYPT_SMIME_CAPABILITY {
  60135.     LPSTR pszObjId;
  60136.     CRYPT_OBJID_BLOB Parameters;
  60137. } CRYPT_SMIME_CAPABILITY, *PCRYPT_SMIME_CAPABILITY;
  60138.  
  60139. typedef struct _CRYPT_SMIME_CAPABILITIES {
  60140.     DWORD cCapability;
  60141.     PCRYPT_SMIME_CAPABILITY rgCapability;
  60142. } CRYPT_SMIME_CAPABILITIES, *PCRYPT_SMIME_CAPABILITIES;
  60143. # 4836 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60144. typedef struct _CERT_QC_STATEMENT {
  60145.     LPSTR pszStatementId;
  60146.     CRYPT_OBJID_BLOB StatementInfo;
  60147. } CERT_QC_STATEMENT, *PCERT_QC_STATEMENT;
  60148.  
  60149. typedef struct _CERT_QC_STATEMENTS_EXT_INFO {
  60150.     DWORD cStatement;
  60151.     PCERT_QC_STATEMENT rgStatement;
  60152. } CERT_QC_STATEMENTS_EXT_INFO, *PCERT_QC_STATEMENTS_EXT_INFO;
  60153. # 4888 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60154. typedef struct _CRYPT_MASK_GEN_ALGORITHM {
  60155.     LPSTR pszObjId;
  60156.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  60157. } CRYPT_MASK_GEN_ALGORITHM, *PCRYPT_MASK_GEN_ALGORITHM;
  60158.  
  60159. typedef struct _CRYPT_RSA_SSA_PSS_PARAMETERS {
  60160.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  60161.     CRYPT_MASK_GEN_ALGORITHM MaskGenAlgorithm;
  60162.     DWORD dwSaltLength;
  60163.     DWORD dwTrailerField;
  60164. } CRYPT_RSA_SSA_PSS_PARAMETERS, *PCRYPT_RSA_SSA_PSS_PARAMETERS;
  60165. # 4923 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60166. typedef struct _CRYPT_PSOURCE_ALGORITHM {
  60167.     LPSTR pszObjId;
  60168.     CRYPT_DATA_BLOB EncodingParameters;
  60169. } CRYPT_PSOURCE_ALGORITHM, *PCRYPT_PSOURCE_ALGORITHM;
  60170.  
  60171. typedef struct _CRYPT_RSAES_OAEP_PARAMETERS {
  60172.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  60173.     CRYPT_MASK_GEN_ALGORITHM MaskGenAlgorithm;
  60174.     CRYPT_PSOURCE_ALGORITHM PSourceAlgorithm;
  60175. } CRYPT_RSAES_OAEP_PARAMETERS, *PCRYPT_RSAES_OAEP_PARAMETERS;
  60176. # 5217 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60177. typedef struct _CMC_TAGGED_ATTRIBUTE {
  60178.     DWORD dwBodyPartID;
  60179.     CRYPT_ATTRIBUTE Attribute;
  60180. } CMC_TAGGED_ATTRIBUTE, *PCMC_TAGGED_ATTRIBUTE;
  60181.  
  60182. typedef struct _CMC_TAGGED_CERT_REQUEST {
  60183.     DWORD dwBodyPartID;
  60184.     CRYPT_DER_BLOB SignedCertRequest;
  60185. } CMC_TAGGED_CERT_REQUEST, *PCMC_TAGGED_CERT_REQUEST;
  60186.  
  60187. typedef struct _CMC_TAGGED_REQUEST {
  60188.     DWORD dwTaggedRequestChoice;
  60189.     union {
  60190.  
  60191.         PCMC_TAGGED_CERT_REQUEST pTaggedCertRequest;
  60192.     } ;
  60193. } CMC_TAGGED_REQUEST, *PCMC_TAGGED_REQUEST;
  60194.  
  60195.  
  60196.  
  60197. typedef struct _CMC_TAGGED_CONTENT_INFO {
  60198.     DWORD dwBodyPartID;
  60199.     CRYPT_DER_BLOB EncodedContentInfo;
  60200. } CMC_TAGGED_CONTENT_INFO, *PCMC_TAGGED_CONTENT_INFO;
  60201.  
  60202. typedef struct _CMC_TAGGED_OTHER_MSG {
  60203.     DWORD dwBodyPartID;
  60204.     LPSTR pszObjId;
  60205.     CRYPT_OBJID_BLOB Value;
  60206. } CMC_TAGGED_OTHER_MSG, *PCMC_TAGGED_OTHER_MSG;
  60207.  
  60208.  
  60209.  
  60210. typedef struct _CMC_DATA_INFO {
  60211.     DWORD cTaggedAttribute;
  60212.     PCMC_TAGGED_ATTRIBUTE rgTaggedAttribute;
  60213.     DWORD cTaggedRequest;
  60214.     PCMC_TAGGED_REQUEST rgTaggedRequest;
  60215.     DWORD cTaggedContentInfo;
  60216.     PCMC_TAGGED_CONTENT_INFO rgTaggedContentInfo;
  60217.     DWORD cTaggedOtherMsg;
  60218.     PCMC_TAGGED_OTHER_MSG rgTaggedOtherMsg;
  60219. } CMC_DATA_INFO, *PCMC_DATA_INFO;
  60220.  
  60221.  
  60222.  
  60223. typedef struct _CMC_RESPONSE_INFO {
  60224.     DWORD cTaggedAttribute;
  60225.     PCMC_TAGGED_ATTRIBUTE rgTaggedAttribute;
  60226.     DWORD cTaggedContentInfo;
  60227.     PCMC_TAGGED_CONTENT_INFO rgTaggedContentInfo;
  60228.     DWORD cTaggedOtherMsg;
  60229.     PCMC_TAGGED_OTHER_MSG rgTaggedOtherMsg;
  60230. } CMC_RESPONSE_INFO, *PCMC_RESPONSE_INFO;
  60231. # 5280 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60232. typedef struct _CMC_PEND_INFO {
  60233.     CRYPT_DATA_BLOB PendToken;
  60234.     FILETIME PendTime;
  60235. } CMC_PEND_INFO, *PCMC_PEND_INFO;
  60236.  
  60237. typedef struct _CMC_STATUS_INFO {
  60238.     DWORD dwStatus;
  60239.     DWORD cBodyList;
  60240.     DWORD *rgdwBodyList;
  60241.     LPWSTR pwszStatusString;
  60242.     DWORD dwOtherInfoChoice;
  60243.     union {
  60244.  
  60245.  
  60246.  
  60247.         DWORD dwFailInfo;
  60248.  
  60249.         PCMC_PEND_INFO pPendInfo;
  60250.     } ;
  60251. } CMC_STATUS_INFO, *PCMC_STATUS_INFO;
  60252. # 5377 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60253. typedef struct _CMC_ADD_EXTENSIONS_INFO {
  60254.     DWORD dwCmcDataReference;
  60255.     DWORD cCertReference;
  60256.     DWORD *rgdwCertReference;
  60257.     DWORD cExtension;
  60258.     PCERT_EXTENSION rgExtension;
  60259. } CMC_ADD_EXTENSIONS_INFO, *PCMC_ADD_EXTENSIONS_INFO;
  60260. # 5394 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60261. typedef struct _CMC_ADD_ATTRIBUTES_INFO {
  60262.     DWORD dwCmcDataReference;
  60263.     DWORD cCertReference;
  60264.     DWORD *rgdwCertReference;
  60265.     DWORD cAttribute;
  60266.     PCRYPT_ATTRIBUTE rgAttribute;
  60267. } CMC_ADD_ATTRIBUTES_INFO, *PCMC_ADD_ATTRIBUTES_INFO;
  60268. # 5410 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60269. typedef struct _CERT_TEMPLATE_EXT {
  60270.     LPSTR pszObjId;
  60271.     DWORD dwMajorVersion;
  60272.     BOOL fMinorVersion;
  60273.     DWORD dwMinorVersion;
  60274. } CERT_TEMPLATE_EXT, *PCERT_TEMPLATE_EXT;
  60275. # 5426 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60276. typedef struct _CERT_HASHED_URL {
  60277.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  60278.     CRYPT_HASH_BLOB Hash;
  60279.     LPWSTR pwszUrl;
  60280.  
  60281. } CERT_HASHED_URL, *PCERT_HASHED_URL;
  60282.  
  60283. typedef struct _CERT_LOGOTYPE_DETAILS {
  60284.     LPWSTR pwszMimeType;
  60285.     DWORD cHashedUrl;
  60286.     PCERT_HASHED_URL rgHashedUrl;
  60287. } CERT_LOGOTYPE_DETAILS, *PCERT_LOGOTYPE_DETAILS;
  60288.  
  60289. typedef struct _CERT_LOGOTYPE_REFERENCE {
  60290.     DWORD cHashedUrl;
  60291.     PCERT_HASHED_URL rgHashedUrl;
  60292. } CERT_LOGOTYPE_REFERENCE, *PCERT_LOGOTYPE_REFERENCE;
  60293.  
  60294. typedef struct _CERT_LOGOTYPE_IMAGE_INFO {
  60295.  
  60296.  
  60297.     DWORD dwLogotypeImageInfoChoice;
  60298.  
  60299.     DWORD dwFileSize;
  60300.     DWORD dwXSize;
  60301.     DWORD dwYSize;
  60302.  
  60303.     DWORD dwLogotypeImageResolutionChoice;
  60304.     union {
  60305.  
  60306.  
  60307.  
  60308.  
  60309.         DWORD dwNumBits;
  60310.  
  60311.  
  60312.         DWORD dwTableSize;
  60313.     } ;
  60314.     LPWSTR pwszLanguage;
  60315.  
  60316. } CERT_LOGOTYPE_IMAGE_INFO, *PCERT_LOGOTYPE_IMAGE_INFO;
  60317. # 5475 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60318. typedef struct _CERT_LOGOTYPE_IMAGE {
  60319.     CERT_LOGOTYPE_DETAILS LogotypeDetails;
  60320.  
  60321.     PCERT_LOGOTYPE_IMAGE_INFO pLogotypeImageInfo;
  60322. } CERT_LOGOTYPE_IMAGE, *PCERT_LOGOTYPE_IMAGE;
  60323.  
  60324.  
  60325. typedef struct _CERT_LOGOTYPE_AUDIO_INFO {
  60326.     DWORD dwFileSize;
  60327.     DWORD dwPlayTime;
  60328.     DWORD dwChannels;
  60329.     DWORD dwSampleRate;
  60330.  
  60331.     LPWSTR pwszLanguage;
  60332.  
  60333. } CERT_LOGOTYPE_AUDIO_INFO, *PCERT_LOGOTYPE_AUDIO_INFO;
  60334.  
  60335. typedef struct _CERT_LOGOTYPE_AUDIO {
  60336.     CERT_LOGOTYPE_DETAILS LogotypeDetails;
  60337.  
  60338.     PCERT_LOGOTYPE_AUDIO_INFO pLogotypeAudioInfo;
  60339. } CERT_LOGOTYPE_AUDIO, *PCERT_LOGOTYPE_AUDIO;
  60340.  
  60341.  
  60342. typedef struct _CERT_LOGOTYPE_DATA {
  60343.     DWORD cLogotypeImage;
  60344.     PCERT_LOGOTYPE_IMAGE rgLogotypeImage;
  60345.  
  60346.     DWORD cLogotypeAudio;
  60347.     PCERT_LOGOTYPE_AUDIO rgLogotypeAudio;
  60348. } CERT_LOGOTYPE_DATA, *PCERT_LOGOTYPE_DATA;
  60349.  
  60350.  
  60351. typedef struct _CERT_LOGOTYPE_INFO {
  60352.     DWORD dwLogotypeInfoChoice;
  60353.     union {
  60354.  
  60355.         PCERT_LOGOTYPE_DATA pLogotypeDirectInfo;
  60356.  
  60357.  
  60358.         PCERT_LOGOTYPE_REFERENCE pLogotypeIndirectInfo;
  60359.     } ;
  60360. } CERT_LOGOTYPE_INFO, *PCERT_LOGOTYPE_INFO;
  60361.  
  60362.  
  60363.  
  60364.  
  60365. typedef struct _CERT_OTHER_LOGOTYPE_INFO {
  60366.     LPSTR pszObjId;
  60367.     CERT_LOGOTYPE_INFO LogotypeInfo;
  60368. } CERT_OTHER_LOGOTYPE_INFO, *PCERT_OTHER_LOGOTYPE_INFO;
  60369.  
  60370.  
  60371.  
  60372.  
  60373. typedef struct _CERT_LOGOTYPE_EXT_INFO {
  60374.     DWORD cCommunityLogo;
  60375.     PCERT_LOGOTYPE_INFO rgCommunityLogo;
  60376.     PCERT_LOGOTYPE_INFO pIssuerLogo;
  60377.     PCERT_LOGOTYPE_INFO pSubjectLogo;
  60378.     DWORD cOtherLogo;
  60379.     PCERT_OTHER_LOGOTYPE_INFO rgOtherLogo;
  60380. } CERT_LOGOTYPE_EXT_INFO, *PCERT_LOGOTYPE_EXT_INFO;
  60381. # 5549 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60382. typedef struct _CERT_BIOMETRIC_DATA {
  60383.     DWORD dwTypeOfBiometricDataChoice;
  60384.     union {
  60385.  
  60386.         DWORD dwPredefined;
  60387.  
  60388.  
  60389.         LPSTR pszObjId;
  60390.     } ;
  60391.  
  60392.     CERT_HASHED_URL HashedUrl;
  60393. } CERT_BIOMETRIC_DATA, *PCERT_BIOMETRIC_DATA;
  60394. # 5569 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60395. typedef struct _CERT_BIOMETRIC_EXT_INFO {
  60396.     DWORD cBiometricData;
  60397.     PCERT_BIOMETRIC_DATA rgBiometricData;
  60398. } CERT_BIOMETRIC_EXT_INFO, *PCERT_BIOMETRIC_EXT_INFO;
  60399. # 5589 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60400. typedef struct _OCSP_SIGNATURE_INFO {
  60401.     CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm;
  60402.     CRYPT_BIT_BLOB Signature;
  60403.     DWORD cCertEncoded;
  60404.     PCERT_BLOB rgCertEncoded;
  60405. } OCSP_SIGNATURE_INFO, *POCSP_SIGNATURE_INFO;
  60406.  
  60407. typedef struct _OCSP_SIGNED_REQUEST_INFO {
  60408.     CRYPT_DER_BLOB ToBeSigned;
  60409.     POCSP_SIGNATURE_INFO pOptionalSignatureInfo;
  60410. } OCSP_SIGNED_REQUEST_INFO, *POCSP_SIGNED_REQUEST_INFO;
  60411.  
  60412.  
  60413.  
  60414.  
  60415.  
  60416.  
  60417.  
  60418. typedef struct _OCSP_CERT_ID {
  60419.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  60420.     CRYPT_HASH_BLOB IssuerNameHash;
  60421.     CRYPT_HASH_BLOB IssuerKeyHash;
  60422.     CRYPT_INTEGER_BLOB SerialNumber;
  60423. } OCSP_CERT_ID, *POCSP_CERT_ID;
  60424.  
  60425. typedef struct _OCSP_REQUEST_ENTRY {
  60426.     OCSP_CERT_ID CertId;
  60427.     DWORD cExtension;
  60428.     PCERT_EXTENSION rgExtension;
  60429. } OCSP_REQUEST_ENTRY, *POCSP_REQUEST_ENTRY;
  60430.  
  60431. typedef struct _OCSP_REQUEST_INFO {
  60432.     DWORD dwVersion;
  60433.     PCERT_ALT_NAME_ENTRY pRequestorName;
  60434.     DWORD cRequestEntry;
  60435.     POCSP_REQUEST_ENTRY rgRequestEntry;
  60436.     DWORD cExtension;
  60437.     PCERT_EXTENSION rgExtension;
  60438. } OCSP_REQUEST_INFO, *POCSP_REQUEST_INFO;
  60439. # 5636 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60440. typedef struct _OCSP_RESPONSE_INFO {
  60441.     DWORD dwStatus;
  60442.     LPSTR pszObjId;
  60443.     CRYPT_OBJID_BLOB Value;
  60444. } OCSP_RESPONSE_INFO, *POCSP_RESPONSE_INFO;
  60445. # 5659 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60446. typedef struct _OCSP_BASIC_SIGNED_RESPONSE_INFO {
  60447.     CRYPT_DER_BLOB ToBeSigned;
  60448.     OCSP_SIGNATURE_INFO SignatureInfo;
  60449. } OCSP_BASIC_SIGNED_RESPONSE_INFO, *POCSP_BASIC_SIGNED_RESPONSE_INFO;
  60450.  
  60451.  
  60452.  
  60453.  
  60454.  
  60455.  
  60456.  
  60457. typedef struct _OCSP_BASIC_REVOKED_INFO {
  60458.     FILETIME RevocationDate;
  60459.  
  60460.  
  60461.     DWORD dwCrlReasonCode;
  60462. } OCSP_BASIC_REVOKED_INFO, *POCSP_BASIC_REVOKED_INFO;
  60463.  
  60464. typedef struct _OCSP_BASIC_RESPONSE_ENTRY {
  60465.     OCSP_CERT_ID CertId;
  60466.     DWORD dwCertStatus;
  60467.     union {
  60468.  
  60469.  
  60470.  
  60471.  
  60472.  
  60473.         POCSP_BASIC_REVOKED_INFO pRevokedInfo;
  60474.  
  60475.     } ;
  60476.     FILETIME ThisUpdate;
  60477.     FILETIME NextUpdate;
  60478.  
  60479.     DWORD cExtension;
  60480.     PCERT_EXTENSION rgExtension;
  60481. } OCSP_BASIC_RESPONSE_ENTRY, *POCSP_BASIC_RESPONSE_ENTRY;
  60482.  
  60483.  
  60484.  
  60485.  
  60486.  
  60487.  
  60488. typedef struct _OCSP_BASIC_RESPONSE_INFO {
  60489.     DWORD dwVersion;
  60490.     DWORD dwResponderIdChoice;
  60491.     union {
  60492.  
  60493.         CERT_NAME_BLOB ByNameResponderId;
  60494.  
  60495.         CRYPT_HASH_BLOB ByKeyResponderId;
  60496.     } ;
  60497.     FILETIME ProducedAt;
  60498.     DWORD cResponseEntry;
  60499.     POCSP_BASIC_RESPONSE_ENTRY rgResponseEntry;
  60500.     DWORD cExtension;
  60501.     PCERT_EXTENSION rgExtension;
  60502. } OCSP_BASIC_RESPONSE_INFO, *POCSP_BASIC_RESPONSE_INFO;
  60503. # 5732 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60504. typedef struct _CERT_SUPPORTED_ALGORITHM_INFO {
  60505.     CRYPT_ALGORITHM_IDENTIFIER Algorithm;
  60506.     CRYPT_BIT_BLOB IntendedKeyUsage;
  60507.     CERT_POLICIES_INFO IntendedCertPolicies;
  60508. } CERT_SUPPORTED_ALGORITHM_INFO, *PCERT_SUPPORTED_ALGORITHM_INFO;
  60509.  
  60510.  
  60511.  
  60512.  
  60513.  
  60514.  
  60515. typedef struct _CERT_TPM_SPECIFICATION_INFO {
  60516.     LPWSTR pwszFamily;
  60517.     DWORD dwLevel;
  60518.     DWORD dwRevision;
  60519. } CERT_TPM_SPECIFICATION_INFO, *PCERT_TPM_SPECIFICATION_INFO;
  60520. # 5761 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60521. typedef void *HCRYPTOIDFUNCSET;
  60522. typedef void *HCRYPTOIDFUNCADDR;
  60523. # 5838 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60524. typedef struct _CRYPT_OID_FUNC_ENTRY {
  60525.     LPCSTR pszOID;
  60526.     void *pvFuncAddr;
  60527. } CRYPT_OID_FUNC_ENTRY, *PCRYPT_OID_FUNC_ENTRY;
  60528. # 5860 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60529. __declspec(dllimport)
  60530. BOOL
  60531. __stdcall
  60532. CryptInstallOIDFunctionAddress(
  60533.              HMODULE hModule,
  60534.          DWORD dwEncodingType,
  60535.          LPCSTR pszFuncName,
  60536.          DWORD cFuncEntry,
  60537.                            const CRYPT_OID_FUNC_ENTRY rgFuncEntry[],
  60538.          DWORD dwFlags
  60539.     );
  60540.  
  60541.  
  60542.  
  60543.  
  60544.  
  60545.  
  60546.  
  60547. __declspec(dllimport)
  60548. HCRYPTOIDFUNCSET
  60549. __stdcall
  60550. CryptInitOIDFunctionSet(
  60551.          LPCSTR pszFuncName,
  60552.          DWORD dwFlags
  60553.     );
  60554. # 5904 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60555. __declspec(dllimport)
  60556.  
  60557. BOOL
  60558. __stdcall
  60559. CryptGetOIDFunctionAddress(
  60560.          HCRYPTOIDFUNCSET hFuncSet,
  60561.          DWORD dwEncodingType,
  60562.          LPCSTR pszOID,
  60563.          DWORD dwFlags,
  60564.              void **ppvFuncAddr,
  60565.           HCRYPTOIDFUNCADDR *phFuncAddr
  60566.     );
  60567. # 5927 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60568. __declspec(dllimport)
  60569.  
  60570. BOOL
  60571. __stdcall
  60572. CryptGetDefaultOIDDllList(
  60573.          HCRYPTOIDFUNCSET hFuncSet,
  60574.          DWORD dwEncodingType,
  60575.                                                                                  WCHAR *pwszDllList,
  60576.             DWORD *pcchDllList
  60577.     );
  60578. # 5961 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60579. __declspec(dllimport)
  60580.  
  60581. BOOL
  60582. __stdcall
  60583. CryptGetDefaultOIDFunctionAddress(
  60584.          HCRYPTOIDFUNCSET hFuncSet,
  60585.          DWORD dwEncodingType,
  60586.              LPCWSTR pwszDll,
  60587.          DWORD dwFlags,
  60588.              void **ppvFuncAddr,
  60589.             HCRYPTOIDFUNCADDR *phFuncAddr
  60590.     );
  60591. # 5987 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60592. __declspec(dllimport)
  60593. BOOL
  60594. __stdcall
  60595. CryptFreeOIDFunctionAddress(
  60596.          HCRYPTOIDFUNCADDR hFuncAddr,
  60597.          DWORD dwFlags
  60598.     );
  60599.  
  60600.  
  60601. #pragma endregion
  60602.  
  60603. #pragma region Desktop Family or OneCore Family
  60604. # 6015 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60605. __declspec(dllimport)
  60606. BOOL
  60607. __stdcall
  60608. CryptRegisterOIDFunction(
  60609.          DWORD dwEncodingType,
  60610.          LPCSTR pszFuncName,
  60611.          LPCSTR pszOID,
  60612.              LPCWSTR pwszDll,
  60613.              LPCSTR pszOverrideFuncName
  60614.     );
  60615.  
  60616.  
  60617.  
  60618.  
  60619.  
  60620. __declspec(dllimport)
  60621. BOOL
  60622. __stdcall
  60623. CryptUnregisterOIDFunction(
  60624.          DWORD dwEncodingType,
  60625.          LPCSTR pszFuncName,
  60626.          LPCSTR pszOID
  60627.     );
  60628. # 6053 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60629. __declspec(dllimport)
  60630. BOOL
  60631. __stdcall
  60632. CryptRegisterDefaultOIDFunction(
  60633.          DWORD dwEncodingType,
  60634.          LPCSTR pszFuncName,
  60635.          DWORD dwIndex,
  60636.          LPCWSTR pwszDll
  60637.     );
  60638. # 6070 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60639. __declspec(dllimport)
  60640. BOOL
  60641. __stdcall
  60642. CryptUnregisterDefaultOIDFunction(
  60643.          DWORD dwEncodingType,
  60644.          LPCSTR pszFuncName,
  60645.          LPCWSTR pwszDll
  60646.     );
  60647. # 6087 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60648. __declspec(dllimport)
  60649. BOOL
  60650. __stdcall
  60651. CryptSetOIDFunctionValue(
  60652.          DWORD dwEncodingType,
  60653.          LPCSTR pszFuncName,
  60654.          LPCSTR pszOID,
  60655.              LPCWSTR pwszValueName,
  60656.          DWORD dwValueType,
  60657.                                       const BYTE *pbValueData,
  60658.          DWORD cbValueData
  60659.     );
  60660. # 6110 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60661. #pragma endregion
  60662.  
  60663. #pragma region Application Family or OneCore Family
  60664.  
  60665.  
  60666. __declspec(dllimport)
  60667. BOOL
  60668. __stdcall
  60669. CryptGetOIDFunctionValue(
  60670.          DWORD dwEncodingType,
  60671.          LPCSTR pszFuncName,
  60672.          LPCSTR pszOID,
  60673.              LPCWSTR pwszValueName,
  60674.               DWORD *pdwValueType,
  60675.                                                             BYTE *pbValueData,
  60676.                 DWORD *pcbValueData
  60677.     );
  60678.  
  60679. typedef BOOL (__stdcall *PFN_CRYPT_ENUM_OID_FUNC)(
  60680.          DWORD dwEncodingType,
  60681.          LPCSTR pszFuncName,
  60682.          LPCSTR pszOID,
  60683.          DWORD cValue,
  60684.                        const DWORD rgdwValueType[],
  60685.                        LPCWSTR const rgpwszValueName[],
  60686.                        const BYTE * const rgpbValueData[],
  60687.                        const DWORD rgcbValueData[],
  60688.                 void *pvArg
  60689.     );
  60690. # 6153 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60691. __declspec(dllimport)
  60692. BOOL
  60693. __stdcall
  60694. CryptEnumOIDFunction(
  60695.          DWORD dwEncodingType,
  60696.              LPCSTR pszFuncName,
  60697.              LPCSTR pszOID,
  60698.          DWORD dwFlags,
  60699.                 void *pvArg,
  60700.                PFN_CRYPT_ENUM_OID_FUNC pfnEnumOIDFunc
  60701.     );
  60702. # 6199 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60703. typedef struct _CRYPT_OID_INFO {
  60704.     DWORD cbSize;
  60705.     LPCSTR pszOID;
  60706.     LPCWSTR pwszName;
  60707.     DWORD dwGroupId;
  60708.     union {
  60709.         DWORD dwValue;
  60710.         ALG_ID Algid;
  60711.         DWORD dwLength;
  60712.     } ;
  60713.     CRYPT_DATA_BLOB ExtraInfo;
  60714. # 6237 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60715. } CRYPT_OID_INFO, *PCRYPT_OID_INFO;
  60716. typedef const CRYPT_OID_INFO CCRYPT_OID_INFO, *PCCRYPT_OID_INFO;
  60717. # 6333 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60718. __declspec(dllimport)
  60719. PCCRYPT_OID_INFO
  60720. __stdcall
  60721. CryptFindOIDInfo(
  60722.          DWORD dwKeyType,
  60723.          void *pvKey,
  60724.          DWORD dwGroupId
  60725.     );
  60726. # 6393 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60727. #pragma endregion
  60728.  
  60729. #pragma region Desktop Family or OneCore Family
  60730. # 6409 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60731. __declspec(dllimport)
  60732. BOOL
  60733. __stdcall
  60734. CryptRegisterOIDInfo(
  60735.          PCCRYPT_OID_INFO pInfo,
  60736.          DWORD dwFlags
  60737.     );
  60738.  
  60739.  
  60740.  
  60741.  
  60742.  
  60743.  
  60744.  
  60745. __declspec(dllimport)
  60746. BOOL
  60747. __stdcall
  60748. CryptUnregisterOIDInfo(
  60749.          PCCRYPT_OID_INFO pInfo
  60750.     );
  60751.  
  60752.  
  60753. #pragma endregion
  60754.  
  60755. #pragma region Application Family or OneCore Family
  60756.  
  60757.  
  60758.  
  60759. typedef BOOL (__stdcall *PFN_CRYPT_ENUM_OID_INFO)(
  60760.          PCCRYPT_OID_INFO pInfo,
  60761.                 void *pvArg
  60762.     );
  60763. # 6452 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60764. __declspec(dllimport)
  60765. BOOL
  60766. __stdcall
  60767. CryptEnumOIDInfo(
  60768.          DWORD dwGroupId,
  60769.          DWORD dwFlags,
  60770.                 void *pvArg,
  60771.                PFN_CRYPT_ENUM_OID_INFO pfnEnumOIDInfo
  60772.     );
  60773. # 6485 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60774. __declspec(dllimport)
  60775. LPCWSTR
  60776. __stdcall
  60777. CryptFindLocalizedName(
  60778.          LPCWSTR pwszCryptName
  60779.     );
  60780. # 6499 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60781. typedef struct _CERT_STRONG_SIGN_SERIALIZED_INFO {
  60782.     DWORD dwFlags;
  60783.     LPWSTR pwszCNGSignHashAlgids;
  60784.     LPWSTR pwszCNGPubKeyMinBitLengths;
  60785. } CERT_STRONG_SIGN_SERIALIZED_INFO, *PCERT_STRONG_SIGN_SERIALIZED_INFO;
  60786. # 6527 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60787. typedef struct _CERT_STRONG_SIGN_PARA {
  60788.     DWORD cbSize;
  60789.  
  60790.     DWORD dwInfoChoice;
  60791.     union {
  60792.         void *pvInfo;
  60793.  
  60794.  
  60795.         PCERT_STRONG_SIGN_SERIALIZED_INFO pSerializedInfo;
  60796.  
  60797.  
  60798.         LPSTR pszOID;
  60799.  
  60800.     } ;
  60801. } CERT_STRONG_SIGN_PARA, *PCERT_STRONG_SIGN_PARA;
  60802.  
  60803. typedef const CERT_STRONG_SIGN_PARA *PCCERT_STRONG_SIGN_PARA;
  60804. # 6616 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60805. typedef void *HCRYPTMSG;
  60806. # 6653 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60807. typedef struct _CERT_ISSUER_SERIAL_NUMBER {
  60808.     CERT_NAME_BLOB Issuer;
  60809.     CRYPT_INTEGER_BLOB SerialNumber;
  60810. } CERT_ISSUER_SERIAL_NUMBER, *PCERT_ISSUER_SERIAL_NUMBER;
  60811.  
  60812.  
  60813.  
  60814.  
  60815. typedef struct _CERT_ID {
  60816.     DWORD dwIdChoice;
  60817.     union {
  60818.  
  60819.         CERT_ISSUER_SERIAL_NUMBER IssuerSerialNumber;
  60820.  
  60821.         CRYPT_HASH_BLOB KeyId;
  60822.  
  60823.         CRYPT_HASH_BLOB HashId;
  60824.     } ;
  60825. } CERT_ID, *PCERT_ID;
  60826. # 6725 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60827. typedef struct _CMSG_SIGNER_ENCODE_INFO {
  60828.     DWORD cbSize;
  60829.     PCERT_INFO pCertInfo;
  60830.  
  60831.  
  60832.     union {
  60833.         HCRYPTPROV hCryptProv;
  60834.         NCRYPT_KEY_HANDLE hNCryptKey;
  60835.  
  60836.  
  60837.  
  60838.     } ;
  60839.  
  60840.  
  60841.     DWORD dwKeySpec;
  60842.  
  60843.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  60844.     void *pvHashAuxInfo;
  60845.     DWORD cAuthAttr;
  60846.     PCRYPT_ATTRIBUTE rgAuthAttr;
  60847.     DWORD cUnauthAttr;
  60848.     PCRYPT_ATTRIBUTE rgUnauthAttr;
  60849. # 6755 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60850. } CMSG_SIGNER_ENCODE_INFO, *PCMSG_SIGNER_ENCODE_INFO;
  60851.  
  60852. typedef struct _CMSG_SIGNED_ENCODE_INFO {
  60853.     DWORD cbSize;
  60854.     DWORD cSigners;
  60855.     PCMSG_SIGNER_ENCODE_INFO rgSigners;
  60856.     DWORD cCertEncoded;
  60857.     PCERT_BLOB rgCertEncoded;
  60858.     DWORD cCrlEncoded;
  60859.     PCRL_BLOB rgCrlEncoded;
  60860.  
  60861.  
  60862.  
  60863.  
  60864.  
  60865. } CMSG_SIGNED_ENCODE_INFO, *PCMSG_SIGNED_ENCODE_INFO;
  60866. # 6815 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60867. typedef struct _CMSG_RECIPIENT_ENCODE_INFO CMSG_RECIPIENT_ENCODE_INFO,
  60868.     *PCMSG_RECIPIENT_ENCODE_INFO;
  60869.  
  60870. typedef struct _CMSG_ENVELOPED_ENCODE_INFO {
  60871.     DWORD cbSize;
  60872.     HCRYPTPROV_LEGACY hCryptProv;
  60873.     CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
  60874.     void *pvEncryptionAuxInfo;
  60875.     DWORD cRecipients;
  60876.  
  60877.  
  60878.  
  60879.  
  60880.     PCERT_INFO *rgpRecipients;
  60881. # 6843 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60882. } CMSG_ENVELOPED_ENCODE_INFO, *PCMSG_ENVELOPED_ENCODE_INFO;
  60883. # 6866 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60884. typedef struct _CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO {
  60885.     DWORD cbSize;
  60886.     CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  60887.     void *pvKeyEncryptionAuxInfo;
  60888.     HCRYPTPROV_LEGACY hCryptProv;
  60889.     CRYPT_BIT_BLOB RecipientPublicKey;
  60890.     CERT_ID RecipientId;
  60891. } CMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO, *PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO;
  60892. # 6915 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60893. typedef struct _CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO {
  60894.     DWORD cbSize;
  60895.     CRYPT_BIT_BLOB RecipientPublicKey;
  60896.     CERT_ID RecipientId;
  60897.  
  60898.  
  60899.  
  60900.     FILETIME Date;
  60901.     PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
  60902. } CMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO,
  60903.     *PCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO;
  60904.  
  60905. typedef struct _CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO {
  60906.     DWORD cbSize;
  60907.     CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  60908.     void *pvKeyEncryptionAuxInfo;
  60909.     CRYPT_ALGORITHM_IDENTIFIER KeyWrapAlgorithm;
  60910.     void *pvKeyWrapAuxInfo;
  60911.  
  60912.  
  60913.  
  60914.  
  60915.  
  60916.  
  60917.  
  60918.     HCRYPTPROV_LEGACY hCryptProv;
  60919.     DWORD dwKeySpec;
  60920.  
  60921.     DWORD dwKeyChoice;
  60922.     union {
  60923.  
  60924.  
  60925.  
  60926.         PCRYPT_ALGORITHM_IDENTIFIER pEphemeralAlgorithm;
  60927.  
  60928.  
  60929.  
  60930.  
  60931.         PCERT_ID pSenderId;
  60932.     } ;
  60933.     CRYPT_DATA_BLOB UserKeyingMaterial;
  60934.  
  60935.     DWORD cRecipientEncryptedKeys;
  60936.     PCMSG_RECIPIENT_ENCRYPTED_KEY_ENCODE_INFO *rgpRecipientEncryptedKeys;
  60937. } CMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO, *PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO;
  60938. # 6983 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60939. typedef struct _CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO {
  60940.     DWORD cbSize;
  60941.     CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  60942.     void *pvKeyEncryptionAuxInfo;
  60943.     HCRYPTPROV hCryptProv;
  60944.     DWORD dwKeyChoice;
  60945.     union {
  60946.  
  60947.         HCRYPTKEY hKeyEncryptionKey;
  60948.  
  60949.         void *pvKeyEncryptionKey;
  60950.     } ;
  60951.     CRYPT_DATA_BLOB KeyId;
  60952.  
  60953.  
  60954.     FILETIME Date;
  60955.     PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
  60956. } CMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO, *PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO;
  60957. # 7009 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60958. struct _CMSG_RECIPIENT_ENCODE_INFO {
  60959.     DWORD dwRecipientChoice;
  60960.     union {
  60961.  
  60962.         PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO pKeyTrans;
  60963.  
  60964.         PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO pKeyAgree;
  60965.  
  60966.         PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO pMailList;
  60967.     } ;
  60968. };
  60969. # 7041 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60970. typedef struct _CMSG_RC2_AUX_INFO {
  60971.     DWORD cbSize;
  60972.     DWORD dwBitLen;
  60973. } CMSG_RC2_AUX_INFO, *PCMSG_RC2_AUX_INFO;
  60974. # 7059 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60975. typedef struct _CMSG_SP3_COMPATIBLE_AUX_INFO {
  60976.     DWORD cbSize;
  60977.     DWORD dwFlags;
  60978. } CMSG_SP3_COMPATIBLE_AUX_INFO, *PCMSG_SP3_COMPATIBLE_AUX_INFO;
  60979. # 7081 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60980. typedef struct _CMSG_RC4_AUX_INFO {
  60981.     DWORD cbSize;
  60982.     DWORD dwBitLen;
  60983. } CMSG_RC4_AUX_INFO, *PCMSG_RC4_AUX_INFO;
  60984. # 7095 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60985. typedef struct _CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO {
  60986.     DWORD cbSize;
  60987.     CMSG_SIGNED_ENCODE_INFO SignedInfo;
  60988.     CMSG_ENVELOPED_ENCODE_INFO EnvelopedInfo;
  60989. } CMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO, *PCMSG_SIGNED_AND_ENVELOPED_ENCODE_INFO;
  60990. # 7117 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60991. typedef struct _CMSG_HASHED_ENCODE_INFO {
  60992.     DWORD cbSize;
  60993.     HCRYPTPROV_LEGACY hCryptProv;
  60994.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  60995.     void *pvHashAuxInfo;
  60996. } CMSG_HASHED_ENCODE_INFO, *PCMSG_HASHED_ENCODE_INFO;
  60997. # 7134 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  60998. typedef struct _CMSG_ENCRYPTED_ENCODE_INFO {
  60999.     DWORD cbSize;
  61000.     CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
  61001.     void *pvEncryptionAuxInfo;
  61002. } CMSG_ENCRYPTED_ENCODE_INFO, *PCMSG_ENCRYPTED_ENCODE_INFO;
  61003. # 7155 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61004. typedef BOOL (__stdcall *PFN_CMSG_STREAM_OUTPUT)(
  61005.              const void *pvArg,
  61006.                                  BYTE *pbData,
  61007.          DWORD cbData,
  61008.          BOOL fFinal
  61009.     );
  61010.  
  61011.  
  61012.  
  61013. typedef struct _CMSG_STREAM_INFO {
  61014.     DWORD cbContent;
  61015.     PFN_CMSG_STREAM_OUTPUT pfnStreamOutput;
  61016.     void *pvArg;
  61017. } CMSG_STREAM_INFO, *PCMSG_STREAM_INFO;
  61018. # 7208 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61019. __declspec(dllimport)
  61020. HCRYPTMSG
  61021. __stdcall
  61022. CryptMsgOpenToEncode(
  61023.          DWORD dwMsgEncodingType,
  61024.          DWORD dwFlags,
  61025.          DWORD dwMsgType,
  61026.          void const *pvMsgEncodeInfo,
  61027.              LPSTR pszInnerContentObjID,
  61028.              PCMSG_STREAM_INFO pStreamInfo
  61029.     );
  61030. # 7228 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61031. __declspec(dllimport)
  61032. DWORD
  61033. __stdcall
  61034. CryptMsgCalculateEncodedLength(
  61035.          DWORD dwMsgEncodingType,
  61036.          DWORD dwFlags,
  61037.          DWORD dwMsgType,
  61038.          void const *pvMsgEncodeInfo,
  61039.              LPSTR pszInnerContentObjID,
  61040.          DWORD cbData
  61041.     );
  61042. # 7252 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61043. __declspec(dllimport)
  61044. HCRYPTMSG
  61045. __stdcall
  61046. CryptMsgOpenToDecode(
  61047.          DWORD dwMsgEncodingType,
  61048.          DWORD dwFlags,
  61049.          DWORD dwMsgType,
  61050.              HCRYPTPROV_LEGACY hCryptProv,
  61051.                PCERT_INFO pRecipientInfo,
  61052.              PCMSG_STREAM_INFO pStreamInfo
  61053.     );
  61054.  
  61055.  
  61056.  
  61057.  
  61058. __declspec(dllimport)
  61059. HCRYPTMSG
  61060. __stdcall
  61061. CryptMsgDuplicate(
  61062.              HCRYPTMSG hCryptMsg
  61063.     );
  61064.  
  61065.  
  61066.  
  61067.  
  61068.  
  61069.  
  61070. __declspec(dllimport)
  61071. BOOL
  61072. __stdcall
  61073. CryptMsgClose(
  61074.              HCRYPTMSG hCryptMsg
  61075.     );
  61076. # 7295 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61077. __declspec(dllimport)
  61078. BOOL
  61079. __stdcall
  61080. CryptMsgUpdate(
  61081.          HCRYPTMSG hCryptMsg,
  61082.                                  const BYTE *pbData,
  61083.          DWORD cbData,
  61084.          BOOL fFinal
  61085.     );
  61086. # 7329 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61087. __declspec(dllimport)
  61088. BOOL
  61089. __stdcall
  61090. CryptMsgGetParam(
  61091.          HCRYPTMSG hCryptMsg,
  61092.          DWORD dwParamType,
  61093.          DWORD dwIndex,
  61094.                                                   void *pvData,
  61095.             DWORD *pcbData
  61096.     );
  61097. # 7464 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61098. typedef struct _CMSG_SIGNER_INFO {
  61099.     DWORD dwVersion;
  61100.     CERT_NAME_BLOB Issuer;
  61101.     CRYPT_INTEGER_BLOB SerialNumber;
  61102.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  61103.  
  61104.  
  61105.     CRYPT_ALGORITHM_IDENTIFIER HashEncryptionAlgorithm;
  61106.  
  61107.     CRYPT_DATA_BLOB EncryptedHash;
  61108.     CRYPT_ATTRIBUTES AuthAttrs;
  61109.     CRYPT_ATTRIBUTES UnauthAttrs;
  61110. } CMSG_SIGNER_INFO, *PCMSG_SIGNER_INFO;
  61111. # 7499 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61112. typedef struct _CMSG_CMS_SIGNER_INFO {
  61113.     DWORD dwVersion;
  61114.     CERT_ID SignerId;
  61115.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  61116.  
  61117.  
  61118.     CRYPT_ALGORITHM_IDENTIFIER HashEncryptionAlgorithm;
  61119.  
  61120.     CRYPT_DATA_BLOB EncryptedHash;
  61121.     CRYPT_ATTRIBUTES AuthAttrs;
  61122.     CRYPT_ATTRIBUTES UnauthAttrs;
  61123. } CMSG_CMS_SIGNER_INFO, *PCMSG_CMS_SIGNER_INFO;
  61124. # 7532 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61125. typedef CRYPT_ATTRIBUTES CMSG_ATTR;
  61126. typedef CRYPT_ATTRIBUTES *PCMSG_ATTR;
  61127. # 7773 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61128. typedef struct _CMSG_KEY_TRANS_RECIPIENT_INFO {
  61129.     DWORD dwVersion;
  61130.  
  61131.  
  61132.     CERT_ID RecipientId;
  61133.  
  61134.     CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  61135.     CRYPT_DATA_BLOB EncryptedKey;
  61136. } CMSG_KEY_TRANS_RECIPIENT_INFO, *PCMSG_KEY_TRANS_RECIPIENT_INFO;
  61137.  
  61138. typedef struct _CMSG_RECIPIENT_ENCRYPTED_KEY_INFO {
  61139.  
  61140.     CERT_ID RecipientId;
  61141.  
  61142.     CRYPT_DATA_BLOB EncryptedKey;
  61143.  
  61144.  
  61145.     FILETIME Date;
  61146.     PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
  61147. } CMSG_RECIPIENT_ENCRYPTED_KEY_INFO, *PCMSG_RECIPIENT_ENCRYPTED_KEY_INFO;
  61148.  
  61149. typedef struct _CMSG_KEY_AGREE_RECIPIENT_INFO {
  61150.     DWORD dwVersion;
  61151.     DWORD dwOriginatorChoice;
  61152.     union {
  61153.  
  61154.         CERT_ID OriginatorCertId;
  61155.  
  61156.         CERT_PUBLIC_KEY_INFO OriginatorPublicKeyInfo;
  61157.     } ;
  61158.     CRYPT_DATA_BLOB UserKeyingMaterial;
  61159.     CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  61160.  
  61161.     DWORD cRecipientEncryptedKeys;
  61162.     PCMSG_RECIPIENT_ENCRYPTED_KEY_INFO *rgpRecipientEncryptedKeys;
  61163. } CMSG_KEY_AGREE_RECIPIENT_INFO, *PCMSG_KEY_AGREE_RECIPIENT_INFO;
  61164.  
  61165.  
  61166.  
  61167.  
  61168.  
  61169. typedef struct _CMSG_MAIL_LIST_RECIPIENT_INFO {
  61170.     DWORD dwVersion;
  61171.     CRYPT_DATA_BLOB KeyId;
  61172.     CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  61173.     CRYPT_DATA_BLOB EncryptedKey;
  61174.  
  61175.  
  61176.     FILETIME Date;
  61177.     PCRYPT_ATTRIBUTE_TYPE_VALUE pOtherAttr;
  61178. } CMSG_MAIL_LIST_RECIPIENT_INFO, *PCMSG_MAIL_LIST_RECIPIENT_INFO;
  61179.  
  61180. typedef struct _CMSG_CMS_RECIPIENT_INFO {
  61181.     DWORD dwRecipientChoice;
  61182.     union {
  61183.  
  61184.         PCMSG_KEY_TRANS_RECIPIENT_INFO pKeyTrans;
  61185.  
  61186.         PCMSG_KEY_AGREE_RECIPIENT_INFO pKeyAgree;
  61187.  
  61188.         PCMSG_MAIL_LIST_RECIPIENT_INFO pMailList;
  61189.     } ;
  61190. } CMSG_CMS_RECIPIENT_INFO, *PCMSG_CMS_RECIPIENT_INFO;
  61191. # 7867 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61192. __declspec(dllimport)
  61193. BOOL
  61194. __stdcall
  61195. CryptMsgControl(
  61196.          HCRYPTMSG hCryptMsg,
  61197.          DWORD dwFlags,
  61198.          DWORD dwCtrlType,
  61199.              void const *pvCtrlPara
  61200.     );
  61201. # 7946 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61202. typedef struct _CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA {
  61203.     DWORD cbSize;
  61204.     HCRYPTPROV_LEGACY hCryptProv;
  61205.     DWORD dwSignerIndex;
  61206.     DWORD dwSignerType;
  61207.     void *pvSigner;
  61208. } CMSG_CTRL_VERIFY_SIGNATURE_EX_PARA, *PCMSG_CTRL_VERIFY_SIGNATURE_EX_PARA;
  61209. # 7999 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61210. typedef struct _CMSG_CTRL_DECRYPT_PARA {
  61211.     DWORD cbSize;
  61212.  
  61213.  
  61214.     union {
  61215.         HCRYPTPROV hCryptProv;
  61216.         NCRYPT_KEY_HANDLE hNCryptKey;
  61217.     } ;
  61218.  
  61219.  
  61220.     DWORD dwKeySpec;
  61221.  
  61222.     DWORD dwRecipientIndex;
  61223. } CMSG_CTRL_DECRYPT_PARA, *PCMSG_CTRL_DECRYPT_PARA;
  61224. # 8039 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61225. typedef struct _CMSG_CTRL_KEY_TRANS_DECRYPT_PARA {
  61226.     DWORD cbSize;
  61227.  
  61228.     union {
  61229.         HCRYPTPROV hCryptProv;
  61230.         NCRYPT_KEY_HANDLE hNCryptKey;
  61231.     } ;
  61232.  
  61233.  
  61234.     DWORD dwKeySpec;
  61235.  
  61236.     PCMSG_KEY_TRANS_RECIPIENT_INFO pKeyTrans;
  61237.     DWORD dwRecipientIndex;
  61238. } CMSG_CTRL_KEY_TRANS_DECRYPT_PARA, *PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA;
  61239. # 8083 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61240. typedef struct _CMSG_CTRL_KEY_AGREE_DECRYPT_PARA {
  61241.     DWORD cbSize;
  61242.  
  61243.  
  61244.     union {
  61245.         HCRYPTPROV hCryptProv;
  61246.         NCRYPT_KEY_HANDLE hNCryptKey;
  61247.     } ;
  61248.  
  61249.  
  61250.     DWORD dwKeySpec;
  61251.  
  61252.     PCMSG_KEY_AGREE_RECIPIENT_INFO pKeyAgree;
  61253.     DWORD dwRecipientIndex;
  61254.     DWORD dwRecipientEncryptedKeyIndex;
  61255.     CRYPT_BIT_BLOB OriginatorPublicKey;
  61256. } CMSG_CTRL_KEY_AGREE_DECRYPT_PARA, *PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA;
  61257. # 8127 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61258. typedef struct _CMSG_CTRL_MAIL_LIST_DECRYPT_PARA {
  61259.     DWORD cbSize;
  61260.     HCRYPTPROV hCryptProv;
  61261.     PCMSG_MAIL_LIST_RECIPIENT_INFO pMailList;
  61262.     DWORD dwRecipientIndex;
  61263.     DWORD dwKeyChoice;
  61264.     union {
  61265.  
  61266.         HCRYPTKEY hKeyEncryptionKey;
  61267.  
  61268.         void *pvKeyEncryptionKey;
  61269.     } ;
  61270. } CMSG_CTRL_MAIL_LIST_DECRYPT_PARA, *PCMSG_CTRL_MAIL_LIST_DECRYPT_PARA;
  61271. # 8189 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61272. typedef struct _CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA {
  61273.     DWORD cbSize;
  61274.     DWORD dwSignerIndex;
  61275.     CRYPT_DATA_BLOB blob;
  61276. } CMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA, *PCMSG_CTRL_ADD_SIGNER_UNAUTH_ATTR_PARA;
  61277. # 8205 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61278. typedef struct _CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA {
  61279.     DWORD cbSize;
  61280.     DWORD dwSignerIndex;
  61281.     DWORD dwUnauthAttrIndex;
  61282. } CMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA, *PCMSG_CTRL_DEL_SIGNER_UNAUTH_ATTR_PARA;
  61283. # 8275 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61284. BOOL
  61285. __stdcall
  61286. CryptMsgVerifyCountersignatureEncoded(
  61287.              HCRYPTPROV_LEGACY hCryptProv,
  61288.          DWORD dwEncodingType,
  61289.                                    PBYTE pbSignerInfo,
  61290.          DWORD cbSignerInfo,
  61291.                                                    PBYTE pbSignerInfoCountersignature,
  61292.          DWORD cbSignerInfoCountersignature,
  61293.          PCERT_INFO pciCountersigner
  61294.     );
  61295. # 8298 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61296. BOOL
  61297. __stdcall
  61298. CryptMsgVerifyCountersignatureEncodedEx(
  61299.              HCRYPTPROV_LEGACY hCryptProv,
  61300.          DWORD dwEncodingType,
  61301.                                    PBYTE pbSignerInfo,
  61302.          DWORD cbSignerInfo,
  61303.                                                    PBYTE pbSignerInfoCountersignature,
  61304.          DWORD cbSignerInfoCountersignature,
  61305.          DWORD dwSignerType,
  61306.          void *pvSigner,
  61307.          DWORD dwFlags,
  61308.                 void *pvExtra
  61309.     );
  61310. # 8324 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61311. BOOL
  61312. __stdcall
  61313. CryptMsgCountersign(
  61314.          HCRYPTMSG hCryptMsg,
  61315.          DWORD dwIndex,
  61316.          DWORD cCountersigners,
  61317.                                 PCMSG_SIGNER_ENCODE_INFO rgCountersigners
  61318.     );
  61319.  
  61320.  
  61321.  
  61322.  
  61323.  
  61324.  
  61325.  
  61326. BOOL
  61327. __stdcall
  61328. CryptMsgCountersignEncoded(
  61329.          DWORD dwEncodingType,
  61330.                                    PBYTE pbSignerInfo,
  61331.          DWORD cbSignerInfo,
  61332.          DWORD cCountersigners,
  61333.                                 PCMSG_SIGNER_ENCODE_INFO rgCountersigners,
  61334.                                                                           PBYTE pbCountersignature,
  61335.             PDWORD pcbCountersignature
  61336.     );
  61337.  
  61338.  
  61339.  
  61340.  
  61341.  
  61342. typedef void * (__stdcall *PFN_CMSG_ALLOC) (
  61343.          size_t cb
  61344.     );
  61345.  
  61346. typedef void (__stdcall *PFN_CMSG_FREE)(
  61347.             void *pv
  61348.     );
  61349. # 8376 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61350. typedef BOOL (__stdcall *PFN_CMSG_GEN_ENCRYPT_KEY) (
  61351.             HCRYPTPROV *phCryptProv,
  61352.          PCRYPT_ALGORITHM_IDENTIFIER paiEncrypt,
  61353.              PVOID pvEncryptAuxInfo,
  61354.          PCERT_PUBLIC_KEY_INFO pPublicKeyInfo,
  61355.                PFN_CMSG_ALLOC pfnAlloc,
  61356.           HCRYPTKEY *phEncryptKey,
  61357.                                                       PBYTE *ppbEncryptParameters,
  61358.           PDWORD pcbEncryptParameters
  61359.     );
  61360.  
  61361.  
  61362. typedef BOOL (__stdcall *PFN_CMSG_EXPORT_ENCRYPT_KEY) (
  61363.          HCRYPTPROV hCryptProv,
  61364.          HCRYPTKEY hEncryptKey,
  61365.          PCERT_PUBLIC_KEY_INFO pPublicKeyInfo,
  61366.                                                   PBYTE pbData,
  61367.             PDWORD pcbData
  61368.     );
  61369.  
  61370.  
  61371. typedef BOOL (__stdcall *PFN_CMSG_IMPORT_ENCRYPT_KEY) (
  61372.          HCRYPTPROV hCryptProv,
  61373.          DWORD dwKeySpec,
  61374.          PCRYPT_ALGORITHM_IDENTIFIER paiEncrypt,
  61375.          PCRYPT_ALGORITHM_IDENTIFIER paiPubKey,
  61376.                                    PBYTE pbEncodedKey,
  61377.          DWORD cbEncodedKey,
  61378.           HCRYPTKEY *phEncryptKey
  61379.     );
  61380. # 8430 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61381. typedef struct _CMSG_CONTENT_ENCRYPT_INFO {
  61382.     DWORD cbSize;
  61383.     HCRYPTPROV_LEGACY hCryptProv;
  61384.     CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
  61385.     void *pvEncryptionAuxInfo;
  61386.     DWORD cRecipients;
  61387.     PCMSG_RECIPIENT_ENCODE_INFO rgCmsRecipients;
  61388.     PFN_CMSG_ALLOC pfnAlloc;
  61389.     PFN_CMSG_FREE pfnFree;
  61390.     DWORD dwEncryptFlags;
  61391.     union {
  61392.  
  61393.         HCRYPTKEY hContentEncryptKey;
  61394.  
  61395.         BCRYPT_KEY_HANDLE hCNGContentEncryptKey;
  61396.     } ;
  61397.     DWORD dwFlags;
  61398.  
  61399.     BOOL fCNG;
  61400.  
  61401.     BYTE *pbCNGContentEncryptKeyObject;
  61402.     BYTE *pbContentEncryptKey;
  61403.     DWORD cbContentEncryptKey;
  61404. } CMSG_CONTENT_ENCRYPT_INFO, *PCMSG_CONTENT_ENCRYPT_INFO;
  61405. # 8518 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61406. typedef BOOL (__stdcall *PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY) (
  61407.             PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo,
  61408.          DWORD dwFlags,
  61409.                void *pvReserved
  61410.     );
  61411. # 8535 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61412. typedef struct _CMSG_KEY_TRANS_ENCRYPT_INFO {
  61413.     DWORD cbSize;
  61414.     DWORD dwRecipientIndex;
  61415.     CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  61416.     CRYPT_DATA_BLOB EncryptedKey;
  61417.     DWORD dwFlags;
  61418. } CMSG_KEY_TRANS_ENCRYPT_INFO, *PCMSG_KEY_TRANS_ENCRYPT_INFO;
  61419. # 8576 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61420. typedef BOOL (__stdcall *PFN_CMSG_EXPORT_KEY_TRANS) (
  61421.          PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo,
  61422.          PCMSG_KEY_TRANS_RECIPIENT_ENCODE_INFO pKeyTransEncodeInfo,
  61423.             PCMSG_KEY_TRANS_ENCRYPT_INFO pKeyTransEncryptInfo,
  61424.          DWORD dwFlags,
  61425.                void *pvReserved
  61426.     );
  61427. # 8596 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61428. typedef struct _CMSG_KEY_AGREE_KEY_ENCRYPT_INFO {
  61429.     DWORD cbSize;
  61430.     CRYPT_DATA_BLOB EncryptedKey;
  61431. } CMSG_KEY_AGREE_KEY_ENCRYPT_INFO, *PCMSG_KEY_AGREE_KEY_ENCRYPT_INFO;
  61432.  
  61433.  
  61434.  
  61435.  
  61436.  
  61437.  
  61438.  
  61439. typedef struct _CMSG_KEY_AGREE_ENCRYPT_INFO {
  61440.     DWORD cbSize;
  61441.     DWORD dwRecipientIndex;
  61442.     CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  61443.     CRYPT_DATA_BLOB UserKeyingMaterial;
  61444.     DWORD dwOriginatorChoice;
  61445.     union {
  61446.  
  61447.         CERT_ID OriginatorCertId;
  61448.  
  61449.         CERT_PUBLIC_KEY_INFO OriginatorPublicKeyInfo;
  61450.     } ;
  61451.     DWORD cKeyAgreeKeyEncryptInfo;
  61452.     PCMSG_KEY_AGREE_KEY_ENCRYPT_INFO *rgpKeyAgreeKeyEncryptInfo;
  61453.     DWORD dwFlags;
  61454. } CMSG_KEY_AGREE_ENCRYPT_INFO, *PCMSG_KEY_AGREE_ENCRYPT_INFO;
  61455. # 8683 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61456. typedef BOOL (__stdcall *PFN_CMSG_EXPORT_KEY_AGREE) (
  61457.          PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo,
  61458.          PCMSG_KEY_AGREE_RECIPIENT_ENCODE_INFO pKeyAgreeEncodeInfo,
  61459.             PCMSG_KEY_AGREE_ENCRYPT_INFO pKeyAgreeEncryptInfo,
  61460.          DWORD dwFlags,
  61461.                void *pvReserved
  61462.     );
  61463. # 8702 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61464. typedef struct _CMSG_MAIL_LIST_ENCRYPT_INFO {
  61465.     DWORD cbSize;
  61466.     DWORD dwRecipientIndex;
  61467.     CRYPT_ALGORITHM_IDENTIFIER KeyEncryptionAlgorithm;
  61468.     CRYPT_DATA_BLOB EncryptedKey;
  61469.     DWORD dwFlags;
  61470. } CMSG_MAIL_LIST_ENCRYPT_INFO, *PCMSG_MAIL_LIST_ENCRYPT_INFO;
  61471. # 8744 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61472. typedef BOOL (__stdcall *PFN_CMSG_EXPORT_MAIL_LIST) (
  61473.          PCMSG_CONTENT_ENCRYPT_INFO pContentEncryptInfo,
  61474.          PCMSG_MAIL_LIST_RECIPIENT_ENCODE_INFO pMailListEncodeInfo,
  61475.             PCMSG_MAIL_LIST_ENCRYPT_INFO pMailListEncryptInfo,
  61476.          DWORD dwFlags,
  61477.                void *pvReserved
  61478.     );
  61479. # 8773 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61480. typedef BOOL (__stdcall *PFN_CMSG_IMPORT_KEY_TRANS) (
  61481.          PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm,
  61482.          PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara,
  61483.          DWORD dwFlags,
  61484.                void *pvReserved,
  61485.           HCRYPTKEY *phContentEncryptKey
  61486.     );
  61487.  
  61488.  
  61489.  
  61490. typedef BOOL (__stdcall *PFN_CMSG_IMPORT_KEY_AGREE) (
  61491.          PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm,
  61492.          PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA pKeyAgreeDecryptPara,
  61493.          DWORD dwFlags,
  61494.                void *pvReserved,
  61495.           HCRYPTKEY *phContentEncryptKey
  61496.     );
  61497.  
  61498.  
  61499.  
  61500. typedef BOOL (__stdcall *PFN_CMSG_IMPORT_MAIL_LIST) (
  61501.          PCRYPT_ALGORITHM_IDENTIFIER pContentEncryptionAlgorithm,
  61502.          PCMSG_CTRL_MAIL_LIST_DECRYPT_PARA pMailListDecryptPara,
  61503.          DWORD dwFlags,
  61504.                void *pvReserved,
  61505.           HCRYPTKEY *phContentEncryptKey
  61506.     );
  61507. # 8811 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61508. typedef struct _CMSG_CNG_CONTENT_DECRYPT_INFO {
  61509.     DWORD cbSize;
  61510.     CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
  61511.     PFN_CMSG_ALLOC pfnAlloc;
  61512.     PFN_CMSG_FREE pfnFree;
  61513.  
  61514.  
  61515.  
  61516.  
  61517.     NCRYPT_KEY_HANDLE hNCryptKey;
  61518.  
  61519.     BYTE *pbContentEncryptKey;
  61520.     DWORD cbContentEncryptKey;
  61521.  
  61522.     BCRYPT_KEY_HANDLE hCNGContentEncryptKey;
  61523.     BYTE *pbCNGContentEncryptKeyObject;
  61524. } CMSG_CNG_CONTENT_DECRYPT_INFO, *PCMSG_CNG_CONTENT_DECRYPT_INFO;
  61525. # 8847 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61526. typedef BOOL (__stdcall *PFN_CMSG_CNG_IMPORT_KEY_TRANS) (
  61527.             PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo,
  61528.          PCMSG_CTRL_KEY_TRANS_DECRYPT_PARA pKeyTransDecryptPara,
  61529.          DWORD dwFlags,
  61530.                void *pvReserved
  61531.     );
  61532. # 8872 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61533. typedef BOOL (__stdcall *PFN_CMSG_CNG_IMPORT_KEY_AGREE) (
  61534.             PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo,
  61535.          PCMSG_CTRL_KEY_AGREE_DECRYPT_PARA pKeyAgreeDecryptPara,
  61536.          DWORD dwFlags,
  61537.                void *pvReserved
  61538.     );
  61539. # 8897 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61540. typedef BOOL (__stdcall *PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY) (
  61541.             PCMSG_CNG_CONTENT_DECRYPT_INFO pCNGContentDecryptInfo,
  61542.          DWORD dwFlags,
  61543.                void *pvReserved
  61544.     );
  61545. # 8977 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61546. typedef void *HCERTSTORE;
  61547. # 8989 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61548. typedef struct _CERT_CONTEXT {
  61549.     DWORD dwCertEncodingType;
  61550.     BYTE *pbCertEncoded;
  61551.     DWORD cbCertEncoded;
  61552.     PCERT_INFO pCertInfo;
  61553.     HCERTSTORE hCertStore;
  61554. } CERT_CONTEXT, *PCERT_CONTEXT;
  61555. typedef const CERT_CONTEXT *PCCERT_CONTEXT;
  61556. # 9008 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61557. typedef struct _CRL_CONTEXT {
  61558.     DWORD dwCertEncodingType;
  61559.     BYTE *pbCrlEncoded;
  61560.     DWORD cbCrlEncoded;
  61561.     PCRL_INFO pCrlInfo;
  61562.     HCERTSTORE hCertStore;
  61563. } CRL_CONTEXT, *PCRL_CONTEXT;
  61564. typedef const CRL_CONTEXT *PCCRL_CONTEXT;
  61565. # 9027 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61566. typedef struct _CTL_CONTEXT {
  61567.     DWORD dwMsgAndCertEncodingType;
  61568.     BYTE *pbCtlEncoded;
  61569.     DWORD cbCtlEncoded;
  61570.     PCTL_INFO pCtlInfo;
  61571.     HCERTSTORE hCertStore;
  61572.     HCRYPTMSG hCryptMsg;
  61573.     BYTE *pbCtlContent;
  61574.     DWORD cbCtlContent;
  61575. } CTL_CONTEXT, *PCTL_CONTEXT;
  61576. typedef const CTL_CONTEXT *PCCTL_CONTEXT;
  61577. # 9193 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61578. typedef enum CertKeyType
  61579. {
  61580.     KeyTypeOther = 0,
  61581.     KeyTypeVirtualSmartCard = 1,
  61582.     KeyTypePhysicalSmartCard = 2,
  61583.     KeyTypePassport = 3,
  61584.     KeyTypePassportRemote = 4,
  61585.     KeyTypePassportSmartCard = 5,
  61586.     KeyTypeHardware = 6,
  61587.     KeyTypeSoftware = 7,
  61588.     KeyTypeSelfSigned = 8,
  61589. } CertKeyType;
  61590. # 9314 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61591. typedef struct _CRYPT_KEY_PROV_PARAM {
  61592.     DWORD dwParam;
  61593.     BYTE *pbData;
  61594.     DWORD cbData;
  61595.     DWORD dwFlags;
  61596. } CRYPT_KEY_PROV_PARAM, *PCRYPT_KEY_PROV_PARAM;
  61597.  
  61598. typedef struct _CRYPT_KEY_PROV_INFO {
  61599.     LPWSTR pwszContainerName;
  61600.     LPWSTR pwszProvName;
  61601.     DWORD dwProvType;
  61602.     DWORD dwFlags;
  61603.     DWORD cProvParam;
  61604.     PCRYPT_KEY_PROV_PARAM rgProvParam;
  61605.     DWORD dwKeySpec;
  61606. } CRYPT_KEY_PROV_INFO, *PCRYPT_KEY_PROV_INFO;
  61607. # 9354 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61608. typedef struct _CERT_KEY_CONTEXT {
  61609.     DWORD cbSize;
  61610.     union {
  61611.         HCRYPTPROV hCryptProv;
  61612.  
  61613.  
  61614.         NCRYPT_KEY_HANDLE hNCryptKey;
  61615.     } ;
  61616.     DWORD dwKeySpec;
  61617. } CERT_KEY_CONTEXT, *PCERT_KEY_CONTEXT;
  61618.  
  61619.  
  61620.  
  61621.  
  61622.  
  61623.  
  61624.  
  61625. typedef struct _ROOT_INFO_LUID {
  61626.     DWORD LowPart;
  61627.     LONG HighPart;
  61628. } ROOT_INFO_LUID, *PROOT_INFO_LUID;
  61629.  
  61630. typedef struct _CRYPT_SMART_CARD_ROOT_INFO {
  61631.     BYTE rgbCardID [16];
  61632.     ROOT_INFO_LUID luid;
  61633. } CRYPT_SMART_CARD_ROOT_INFO, *PCRYPT_SMART_CARD_ROOT_INFO;
  61634. # 9480 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61635. typedef struct _CERT_SYSTEM_STORE_RELOCATE_PARA {
  61636.     union {
  61637.         HKEY hKeyBase;
  61638.         void *pvBase;
  61639.     } ;
  61640.     union {
  61641.         void *pvSystemStore;
  61642.         LPCSTR pszSystemStore;
  61643.         LPCWSTR pwszSystemStore;
  61644.     } ;
  61645. } CERT_SYSTEM_STORE_RELOCATE_PARA, *PCERT_SYSTEM_STORE_RELOCATE_PARA;
  61646. # 9897 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61647. typedef struct _CERT_REGISTRY_STORE_CLIENT_GPT_PARA {
  61648.     HKEY hKeyBase;
  61649.     LPWSTR pwszRegPath;
  61650. } CERT_REGISTRY_STORE_CLIENT_GPT_PARA, *PCERT_REGISTRY_STORE_CLIENT_GPT_PARA;
  61651. # 9910 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61652. typedef struct _CERT_REGISTRY_STORE_ROAMING_PARA {
  61653.     HKEY hKey;
  61654.     LPWSTR pwszStoreDirectory;
  61655. } CERT_REGISTRY_STORE_ROAMING_PARA, *PCERT_REGISTRY_STORE_ROAMING_PARA;
  61656. # 9992 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61657. typedef struct _CERT_LDAP_STORE_OPENED_PARA {
  61658.     void *pvLdapSessionHandle;
  61659.  
  61660.     LPCWSTR pwszLdapUrl;
  61661. } CERT_LDAP_STORE_OPENED_PARA, *PCERT_LDAP_STORE_OPENED_PARA;
  61662. # 10360 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61663. __declspec(dllimport)
  61664.  
  61665. HCERTSTORE
  61666. __stdcall
  61667. CertOpenStore(
  61668.          LPCSTR lpszStoreProvider,
  61669.          DWORD dwEncodingType,
  61670.              HCRYPTPROV_LEGACY hCryptProv,
  61671.          DWORD dwFlags,
  61672.              const void *pvPara
  61673.     );
  61674.  
  61675.  
  61676.  
  61677.  
  61678.  
  61679.  
  61680. typedef void *HCERTSTOREPROV;
  61681. # 10388 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61682. typedef struct _CERT_STORE_PROV_INFO {
  61683.     DWORD cbSize;
  61684.     DWORD cStoreProvFunc;
  61685.     void **rgpvStoreProvFunc;
  61686.     HCERTSTOREPROV hStoreProv;
  61687.     DWORD dwStoreProvFlags;
  61688.     HCRYPTOIDFUNCADDR hStoreProvFuncAddr2;
  61689. } CERT_STORE_PROV_INFO, *PCERT_STORE_PROV_INFO;
  61690. # 10404 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61691. typedef BOOL (__stdcall *PFN_CERT_DLL_OPEN_STORE_PROV_FUNC)(
  61692.          LPCSTR lpszStoreProvider,
  61693.          DWORD dwEncodingType,
  61694.              HCRYPTPROV_LEGACY hCryptProv,
  61695.          DWORD dwFlags,
  61696.              const void *pvPara,
  61697.          HCERTSTORE hCertStore,
  61698.             PCERT_STORE_PROV_INFO pStoreProvInfo
  61699.     );
  61700. # 10474 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61701. typedef void (__stdcall *PFN_CERT_STORE_PROV_CLOSE)(
  61702.                 HCERTSTOREPROV hStoreProv,
  61703.          DWORD dwFlags
  61704.     );
  61705.  
  61706.  
  61707.  
  61708.  
  61709.  
  61710.  
  61711. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_READ_CERT)(
  61712.             HCERTSTOREPROV hStoreProv,
  61713.          PCCERT_CONTEXT pStoreCertContext,
  61714.          DWORD dwFlags,
  61715.              PCCERT_CONTEXT *ppProvCertContext
  61716.     );
  61717. # 10500 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61718. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_WRITE_CERT)(
  61719.             HCERTSTOREPROV hStoreProv,
  61720.          PCCERT_CONTEXT pCertContext,
  61721.          DWORD dwFlags
  61722.     );
  61723.  
  61724.  
  61725.  
  61726.  
  61727.  
  61728. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_DELETE_CERT)(
  61729.             HCERTSTOREPROV hStoreProv,
  61730.          PCCERT_CONTEXT pCertContext,
  61731.          DWORD dwFlags
  61732.     );
  61733. # 10524 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61734. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_SET_CERT_PROPERTY)(
  61735.             HCERTSTOREPROV hStoreProv,
  61736.          PCCERT_CONTEXT pCertContext,
  61737.          DWORD dwPropId,
  61738.          DWORD dwFlags,
  61739.              const void *pvData
  61740.     );
  61741.  
  61742.  
  61743.  
  61744.  
  61745.  
  61746.  
  61747. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_READ_CRL)(
  61748.             HCERTSTOREPROV hStoreProv,
  61749.          PCCRL_CONTEXT pStoreCrlContext,
  61750.          DWORD dwFlags,
  61751.              PCCRL_CONTEXT *ppProvCrlContext
  61752.     );
  61753. # 10551 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61754. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_WRITE_CRL)(
  61755.             HCERTSTOREPROV hStoreProv,
  61756.          PCCRL_CONTEXT pCrlContext,
  61757.          DWORD dwFlags
  61758.     );
  61759.  
  61760.  
  61761.  
  61762.  
  61763. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_DELETE_CRL)(
  61764.             HCERTSTOREPROV hStoreProv,
  61765.          PCCRL_CONTEXT pCrlContext,
  61766.          DWORD dwFlags
  61767.     );
  61768. # 10574 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61769. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_SET_CRL_PROPERTY)(
  61770.             HCERTSTOREPROV hStoreProv,
  61771.          PCCRL_CONTEXT pCrlContext,
  61772.          DWORD dwPropId,
  61773.          DWORD dwFlags,
  61774.              const void *pvData
  61775.     );
  61776.  
  61777.  
  61778.  
  61779.  
  61780.  
  61781.  
  61782. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_READ_CTL)(
  61783.             HCERTSTOREPROV hStoreProv,
  61784.          PCCTL_CONTEXT pStoreCtlContext,
  61785.          DWORD dwFlags,
  61786.              PCCTL_CONTEXT *ppProvCtlContext
  61787.     );
  61788. # 10601 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61789. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_WRITE_CTL)(
  61790.             HCERTSTOREPROV hStoreProv,
  61791.          PCCTL_CONTEXT pCtlContext,
  61792.          DWORD dwFlags
  61793.     );
  61794.  
  61795.  
  61796.  
  61797.  
  61798. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_DELETE_CTL)(
  61799.             HCERTSTOREPROV hStoreProv,
  61800.          PCCTL_CONTEXT pCtlContext,
  61801.          DWORD dwFlags
  61802.                                                      );
  61803. # 10624 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61804. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_SET_CTL_PROPERTY)(
  61805.             HCERTSTOREPROV hStoreProv,
  61806.          PCCTL_CONTEXT pCtlContext,
  61807.          DWORD dwPropId,
  61808.          DWORD dwFlags,
  61809.              const void *pvData
  61810.     );
  61811.  
  61812. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_CONTROL)(
  61813.             HCERTSTOREPROV hStoreProv,
  61814.          DWORD dwFlags,
  61815.          DWORD dwCtrlType,
  61816.              void const *pvCtrlPara
  61817.     );
  61818.  
  61819. typedef struct _CERT_STORE_PROV_FIND_INFO {
  61820.     DWORD cbSize;
  61821.     DWORD dwMsgAndCertEncodingType;
  61822.     DWORD dwFindFlags;
  61823.     DWORD dwFindType;
  61824.     const void *pvFindPara;
  61825. } CERT_STORE_PROV_FIND_INFO, *PCERT_STORE_PROV_FIND_INFO;
  61826. typedef const CERT_STORE_PROV_FIND_INFO CCERT_STORE_PROV_FIND_INFO,
  61827. *PCCERT_STORE_PROV_FIND_INFO;
  61828.  
  61829. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_FIND_CERT)(
  61830.             HCERTSTOREPROV hStoreProv,
  61831.          PCCERT_STORE_PROV_FIND_INFO pFindInfo,
  61832.          PCCERT_CONTEXT pPrevCertContext,
  61833.          DWORD dwFlags,
  61834.             void **ppvStoreProvFindInfo,
  61835.              PCCERT_CONTEXT *ppProvCertContext
  61836.     );
  61837.  
  61838. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_FREE_FIND_CERT)(
  61839.             HCERTSTOREPROV hStoreProv,
  61840.          PCCERT_CONTEXT pCertContext,
  61841.          void *pvStoreProvFindInfo,
  61842.          DWORD dwFlags
  61843.     );
  61844.  
  61845. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_GET_CERT_PROPERTY)(
  61846.             HCERTSTOREPROV hStoreProv,
  61847.          PCCERT_CONTEXT pCertContext,
  61848.          DWORD dwPropId,
  61849.          DWORD dwFlags,
  61850.                                                   void *pvData,
  61851.             DWORD *pcbData
  61852.     );
  61853.  
  61854.  
  61855. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_FIND_CRL)(
  61856.             HCERTSTOREPROV hStoreProv,
  61857.          PCCERT_STORE_PROV_FIND_INFO pFindInfo,
  61858.          PCCRL_CONTEXT pPrevCrlContext,
  61859.          DWORD dwFlags,
  61860.             void **ppvStoreProvFindInfo,
  61861.              PCCRL_CONTEXT *ppProvCrlContext
  61862.     );
  61863.  
  61864. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_FREE_FIND_CRL)(
  61865.             HCERTSTOREPROV hStoreProv,
  61866.          PCCRL_CONTEXT pCrlContext,
  61867.          void *pvStoreProvFindInfo,
  61868.          DWORD dwFlags
  61869.     );
  61870.  
  61871. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_GET_CRL_PROPERTY)(
  61872.             HCERTSTOREPROV hStoreProv,
  61873.          PCCRL_CONTEXT pCrlContext,
  61874.          DWORD dwPropId,
  61875.          DWORD dwFlags,
  61876.                                                   void *pvData,
  61877.             DWORD *pcbData
  61878.     );
  61879.  
  61880. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_FIND_CTL)(
  61881.          HCERTSTOREPROV hStoreProv,
  61882.          PCCERT_STORE_PROV_FIND_INFO pFindInfo,
  61883.          PCCTL_CONTEXT pPrevCtlContext,
  61884.          DWORD dwFlags,
  61885.             void **ppvStoreProvFindInfo,
  61886.              PCCTL_CONTEXT *ppProvCtlContext
  61887.     );
  61888.  
  61889. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_FREE_FIND_CTL)(
  61890.             HCERTSTOREPROV hStoreProv,
  61891.          PCCTL_CONTEXT pCtlContext,
  61892.          void *pvStoreProvFindInfo,
  61893.          DWORD dwFlags
  61894.     );
  61895.  
  61896. typedef BOOL (__stdcall *PFN_CERT_STORE_PROV_GET_CTL_PROPERTY)(
  61897.             HCERTSTOREPROV hStoreProv,
  61898.          PCCTL_CONTEXT pCtlContext,
  61899.          DWORD dwPropId,
  61900.          DWORD dwFlags,
  61901.                                                   void *pvData,
  61902.             DWORD *pcbData
  61903.     );
  61904.  
  61905.  
  61906.  
  61907.  
  61908.  
  61909. __declspec(dllimport)
  61910. HCERTSTORE
  61911. __stdcall
  61912. CertDuplicateStore(
  61913.          HCERTSTORE hCertStore
  61914.     );
  61915. # 10798 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61916. __declspec(dllimport)
  61917. BOOL
  61918. __stdcall
  61919. CertSaveStore(
  61920.          HCERTSTORE hCertStore,
  61921.          DWORD dwEncodingType,
  61922.          DWORD dwSaveAs,
  61923.          DWORD dwSaveTo,
  61924.             void *pvSaveToPara,
  61925.          DWORD dwFlags
  61926.     );
  61927. # 10840 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61928. __declspec(dllimport)
  61929. BOOL
  61930. __stdcall
  61931. CertCloseStore(
  61932.              HCERTSTORE hCertStore,
  61933.          DWORD dwFlags
  61934.     );
  61935. # 10860 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61936. __declspec(dllimport)
  61937. PCCERT_CONTEXT
  61938. __stdcall
  61939. CertGetSubjectCertificateFromStore(
  61940.          HCERTSTORE hCertStore,
  61941.          DWORD dwCertEncodingType,
  61942.          PCERT_INFO pCertId
  61943.  
  61944.     );
  61945. # 10886 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61946. __declspec(dllimport)
  61947. PCCERT_CONTEXT
  61948. __stdcall
  61949. CertEnumCertificatesInStore(
  61950.          HCERTSTORE hCertStore,
  61951.              PCCERT_CONTEXT pPrevCertContext
  61952.     );
  61953. # 10918 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61954. __declspec(dllimport)
  61955. PCCERT_CONTEXT
  61956. __stdcall
  61957. CertFindCertificateInStore(
  61958.          HCERTSTORE hCertStore,
  61959.          DWORD dwCertEncodingType,
  61960.          DWORD dwFindFlags,
  61961.          DWORD dwFindType,
  61962.              const void *pvFindPara,
  61963.              PCCERT_CONTEXT pPrevCertContext
  61964.     );
  61965. # 11279 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61966. __declspec(dllimport)
  61967. PCCERT_CONTEXT
  61968. __stdcall
  61969. CertGetIssuerCertificateFromStore(
  61970.          HCERTSTORE hCertStore,
  61971.          PCCERT_CONTEXT pSubjectContext,
  61972.              PCCERT_CONTEXT pPrevIssuerContext,
  61973.             DWORD *pdwFlags
  61974.     );
  61975. # 11299 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61976. __declspec(dllimport)
  61977. BOOL
  61978. __stdcall
  61979. CertVerifySubjectCertificateContext(
  61980.          PCCERT_CONTEXT pSubject,
  61981.              PCCERT_CONTEXT pIssuer,
  61982.             DWORD *pdwFlags
  61983.     );
  61984.  
  61985.  
  61986.  
  61987.  
  61988. __declspec(dllimport)
  61989. PCCERT_CONTEXT
  61990. __stdcall
  61991. CertDuplicateCertificateContext(
  61992.              PCCERT_CONTEXT pCertContext
  61993.     );
  61994. # 11332 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  61995. __declspec(dllimport)
  61996. PCCERT_CONTEXT
  61997. __stdcall
  61998. CertCreateCertificateContext(
  61999.          DWORD dwCertEncodingType,
  62000.                                     const BYTE *pbCertEncoded,
  62001.          DWORD cbCertEncoded
  62002.     );
  62003.  
  62004.  
  62005.  
  62006.  
  62007.  
  62008.  
  62009.  
  62010. __declspec(dllimport)
  62011. BOOL
  62012. __stdcall
  62013. CertFreeCertificateContext(
  62014.              PCCERT_CONTEXT pCertContext
  62015.     );
  62016. # 11495 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62017. __declspec(dllimport)
  62018. BOOL
  62019. __stdcall
  62020. CertSetCertificateContextProperty(
  62021.          PCCERT_CONTEXT pCertContext,
  62022.          DWORD dwPropId,
  62023.          DWORD dwFlags,
  62024.              const void *pvData
  62025.     );
  62026. # 11572 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62027. __declspec(dllimport)
  62028. BOOL
  62029. __stdcall
  62030. CertGetCertificateContextProperty(
  62031.          PCCERT_CONTEXT pCertContext,
  62032.          DWORD dwPropId,
  62033.                                                   void *pvData,
  62034.             DWORD *pcbData
  62035.     );
  62036. # 11596 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62037. __declspec(dllimport)
  62038. DWORD
  62039. __stdcall
  62040. CertEnumCertificateContextProperties(
  62041.          PCCERT_CONTEXT pCertContext,
  62042.          DWORD dwPropId
  62043.     );
  62044.  
  62045.  
  62046. #pragma endregion
  62047.  
  62048. #pragma region Desktop Family or OneCore Family
  62049. # 11626 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62050. __declspec(dllimport)
  62051.  
  62052. BOOL
  62053. __stdcall
  62054. CertCreateCTLEntryFromCertificateContextProperties(
  62055.          PCCERT_CONTEXT pCertContext,
  62056.          DWORD cOptAttr,
  62057.                              PCRYPT_ATTRIBUTE rgOptAttr,
  62058.          DWORD dwFlags,
  62059.                void *pvReserved,
  62060.                                                           PCTL_ENTRY pCtlEntry,
  62061.             DWORD *pcbCtlEntry
  62062.     );
  62063. # 11655 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62064. __declspec(dllimport)
  62065. BOOL
  62066. __stdcall
  62067. CertSetCertificateContextPropertiesFromCTLEntry(
  62068.          PCCERT_CONTEXT pCertContext,
  62069.          PCTL_ENTRY pCtlEntry,
  62070.          DWORD dwFlags
  62071.     );
  62072.  
  62073.  
  62074. #pragma endregion
  62075.  
  62076. #pragma region Application Family or OneCore Family
  62077. # 11722 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62078. __declspec(dllimport)
  62079. PCCRL_CONTEXT
  62080. __stdcall
  62081. CertGetCRLFromStore(
  62082.          HCERTSTORE hCertStore,
  62083.              PCCERT_CONTEXT pIssuerContext,
  62084.              PCCRL_CONTEXT pPrevCrlContext,
  62085.             DWORD *pdwFlags
  62086.     );
  62087. # 11748 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62088. __declspec(dllimport)
  62089. PCCRL_CONTEXT
  62090. __stdcall
  62091. CertEnumCRLsInStore(
  62092.          HCERTSTORE hCertStore,
  62093.              PCCRL_CONTEXT pPrevCrlContext
  62094.     );
  62095. # 11779 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62096. __declspec(dllimport)
  62097. PCCRL_CONTEXT
  62098. __stdcall
  62099. CertFindCRLInStore(
  62100.          HCERTSTORE hCertStore,
  62101.          DWORD dwCertEncodingType,
  62102.          DWORD dwFindFlags,
  62103.          DWORD dwFindType,
  62104.              const void *pvFindPara,
  62105.              PCCRL_CONTEXT pPrevCrlContext
  62106.     );
  62107. # 11865 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62108. typedef struct _CRL_FIND_ISSUED_FOR_PARA {
  62109.     PCCERT_CONTEXT pSubjectCert;
  62110.     PCCERT_CONTEXT pIssuerCert;
  62111. } CRL_FIND_ISSUED_FOR_PARA, *PCRL_FIND_ISSUED_FOR_PARA;
  62112. # 11883 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62113. __declspec(dllimport)
  62114. PCCRL_CONTEXT
  62115. __stdcall
  62116. CertDuplicateCRLContext(
  62117.              PCCRL_CONTEXT pCrlContext
  62118.     );
  62119. # 11904 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62120. __declspec(dllimport)
  62121. PCCRL_CONTEXT
  62122. __stdcall
  62123. CertCreateCRLContext(
  62124.          DWORD dwCertEncodingType,
  62125.                                    const BYTE *pbCrlEncoded,
  62126.          DWORD cbCrlEncoded
  62127.     );
  62128.  
  62129.  
  62130.  
  62131.  
  62132.  
  62133.  
  62134.  
  62135. __declspec(dllimport)
  62136. BOOL
  62137. __stdcall
  62138. CertFreeCRLContext(
  62139.              PCCRL_CONTEXT pCrlContext
  62140.     );
  62141.  
  62142.  
  62143.  
  62144.  
  62145.  
  62146.  
  62147. __declspec(dllimport)
  62148. BOOL
  62149. __stdcall
  62150. CertSetCRLContextProperty(
  62151.          PCCRL_CONTEXT pCrlContext,
  62152.          DWORD dwPropId,
  62153.          DWORD dwFlags,
  62154.              const void *pvData
  62155.     );
  62156. # 11949 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62157. __declspec(dllimport)
  62158. BOOL
  62159. __stdcall
  62160. CertGetCRLContextProperty(
  62161.          PCCRL_CONTEXT pCrlContext,
  62162.          DWORD dwPropId,
  62163.                                                   void *pvData,
  62164.             DWORD *pcbData
  62165.     );
  62166. # 11969 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62167. __declspec(dllimport)
  62168. DWORD
  62169. __stdcall
  62170. CertEnumCRLContextProperties(
  62171.          PCCRL_CONTEXT pCrlContext,
  62172.          DWORD dwPropId
  62173.     );
  62174. # 11990 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62175. __declspec(dllimport)
  62176. BOOL
  62177. __stdcall
  62178. CertFindCertificateInCRL(
  62179.          PCCERT_CONTEXT pCert,
  62180.          PCCRL_CONTEXT pCrlContext,
  62181.          DWORD dwFlags,
  62182.                void *pvReserved,
  62183.                               PCRL_ENTRY *ppCrlEntry
  62184.     );
  62185. # 12013 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62186. __declspec(dllimport)
  62187. BOOL
  62188. __stdcall
  62189. CertIsValidCRLForCertificate(
  62190.          PCCERT_CONTEXT pCert,
  62191.          PCCRL_CONTEXT pCrl,
  62192.          DWORD dwFlags,
  62193.                void *pvReserved
  62194.     );
  62195. # 12081 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62196. __declspec(dllimport)
  62197.  
  62198. BOOL
  62199. __stdcall
  62200. CertAddEncodedCertificateToStore(
  62201.              HCERTSTORE hCertStore,
  62202.          DWORD dwCertEncodingType,
  62203.                                     const BYTE *pbCertEncoded,
  62204.          DWORD cbCertEncoded,
  62205.          DWORD dwAddDisposition,
  62206.                  PCCERT_CONTEXT *ppCertContext
  62207.     );
  62208. # 12151 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62209. __declspec(dllimport)
  62210.  
  62211. BOOL
  62212. __stdcall
  62213. CertAddCertificateContextToStore(
  62214.              HCERTSTORE hCertStore,
  62215.          PCCERT_CONTEXT pCertContext,
  62216.          DWORD dwAddDisposition,
  62217.                  PCCERT_CONTEXT *ppStoreContext
  62218.     );
  62219. # 12205 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62220. __declspec(dllimport)
  62221.  
  62222. BOOL
  62223. __stdcall
  62224. CertAddSerializedElementToStore(
  62225.              HCERTSTORE hCertStore,
  62226.                                 const BYTE *pbElement,
  62227.          DWORD cbElement,
  62228.          DWORD dwAddDisposition,
  62229.          DWORD dwFlags,
  62230.          DWORD dwContextTypeFlags,
  62231.               DWORD *pdwContextType,
  62232.                  const void **ppvContext
  62233.     );
  62234. # 12235 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62235. __declspec(dllimport)
  62236. BOOL
  62237. __stdcall
  62238. CertDeleteCertificateFromStore(
  62239.          PCCERT_CONTEXT pCertContext
  62240.     );
  62241. # 12258 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62242. __declspec(dllimport)
  62243.  
  62244. BOOL
  62245. __stdcall
  62246. CertAddEncodedCRLToStore(
  62247.              HCERTSTORE hCertStore,
  62248.          DWORD dwCertEncodingType,
  62249.                                    const BYTE *pbCrlEncoded,
  62250.          DWORD cbCrlEncoded,
  62251.          DWORD dwAddDisposition,
  62252.                  PCCRL_CONTEXT *ppCrlContext
  62253.     );
  62254. # 12291 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62255. __declspec(dllimport)
  62256.  
  62257. BOOL
  62258. __stdcall
  62259. CertAddCRLContextToStore(
  62260.              HCERTSTORE hCertStore,
  62261.          PCCRL_CONTEXT pCrlContext,
  62262.          DWORD dwAddDisposition,
  62263.                  PCCRL_CONTEXT *ppStoreContext
  62264.     );
  62265. # 12314 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62266. __declspec(dllimport)
  62267. BOOL
  62268. __stdcall
  62269. CertDeleteCRLFromStore(
  62270.          PCCRL_CONTEXT pCrlContext
  62271.     );
  62272.  
  62273.  
  62274.  
  62275.  
  62276.  
  62277. __declspec(dllimport)
  62278. BOOL
  62279. __stdcall
  62280. CertSerializeCertificateStoreElement(
  62281.          PCCERT_CONTEXT pCertContext,
  62282.          DWORD dwFlags,
  62283.                                                         BYTE *pbElement,
  62284.             DWORD *pcbElement
  62285.     );
  62286.  
  62287.  
  62288.  
  62289.  
  62290.  
  62291. __declspec(dllimport)
  62292. BOOL
  62293. __stdcall
  62294. CertSerializeCRLStoreElement(
  62295.          PCCRL_CONTEXT pCrlContext,
  62296.          DWORD dwFlags,
  62297.                                                         BYTE *pbElement,
  62298.             DWORD *pcbElement
  62299.     );
  62300. # 12358 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62301. __declspec(dllimport)
  62302. PCCTL_CONTEXT
  62303. __stdcall
  62304. CertDuplicateCTLContext(
  62305.              PCCTL_CONTEXT pCtlContext
  62306.     );
  62307. # 12379 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62308. __declspec(dllimport)
  62309. PCCTL_CONTEXT
  62310. __stdcall
  62311. CertCreateCTLContext(
  62312.          DWORD dwMsgAndCertEncodingType,
  62313.                                    const BYTE *pbCtlEncoded,
  62314.          DWORD cbCtlEncoded
  62315.     );
  62316.  
  62317.  
  62318.  
  62319.  
  62320.  
  62321.  
  62322.  
  62323. __declspec(dllimport)
  62324. BOOL
  62325. __stdcall
  62326. CertFreeCTLContext(
  62327.              PCCTL_CONTEXT pCtlContext
  62328.     );
  62329.  
  62330.  
  62331.  
  62332.  
  62333.  
  62334.  
  62335. __declspec(dllimport)
  62336. BOOL
  62337. __stdcall
  62338. CertSetCTLContextProperty(
  62339.          PCCTL_CONTEXT pCtlContext,
  62340.          DWORD dwPropId,
  62341.          DWORD dwFlags,
  62342.              const void *pvData
  62343.     );
  62344. # 12424 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62345. __declspec(dllimport)
  62346. BOOL
  62347. __stdcall
  62348. CertGetCTLContextProperty(
  62349.          PCCTL_CONTEXT pCtlContext,
  62350.          DWORD dwPropId,
  62351.                                                   void *pvData,
  62352.             DWORD *pcbData
  62353.     );
  62354.  
  62355.  
  62356.  
  62357.  
  62358. __declspec(dllimport)
  62359. DWORD
  62360. __stdcall
  62361. CertEnumCTLContextProperties(
  62362.          PCCTL_CONTEXT pCtlContext,
  62363.          DWORD dwPropId
  62364.     );
  62365. # 12461 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62366. __declspec(dllimport)
  62367. PCCTL_CONTEXT
  62368. __stdcall
  62369. CertEnumCTLsInStore(
  62370.          HCERTSTORE hCertStore,
  62371.              PCCTL_CONTEXT pPrevCtlContext
  62372.     );
  62373. # 12487 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62374. __declspec(dllimport)
  62375. PCTL_ENTRY
  62376. __stdcall
  62377. CertFindSubjectInCTL(
  62378.          DWORD dwEncodingType,
  62379.          DWORD dwSubjectType,
  62380.          void *pvSubject,
  62381.          PCCTL_CONTEXT pCtlContext,
  62382.          DWORD dwFlags
  62383.     );
  62384.  
  62385.  
  62386.  
  62387.  
  62388.  
  62389.  
  62390.  
  62391. typedef struct _CTL_ANY_SUBJECT_INFO {
  62392.     CRYPT_ALGORITHM_IDENTIFIER SubjectAlgorithm;
  62393.     CRYPT_DATA_BLOB SubjectIdentifier;
  62394. } CTL_ANY_SUBJECT_INFO, *PCTL_ANY_SUBJECT_INFO;
  62395. # 12532 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62396. __declspec(dllimport)
  62397. PCCTL_CONTEXT
  62398. __stdcall
  62399. CertFindCTLInStore(
  62400.          HCERTSTORE hCertStore,
  62401.          DWORD dwMsgAndCertEncodingType,
  62402.          DWORD dwFindFlags,
  62403.          DWORD dwFindType,
  62404.              const void *pvFindPara,
  62405.              PCCTL_CONTEXT pPrevCtlContext
  62406.     );
  62407. # 12551 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62408. typedef struct _CTL_FIND_USAGE_PARA {
  62409.     DWORD cbSize;
  62410.     CTL_USAGE SubjectUsage;
  62411.     CRYPT_DATA_BLOB ListIdentifier;
  62412.     PCERT_INFO pSigner;
  62413. } CTL_FIND_USAGE_PARA, *PCTL_FIND_USAGE_PARA;
  62414.  
  62415.  
  62416.  
  62417.  
  62418.  
  62419.  
  62420.  
  62421. typedef struct _CTL_FIND_SUBJECT_PARA {
  62422.     DWORD cbSize;
  62423.     PCTL_FIND_USAGE_PARA pUsagePara;
  62424.     DWORD dwSubjectType;
  62425.     void *pvSubject;
  62426. } CTL_FIND_SUBJECT_PARA, *PCTL_FIND_SUBJECT_PARA;
  62427. # 12637 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62428. __declspec(dllimport)
  62429.  
  62430. BOOL
  62431. __stdcall
  62432. CertAddEncodedCTLToStore(
  62433.              HCERTSTORE hCertStore,
  62434.          DWORD dwMsgAndCertEncodingType,
  62435.                                    const BYTE *pbCtlEncoded,
  62436.          DWORD cbCtlEncoded,
  62437.          DWORD dwAddDisposition,
  62438.                  PCCTL_CONTEXT *ppCtlContext
  62439.     );
  62440. # 12670 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62441. __declspec(dllimport)
  62442.  
  62443. BOOL
  62444. __stdcall
  62445. CertAddCTLContextToStore(
  62446.              HCERTSTORE hCertStore,
  62447.          PCCTL_CONTEXT pCtlContext,
  62448.          DWORD dwAddDisposition,
  62449.                  PCCTL_CONTEXT *ppStoreContext
  62450.     );
  62451.  
  62452.  
  62453.  
  62454.  
  62455. __declspec(dllimport)
  62456. BOOL
  62457. __stdcall
  62458. CertSerializeCTLStoreElement(
  62459.          PCCTL_CONTEXT pCtlContext,
  62460.          DWORD dwFlags,
  62461.                                                         BYTE *pbElement,
  62462.             DWORD *pcbElement
  62463.     );
  62464. # 12706 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62465. __declspec(dllimport)
  62466. BOOL
  62467. __stdcall
  62468. CertDeleteCTLFromStore(
  62469.          PCCTL_CONTEXT pCtlContext
  62470.     );
  62471.  
  62472.  
  62473. __declspec(dllimport)
  62474.  
  62475. BOOL
  62476. __stdcall
  62477. CertAddCertificateLinkToStore(
  62478.          HCERTSTORE hCertStore,
  62479.          PCCERT_CONTEXT pCertContext,
  62480.          DWORD dwAddDisposition,
  62481.                  PCCERT_CONTEXT *ppStoreContext
  62482.     );
  62483.  
  62484. __declspec(dllimport)
  62485.  
  62486. BOOL
  62487. __stdcall
  62488. CertAddCRLLinkToStore(
  62489.          HCERTSTORE hCertStore,
  62490.          PCCRL_CONTEXT pCrlContext,
  62491.          DWORD dwAddDisposition,
  62492.                  PCCRL_CONTEXT *ppStoreContext
  62493.     );
  62494.  
  62495. __declspec(dllimport)
  62496.  
  62497. BOOL
  62498. __stdcall
  62499. CertAddCTLLinkToStore(
  62500.          HCERTSTORE hCertStore,
  62501.          PCCTL_CONTEXT pCtlContext,
  62502.          DWORD dwAddDisposition,
  62503.                  PCCTL_CONTEXT *ppStoreContext
  62504.     );
  62505.  
  62506. __declspec(dllimport)
  62507. BOOL
  62508. __stdcall
  62509. CertAddStoreToCollection(
  62510.          HCERTSTORE hCollectionStore,
  62511.              HCERTSTORE hSiblingStore,
  62512.          DWORD dwUpdateFlags,
  62513.          DWORD dwPriority
  62514.     );
  62515.  
  62516. __declspec(dllimport)
  62517. void
  62518. __stdcall
  62519. CertRemoveStoreFromCollection(
  62520.          HCERTSTORE hCollectionStore,
  62521.          HCERTSTORE hSiblingStore
  62522.     );
  62523.  
  62524.  
  62525. __declspec(dllimport)
  62526. BOOL
  62527. __stdcall
  62528. CertControlStore(
  62529.          HCERTSTORE hCertStore,
  62530.          DWORD dwFlags,
  62531.          DWORD dwCtrlType,
  62532.              void const *pvCtrlPara
  62533.     );
  62534. # 12902 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62535. __declspec(dllimport)
  62536. BOOL
  62537. __stdcall
  62538. CertSetStoreProperty(
  62539.          HCERTSTORE hCertStore,
  62540.          DWORD dwPropId,
  62541.          DWORD dwFlags,
  62542.              const void *pvData
  62543.     );
  62544. # 12925 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62545. __declspec(dllimport)
  62546.  
  62547. BOOL
  62548. __stdcall
  62549. CertGetStoreProperty(
  62550.          HCERTSTORE hCertStore,
  62551.          DWORD dwPropId,
  62552.                                                   void *pvData,
  62553.             DWORD *pcbData
  62554.     );
  62555. # 12947 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62556. typedef BOOL (__stdcall *PFN_CERT_CREATE_CONTEXT_SORT_FUNC)(
  62557.          DWORD cbTotalEncoded,
  62558.          DWORD cbRemainEncoded,
  62559.          DWORD cEntry,
  62560.                 void *pvSort
  62561.     );
  62562.  
  62563. typedef struct _CERT_CREATE_CONTEXT_PARA {
  62564.     DWORD cbSize;
  62565.     PFN_CRYPT_FREE pfnFree;
  62566.     void *pvFree;
  62567.  
  62568.  
  62569.  
  62570.     PFN_CERT_CREATE_CONTEXT_SORT_FUNC pfnSort;
  62571.     void *pvSort;
  62572. } CERT_CREATE_CONTEXT_PARA, *PCERT_CREATE_CONTEXT_PARA;
  62573. # 12998 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62574. __declspec(dllimport)
  62575. const void *
  62576. __stdcall
  62577. CertCreateContext(
  62578.          DWORD dwContextType,
  62579.          DWORD dwEncodingType,
  62580.                                 const BYTE *pbEncoded,
  62581.          DWORD cbEncoded,
  62582.          DWORD dwFlags,
  62583.              PCERT_CREATE_CONTEXT_PARA pCreatePara
  62584.     );
  62585. # 13058 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62586. typedef struct _CERT_SYSTEM_STORE_INFO {
  62587.     DWORD cbSize;
  62588. } CERT_SYSTEM_STORE_INFO, *PCERT_SYSTEM_STORE_INFO;
  62589. # 13104 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62590. typedef struct _CERT_PHYSICAL_STORE_INFO {
  62591.     DWORD cbSize;
  62592.     LPSTR pszOpenStoreProvider;
  62593.     DWORD dwOpenEncodingType;
  62594.     DWORD dwOpenFlags;
  62595.     CRYPT_DATA_BLOB OpenParameters;
  62596.     DWORD dwFlags;
  62597.     DWORD dwPriority;
  62598. } CERT_PHYSICAL_STORE_INFO, *PCERT_PHYSICAL_STORE_INFO;
  62599. # 13124 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62600. #pragma endregion
  62601.  
  62602. #pragma region Desktop Family or OneCore Family
  62603. # 13156 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62604. __declspec(dllimport)
  62605. BOOL
  62606. __stdcall
  62607. CertRegisterSystemStore(
  62608.          const void *pvSystemStore,
  62609.          DWORD dwFlags,
  62610.              PCERT_SYSTEM_STORE_INFO pStoreInfo,
  62611.                void *pvReserved
  62612.     );
  62613. # 13182 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62614. __declspec(dllimport)
  62615. BOOL
  62616. __stdcall
  62617. CertRegisterPhysicalStore(
  62618.          const void *pvSystemStore,
  62619.          DWORD dwFlags,
  62620.          LPCWSTR pwszStoreName,
  62621.          PCERT_PHYSICAL_STORE_INFO pStoreInfo,
  62622.                void *pvReserved
  62623.     );
  62624. # 13208 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62625. __declspec(dllimport)
  62626. BOOL
  62627. __stdcall
  62628. CertUnregisterSystemStore(
  62629.          const void *pvSystemStore,
  62630.          DWORD dwFlags
  62631.     );
  62632. # 13231 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62633. __declspec(dllimport)
  62634. BOOL
  62635. __stdcall
  62636. CertUnregisterPhysicalStore(
  62637.          const void *pvSystemStore,
  62638.          DWORD dwFlags,
  62639.          LPCWSTR pwszStoreName
  62640.     );
  62641.  
  62642.  
  62643. #pragma endregion
  62644.  
  62645. #pragma region Application Family or OneCore Family
  62646. # 13263 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62647. typedef BOOL (__stdcall *PFN_CERT_ENUM_SYSTEM_STORE_LOCATION)(
  62648.          LPCWSTR pwszStoreLocation,
  62649.          DWORD dwFlags,
  62650.                void *pvReserved,
  62651.                 void *pvArg
  62652.     );
  62653.  
  62654. typedef BOOL (__stdcall *PFN_CERT_ENUM_SYSTEM_STORE)(
  62655.          const void *pvSystemStore,
  62656.          DWORD dwFlags,
  62657.          PCERT_SYSTEM_STORE_INFO pStoreInfo,
  62658.                void *pvReserved,
  62659.                 void *pvArg
  62660.     );
  62661.  
  62662. typedef BOOL (__stdcall *PFN_CERT_ENUM_PHYSICAL_STORE)(
  62663.          const void *pvSystemStore,
  62664.          DWORD dwFlags,
  62665.          LPCWSTR pwszStoreName,
  62666.          PCERT_PHYSICAL_STORE_INFO pStoreInfo,
  62667.                void *pvReserved,
  62668.                 void *pvArg
  62669.     );
  62670. # 13306 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62671. __declspec(dllimport)
  62672. BOOL
  62673. __stdcall
  62674. CertEnumSystemStoreLocation(
  62675.          DWORD dwFlags,
  62676.                 void *pvArg,
  62677.                PFN_CERT_ENUM_SYSTEM_STORE_LOCATION pfnEnum
  62678.     );
  62679. # 13346 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62680. __declspec(dllimport)
  62681. BOOL
  62682. __stdcall
  62683. CertEnumSystemStore(
  62684.          DWORD dwFlags,
  62685.              void *pvSystemStoreLocationPara,
  62686.                 void *pvArg,
  62687.                PFN_CERT_ENUM_SYSTEM_STORE pfnEnum
  62688.     );
  62689. # 13372 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62690. __declspec(dllimport)
  62691. BOOL
  62692. __stdcall
  62693. CertEnumPhysicalStore(
  62694.          const void *pvSystemStore,
  62695.          DWORD dwFlags,
  62696.                 void *pvArg,
  62697.                PFN_CERT_ENUM_PHYSICAL_STORE pfnEnum
  62698.     );
  62699. # 13434 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62700. __declspec(dllimport)
  62701. BOOL
  62702. __stdcall
  62703. CertGetEnhancedKeyUsage(
  62704.          PCCERT_CONTEXT pCertContext,
  62705.          DWORD dwFlags,
  62706.                                                     PCERT_ENHKEY_USAGE pUsage,
  62707.             DWORD *pcbUsage
  62708.     );
  62709.  
  62710.  
  62711. #pragma endregion
  62712.  
  62713. #pragma region Desktop Family or OneCore Family
  62714.  
  62715.  
  62716.  
  62717.  
  62718.  
  62719. __declspec(dllimport)
  62720. BOOL
  62721. __stdcall
  62722. CertSetEnhancedKeyUsage(
  62723.          PCCERT_CONTEXT pCertContext,
  62724.              PCERT_ENHKEY_USAGE pUsage
  62725.     );
  62726.  
  62727.  
  62728.  
  62729.  
  62730. __declspec(dllimport)
  62731. BOOL
  62732. __stdcall
  62733. CertAddEnhancedKeyUsageIdentifier(
  62734.          PCCERT_CONTEXT pCertContext,
  62735.          LPCSTR pszUsageIdentifier
  62736.     );
  62737.  
  62738.  
  62739.  
  62740.  
  62741.  
  62742.  
  62743. __declspec(dllimport)
  62744. BOOL
  62745. __stdcall
  62746. CertRemoveEnhancedKeyUsageIdentifier(
  62747.          PCCERT_CONTEXT pCertContext,
  62748.          LPCSTR pszUsageIdentifier
  62749.     );
  62750.  
  62751.  
  62752. #pragma endregion
  62753.  
  62754. #pragma region Application Family or OneCore Family
  62755. # 13499 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62756. __declspec(dllimport)
  62757.  
  62758. BOOL
  62759. __stdcall
  62760. CertGetValidUsages(
  62761.          DWORD cCerts,
  62762.                        PCCERT_CONTEXT *rghCerts,
  62763.           int *cNumOIDs,
  62764.                                                   LPSTR *rghOIDs,
  62765.             DWORD *pcbOIDs);
  62766. # 13539 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62767. __declspec(dllimport)
  62768.  
  62769. BOOL
  62770. __stdcall
  62771. CryptMsgGetAndVerifySigner(
  62772.          HCRYPTMSG hCryptMsg,
  62773.          DWORD cSignerStore,
  62774.                                  HCERTSTORE *rghSignerStore,
  62775.          DWORD dwFlags,
  62776.                  PCCERT_CONTEXT *ppSigner,
  62777.                 DWORD *pdwSignerIndex
  62778.     );
  62779.  
  62780.  
  62781.  
  62782.  
  62783.  
  62784.  
  62785. #pragma endregion
  62786.  
  62787. #pragma region Desktop Family or OneCore Family
  62788. # 13571 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62789. __declspec(dllimport)
  62790. BOOL
  62791. __stdcall
  62792. CryptMsgSignCTL(
  62793.          DWORD dwMsgEncodingType,
  62794.                                    BYTE *pbCtlContent,
  62795.          DWORD cbCtlContent,
  62796.          PCMSG_SIGNED_ENCODE_INFO pSignInfo,
  62797.          DWORD dwFlags,
  62798.                                                         BYTE *pbEncoded,
  62799.             DWORD *pcbEncoded
  62800.     );
  62801. # 13600 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62802. __declspec(dllimport)
  62803. BOOL
  62804. __stdcall
  62805. CryptMsgEncodeAndSignCTL(
  62806.          DWORD dwMsgEncodingType,
  62807.          PCTL_INFO pCtlInfo,
  62808.          PCMSG_SIGNED_ENCODE_INFO pSignInfo,
  62809.          DWORD dwFlags,
  62810.                                                         BYTE *pbEncoded,
  62811.             DWORD *pcbEncoded
  62812.     );
  62813. # 13627 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62814. __declspec(dllimport)
  62815. BOOL
  62816. __stdcall
  62817. CertFindSubjectInSortedCTL(
  62818.          PCRYPT_DATA_BLOB pSubjectIdentifier,
  62819.          PCCTL_CONTEXT pCtlContext,
  62820.          DWORD dwFlags,
  62821.                void *pvReserved,
  62822.               PCRYPT_DER_BLOB pEncodedAttributes
  62823.     );
  62824. # 13651 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62825. __declspec(dllimport)
  62826. BOOL
  62827. __stdcall
  62828. CertEnumSubjectInSortedCTL(
  62829.          PCCTL_CONTEXT pCtlContext,
  62830.             void **ppvNextSubject,
  62831.               PCRYPT_DER_BLOB pSubjectIdentifier,
  62832.               PCRYPT_DER_BLOB pEncodedAttributes
  62833.     );
  62834.  
  62835.  
  62836.  
  62837.  
  62838.  
  62839.  
  62840.  
  62841. #pragma endregion
  62842.  
  62843. #pragma region Application Family or OneCore Family
  62844.  
  62845.  
  62846. typedef struct _CTL_VERIFY_USAGE_PARA {
  62847.     DWORD cbSize;
  62848.     CRYPT_DATA_BLOB ListIdentifier;
  62849.     DWORD cCtlStore;
  62850.     HCERTSTORE *rghCtlStore;
  62851.     DWORD cSignerStore;
  62852.     HCERTSTORE *rghSignerStore;
  62853. } CTL_VERIFY_USAGE_PARA, *PCTL_VERIFY_USAGE_PARA;
  62854.  
  62855. typedef struct _CTL_VERIFY_USAGE_STATUS {
  62856.     DWORD cbSize;
  62857.     DWORD dwError;
  62858.     DWORD dwFlags;
  62859.     PCCTL_CONTEXT *ppCtl;
  62860.     DWORD dwCtlEntryIndex;
  62861.     PCCERT_CONTEXT *ppSigner;
  62862.     DWORD dwSignerIndex;
  62863. } CTL_VERIFY_USAGE_STATUS, *PCTL_VERIFY_USAGE_STATUS;
  62864. # 13699 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62865. #pragma endregion
  62866.  
  62867. #pragma region Desktop Family or OneCore Family
  62868. # 13753 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62869. __declspec(dllimport)
  62870. BOOL
  62871. __stdcall
  62872. CertVerifyCTLUsage(
  62873.          DWORD dwEncodingType,
  62874.          DWORD dwSubjectType,
  62875.          void *pvSubject,
  62876.          PCTL_USAGE pSubjectUsage,
  62877.          DWORD dwFlags,
  62878.              PCTL_VERIFY_USAGE_PARA pVerifyUsagePara,
  62879.             PCTL_VERIFY_USAGE_STATUS pVerifyUsageStatus
  62880.     );
  62881.  
  62882.  
  62883.  
  62884.  
  62885.  
  62886.  
  62887.  
  62888. #pragma endregion
  62889.  
  62890. #pragma region Application Family or OneCore Family
  62891.  
  62892.  
  62893.  
  62894.  
  62895.  
  62896.  
  62897. typedef struct _CERT_REVOCATION_CRL_INFO {
  62898.     DWORD cbSize;
  62899.     PCCRL_CONTEXT pBaseCrlContext;
  62900.     PCCRL_CONTEXT pDeltaCrlContext;
  62901.  
  62902.  
  62903.  
  62904.     PCRL_ENTRY pCrlEntry;
  62905.     BOOL fDeltaCrlEntry;
  62906. } CERT_REVOCATION_CRL_INFO, *PCERT_REVOCATION_CRL_INFO;
  62907. # 13801 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62908. typedef struct _CERT_REVOCATION_CHAIN_PARA
  62909.     CERT_REVOCATION_CHAIN_PARA,
  62910.     *PCERT_REVOCATION_CHAIN_PARA;
  62911. # 13822 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62912. typedef struct _CERT_REVOCATION_PARA {
  62913.     DWORD cbSize;
  62914.     PCCERT_CONTEXT pIssuerCert;
  62915.     DWORD cCertStore;
  62916.     HCERTSTORE *rgCertStore;
  62917.     HCERTSTORE hCrlStore;
  62918.     LPFILETIME pftTimeToUse;
  62919. # 13865 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62920. } CERT_REVOCATION_PARA, *PCERT_REVOCATION_PARA;
  62921. # 13883 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62922. typedef struct _CERT_REVOCATION_STATUS {
  62923.     DWORD cbSize;
  62924.     DWORD dwIndex;
  62925.     DWORD dwError;
  62926.     DWORD dwReason;
  62927. # 13897 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62928.     BOOL fHasFreshnessTime;
  62929.     DWORD dwFreshnessTime;
  62930. } CERT_REVOCATION_STATUS, *PCERT_REVOCATION_STATUS;
  62931.  
  62932.  
  62933. #pragma endregion
  62934.  
  62935. #pragma region Desktop Family or OneCore Family
  62936. # 13984 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62937. __declspec(dllimport)
  62938. BOOL
  62939. __stdcall
  62940. CertVerifyRevocation(
  62941.          DWORD dwEncodingType,
  62942.          DWORD dwRevType,
  62943.          DWORD cContext,
  62944.                          PVOID rgpvContext[],
  62945.          DWORD dwFlags,
  62946.              PCERT_REVOCATION_PARA pRevPara,
  62947.             PCERT_REVOCATION_STATUS pRevStatus
  62948.     );
  62949.  
  62950.  
  62951. #pragma endregion
  62952.  
  62953. #pragma region Application Family or OneCore Family
  62954. # 14072 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62955. BOOL
  62956. __stdcall
  62957. CertCompareIntegerBlob(
  62958.          PCRYPT_INTEGER_BLOB pInt1,
  62959.          PCRYPT_INTEGER_BLOB pInt2
  62960.     );
  62961. # 14087 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62962. __declspec(dllimport)
  62963. BOOL
  62964. __stdcall
  62965. CertCompareCertificate(
  62966.          DWORD dwCertEncodingType,
  62967.          PCERT_INFO pCertId1,
  62968.          PCERT_INFO pCertId2
  62969.     );
  62970.  
  62971.  
  62972.  
  62973.  
  62974.  
  62975.  
  62976. __declspec(dllimport)
  62977. BOOL
  62978. __stdcall
  62979. CertCompareCertificateName(
  62980.          DWORD dwCertEncodingType,
  62981.          PCERT_NAME_BLOB pCertName1,
  62982.          PCERT_NAME_BLOB pCertName2
  62983.     );
  62984.  
  62985.  
  62986. #pragma endregion
  62987.  
  62988. #pragma region Desktop Family or OneCore Family
  62989. # 14134 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  62990. __declspec(dllimport)
  62991. BOOL
  62992. __stdcall
  62993. CertIsRDNAttrsInCertificateName(
  62994.          DWORD dwCertEncodingType,
  62995.          DWORD dwFlags,
  62996.          PCERT_NAME_BLOB pCertName,
  62997.          PCERT_RDN pRDN
  62998.     );
  62999. # 14152 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63000. __declspec(dllimport)
  63001. BOOL
  63002. __stdcall
  63003. CertComparePublicKeyInfo(
  63004.          DWORD dwCertEncodingType,
  63005.          PCERT_PUBLIC_KEY_INFO pPublicKey1,
  63006.          PCERT_PUBLIC_KEY_INFO pPublicKey2
  63007.     );
  63008.  
  63009.  
  63010. #pragma endregion
  63011.  
  63012. #pragma region Application Family or OneCore Family
  63013.  
  63014.  
  63015.  
  63016.  
  63017.  
  63018.  
  63019.  
  63020. __declspec(dllimport)
  63021. DWORD
  63022. __stdcall
  63023. CertGetPublicKeyLength(
  63024.          DWORD dwCertEncodingType,
  63025.          PCERT_PUBLIC_KEY_INFO pPublicKey
  63026.     );
  63027.  
  63028.  
  63029. #pragma endregion
  63030.  
  63031. #pragma region Desktop Family or OneCore Family
  63032. # 14195 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63033. __declspec(dllimport)
  63034.  
  63035. BOOL
  63036. __stdcall
  63037. CryptVerifyCertificateSignature(
  63038.              HCRYPTPROV_LEGACY hCryptProv,
  63039.          DWORD dwCertEncodingType,
  63040.                                 const BYTE *pbEncoded,
  63041.          DWORD cbEncoded,
  63042.          PCERT_PUBLIC_KEY_INFO pPublicKey
  63043.     );
  63044. # 14232 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63045. __declspec(dllimport)
  63046.  
  63047. BOOL
  63048. __stdcall
  63049. CryptVerifyCertificateSignatureEx(
  63050.              HCRYPTPROV_LEGACY hCryptProv,
  63051.          DWORD dwCertEncodingType,
  63052.          DWORD dwSubjectType,
  63053.          void *pvSubject,
  63054.          DWORD dwIssuerType,
  63055.              void *pvIssuer,
  63056.          DWORD dwFlags,
  63057.                 void *pvExtra
  63058.     );
  63059.  
  63060.  
  63061. #pragma endregion
  63062.  
  63063. #pragma region Application Family or OneCore Family
  63064. # 14312 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63065. typedef struct _CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO {
  63066.  
  63067.     CRYPT_DATA_BLOB CertSignHashCNGAlgPropData;
  63068.  
  63069.  
  63070.     CRYPT_DATA_BLOB CertIssuerPubKeyBitLengthPropData;
  63071. } CRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO,
  63072.     *PCRYPT_VERIFY_CERT_SIGN_STRONG_PROPERTIES_INFO;
  63073.  
  63074.  
  63075. typedef struct _CRYPT_VERIFY_CERT_SIGN_WEAK_HASH_INFO {
  63076.     DWORD cCNGHashAlgid;
  63077.     PCWSTR *rgpwszCNGHashAlgid;
  63078.  
  63079.  
  63080.  
  63081.     DWORD dwWeakIndex;
  63082. } CRYPT_VERIFY_CERT_SIGN_WEAK_HASH_INFO,
  63083.     *PCRYPT_VERIFY_CERT_SIGN_WEAK_HASH_INFO;
  63084.  
  63085.  
  63086. #pragma endregion
  63087.  
  63088. #pragma region Desktop Family or OneCore Family
  63089. # 14354 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63090. __declspec(dllimport)
  63091. BOOL
  63092. __stdcall
  63093. CertIsStrongHashToSign(
  63094.          PCCERT_STRONG_SIGN_PARA pStrongSignPara,
  63095.          LPCWSTR pwszCNGHashAlgid,
  63096.              PCCERT_CONTEXT pSigningCert
  63097.     );
  63098. # 14370 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63099. __declspec(dllimport)
  63100. BOOL
  63101. __stdcall
  63102. CryptHashToBeSigned(
  63103.              HCRYPTPROV_LEGACY hCryptProv,
  63104.          DWORD dwCertEncodingType,
  63105.                                 const BYTE *pbEncoded,
  63106.          DWORD cbEncoded,
  63107.                                                                   BYTE *pbComputedHash,
  63108.             DWORD *pcbComputedHash
  63109.     );
  63110. # 14391 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63111. __declspec(dllimport)
  63112. BOOL
  63113. __stdcall
  63114. CryptHashCertificate(
  63115.              HCRYPTPROV_LEGACY hCryptProv,
  63116.          ALG_ID Algid,
  63117.          DWORD dwFlags,
  63118.                                 const BYTE *pbEncoded,
  63119.          DWORD cbEncoded,
  63120.                                                                   BYTE *pbComputedHash,
  63121.             DWORD *pcbComputedHash
  63122.     );
  63123.  
  63124.  
  63125. #pragma endregion
  63126.  
  63127. #pragma region Application Family or OneCore Family
  63128.  
  63129.  
  63130.  
  63131.  
  63132.  
  63133.  
  63134.  
  63135. __declspec(dllimport)
  63136.  
  63137. BOOL
  63138. __stdcall
  63139. CryptHashCertificate2(
  63140.          LPCWSTR pwszCNGHashAlgid,
  63141.          DWORD dwFlags,
  63142.                void *pvReserved,
  63143.                                     const BYTE *pbEncoded,
  63144.          DWORD cbEncoded,
  63145.                                                                   BYTE *pbComputedHash,
  63146.             DWORD *pcbComputedHash
  63147.     );
  63148.  
  63149.  
  63150.  
  63151.  
  63152. #pragma endregion
  63153.  
  63154. #pragma region Desktop Family or OneCore Family
  63155. # 14448 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63156. __declspec(dllimport)
  63157. BOOL
  63158. __stdcall
  63159. CryptSignCertificate(
  63160.  
  63161.  
  63162.  
  63163.              HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey,
  63164.  
  63165.              DWORD dwKeySpec,
  63166.          DWORD dwCertEncodingType,
  63167.                                           const BYTE *pbEncodedToBeSigned,
  63168.          DWORD cbEncodedToBeSigned,
  63169.          PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm,
  63170.              const void *pvHashAuxInfo,
  63171.                                                             BYTE *pbSignature,
  63172.             DWORD *pcbSignature
  63173.     );
  63174. # 14479 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63175. __declspec(dllimport)
  63176. BOOL
  63177. __stdcall
  63178. CryptSignAndEncodeCertificate(
  63179.  
  63180.  
  63181.  
  63182.              HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey,
  63183.  
  63184.              DWORD dwKeySpec,
  63185.          DWORD dwCertEncodingType,
  63186.          LPCSTR lpszStructType,
  63187.          const void *pvStructInfo,
  63188.          PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm,
  63189.              const void *pvHashAuxInfo,
  63190.                                                         BYTE *pbEncoded,
  63191.             DWORD *pcbEncoded
  63192.     );
  63193.  
  63194.  
  63195.  
  63196.  
  63197.  
  63198.  
  63199.  
  63200. #pragma endregion
  63201.  
  63202. #pragma region Application Family or OneCore Family
  63203. # 14523 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63204. typedef BOOL (__stdcall *PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC)(
  63205.          DWORD dwCertEncodingType,
  63206.          PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm,
  63207.                               void **ppvDecodedSignPara,
  63208.              LPWSTR *ppwszCNGHashAlgid
  63209.     );
  63210.  
  63211.  
  63212.  
  63213.  
  63214. typedef BOOL (__stdcall *PFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC)(
  63215.          NCRYPT_KEY_HANDLE hKey,
  63216.          DWORD dwCertEncodingType,
  63217.          PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm,
  63218.              void *pvDecodedSignPara,
  63219.          LPCWSTR pwszCNGPubKeyAlgid,
  63220.          LPCWSTR pwszCNGHashAlgid,
  63221.                                      BYTE *pbComputedHash,
  63222.          DWORD cbComputedHash,
  63223.                                                             BYTE *pbSignature,
  63224.             DWORD *pcbSignature
  63225.     );
  63226.  
  63227.  
  63228.  
  63229.  
  63230.  
  63231. typedef BOOL (__stdcall *PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC)(
  63232.          DWORD dwCertEncodingType,
  63233.          PCERT_PUBLIC_KEY_INFO pPubKeyInfo,
  63234.          PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm,
  63235.              void *pvDecodedSignPara,
  63236.          LPCWSTR pwszCNGPubKeyAlgid,
  63237.          LPCWSTR pwszCNGHashAlgid,
  63238.                                      BYTE *pbComputedHash,
  63239.          DWORD cbComputedHash,
  63240.                                   BYTE *pbSignature,
  63241.          DWORD cbSignature
  63242.     );
  63243. # 14572 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63244. __declspec(dllimport)
  63245. LONG
  63246. __stdcall
  63247. CertVerifyTimeValidity(
  63248.              LPFILETIME pTimeToVerify,
  63249.          PCERT_INFO pCertInfo
  63250.     );
  63251.  
  63252.  
  63253. #pragma endregion
  63254.  
  63255. #pragma region Desktop Family or OneCore Family
  63256. # 14594 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63257. __declspec(dllimport)
  63258. LONG
  63259. __stdcall
  63260. CertVerifyCRLTimeValidity(
  63261.              LPFILETIME pTimeToVerify,
  63262.          PCRL_INFO pCrlInfo
  63263.     );
  63264.  
  63265.  
  63266.  
  63267.  
  63268.  
  63269.  
  63270.  
  63271. __declspec(dllimport)
  63272. BOOL
  63273. __stdcall
  63274. CertVerifyValidityNesting(
  63275.          PCERT_INFO pSubjectInfo,
  63276.          PCERT_INFO pIssuerInfo
  63277.     );
  63278.  
  63279.  
  63280.  
  63281.  
  63282.  
  63283.  
  63284. __declspec(dllimport)
  63285. BOOL
  63286. __stdcall
  63287. CertVerifyCRLRevocation(
  63288.          DWORD dwCertEncodingType,
  63289.          PCERT_INFO pCertId,
  63290.  
  63291.          DWORD cCrlInfo,
  63292.                          PCRL_INFO rgpCrlInfo[]
  63293.     );
  63294.  
  63295.  
  63296.  
  63297.  
  63298.  
  63299.  
  63300. __declspec(dllimport)
  63301. LPCSTR
  63302. __stdcall
  63303. CertAlgIdToOID(
  63304.          DWORD dwAlgId
  63305.     );
  63306.  
  63307.  
  63308.  
  63309.  
  63310.  
  63311.  
  63312. __declspec(dllimport)
  63313. DWORD
  63314. __stdcall
  63315. CertOIDToAlgId(
  63316.          LPCSTR pszObjId
  63317.     );
  63318.  
  63319.  
  63320.  
  63321.  
  63322.  
  63323.  
  63324.  
  63325. #pragma endregion
  63326.  
  63327. #pragma region Application Family or OneCore Family
  63328.  
  63329.  
  63330. __declspec(dllimport)
  63331. PCERT_EXTENSION
  63332. __stdcall
  63333. CertFindExtension(
  63334.          LPCSTR pszObjId,
  63335.          DWORD cExtensions,
  63336.                             CERT_EXTENSION rgExtensions[]
  63337.     );
  63338.  
  63339.  
  63340.  
  63341.  
  63342.  
  63343.  
  63344. __declspec(dllimport)
  63345. PCRYPT_ATTRIBUTE
  63346. __stdcall
  63347. CertFindAttribute(
  63348.          LPCSTR pszObjId,
  63349.          DWORD cAttr,
  63350.                       CRYPT_ATTRIBUTE rgAttr[]
  63351.     );
  63352.  
  63353.  
  63354.  
  63355.  
  63356.  
  63357.  
  63358.  
  63359. __declspec(dllimport)
  63360. PCERT_RDN_ATTR
  63361. __stdcall
  63362. CertFindRDNAttr(
  63363.          LPCSTR pszObjId,
  63364.          PCERT_NAME_INFO pName
  63365.     );
  63366. # 14712 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63367. __declspec(dllimport)
  63368. BOOL
  63369. __stdcall
  63370. CertGetIntendedKeyUsage(
  63371.          DWORD dwCertEncodingType,
  63372.          PCERT_INFO pCertInfo,
  63373.                                        BYTE *pbKeyUsage,
  63374.          DWORD cbKeyUsage
  63375.     );
  63376.  
  63377. typedef void *HCRYPTDEFAULTCONTEXT;
  63378.  
  63379.  
  63380. #pragma endregion
  63381.  
  63382. #pragma region Desktop Family or OneCore Family
  63383. # 14757 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63384. __declspec(dllimport)
  63385. BOOL
  63386. __stdcall
  63387. CryptInstallDefaultContext(
  63388.          HCRYPTPROV hCryptProv,
  63389.          DWORD dwDefaultType,
  63390.              const void *pvDefaultPara,
  63391.          DWORD dwFlags,
  63392.                void *pvReserved,
  63393.           HCRYPTDEFAULTCONTEXT *phDefaultContext
  63394.     );
  63395. # 14797 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63396. typedef struct _CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA {
  63397.     DWORD cOID;
  63398.     LPSTR *rgpszOID;
  63399. } CRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA, *PCRYPT_DEFAULT_CONTEXT_MULTI_OID_PARA;
  63400. # 14810 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63401. __declspec(dllimport)
  63402. BOOL
  63403. __stdcall
  63404. CryptUninstallDefaultContext(
  63405.              HCRYPTDEFAULTCONTEXT hDefaultContext,
  63406.          DWORD dwFlags,
  63407.                void *pvReserved
  63408.     );
  63409. # 14826 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63410. __declspec(dllimport)
  63411. BOOL
  63412. __stdcall
  63413. CryptExportPublicKeyInfo(
  63414.          HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey,
  63415.              DWORD dwKeySpec,
  63416.          DWORD dwCertEncodingType,
  63417.                                                   PCERT_PUBLIC_KEY_INFO pInfo,
  63418.             DWORD *pcbInfo
  63419.     );
  63420. # 14861 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63421. __declspec(dllimport)
  63422. BOOL
  63423. __stdcall
  63424. CryptExportPublicKeyInfoEx(
  63425.          HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey,
  63426.              DWORD dwKeySpec,
  63427.          DWORD dwCertEncodingType,
  63428.              LPSTR pszPublicKeyObjId,
  63429.          DWORD dwFlags,
  63430.              void *pvAuxInfo,
  63431.                                                   PCERT_PUBLIC_KEY_INFO pInfo,
  63432.             DWORD *pcbInfo
  63433.     );
  63434. # 14884 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63435. typedef BOOL (__stdcall *PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC) (
  63436.          NCRYPT_KEY_HANDLE hNCryptKey,
  63437.          DWORD dwCertEncodingType,
  63438.          LPSTR pszPublicKeyObjId,
  63439.          DWORD dwFlags,
  63440.              void *pvAuxInfo,
  63441.                                                   PCERT_PUBLIC_KEY_INFO pInfo,
  63442.             DWORD *pcbInfo
  63443.     );
  63444. # 14916 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63445. __declspec(dllimport)
  63446. BOOL
  63447. __stdcall
  63448. CryptExportPublicKeyInfoFromBCryptKeyHandle(
  63449.          BCRYPT_KEY_HANDLE hBCryptKey,
  63450.          DWORD dwCertEncodingType,
  63451.              LPSTR pszPublicKeyObjId,
  63452.          DWORD dwFlags,
  63453.              void *pvAuxInfo,
  63454.                                                   PCERT_PUBLIC_KEY_INFO pInfo,
  63455.             DWORD *pcbInfo
  63456.     );
  63457. # 14936 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63458. typedef BOOL (__stdcall *PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_FROM_BCRYPT_HANDLE_FUNC) (
  63459.          BCRYPT_KEY_HANDLE hBCryptKey,
  63460.          DWORD dwCertEncodingType,
  63461.          LPSTR pszPublicKeyObjId,
  63462.          DWORD dwFlags,
  63463.              void *pvAuxInfo,
  63464.                                                   PCERT_PUBLIC_KEY_INFO pInfo,
  63465.             DWORD *pcbInfo
  63466.     );
  63467. # 14955 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63468. __declspec(dllimport)
  63469. BOOL
  63470. __stdcall
  63471. CryptImportPublicKeyInfo(
  63472.          HCRYPTPROV hCryptProv,
  63473.          DWORD dwCertEncodingType,
  63474.          PCERT_PUBLIC_KEY_INFO pInfo,
  63475.           HCRYPTKEY *phKey
  63476.     );
  63477. # 14981 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63478. __declspec(dllimport)
  63479. BOOL
  63480. __stdcall
  63481. CryptImportPublicKeyInfoEx(
  63482.          HCRYPTPROV hCryptProv,
  63483.          DWORD dwCertEncodingType,
  63484.          PCERT_PUBLIC_KEY_INFO pInfo,
  63485.          ALG_ID aiKeyAlg,
  63486.          DWORD dwFlags,
  63487.              void *pvAuxInfo,
  63488.           HCRYPTKEY *phKey
  63489.     );
  63490.  
  63491.  
  63492. #pragma endregion
  63493.  
  63494. #pragma region Application Family or OneCore Family
  63495. # 15017 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63496. __declspec(dllimport)
  63497. BOOL
  63498. __stdcall
  63499. CryptImportPublicKeyInfoEx2(
  63500.          DWORD dwCertEncodingType,
  63501.          PCERT_PUBLIC_KEY_INFO pInfo,
  63502.          DWORD dwFlags,
  63503.              void *pvAuxInfo,
  63504.           BCRYPT_KEY_HANDLE *phKey
  63505.     );
  63506.  
  63507.  
  63508.  
  63509.  
  63510.  
  63511.  
  63512. typedef BOOL (__stdcall *PFN_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC) (
  63513.          DWORD dwCertEncodingType,
  63514.          PCERT_PUBLIC_KEY_INFO pInfo,
  63515.          DWORD dwFlags,
  63516.              void *pvAuxInfo,
  63517.           BCRYPT_KEY_HANDLE *phKey
  63518.     );
  63519.  
  63520.  
  63521.  
  63522.  
  63523. #pragma endregion
  63524.  
  63525. #pragma region Desktop Family or OneCore Family
  63526. # 15128 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63527. #pragma endregion
  63528.  
  63529. #pragma region Application Family or OneCore Family
  63530.  
  63531.  
  63532. __declspec(dllimport)
  63533. BOOL
  63534. __stdcall
  63535. CryptAcquireCertificatePrivateKey(
  63536.          PCCERT_CONTEXT pCert,
  63537.          DWORD dwFlags,
  63538.              void *pvParameters,
  63539.           HCRYPTPROV_OR_NCRYPT_KEY_HANDLE *phCryptProvOrNCryptKey,
  63540.               DWORD *pdwKeySpec,
  63541.               BOOL *pfCallerFreeProvOrNCryptKey
  63542.     );
  63543. # 15160 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63544. #pragma endregion
  63545.  
  63546. #pragma region Desktop Family or OneCore Family
  63547. # 15187 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63548. __declspec(dllimport)
  63549. BOOL
  63550. __stdcall
  63551. CryptFindCertificateKeyProvInfo(
  63552.          PCCERT_CONTEXT pCert,
  63553.          DWORD dwFlags,
  63554.                void *pvReserved
  63555.     );
  63556. # 15215 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63557. typedef BOOL (__stdcall *PFN_IMPORT_PRIV_KEY_FUNC) (
  63558.          HCRYPTPROV hCryptProv,
  63559.          CRYPT_PRIVATE_KEY_INFO* pPrivateKeyInfo,
  63560.          DWORD dwFlags,
  63561.              void* pvAuxInfo
  63562.     );
  63563. # 15242 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63564. __declspec(dllimport)
  63565. BOOL
  63566. __stdcall
  63567. CryptImportPKCS8(
  63568.          CRYPT_PKCS8_IMPORT_PARAMS sPrivateKeyAndParams,
  63569.          DWORD dwFlags,
  63570.               HCRYPTPROV *phCryptProv,
  63571.              void* pvAuxInfo
  63572.     );
  63573.  
  63574.  
  63575.  
  63576.  
  63577. typedef BOOL (__stdcall *PFN_EXPORT_PRIV_KEY_FUNC) (
  63578.          HCRYPTPROV hCryptProv,
  63579.          DWORD dwKeySpec,
  63580.          LPSTR pszPrivateKeyObjId,
  63581.          DWORD dwFlags,
  63582.              void* pvAuxInfo,
  63583.                                                 CRYPT_PRIVATE_KEY_INFO* pPrivateKeyInfo,
  63584.             DWORD* pcbPrivateKeyInfo
  63585.     );
  63586. # 15273 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63587. __declspec(dllimport)
  63588. BOOL
  63589. __stdcall
  63590. CryptExportPKCS8(
  63591.          HCRYPTPROV hCryptProv,
  63592.          DWORD dwKeySpec,
  63593.          LPSTR pszPrivateKeyObjId,
  63594.          DWORD dwFlags,
  63595.              void* pvAuxInfo,
  63596.                                                 BYTE* pbPrivateKeyBlob,
  63597.             DWORD *pcbPrivateKeyBlob
  63598.     );
  63599.  
  63600.  
  63601. #pragma endregion
  63602.  
  63603. #pragma region Desktop Family
  63604. # 15314 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63605. __declspec(dllimport)
  63606. BOOL
  63607. __stdcall
  63608. CryptExportPKCS8Ex(
  63609.          CRYPT_PKCS8_EXPORT_PARAMS* psExportParams,
  63610.          DWORD dwFlags,
  63611.              void* pvAuxInfo,
  63612.                                                 BYTE* pbPrivateKeyBlob,
  63613.             DWORD* pcbPrivateKeyBlob
  63614.     );
  63615.  
  63616.  
  63617. #pragma endregion
  63618.  
  63619. #pragma region Application Family or OneCore Family
  63620.  
  63621.  
  63622.  
  63623.  
  63624.  
  63625.  
  63626.  
  63627. __declspec(dllimport)
  63628. BOOL
  63629. __stdcall
  63630. CryptHashPublicKeyInfo(
  63631.              HCRYPTPROV_LEGACY hCryptProv,
  63632.          ALG_ID Algid,
  63633.          DWORD dwFlags,
  63634.          DWORD dwCertEncodingType,
  63635.          PCERT_PUBLIC_KEY_INFO pInfo,
  63636.                                                                   BYTE *pbComputedHash,
  63637.             DWORD *pcbComputedHash
  63638.     );
  63639. # 15360 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63640. __declspec(dllimport)
  63641. DWORD
  63642. __stdcall
  63643. CertRDNValueToStrA(
  63644.          DWORD dwValueType,
  63645.          PCERT_RDN_VALUE_BLOB pValue,
  63646.                                      LPSTR psz,
  63647.          DWORD csz
  63648.     );
  63649. # 15380 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63650. __declspec(dllimport)
  63651. DWORD
  63652. __stdcall
  63653. CertRDNValueToStrW(
  63654.          DWORD dwValueType,
  63655.          PCERT_RDN_VALUE_BLOB pValue,
  63656.                                      LPWSTR psz,
  63657.          DWORD csz
  63658.     );
  63659. # 15492 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63660. __declspec(dllimport)
  63661. DWORD
  63662. __stdcall
  63663. CertNameToStrA(
  63664.          DWORD dwCertEncodingType,
  63665.          PCERT_NAME_BLOB pName,
  63666.          DWORD dwStrType,
  63667.                                      LPSTR psz,
  63668.          DWORD csz
  63669.     );
  63670. __declspec(dllimport)
  63671. DWORD
  63672. __stdcall
  63673. CertNameToStrW(
  63674.          DWORD dwCertEncodingType,
  63675.          PCERT_NAME_BLOB pName,
  63676.          DWORD dwStrType,
  63677.                                      LPWSTR psz,
  63678.          DWORD csz
  63679.     );
  63680. # 15658 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63681. __declspec(dllimport)
  63682. BOOL
  63683. __stdcall
  63684. CertStrToNameA(
  63685.          DWORD dwCertEncodingType,
  63686.          LPCSTR pszX500,
  63687.          DWORD dwStrType,
  63688.                void *pvReserved,
  63689.                                                         BYTE *pbEncoded,
  63690.             DWORD *pcbEncoded,
  63691.                                   LPCSTR *ppszError
  63692.     );
  63693.  
  63694.  
  63695. __declspec(dllimport)
  63696. BOOL
  63697. __stdcall
  63698. CertStrToNameW(
  63699.          DWORD dwCertEncodingType,
  63700.          LPCWSTR pszX500,
  63701.          DWORD dwStrType,
  63702.                void *pvReserved,
  63703.                                                         BYTE *pbEncoded,
  63704.             DWORD *pcbEncoded,
  63705.                                   LPCWSTR *ppszError
  63706.     );
  63707. # 15783 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63708. __declspec(dllimport)
  63709. DWORD
  63710. __stdcall
  63711. CertGetNameStringA(
  63712.          PCCERT_CONTEXT pCertContext,
  63713.          DWORD dwType,
  63714.          DWORD dwFlags,
  63715.              void *pvTypePara,
  63716.                                                LPSTR pszNameString,
  63717.          DWORD cchNameString
  63718.     );
  63719.  
  63720.  
  63721. __declspec(dllimport)
  63722. DWORD
  63723. __stdcall
  63724. CertGetNameStringW(
  63725.          PCCERT_CONTEXT pCertContext,
  63726.          DWORD dwType,
  63727.          DWORD dwFlags,
  63728.              void *pvTypePara,
  63729.                                                LPWSTR pszNameString,
  63730.          DWORD cchNameString
  63731.     );
  63732. # 15891 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63733. typedef PCCERT_CONTEXT (__stdcall *PFN_CRYPT_GET_SIGNER_CERTIFICATE)(
  63734.                 void *pvGetArg,
  63735.          DWORD dwCertEncodingType,
  63736.          PCERT_INFO pSignerId,
  63737.  
  63738.          HCERTSTORE hMsgCertStore
  63739.     );
  63740. # 15950 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63741. typedef struct _CRYPT_SIGN_MESSAGE_PARA {
  63742.     DWORD cbSize;
  63743.     DWORD dwMsgEncodingType;
  63744.     PCCERT_CONTEXT pSigningCert;
  63745.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  63746.     void *pvHashAuxInfo;
  63747.     DWORD cMsgCert;
  63748.     PCCERT_CONTEXT *rgpMsgCert;
  63749.     DWORD cMsgCrl;
  63750.     PCCRL_CONTEXT *rgpMsgCrl;
  63751.     DWORD cAuthAttr;
  63752.     PCRYPT_ATTRIBUTE rgAuthAttr;
  63753.     DWORD cUnauthAttr;
  63754.     PCRYPT_ATTRIBUTE rgUnauthAttr;
  63755.     DWORD dwFlags;
  63756.     DWORD dwInnerContentType;
  63757.  
  63758.  
  63759.  
  63760.  
  63761.  
  63762.  
  63763. } CRYPT_SIGN_MESSAGE_PARA, *PCRYPT_SIGN_MESSAGE_PARA;
  63764. # 16002 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63765. typedef struct _CRYPT_VERIFY_MESSAGE_PARA {
  63766.     DWORD cbSize;
  63767.     DWORD dwMsgAndCertEncodingType;
  63768.     HCRYPTPROV_LEGACY hCryptProv;
  63769.     PFN_CRYPT_GET_SIGNER_CERTIFICATE pfnGetSignerCertificate;
  63770.     void *pvGetArg;
  63771. # 16021 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63772. } CRYPT_VERIFY_MESSAGE_PARA, *PCRYPT_VERIFY_MESSAGE_PARA;
  63773. # 16062 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63774. typedef struct _CRYPT_ENCRYPT_MESSAGE_PARA {
  63775.     DWORD cbSize;
  63776.     DWORD dwMsgEncodingType;
  63777.     HCRYPTPROV_LEGACY hCryptProv;
  63778.     CRYPT_ALGORITHM_IDENTIFIER ContentEncryptionAlgorithm;
  63779.     void *pvEncryptionAuxInfo;
  63780.     DWORD dwFlags;
  63781.     DWORD dwInnerContentType;
  63782. } CRYPT_ENCRYPT_MESSAGE_PARA, *PCRYPT_ENCRYPT_MESSAGE_PARA;
  63783. # 16096 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63784. typedef struct _CRYPT_DECRYPT_MESSAGE_PARA {
  63785.     DWORD cbSize;
  63786.     DWORD dwMsgAndCertEncodingType;
  63787.     DWORD cCertStore;
  63788.     HCERTSTORE *rghCertStore;
  63789. # 16110 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63790. } CRYPT_DECRYPT_MESSAGE_PARA, *PCRYPT_DECRYPT_MESSAGE_PARA;
  63791. # 16123 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63792. typedef struct _CRYPT_HASH_MESSAGE_PARA {
  63793.     DWORD cbSize;
  63794.     DWORD dwMsgEncodingType;
  63795.     HCRYPTPROV_LEGACY hCryptProv;
  63796.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  63797.     void *pvHashAuxInfo;
  63798. } CRYPT_HASH_MESSAGE_PARA, *PCRYPT_HASH_MESSAGE_PARA;
  63799. # 16143 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63800. typedef struct _CRYPT_KEY_SIGN_MESSAGE_PARA {
  63801.     DWORD cbSize;
  63802.     DWORD dwMsgAndCertEncodingType;
  63803.  
  63804.  
  63805.     union {
  63806.         HCRYPTPROV hCryptProv;
  63807.         NCRYPT_KEY_HANDLE hNCryptKey;
  63808.     } ;
  63809.  
  63810.  
  63811.     DWORD dwKeySpec;
  63812.  
  63813.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  63814.     void *pvHashAuxInfo;
  63815.  
  63816.     CRYPT_ALGORITHM_IDENTIFIER PubKeyAlgorithm;
  63817. } CRYPT_KEY_SIGN_MESSAGE_PARA, *PCRYPT_KEY_SIGN_MESSAGE_PARA;
  63818. # 16173 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63819. typedef struct _CRYPT_KEY_VERIFY_MESSAGE_PARA {
  63820.     DWORD cbSize;
  63821.     DWORD dwMsgEncodingType;
  63822.     HCRYPTPROV_LEGACY hCryptProv;
  63823. } CRYPT_KEY_VERIFY_MESSAGE_PARA, *PCRYPT_KEY_VERIFY_MESSAGE_PARA;
  63824.  
  63825.  
  63826. #pragma endregion
  63827.  
  63828. #pragma region Desktop Family or OneCore Family
  63829.  
  63830.  
  63831.  
  63832.  
  63833.  
  63834.  
  63835.  
  63836.  
  63837. __declspec(dllimport)
  63838. BOOL
  63839. __stdcall
  63840. CryptSignMessage(
  63841.          PCRYPT_SIGN_MESSAGE_PARA pSignPara,
  63842.          BOOL fDetachedSignature,
  63843.          DWORD cToBeSigned,
  63844.                                 const BYTE *rgpbToBeSigned[],
  63845.                             DWORD rgcbToBeSigned[],
  63846.                                                               BYTE *pbSignedBlob,
  63847.             DWORD *pcbSignedBlob
  63848.     );
  63849. # 16240 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63850. __declspec(dllimport)
  63851. BOOL
  63852. __stdcall
  63853. CryptVerifyMessageSignature(
  63854.          PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara,
  63855.          DWORD dwSignerIndex,
  63856.                                    const BYTE *pbSignedBlob,
  63857.          DWORD cbSignedBlob,
  63858.                                                         BYTE *pbDecoded,
  63859.                 DWORD *pcbDecoded,
  63860.                                   PCCERT_CONTEXT *ppSignerCert
  63861.     );
  63862.  
  63863.  
  63864.  
  63865.  
  63866.  
  63867. __declspec(dllimport)
  63868. LONG
  63869. __stdcall
  63870. CryptGetMessageSignerCount(
  63871.          DWORD dwMsgEncodingType,
  63872.                                    const BYTE *pbSignedBlob,
  63873.          DWORD cbSignedBlob
  63874.     );
  63875.  
  63876.  
  63877.  
  63878.  
  63879.  
  63880. __declspec(dllimport)
  63881. HCERTSTORE
  63882. __stdcall
  63883. CryptGetMessageCertificates(
  63884.          DWORD dwMsgAndCertEncodingType,
  63885.              HCRYPTPROV_LEGACY hCryptProv,
  63886.          DWORD dwFlags,
  63887.                                    const BYTE *pbSignedBlob,
  63888.          DWORD cbSignedBlob
  63889.     );
  63890.  
  63891.  
  63892.  
  63893.  
  63894.  
  63895.  
  63896. __declspec(dllimport)
  63897. BOOL
  63898. __stdcall
  63899. CryptVerifyDetachedMessageSignature(
  63900.          PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara,
  63901.          DWORD dwSignerIndex,
  63902.                                          const BYTE *pbDetachedSignBlob,
  63903.          DWORD cbDetachedSignBlob,
  63904.          DWORD cToBeSigned,
  63905.                             const BYTE *rgpbToBeSigned[],
  63906.                             DWORD rgcbToBeSigned[],
  63907.                                   PCCERT_CONTEXT *ppSignerCert
  63908.     );
  63909.  
  63910.  
  63911.  
  63912.  
  63913. __declspec(dllimport)
  63914. BOOL
  63915. __stdcall
  63916. CryptEncryptMessage(
  63917.          PCRYPT_ENCRYPT_MESSAGE_PARA pEncryptPara,
  63918.          DWORD cRecipientCert,
  63919.                                PCCERT_CONTEXT rgpRecipientCert[],
  63920.                                           const BYTE *pbToBeEncrypted,
  63921.          DWORD cbToBeEncrypted,
  63922.                                                                     BYTE *pbEncryptedBlob,
  63923.             DWORD *pcbEncryptedBlob
  63924.     );
  63925. # 16330 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63926. __declspec(dllimport)
  63927. BOOL
  63928. __stdcall
  63929. CryptDecryptMessage(
  63930.          PCRYPT_DECRYPT_MESSAGE_PARA pDecryptPara,
  63931.                                       const BYTE *pbEncryptedBlob,
  63932.          DWORD cbEncryptedBlob,
  63933.                                                             BYTE *pbDecrypted,
  63934.                 DWORD *pcbDecrypted,
  63935.                                   PCCERT_CONTEXT *ppXchgCert
  63936.     );
  63937. # 16349 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63938. __declspec(dllimport)
  63939. BOOL
  63940. __stdcall
  63941. CryptSignAndEncryptMessage(
  63942.          PCRYPT_SIGN_MESSAGE_PARA pSignPara,
  63943.          PCRYPT_ENCRYPT_MESSAGE_PARA pEncryptPara,
  63944.          DWORD cRecipientCert,
  63945.                                PCCERT_CONTEXT rgpRecipientCert[],
  63946.                                                const BYTE *pbToBeSignedAndEncrypted,
  63947.          DWORD cbToBeSignedAndEncrypted,
  63948.                                                                                       BYTE *pbSignedAndEncryptedBlob,
  63949.             DWORD *pcbSignedAndEncryptedBlob
  63950.     );
  63951. # 16390 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63952. __declspec(dllimport)
  63953. BOOL
  63954. __stdcall
  63955. CryptDecryptAndVerifyMessageSignature(
  63956.          PCRYPT_DECRYPT_MESSAGE_PARA pDecryptPara,
  63957.          PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara,
  63958.          DWORD dwSignerIndex,
  63959.                                       const BYTE *pbEncryptedBlob,
  63960.          DWORD cbEncryptedBlob,
  63961.                                                             BYTE *pbDecrypted,
  63962.                 DWORD *pcbDecrypted,
  63963.                                   PCCERT_CONTEXT *ppXchgCert,
  63964.                                   PCCERT_CONTEXT *ppSignerCert
  63965.     );
  63966. # 16437 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63967. __declspec(dllimport)
  63968. BOOL
  63969. __stdcall
  63970. CryptDecodeMessage(
  63971.          DWORD dwMsgTypeFlags,
  63972.              PCRYPT_DECRYPT_MESSAGE_PARA pDecryptPara,
  63973.              PCRYPT_VERIFY_MESSAGE_PARA pVerifyPara,
  63974.          DWORD dwSignerIndex,
  63975.                                     const BYTE *pbEncodedBlob,
  63976.          DWORD cbEncodedBlob,
  63977.          DWORD dwPrevInnerContentType,
  63978.               DWORD *pdwMsgType,
  63979.               DWORD *pdwInnerContentType,
  63980.                                                         BYTE *pbDecoded,
  63981.                 DWORD *pcbDecoded,
  63982.                                   PCCERT_CONTEXT *ppXchgCert,
  63983.                                   PCCERT_CONTEXT *ppSignerCert
  63984.     );
  63985. # 16466 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  63986. __declspec(dllimport)
  63987. BOOL
  63988. __stdcall
  63989. CryptHashMessage(
  63990.          PCRYPT_HASH_MESSAGE_PARA pHashPara,
  63991.          BOOL fDetachedHash,
  63992.          DWORD cToBeHashed,
  63993.                             const BYTE *rgpbToBeHashed[],
  63994.                             DWORD rgcbToBeHashed[],
  63995.                                                               BYTE *pbHashedBlob,
  63996.                 DWORD *pcbHashedBlob,
  63997.                                                                   BYTE *pbComputedHash,
  63998.                 DWORD *pcbComputedHash
  63999.     );
  64000.  
  64001.  
  64002.  
  64003.  
  64004.  
  64005.  
  64006.  
  64007. __declspec(dllimport)
  64008. BOOL
  64009. __stdcall
  64010. CryptVerifyMessageHash(
  64011.          PCRYPT_HASH_MESSAGE_PARA pHashPara,
  64012.                                    BYTE *pbHashedBlob,
  64013.          DWORD cbHashedBlob,
  64014.                                                               BYTE *pbToBeHashed,
  64015.                 DWORD *pcbToBeHashed,
  64016.                                                                   BYTE *pbComputedHash,
  64017.                 DWORD *pcbComputedHash
  64018.     );
  64019. # 16508 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64020. __declspec(dllimport)
  64021. BOOL
  64022. __stdcall
  64023. CryptVerifyDetachedMessageHash(
  64024.          PCRYPT_HASH_MESSAGE_PARA pHashPara,
  64025.                                          BYTE *pbDetachedHashBlob,
  64026.          DWORD cbDetachedHashBlob,
  64027.          DWORD cToBeHashed,
  64028.                             const BYTE *rgpbToBeHashed[],
  64029.                             DWORD rgcbToBeHashed[],
  64030.                                                                   BYTE *pbComputedHash,
  64031.                 DWORD *pcbComputedHash
  64032.     );
  64033.  
  64034.  
  64035.  
  64036.  
  64037.  
  64038.  
  64039.  
  64040. __declspec(dllimport)
  64041. BOOL
  64042. __stdcall
  64043. CryptSignMessageWithKey(
  64044.          PCRYPT_KEY_SIGN_MESSAGE_PARA pSignPara,
  64045.                                    const BYTE *pbToBeSigned,
  64046.          DWORD cbToBeSigned,
  64047.                                                               BYTE *pbSignedBlob,
  64048.             DWORD *pcbSignedBlob
  64049.     );
  64050. # 16552 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64051. __declspec(dllimport)
  64052. BOOL
  64053. __stdcall
  64054. CryptVerifyMessageSignatureWithKey(
  64055.          PCRYPT_KEY_VERIFY_MESSAGE_PARA pVerifyPara,
  64056.              PCERT_PUBLIC_KEY_INFO pPublicKeyInfo,
  64057.                                    const BYTE *pbSignedBlob,
  64058.          DWORD cbSignedBlob,
  64059.                                                         BYTE *pbDecoded,
  64060.                 DWORD *pcbDecoded
  64061.     );
  64062. # 16591 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64063. __declspec(dllimport)
  64064. HCERTSTORE
  64065. __stdcall
  64066. CertOpenSystemStoreA(
  64067.              HCRYPTPROV_LEGACY hProv,
  64068.          LPCSTR szSubsystemProtocol
  64069.     );
  64070. __declspec(dllimport)
  64071. HCERTSTORE
  64072. __stdcall
  64073. CertOpenSystemStoreW(
  64074.              HCRYPTPROV_LEGACY hProv,
  64075.          LPCWSTR szSubsystemProtocol
  64076.     );
  64077.  
  64078.  
  64079.  
  64080.  
  64081.  
  64082.  
  64083. __declspec(dllimport)
  64084. BOOL
  64085. __stdcall
  64086. CertAddEncodedCertificateToSystemStoreA(
  64087.          LPCSTR szCertStoreName,
  64088.                                     const BYTE * pbCertEncoded,
  64089.          DWORD cbCertEncoded
  64090.     );
  64091. __declspec(dllimport)
  64092. BOOL
  64093. __stdcall
  64094. CertAddEncodedCertificateToSystemStoreW(
  64095.          LPCWSTR szCertStoreName,
  64096.                                     const BYTE * pbCertEncoded,
  64097.          DWORD cbCertEncoded
  64098.     );
  64099.  
  64100.  
  64101.  
  64102.  
  64103.  
  64104.  
  64105.  
  64106. #pragma endregion
  64107.  
  64108. #pragma region Desktop Family or Wintrust Package
  64109. # 16650 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64110. typedef struct _CERT_CHAIN {
  64111.     DWORD cCerts;
  64112.     PCERT_BLOB certs;
  64113.  
  64114.     CRYPT_KEY_PROV_INFO keyLocatorInfo;
  64115. } CERT_CHAIN, *PCERT_CHAIN;
  64116.  
  64117.  
  64118.  
  64119. HRESULT
  64120. __stdcall
  64121. FindCertsByIssuer(
  64122.                                                               PCERT_CHAIN pCertChains,
  64123.             DWORD *pcbCertChains,
  64124.           DWORD *pcCertChains,
  64125.                                               BYTE* pbEncodedIssuerName,
  64126.          DWORD cbEncodedIssuerName,
  64127.              LPCWSTR pwszPurpose,
  64128.          DWORD dwKeySpec
  64129.  
  64130.     );
  64131.  
  64132.  
  64133. #pragma endregion
  64134.  
  64135. #pragma region Application Family or OneCore Family
  64136. # 16808 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64137. __declspec(dllimport)
  64138. BOOL
  64139. __stdcall
  64140. CryptQueryObject(
  64141.          DWORD dwObjectType,
  64142.          const void *pvObject,
  64143.          DWORD dwExpectedContentTypeFlags,
  64144.          DWORD dwExpectedFormatTypeFlags,
  64145.          DWORD dwFlags,
  64146.               DWORD *pdwMsgAndCertEncodingType,
  64147.               DWORD *pdwContentType,
  64148.               DWORD *pdwFormatType,
  64149.               HCERTSTORE *phCertStore,
  64150.               HCRYPTMSG *phMsg,
  64151.                                   const void **ppvContext
  64152.     );
  64153. # 16984 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64154. #pragma endregion
  64155.  
  64156. #pragma region Desktop Family or OneCore Family
  64157.  
  64158.  
  64159.  
  64160.  
  64161.  
  64162.  
  64163.  
  64164.  
  64165. __declspec(dllimport)
  64166. LPVOID
  64167. __stdcall
  64168. CryptMemAlloc (
  64169.          ULONG cbSize
  64170.     );
  64171.  
  64172. __declspec(dllimport)
  64173. LPVOID
  64174. __stdcall
  64175. CryptMemRealloc (
  64176.              LPVOID pv,
  64177.          ULONG cbSize
  64178.     );
  64179.  
  64180. __declspec(dllimport)
  64181. void
  64182. __stdcall
  64183. CryptMemFree (
  64184.              LPVOID pv
  64185.     );
  64186. # 17027 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64187. typedef HANDLE HCRYPTASYNC, *PHCRYPTASYNC;
  64188.  
  64189. typedef void (__stdcall *PFN_CRYPT_ASYNC_PARAM_FREE_FUNC) (
  64190.          LPSTR pszParamOid,
  64191.          LPVOID pvParam
  64192.     );
  64193.  
  64194. __declspec(dllimport)
  64195. BOOL
  64196. __stdcall
  64197. CryptCreateAsyncHandle (
  64198.          DWORD dwFlags,
  64199.           PHCRYPTASYNC phAsync
  64200.     );
  64201.  
  64202. __declspec(dllimport)
  64203. BOOL
  64204. __stdcall
  64205. CryptSetAsyncParam (
  64206.          HCRYPTASYNC hAsync,
  64207.          LPSTR pszParamOid,
  64208.              LPVOID pvParam,
  64209.                PFN_CRYPT_ASYNC_PARAM_FREE_FUNC pfnFree
  64210.     );
  64211.  
  64212. __declspec(dllimport)
  64213. BOOL
  64214. __stdcall
  64215. CryptGetAsyncParam (
  64216.          HCRYPTASYNC hAsync,
  64217.          LPSTR pszParamOid,
  64218.                                   LPVOID* ppvParam,
  64219.                                               PFN_CRYPT_ASYNC_PARAM_FREE_FUNC* ppfnFree
  64220.     );
  64221.  
  64222. __declspec(dllimport)
  64223. BOOL
  64224. __stdcall
  64225. CryptCloseAsyncHandle (
  64226.              HCRYPTASYNC hAsync
  64227.     );
  64228.  
  64229.  
  64230. #pragma endregion
  64231.  
  64232. #pragma region Application Family or OneCore Family
  64233. # 17089 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64234. typedef struct _CRYPT_BLOB_ARRAY {
  64235.     DWORD cBlob;
  64236.     PCRYPT_DATA_BLOB rgBlob;
  64237. } CRYPT_BLOB_ARRAY, *PCRYPT_BLOB_ARRAY;
  64238.  
  64239. typedef struct _CRYPT_CREDENTIALS {
  64240.     DWORD cbSize;
  64241.     LPCSTR pszCredentialsOid;
  64242.     LPVOID pvCredentials;
  64243. } CRYPT_CREDENTIALS, *PCRYPT_CREDENTIALS;
  64244. # 17109 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64245. typedef struct _CRYPT_PASSWORD_CREDENTIALSA {
  64246.     DWORD cbSize;
  64247.     LPSTR pszUsername;
  64248.     LPSTR pszPassword;
  64249. } CRYPT_PASSWORD_CREDENTIALSA, *PCRYPT_PASSWORD_CREDENTIALSA;
  64250. typedef struct _CRYPT_PASSWORD_CREDENTIALSW {
  64251.     DWORD cbSize;
  64252.     LPWSTR pszUsername;
  64253.     LPWSTR pszPassword;
  64254. } CRYPT_PASSWORD_CREDENTIALSW, *PCRYPT_PASSWORD_CREDENTIALSW;
  64255.  
  64256.  
  64257.  
  64258.  
  64259. typedef CRYPT_PASSWORD_CREDENTIALSA CRYPT_PASSWORD_CREDENTIALS;
  64260. typedef PCRYPT_PASSWORD_CREDENTIALSA PCRYPT_PASSWORD_CREDENTIALS;
  64261. # 17138 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64262. typedef void (__stdcall *PFN_FREE_ENCODED_OBJECT_FUNC) (
  64263.              LPCSTR pszObjectOid,
  64264.             PCRYPT_BLOB_ARRAY pObject,
  64265.                 LPVOID pvFreeContext
  64266.     );
  64267. # 17342 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64268. typedef struct _CRYPTNET_URL_CACHE_PRE_FETCH_INFO {
  64269.     DWORD cbSize;
  64270.     DWORD dwObjectType;
  64271.  
  64272.  
  64273.  
  64274.  
  64275.  
  64276.  
  64277.  
  64278.     DWORD dwError;
  64279.     DWORD dwReserved;
  64280.  
  64281.     FILETIME ThisUpdateTime;
  64282.     FILETIME NextUpdateTime;
  64283.     FILETIME PublishTime;
  64284. } CRYPTNET_URL_CACHE_PRE_FETCH_INFO, *PCRYPTNET_URL_CACHE_PRE_FETCH_INFO;
  64285. # 17372 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64286. typedef struct _CRYPTNET_URL_CACHE_FLUSH_INFO {
  64287.     DWORD cbSize;
  64288.  
  64289.  
  64290.  
  64291.  
  64292.     DWORD dwExemptSeconds;
  64293.  
  64294.  
  64295.  
  64296.  
  64297.     FILETIME ExpireTime;
  64298. } CRYPTNET_URL_CACHE_FLUSH_INFO, *PCRYPTNET_URL_CACHE_FLUSH_INFO;
  64299. # 17393 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64300. typedef struct _CRYPTNET_URL_CACHE_RESPONSE_INFO {
  64301.     DWORD cbSize;
  64302.     WORD wResponseType;
  64303.     WORD wResponseFlags;
  64304.  
  64305.  
  64306.     FILETIME LastModifiedTime;
  64307.     DWORD dwMaxAge;
  64308.     LPCWSTR pwszETag;
  64309.     DWORD dwProxyId;
  64310. } CRYPTNET_URL_CACHE_RESPONSE_INFO, *PCRYPTNET_URL_CACHE_RESPONSE_INFO;
  64311. # 17420 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64312. typedef struct _CRYPT_RETRIEVE_AUX_INFO {
  64313.     DWORD cbSize;
  64314.     FILETIME *pLastSyncTime;
  64315.  
  64316.  
  64317.     DWORD dwMaxUrlRetrievalByteCount;
  64318.  
  64319.  
  64320.  
  64321.  
  64322.  
  64323.     PCRYPTNET_URL_CACHE_PRE_FETCH_INFO pPreFetchInfo;
  64324.  
  64325.  
  64326.  
  64327.  
  64328.  
  64329.     PCRYPTNET_URL_CACHE_FLUSH_INFO pFlushInfo;
  64330.  
  64331.  
  64332.  
  64333.  
  64334.  
  64335.     PCRYPTNET_URL_CACHE_RESPONSE_INFO *ppResponseInfo;
  64336.  
  64337.  
  64338.  
  64339.     LPWSTR pwszCacheFileNamePrefix;
  64340.  
  64341.  
  64342.  
  64343.  
  64344.  
  64345.     LPFILETIME pftCacheResync;
  64346.  
  64347.  
  64348.  
  64349.  
  64350.  
  64351.     BOOL fProxyCacheRetrieval;
  64352. # 17469 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64353.     DWORD dwHttpStatusCode;
  64354.  
  64355.  
  64356.  
  64357.  
  64358.  
  64359.     LPWSTR *ppwszErrorResponseHeaders;
  64360.  
  64361.  
  64362.  
  64363.  
  64364.     PCRYPT_DATA_BLOB *ppErrorContentBlob;
  64365. } CRYPT_RETRIEVE_AUX_INFO, *PCRYPT_RETRIEVE_AUX_INFO;
  64366.  
  64367.  
  64368.  
  64369.  
  64370.  
  64371. #pragma endregion
  64372.  
  64373. #pragma region Desktop Family or OneCore Family
  64374.  
  64375.  
  64376. __declspec(dllimport)
  64377.  
  64378. BOOL
  64379. __stdcall
  64380. CryptRetrieveObjectByUrlA (
  64381.          LPCSTR pszUrl,
  64382.              LPCSTR pszObjectOid,
  64383.          DWORD dwRetrievalFlags,
  64384.          DWORD dwTimeout,
  64385.              LPVOID* ppvObject,
  64386.              HCRYPTASYNC hAsyncRetrieve,
  64387.              PCRYPT_CREDENTIALS pCredentials,
  64388.              LPVOID pvVerify,
  64389.                 PCRYPT_RETRIEVE_AUX_INFO pAuxInfo
  64390.     );
  64391. __declspec(dllimport)
  64392.  
  64393. BOOL
  64394. __stdcall
  64395. CryptRetrieveObjectByUrlW (
  64396.          LPCWSTR pszUrl,
  64397.              LPCSTR pszObjectOid,
  64398.          DWORD dwRetrievalFlags,
  64399.          DWORD dwTimeout,
  64400.              LPVOID* ppvObject,
  64401.              HCRYPTASYNC hAsyncRetrieve,
  64402.              PCRYPT_CREDENTIALS pCredentials,
  64403.              LPVOID pvVerify,
  64404.                 PCRYPT_RETRIEVE_AUX_INFO pAuxInfo
  64405.     );
  64406. # 17539 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64407. typedef BOOL (__stdcall *PFN_CRYPT_CANCEL_RETRIEVAL)(
  64408.          DWORD dwFlags,
  64409.                 void *pvArg
  64410.     );
  64411. # 17552 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64412. __declspec(dllimport)
  64413. BOOL
  64414. __stdcall
  64415. CryptInstallCancelRetrieval(
  64416.                PFN_CRYPT_CANCEL_RETRIEVAL pfnCancel,
  64417.              const void *pvArg,
  64418.          DWORD dwFlags,
  64419.                void *pvReserved
  64420. );
  64421.  
  64422.  
  64423. __declspec(dllimport)
  64424. BOOL
  64425. __stdcall
  64426. CryptUninstallCancelRetrieval(
  64427.              DWORD dwFlags,
  64428.                    void *pvReserved
  64429.         );
  64430.  
  64431.  
  64432. #pragma endregion
  64433.  
  64434. #pragma region Desktop Family
  64435.  
  64436.  
  64437. __declspec(dllimport)
  64438. BOOL
  64439. __stdcall
  64440. CryptCancelAsyncRetrieval (
  64441.              HCRYPTASYNC hAsyncRetrieval
  64442.     );
  64443. # 17595 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64444. typedef void (__stdcall *PFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC) (
  64445.                 LPVOID pvCompletion,
  64446.          DWORD dwCompletionCode,
  64447.          LPCSTR pszUrl,
  64448.              LPSTR pszObjectOid,
  64449.          LPVOID pvObject
  64450.     );
  64451.  
  64452. typedef struct _CRYPT_ASYNC_RETRIEVAL_COMPLETION {
  64453.                PFN_CRYPT_ASYNC_RETRIEVAL_COMPLETION_FUNC pfnCompletion;
  64454.                 LPVOID pvCompletion;
  64455. } CRYPT_ASYNC_RETRIEVAL_COMPLETION, *PCRYPT_ASYNC_RETRIEVAL_COMPLETION;
  64456. # 17615 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64457. typedef BOOL (__stdcall *PFN_CANCEL_ASYNC_RETRIEVAL_FUNC) (
  64458.              HCRYPTASYNC hAsyncRetrieve
  64459.     );
  64460.  
  64461.  
  64462. #pragma endregion
  64463.  
  64464. #pragma region Desktop Family or OneCore Family
  64465. # 17633 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64466. typedef struct _CRYPT_URL_ARRAY {
  64467.     DWORD cUrl;
  64468.     LPWSTR* rgwszUrl;
  64469. } CRYPT_URL_ARRAY, *PCRYPT_URL_ARRAY;
  64470.  
  64471. typedef struct _CRYPT_URL_INFO {
  64472.     DWORD cbSize;
  64473.  
  64474.  
  64475.     DWORD dwSyncDeltaTime;
  64476.  
  64477.  
  64478.  
  64479.  
  64480.     DWORD cGroup;
  64481.     DWORD *rgcGroupEntry;
  64482. } CRYPT_URL_INFO, *PCRYPT_URL_INFO;
  64483.  
  64484. __declspec(dllimport)
  64485. BOOL
  64486. __stdcall
  64487. CryptGetObjectUrl (
  64488.          LPCSTR pszUrlOid,
  64489.          LPVOID pvPara,
  64490.          DWORD dwFlags,
  64491.                                                           PCRYPT_URL_ARRAY pUrlArray,
  64492.             DWORD* pcbUrlArray,
  64493.                                                         PCRYPT_URL_INFO pUrlInfo,
  64494.                 DWORD* pcbUrlInfo,
  64495.                LPVOID pvReserved
  64496.     );
  64497. # 17787 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64498. typedef struct _CERT_CRL_CONTEXT_PAIR {
  64499.     PCCERT_CONTEXT pCertContext;
  64500.     PCCRL_CONTEXT pCrlContext;
  64501. } CERT_CRL_CONTEXT_PAIR, *PCERT_CRL_CONTEXT_PAIR;
  64502. typedef const CERT_CRL_CONTEXT_PAIR *PCCERT_CRL_CONTEXT_PAIR;
  64503.  
  64504.  
  64505. #pragma endregion
  64506.  
  64507. #pragma region Desktop Family
  64508. # 17810 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64509. typedef struct _CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO {
  64510.     DWORD cbSize;
  64511.  
  64512.  
  64513.  
  64514.     int iDeltaCrlIndicator;
  64515.  
  64516.  
  64517.  
  64518.     LPFILETIME pftCacheResync;
  64519.  
  64520.  
  64521.     LPFILETIME pLastSyncTime;
  64522.  
  64523.  
  64524.  
  64525.  
  64526.     LPFILETIME pMaxAgeTime;
  64527.  
  64528.  
  64529.  
  64530.     PCERT_REVOCATION_CHAIN_PARA pChainPara;
  64531.  
  64532.  
  64533.  
  64534.     PCRYPT_INTEGER_BLOB pDeltaCrlIndicator;
  64535.  
  64536. } CRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO,
  64537.     *PCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO;
  64538.  
  64539. __declspec(dllimport)
  64540.  
  64541. BOOL
  64542. __stdcall
  64543. CryptGetTimeValidObject (
  64544.          LPCSTR pszTimeValidOid,
  64545.          LPVOID pvPara,
  64546.          PCCERT_CONTEXT pIssuer,
  64547.              LPFILETIME pftValidFor,
  64548.          DWORD dwFlags,
  64549.          DWORD dwTimeout,
  64550.                  LPVOID* ppvObject,
  64551.              PCRYPT_CREDENTIALS pCredentials,
  64552.                 PCRYPT_GET_TIME_VALID_OBJECT_EXTRA_INFO pExtraInfo
  64553.     );
  64554. # 17891 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64555. __declspec(dllimport)
  64556. BOOL
  64557. __stdcall
  64558. CryptFlushTimeValidObject (
  64559.           LPCSTR pszFlushTimeValidOid,
  64560.           LPVOID pvPara,
  64561.           PCCERT_CONTEXT pIssuer,
  64562.           DWORD dwFlags,
  64563.                 LPVOID pvReserved
  64564.      );
  64565. # 17939 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64566. #pragma endregion
  64567.  
  64568. #pragma region Application Family or OneCore Family
  64569. # 17984 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64570. __declspec(dllimport)
  64571. PCCERT_CONTEXT
  64572. __stdcall
  64573. CertCreateSelfSignCertificate(
  64574.               HCRYPTPROV_OR_NCRYPT_KEY_HANDLE hCryptProvOrNCryptKey,
  64575.               PCERT_NAME_BLOB pSubjectIssuerBlob,
  64576.               DWORD dwFlags,
  64577.               PCRYPT_KEY_PROV_INFO pKeyProvInfo,
  64578.               PCRYPT_ALGORITHM_IDENTIFIER pSignatureAlgorithm,
  64579.               PSYSTEMTIME pStartTime,
  64580.               PSYSTEMTIME pEndTime,
  64581.               PCERT_EXTENSIONS pExtensions
  64582.     );
  64583.  
  64584.  
  64585.  
  64586.  
  64587.  
  64588. #pragma endregion
  64589.  
  64590. #pragma region Desktop Family or OneCore Family
  64591. # 18036 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64592. __declspec(dllimport)
  64593. BOOL
  64594. __stdcall
  64595. CryptGetKeyIdentifierProperty(
  64596.          const CRYPT_HASH_BLOB *pKeyIdentifier,
  64597.          DWORD dwPropId,
  64598.          DWORD dwFlags,
  64599.              LPCWSTR pwszComputerName,
  64600.                void *pvReserved,
  64601.                                                   void *pvData,
  64602.             DWORD *pcbData
  64603.     );
  64604. # 18077 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64605. __declspec(dllimport)
  64606. BOOL
  64607. __stdcall
  64608. CryptSetKeyIdentifierProperty(
  64609.          const CRYPT_HASH_BLOB *pKeyIdentifier,
  64610.          DWORD dwPropId,
  64611.          DWORD dwFlags,
  64612.              LPCWSTR pwszComputerName,
  64613.                void *pvReserved,
  64614.              const void *pvData
  64615.     );
  64616. # 18104 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64617. typedef BOOL (__stdcall *PFN_CRYPT_ENUM_KEYID_PROP)(
  64618.          const CRYPT_HASH_BLOB *pKeyIdentifier,
  64619.          DWORD dwFlags,
  64620.                void *pvReserved,
  64621.                 void *pvArg,
  64622.          DWORD cProp,
  64623.                       DWORD *rgdwPropId,
  64624.                       void **rgpvData,
  64625.                       DWORD *rgcbData
  64626.     );
  64627. # 18129 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64628. __declspec(dllimport)
  64629. BOOL
  64630. __stdcall
  64631. CryptEnumKeyIdentifierProperties(
  64632.              const CRYPT_HASH_BLOB *pKeyIdentifier,
  64633.          DWORD dwPropId,
  64634.          DWORD dwFlags,
  64635.              LPCWSTR pwszComputerName,
  64636.                void *pvReserved,
  64637.                 void *pvArg,
  64638.                PFN_CRYPT_ENUM_KEYID_PROP pfnEnum
  64639.     );
  64640. # 18153 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64641. __declspec(dllimport)
  64642. BOOL
  64643. __stdcall
  64644. CryptCreateKeyIdentifierFromCSP(
  64645.          DWORD dwCertEncodingType,
  64646.              LPCSTR pszPubKeyOID,
  64647.                                     const PUBLICKEYSTRUC *pPubKeyStruc,
  64648.          DWORD cbPubKeyStruc,
  64649.          DWORD dwFlags,
  64650.                void *pvReserved,
  64651.                                                   BYTE *pbHash,
  64652.             DWORD *pcbHash
  64653.     );
  64654.  
  64655.  
  64656.  
  64657.  
  64658.  
  64659.  
  64660.  
  64661. #pragma endregion
  64662.  
  64663. #pragma region Application Family or OneCore Family
  64664. # 19139 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64665. typedef HANDLE HCERTCHAINENGINE;
  64666. # 19226 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64667. typedef struct _CERT_CHAIN_ENGINE_CONFIG {
  64668.  
  64669.     DWORD cbSize;
  64670.     HCERTSTORE hRestrictedRoot;
  64671.     HCERTSTORE hRestrictedTrust;
  64672.     HCERTSTORE hRestrictedOther;
  64673.     DWORD cAdditionalStore;
  64674.     HCERTSTORE* rghAdditionalStore;
  64675.     DWORD dwFlags;
  64676.     DWORD dwUrlRetrievalTimeout;
  64677.     DWORD MaximumCachedCertificates;
  64678.     DWORD CycleDetectionModulus;
  64679.  
  64680.  
  64681.     HCERTSTORE hExclusiveRoot;
  64682.     HCERTSTORE hExclusiveTrustedPeople;
  64683.  
  64684.  
  64685.  
  64686.     DWORD dwExclusiveFlags;
  64687.  
  64688.  
  64689. } CERT_CHAIN_ENGINE_CONFIG, *PCERT_CHAIN_ENGINE_CONFIG;
  64690. # 19260 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64691. __declspec(dllimport)
  64692.  
  64693. BOOL
  64694. __stdcall
  64695. CertCreateCertificateChainEngine (
  64696.          PCERT_CHAIN_ENGINE_CONFIG pConfig,
  64697.           HCERTCHAINENGINE* phChainEngine
  64698.     );
  64699.  
  64700.  
  64701.  
  64702.  
  64703.  
  64704. __declspec(dllimport)
  64705. void
  64706. __stdcall
  64707. CertFreeCertificateChainEngine (
  64708.              HCERTCHAINENGINE hChainEngine
  64709.     );
  64710.  
  64711.  
  64712.  
  64713.  
  64714.  
  64715.  
  64716. __declspec(dllimport)
  64717. BOOL
  64718. __stdcall
  64719. CertResyncCertificateChainEngine (
  64720.              HCERTCHAINENGINE hChainEngine
  64721.     );
  64722. # 19306 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64723. typedef struct _CERT_TRUST_STATUS {
  64724.  
  64725.     DWORD dwErrorStatus;
  64726.     DWORD dwInfoStatus;
  64727.  
  64728. } CERT_TRUST_STATUS, *PCERT_TRUST_STATUS;
  64729. # 19415 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64730. typedef struct _CERT_REVOCATION_INFO {
  64731.  
  64732.     DWORD cbSize;
  64733.     DWORD dwRevocationResult;
  64734.     LPCSTR pszRevocationOid;
  64735.     LPVOID pvOidSpecificInfo;
  64736.  
  64737.  
  64738.  
  64739.     BOOL fHasFreshnessTime;
  64740.     DWORD dwFreshnessTime;
  64741.  
  64742.  
  64743.     PCERT_REVOCATION_CRL_INFO pCrlInfo;
  64744.  
  64745. } CERT_REVOCATION_INFO, *PCERT_REVOCATION_INFO;
  64746.  
  64747.  
  64748.  
  64749.  
  64750.  
  64751. typedef struct _CERT_TRUST_LIST_INFO {
  64752.  
  64753.     DWORD cbSize;
  64754.     PCTL_ENTRY pCtlEntry;
  64755.     PCCTL_CONTEXT pCtlContext;
  64756.  
  64757. } CERT_TRUST_LIST_INFO, *PCERT_TRUST_LIST_INFO;
  64758.  
  64759.  
  64760.  
  64761.  
  64762.  
  64763. typedef struct _CERT_CHAIN_ELEMENT {
  64764.  
  64765.     DWORD cbSize;
  64766.     PCCERT_CONTEXT pCertContext;
  64767.     CERT_TRUST_STATUS TrustStatus;
  64768.     PCERT_REVOCATION_INFO pRevocationInfo;
  64769.  
  64770.     PCERT_ENHKEY_USAGE pIssuanceUsage;
  64771.     PCERT_ENHKEY_USAGE pApplicationUsage;
  64772.  
  64773.     LPCWSTR pwszExtendedErrorInfo;
  64774. } CERT_CHAIN_ELEMENT, *PCERT_CHAIN_ELEMENT;
  64775. typedef const CERT_CHAIN_ELEMENT* PCCERT_CHAIN_ELEMENT;
  64776. # 19471 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64777. typedef struct _CERT_SIMPLE_CHAIN {
  64778.  
  64779.     DWORD cbSize;
  64780.     CERT_TRUST_STATUS TrustStatus;
  64781.     DWORD cElement;
  64782.     PCERT_CHAIN_ELEMENT* rgpElement;
  64783.     PCERT_TRUST_LIST_INFO pTrustListInfo;
  64784.  
  64785.  
  64786.  
  64787.  
  64788.  
  64789.  
  64790.  
  64791.     BOOL fHasRevocationFreshnessTime;
  64792.     DWORD dwRevocationFreshnessTime;
  64793.  
  64794. } CERT_SIMPLE_CHAIN, *PCERT_SIMPLE_CHAIN;
  64795. typedef const CERT_SIMPLE_CHAIN* PCCERT_SIMPLE_CHAIN;
  64796. # 19501 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64797. typedef struct _CERT_CHAIN_CONTEXT CERT_CHAIN_CONTEXT, *PCERT_CHAIN_CONTEXT;
  64798. typedef const CERT_CHAIN_CONTEXT *PCCERT_CHAIN_CONTEXT;
  64799.  
  64800. struct _CERT_CHAIN_CONTEXT {
  64801.     DWORD cbSize;
  64802.     CERT_TRUST_STATUS TrustStatus;
  64803.     DWORD cChain;
  64804.     PCERT_SIMPLE_CHAIN* rgpChain;
  64805.  
  64806.  
  64807.  
  64808.     DWORD cLowerQualityChainContext;
  64809.     PCCERT_CHAIN_CONTEXT* rgpLowerQualityChainContext;
  64810.  
  64811.  
  64812.  
  64813.  
  64814.  
  64815.  
  64816.  
  64817.     BOOL fHasRevocationFreshnessTime;
  64818.     DWORD dwRevocationFreshnessTime;
  64819.  
  64820.  
  64821.     DWORD dwCreateFlags;
  64822.  
  64823.  
  64824.     GUID ChainId;
  64825. };
  64826. # 19542 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64827. typedef struct _CERT_USAGE_MATCH {
  64828.  
  64829.     DWORD dwType;
  64830.     CERT_ENHKEY_USAGE Usage;
  64831.  
  64832. } CERT_USAGE_MATCH, *PCERT_USAGE_MATCH;
  64833.  
  64834. typedef struct _CTL_USAGE_MATCH {
  64835.  
  64836.     DWORD dwType;
  64837.     CTL_USAGE Usage;
  64838.  
  64839. } CTL_USAGE_MATCH, *PCTL_USAGE_MATCH;
  64840.  
  64841. typedef struct _CERT_CHAIN_PARA {
  64842.  
  64843.     DWORD cbSize;
  64844.     CERT_USAGE_MATCH RequestedUsage;
  64845. # 19592 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64846. } CERT_CHAIN_PARA, *PCERT_CHAIN_PARA;
  64847. # 19713 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64848. __declspec(dllimport)
  64849.  
  64850. BOOL
  64851. __stdcall
  64852. CertGetCertificateChain (
  64853.              HCERTCHAINENGINE hChainEngine,
  64854.          PCCERT_CONTEXT pCertContext,
  64855.              LPFILETIME pTime,
  64856.              HCERTSTORE hAdditionalStore,
  64857.          PCERT_CHAIN_PARA pChainPara,
  64858.          DWORD dwFlags,
  64859.                LPVOID pvReserved,
  64860.           PCCERT_CHAIN_CONTEXT* ppChainContext
  64861.     );
  64862.  
  64863.  
  64864.  
  64865.  
  64866.  
  64867. __declspec(dllimport)
  64868. void
  64869. __stdcall
  64870. CertFreeCertificateChain (
  64871.          PCCERT_CHAIN_CONTEXT pChainContext
  64872.     );
  64873.  
  64874.  
  64875.  
  64876.  
  64877.  
  64878. __declspec(dllimport)
  64879. PCCERT_CHAIN_CONTEXT
  64880. __stdcall
  64881. CertDuplicateCertificateChain (
  64882.          PCCERT_CHAIN_CONTEXT pChainContext
  64883.     );
  64884.  
  64885.  
  64886.  
  64887.  
  64888.  
  64889.  
  64890.  
  64891. struct _CERT_REVOCATION_CHAIN_PARA {
  64892.     DWORD cbSize;
  64893.     HCERTCHAINENGINE hChainEngine;
  64894.     HCERTSTORE hAdditionalStore;
  64895.     DWORD dwChainFlags;
  64896.     DWORD dwUrlRetrievalTimeout;
  64897.     LPFILETIME pftCurrentTime;
  64898.     LPFILETIME pftCacheResync;
  64899.  
  64900.  
  64901.  
  64902.     DWORD cbMaxUrlRetrievalByteCount;
  64903. };
  64904. # 19788 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64905. typedef struct _CRL_REVOCATION_INFO {
  64906.  
  64907.     PCRL_ENTRY pCrlEntry;
  64908.     PCCRL_CONTEXT pCrlContext;
  64909.     PCCERT_CHAIN_CONTEXT pCrlIssuerChain;
  64910.  
  64911. } CRL_REVOCATION_INFO, *PCRL_REVOCATION_INFO;
  64912.  
  64913.  
  64914. #pragma endregion
  64915.  
  64916. #pragma region Desktop Family or OneCore Family
  64917. # 19823 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64918. __declspec(dllimport)
  64919. PCCERT_CHAIN_CONTEXT
  64920. __stdcall
  64921. CertFindChainInStore(
  64922.          HCERTSTORE hCertStore,
  64923.          DWORD dwCertEncodingType,
  64924.          DWORD dwFindFlags,
  64925.          DWORD dwFindType,
  64926.              const void *pvFindPara,
  64927.              PCCERT_CHAIN_CONTEXT pPrevChainContext
  64928.     );
  64929.  
  64930.  
  64931. #pragma endregion
  64932.  
  64933. #pragma region Application Family or OneCore Family
  64934. # 19887 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64935. typedef BOOL (__stdcall *PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK)(
  64936.          PCCERT_CONTEXT pCert,
  64937.                 void *pvFindArg
  64938.     );
  64939.  
  64940. typedef struct _CERT_CHAIN_FIND_BY_ISSUER_PARA {
  64941.     DWORD cbSize;
  64942.  
  64943.  
  64944.     LPCSTR pszUsageIdentifier;
  64945.  
  64946.  
  64947.     DWORD dwKeySpec;
  64948.  
  64949.  
  64950.  
  64951.  
  64952.  
  64953.  
  64954.     DWORD dwAcquirePrivateKeyFlags;
  64955.  
  64956.  
  64957.  
  64958.     DWORD cIssuer;
  64959.     CERT_NAME_BLOB *rgIssuer;
  64960.  
  64961.  
  64962.  
  64963.  
  64964.     PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK pfnFindCallback;
  64965.     void *pvFindArg;
  64966. # 19939 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64967. } CERT_CHAIN_FIND_ISSUER_PARA, *PCERT_CHAIN_FIND_ISSUER_PARA,
  64968.     CERT_CHAIN_FIND_BY_ISSUER_PARA, *PCERT_CHAIN_FIND_BY_ISSUER_PARA;
  64969. # 19978 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64970. typedef struct _CERT_CHAIN_POLICY_PARA {
  64971.     DWORD cbSize;
  64972.     DWORD dwFlags;
  64973.     void *pvExtraPolicyPara;
  64974. } CERT_CHAIN_POLICY_PARA, *PCERT_CHAIN_POLICY_PARA;
  64975.  
  64976.  
  64977.  
  64978.  
  64979.  
  64980.  
  64981. typedef struct _CERT_CHAIN_POLICY_STATUS {
  64982.     DWORD cbSize;
  64983.     DWORD dwError;
  64984.     LONG lChainIndex;
  64985.     LONG lElementIndex;
  64986.     void *pvExtraPolicyStatus;
  64987. } CERT_CHAIN_POLICY_STATUS, *PCERT_CHAIN_POLICY_STATUS;
  64988. # 20057 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64989. __declspec(dllimport)
  64990. BOOL
  64991. __stdcall
  64992. CertVerifyCertificateChainPolicy(
  64993.          LPCSTR pszPolicyOID,
  64994.          PCCERT_CHAIN_CONTEXT pChainContext,
  64995.          PCERT_CHAIN_POLICY_PARA pPolicyPara,
  64996.             PCERT_CHAIN_POLICY_STATUS pPolicyStatus
  64997.     );
  64998. # 20110 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  64999. typedef struct _AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA {
  65000.     DWORD cbSize;
  65001.     DWORD dwRegPolicySettings;
  65002.     PCMSG_SIGNER_INFO pSignerInfo;
  65003. } AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA,
  65004.     *PAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_PARA;
  65005.  
  65006. typedef struct _AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS {
  65007.     DWORD cbSize;
  65008.     BOOL fCommercial;
  65009. } AUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS,
  65010.     *PAUTHENTICODE_EXTRA_CERT_CHAIN_POLICY_STATUS;
  65011. # 20135 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65012. typedef struct _AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA {
  65013.     DWORD cbSize;
  65014.     DWORD dwRegPolicySettings;
  65015.     BOOL fCommercial;
  65016. } AUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA,
  65017.     *PAUTHENTICODE_TS_EXTRA_CERT_CHAIN_POLICY_PARA;
  65018. # 20153 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65019. typedef struct _HTTPSPolicyCallbackData
  65020. {
  65021.     union {
  65022.         DWORD cbStruct;
  65023.         DWORD cbSize;
  65024.     } ;
  65025.  
  65026.     DWORD dwAuthType;
  65027.  
  65028.  
  65029.  
  65030.     DWORD fdwChecks;
  65031.  
  65032.     WCHAR *pwszServerName;
  65033.  
  65034. } HTTPSPolicyCallbackData, *PHTTPSPolicyCallbackData,
  65035.     SSL_EXTRA_CERT_CHAIN_POLICY_PARA, *PSSL_EXTRA_CERT_CHAIN_POLICY_PARA;
  65036. # 20274 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65037. typedef struct _EV_EXTRA_CERT_CHAIN_POLICY_PARA {
  65038.     DWORD cbSize;
  65039.     DWORD dwRootProgramQualifierFlags;
  65040. } EV_EXTRA_CERT_CHAIN_POLICY_PARA,
  65041.     *PEV_EXTRA_CERT_CHAIN_POLICY_PARA;
  65042.  
  65043. typedef struct _EV_EXTRA_CERT_CHAIN_POLICY_STATUS {
  65044.     DWORD cbSize;
  65045.     DWORD dwQualifiers;
  65046.     DWORD dwIssuanceUsageIndex;
  65047. } EV_EXTRA_CERT_CHAIN_POLICY_STATUS, *PEV_EXTRA_CERT_CHAIN_POLICY_STATUS;
  65048. # 20306 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65049. typedef struct _SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS {
  65050.     DWORD cbSize;
  65051.     DWORD dwErrorLevel;
  65052.     DWORD dwErrorCategory;
  65053.     DWORD dwReserved;
  65054.     WCHAR wszErrorText[256];
  65055. } SSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS, *PSSL_F12_EXTRA_CERT_CHAIN_POLICY_STATUS;
  65056. # 20379 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65057. typedef struct _SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA {
  65058.     DWORD cbSize;
  65059.     DWORD dwReserved;
  65060.     LPWSTR pwszServerName;
  65061.  
  65062.  
  65063.     LPSTR rgpszHpkpValue[2];
  65064. } SSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA,
  65065.     *PSSL_HPKP_HEADER_EXTRA_CERT_CHAIN_POLICY_PARA;
  65066. # 20438 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65067. typedef struct _SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA {
  65068.     DWORD cbSize;
  65069.     DWORD dwReserved;
  65070.     PCWSTR pwszServerName;
  65071. } SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA, *PSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_PARA;
  65072.  
  65073.  
  65074. typedef struct _SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS {
  65075.     DWORD cbSize;
  65076.     LONG lError;
  65077.     WCHAR wszErrorText[512];
  65078. } SSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS, *PSSL_KEY_PIN_EXTRA_CERT_CHAIN_POLICY_STATUS;
  65079. # 20471 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65080. __declspec(dllimport)
  65081. BOOL
  65082. __stdcall
  65083. CryptStringToBinaryA(
  65084.                           LPCSTR pszString,
  65085.          DWORD cchString,
  65086.          DWORD dwFlags,
  65087.                                                       BYTE *pbBinary,
  65088.             DWORD *pcbBinary,
  65089.               DWORD *pdwSkip,
  65090.               DWORD *pdwFlags
  65091.     );
  65092. # 20493 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65093. __declspec(dllimport)
  65094. BOOL
  65095. __stdcall
  65096. CryptStringToBinaryW(
  65097.                           LPCWSTR pszString,
  65098.          DWORD cchString,
  65099.          DWORD dwFlags,
  65100.                                                       BYTE *pbBinary,
  65101.             DWORD *pcbBinary,
  65102.               DWORD *pdwSkip,
  65103.               DWORD *pdwFlags
  65104.     );
  65105. # 20518 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65106. __declspec(dllimport)
  65107. BOOL
  65108. __stdcall
  65109. CryptBinaryToStringA(
  65110.                                const BYTE *pbBinary,
  65111.          DWORD cbBinary,
  65112.          DWORD dwFlags,
  65113.                                                   LPSTR pszString,
  65114.             DWORD *pcchString
  65115.     );
  65116.  
  65117.  
  65118.  
  65119.  
  65120.  
  65121.  
  65122.  
  65123. __declspec(dllimport)
  65124. BOOL
  65125. __stdcall
  65126. CryptBinaryToStringW(
  65127.                                const BYTE *pbBinary,
  65128.          DWORD cbBinary,
  65129.          DWORD dwFlags,
  65130.                                                   LPWSTR pszString,
  65131.             DWORD *pcchString
  65132.     );
  65133. # 20635 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65134. typedef struct _CRYPT_PKCS12_PBE_PARAMS
  65135. {
  65136.     int iIterations;
  65137.     ULONG cbSalt;
  65138. }
  65139. CRYPT_PKCS12_PBE_PARAMS;
  65140. # 20690 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65141. __declspec(dllimport)
  65142. HCERTSTORE
  65143. __stdcall
  65144. PFXImportCertStore(
  65145.          CRYPT_DATA_BLOB* pPFX,
  65146.          LPCWSTR szPassword,
  65147.          DWORD dwFlags);
  65148. # 20732 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65149. __declspec(dllimport)
  65150. BOOL
  65151. __stdcall
  65152. PFXIsPFXBlob(
  65153.          CRYPT_DATA_BLOB* pPFX);
  65154. # 20748 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65155. __declspec(dllimport)
  65156. BOOL
  65157. __stdcall
  65158. PFXVerifyPassword(
  65159.          CRYPT_DATA_BLOB* pPFX,
  65160.          LPCWSTR szPassword,
  65161.          DWORD dwFlags);
  65162. # 20814 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65163. __declspec(dllimport)
  65164. BOOL
  65165. __stdcall
  65166. PFXExportCertStoreEx(
  65167.          HCERTSTORE hStore,
  65168.             CRYPT_DATA_BLOB* pPFX,
  65169.          LPCWSTR szPassword,
  65170.          void* pvPara,
  65171.          DWORD dwFlags);
  65172. # 20849 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65173. typedef struct _PKCS12_PBES2_EXPORT_PARAMS
  65174. {
  65175.     DWORD dwSize;
  65176.     PVOID hNcryptDescriptor;
  65177.     LPWSTR pwszPbes2Alg;
  65178. } PKCS12_PBES2_EXPORT_PARAMS, *PPKCS12_PBES2_EXPORT_PARAMS;
  65179. # 20886 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65180. __declspec(dllimport)
  65181. BOOL
  65182. __stdcall
  65183. PFXExportCertStore(
  65184.          HCERTSTORE hStore,
  65185.             CRYPT_DATA_BLOB* pPFX,
  65186.          LPCWSTR szPassword,
  65187.          DWORD dwFlags);
  65188.  
  65189.  
  65190. #pragma endregion
  65191.  
  65192. #pragma region Desktop Family or OneCore Family
  65193. # 20914 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65194. typedef void *HCERT_SERVER_OCSP_RESPONSE;
  65195.  
  65196.  
  65197.  
  65198.  
  65199. typedef struct _CERT_SERVER_OCSP_RESPONSE_CONTEXT
  65200.     CERT_SERVER_OCSP_RESPONSE_CONTEXT,
  65201.     *PCERT_SERVER_OCSP_RESPONSE_CONTEXT;
  65202. typedef const CERT_SERVER_OCSP_RESPONSE_CONTEXT
  65203.     *PCCERT_SERVER_OCSP_RESPONSE_CONTEXT;
  65204.  
  65205. struct _CERT_SERVER_OCSP_RESPONSE_CONTEXT {
  65206.     DWORD cbSize;
  65207.     BYTE *pbEncodedOcspResponse;
  65208.     DWORD cbEncodedOcspResponse;
  65209. };
  65210.  
  65211.  
  65212.  
  65213.  
  65214.  
  65215.  
  65216.  
  65217. typedef void (__stdcall *PFN_CERT_SERVER_OCSP_RESPONSE_UPDATE_CALLBACK)(
  65218.          PCCERT_CHAIN_CONTEXT pChainContext,
  65219.          PCCERT_SERVER_OCSP_RESPONSE_CONTEXT pServerOcspResponseContext,
  65220.          PCCRL_CONTEXT pNewCrlContext,
  65221.              PCCRL_CONTEXT pPrevCrlContext,
  65222.                 PVOID pvArg,
  65223.          DWORD dwWriteOcspFileError
  65224.     );
  65225.  
  65226.  
  65227.  
  65228.  
  65229.  
  65230. typedef struct _CERT_SERVER_OCSP_RESPONSE_OPEN_PARA {
  65231.     DWORD cbSize;
  65232.     DWORD dwFlags;
  65233.  
  65234.  
  65235.  
  65236.  
  65237.     DWORD *pcbUsedSize;
  65238. # 20967 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65239.     PWSTR pwszOcspDirectory;
  65240.  
  65241.  
  65242.  
  65243.     PFN_CERT_SERVER_OCSP_RESPONSE_UPDATE_CALLBACK pfnUpdateCallback;
  65244.     PVOID pvUpdateCallbackArg;
  65245. } CERT_SERVER_OCSP_RESPONSE_OPEN_PARA, *PCERT_SERVER_OCSP_RESPONSE_OPEN_PARA;
  65246. # 21005 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65247. __declspec(dllimport)
  65248. HCERT_SERVER_OCSP_RESPONSE
  65249. __stdcall
  65250. CertOpenServerOcspResponse(
  65251.          PCCERT_CHAIN_CONTEXT pChainContext,
  65252.          DWORD dwFlags,
  65253.              PCERT_SERVER_OCSP_RESPONSE_OPEN_PARA pOpenPara
  65254.     );
  65255. # 21023 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65256. __declspec(dllimport)
  65257. void
  65258. __stdcall
  65259. CertAddRefServerOcspResponse(
  65260.              HCERT_SERVER_OCSP_RESPONSE hServerOcspResponse
  65261.     );
  65262.  
  65263.  
  65264.  
  65265.  
  65266.  
  65267.  
  65268.  
  65269. __declspec(dllimport)
  65270. void
  65271. __stdcall
  65272. CertCloseServerOcspResponse(
  65273.              HCERT_SERVER_OCSP_RESPONSE hServerOcspResponse,
  65274.          DWORD dwFlags
  65275.     );
  65276. # 21057 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65277. __declspec(dllimport)
  65278. PCCERT_SERVER_OCSP_RESPONSE_CONTEXT
  65279. __stdcall
  65280. CertGetServerOcspResponseContext(
  65281.          HCERT_SERVER_OCSP_RESPONSE hServerOcspResponse,
  65282.          DWORD dwFlags,
  65283.                LPVOID pvReserved
  65284.     );
  65285.  
  65286.  
  65287.  
  65288.  
  65289.  
  65290.  
  65291. __declspec(dllimport)
  65292. void
  65293. __stdcall
  65294. CertAddRefServerOcspResponseContext(
  65295.              PCCERT_SERVER_OCSP_RESPONSE_CONTEXT pServerOcspResponseContext
  65296.     );
  65297.  
  65298.  
  65299.  
  65300.  
  65301.  
  65302. __declspec(dllimport)
  65303. void
  65304. __stdcall
  65305. CertFreeServerOcspResponseContext(
  65306.              PCCERT_SERVER_OCSP_RESPONSE_CONTEXT pServerOcspResponseContext
  65307.     );
  65308. # 21139 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65309. __declspec(dllimport)
  65310.  
  65311. BOOL
  65312. __stdcall
  65313. CertRetrieveLogoOrBiometricInfo(
  65314.          PCCERT_CONTEXT pCertContext,
  65315.          LPCSTR lpszLogoOrBiometricType,
  65316.          DWORD dwRetrievalFlags,
  65317.          DWORD dwTimeout,
  65318.          DWORD dwFlags,
  65319.                void *pvReserved,
  65320.                                          BYTE **ppbData,
  65321.           DWORD *pcbData,
  65322.                                   LPWSTR *ppwszMimeType
  65323.     );
  65324.  
  65325.  
  65326. #pragma endregion
  65327.  
  65328. #pragma region Application Family or OneCore Family
  65329. # 21181 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65330. typedef struct _CERT_SELECT_CHAIN_PARA
  65331. {
  65332.     HCERTCHAINENGINE hChainEngine;
  65333.     PFILETIME pTime;
  65334.     HCERTSTORE hAdditionalStore;
  65335.     PCERT_CHAIN_PARA pChainPara;
  65336.     DWORD dwFlags;
  65337. }
  65338. CERT_SELECT_CHAIN_PARA, *PCERT_SELECT_CHAIN_PARA;
  65339. typedef const CERT_SELECT_CHAIN_PARA* PCCERT_SELECT_CHAIN_PARA;
  65340.  
  65341.  
  65342.  
  65343. typedef struct _CERT_SELECT_CRITERIA
  65344. {
  65345.     DWORD dwType;
  65346.     DWORD cPara;
  65347.                         void** ppPara;
  65348. }
  65349. CERT_SELECT_CRITERIA, *PCERT_SELECT_CRITERIA;
  65350. typedef const CERT_SELECT_CRITERIA* PCCERT_SELECT_CRITERIA;
  65351. # 21243 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65352. __declspec(dllimport)
  65353.  
  65354. BOOL
  65355. __stdcall
  65356. CertSelectCertificateChains(
  65357.              LPCGUID pSelectionContext,
  65358.          DWORD dwFlags,
  65359.              PCCERT_SELECT_CHAIN_PARA pChainParameters,
  65360.          DWORD cCriteria,
  65361.                               PCCERT_SELECT_CRITERIA rgpCriteria,
  65362.          HCERTSTORE hStore,
  65363.           PDWORD pcSelection,
  65364.                                          PCCERT_CHAIN_CONTEXT** pprgpSelection
  65365.     );
  65366.  
  65367.  
  65368.  
  65369.  
  65370.  
  65371.  
  65372. __declspec(dllimport)
  65373. void
  65374. __stdcall
  65375. CertFreeCertificateChainList(
  65376.          PCCERT_CHAIN_CONTEXT* prgpSelection
  65377.     );
  65378. # 21284 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65379. typedef struct _CRYPT_TIMESTAMP_REQUEST
  65380. {
  65381.     DWORD dwVersion;
  65382.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  65383.     CRYPT_DER_BLOB HashedMessage;
  65384.     LPSTR pszTSAPolicyId;
  65385.     CRYPT_INTEGER_BLOB Nonce;
  65386.     BOOL fCertReq;
  65387.     DWORD cExtension;
  65388.  
  65389.     PCERT_EXTENSION rgExtension;
  65390. } CRYPT_TIMESTAMP_REQUEST, *PCRYPT_TIMESTAMP_REQUEST;
  65391.  
  65392.  
  65393.  
  65394.  
  65395.  
  65396. typedef struct _CRYPT_TIMESTAMP_RESPONSE
  65397. {
  65398.     DWORD dwStatus;
  65399.     DWORD cFreeText;
  65400.  
  65401.     LPWSTR* rgFreeText;
  65402.     CRYPT_BIT_BLOB FailureInfo;
  65403.     CRYPT_DER_BLOB ContentInfo;
  65404. } CRYPT_TIMESTAMP_RESPONSE, *PCRYPT_TIMESTAMP_RESPONSE;
  65405. # 21331 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65406. typedef struct _CRYPT_TIMESTAMP_ACCURACY
  65407. {
  65408.     DWORD dwSeconds;
  65409.     DWORD dwMillis;
  65410.     DWORD dwMicros;
  65411. } CRYPT_TIMESTAMP_ACCURACY, *PCRYPT_TIMESTAMP_ACCURACY;
  65412.  
  65413.  
  65414.  
  65415.  
  65416.  
  65417. typedef struct _CRYPT_TIMESTAMP_INFO
  65418. {
  65419.     DWORD dwVersion;
  65420.     LPSTR pszTSAPolicyId;
  65421.     CRYPT_ALGORITHM_IDENTIFIER HashAlgorithm;
  65422.     CRYPT_DER_BLOB HashedMessage;
  65423.     CRYPT_INTEGER_BLOB SerialNumber;
  65424.     FILETIME ftTime;
  65425.     PCRYPT_TIMESTAMP_ACCURACY pvAccuracy;
  65426.     BOOL fOrdering;
  65427.     CRYPT_DER_BLOB Nonce;
  65428.     CRYPT_DER_BLOB Tsa;
  65429.     DWORD cExtension;
  65430.  
  65431.     PCERT_EXTENSION rgExtension;
  65432. } CRYPT_TIMESTAMP_INFO, *PCRYPT_TIMESTAMP_INFO;
  65433.  
  65434.  
  65435.  
  65436.  
  65437.  
  65438. typedef struct _CRYPT_TIMESTAMP_CONTEXT
  65439. {
  65440.     DWORD cbEncoded;
  65441.  
  65442.     BYTE *pbEncoded;
  65443.     PCRYPT_TIMESTAMP_INFO pTimeStamp;
  65444. } CRYPT_TIMESTAMP_CONTEXT, *PCRYPT_TIMESTAMP_CONTEXT;
  65445. # 21390 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65446. typedef struct _CRYPT_TIMESTAMP_PARA
  65447. {
  65448.     LPCSTR pszTSAPolicyId;
  65449.     BOOL fRequestCerts;
  65450.     CRYPT_INTEGER_BLOB Nonce;
  65451.     DWORD cExtension;
  65452.  
  65453.     PCERT_EXTENSION rgExtension;
  65454. } CRYPT_TIMESTAMP_PARA, *PCRYPT_TIMESTAMP_PARA;
  65455. # 21444 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65456. BOOL
  65457. __stdcall
  65458. CryptRetrieveTimeStamp(
  65459.                                 LPCWSTR wszUrl,
  65460.                                 DWORD dwRetrievalFlags,
  65461.                                 DWORD dwTimeout,
  65462.                                 LPCSTR pszHashId,
  65463.                                 const CRYPT_TIMESTAMP_PARA *pPara,
  65464.  
  65465.                                 const BYTE *pbData,
  65466.                                 DWORD cbData,
  65467.                              PCRYPT_TIMESTAMP_CONTEXT *ppTsContext,
  65468.                                           PCCERT_CONTEXT *ppTsSigner,
  65469.                                 HCERTSTORE *phStore
  65470.     );
  65471. # 21508 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65472. BOOL
  65473. __stdcall
  65474. CryptVerifyTimeStampSignature (
  65475.  
  65476.                                 const BYTE *pbTSContentInfo,
  65477.                                 DWORD cbTSContentInfo,
  65478.  
  65479.                                 const BYTE *pbData,
  65480.                                 DWORD cbData,
  65481.                                 HCERTSTORE hAdditionalStore,
  65482.                              PCRYPT_TIMESTAMP_CONTEXT *ppTsContext,
  65483.                                           PCCERT_CONTEXT *ppTsSigner,
  65484.                                 HCERTSTORE *phStore
  65485.     );
  65486.  
  65487.  
  65488.  
  65489.  
  65490. #pragma endregion
  65491.  
  65492. #pragma region Desktop Family or OneCore Family
  65493. # 21583 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65494. typedef BOOL (__stdcall *PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH)(
  65495.          LPVOID pContext,
  65496.                                             PCERT_NAME_BLOB *rgIdentifierOrNameList,
  65497.          DWORD dwIdentifierOrNameListCount);
  65498. # 21618 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65499. typedef BOOL (__stdcall *PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET)(
  65500.              LPVOID pPluginContext,
  65501.              PCRYPT_DATA_BLOB pIdentifier,
  65502.          DWORD dwNameType,
  65503.          PCERT_NAME_BLOB pNameBlob,
  65504.                                             PBYTE *ppbContent,
  65505.           DWORD *pcbContent,
  65506.                               PCWSTR *ppwszPassword,
  65507.                               PCRYPT_DATA_BLOB *ppIdentifier);
  65508. # 21644 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65509. typedef void (__stdcall * PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE)(
  65510.          DWORD dwReason,
  65511.              LPVOID pPluginContext);
  65512. # 21661 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65513. typedef void (__stdcall *PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD)(
  65514.              LPVOID pPluginContext,
  65515.          PCWSTR pwszPassword
  65516. );
  65517. # 21678 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65518. typedef void (__stdcall *PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE)(
  65519.              LPVOID pPluginContext,
  65520.           PBYTE pbData
  65521. );
  65522. # 21699 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65523. typedef void (__stdcall *PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER)(
  65524.              LPVOID pPluginContext,
  65525.          PCRYPT_DATA_BLOB pIdentifier);
  65526.  
  65527.  
  65528. typedef struct _CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE
  65529. {
  65530.                                                                                                             DWORD cbSize;
  65531.     PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET pfnGet;
  65532.     PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE pfnRelease;
  65533.     PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD pfnFreePassword;
  65534.     PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE pfnFree;
  65535.     PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER pfnFreeIdentifier;
  65536. } CRYPT_OBJECT_LOCATOR_PROVIDER_TABLE, *PCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE;
  65537. # 21742 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65538. typedef BOOL (__stdcall *PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE)(
  65539.          PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH pfnFlush,
  65540.          LPVOID pContext,
  65541.           DWORD *pdwExpectedObjectCount,
  65542.              PCRYPT_OBJECT_LOCATOR_PROVIDER_TABLE *ppFuncTable,
  65543.                               void **ppPluginContext);
  65544. # 21770 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65545. __declspec(dllimport)
  65546. BOOL
  65547. __stdcall
  65548. CertIsWeakHash(
  65549.          DWORD dwHashUseType,
  65550.          LPCWSTR pwszCNGHashAlgid,
  65551.          DWORD dwChainFlags,
  65552.              PCCERT_CHAIN_CONTEXT pSignerChainContext,
  65553.              LPFILETIME pTimeStamp,
  65554.              LPCWSTR pwszFileName
  65555.     );
  65556.  
  65557. typedef __declspec(dllimport) BOOL (__stdcall *PFN_CERT_IS_WEAK_HASH)(
  65558.          DWORD dwHashUseType,
  65559.          LPCWSTR pwszCNGHashAlgid,
  65560.          DWORD dwChainFlags,
  65561.              PCCERT_CHAIN_CONTEXT pSignerChainContext,
  65562.              LPFILETIME pTimeStamp,
  65563.              LPCWSTR pwszFileName
  65564.     );
  65565. # 21803 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65566. #pragma endregion
  65567. # 21821 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65568. #pragma region Desktop Family or OneCore Family
  65569. # 21832 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 3
  65570. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dpapi.h" 1 3
  65571. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dpapi.h" 3
  65572. #pragma option push -b -a8 -pc -A- -w-pun
  65573. # 40 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dpapi.h" 3
  65574. #pragma region App Family or OneCore Family
  65575. # 86 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dpapi.h" 3
  65576. typedef struct _CRYPTPROTECT_PROMPTSTRUCT
  65577. {
  65578.     DWORD cbSize;
  65579.     DWORD dwPromptFlags;
  65580.     HWND hwndApp;
  65581.     LPCWSTR szPrompt;
  65582. } CRYPTPROTECT_PROMPTSTRUCT, *PCRYPTPROTECT_PROMPTSTRUCT;
  65583. # 168 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dpapi.h" 3
  65584. BOOL
  65585. __stdcall
  65586. CryptProtectData(
  65587.                     DATA_BLOB* pDataIn,
  65588.                     LPCWSTR szDataDescr,
  65589.                     DATA_BLOB* pOptionalEntropy,
  65590.                     PVOID pvReserved,
  65591.                     CRYPTPROTECT_PROMPTSTRUCT* pPromptStruct,
  65592.                     DWORD dwFlags,
  65593.                     DATA_BLOB* pDataOut
  65594.     );
  65595.  
  65596.  
  65597. BOOL
  65598. __stdcall
  65599. CryptUnprotectData(
  65600.                     DATA_BLOB* pDataIn,
  65601.                                   LPWSTR* ppszDataDescr,
  65602.                     DATA_BLOB* pOptionalEntropy,
  65603.                     PVOID pvReserved,
  65604.                     CRYPTPROTECT_PROMPTSTRUCT* pPromptStruct,
  65605.                     DWORD dwFlags,
  65606.                     DATA_BLOB* pDataOut
  65607.     );
  65608.  
  65609.  
  65610. #pragma endregion
  65611.  
  65612. #pragma region Desktop Family
  65613.  
  65614.  
  65615.  
  65616. BOOL
  65617. __stdcall
  65618. CryptProtectDataNoUI(
  65619.                     DATA_BLOB* pDataIn,
  65620.                     LPCWSTR szDataDescr,
  65621.                     DATA_BLOB* pOptionalEntropy,
  65622.                     PVOID pvReserved,
  65623.                     CRYPTPROTECT_PROMPTSTRUCT* pPromptStruct,
  65624.                     DWORD dwFlags,
  65625.  
  65626.                     const BYTE *pbOptionalPassword,
  65627.                     DWORD cbOptionalPassword,
  65628.                     DATA_BLOB* pDataOut
  65629.     );
  65630.  
  65631. BOOL
  65632. __stdcall
  65633. CryptUnprotectDataNoUI(
  65634.                     DATA_BLOB* pDataIn,
  65635.                                   LPWSTR* ppszDataDescr,
  65636.                     DATA_BLOB* pOptionalEntropy,
  65637.                     PVOID pvReserved,
  65638.                     CRYPTPROTECT_PROMPTSTRUCT* pPromptStruct,
  65639.                     DWORD dwFlags,
  65640.  
  65641.                     const BYTE *pbOptionalPassword,
  65642.                     DWORD cbOptionalPassword,
  65643.                     DATA_BLOB* pDataOut
  65644.     );
  65645.  
  65646.  
  65647.  
  65648. #pragma endregion
  65649.  
  65650. #pragma region Desktop Family or OneCore Family
  65651.  
  65652.  
  65653.  
  65654.  
  65655.  
  65656. BOOL
  65657. __stdcall
  65658. CryptUpdateProtectedState(
  65659.                     PSID pOldSid,
  65660.                     LPCWSTR pwszOldPassword,
  65661.                     DWORD dwFlags,
  65662.                     DWORD *pdwSuccessCount,
  65663.                     DWORD *pdwFailureCount);
  65664.  
  65665.  
  65666.  
  65667.  
  65668. #pragma endregion
  65669.  
  65670. #pragma region App Family or OneCore Family
  65671. # 290 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\dpapi.h" 3
  65672. BOOL
  65673. __stdcall
  65674. CryptProtectMemory(
  65675.                     LPVOID pDataIn,
  65676.                     DWORD cbDataIn,
  65677.                     DWORD dwFlags
  65678.     );
  65679.  
  65680.  
  65681. BOOL
  65682. __stdcall
  65683. CryptUnprotectMemory(
  65684.                     LPVOID pDataIn,
  65685.                     DWORD cbDataIn,
  65686.                     DWORD dwFlags
  65687.     );
  65688.  
  65689.  
  65690. #pragma endregion
  65691.  
  65692.  
  65693.  
  65694.  
  65695.  
  65696. #pragma option pop
  65697. # 21832 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wincrypt.h" 2 3
  65698.  
  65699.  
  65700.  
  65701.  
  65702. #pragma endregion
  65703.  
  65704. #pragma option pop
  65705. # 252 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  65706.  
  65707. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 1 3
  65708. #pragma option push -b -a8 -pc -A- -w-pun
  65709. # 34 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  65710. #pragma region Desktop Family
  65711. # 62 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  65712. typedef struct _CERTIFICATE_BLOB {
  65713.  
  65714.     DWORD dwCertEncodingType;
  65715.  
  65716.  
  65717.  
  65718.  
  65719.  
  65720.     DWORD cbData;
  65721.  
  65722.  
  65723.  
  65724.  
  65725.     PBYTE pbData;
  65726.  
  65727. } EFS_CERTIFICATE_BLOB, *PEFS_CERTIFICATE_BLOB;
  65728.  
  65729.  
  65730.  
  65731.  
  65732.  
  65733. typedef struct _EFS_HASH_BLOB {
  65734.  
  65735.  
  65736.  
  65737.  
  65738.     DWORD cbData;
  65739.  
  65740.  
  65741.  
  65742.  
  65743.     PBYTE pbData;
  65744.  
  65745. } EFS_HASH_BLOB, *PEFS_HASH_BLOB;
  65746. # 105 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  65747. typedef struct _EFS_RPC_BLOB {
  65748.  
  65749.  
  65750.  
  65751.  
  65752.     DWORD cbData;
  65753.  
  65754.  
  65755.  
  65756.  
  65757.     PBYTE pbData;
  65758.  
  65759. } EFS_RPC_BLOB, *PEFS_RPC_BLOB;
  65760.  
  65761.  
  65762.  
  65763.  
  65764.  
  65765.  
  65766. typedef struct _EFS_PIN_BLOB {
  65767.  
  65768.  
  65769.  
  65770.  
  65771.     DWORD cbPadding;
  65772.  
  65773.  
  65774.  
  65775.  
  65776.     DWORD cbData;
  65777.  
  65778.  
  65779.  
  65780.  
  65781.     PBYTE pbData;
  65782.  
  65783. } EFS_PIN_BLOB, *PEFS_PIN_BLOB;
  65784.  
  65785.  
  65786.  
  65787.  
  65788.  
  65789.  
  65790.  
  65791. typedef struct _EFS_KEY_INFO {
  65792.  
  65793.     DWORD dwVersion;
  65794.     ULONG Entropy;
  65795.     ALG_ID Algorithm;
  65796.     ULONG KeyLength;
  65797.  
  65798. } EFS_KEY_INFO, *PEFS_KEY_INFO;
  65799.  
  65800.  
  65801.  
  65802.  
  65803.  
  65804.  
  65805. typedef struct _EFS_COMPATIBILITY_INFO {
  65806.  
  65807.     DWORD EfsVersion;
  65808.  
  65809. } EFS_COMPATIBILITY_INFO, *PEFS_COMPATIBILITY_INFO;
  65810. # 192 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  65811. typedef struct _EFS_VERSION_INFO {
  65812.     DWORD EfsVersion;
  65813.     DWORD SubVersion;
  65814. } EFS_VERSION_INFO, *PEFS_VERSION_INFO;
  65815. # 207 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  65816. typedef struct _EFS_DECRYPTION_STATUS_INFO {
  65817.  
  65818.     DWORD dwDecryptionError;
  65819.     DWORD dwHashOffset;
  65820.     DWORD cbHash;
  65821.  
  65822. } EFS_DECRYPTION_STATUS_INFO, *PEFS_DECRYPTION_STATUS_INFO;
  65823.  
  65824. typedef struct _EFS_ENCRYPTION_STATUS_INFO {
  65825.  
  65826.     BOOL bHasCurrentKey;
  65827.     DWORD dwEncryptionError;
  65828.  
  65829. } EFS_ENCRYPTION_STATUS_INFO, *PEFS_ENCRYPTION_STATUS_INFO;
  65830.  
  65831.  
  65832.  
  65833.  
  65834.  
  65835.  
  65836.  
  65837. typedef struct _ENCRYPTION_CERTIFICATE {
  65838.     DWORD cbTotalLength;
  65839.     SID * pUserSid;
  65840.     PEFS_CERTIFICATE_BLOB pCertBlob;
  65841. } ENCRYPTION_CERTIFICATE, *PENCRYPTION_CERTIFICATE;
  65842.  
  65843.  
  65844.  
  65845.  
  65846. typedef struct _ENCRYPTION_CERTIFICATE_HASH {
  65847.     DWORD cbTotalLength;
  65848.     SID * pUserSid;
  65849.     PEFS_HASH_BLOB pHash;
  65850.  
  65851.  
  65852.  
  65853.  
  65854.     LPWSTR lpDisplayInformation;
  65855.  
  65856. } ENCRYPTION_CERTIFICATE_HASH, *PENCRYPTION_CERTIFICATE_HASH;
  65857.  
  65858. typedef struct _ENCRYPTION_CERTIFICATE_HASH_LIST {
  65859.  
  65860.  
  65861.  
  65862.     DWORD nCert_Hash;
  65863.  
  65864.  
  65865.  
  65866.      PENCRYPTION_CERTIFICATE_HASH * pUsers;
  65867. } ENCRYPTION_CERTIFICATE_HASH_LIST, *PENCRYPTION_CERTIFICATE_HASH_LIST;
  65868.  
  65869.  
  65870.  
  65871. typedef struct _ENCRYPTION_CERTIFICATE_LIST {
  65872.  
  65873.  
  65874.  
  65875.     DWORD nUsers;
  65876.  
  65877.  
  65878.  
  65879.      PENCRYPTION_CERTIFICATE * pUsers;
  65880. } ENCRYPTION_CERTIFICATE_LIST, *PENCRYPTION_CERTIFICATE_LIST;
  65881. # 281 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  65882. typedef struct _ENCRYPTED_FILE_METADATA_SIGNATURE {
  65883.  
  65884.  DWORD dwEfsAccessType;
  65885.  PENCRYPTION_CERTIFICATE_HASH_LIST pCertificatesAdded;
  65886.     PENCRYPTION_CERTIFICATE pEncryptionCertificate;
  65887.     PEFS_RPC_BLOB pEfsStreamSignature;
  65888.  
  65889. } ENCRYPTED_FILE_METADATA_SIGNATURE, *PENCRYPTED_FILE_METADATA_SIGNATURE;
  65890.  
  65891.  
  65892.  
  65893.  
  65894.  
  65895. typedef struct _ENCRYPTION_PROTECTOR{
  65896.     DWORD cbTotalLength;
  65897.     SID * pUserSid;
  65898.  
  65899.  
  65900.  
  65901.     LPWSTR lpProtectorDescriptor;
  65902. } ENCRYPTION_PROTECTOR, *PENCRYPTION_PROTECTOR;
  65903.  
  65904. typedef struct _ENCRYPTION_PROTECTOR_LIST {
  65905.     DWORD nProtectors;
  65906.  
  65907.  
  65908.  
  65909.     PENCRYPTION_PROTECTOR *pProtectors;
  65910. } ENCRYPTION_PROTECTOR_LIST, *PENCRYPTION_PROTECTOR_LIST;
  65911. # 322 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  65912. __declspec(dllimport)
  65913. DWORD
  65914. __stdcall
  65915. QueryUsersOnEncryptedFile(
  65916.                     LPCWSTR lpFileName,
  65917.                  PENCRYPTION_CERTIFICATE_HASH_LIST *pUsers
  65918.     );
  65919.  
  65920.  
  65921. __declspec(dllimport)
  65922. DWORD
  65923. __stdcall
  65924. QueryRecoveryAgentsOnEncryptedFile(
  65925.                     LPCWSTR lpFileName,
  65926.                  PENCRYPTION_CERTIFICATE_HASH_LIST *pRecoveryAgents
  65927.     );
  65928.  
  65929.  
  65930. __declspec(dllimport)
  65931. DWORD
  65932. __stdcall
  65933. RemoveUsersFromEncryptedFile(
  65934.             LPCWSTR lpFileName,
  65935.             PENCRYPTION_CERTIFICATE_HASH_LIST pHashes
  65936.     );
  65937.  
  65938. __declspec(dllimport)
  65939. DWORD
  65940. __stdcall
  65941. AddUsersToEncryptedFile(
  65942.             LPCWSTR lpFileName,
  65943.             PENCRYPTION_CERTIFICATE_LIST pEncryptionCertificates
  65944.     );
  65945.  
  65946.  
  65947.  
  65948.  
  65949.  
  65950.  
  65951.  
  65952. __declspec(dllimport)
  65953. DWORD
  65954. __stdcall
  65955. SetUserFileEncryptionKey(
  65956.                 PENCRYPTION_CERTIFICATE pEncryptionCertificate
  65957.     );
  65958. # 383 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  65959. __declspec(dllimport)
  65960. DWORD
  65961. __stdcall
  65962. SetUserFileEncryptionKeyEx(
  65963.                     PENCRYPTION_CERTIFICATE pEncryptionCertificate,
  65964.                     DWORD dwCapabilities,
  65965.                     DWORD dwFlags,
  65966.                     LPVOID pvReserved
  65967.     );
  65968.  
  65969.  
  65970.  
  65971. __declspec(dllimport)
  65972. void
  65973. __stdcall
  65974. FreeEncryptionCertificateHashList(
  65975.             PENCRYPTION_CERTIFICATE_HASH_LIST pUsers
  65976.     );
  65977.  
  65978. __declspec(dllimport)
  65979. BOOL
  65980. __stdcall
  65981. EncryptionDisable(
  65982.          LPCWSTR DirPath,
  65983.          BOOL Disable
  65984.     );
  65985.  
  65986.  
  65987.  
  65988.  
  65989.  
  65990.  
  65991.  
  65992. __declspec(dllimport)
  65993. DWORD
  65994. __stdcall
  65995. DuplicateEncryptionInfoFile(
  65996.                 LPCWSTR SrcFileName,
  65997.                 LPCWSTR DstFileName,
  65998.                 DWORD dwCreationDistribution,
  65999.                 DWORD dwAttributes,
  66000.                 const LPSECURITY_ATTRIBUTES lpSecurityAttributes
  66001.      );
  66002. # 448 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  66003. __declspec(deprecated)
  66004. __declspec(dllimport)
  66005. DWORD
  66006. __stdcall
  66007. GetEncryptedFileMetadata(
  66008.                                         LPCWSTR lpFileName,
  66009.                                         PDWORD pcbMetadata,
  66010.                                                 PBYTE *ppbMetadata
  66011.     );
  66012.  
  66013. __declspec(deprecated)
  66014. __declspec(dllimport)
  66015. DWORD
  66016. __stdcall
  66017. SetEncryptedFileMetadata(
  66018.                 LPCWSTR lpFileName,
  66019.                 PBYTE pbOldMetadata,
  66020.                 PBYTE pbNewMetadata,
  66021.                 PENCRYPTION_CERTIFICATE_HASH pOwnerHash,
  66022.                 DWORD dwOperation,
  66023.                 PENCRYPTION_CERTIFICATE_HASH_LIST pCertificatesAdded
  66024.     );
  66025.  
  66026. __declspec(deprecated)
  66027. __declspec(dllimport)
  66028. void
  66029. __stdcall
  66030. FreeEncryptedFileMetadata(
  66031.             PBYTE pbMetadata
  66032.     );
  66033.  
  66034.  
  66035.  
  66036.  
  66037.  
  66038. #pragma endregion
  66039. # 496 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winefs.h" 3
  66040. #pragma option pop
  66041. # 253 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  66042.  
  66043. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 1 3
  66044. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  66045. #pragma option push -b -a8 -pc -A- -w-pun
  66046.  
  66047.  
  66048.  
  66049.  
  66050.  
  66051.  
  66052.  
  66053. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 1 3
  66054. #pragma option push -b -a8 -pc -A- -w-pun
  66055. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  66056. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  66057. #pragma option push -b -a8 -pc -A- -w-pun
  66058. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  66059. #pragma option pop
  66060. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 2 3
  66061.  
  66062. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 1 3
  66063. #pragma option push -b -a8 -pc -A- -w-pun
  66064. # 48 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66065. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 1 3
  66066. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 3
  66067. #pragma warning(disable: 4103)
  66068.  
  66069. #pragma pack(push,8)
  66070. # 48 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 2 3
  66071.  
  66072.  
  66073.  
  66074. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcnsip.h" 1 3
  66075. #pragma option push -b -a8 -pc -A- -w-pun
  66076. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcnsip.h" 3
  66077. #pragma region Desktop Family
  66078.  
  66079.  
  66080. typedef struct
  66081. {
  66082.    RPC_NS_HANDLE LookupContext;
  66083.    RPC_BINDING_HANDLE ProposedHandle;
  66084.    RPC_BINDING_VECTOR * Bindings;
  66085.  
  66086. } RPC_IMPORT_CONTEXT_P, * PRPC_IMPORT_CONTEXT_P;
  66087.  
  66088.  
  66089.  
  66090.  
  66091. __declspec(dllimport)
  66092. RPC_STATUS
  66093. __stdcall
  66094. I_RpcNsGetBuffer(
  66095.        PRPC_MESSAGE Message
  66096.     );
  66097.  
  66098. __declspec(dllimport)
  66099. RPC_STATUS
  66100. __stdcall
  66101. I_RpcNsSendReceive(
  66102.        PRPC_MESSAGE Message,
  66103.         RPC_BINDING_HANDLE * Handle
  66104.     );
  66105.  
  66106. __declspec(dllimport)
  66107.  
  66108. void
  66109. __stdcall
  66110. I_RpcNsRaiseException(
  66111.        PRPC_MESSAGE Message,
  66112.        RPC_STATUS Status
  66113.     );
  66114.  
  66115. __declspec(dllimport)
  66116. RPC_STATUS
  66117. __stdcall
  66118. I_RpcReBindBuffer(
  66119.        PRPC_MESSAGE Message
  66120.     );
  66121.  
  66122. __declspec(dllimport)
  66123. RPC_STATUS
  66124. __stdcall
  66125. I_NsServerBindSearch(
  66126.     void
  66127.     );
  66128.  
  66129. __declspec(dllimport)
  66130. RPC_STATUS
  66131. __stdcall
  66132. I_NsClientBindSearch(
  66133.     void
  66134.     );
  66135.  
  66136. __declspec(dllimport)
  66137. void
  66138. __stdcall
  66139. I_NsClientBindDone(
  66140.     void
  66141.     );
  66142.  
  66143.  
  66144. #pragma endregion
  66145.  
  66146.  
  66147.  
  66148.  
  66149.  
  66150.  
  66151. #pragma option pop
  66152. # 51 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 2 3
  66153.  
  66154.  
  66155.  
  66156. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcsal.h" 1 3
  66157. #pragma option push -b -a8 -pc -A- -w-pun
  66158. # 332 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcsal.h" 3
  66159. #pragma option pop
  66160. # 54 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 2 3
  66161.  
  66162.  
  66163.  
  66164.  
  66165.  
  66166.  
  66167. #pragma region Application Family or OneCore Family
  66168. # 197 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66169. typedef unsigned char byte;
  66170. typedef byte cs_byte;
  66171. typedef unsigned char boolean;
  66172. # 244 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66173. void * __stdcall MIDL_user_allocate( size_t size);
  66174. void __stdcall MIDL_user_free( void * );
  66175.  
  66176.  
  66177.  
  66178. void * __stdcall I_RpcDefaultAllocate(
  66179.          handle_t bh, size_t size, void * (* RealAlloc)(size_t) );
  66180.  
  66181. void __stdcall I_RpcDefaultFree(
  66182.          handle_t bh, void *, void (*RealFree)(void *) );
  66183. # 279 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66184. typedef void * NDR_CCONTEXT;
  66185.  
  66186. typedef struct
  66187.     {
  66188.     void * pad[2];
  66189.     void * userContext;
  66190.     } * NDR_SCONTEXT;
  66191.  
  66192.  
  66193.  
  66194.  
  66195.  
  66196. typedef void (__stdcall * NDR_RUNDOWN)(void * context);
  66197.  
  66198. typedef void (__stdcall * NDR_NOTIFY_ROUTINE)(void);
  66199.  
  66200. typedef void (__stdcall * NDR_NOTIFY2_ROUTINE)(boolean flag);
  66201.  
  66202. typedef struct _SCONTEXT_QUEUE {
  66203.     unsigned long NumberOfObjects;
  66204.     NDR_SCONTEXT * ArrayOfObjects;
  66205.     } SCONTEXT_QUEUE, * PSCONTEXT_QUEUE;
  66206.  
  66207. __declspec(dllimport)
  66208. RPC_BINDING_HANDLE
  66209. __stdcall
  66210. NDRCContextBinding (
  66211.          NDR_CCONTEXT CContext
  66212.     );
  66213.  
  66214. __declspec(dllimport)
  66215. void
  66216. __stdcall
  66217. NDRCContextMarshall (
  66218.               NDR_CCONTEXT CContext,
  66219.           void *pBuff
  66220.     );
  66221.  
  66222. __declspec(dllimport)
  66223. void
  66224. __stdcall
  66225. NDRCContextUnmarshall (
  66226.                 NDR_CCONTEXT * pCContext,
  66227.           RPC_BINDING_HANDLE hBinding,
  66228.           void * pBuff,
  66229.           unsigned long DataRepresentation
  66230.     );
  66231.  
  66232. __declspec(dllimport)
  66233. void
  66234. __stdcall
  66235. NDRCContextUnmarshall2 (
  66236.                 NDR_CCONTEXT * pCContext,
  66237.           RPC_BINDING_HANDLE hBinding,
  66238.           void * pBuff,
  66239.           unsigned long DataRepresentation
  66240.     );
  66241.  
  66242. __declspec(dllimport)
  66243. void
  66244. __stdcall
  66245. NDRSContextMarshall (
  66246.           NDR_SCONTEXT CContext,
  66247.           void * pBuff,
  66248.           NDR_RUNDOWN userRunDownIn
  66249.     );
  66250.  
  66251. __declspec(dllimport)
  66252. NDR_SCONTEXT
  66253. __stdcall
  66254. NDRSContextUnmarshall (
  66255.           void * pBuff,
  66256.           unsigned long DataRepresentation
  66257.     );
  66258.  
  66259. __declspec(dllimport)
  66260. void
  66261. __stdcall
  66262. NDRSContextMarshallEx (
  66263.           RPC_BINDING_HANDLE BindingHandle,
  66264.           NDR_SCONTEXT CContext,
  66265.           void * pBuff,
  66266.           NDR_RUNDOWN userRunDownIn
  66267.     );
  66268.  
  66269. __declspec(dllimport)
  66270. void
  66271. __stdcall
  66272. NDRSContextMarshall2 (
  66273.           RPC_BINDING_HANDLE BindingHandle,
  66274.           NDR_SCONTEXT CContext,
  66275.           void * pBuff,
  66276.           NDR_RUNDOWN userRunDownIn,
  66277.               void * CtxGuard,
  66278.          unsigned long Flags
  66279.     );
  66280.  
  66281. __declspec(dllimport)
  66282. NDR_SCONTEXT
  66283. __stdcall
  66284. NDRSContextUnmarshallEx (
  66285.           RPC_BINDING_HANDLE BindingHandle,
  66286.           void * pBuff,
  66287.           unsigned long DataRepresentation
  66288.     );
  66289.  
  66290. __declspec(dllimport)
  66291. NDR_SCONTEXT
  66292. __stdcall
  66293. NDRSContextUnmarshall2(
  66294.           RPC_BINDING_HANDLE BindingHandle,
  66295.               void * pBuff,
  66296.           unsigned long DataRepresentation,
  66297.               void * CtxGuard,
  66298.          unsigned long Flags
  66299.     );
  66300.  
  66301. __declspec(dllimport)
  66302. void
  66303. __stdcall
  66304. RpcSsDestroyClientContext (
  66305.          void * * ContextHandle
  66306.     );
  66307. # 472 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66308. typedef unsigned long error_status_t;
  66309. # 555 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66310. struct _MIDL_STUB_MESSAGE;
  66311. struct _MIDL_STUB_DESC;
  66312. struct _FULL_PTR_XLAT_TABLES;
  66313.  
  66314. typedef unsigned char * RPC_BUFPTR;
  66315. typedef unsigned long RPC_LENGTH;
  66316.  
  66317.  
  66318. typedef void (__stdcall * EXPR_EVAL)( struct _MIDL_STUB_MESSAGE * );
  66319.  
  66320. typedef const unsigned char * PFORMAT_STRING;
  66321.  
  66322.  
  66323.  
  66324.  
  66325. typedef struct
  66326.     {
  66327.     long Dimension;
  66328.  
  66329.  
  66330.     unsigned long * BufferConformanceMark;
  66331.     unsigned long * BufferVarianceMark;
  66332.  
  66333.  
  66334.     unsigned long * MaxCountArray;
  66335.     unsigned long * OffsetArray;
  66336.     unsigned long * ActualCountArray;
  66337.     } ARRAY_INFO, *PARRAY_INFO;
  66338.  
  66339.  
  66340. typedef struct _NDR_ASYNC_MESSAGE * PNDR_ASYNC_MESSAGE;
  66341. typedef struct _NDR_CORRELATION_INFO *PNDR_CORRELATION_INFO;
  66342.  
  66343.  
  66344.  
  66345.  
  66346.  
  66347. typedef const unsigned char * PFORMAT_STRING;
  66348. typedef struct _MIDL_SYNTAX_INFO MIDL_SYNTAX_INFO, *PMIDL_SYNTAX_INFO;
  66349.  
  66350. struct NDR_ALLOC_ALL_NODES_CONTEXT;
  66351. struct NDR_POINTER_QUEUE_STATE;
  66352. struct _NDR_PROC_CONTEXT;
  66353.  
  66354. typedef struct _MIDL_STUB_MESSAGE
  66355.     {
  66356.  
  66357.     PRPC_MESSAGE RpcMsg;
  66358.  
  66359.  
  66360.     unsigned char * Buffer;
  66361.  
  66362.  
  66363.  
  66364.  
  66365.  
  66366.     unsigned char * BufferStart;
  66367.     unsigned char * BufferEnd;
  66368. # 621 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66369.     unsigned char * BufferMark;
  66370.  
  66371.  
  66372.     unsigned long BufferLength;
  66373.  
  66374.  
  66375.     unsigned long MemorySize;
  66376.  
  66377.  
  66378.     unsigned char * Memory;
  66379.  
  66380.  
  66381.     unsigned char IsClient;
  66382.     unsigned char Pad;
  66383.     unsigned short uFlags2;
  66384.  
  66385.  
  66386.     int ReuseBuffer;
  66387.  
  66388.  
  66389.     struct NDR_ALLOC_ALL_NODES_CONTEXT *pAllocAllNodesContext;
  66390.     struct NDR_POINTER_QUEUE_STATE *pPointerQueueState;
  66391.  
  66392.  
  66393.  
  66394.  
  66395.  
  66396.  
  66397.     int IgnoreEmbeddedPointers;
  66398.  
  66399.  
  66400.  
  66401.  
  66402.  
  66403.     unsigned char * PointerBufferMark;
  66404.  
  66405.  
  66406.  
  66407.  
  66408.     unsigned char CorrDespIncrement;
  66409.  
  66410.     unsigned char uFlags;
  66411.     unsigned short UniquePtrCount;
  66412.  
  66413.  
  66414.  
  66415.  
  66416.  
  66417.     ULONG_PTR MaxCount;
  66418.  
  66419.  
  66420.  
  66421.  
  66422.  
  66423.     unsigned long Offset;
  66424.  
  66425.  
  66426.  
  66427.  
  66428.  
  66429.     unsigned long ActualCount;
  66430.  
  66431.  
  66432.     void * ( __stdcall * pfnAllocate)( size_t );
  66433.     void ( __stdcall * pfnFree)(void *);
  66434.  
  66435.  
  66436.  
  66437.  
  66438.  
  66439.  
  66440.  
  66441.     unsigned char * StackTop;
  66442.  
  66443.  
  66444.  
  66445.  
  66446.  
  66447.     unsigned char * pPresentedType;
  66448.     unsigned char * pTransmitType;
  66449. # 710 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66450.     handle_t SavedHandle;
  66451.  
  66452.  
  66453.  
  66454.  
  66455.     const struct _MIDL_STUB_DESC * StubDesc;
  66456.  
  66457.  
  66458.  
  66459.  
  66460.     struct _FULL_PTR_XLAT_TABLES * FullPtrXlatTables;
  66461.     unsigned long FullPtrRefId;
  66462.  
  66463.     unsigned long PointerLength;
  66464.  
  66465.     int fInDontFree :1;
  66466.     int fDontCallFreeInst :1;
  66467.     int fUnused1 :1;
  66468.     int fHasReturn :1;
  66469.     int fHasExtensions :1;
  66470.     int fHasNewCorrDesc :1;
  66471.     int fIsIn :1;
  66472.     int fIsOut :1;
  66473.     int fIsOicf :1;
  66474.     int fBufferValid :1;
  66475.     int fHasMemoryValidateCallback: 1;
  66476.     int fInFree :1;
  66477.     int fNeedMCCP :1;
  66478.     int fUnused2 :3;
  66479.     int fUnused3 :16;
  66480.  
  66481.  
  66482.     unsigned long dwDestContext;
  66483.     void * pvDestContext;
  66484.  
  66485.     NDR_SCONTEXT * SavedContextHandles;
  66486.  
  66487.     long ParamNumber;
  66488.  
  66489.     struct IRpcChannelBuffer * pRpcChannelBuffer;
  66490.  
  66491.     PARRAY_INFO pArrayInfo;
  66492.     unsigned long * SizePtrCountArray;
  66493.     unsigned long * SizePtrOffsetArray;
  66494.     unsigned long * SizePtrLengthArray;
  66495.  
  66496.  
  66497.  
  66498.  
  66499.     void * pArgQueue;
  66500.  
  66501.     unsigned long dwStubPhase;
  66502.  
  66503.     void * LowStackMark;
  66504.  
  66505.  
  66506.  
  66507.  
  66508.     PNDR_ASYNC_MESSAGE pAsyncMsg;
  66509.     PNDR_CORRELATION_INFO pCorrInfo;
  66510.     unsigned char * pCorrMemory;
  66511.  
  66512.     void * pMemoryList;
  66513. # 783 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66514.     INT_PTR pCSInfo;
  66515.  
  66516.     unsigned char * ConformanceMark;
  66517.     unsigned char * VarianceMark;
  66518.  
  66519.     INT_PTR Unused;
  66520.  
  66521.     struct _NDR_PROC_CONTEXT * pContext;
  66522. # 802 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66523.     void * ContextHandleHash;
  66524.     void * pUserMarshalList;
  66525.     INT_PTR Reserved51_3;
  66526.     INT_PTR Reserved51_4;
  66527.     INT_PTR Reserved51_5;
  66528.  
  66529.  
  66530.  
  66531.  
  66532.  
  66533.     } MIDL_STUB_MESSAGE, *PMIDL_STUB_MESSAGE;
  66534.  
  66535.  
  66536. typedef struct _MIDL_STUB_MESSAGE MIDL_STUB_MESSAGE, *PMIDL_STUB_MESSAGE;
  66537.  
  66538.  
  66539.  
  66540.  
  66541. typedef void *
  66542.         ( __stdcall * GENERIC_BINDING_ROUTINE)
  66543.         (void *);
  66544. typedef void
  66545.         ( __stdcall * GENERIC_UNBIND_ROUTINE)
  66546.         (void *, unsigned char *);
  66547.  
  66548. typedef struct _GENERIC_BINDING_ROUTINE_PAIR
  66549.     {
  66550.     GENERIC_BINDING_ROUTINE pfnBind;
  66551.     GENERIC_UNBIND_ROUTINE pfnUnbind;
  66552.     } GENERIC_BINDING_ROUTINE_PAIR, *PGENERIC_BINDING_ROUTINE_PAIR;
  66553.  
  66554. typedef struct __GENERIC_BINDING_INFO
  66555.     {
  66556.     void * pObj;
  66557.     unsigned int Size;
  66558.     GENERIC_BINDING_ROUTINE pfnBind;
  66559.     GENERIC_UNBIND_ROUTINE pfnUnbind;
  66560.     } GENERIC_BINDING_INFO, *PGENERIC_BINDING_INFO;
  66561. # 851 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66562. typedef void ( __stdcall * XMIT_HELPER_ROUTINE)
  66563.     ( PMIDL_STUB_MESSAGE );
  66564.  
  66565. typedef struct _XMIT_ROUTINE_QUINTUPLE
  66566.     {
  66567.     XMIT_HELPER_ROUTINE pfnTranslateToXmit;
  66568.     XMIT_HELPER_ROUTINE pfnTranslateFromXmit;
  66569.     XMIT_HELPER_ROUTINE pfnFreeXmit;
  66570.     XMIT_HELPER_ROUTINE pfnFreeInst;
  66571.     } XMIT_ROUTINE_QUINTUPLE, *PXMIT_ROUTINE_QUINTUPLE;
  66572.  
  66573. typedef unsigned long
  66574. ( __stdcall * USER_MARSHAL_SIZING_ROUTINE)
  66575.     (unsigned long *,
  66576.      unsigned long,
  66577.      void * );
  66578.  
  66579. typedef unsigned char *
  66580. ( __stdcall * USER_MARSHAL_MARSHALLING_ROUTINE)
  66581.     (unsigned long *,
  66582.      unsigned char * ,
  66583.      void * );
  66584.  
  66585. typedef unsigned char *
  66586. ( __stdcall * USER_MARSHAL_UNMARSHALLING_ROUTINE)
  66587.     (unsigned long *,
  66588.      unsigned char *,
  66589.      void * );
  66590.  
  66591. typedef void ( __stdcall * USER_MARSHAL_FREEING_ROUTINE)
  66592.     (unsigned long *,
  66593.      void * );
  66594.  
  66595. typedef struct _USER_MARSHAL_ROUTINE_QUADRUPLE
  66596.     {
  66597.     USER_MARSHAL_SIZING_ROUTINE pfnBufferSize;
  66598.     USER_MARSHAL_MARSHALLING_ROUTINE pfnMarshall;
  66599.     USER_MARSHAL_UNMARSHALLING_ROUTINE pfnUnmarshall;
  66600.     USER_MARSHAL_FREEING_ROUTINE pfnFree;
  66601.     } USER_MARSHAL_ROUTINE_QUADRUPLE;
  66602.  
  66603.  
  66604.  
  66605. typedef enum _USER_MARSHAL_CB_TYPE
  66606. {
  66607.     USER_MARSHAL_CB_BUFFER_SIZE,
  66608.     USER_MARSHAL_CB_MARSHALL,
  66609.     USER_MARSHAL_CB_UNMARSHALL,
  66610.     USER_MARSHAL_CB_FREE
  66611. } USER_MARSHAL_CB_TYPE;
  66612.  
  66613. typedef struct _USER_MARSHAL_CB
  66614. {
  66615.     unsigned long Flags;
  66616.     PMIDL_STUB_MESSAGE pStubMsg;
  66617.     PFORMAT_STRING pReserve;
  66618.     unsigned long Signature;
  66619.     USER_MARSHAL_CB_TYPE CBType;
  66620.     PFORMAT_STRING pFormat;
  66621.     PFORMAT_STRING pTypeFormat;
  66622. } USER_MARSHAL_CB;
  66623. # 921 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66624. typedef struct _MALLOC_FREE_STRUCT
  66625.     {
  66626.     void * ( __stdcall * pfnAllocate)(size_t);
  66627.     void ( __stdcall * pfnFree)(void *);
  66628.     } MALLOC_FREE_STRUCT;
  66629.  
  66630. typedef struct _COMM_FAULT_OFFSETS
  66631.     {
  66632.     short CommOffset;
  66633.     short FaultOffset;
  66634.     } COMM_FAULT_OFFSETS;
  66635.  
  66636.  
  66637.  
  66638.  
  66639.  
  66640. typedef enum _IDL_CS_CONVERT
  66641.     {
  66642.     IDL_CS_NO_CONVERT,
  66643.     IDL_CS_IN_PLACE_CONVERT,
  66644.     IDL_CS_NEW_BUFFER_CONVERT
  66645.     } IDL_CS_CONVERT;
  66646.  
  66647. typedef void
  66648. ( __stdcall * CS_TYPE_NET_SIZE_ROUTINE)
  66649.     (RPC_BINDING_HANDLE hBinding,
  66650.      unsigned long ulNetworkCodeSet,
  66651.      unsigned long ulLocalBufferSize,
  66652.      IDL_CS_CONVERT * conversionType,
  66653.      unsigned long * pulNetworkBufferSize,
  66654.      error_status_t * pStatus);
  66655.  
  66656. typedef void
  66657. ( __stdcall * CS_TYPE_LOCAL_SIZE_ROUTINE)
  66658.     (RPC_BINDING_HANDLE hBinding,
  66659.      unsigned long ulNetworkCodeSet,
  66660.      unsigned long ulNetworkBufferSize,
  66661.      IDL_CS_CONVERT * conversionType,
  66662.      unsigned long * pulLocalBufferSize,
  66663.      error_status_t * pStatus);
  66664.  
  66665. typedef void
  66666. ( __stdcall * CS_TYPE_TO_NETCS_ROUTINE)
  66667.     (RPC_BINDING_HANDLE hBinding,
  66668.      unsigned long ulNetworkCodeSet,
  66669.      void * pLocalData,
  66670.      unsigned long ulLocalDataLength,
  66671.      byte * pNetworkData,
  66672.      unsigned long * pulNetworkDataLength,
  66673.      error_status_t * pStatus);
  66674.  
  66675. typedef void
  66676. ( __stdcall * CS_TYPE_FROM_NETCS_ROUTINE)
  66677.     (RPC_BINDING_HANDLE hBinding,
  66678.      unsigned long ulNetworkCodeSet,
  66679.      byte * pNetworkData,
  66680.      unsigned long ulNetworkDataLength,
  66681.      unsigned long ulLocalBufferSize,
  66682.      void * pLocalData,
  66683.      unsigned long * pulLocalDataLength,
  66684.      error_status_t * pStatus);
  66685.  
  66686. typedef void
  66687. ( __stdcall * CS_TAG_GETTING_ROUTINE)
  66688.     (RPC_BINDING_HANDLE hBinding,
  66689.      int fServerSide,
  66690.      unsigned long * pulSendingTag,
  66691.      unsigned long * pulDesiredReceivingTag,
  66692.      unsigned long * pulReceivingTag,
  66693.      error_status_t * pStatus);
  66694.  
  66695. void __stdcall
  66696. RpcCsGetTags(
  66697.      RPC_BINDING_HANDLE hBinding,
  66698.      int fServerSide,
  66699.      unsigned long * pulSendingTag,
  66700.      unsigned long * pulDesiredReceivingTag,
  66701.      unsigned long * pulReceivingTag,
  66702.      error_status_t * pStatus);
  66703.  
  66704. typedef struct _NDR_CS_SIZE_CONVERT_ROUTINES
  66705.     {
  66706.     CS_TYPE_NET_SIZE_ROUTINE pfnNetSize;
  66707.     CS_TYPE_TO_NETCS_ROUTINE pfnToNetCs;
  66708.     CS_TYPE_LOCAL_SIZE_ROUTINE pfnLocalSize;
  66709.     CS_TYPE_FROM_NETCS_ROUTINE pfnFromNetCs;
  66710.     } NDR_CS_SIZE_CONVERT_ROUTINES;
  66711.  
  66712. typedef struct _NDR_CS_ROUTINES
  66713.     {
  66714.     NDR_CS_SIZE_CONVERT_ROUTINES *pSizeConvertRoutines;
  66715.     CS_TAG_GETTING_ROUTINE *pTagGettingRoutines;
  66716.     } NDR_CS_ROUTINES;
  66717.  
  66718. typedef struct _NDR_EXPR_DESC
  66719. {
  66720.     const unsigned short * pOffset;
  66721.     PFORMAT_STRING pFormatExpr;
  66722. } NDR_EXPR_DESC;
  66723.  
  66724.  
  66725.  
  66726.  
  66727. typedef struct _MIDL_STUB_DESC
  66728.     {
  66729.     void * RpcInterfaceInformation;
  66730.  
  66731.     void * ( __stdcall * pfnAllocate)(size_t);
  66732.     void ( __stdcall * pfnFree)(void *);
  66733.  
  66734.     union
  66735.         {
  66736.         handle_t * pAutoHandle;
  66737.         handle_t * pPrimitiveHandle;
  66738.         PGENERIC_BINDING_INFO pGenericBindingInfo;
  66739.         } IMPLICIT_HANDLE_INFO;
  66740.  
  66741.     const NDR_RUNDOWN * apfnNdrRundownRoutines;
  66742.     const GENERIC_BINDING_ROUTINE_PAIR * aGenericBindingRoutinePairs;
  66743.     const EXPR_EVAL * apfnExprEval;
  66744.     const XMIT_ROUTINE_QUINTUPLE * aXmitQuintuple;
  66745.  
  66746.     const unsigned char * pFormatTypes;
  66747.  
  66748.     int fCheckBounds;
  66749.  
  66750.  
  66751.     unsigned long Version;
  66752.  
  66753.     MALLOC_FREE_STRUCT * pMallocFreeStruct;
  66754.  
  66755.     long MIDLVersion;
  66756.  
  66757.     const COMM_FAULT_OFFSETS * CommFaultOffsets;
  66758.  
  66759.  
  66760.     const USER_MARSHAL_ROUTINE_QUADRUPLE * aUserMarshalQuadruple;
  66761.  
  66762.  
  66763.     const NDR_NOTIFY_ROUTINE * NotifyRoutineTable;
  66764.  
  66765.  
  66766.  
  66767.  
  66768.  
  66769.     ULONG_PTR mFlags;
  66770.  
  66771.  
  66772.     const NDR_CS_ROUTINES * CsRoutineTables;
  66773.  
  66774.     void * ProxyServerInfo;
  66775.     const NDR_EXPR_DESC * pExprInfo;
  66776.  
  66777.  
  66778.  
  66779.     } MIDL_STUB_DESC;
  66780.  
  66781.  
  66782. typedef const MIDL_STUB_DESC * PMIDL_STUB_DESC;
  66783.  
  66784. typedef void * PMIDL_XMIT_TYPE;
  66785. # 1110 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  66786. typedef void ( __stdcall * STUB_THUNK)( PMIDL_STUB_MESSAGE );
  66787.  
  66788.  
  66789. typedef long ( __stdcall * SERVER_ROUTINE)();
  66790.  
  66791.  
  66792.  
  66793.  
  66794.  
  66795.  
  66796.  
  66797. typedef struct _MIDL_METHOD_PROPERTY
  66798. {
  66799.     unsigned long Id;
  66800.     ULONG_PTR Value;
  66801. } MIDL_METHOD_PROPERTY, *PMIDL_METHOD_PROPERTY;
  66802.  
  66803. typedef struct _MIDL_METHOD_PROPERTY_MAP
  66804. {
  66805.     unsigned long Count;
  66806.     const MIDL_METHOD_PROPERTY *Properties;
  66807. } MIDL_METHOD_PROPERTY_MAP, *PMIDL_METHOD_PROPERTY_MAP;
  66808.  
  66809. typedef struct _MIDL_INTERFACE_METHOD_PROPERTIES
  66810. {
  66811.     unsigned short MethodCount;
  66812.     const MIDL_METHOD_PROPERTY_MAP* const *MethodProperties;
  66813. } MIDL_INTERFACE_METHOD_PROPERTIES;
  66814.  
  66815.  
  66816.  
  66817.  
  66818. typedef struct _MIDL_SERVER_INFO_
  66819.     {
  66820.     PMIDL_STUB_DESC pStubDesc;
  66821.     const SERVER_ROUTINE * DispatchTable;
  66822.     PFORMAT_STRING ProcString;
  66823.     const unsigned short * FmtStringOffset;
  66824.     const STUB_THUNK * ThunkTable;
  66825.     PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
  66826.     ULONG_PTR nCount;
  66827.     PMIDL_SYNTAX_INFO pSyntaxInfo;
  66828.     } MIDL_SERVER_INFO, *PMIDL_SERVER_INFO;
  66829.  
  66830.  
  66831.  
  66832.  
  66833.  
  66834.  
  66835. typedef struct _MIDL_STUBLESS_PROXY_INFO
  66836.     {
  66837.     PMIDL_STUB_DESC pStubDesc;
  66838.     PFORMAT_STRING ProcFormatString;
  66839.     const unsigned short * FormatStringOffset;
  66840.     PRPC_SYNTAX_IDENTIFIER pTransferSyntax;
  66841.     ULONG_PTR nCount;
  66842.     PMIDL_SYNTAX_INFO pSyntaxInfo;
  66843.     } MIDL_STUBLESS_PROXY_INFO;
  66844.  
  66845. typedef MIDL_STUBLESS_PROXY_INFO * PMIDL_STUBLESS_PROXY_INFO;
  66846.  
  66847.  
  66848.  
  66849.  
  66850. typedef struct _MIDL_SYNTAX_INFO
  66851. {
  66852. RPC_SYNTAX_IDENTIFIER TransferSyntax;
  66853. RPC_DISPATCH_TABLE * DispatchTable;
  66854. PFORMAT_STRING ProcString;
  66855. const unsigned short * FmtStringOffset;
  66856. PFORMAT_STRING TypeString;
  66857. const void * aUserMarshalQuadruple;
  66858. const MIDL_INTERFACE_METHOD_PROPERTIES *pMethodProperties;
  66859. ULONG_PTR pReserved2;
  66860. } MIDL_SYNTAX_INFO, *PMIDL_SYNTAX_INFO;
  66861.  
  66862. typedef unsigned short * PARAM_OFFSETTABLE, *PPARAM_OFFSETTABLE;
  66863.  
  66864.  
  66865.  
  66866.  
  66867.  
  66868. typedef union _CLIENT_CALL_RETURN
  66869.     {
  66870.     void * Pointer;
  66871.     LONG_PTR Simple;
  66872.     } CLIENT_CALL_RETURN;
  66873.  
  66874.  
  66875. typedef enum
  66876.         {
  66877.         XLAT_SERVER = 1,
  66878.         XLAT_CLIENT
  66879.         } XLAT_SIDE;
  66880.  
  66881. typedef struct _FULL_PTR_XLAT_TABLES
  66882. {
  66883.     void * RefIdToPointer;
  66884.     void * PointerToRefId;
  66885.     unsigned long NextRefId;
  66886.     XLAT_SIDE XlatSide;
  66887. } FULL_PTR_XLAT_TABLES, *PFULL_PTR_XLAT_TABLES;
  66888.  
  66889.  
  66890.  
  66891.  
  66892.  
  66893. typedef enum _system_handle_t
  66894. {
  66895.     SYSTEM_HANDLE_FILE = 0,
  66896.     SYSTEM_HANDLE_SEMAPHORE = 1,
  66897.     SYSTEM_HANDLE_EVENT = 2,
  66898.     SYSTEM_HANDLE_MUTEX = 3,
  66899.     SYSTEM_HANDLE_PROCESS = 4,
  66900.     SYSTEM_HANDLE_TOKEN = 5,
  66901.     SYSTEM_HANDLE_SECTION = 6,
  66902.     SYSTEM_HANDLE_REG_KEY = 7,
  66903.     SYSTEM_HANDLE_THREAD = 8,
  66904.     SYSTEM_HANDLE_COMPOSITION_OBJECT = 9,
  66905.     SYSTEM_HANDLE_SOCKET = 10,
  66906.     SYSTEM_HANDLE_JOB = 11,
  66907.     SYSTEM_HANDLE_PIPE = 12,
  66908.     SYSTEM_HANDLE_MAX = 12,
  66909.     SYSTEM_HANDLE_INVALID = 0xFF,
  66910. } system_handle_t;
  66911.  
  66912.  
  66913.  
  66914.  
  66915.  
  66916. enum {
  66917.     MidlInterceptionInfoVersionOne = 1
  66918. };
  66919.  
  66920. enum {
  66921.     MidlWinrtTypeSerializationInfoVersionOne = 1
  66922. };
  66923.  
  66924.  
  66925.  
  66926. typedef struct _MIDL_INTERCEPTION_INFO
  66927. {
  66928.     unsigned long Version;
  66929.     PFORMAT_STRING ProcString;
  66930.     const unsigned short *ProcFormatOffsetTable;
  66931.     unsigned long ProcCount;
  66932.     PFORMAT_STRING TypeString;
  66933. } MIDL_INTERCEPTION_INFO, *PMIDL_INTERCEPTION_INFO;
  66934.  
  66935. typedef struct _MIDL_WINRT_TYPE_SERIALIZATION_INFO
  66936. {
  66937.     unsigned long Version;
  66938.     PFORMAT_STRING TypeFormatString;
  66939.     unsigned short FormatStringSize;
  66940.     unsigned short TypeOffset;
  66941.     PMIDL_STUB_DESC StubDesc;
  66942. } MIDL_WINRT_TYPE_SERIALIZATION_INFO, *PMIDL_WINRT_TYPE_SERIALIZATION_INFO;
  66943.  
  66944.  
  66945.  
  66946.  
  66947.  
  66948. RPC_STATUS __stdcall
  66949. NdrClientGetSupportedSyntaxes(
  66950.          RPC_CLIENT_INTERFACE * pInf,
  66951.           unsigned long * pCount,
  66952.           MIDL_SYNTAX_INFO ** pArr );
  66953.  
  66954.  
  66955. RPC_STATUS __stdcall
  66956. NdrServerGetSupportedSyntaxes(
  66957.          RPC_SERVER_INTERFACE * pInf,
  66958.           unsigned long * pCount,
  66959.           MIDL_SYNTAX_INFO ** pArr,
  66960.           unsigned long * pPreferSyntaxIndex);
  66961.  
  66962.  
  66963.  
  66964.  
  66965. #pragma warning(push)
  66966.  
  66967. #pragma warning(disable: 28740)
  66968.  
  66969. __declspec(dllimport)
  66970. void
  66971. __stdcall
  66972. NdrSimpleTypeMarshall(
  66973.     PMIDL_STUB_MESSAGE pStubMsg,
  66974.     unsigned char * pMemory,
  66975.     unsigned char FormatChar
  66976.     );
  66977.  
  66978. __declspec(dllimport)
  66979. unsigned char *
  66980. __stdcall
  66981. NdrPointerMarshall(
  66982.     PMIDL_STUB_MESSAGE pStubMsg,
  66983.     unsigned char * pMemory,
  66984.     PFORMAT_STRING pFormat
  66985.     );
  66986.  
  66987. __declspec(dllimport)
  66988. unsigned char *
  66989. __stdcall
  66990. NdrCsArrayMarshall(
  66991.     PMIDL_STUB_MESSAGE pStubMsg,
  66992.     unsigned char * pMemory,
  66993.     PFORMAT_STRING pFormat
  66994.     );
  66995.  
  66996. __declspec(dllimport)
  66997. unsigned char *
  66998. __stdcall
  66999. NdrCsTagMarshall(
  67000.     PMIDL_STUB_MESSAGE pStubMsg,
  67001.     unsigned char * pMemory,
  67002.     PFORMAT_STRING pFormat
  67003.     );
  67004.  
  67005.  
  67006.  
  67007. __declspec(dllimport)
  67008. unsigned char *
  67009. __stdcall
  67010. NdrSimpleStructMarshall(
  67011.     PMIDL_STUB_MESSAGE pStubMsg,
  67012.     unsigned char * pMemory,
  67013.     PFORMAT_STRING pFormat
  67014.     );
  67015.  
  67016. __declspec(dllimport)
  67017. unsigned char *
  67018. __stdcall
  67019. NdrConformantStructMarshall(
  67020.     PMIDL_STUB_MESSAGE pStubMsg,
  67021.     unsigned char * pMemory,
  67022.     PFORMAT_STRING pFormat
  67023.     );
  67024.  
  67025. __declspec(dllimport)
  67026. unsigned char *
  67027. __stdcall
  67028. NdrConformantVaryingStructMarshall(
  67029.     PMIDL_STUB_MESSAGE pStubMsg,
  67030.     unsigned char * pMemory,
  67031.     PFORMAT_STRING pFormat
  67032.     );
  67033.  
  67034. __declspec(dllimport)
  67035. unsigned char *
  67036. __stdcall
  67037. NdrComplexStructMarshall(
  67038.     PMIDL_STUB_MESSAGE pStubMsg,
  67039.     unsigned char * pMemory,
  67040.     PFORMAT_STRING pFormat
  67041.     );
  67042.  
  67043.  
  67044.  
  67045. __declspec(dllimport)
  67046. unsigned char *
  67047. __stdcall
  67048. NdrFixedArrayMarshall(
  67049.     PMIDL_STUB_MESSAGE pStubMsg,
  67050.     unsigned char * pMemory,
  67051.     PFORMAT_STRING pFormat
  67052.     );
  67053.  
  67054. __declspec(dllimport)
  67055. unsigned char *
  67056. __stdcall
  67057. NdrConformantArrayMarshall(
  67058.     PMIDL_STUB_MESSAGE pStubMsg,
  67059.     unsigned char * pMemory,
  67060.     PFORMAT_STRING pFormat
  67061.     );
  67062.  
  67063. __declspec(dllimport)
  67064. unsigned char *
  67065. __stdcall
  67066. NdrConformantVaryingArrayMarshall(
  67067.     PMIDL_STUB_MESSAGE pStubMsg,
  67068.     unsigned char * pMemory,
  67069.     PFORMAT_STRING pFormat
  67070.     );
  67071.  
  67072. __declspec(dllimport)
  67073. unsigned char *
  67074. __stdcall
  67075. NdrVaryingArrayMarshall(
  67076.     PMIDL_STUB_MESSAGE pStubMsg,
  67077.     unsigned char * pMemory,
  67078.     PFORMAT_STRING pFormat
  67079.     );
  67080.  
  67081. __declspec(dllimport)
  67082. unsigned char *
  67083. __stdcall
  67084. NdrComplexArrayMarshall(
  67085.     PMIDL_STUB_MESSAGE pStubMsg,
  67086.     unsigned char * pMemory,
  67087.     PFORMAT_STRING pFormat
  67088.     );
  67089.  
  67090.  
  67091.  
  67092. __declspec(dllimport)
  67093. unsigned char *
  67094. __stdcall
  67095. NdrNonConformantStringMarshall(
  67096.     PMIDL_STUB_MESSAGE pStubMsg,
  67097.     unsigned char * pMemory,
  67098.     PFORMAT_STRING pFormat
  67099.     );
  67100.  
  67101. __declspec(dllimport)
  67102. unsigned char *
  67103. __stdcall
  67104. NdrConformantStringMarshall(
  67105.     PMIDL_STUB_MESSAGE pStubMsg,
  67106.     unsigned char * pMemory,
  67107.     PFORMAT_STRING pFormat
  67108.     );
  67109.  
  67110.  
  67111.  
  67112. __declspec(dllimport)
  67113. unsigned char *
  67114. __stdcall
  67115. NdrEncapsulatedUnionMarshall(
  67116.     PMIDL_STUB_MESSAGE pStubMsg,
  67117.     unsigned char * pMemory,
  67118.     PFORMAT_STRING pFormat
  67119.     );
  67120.  
  67121. __declspec(dllimport)
  67122. unsigned char *
  67123. __stdcall
  67124. NdrNonEncapsulatedUnionMarshall(
  67125.     PMIDL_STUB_MESSAGE pStubMsg,
  67126.     unsigned char * pMemory,
  67127.     PFORMAT_STRING pFormat
  67128.     );
  67129.  
  67130.  
  67131.  
  67132. __declspec(dllimport)
  67133. unsigned char *
  67134. __stdcall
  67135. NdrByteCountPointerMarshall(
  67136.     PMIDL_STUB_MESSAGE pStubMsg,
  67137.     unsigned char * pMemory,
  67138.     PFORMAT_STRING pFormat
  67139.     );
  67140.  
  67141.  
  67142.  
  67143. __declspec(dllimport)
  67144. unsigned char *
  67145. __stdcall
  67146. NdrXmitOrRepAsMarshall(
  67147.     PMIDL_STUB_MESSAGE pStubMsg,
  67148.     unsigned char * pMemory,
  67149.     PFORMAT_STRING pFormat
  67150.     );
  67151.  
  67152.  
  67153.  
  67154. __declspec(dllimport)
  67155. unsigned char *
  67156. __stdcall
  67157. NdrUserMarshalMarshall(
  67158.     PMIDL_STUB_MESSAGE pStubMsg,
  67159.     unsigned char * pMemory,
  67160.     PFORMAT_STRING pFormat
  67161.     );
  67162.  
  67163.  
  67164.  
  67165. __declspec(dllimport)
  67166. unsigned char *
  67167. __stdcall
  67168. NdrInterfacePointerMarshall(
  67169.     PMIDL_STUB_MESSAGE pStubMsg,
  67170.     unsigned char * pMemory,
  67171.     PFORMAT_STRING pFormat
  67172.     );
  67173.  
  67174.  
  67175.  
  67176. __declspec(dllimport)
  67177. void
  67178. __stdcall
  67179. NdrClientContextMarshall(
  67180.     PMIDL_STUB_MESSAGE pStubMsg,
  67181.     NDR_CCONTEXT ContextHandle,
  67182.     int fCheck
  67183.     );
  67184.  
  67185. __declspec(dllimport)
  67186. void
  67187. __stdcall
  67188. NdrServerContextMarshall(
  67189.     PMIDL_STUB_MESSAGE pStubMsg,
  67190.     NDR_SCONTEXT ContextHandle,
  67191.     NDR_RUNDOWN RundownRoutine
  67192.     );
  67193.  
  67194. __declspec(dllimport)
  67195. void
  67196. __stdcall
  67197. NdrServerContextNewMarshall(
  67198.     PMIDL_STUB_MESSAGE pStubMsg,
  67199.     NDR_SCONTEXT ContextHandle,
  67200.     NDR_RUNDOWN RundownRoutine,
  67201.     PFORMAT_STRING pFormat
  67202.     );
  67203.  
  67204.  
  67205.  
  67206.  
  67207.  
  67208. __declspec(dllimport)
  67209. void
  67210. __stdcall
  67211. NdrSimpleTypeUnmarshall(
  67212.     PMIDL_STUB_MESSAGE pStubMsg,
  67213.     unsigned char * pMemory,
  67214.     unsigned char FormatChar
  67215.     );
  67216.  
  67217. __declspec(dllimport)
  67218. unsigned char *
  67219. __stdcall
  67220. NdrCsArrayUnmarshall(
  67221.     PMIDL_STUB_MESSAGE pStubMsg,
  67222.     unsigned char ** ppMemory,
  67223.     PFORMAT_STRING pFormat,
  67224.     unsigned char fMustAlloc
  67225.     );
  67226.  
  67227. __declspec(dllimport)
  67228. unsigned char *
  67229. __stdcall
  67230. NdrCsTagUnmarshall(
  67231.     PMIDL_STUB_MESSAGE pStubMsg,
  67232.     unsigned char ** ppMemory,
  67233.     PFORMAT_STRING pFormat,
  67234.     unsigned char fMustAlloc
  67235.     );
  67236.  
  67237. __declspec(dllimport)
  67238. unsigned char *
  67239. __stdcall
  67240. NdrRangeUnmarshall(
  67241.     PMIDL_STUB_MESSAGE pStubMsg,
  67242.     unsigned char ** ppMemory,
  67243.     PFORMAT_STRING pFormat,
  67244.     unsigned char fMustAlloc
  67245.     );
  67246.  
  67247. __declspec(dllimport)
  67248. void
  67249. __stdcall
  67250. NdrCorrelationInitialize(
  67251.     PMIDL_STUB_MESSAGE pStubMsg,
  67252.     void * pMemory,
  67253.     unsigned long CacheSize,
  67254.     unsigned long flags
  67255.     );
  67256.  
  67257. __declspec(dllimport)
  67258. void
  67259. __stdcall
  67260. NdrCorrelationPass(
  67261.     PMIDL_STUB_MESSAGE pStubMsg
  67262.     );
  67263.  
  67264. __declspec(dllimport)
  67265. void
  67266. __stdcall
  67267. NdrCorrelationFree(
  67268.     PMIDL_STUB_MESSAGE pStubMsg
  67269.     );
  67270.  
  67271. __declspec(dllimport)
  67272. unsigned char *
  67273. __stdcall
  67274. NdrPointerUnmarshall(
  67275.     PMIDL_STUB_MESSAGE pStubMsg,
  67276.     unsigned char * * ppMemory,
  67277.     PFORMAT_STRING pFormat,
  67278.     unsigned char fMustAlloc
  67279.     );
  67280.  
  67281.  
  67282.  
  67283. __declspec(dllimport)
  67284. unsigned char *
  67285. __stdcall
  67286. NdrSimpleStructUnmarshall(
  67287.     PMIDL_STUB_MESSAGE pStubMsg,
  67288.     unsigned char * * ppMemory,
  67289.     PFORMAT_STRING pFormat,
  67290.     unsigned char fMustAlloc
  67291.     );
  67292.  
  67293. __declspec(dllimport)
  67294. unsigned char *
  67295. __stdcall
  67296. NdrConformantStructUnmarshall(
  67297.     PMIDL_STUB_MESSAGE pStubMsg,
  67298.     unsigned char * * ppMemory,
  67299.     PFORMAT_STRING pFormat,
  67300.     unsigned char fMustAlloc
  67301.     );
  67302.  
  67303. __declspec(dllimport)
  67304. unsigned char *
  67305. __stdcall
  67306. NdrConformantVaryingStructUnmarshall(
  67307.     PMIDL_STUB_MESSAGE pStubMsg,
  67308.     unsigned char * * ppMemory,
  67309.     PFORMAT_STRING pFormat,
  67310.     unsigned char fMustAlloc
  67311.     );
  67312.  
  67313. __declspec(dllimport)
  67314. unsigned char *
  67315. __stdcall
  67316. NdrComplexStructUnmarshall(
  67317.     PMIDL_STUB_MESSAGE pStubMsg,
  67318.     unsigned char * * ppMemory,
  67319.     PFORMAT_STRING pFormat,
  67320.     unsigned char fMustAlloc
  67321.     );
  67322.  
  67323.  
  67324.  
  67325. __declspec(dllimport)
  67326. unsigned char *
  67327. __stdcall
  67328. NdrFixedArrayUnmarshall(
  67329.     PMIDL_STUB_MESSAGE pStubMsg,
  67330.     unsigned char * * ppMemory,
  67331.     PFORMAT_STRING pFormat,
  67332.     unsigned char fMustAlloc
  67333.     );
  67334.  
  67335. __declspec(dllimport)
  67336. unsigned char *
  67337. __stdcall
  67338. NdrConformantArrayUnmarshall(
  67339.     PMIDL_STUB_MESSAGE pStubMsg,
  67340.     unsigned char * * ppMemory,
  67341.     PFORMAT_STRING pFormat,
  67342.     unsigned char fMustAlloc
  67343.     );
  67344.  
  67345. __declspec(dllimport)
  67346. unsigned char *
  67347. __stdcall
  67348. NdrConformantVaryingArrayUnmarshall(
  67349.     PMIDL_STUB_MESSAGE pStubMsg,
  67350.     unsigned char * * ppMemory,
  67351.     PFORMAT_STRING pFormat,
  67352.     unsigned char fMustAlloc
  67353.     );
  67354.  
  67355. __declspec(dllimport)
  67356. unsigned char *
  67357. __stdcall
  67358. NdrVaryingArrayUnmarshall(
  67359.     PMIDL_STUB_MESSAGE pStubMsg,
  67360.     unsigned char * * ppMemory,
  67361.     PFORMAT_STRING pFormat,
  67362.     unsigned char fMustAlloc
  67363.     );
  67364.  
  67365. __declspec(dllimport)
  67366. unsigned char *
  67367. __stdcall
  67368. NdrComplexArrayUnmarshall(
  67369.     PMIDL_STUB_MESSAGE pStubMsg,
  67370.     unsigned char * * ppMemory,
  67371.     PFORMAT_STRING pFormat,
  67372.     unsigned char fMustAlloc
  67373.     );
  67374.  
  67375.  
  67376.  
  67377. __declspec(dllimport)
  67378. unsigned char *
  67379. __stdcall
  67380. NdrNonConformantStringUnmarshall(
  67381.     PMIDL_STUB_MESSAGE pStubMsg,
  67382.     unsigned char * * ppMemory,
  67383.     PFORMAT_STRING pFormat,
  67384.     unsigned char fMustAlloc
  67385.     );
  67386.  
  67387. __declspec(dllimport)
  67388. unsigned char *
  67389. __stdcall
  67390. NdrConformantStringUnmarshall(
  67391.     PMIDL_STUB_MESSAGE pStubMsg,
  67392.     unsigned char * * ppMemory,
  67393.     PFORMAT_STRING pFormat,
  67394.     unsigned char fMustAlloc
  67395.     );
  67396.  
  67397.  
  67398.  
  67399. __declspec(dllimport)
  67400. unsigned char *
  67401. __stdcall
  67402. NdrEncapsulatedUnionUnmarshall(
  67403.     PMIDL_STUB_MESSAGE pStubMsg,
  67404.     unsigned char * * ppMemory,
  67405.     PFORMAT_STRING pFormat,
  67406.     unsigned char fMustAlloc
  67407.     );
  67408.  
  67409. __declspec(dllimport)
  67410. unsigned char *
  67411. __stdcall
  67412. NdrNonEncapsulatedUnionUnmarshall(
  67413.     PMIDL_STUB_MESSAGE pStubMsg,
  67414.     unsigned char * * ppMemory,
  67415.     PFORMAT_STRING pFormat,
  67416.     unsigned char fMustAlloc
  67417.     );
  67418.  
  67419.  
  67420.  
  67421. __declspec(dllimport)
  67422. unsigned char *
  67423. __stdcall
  67424. NdrByteCountPointerUnmarshall(
  67425.     PMIDL_STUB_MESSAGE pStubMsg,
  67426.     unsigned char * * ppMemory,
  67427.     PFORMAT_STRING pFormat,
  67428.     unsigned char fMustAlloc
  67429.     );
  67430.  
  67431.  
  67432.  
  67433. __declspec(dllimport)
  67434. unsigned char *
  67435. __stdcall
  67436. NdrXmitOrRepAsUnmarshall(
  67437.     PMIDL_STUB_MESSAGE pStubMsg,
  67438.     unsigned char * * ppMemory,
  67439.     PFORMAT_STRING pFormat,
  67440.     unsigned char fMustAlloc
  67441.     );
  67442.  
  67443.  
  67444.  
  67445. __declspec(dllimport)
  67446. unsigned char *
  67447. __stdcall
  67448. NdrUserMarshalUnmarshall(
  67449.     PMIDL_STUB_MESSAGE pStubMsg,
  67450.     unsigned char * * ppMemory,
  67451.     PFORMAT_STRING pFormat,
  67452.     unsigned char fMustAlloc
  67453.     );
  67454.  
  67455.  
  67456.  
  67457. __declspec(dllimport)
  67458. unsigned char *
  67459. __stdcall
  67460. NdrInterfacePointerUnmarshall(
  67461.     PMIDL_STUB_MESSAGE pStubMsg,
  67462.     unsigned char * * ppMemory,
  67463.     PFORMAT_STRING pFormat,
  67464.     unsigned char fMustAlloc
  67465.     );
  67466.  
  67467.  
  67468.  
  67469. __declspec(dllimport)
  67470. void
  67471. __stdcall
  67472. NdrClientContextUnmarshall(
  67473.     PMIDL_STUB_MESSAGE pStubMsg,
  67474.     NDR_CCONTEXT * pContextHandle,
  67475.     RPC_BINDING_HANDLE BindHandle
  67476.     );
  67477.  
  67478. __declspec(dllimport)
  67479. NDR_SCONTEXT
  67480. __stdcall
  67481. NdrServerContextUnmarshall(
  67482.     PMIDL_STUB_MESSAGE pStubMsg
  67483.     );
  67484.  
  67485.  
  67486.  
  67487. __declspec(dllimport)
  67488. NDR_SCONTEXT
  67489. __stdcall
  67490. NdrContextHandleInitialize(
  67491.           PMIDL_STUB_MESSAGE pStubMsg,
  67492.                                    PFORMAT_STRING pFormat
  67493.     );
  67494.  
  67495. __declspec(dllimport)
  67496. NDR_SCONTEXT
  67497. __stdcall
  67498. NdrServerContextNewUnmarshall(
  67499.           PMIDL_STUB_MESSAGE pStubMsg,
  67500.                                    PFORMAT_STRING pFormat
  67501.     );
  67502.  
  67503.  
  67504.  
  67505.  
  67506.  
  67507. __declspec(dllimport)
  67508. void
  67509. __stdcall
  67510. NdrPointerBufferSize(
  67511.     PMIDL_STUB_MESSAGE pStubMsg,
  67512.     unsigned char * pMemory,
  67513.     PFORMAT_STRING pFormat
  67514.     );
  67515.  
  67516. __declspec(dllimport)
  67517. void
  67518. __stdcall
  67519. NdrCsArrayBufferSize(
  67520.     PMIDL_STUB_MESSAGE pStubMsg,
  67521.     unsigned char * pMemory,
  67522.     PFORMAT_STRING pFormat
  67523.     );
  67524.  
  67525. __declspec(dllimport)
  67526. void
  67527. __stdcall
  67528. NdrCsTagBufferSize(
  67529.     PMIDL_STUB_MESSAGE pStubMsg,
  67530.     unsigned char * pMemory,
  67531.     PFORMAT_STRING pFormat
  67532.     );
  67533.  
  67534.  
  67535.  
  67536. __declspec(dllimport)
  67537. void
  67538. __stdcall
  67539. NdrSimpleStructBufferSize(
  67540.     PMIDL_STUB_MESSAGE pStubMsg,
  67541.     unsigned char * pMemory,
  67542.     PFORMAT_STRING pFormat
  67543.     );
  67544.  
  67545. __declspec(dllimport)
  67546. void
  67547. __stdcall
  67548. NdrConformantStructBufferSize(
  67549.     PMIDL_STUB_MESSAGE pStubMsg,
  67550.     unsigned char * pMemory,
  67551.     PFORMAT_STRING pFormat
  67552.     );
  67553.  
  67554. __declspec(dllimport)
  67555. void
  67556. __stdcall
  67557. NdrConformantVaryingStructBufferSize(
  67558.     PMIDL_STUB_MESSAGE pStubMsg,
  67559.     unsigned char * pMemory,
  67560.     PFORMAT_STRING pFormat
  67561.     );
  67562.  
  67563. __declspec(dllimport)
  67564. void
  67565. __stdcall
  67566. NdrComplexStructBufferSize(
  67567.     PMIDL_STUB_MESSAGE pStubMsg,
  67568.     unsigned char * pMemory,
  67569.     PFORMAT_STRING pFormat
  67570.     );
  67571.  
  67572.  
  67573.  
  67574. __declspec(dllimport)
  67575. void
  67576. __stdcall
  67577. NdrFixedArrayBufferSize(
  67578.     PMIDL_STUB_MESSAGE pStubMsg,
  67579.     unsigned char * pMemory,
  67580.     PFORMAT_STRING pFormat
  67581.     );
  67582.  
  67583. __declspec(dllimport)
  67584. void
  67585. __stdcall
  67586. NdrConformantArrayBufferSize(
  67587.     PMIDL_STUB_MESSAGE pStubMsg,
  67588.     unsigned char * pMemory,
  67589.     PFORMAT_STRING pFormat
  67590.     );
  67591.  
  67592. __declspec(dllimport)
  67593. void
  67594. __stdcall
  67595. NdrConformantVaryingArrayBufferSize(
  67596.     PMIDL_STUB_MESSAGE pStubMsg,
  67597.     unsigned char * pMemory,
  67598.     PFORMAT_STRING pFormat
  67599.     );
  67600.  
  67601. __declspec(dllimport)
  67602. void
  67603. __stdcall
  67604. NdrVaryingArrayBufferSize(
  67605.     PMIDL_STUB_MESSAGE pStubMsg,
  67606.     unsigned char * pMemory,
  67607.     PFORMAT_STRING pFormat
  67608.     );
  67609.  
  67610. __declspec(dllimport)
  67611. void
  67612. __stdcall
  67613. NdrComplexArrayBufferSize(
  67614.     PMIDL_STUB_MESSAGE pStubMsg,
  67615.     unsigned char * pMemory,
  67616.     PFORMAT_STRING pFormat
  67617.     );
  67618.  
  67619.  
  67620.  
  67621. __declspec(dllimport)
  67622. void
  67623. __stdcall
  67624. NdrConformantStringBufferSize(
  67625.     PMIDL_STUB_MESSAGE pStubMsg,
  67626.     unsigned char * pMemory,
  67627.     PFORMAT_STRING pFormat
  67628.     );
  67629.  
  67630. __declspec(dllimport)
  67631. void
  67632. __stdcall
  67633. NdrNonConformantStringBufferSize(
  67634.     PMIDL_STUB_MESSAGE pStubMsg,
  67635.     unsigned char * pMemory,
  67636.     PFORMAT_STRING pFormat
  67637.     );
  67638.  
  67639.  
  67640.  
  67641. __declspec(dllimport)
  67642. void
  67643. __stdcall
  67644. NdrEncapsulatedUnionBufferSize(
  67645.     PMIDL_STUB_MESSAGE pStubMsg,
  67646.     unsigned char * pMemory,
  67647.     PFORMAT_STRING pFormat
  67648.     );
  67649.  
  67650. __declspec(dllimport)
  67651. void
  67652. __stdcall
  67653. NdrNonEncapsulatedUnionBufferSize(
  67654.     PMIDL_STUB_MESSAGE pStubMsg,
  67655.     unsigned char * pMemory,
  67656.     PFORMAT_STRING pFormat
  67657.     );
  67658.  
  67659.  
  67660.  
  67661. __declspec(dllimport)
  67662. void
  67663. __stdcall
  67664. NdrByteCountPointerBufferSize(
  67665.     PMIDL_STUB_MESSAGE pStubMsg,
  67666.     unsigned char * pMemory,
  67667.     PFORMAT_STRING pFormat
  67668.     );
  67669.  
  67670.  
  67671.  
  67672. __declspec(dllimport)
  67673. void
  67674. __stdcall
  67675. NdrXmitOrRepAsBufferSize(
  67676.     PMIDL_STUB_MESSAGE pStubMsg,
  67677.     unsigned char * pMemory,
  67678.     PFORMAT_STRING pFormat
  67679.     );
  67680.  
  67681.  
  67682.  
  67683. __declspec(dllimport)
  67684. void
  67685. __stdcall
  67686. NdrUserMarshalBufferSize(
  67687.     PMIDL_STUB_MESSAGE pStubMsg,
  67688.     unsigned char * pMemory,
  67689.     PFORMAT_STRING pFormat
  67690.     );
  67691.  
  67692.  
  67693.  
  67694. __declspec(dllimport)
  67695. void
  67696. __stdcall
  67697. NdrInterfacePointerBufferSize(
  67698.     PMIDL_STUB_MESSAGE pStubMsg,
  67699.     unsigned char * pMemory,
  67700.     PFORMAT_STRING pFormat
  67701.     );
  67702.  
  67703.  
  67704.  
  67705. __declspec(dllimport)
  67706. void
  67707. __stdcall
  67708. NdrContextHandleSize(
  67709.     PMIDL_STUB_MESSAGE pStubMsg,
  67710.     unsigned char * pMemory,
  67711.     PFORMAT_STRING pFormat
  67712.     );
  67713.  
  67714.  
  67715.  
  67716.  
  67717.  
  67718. __declspec(dllimport)
  67719. unsigned long
  67720. __stdcall
  67721. NdrPointerMemorySize(
  67722.     PMIDL_STUB_MESSAGE pStubMsg,
  67723.     PFORMAT_STRING pFormat
  67724.     );
  67725.  
  67726. __declspec(dllimport)
  67727. unsigned long
  67728. __stdcall
  67729. NdrContextHandleMemorySize(
  67730.     PMIDL_STUB_MESSAGE pStubMsg,
  67731.     PFORMAT_STRING pFormat
  67732.     );
  67733.  
  67734.  
  67735.  
  67736.  
  67737. __declspec(dllimport)
  67738. unsigned long
  67739. __stdcall
  67740. NdrCsArrayMemorySize(
  67741.     PMIDL_STUB_MESSAGE pStubMsg,
  67742.     PFORMAT_STRING pFormat
  67743.     );
  67744.  
  67745. __declspec(dllimport)
  67746. unsigned long
  67747. __stdcall
  67748. NdrCsTagMemorySize(
  67749.     PMIDL_STUB_MESSAGE pStubMsg,
  67750.     PFORMAT_STRING pFormat
  67751.     );
  67752.  
  67753.  
  67754.  
  67755. __declspec(dllimport)
  67756. unsigned long
  67757. __stdcall
  67758. NdrSimpleStructMemorySize(
  67759.     PMIDL_STUB_MESSAGE pStubMsg,
  67760.     PFORMAT_STRING pFormat
  67761.     );
  67762.  
  67763. __declspec(dllimport)
  67764. unsigned long
  67765. __stdcall
  67766. NdrConformantStructMemorySize(
  67767.     PMIDL_STUB_MESSAGE pStubMsg,
  67768.     PFORMAT_STRING pFormat
  67769.     );
  67770.  
  67771. __declspec(dllimport)
  67772. unsigned long
  67773. __stdcall
  67774. NdrConformantVaryingStructMemorySize(
  67775.     PMIDL_STUB_MESSAGE pStubMsg,
  67776.     PFORMAT_STRING pFormat
  67777.     );
  67778.  
  67779. __declspec(dllimport)
  67780. unsigned long
  67781. __stdcall
  67782. NdrComplexStructMemorySize(
  67783.     PMIDL_STUB_MESSAGE pStubMsg,
  67784.     PFORMAT_STRING pFormat
  67785.     );
  67786.  
  67787.  
  67788.  
  67789. __declspec(dllimport)
  67790. unsigned long
  67791. __stdcall
  67792. NdrFixedArrayMemorySize(
  67793.     PMIDL_STUB_MESSAGE pStubMsg,
  67794.     PFORMAT_STRING pFormat
  67795.     );
  67796.  
  67797. __declspec(dllimport)
  67798. unsigned long
  67799. __stdcall
  67800. NdrConformantArrayMemorySize(
  67801.     PMIDL_STUB_MESSAGE pStubMsg,
  67802.     PFORMAT_STRING pFormat
  67803.     );
  67804.  
  67805. __declspec(dllimport)
  67806. unsigned long
  67807. __stdcall
  67808. NdrConformantVaryingArrayMemorySize(
  67809.     PMIDL_STUB_MESSAGE pStubMsg,
  67810.     PFORMAT_STRING pFormat
  67811.     );
  67812.  
  67813. __declspec(dllimport)
  67814. unsigned long
  67815. __stdcall
  67816. NdrVaryingArrayMemorySize(
  67817.     PMIDL_STUB_MESSAGE pStubMsg,
  67818.     PFORMAT_STRING pFormat
  67819.     );
  67820.  
  67821. __declspec(dllimport)
  67822. unsigned long
  67823. __stdcall
  67824. NdrComplexArrayMemorySize(
  67825.     PMIDL_STUB_MESSAGE pStubMsg,
  67826.     PFORMAT_STRING pFormat
  67827.     );
  67828.  
  67829.  
  67830.  
  67831. __declspec(dllimport)
  67832. unsigned long
  67833. __stdcall
  67834. NdrConformantStringMemorySize(
  67835.     PMIDL_STUB_MESSAGE pStubMsg,
  67836.     PFORMAT_STRING pFormat
  67837.     );
  67838.  
  67839. __declspec(dllimport)
  67840. unsigned long
  67841. __stdcall
  67842. NdrNonConformantStringMemorySize(
  67843.     PMIDL_STUB_MESSAGE pStubMsg,
  67844.     PFORMAT_STRING pFormat
  67845.     );
  67846.  
  67847.  
  67848.  
  67849. __declspec(dllimport)
  67850. unsigned long
  67851. __stdcall
  67852. NdrEncapsulatedUnionMemorySize(
  67853.     PMIDL_STUB_MESSAGE pStubMsg,
  67854.     PFORMAT_STRING pFormat
  67855.     );
  67856.  
  67857. __declspec(dllimport)
  67858. unsigned long
  67859. __stdcall
  67860. NdrNonEncapsulatedUnionMemorySize(
  67861.     PMIDL_STUB_MESSAGE pStubMsg,
  67862.     PFORMAT_STRING pFormat
  67863.     );
  67864.  
  67865.  
  67866.  
  67867. __declspec(dllimport)
  67868. unsigned long
  67869. __stdcall
  67870. NdrXmitOrRepAsMemorySize(
  67871.     PMIDL_STUB_MESSAGE pStubMsg,
  67872.     PFORMAT_STRING pFormat
  67873.     );
  67874.  
  67875.  
  67876.  
  67877. __declspec(dllimport)
  67878. unsigned long
  67879. __stdcall
  67880. NdrUserMarshalMemorySize(
  67881.     PMIDL_STUB_MESSAGE pStubMsg,
  67882.     PFORMAT_STRING pFormat
  67883.     );
  67884.  
  67885.  
  67886.  
  67887. __declspec(dllimport)
  67888. unsigned long
  67889. __stdcall
  67890. NdrInterfacePointerMemorySize(
  67891.     PMIDL_STUB_MESSAGE pStubMsg,
  67892.     PFORMAT_STRING pFormat
  67893.     );
  67894.  
  67895.  
  67896.  
  67897.  
  67898.  
  67899. __declspec(dllimport)
  67900. void
  67901. __stdcall
  67902. NdrPointerFree(
  67903.     PMIDL_STUB_MESSAGE pStubMsg,
  67904.     unsigned char * pMemory,
  67905.     PFORMAT_STRING pFormat
  67906.     );
  67907.  
  67908. __declspec(dllimport)
  67909. void
  67910. __stdcall
  67911. NdrCsArrayFree(
  67912.     PMIDL_STUB_MESSAGE pStubMsg,
  67913.     unsigned char * pMemory,
  67914.     PFORMAT_STRING pFormat
  67915.     );
  67916.  
  67917.  
  67918.  
  67919. __declspec(dllimport)
  67920. void
  67921. __stdcall
  67922. NdrSimpleStructFree(
  67923.     PMIDL_STUB_MESSAGE pStubMsg,
  67924.     unsigned char * pMemory,
  67925.     PFORMAT_STRING pFormat
  67926.     );
  67927.  
  67928. __declspec(dllimport)
  67929. void
  67930. __stdcall
  67931. NdrConformantStructFree(
  67932.     PMIDL_STUB_MESSAGE pStubMsg,
  67933.     unsigned char * pMemory,
  67934.     PFORMAT_STRING pFormat
  67935.     );
  67936.  
  67937. __declspec(dllimport)
  67938. void
  67939. __stdcall
  67940. NdrConformantVaryingStructFree(
  67941.     PMIDL_STUB_MESSAGE pStubMsg,
  67942.     unsigned char * pMemory,
  67943.     PFORMAT_STRING pFormat
  67944.     );
  67945.  
  67946. __declspec(dllimport)
  67947. void
  67948. __stdcall
  67949. NdrComplexStructFree(
  67950.     PMIDL_STUB_MESSAGE pStubMsg,
  67951.     unsigned char * pMemory,
  67952.     PFORMAT_STRING pFormat
  67953.     );
  67954.  
  67955.  
  67956.  
  67957. __declspec(dllimport)
  67958. void
  67959. __stdcall
  67960. NdrFixedArrayFree(
  67961.     PMIDL_STUB_MESSAGE pStubMsg,
  67962.     unsigned char * pMemory,
  67963.     PFORMAT_STRING pFormat
  67964.     );
  67965.  
  67966. __declspec(dllimport)
  67967. void
  67968. __stdcall
  67969. NdrConformantArrayFree(
  67970.     PMIDL_STUB_MESSAGE pStubMsg,
  67971.     unsigned char * pMemory,
  67972.     PFORMAT_STRING pFormat
  67973.     );
  67974.  
  67975. __declspec(dllimport)
  67976. void
  67977. __stdcall
  67978. NdrConformantVaryingArrayFree(
  67979.     PMIDL_STUB_MESSAGE pStubMsg,
  67980.     unsigned char * pMemory,
  67981.     PFORMAT_STRING pFormat
  67982.     );
  67983.  
  67984. __declspec(dllimport)
  67985. void
  67986. __stdcall
  67987. NdrVaryingArrayFree(
  67988.     PMIDL_STUB_MESSAGE pStubMsg,
  67989.     unsigned char * pMemory,
  67990.     PFORMAT_STRING pFormat
  67991.     );
  67992.  
  67993. __declspec(dllimport)
  67994. void
  67995. __stdcall
  67996. NdrComplexArrayFree(
  67997.     PMIDL_STUB_MESSAGE pStubMsg,
  67998.     unsigned char * pMemory,
  67999.     PFORMAT_STRING pFormat
  68000.     );
  68001.  
  68002.  
  68003.  
  68004. __declspec(dllimport)
  68005. void
  68006. __stdcall
  68007. NdrEncapsulatedUnionFree(
  68008.     PMIDL_STUB_MESSAGE pStubMsg,
  68009.     unsigned char * pMemory,
  68010.     PFORMAT_STRING pFormat
  68011.     );
  68012.  
  68013. __declspec(dllimport)
  68014. void
  68015. __stdcall
  68016. NdrNonEncapsulatedUnionFree(
  68017.     PMIDL_STUB_MESSAGE pStubMsg,
  68018.     unsigned char * pMemory,
  68019.     PFORMAT_STRING pFormat
  68020.     );
  68021.  
  68022.  
  68023.  
  68024. __declspec(dllimport)
  68025. void
  68026. __stdcall
  68027. NdrByteCountPointerFree(
  68028.     PMIDL_STUB_MESSAGE pStubMsg,
  68029.     unsigned char * pMemory,
  68030.     PFORMAT_STRING pFormat
  68031.     );
  68032.  
  68033.  
  68034.  
  68035. __declspec(dllimport)
  68036. void
  68037. __stdcall
  68038. NdrXmitOrRepAsFree(
  68039.     PMIDL_STUB_MESSAGE pStubMsg,
  68040.     unsigned char * pMemory,
  68041.     PFORMAT_STRING pFormat
  68042.     );
  68043.  
  68044.  
  68045.  
  68046. __declspec(dllimport)
  68047. void
  68048. __stdcall
  68049. NdrUserMarshalFree(
  68050.     PMIDL_STUB_MESSAGE pStubMsg,
  68051.     unsigned char * pMemory,
  68052.     PFORMAT_STRING pFormat
  68053.     );
  68054.  
  68055.  
  68056.  
  68057. __declspec(dllimport)
  68058. void
  68059. __stdcall
  68060. NdrInterfacePointerFree(
  68061.     PMIDL_STUB_MESSAGE pStubMsg,
  68062.     unsigned char * pMemory,
  68063.     PFORMAT_STRING pFormat
  68064.     );
  68065.  
  68066.  
  68067.  
  68068.  
  68069.  
  68070. __declspec(dllimport)
  68071. void
  68072. __stdcall
  68073. NdrConvert2(
  68074.     PMIDL_STUB_MESSAGE pStubMsg,
  68075.     PFORMAT_STRING pFormat,
  68076.     long NumberParams
  68077.     );
  68078.  
  68079. __declspec(dllimport)
  68080. void
  68081. __stdcall
  68082. NdrConvert(
  68083.     PMIDL_STUB_MESSAGE pStubMsg,
  68084.     PFORMAT_STRING pFormat
  68085.     );
  68086. # 2424 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  68087. __declspec(dllimport)
  68088. unsigned char *
  68089. __stdcall
  68090. NdrUserMarshalSimpleTypeConvert(
  68091.     unsigned long * pFlags,
  68092.     unsigned char * pBuffer,
  68093.     unsigned char FormatChar
  68094.     );
  68095.  
  68096.  
  68097.  
  68098.  
  68099.  
  68100. __declspec(dllimport)
  68101. void
  68102. __stdcall
  68103. NdrClientInitializeNew(
  68104.     PRPC_MESSAGE pRpcMsg,
  68105.     PMIDL_STUB_MESSAGE pStubMsg,
  68106.     PMIDL_STUB_DESC pStubDescriptor,
  68107.     unsigned int ProcNum
  68108.     );
  68109.  
  68110. __declspec(dllimport)
  68111. unsigned char *
  68112. __stdcall
  68113. NdrServerInitializeNew(
  68114.     PRPC_MESSAGE pRpcMsg,
  68115.     PMIDL_STUB_MESSAGE pStubMsg,
  68116.     PMIDL_STUB_DESC pStubDescriptor
  68117.     );
  68118.  
  68119. __declspec(dllimport)
  68120. void
  68121. __stdcall
  68122. NdrServerInitializePartial(
  68123.     PRPC_MESSAGE pRpcMsg,
  68124.     PMIDL_STUB_MESSAGE pStubMsg,
  68125.     PMIDL_STUB_DESC pStubDescriptor,
  68126.     unsigned long RequestedBufferSize
  68127.     );
  68128.  
  68129. __declspec(dllimport)
  68130. void
  68131. __stdcall
  68132. NdrClientInitialize(
  68133.     PRPC_MESSAGE pRpcMsg,
  68134.     PMIDL_STUB_MESSAGE pStubMsg,
  68135.     PMIDL_STUB_DESC pStubDescriptor,
  68136.     unsigned int ProcNum
  68137.     );
  68138.  
  68139. __declspec(dllimport)
  68140. unsigned char *
  68141. __stdcall
  68142. NdrServerInitialize(
  68143.     PRPC_MESSAGE pRpcMsg,
  68144.     PMIDL_STUB_MESSAGE pStubMsg,
  68145.     PMIDL_STUB_DESC pStubDescriptor
  68146.     );
  68147.  
  68148. __declspec(dllimport)
  68149. unsigned char *
  68150. __stdcall
  68151. NdrServerInitializeUnmarshall (
  68152.     PMIDL_STUB_MESSAGE pStubMsg,
  68153.     PMIDL_STUB_DESC pStubDescriptor,
  68154.     PRPC_MESSAGE pRpcMsg
  68155.     );
  68156.  
  68157. __declspec(dllimport)
  68158. void
  68159. __stdcall
  68160. NdrServerInitializeMarshall (
  68161.     PRPC_MESSAGE pRpcMsg,
  68162.     PMIDL_STUB_MESSAGE pStubMsg
  68163.     );
  68164.  
  68165. __declspec(dllimport)
  68166. unsigned char *
  68167. __stdcall
  68168. NdrGetBuffer(
  68169.     PMIDL_STUB_MESSAGE pStubMsg,
  68170.     unsigned long BufferLength,
  68171.     RPC_BINDING_HANDLE Handle
  68172.     );
  68173.  
  68174. __declspec(dllimport)
  68175. unsigned char *
  68176. __stdcall
  68177. NdrNsGetBuffer(
  68178.     PMIDL_STUB_MESSAGE pStubMsg,
  68179.     unsigned long BufferLength,
  68180.     RPC_BINDING_HANDLE Handle
  68181.     );
  68182.  
  68183. __declspec(dllimport)
  68184. unsigned char *
  68185. __stdcall
  68186. NdrSendReceive(
  68187.     PMIDL_STUB_MESSAGE pStubMsg,
  68188.     unsigned char * pBufferEnd
  68189.     );
  68190.  
  68191. __declspec(dllimport)
  68192. unsigned char *
  68193. __stdcall
  68194. NdrNsSendReceive(
  68195.     PMIDL_STUB_MESSAGE pStubMsg,
  68196.     unsigned char * pBufferEnd,
  68197.     RPC_BINDING_HANDLE * pAutoHandle
  68198.     );
  68199.  
  68200. __declspec(dllimport)
  68201. void
  68202. __stdcall
  68203. NdrFreeBuffer(
  68204.     PMIDL_STUB_MESSAGE pStubMsg
  68205.     );
  68206.  
  68207. __declspec(dllimport)
  68208. HRESULT
  68209. __stdcall
  68210. NdrGetDcomProtocolVersion(
  68211.     PMIDL_STUB_MESSAGE pStubMsg,
  68212.     RPC_VERSION * pVersion );
  68213.  
  68214. #pragma warning(pop)
  68215.  
  68216.  
  68217.  
  68218.  
  68219.  
  68220.  
  68221.  
  68222. CLIENT_CALL_RETURN __cdecl
  68223. NdrClientCall2(
  68224.     PMIDL_STUB_DESC pStubDescriptor,
  68225.     PFORMAT_STRING pFormat,
  68226.     ...
  68227.     );
  68228.  
  68229. CLIENT_CALL_RETURN __cdecl
  68230. NdrClientCall(
  68231.     PMIDL_STUB_DESC pStubDescriptor,
  68232.     PFORMAT_STRING pFormat,
  68233.     ...
  68234.     );
  68235.  
  68236. CLIENT_CALL_RETURN __cdecl
  68237. NdrAsyncClientCall(
  68238.     PMIDL_STUB_DESC pStubDescriptor,
  68239.     PFORMAT_STRING pFormat,
  68240.     ...
  68241.     );
  68242.  
  68243.  
  68244.  
  68245. CLIENT_CALL_RETURN __cdecl
  68246. NdrClientCall4(
  68247.     PMIDL_STUB_DESC pStubDescriptor,
  68248.     PFORMAT_STRING pFormat,
  68249.     ...
  68250.     );
  68251.  
  68252. CLIENT_CALL_RETURN __cdecl
  68253. NdrAsyncClientCall2(
  68254.     PMIDL_STUB_DESC pStubDescriptor,
  68255.     PFORMAT_STRING pFormat,
  68256.     ...
  68257.     );
  68258.  
  68259. CLIENT_CALL_RETURN __cdecl
  68260. NdrMesProcEncodeDecode4(
  68261.     handle_t Handle,
  68262.     const MIDL_STUB_DESC * pStubDescriptor,
  68263.     PFORMAT_STRING pFormat,
  68264.     ...
  68265.     );
  68266.  
  68267.  
  68268.  
  68269.  
  68270. #pragma endregion
  68271.  
  68272. #pragma region Desktop Family or OneCore Family
  68273.  
  68274.  
  68275. CLIENT_CALL_RETURN __cdecl
  68276. NdrDcomAsyncClientCall(
  68277.     PMIDL_STUB_DESC pStubDescriptor,
  68278.     PFORMAT_STRING pFormat,
  68279.     ...
  68280.     );
  68281.  
  68282.  
  68283.  
  68284. CLIENT_CALL_RETURN __cdecl
  68285. NdrDcomAsyncClientCall2(
  68286.     PMIDL_STUB_DESC pStubDescriptor,
  68287.     PFORMAT_STRING pFormat,
  68288.     ...
  68289.     );
  68290.  
  68291.  
  68292.  
  68293.  
  68294. #pragma endregion
  68295.  
  68296. #pragma region Application Family or OneCore Family
  68297.  
  68298.  
  68299.  
  68300. typedef enum {
  68301.     STUB_UNMARSHAL,
  68302.     STUB_CALL_SERVER,
  68303.     STUB_MARSHAL,
  68304.     STUB_CALL_SERVER_NO_HRESULT
  68305. }STUB_PHASE;
  68306.  
  68307. typedef enum {
  68308.     PROXY_CALCSIZE,
  68309.     PROXY_GETBUFFER,
  68310.     PROXY_MARSHAL,
  68311.     PROXY_SENDRECEIVE,
  68312.     PROXY_UNMARSHAL
  68313. }PROXY_PHASE;
  68314.  
  68315. struct IRpcStubBuffer;
  68316.  
  68317.  
  68318.  
  68319. __declspec(dllimport)
  68320. void
  68321. __stdcall
  68322. NdrAsyncServerCall(
  68323.     PRPC_MESSAGE pRpcMsg
  68324.     );
  68325.  
  68326.  
  68327. __declspec(dllimport)
  68328. long
  68329. __stdcall
  68330. NdrAsyncStubCall(
  68331.     struct IRpcStubBuffer * pThis,
  68332.     struct IRpcChannelBuffer * pChannel,
  68333.     PRPC_MESSAGE pRpcMsg,
  68334.     unsigned long * pdwStubPhase
  68335.     );
  68336.  
  68337.  
  68338. #pragma endregion
  68339.  
  68340. #pragma region Desktop Family or OneCore Family
  68341.  
  68342.  
  68343.  
  68344. __declspec(dllimport)
  68345. long
  68346. __stdcall
  68347. NdrDcomAsyncStubCall(
  68348.     struct IRpcStubBuffer * pThis,
  68349.     struct IRpcChannelBuffer * pChannel,
  68350.     PRPC_MESSAGE pRpcMsg,
  68351.     unsigned long * pdwStubPhase
  68352.     );
  68353.  
  68354.  
  68355. #pragma endregion
  68356.  
  68357. #pragma region Application Family or OneCore Family
  68358.  
  68359.  
  68360. __declspec(dllimport)
  68361. long
  68362. __stdcall
  68363. NdrStubCall2(
  68364.     void * pThis,
  68365.     void * pChannel,
  68366.     PRPC_MESSAGE pRpcMsg,
  68367.     unsigned long * pdwStubPhase
  68368.     );
  68369.  
  68370. __declspec(dllimport)
  68371. void
  68372. __stdcall
  68373. NdrServerCall2(
  68374.     PRPC_MESSAGE pRpcMsg
  68375.     );
  68376.  
  68377. __declspec(dllimport)
  68378. long
  68379. __stdcall
  68380. NdrStubCall (
  68381.     void * pThis,
  68382.     void * pChannel,
  68383.     PRPC_MESSAGE pRpcMsg,
  68384.     unsigned long * pdwStubPhase
  68385.     );
  68386.  
  68387. __declspec(dllimport)
  68388. void
  68389. __stdcall
  68390. NdrServerCall(
  68391.     PRPC_MESSAGE pRpcMsg
  68392.     );
  68393.  
  68394. __declspec(dllimport)
  68395. int
  68396. __stdcall
  68397. NdrServerUnmarshall(
  68398.     void * pChannel,
  68399.     PRPC_MESSAGE pRpcMsg,
  68400.     PMIDL_STUB_MESSAGE pStubMsg,
  68401.     PMIDL_STUB_DESC pStubDescriptor,
  68402.     PFORMAT_STRING pFormat,
  68403.     void * pParamList
  68404.     );
  68405.  
  68406. __declspec(dllimport)
  68407. void
  68408. __stdcall
  68409. NdrServerMarshall(
  68410.     void * pThis,
  68411.     void * pChannel,
  68412.     PMIDL_STUB_MESSAGE pStubMsg,
  68413.     PFORMAT_STRING pFormat
  68414.     );
  68415.  
  68416.  
  68417.  
  68418. __declspec(dllimport)
  68419. RPC_STATUS
  68420. __stdcall
  68421. NdrMapCommAndFaultStatus(
  68422.     PMIDL_STUB_MESSAGE pStubMsg,
  68423.     unsigned long * pCommStatus,
  68424.     unsigned long * pFaultStatus,
  68425.     RPC_STATUS Status
  68426.     );
  68427.  
  68428.  
  68429.  
  68430.  
  68431.  
  68432.  
  68433.  
  68434. typedef void * RPC_SS_THREAD_HANDLE;
  68435.  
  68436. typedef void * __stdcall
  68437. RPC_CLIENT_ALLOC (
  68438.          size_t Size
  68439.     );
  68440.  
  68441. typedef void __stdcall
  68442. RPC_CLIENT_FREE (
  68443.          void * Ptr
  68444.     );
  68445.  
  68446.  
  68447.  
  68448.  
  68449.  
  68450. __declspec(dllimport)
  68451. void *
  68452. __stdcall
  68453. RpcSsAllocate (
  68454.          size_t Size
  68455.     );
  68456.  
  68457. __declspec(dllimport)
  68458. void
  68459. __stdcall
  68460. RpcSsDisableAllocate (
  68461.     void
  68462.     );
  68463.  
  68464. __declspec(dllimport)
  68465. void
  68466. __stdcall
  68467. RpcSsEnableAllocate (
  68468.     void
  68469.     );
  68470.  
  68471. __declspec(dllimport)
  68472. void
  68473. __stdcall
  68474. RpcSsFree (
  68475.          void * NodeToFree
  68476.     );
  68477.  
  68478. __declspec(dllimport)
  68479. RPC_SS_THREAD_HANDLE
  68480. __stdcall
  68481. RpcSsGetThreadHandle (
  68482.     void
  68483.     );
  68484.  
  68485. __declspec(dllimport)
  68486. void
  68487. __stdcall
  68488. RpcSsSetClientAllocFree (
  68489.          RPC_CLIENT_ALLOC * ClientAlloc,
  68490.          RPC_CLIENT_FREE * ClientFree
  68491.     );
  68492.  
  68493. __declspec(dllimport)
  68494. void
  68495. __stdcall
  68496. RpcSsSetThreadHandle (
  68497.          RPC_SS_THREAD_HANDLE Id
  68498.     );
  68499.  
  68500. __declspec(dllimport)
  68501. void
  68502. __stdcall
  68503. RpcSsSwapClientAllocFree (
  68504.          RPC_CLIENT_ALLOC * ClientAlloc,
  68505.          RPC_CLIENT_FREE * ClientFree,
  68506.           RPC_CLIENT_ALLOC * * OldClientAlloc,
  68507.           RPC_CLIENT_FREE * * OldClientFree
  68508.     );
  68509.  
  68510.  
  68511.  
  68512.  
  68513.  
  68514. __declspec(dllimport)
  68515. void *
  68516. __stdcall
  68517. RpcSmAllocate (
  68518.           size_t Size,
  68519.           RPC_STATUS * pStatus
  68520.     );
  68521.  
  68522. __declspec(dllimport)
  68523. RPC_STATUS
  68524. __stdcall
  68525. RpcSmClientFree (
  68526.           void * pNodeToFree
  68527.     );
  68528.  
  68529. __declspec(dllimport)
  68530. RPC_STATUS
  68531. __stdcall
  68532. RpcSmDestroyClientContext (
  68533.          void * * ContextHandle
  68534.     );
  68535.  
  68536. __declspec(dllimport)
  68537. RPC_STATUS
  68538. __stdcall
  68539. RpcSmDisableAllocate (
  68540.     void
  68541.     );
  68542.  
  68543. __declspec(dllimport)
  68544. RPC_STATUS
  68545. __stdcall
  68546. RpcSmEnableAllocate (
  68547.     void
  68548.     );
  68549.  
  68550. __declspec(dllimport)
  68551. RPC_STATUS
  68552. __stdcall
  68553. RpcSmFree (
  68554.          void * NodeToFree
  68555.     );
  68556.  
  68557. __declspec(dllimport)
  68558. RPC_SS_THREAD_HANDLE
  68559. __stdcall
  68560. RpcSmGetThreadHandle (
  68561.           RPC_STATUS * pStatus
  68562.     );
  68563.  
  68564. __declspec(dllimport)
  68565. RPC_STATUS
  68566. __stdcall
  68567. RpcSmSetClientAllocFree (
  68568.          RPC_CLIENT_ALLOC * ClientAlloc,
  68569.          RPC_CLIENT_FREE * ClientFree
  68570.     );
  68571.  
  68572. __declspec(dllimport)
  68573. RPC_STATUS
  68574. __stdcall
  68575. RpcSmSetThreadHandle (
  68576.          RPC_SS_THREAD_HANDLE Id
  68577.     );
  68578.  
  68579. __declspec(dllimport)
  68580. RPC_STATUS
  68581. __stdcall
  68582. RpcSmSwapClientAllocFree (
  68583.          RPC_CLIENT_ALLOC * ClientAlloc,
  68584.          RPC_CLIENT_FREE * ClientFree,
  68585.           RPC_CLIENT_ALLOC * * OldClientAlloc,
  68586.           RPC_CLIENT_FREE * * OldClientFree
  68587.     );
  68588.  
  68589.  
  68590.  
  68591.  
  68592.  
  68593. __declspec(dllimport)
  68594. void
  68595. __stdcall
  68596. NdrRpcSsEnableAllocate(
  68597.     PMIDL_STUB_MESSAGE pMessage );
  68598.  
  68599. __declspec(dllimport)
  68600. void
  68601. __stdcall
  68602. NdrRpcSsDisableAllocate(
  68603.     PMIDL_STUB_MESSAGE pMessage );
  68604.  
  68605. __declspec(dllimport)
  68606. void
  68607. __stdcall
  68608. NdrRpcSmSetClientToOsf(
  68609.     PMIDL_STUB_MESSAGE pMessage );
  68610.  
  68611. __declspec(dllimport)
  68612. void *
  68613. __stdcall
  68614. NdrRpcSmClientAllocate (
  68615.          size_t Size
  68616.     );
  68617.  
  68618. __declspec(dllimport)
  68619. void
  68620. __stdcall
  68621. NdrRpcSmClientFree (
  68622.          void * NodeToFree
  68623.     );
  68624.  
  68625. __declspec(dllimport)
  68626. void *
  68627. __stdcall
  68628. NdrRpcSsDefaultAllocate (
  68629.          size_t Size
  68630.     );
  68631.  
  68632. __declspec(dllimport)
  68633. void
  68634. __stdcall
  68635. NdrRpcSsDefaultFree (
  68636.          void * NodeToFree
  68637.     );
  68638. # 2984 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  68639. __declspec(dllimport)
  68640. PFULL_PTR_XLAT_TABLES
  68641. __stdcall
  68642. NdrFullPointerXlatInit(
  68643.     unsigned long NumberOfPointers,
  68644.     XLAT_SIDE XlatSide
  68645.     );
  68646.  
  68647. __declspec(dllimport)
  68648. void
  68649. __stdcall
  68650. NdrFullPointerXlatFree(
  68651.     PFULL_PTR_XLAT_TABLES pXlatTables
  68652.     );
  68653.  
  68654.  
  68655. __declspec(dllimport)
  68656. void *
  68657. __stdcall
  68658. NdrAllocate(
  68659.     PMIDL_STUB_MESSAGE pStubMsg,
  68660.     size_t Len
  68661.     );
  68662.  
  68663. __declspec(dllimport)
  68664. void
  68665. __stdcall
  68666. NdrClearOutParameters(
  68667.     PMIDL_STUB_MESSAGE pStubMsg,
  68668.     PFORMAT_STRING pFormat,
  68669.     void * ArgAddr
  68670.     );
  68671.  
  68672.  
  68673.  
  68674.  
  68675.  
  68676.  
  68677. __declspec(dllimport)
  68678. void *
  68679. __stdcall
  68680. NdrOleAllocate (
  68681.          size_t Size
  68682.     );
  68683.  
  68684. __declspec(dllimport)
  68685. void
  68686. __stdcall
  68687. NdrOleFree (
  68688.          void * NodeToFree
  68689.     );
  68690. # 3083 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  68691. typedef struct _NDR_USER_MARSHAL_INFO_LEVEL1
  68692. {
  68693.     void * Buffer;
  68694.     unsigned long BufferSize;
  68695.     void *(__stdcall * pfnAllocate)(size_t);
  68696.     void (__stdcall * pfnFree)(void *);
  68697.     struct IRpcChannelBuffer * pRpcChannelBuffer;
  68698.     ULONG_PTR Reserved[5];
  68699. } NDR_USER_MARSHAL_INFO_LEVEL1;
  68700.  
  68701.  
  68702.  
  68703.  
  68704.  
  68705. #pragma warning(disable: 4201)
  68706.  
  68707.  
  68708. typedef struct _NDR_USER_MARSHAL_INFO
  68709. {
  68710.     unsigned long InformationLevel;
  68711.     union {
  68712.         NDR_USER_MARSHAL_INFO_LEVEL1 Level1;
  68713.     } ;
  68714. } NDR_USER_MARSHAL_INFO;
  68715.  
  68716.  
  68717.  
  68718.  
  68719.  
  68720. #pragma warning(default: 4201)
  68721.  
  68722.  
  68723.  
  68724.  
  68725. RPC_STATUS
  68726. __stdcall
  68727. NdrGetUserMarshalInfo (
  68728.          unsigned long * pFlags,
  68729.          unsigned long InformationLevel,
  68730.           NDR_USER_MARSHAL_INFO * pMarshalInfo
  68731.     );
  68732.  
  68733.  
  68734.  
  68735.  
  68736. RPC_STATUS __stdcall
  68737. NdrCreateServerInterfaceFromStub(
  68738.                  struct IRpcStubBuffer* pStub,
  68739.                     RPC_SERVER_INTERFACE *pServerIf );
  68740.  
  68741.  
  68742.  
  68743.  
  68744. CLIENT_CALL_RETURN __cdecl
  68745. NdrClientCall3(
  68746.     MIDL_STUBLESS_PROXY_INFO *pProxyInfo,
  68747.     unsigned long nProcNum,
  68748.     void * pReturnValue,
  68749.     ...
  68750.     );
  68751.  
  68752. CLIENT_CALL_RETURN __cdecl
  68753. Ndr64AsyncClientCall(
  68754.     MIDL_STUBLESS_PROXY_INFO *pProxyInfo,
  68755.     unsigned long nProcNum,
  68756.     void * pReturnValue,
  68757.     ...
  68758.     );
  68759.  
  68760.  
  68761. #pragma endregion
  68762.  
  68763. #pragma region Desktop Family or OneCore Family
  68764.  
  68765.  
  68766. CLIENT_CALL_RETURN __cdecl
  68767. Ndr64DcomAsyncClientCall(
  68768.     MIDL_STUBLESS_PROXY_INFO *pProxyInfo,
  68769.     unsigned long nProcNum,
  68770.     void * pReturnValue,
  68771.     ...
  68772.     );
  68773.  
  68774. __declspec(dllimport)
  68775. void
  68776. __stdcall
  68777. Ndr64AsyncServerCall(
  68778.     PRPC_MESSAGE pRpcMsg
  68779.     );
  68780.  
  68781.  
  68782. #pragma endregion
  68783.  
  68784. #pragma region Application Family or OneCore Family
  68785.  
  68786.  
  68787. struct IRpcStubBuffer;
  68788.  
  68789. __declspec(dllimport)
  68790. void
  68791. __stdcall
  68792. Ndr64AsyncServerCall64(
  68793.     PRPC_MESSAGE pRpcMsg
  68794.     );
  68795.  
  68796. __declspec(dllimport)
  68797. void
  68798. __stdcall
  68799. Ndr64AsyncServerCallAll(
  68800.     PRPC_MESSAGE pRpcMsg
  68801.     );
  68802.  
  68803. __declspec(dllimport)
  68804. long
  68805. __stdcall
  68806. Ndr64AsyncStubCall(
  68807.     struct IRpcStubBuffer * pThis,
  68808.     struct IRpcChannelBuffer * pChannel,
  68809.     PRPC_MESSAGE pRpcMsg,
  68810.     unsigned long * pdwStubPhase
  68811.     );
  68812.  
  68813.  
  68814. #pragma endregion
  68815.  
  68816. #pragma region Desktop Family or OneCore Family
  68817.  
  68818.  
  68819.  
  68820. __declspec(dllimport)
  68821. long
  68822. __stdcall
  68823. Ndr64DcomAsyncStubCall(
  68824.     struct IRpcStubBuffer * pThis,
  68825.     struct IRpcChannelBuffer * pChannel,
  68826.     PRPC_MESSAGE pRpcMsg,
  68827.     unsigned long * pdwStubPhase
  68828.     );
  68829.  
  68830.  
  68831. #pragma endregion
  68832.  
  68833. #pragma region Application Family or OneCore Family
  68834.  
  68835.  
  68836. __declspec(dllimport)
  68837. long
  68838. __stdcall
  68839. NdrStubCall3 (
  68840.     void * pThis,
  68841.     void * pChannel,
  68842.     PRPC_MESSAGE pRpcMsg,
  68843.     unsigned long * pdwStubPhase
  68844.     );
  68845.  
  68846. __declspec(dllimport)
  68847. void
  68848. __stdcall
  68849. NdrServerCallAll(
  68850.     PRPC_MESSAGE pRpcMsg
  68851.     );
  68852.  
  68853. __declspec(dllimport)
  68854. void
  68855. __stdcall
  68856. NdrServerCallNdr64(
  68857.     PRPC_MESSAGE pRpcMsg
  68858.     );
  68859.  
  68860.  
  68861. __declspec(dllimport)
  68862. void
  68863. __stdcall
  68864. NdrServerCall3(
  68865.     PRPC_MESSAGE pRpcMsg
  68866.     );
  68867.  
  68868.  
  68869.  
  68870. __declspec(dllimport)
  68871. void
  68872. __stdcall
  68873. NdrPartialIgnoreClientMarshall(
  68874.     PMIDL_STUB_MESSAGE pStubMsg,
  68875.     void * pMemory
  68876.     );
  68877.  
  68878. __declspec(dllimport)
  68879. void
  68880. __stdcall
  68881. NdrPartialIgnoreServerUnmarshall(
  68882.     PMIDL_STUB_MESSAGE pStubMsg,
  68883.     void ** ppMemory
  68884.     );
  68885.  
  68886. __declspec(dllimport)
  68887. void
  68888. __stdcall
  68889. NdrPartialIgnoreClientBufferSize(
  68890.     PMIDL_STUB_MESSAGE pStubMsg,
  68891.     void * pMemory
  68892.     );
  68893.  
  68894. __declspec(dllimport)
  68895. void
  68896. __stdcall
  68897. NdrPartialIgnoreServerInitialize(
  68898.     PMIDL_STUB_MESSAGE pStubMsg,
  68899.     void ** ppMemory,
  68900.     PFORMAT_STRING pFormat
  68901.     );
  68902.  
  68903.  
  68904. void __stdcall
  68905. RpcUserFree( handle_t AsyncHandle, void * pBuffer );
  68906.  
  68907.  
  68908. #pragma endregion
  68909.  
  68910.  
  68911.  
  68912.  
  68913.  
  68914.  
  68915. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  68916. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  68917. #pragma warning(disable: 4103)
  68918.  
  68919. #pragma pack(pop)
  68920. # 3306 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 2 3
  68921.  
  68922.  
  68923.  
  68924.  
  68925.  
  68926.  
  68927.  
  68928. #pragma option pop
  68929. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 2 3
  68930. # 40 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  68931. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 1 3
  68932. #pragma option push -b -a8 -pc -A- -w-pun
  68933. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  68934. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  68935. #pragma option push -b -a8 -pc -A- -w-pun
  68936. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  68937. #pragma option pop
  68938. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 2 3
  68939.  
  68940. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 1 3
  68941. #pragma option push -b -a8 -pc -A- -w-pun
  68942. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpcndr.h" 3
  68943. #pragma option pop
  68944. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 2 3
  68945. # 41 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  68946. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/guiddef.h" 1 3
  68947. #pragma option push -b -a8 -pc -A- -w-pun
  68948. # 217 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/guiddef.h" 3
  68949. #pragma option pop
  68950. # 41 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 2 3
  68951. # 66 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  68952. extern RPC_IF_HANDLE __MIDL_itf_wtypesbase_0000_0000_v0_0_c_ifspec;
  68953. extern RPC_IF_HANDLE __MIDL_itf_wtypesbase_0000_0000_v0_0_s_ifspec;
  68954. # 118 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  68955. typedef WCHAR OLECHAR;
  68956.  
  68957. typedef OLECHAR *LPOLESTR;
  68958.  
  68959. typedef const OLECHAR *LPCOLESTR;
  68960. # 143 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  68961. typedef unsigned char UCHAR;
  68962.  
  68963. typedef short SHORT;
  68964.  
  68965. typedef unsigned short USHORT;
  68966.  
  68967. typedef DWORD ULONG;
  68968.  
  68969. typedef double DOUBLE;
  68970. # 263 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  68971. typedef struct _COAUTHIDENTITY
  68972.     {
  68973.                     USHORT *User;
  68974.                   ULONG UserLength;
  68975.                     USHORT *Domain;
  68976.                   ULONG DomainLength;
  68977.                     USHORT *Password;
  68978.                   ULONG PasswordLength;
  68979.     ULONG Flags;
  68980.     } COAUTHIDENTITY;
  68981.  
  68982. typedef struct _COAUTHINFO
  68983.     {
  68984.     DWORD dwAuthnSvc;
  68985.     DWORD dwAuthzSvc;
  68986.     LPWSTR pwszServerPrincName;
  68987.     DWORD dwAuthnLevel;
  68988.     DWORD dwImpersonationLevel;
  68989.     COAUTHIDENTITY *pAuthIdentityData;
  68990.     DWORD dwCapabilities;
  68991.     } COAUTHINFO;
  68992.  
  68993. typedef LONG SCODE;
  68994.  
  68995. typedef SCODE *PSCODE;
  68996. # 317 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  68997. typedef
  68998. enum tagMEMCTX
  68999.     {
  69000.         MEMCTX_TASK = 1,
  69001.         MEMCTX_SHARED = 2,
  69002.         MEMCTX_MACSYSTEM = 3,
  69003.         MEMCTX_UNKNOWN = -1,
  69004.         MEMCTX_SAME = -2
  69005.     } MEMCTX;
  69006. # 357 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  69007. typedef
  69008. enum tagCLSCTX
  69009.     {
  69010.         CLSCTX_INPROC_SERVER = 0x1,
  69011.         CLSCTX_INPROC_HANDLER = 0x2,
  69012.         CLSCTX_LOCAL_SERVER = 0x4,
  69013.         CLSCTX_INPROC_SERVER16 = 0x8,
  69014.         CLSCTX_REMOTE_SERVER = 0x10,
  69015.         CLSCTX_INPROC_HANDLER16 = 0x20,
  69016.         CLSCTX_RESERVED1 = 0x40,
  69017.         CLSCTX_RESERVED2 = 0x80,
  69018.         CLSCTX_RESERVED3 = 0x100,
  69019.         CLSCTX_RESERVED4 = 0x200,
  69020.         CLSCTX_NO_CODE_DOWNLOAD = 0x400,
  69021.         CLSCTX_RESERVED5 = 0x800,
  69022.         CLSCTX_NO_CUSTOM_MARSHAL = 0x1000,
  69023.         CLSCTX_ENABLE_CODE_DOWNLOAD = 0x2000,
  69024.         CLSCTX_NO_FAILURE_LOG = 0x4000,
  69025.         CLSCTX_DISABLE_AAA = 0x8000,
  69026.         CLSCTX_ENABLE_AAA = 0x10000,
  69027.         CLSCTX_FROM_DEFAULT_CONTEXT = 0x20000,
  69028.         CLSCTX_ACTIVATE_X86_SERVER = 0x40000,
  69029.         CLSCTX_ACTIVATE_32_BIT_SERVER = CLSCTX_ACTIVATE_X86_SERVER,
  69030.         CLSCTX_ACTIVATE_64_BIT_SERVER = 0x80000,
  69031.         CLSCTX_ENABLE_CLOAKING = 0x100000,
  69032.         CLSCTX_APPCONTAINER = 0x400000,
  69033.         CLSCTX_ACTIVATE_AAA_AS_IU = 0x800000,
  69034.         CLSCTX_RESERVED6 = 0x1000000,
  69035.         CLSCTX_ACTIVATE_ARM32_SERVER = 0x2000000,
  69036.         CLSCTX_PS_DLL = 0x80000000
  69037.     } CLSCTX;
  69038. # 410 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  69039. typedef
  69040. enum tagMSHLFLAGS
  69041.     {
  69042.         MSHLFLAGS_NORMAL = 0,
  69043.         MSHLFLAGS_TABLESTRONG = 1,
  69044.         MSHLFLAGS_TABLEWEAK = 2,
  69045.         MSHLFLAGS_NOPING = 4,
  69046.         MSHLFLAGS_RESERVED1 = 8,
  69047.         MSHLFLAGS_RESERVED2 = 16,
  69048.         MSHLFLAGS_RESERVED3 = 32,
  69049.         MSHLFLAGS_RESERVED4 = 64
  69050.     } MSHLFLAGS;
  69051.  
  69052. typedef
  69053. enum tagMSHCTX
  69054.     {
  69055.         MSHCTX_LOCAL = 0,
  69056.         MSHCTX_NOSHAREDMEM = 1,
  69057.         MSHCTX_DIFFERENTMACHINE = 2,
  69058.         MSHCTX_INPROC = 3,
  69059.         MSHCTX_CROSSCTX = 4,
  69060.         MSHCTX_RESERVED1 = 5
  69061.     } MSHCTX;
  69062.  
  69063. typedef struct _BYTE_BLOB
  69064.     {
  69065.     ULONG clSize;
  69066.                     byte abData[ 1 ];
  69067.     } BYTE_BLOB;
  69068.  
  69069. typedef BYTE_BLOB *UP_BYTE_BLOB;
  69070.  
  69071. typedef struct _WORD_BLOB
  69072.     {
  69073.     ULONG clSize;
  69074.                     unsigned short asData[ 1 ];
  69075.     } WORD_BLOB;
  69076.  
  69077. typedef WORD_BLOB *UP_WORD_BLOB;
  69078.  
  69079. typedef struct _DWORD_BLOB
  69080.     {
  69081.     ULONG clSize;
  69082.                     ULONG alData[ 1 ];
  69083.     } DWORD_BLOB;
  69084.  
  69085. typedef DWORD_BLOB *UP_DWORD_BLOB;
  69086.  
  69087. typedef struct _FLAGGED_BYTE_BLOB
  69088.     {
  69089.     ULONG fFlags;
  69090.     ULONG clSize;
  69091.                     byte abData[ 1 ];
  69092.     } FLAGGED_BYTE_BLOB;
  69093.  
  69094. typedef FLAGGED_BYTE_BLOB *UP_FLAGGED_BYTE_BLOB;
  69095.  
  69096. typedef struct _FLAGGED_WORD_BLOB
  69097.     {
  69098.     ULONG fFlags;
  69099.     ULONG clSize;
  69100.                     unsigned short asData[ 1 ];
  69101.     } FLAGGED_WORD_BLOB;
  69102.  
  69103. typedef FLAGGED_WORD_BLOB *UP_FLAGGED_WORD_BLOB;
  69104.  
  69105. typedef struct _BYTE_SIZEDARR
  69106.     {
  69107.     ULONG clSize;
  69108.                     byte *pData;
  69109.     } BYTE_SIZEDARR;
  69110.  
  69111. typedef struct _SHORT_SIZEDARR
  69112.     {
  69113.     ULONG clSize;
  69114.                     unsigned short *pData;
  69115.     } WORD_SIZEDARR;
  69116.  
  69117. typedef struct _LONG_SIZEDARR
  69118.     {
  69119.     ULONG clSize;
  69120.                     ULONG *pData;
  69121.     } DWORD_SIZEDARR;
  69122.  
  69123. typedef struct _HYPER_SIZEDARR
  69124.     {
  69125.     ULONG clSize;
  69126.                     __int64 *pData;
  69127.     } HYPER_SIZEDARR;
  69128.  
  69129.  
  69130.  
  69131. extern RPC_IF_HANDLE IWinTypesBase_v0_1_c_ifspec;
  69132. extern RPC_IF_HANDLE IWinTypesBase_v0_1_s_ifspec;
  69133.  
  69134.  
  69135.  
  69136.  
  69137.  
  69138. typedef boolean BOOLEAN;
  69139. # 560 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  69140. extern RPC_IF_HANDLE __MIDL_itf_wtypesbase_0000_0001_v0_0_c_ifspec;
  69141. extern RPC_IF_HANDLE __MIDL_itf_wtypesbase_0000_0001_v0_0_s_ifspec;
  69142. # 574 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypesbase.h" 3
  69143. #pragma option pop
  69144. # 40 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 2 3
  69145. # 65 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69146. extern RPC_IF_HANDLE __MIDL_itf_wtypes_0000_0000_v0_0_c_ifspec;
  69147. extern RPC_IF_HANDLE __MIDL_itf_wtypes_0000_0000_v0_0_s_ifspec;
  69148.  
  69149.  
  69150.  
  69151.  
  69152.  
  69153.  
  69154.  
  69155. typedef struct tagRemHGLOBAL
  69156.     {
  69157.     LONG fNullHGlobal;
  69158.     ULONG cbData;
  69159.                     byte data[ 1 ];
  69160.     } RemHGLOBAL;
  69161.  
  69162. typedef struct tagRemHMETAFILEPICT
  69163.     {
  69164.     LONG mm;
  69165.     LONG xExt;
  69166.     LONG yExt;
  69167.     ULONG cbData;
  69168.                     byte data[ 1 ];
  69169.     } RemHMETAFILEPICT;
  69170.  
  69171. typedef struct tagRemHENHMETAFILE
  69172.     {
  69173.     ULONG cbData;
  69174.                     byte data[ 1 ];
  69175.     } RemHENHMETAFILE;
  69176.  
  69177. typedef struct tagRemHBITMAP
  69178.     {
  69179.     ULONG cbData;
  69180.                     byte data[ 1 ];
  69181.     } RemHBITMAP;
  69182.  
  69183. typedef struct tagRemHPALETTE
  69184.     {
  69185.     ULONG cbData;
  69186.                     byte data[ 1 ];
  69187.     } RemHPALETTE;
  69188.  
  69189. typedef struct tagRemBRUSH
  69190.     {
  69191.     ULONG cbData;
  69192.                     byte data[ 1 ];
  69193.     } RemHBRUSH;
  69194. # 346 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69195. typedef
  69196. enum tagDVASPECT
  69197.     {
  69198.         DVASPECT_CONTENT = 1,
  69199.         DVASPECT_THUMBNAIL = 2,
  69200.         DVASPECT_ICON = 4,
  69201.         DVASPECT_DOCPRINT = 8
  69202.     } DVASPECT;
  69203.  
  69204. typedef
  69205. enum tagSTGC
  69206.     {
  69207.         STGC_DEFAULT = 0,
  69208.         STGC_OVERWRITE = 1,
  69209.         STGC_ONLYIFCURRENT = 2,
  69210.         STGC_DANGEROUSLYCOMMITMERELYTODISKCACHE = 4,
  69211.         STGC_CONSOLIDATE = 8
  69212.     } STGC;
  69213.  
  69214. typedef
  69215. enum tagSTGMOVE
  69216.     {
  69217.         STGMOVE_MOVE = 0,
  69218.         STGMOVE_COPY = 1,
  69219.         STGMOVE_SHALLOWCOPY = 2
  69220.     } STGMOVE;
  69221.  
  69222. typedef
  69223. enum tagSTATFLAG
  69224.     {
  69225.         STATFLAG_DEFAULT = 0,
  69226.         STATFLAG_NONAME = 1,
  69227.         STATFLAG_NOOPEN = 2
  69228.     } STATFLAG;
  69229.  
  69230. typedef void *HCONTEXT;
  69231.  
  69232.  
  69233.  
  69234. typedef DWORD LCID;
  69235.  
  69236.  
  69237.  
  69238.  
  69239. typedef USHORT LANGID;
  69240. # 399 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69241. typedef struct _userCLIPFORMAT
  69242.     {
  69243.     LONG fContext;
  69244.                                           union __MIDL_IWinTypes_0001
  69245.         {
  69246.                        DWORD dwValue;
  69247.                                wchar_t *pwszName;
  69248.         } u;
  69249.     } userCLIPFORMAT;
  69250.  
  69251. typedef userCLIPFORMAT *wireCLIPFORMAT;
  69252.  
  69253. typedef WORD CLIPFORMAT;
  69254.  
  69255. typedef struct _GDI_NONREMOTE
  69256.     {
  69257.     LONG fContext;
  69258.                                           union __MIDL_IWinTypes_0002
  69259.         {
  69260.                        LONG hInproc;
  69261.                        DWORD_BLOB *hRemote;
  69262.         } u;
  69263.     } GDI_NONREMOTE;
  69264.  
  69265. typedef struct _userHGLOBAL
  69266.     {
  69267.     LONG fContext;
  69268.                                           union __MIDL_IWinTypes_0003
  69269.         {
  69270.                        LONG hInproc;
  69271.                        FLAGGED_BYTE_BLOB *hRemote;
  69272.                        __int64 hInproc64;
  69273.         } u;
  69274.     } userHGLOBAL;
  69275.  
  69276. typedef userHGLOBAL *wireHGLOBAL;
  69277.  
  69278. typedef struct _userHMETAFILE
  69279.     {
  69280.     LONG fContext;
  69281.                                           union __MIDL_IWinTypes_0004
  69282.         {
  69283.                        LONG hInproc;
  69284.                        BYTE_BLOB *hRemote;
  69285.                        __int64 hInproc64;
  69286.         } u;
  69287.     } userHMETAFILE;
  69288.  
  69289. typedef struct _remoteMETAFILEPICT
  69290.     {
  69291.     LONG mm;
  69292.     LONG xExt;
  69293.     LONG yExt;
  69294.     userHMETAFILE *hMF;
  69295.     } remoteMETAFILEPICT;
  69296.  
  69297. typedef struct _userHMETAFILEPICT
  69298.     {
  69299.     LONG fContext;
  69300.                                           union __MIDL_IWinTypes_0005
  69301.         {
  69302.                        LONG hInproc;
  69303.                        remoteMETAFILEPICT *hRemote;
  69304.                        __int64 hInproc64;
  69305.         } u;
  69306.     } userHMETAFILEPICT;
  69307.  
  69308. typedef struct _userHENHMETAFILE
  69309.     {
  69310.     LONG fContext;
  69311.                                           union __MIDL_IWinTypes_0006
  69312.         {
  69313.                        LONG hInproc;
  69314.                        BYTE_BLOB *hRemote;
  69315.                        __int64 hInproc64;
  69316.         } u;
  69317.     } userHENHMETAFILE;
  69318.  
  69319. typedef struct _userBITMAP
  69320.     {
  69321.     LONG bmType;
  69322.     LONG bmWidth;
  69323.     LONG bmHeight;
  69324.     LONG bmWidthBytes;
  69325.     WORD bmPlanes;
  69326.     WORD bmBitsPixel;
  69327.     ULONG cbSize;
  69328.                     byte pBuffer[ 1 ];
  69329.     } userBITMAP;
  69330.  
  69331. typedef struct _userHBITMAP
  69332.     {
  69333.     LONG fContext;
  69334.                                           union __MIDL_IWinTypes_0007
  69335.         {
  69336.                        LONG hInproc;
  69337.                        userBITMAP *hRemote;
  69338.                        __int64 hInproc64;
  69339.         } u;
  69340.     } userHBITMAP;
  69341.  
  69342. typedef struct _userHPALETTE
  69343.     {
  69344.     LONG fContext;
  69345.                                           union __MIDL_IWinTypes_0008
  69346.         {
  69347.                        LONG hInproc;
  69348.                        LOGPALETTE *hRemote;
  69349.                        __int64 hInproc64;
  69350.         } u;
  69351.     } userHPALETTE;
  69352.  
  69353. typedef struct _RemotableHandle
  69354.     {
  69355.     LONG fContext;
  69356.                                           union __MIDL_IWinTypes_0009
  69357.         {
  69358.                        LONG hInproc;
  69359.                        LONG hRemote;
  69360.         } u;
  69361.     } RemotableHandle;
  69362.  
  69363. typedef RemotableHandle *wireHWND;
  69364.  
  69365. typedef RemotableHandle *wireHMENU;
  69366.  
  69367. typedef RemotableHandle *wireHACCEL;
  69368.  
  69369. typedef RemotableHandle *wireHBRUSH;
  69370.  
  69371. typedef RemotableHandle *wireHFONT;
  69372.  
  69373. typedef RemotableHandle *wireHDC;
  69374.  
  69375. typedef RemotableHandle *wireHICON;
  69376.  
  69377. typedef RemotableHandle *wireHRGN;
  69378.  
  69379. typedef RemotableHandle *wireHMONITOR;
  69380. # 615 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69381. typedef userHBITMAP *wireHBITMAP;
  69382.  
  69383. typedef userHPALETTE *wireHPALETTE;
  69384.  
  69385. typedef userHENHMETAFILE *wireHENHMETAFILE;
  69386.  
  69387. typedef userHMETAFILE *wireHMETAFILE;
  69388.  
  69389. typedef userHMETAFILEPICT *wireHMETAFILEPICT;
  69390. # 639 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69391. typedef void *HMETAFILEPICT;
  69392.  
  69393.  
  69394.  
  69395. extern RPC_IF_HANDLE IWinTypes_v0_1_c_ifspec;
  69396. extern RPC_IF_HANDLE IWinTypes_v0_1_s_ifspec;
  69397. # 656 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69398. typedef double DATE;
  69399. # 671 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69400. typedef union tagCY {
  69401.     struct {
  69402.         ULONG Lo;
  69403.         LONG Hi;
  69404.     } ;
  69405.     LONGLONG int64;
  69406. } CY;
  69407.  
  69408.  
  69409. typedef CY *LPCY;
  69410. # 696 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69411. typedef struct tagDEC {
  69412.     USHORT wReserved;
  69413.     union {
  69414.         struct {
  69415.             BYTE scale;
  69416.             BYTE sign;
  69417.         } ;
  69418.         USHORT signscale;
  69419.     } ;
  69420.     ULONG Hi32;
  69421.     union {
  69422.         struct {
  69423.             ULONG Lo32;
  69424.             ULONG Mid32;
  69425.         } ;
  69426.         ULONGLONG Lo64;
  69427.     } ;
  69428. } DECIMAL;
  69429.  
  69430.  
  69431.  
  69432.  
  69433. typedef DECIMAL *LPDECIMAL;
  69434. # 727 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69435. typedef FLAGGED_WORD_BLOB *wireBSTR;
  69436.  
  69437.  
  69438. typedef OLECHAR *BSTR;
  69439.  
  69440.  
  69441.  
  69442.  
  69443. typedef BSTR *LPBSTR;
  69444.  
  69445.  
  69446. typedef short VARIANT_BOOL;
  69447. # 753 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69448. typedef struct tagBSTRBLOB
  69449.     {
  69450.     ULONG cbSize;
  69451.                     BYTE *pData;
  69452.     } BSTRBLOB;
  69453.  
  69454. typedef struct tagBSTRBLOB *LPBSTRBLOB;
  69455.  
  69456.  
  69457.  
  69458.  
  69459. typedef struct tagCLIPDATA
  69460.     {
  69461.     ULONG cbSize;
  69462.     LONG ulClipFmt;
  69463.                     BYTE *pClipData;
  69464.     } CLIPDATA;
  69465.  
  69466.  
  69467.  
  69468. typedef unsigned short VARTYPE;
  69469. # 834 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69470. enum VARENUM
  69471.     {
  69472.         VT_EMPTY = 0,
  69473.         VT_NULL = 1,
  69474.         VT_I2 = 2,
  69475.         VT_I4 = 3,
  69476.         VT_R4 = 4,
  69477.         VT_R8 = 5,
  69478.         VT_CY = 6,
  69479.         VT_DATE = 7,
  69480.         VT_BSTR = 8,
  69481.         VT_DISPATCH = 9,
  69482.         VT_ERROR = 10,
  69483.         VT_BOOL = 11,
  69484.         VT_VARIANT = 12,
  69485.         VT_UNKNOWN = 13,
  69486.         VT_DECIMAL = 14,
  69487.         VT_I1 = 16,
  69488.         VT_UI1 = 17,
  69489.         VT_UI2 = 18,
  69490.         VT_UI4 = 19,
  69491.         VT_I8 = 20,
  69492.         VT_UI8 = 21,
  69493.         VT_INT = 22,
  69494.         VT_UINT = 23,
  69495.         VT_VOID = 24,
  69496.         VT_HRESULT = 25,
  69497.         VT_PTR = 26,
  69498.         VT_SAFEARRAY = 27,
  69499.         VT_CARRAY = 28,
  69500.         VT_USERDEFINED = 29,
  69501.         VT_LPSTR = 30,
  69502.         VT_LPWSTR = 31,
  69503.         VT_RECORD = 36,
  69504.         VT_INT_PTR = 37,
  69505.         VT_UINT_PTR = 38,
  69506.         VT_FILETIME = 64,
  69507.         VT_BLOB = 65,
  69508.         VT_STREAM = 66,
  69509.         VT_STORAGE = 67,
  69510.         VT_STREAMED_OBJECT = 68,
  69511.         VT_STORED_OBJECT = 69,
  69512.         VT_BLOB_OBJECT = 70,
  69513.         VT_CF = 71,
  69514.         VT_CLSID = 72,
  69515.         VT_VERSIONED_STREAM = 73,
  69516.         VT_BSTR_BLOB = 0xfff,
  69517.         VT_VECTOR = 0x1000,
  69518.         VT_ARRAY = 0x2000,
  69519.         VT_BYREF = 0x4000,
  69520.         VT_RESERVED = 0x8000,
  69521.         VT_ILLEGAL = 0xffff,
  69522.         VT_ILLEGALMASKED = 0xfff,
  69523.         VT_TYPEMASK = 0xfff
  69524.     } ;
  69525. typedef ULONG PROPID;
  69526.  
  69527.  
  69528.  
  69529. typedef struct _tagpropertykey
  69530.     {
  69531.     GUID fmtid;
  69532.     DWORD pid;
  69533.     } PROPERTYKEY;
  69534.  
  69535.  
  69536. typedef struct tagCSPLATFORM
  69537.     {
  69538.     DWORD dwPlatformId;
  69539.     DWORD dwVersionHi;
  69540.     DWORD dwVersionLo;
  69541.     DWORD dwProcessorArch;
  69542.     } CSPLATFORM;
  69543.  
  69544. typedef struct tagQUERYCONTEXT
  69545.     {
  69546.     DWORD dwContext;
  69547.     CSPLATFORM Platform;
  69548.     LCID Locale;
  69549.     DWORD dwVersionHi;
  69550.     DWORD dwVersionLo;
  69551.     } QUERYCONTEXT;
  69552.  
  69553. typedef
  69554. enum tagTYSPEC
  69555.     {
  69556.         TYSPEC_CLSID = 0,
  69557.         TYSPEC_FILEEXT = ( TYSPEC_CLSID + 1 ) ,
  69558.         TYSPEC_MIMETYPE = ( TYSPEC_FILEEXT + 1 ) ,
  69559.         TYSPEC_FILENAME = ( TYSPEC_MIMETYPE + 1 ) ,
  69560.         TYSPEC_PROGID = ( TYSPEC_FILENAME + 1 ) ,
  69561.         TYSPEC_PACKAGENAME = ( TYSPEC_PROGID + 1 ) ,
  69562.         TYSPEC_OBJECTID = ( TYSPEC_PACKAGENAME + 1 )
  69563.     } TYSPEC;
  69564.  
  69565. typedef struct __MIDL___MIDL_itf_wtypes_0000_0001_0001
  69566.     {
  69567.     DWORD tyspec;
  69568.                                           union __MIDL___MIDL_itf_wtypes_0000_0001_0005
  69569.         {
  69570.                        CLSID clsid;
  69571.                        LPOLESTR pFileExt;
  69572.                        LPOLESTR pMimeType;
  69573.                        LPOLESTR pProgId;
  69574.                        LPOLESTR pFileName;
  69575.                        struct
  69576.             {
  69577.             LPOLESTR pPackageName;
  69578.             GUID PolicyId;
  69579.             } ByName;
  69580.                        struct
  69581.             {
  69582.             GUID ObjectId;
  69583.             GUID PolicyId;
  69584.             } ByObjectId;
  69585.         } tagged_union;
  69586.     } uCLSSPEC;
  69587.  
  69588.  
  69589.  
  69590.  
  69591.  
  69592.  
  69593. extern RPC_IF_HANDLE __MIDL_itf_wtypes_0000_0001_v0_0_c_ifspec;
  69594. extern RPC_IF_HANDLE __MIDL_itf_wtypes_0000_0001_v0_0_s_ifspec;
  69595. # 971 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypes.h" 3
  69596. #pragma option pop
  69597. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 2 3
  69598.  
  69599. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 1 3
  69600. #pragma option push -b -a8 -pc -A- -w-pun -w-inl
  69601. # 48 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69602. extern const GUID GUID_DEVINTERFACE_DISK;
  69603. extern const GUID GUID_DEVINTERFACE_CDROM;
  69604. extern const GUID GUID_DEVINTERFACE_PARTITION;
  69605. extern const GUID GUID_DEVINTERFACE_TAPE;
  69606. extern const GUID GUID_DEVINTERFACE_WRITEONCEDISK;
  69607. extern const GUID GUID_DEVINTERFACE_VOLUME;
  69608. extern const GUID GUID_DEVINTERFACE_MEDIUMCHANGER;
  69609. extern const GUID GUID_DEVINTERFACE_FLOPPY;
  69610. extern const GUID GUID_DEVINTERFACE_CDCHANGER;
  69611. extern const GUID GUID_DEVINTERFACE_STORAGEPORT;
  69612. extern const GUID GUID_DEVINTERFACE_VMLUN;
  69613. extern const GUID GUID_DEVINTERFACE_SES;
  69614. # 68 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69615. extern const GUID GUID_DEVINTERFACE_SERVICE_VOLUME;
  69616. extern const GUID GUID_DEVINTERFACE_HIDDEN_VOLUME;
  69617.  
  69618.  
  69619.  
  69620.  
  69621.  
  69622. extern const GUID GUID_DEVINTERFACE_UNIFIED_ACCESS_RPMB;
  69623.  
  69624.  
  69625. extern const GUID GUID_DEVINTERFACE_COMPORT;
  69626.  
  69627. extern const GUID GUID_DEVINTERFACE_SERENUM_BUS_ENUMERATOR;
  69628. # 528 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69629. typedef struct _STORAGE_HOTPLUG_INFO {
  69630.     DWORD Size;
  69631.     BOOLEAN MediaRemovable;
  69632.     BOOLEAN MediaHotplug;
  69633.     BOOLEAN DeviceHotplug;
  69634.     BOOLEAN WriteCacheEnableOverride;
  69635. } STORAGE_HOTPLUG_INFO, *PSTORAGE_HOTPLUG_INFO;
  69636. # 547 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69637. typedef struct _STORAGE_DEVICE_NUMBER {
  69638.  
  69639.  
  69640.  
  69641.  
  69642.  
  69643.     DWORD DeviceType;
  69644.  
  69645.  
  69646.  
  69647.  
  69648.  
  69649.     DWORD DeviceNumber;
  69650.  
  69651.  
  69652.  
  69653.  
  69654.  
  69655.  
  69656.     DWORD PartitionNumber;
  69657. } STORAGE_DEVICE_NUMBER, *PSTORAGE_DEVICE_NUMBER;
  69658.  
  69659. typedef struct _STORAGE_DEVICE_NUMBERS {
  69660.  
  69661.     DWORD NumberOfDevices;
  69662.  
  69663.     STORAGE_DEVICE_NUMBER Devices[1];
  69664.  
  69665. } STORAGE_DEVICE_NUMBERS, *PSTORAGE_DEVICE_NUMBERS;
  69666. # 606 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69667. typedef struct _STORAGE_DEVICE_NUMBER_EX {
  69668.  
  69669.  
  69670.  
  69671.  
  69672.  
  69673.     DWORD Version;
  69674.  
  69675.  
  69676.  
  69677.  
  69678.  
  69679.  
  69680.     DWORD Size;
  69681.  
  69682.  
  69683.  
  69684.  
  69685.  
  69686.  
  69687.     DWORD Flags;
  69688.  
  69689.  
  69690.  
  69691.  
  69692.  
  69693.  
  69694.     DWORD DeviceType;
  69695.  
  69696.  
  69697.  
  69698.  
  69699.  
  69700.     DWORD DeviceNumber;
  69701. # 664 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69702.     GUID DeviceGuid;
  69703.  
  69704.  
  69705.  
  69706.  
  69707.  
  69708.  
  69709.     DWORD PartitionNumber;
  69710. } STORAGE_DEVICE_NUMBER_EX, *PSTORAGE_DEVICE_NUMBER_EX;
  69711.  
  69712.  
  69713.  
  69714.  
  69715.  
  69716.  
  69717. typedef struct _STORAGE_BUS_RESET_REQUEST {
  69718.     BYTE PathId;
  69719. } STORAGE_BUS_RESET_REQUEST, *PSTORAGE_BUS_RESET_REQUEST;
  69720.  
  69721.  
  69722.  
  69723.  
  69724.  
  69725. typedef struct STORAGE_BREAK_RESERVATION_REQUEST {
  69726.     DWORD Length;
  69727.     BYTE _unused;
  69728.     BYTE PathId;
  69729.     BYTE TargetId;
  69730.     BYTE Lun;
  69731. } STORAGE_BREAK_RESERVATION_REQUEST, *PSTORAGE_BREAK_RESERVATION_REQUEST;
  69732. # 706 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69733. typedef struct _PREVENT_MEDIA_REMOVAL {
  69734.     BOOLEAN PreventMediaRemoval;
  69735. } PREVENT_MEDIA_REMOVAL, *PPREVENT_MEDIA_REMOVAL;
  69736.  
  69737.  
  69738.  
  69739.  
  69740.  
  69741.  
  69742.  
  69743. typedef struct _CLASS_MEDIA_CHANGE_CONTEXT {
  69744.     DWORD MediaChangeCount;
  69745.     DWORD NewState;
  69746. } CLASS_MEDIA_CHANGE_CONTEXT, *PCLASS_MEDIA_CHANGE_CONTEXT;
  69747. # 728 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69748. typedef struct _TAPE_STATISTICS {
  69749.     DWORD Version;
  69750.     DWORD Flags;
  69751.     LARGE_INTEGER RecoveredWrites;
  69752.     LARGE_INTEGER UnrecoveredWrites;
  69753.     LARGE_INTEGER RecoveredReads;
  69754.     LARGE_INTEGER UnrecoveredReads;
  69755.     BYTE CompressionRatioReads;
  69756.     BYTE CompressionRatioWrites;
  69757. } TAPE_STATISTICS, *PTAPE_STATISTICS;
  69758. # 746 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69759. typedef struct _TAPE_GET_STATISTICS {
  69760.     DWORD Operation;
  69761. } TAPE_GET_STATISTICS, *PTAPE_GET_STATISTICS;
  69762. # 759 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69763. typedef enum _STORAGE_MEDIA_TYPE {
  69764. # 789 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69765.     DDS_4mm = 0x20,
  69766.     MiniQic,
  69767.     Travan,
  69768.     QIC,
  69769.     MP_8mm,
  69770.     AME_8mm,
  69771.     AIT1_8mm,
  69772.     DLT,
  69773.     NCTP,
  69774.     IBM_3480,
  69775.     IBM_3490E,
  69776.     IBM_Magstar_3590,
  69777.     IBM_Magstar_MP,
  69778.     STK_DATA_D3,
  69779.     SONY_DTF,
  69780.     DV_6mm,
  69781.     DMI,
  69782.     SONY_D2,
  69783.     CLEANER_CARTRIDGE,
  69784.     CD_ROM,
  69785.     CD_R,
  69786.     CD_RW,
  69787.     DVD_ROM,
  69788.     DVD_R,
  69789.     DVD_RW,
  69790.     MO_3_RW,
  69791.     MO_5_WO,
  69792.     MO_5_RW,
  69793.     MO_5_LIMDOW,
  69794.     PC_5_WO,
  69795.     PC_5_RW,
  69796.     PD_5_RW,
  69797.     ABL_5_WO,
  69798.     PINNACLE_APEX_5_RW,
  69799.     SONY_12_WO,
  69800.     PHILIPS_12_WO,
  69801.     HITACHI_12_WO,
  69802.     CYGNET_12_WO,
  69803.     KODAK_14_WO,
  69804.     MO_NFR_525,
  69805.     NIKON_12_RW,
  69806.     IOMEGA_ZIP,
  69807.     IOMEGA_JAZ,
  69808.     SYQUEST_EZ135,
  69809.     SYQUEST_EZFLYER,
  69810.     SYQUEST_SYJET,
  69811.     AVATAR_F2,
  69812.     MP2_8mm,
  69813.     DST_S,
  69814.     DST_M,
  69815.     DST_L,
  69816.     VXATape_1,
  69817.     VXATape_2,
  69818.  
  69819.  
  69820.  
  69821.     STK_9840,
  69822.  
  69823.     LTO_Ultrium,
  69824.     LTO_Accelis,
  69825.     DVD_RAM,
  69826.     AIT_8mm,
  69827.     ADR_1,
  69828.     ADR_2,
  69829.     STK_9940,
  69830.     SAIT,
  69831.     VXATape
  69832. }STORAGE_MEDIA_TYPE, *PSTORAGE_MEDIA_TYPE;
  69833. # 871 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69834. typedef enum _STORAGE_BUS_TYPE {
  69835.     BusTypeUnknown = 0x00,
  69836.     BusTypeScsi,
  69837.     BusTypeAtapi,
  69838.     BusTypeAta,
  69839.     BusType1394,
  69840.     BusTypeSsa,
  69841.     BusTypeFibre,
  69842.     BusTypeUsb,
  69843.     BusTypeRAID,
  69844.     BusTypeiScsi,
  69845.     BusTypeSas,
  69846.     BusTypeSata,
  69847.     BusTypeSd,
  69848.     BusTypeMmc,
  69849.     BusTypeVirtual,
  69850.     BusTypeFileBackedVirtual,
  69851.     BusTypeSpaces,
  69852.     BusTypeNvme,
  69853.     BusTypeSCM,
  69854.     BusTypeUfs,
  69855.     BusTypeMax,
  69856.     BusTypeMaxReserved = 0x7F
  69857. } STORAGE_BUS_TYPE, *PSTORAGE_BUS_TYPE;
  69858. # 908 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69859. typedef struct _DEVICE_MEDIA_INFO {
  69860.     union {
  69861.         struct {
  69862.             LARGE_INTEGER Cylinders;
  69863.             STORAGE_MEDIA_TYPE MediaType;
  69864.             DWORD TracksPerCylinder;
  69865.             DWORD SectorsPerTrack;
  69866.             DWORD BytesPerSector;
  69867.             DWORD NumberMediaSides;
  69868.             DWORD MediaCharacteristics;
  69869.         } DiskInfo;
  69870.  
  69871.         struct {
  69872.             LARGE_INTEGER Cylinders;
  69873.             STORAGE_MEDIA_TYPE MediaType;
  69874.             DWORD TracksPerCylinder;
  69875.             DWORD SectorsPerTrack;
  69876.             DWORD BytesPerSector;
  69877.             DWORD NumberMediaSides;
  69878.             DWORD MediaCharacteristics;
  69879.         } RemovableDiskInfo;
  69880.  
  69881.         struct {
  69882.             STORAGE_MEDIA_TYPE MediaType;
  69883.             DWORD MediaCharacteristics;
  69884.             DWORD CurrentBlockSize;
  69885.             STORAGE_BUS_TYPE BusType;
  69886.  
  69887.  
  69888.  
  69889.  
  69890.  
  69891.             union {
  69892.                 struct {
  69893.                     BYTE MediumType;
  69894.                     BYTE DensityCode;
  69895.                 } ScsiInformation;
  69896.             } BusSpecificData;
  69897.  
  69898.         } TapeInfo;
  69899.     } DeviceSpecific;
  69900. } DEVICE_MEDIA_INFO, *PDEVICE_MEDIA_INFO;
  69901.  
  69902. typedef struct _GET_MEDIA_TYPES {
  69903.     DWORD DeviceType;
  69904.     DWORD MediaInfoCount;
  69905.     DEVICE_MEDIA_INFO MediaInfo[1];
  69906. } GET_MEDIA_TYPES, *PGET_MEDIA_TYPES;
  69907. # 970 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69908. typedef struct _STORAGE_PREDICT_FAILURE
  69909. {
  69910.     DWORD PredictFailure;
  69911.     BYTE VendorSpecific[512];
  69912. } STORAGE_PREDICT_FAILURE, *PSTORAGE_PREDICT_FAILURE;
  69913. # 987 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69914. typedef struct _STORAGE_FAILURE_PREDICTION_CONFIG {
  69915.     DWORD Version;
  69916.     DWORD Size;
  69917.     BOOLEAN Set;
  69918.     BOOLEAN Enabled;
  69919.     WORD Reserved;
  69920. } STORAGE_FAILURE_PREDICTION_CONFIG, *PSTORAGE_FAILURE_PREDICTION_CONFIG;
  69921. # 1023 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  69922. typedef enum _STORAGE_QUERY_TYPE {
  69923.     PropertyStandardQuery = 0,
  69924.     PropertyExistsQuery,
  69925.     PropertyMaskQuery,
  69926.     PropertyQueryMaxDefined
  69927. } STORAGE_QUERY_TYPE, *PSTORAGE_QUERY_TYPE;
  69928.  
  69929.  
  69930.  
  69931.  
  69932.  
  69933. typedef enum _STORAGE_PROPERTY_ID {
  69934.     StorageDeviceProperty = 0,
  69935.     StorageAdapterProperty,
  69936.     StorageDeviceIdProperty,
  69937.     StorageDeviceUniqueIdProperty,
  69938.     StorageDeviceWriteCacheProperty,
  69939.     StorageMiniportProperty,
  69940.     StorageAccessAlignmentProperty,
  69941.     StorageDeviceSeekPenaltyProperty,
  69942.     StorageDeviceTrimProperty,
  69943.     StorageDeviceWriteAggregationProperty,
  69944.     StorageDeviceDeviceTelemetryProperty,
  69945.     StorageDeviceLBProvisioningProperty,
  69946.     StorageDevicePowerProperty,
  69947.     StorageDeviceCopyOffloadProperty,
  69948.     StorageDeviceResiliencyProperty,
  69949.     StorageDeviceMediumProductType,
  69950.     StorageAdapterRpmbProperty,
  69951.     StorageAdapterCryptoProperty,
  69952.     StorageDeviceIoCapabilityProperty = 48,
  69953.     StorageAdapterProtocolSpecificProperty,
  69954.     StorageDeviceProtocolSpecificProperty,
  69955.     StorageAdapterTemperatureProperty,
  69956.     StorageDeviceTemperatureProperty,
  69957.     StorageAdapterPhysicalTopologyProperty,
  69958.     StorageDevicePhysicalTopologyProperty,
  69959.     StorageDeviceAttributesProperty,
  69960.     StorageDeviceManagementStatus,
  69961.     StorageAdapterSerialNumberProperty,
  69962.     StorageDeviceLocationProperty,
  69963.     StorageDeviceNumaProperty,
  69964.     StorageDeviceZonedDeviceProperty,
  69965.     StorageDeviceUnsafeShutdownCount
  69966. } STORAGE_PROPERTY_ID, *PSTORAGE_PROPERTY_ID;
  69967.  
  69968.  
  69969.  
  69970.  
  69971.  
  69972.  
  69973. typedef struct _STORAGE_PROPERTY_QUERY {
  69974.  
  69975.  
  69976.  
  69977.  
  69978.  
  69979.     STORAGE_PROPERTY_ID PropertyId;
  69980.  
  69981.  
  69982.  
  69983.  
  69984.  
  69985.     STORAGE_QUERY_TYPE QueryType;
  69986.  
  69987.  
  69988.  
  69989.  
  69990.  
  69991.     BYTE AdditionalParameters[1];
  69992.  
  69993. } STORAGE_PROPERTY_QUERY, *PSTORAGE_PROPERTY_QUERY;
  69994.  
  69995.  
  69996.  
  69997.  
  69998.  
  69999.  
  70000. typedef struct _STORAGE_DESCRIPTOR_HEADER {
  70001.  
  70002.  
  70003.     DWORD Version;
  70004.  
  70005.  
  70006.     DWORD Size;
  70007.  
  70008. } STORAGE_DESCRIPTOR_HEADER, *PSTORAGE_DESCRIPTOR_HEADER;
  70009. # 1119 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70010. typedef struct _STORAGE_DEVICE_DESCRIPTOR {
  70011.  
  70012.  
  70013.  
  70014.  
  70015.  
  70016.  
  70017.     DWORD Version;
  70018.  
  70019.  
  70020.  
  70021.  
  70022.  
  70023.  
  70024.  
  70025.     DWORD Size;
  70026.  
  70027.  
  70028.  
  70029.  
  70030.  
  70031.  
  70032.     BYTE DeviceType;
  70033.  
  70034.  
  70035.  
  70036.  
  70037.  
  70038.  
  70039.     BYTE DeviceTypeModifier;
  70040.  
  70041.  
  70042.  
  70043.  
  70044.  
  70045.  
  70046.  
  70047.     BOOLEAN RemovableMedia;
  70048. # 1165 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70049.     BOOLEAN CommandQueueing;
  70050.  
  70051.  
  70052.  
  70053.  
  70054.  
  70055.  
  70056.  
  70057.     DWORD VendorIdOffset;
  70058.  
  70059.  
  70060.  
  70061.  
  70062.  
  70063.  
  70064.  
  70065.     DWORD ProductIdOffset;
  70066. # 1190 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70067.     DWORD ProductRevisionOffset;
  70068.  
  70069.  
  70070.  
  70071.  
  70072.  
  70073.  
  70074.  
  70075.     DWORD SerialNumberOffset;
  70076. # 1207 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70077.     STORAGE_BUS_TYPE BusType;
  70078.  
  70079.  
  70080.  
  70081.  
  70082.  
  70083.  
  70084.  
  70085.     DWORD RawPropertiesLength;
  70086.  
  70087.  
  70088.  
  70089.  
  70090.  
  70091.  
  70092.     BYTE RawDeviceProperties[1];
  70093.  
  70094. } STORAGE_DEVICE_DESCRIPTOR, *PSTORAGE_DEVICE_DESCRIPTOR;
  70095. # 1235 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70096. typedef struct _STORAGE_ADAPTER_DESCRIPTOR {
  70097.  
  70098.  
  70099.     DWORD Version;
  70100.  
  70101.  
  70102.     DWORD Size;
  70103.  
  70104.  
  70105.     DWORD MaximumTransferLength;
  70106.  
  70107.  
  70108.     DWORD MaximumPhysicalPages;
  70109.  
  70110.  
  70111.     DWORD AlignmentMask;
  70112.  
  70113.  
  70114.     BOOLEAN AdapterUsesPio;
  70115.  
  70116.  
  70117.     BOOLEAN AdapterScansDown;
  70118.  
  70119.  
  70120.     BOOLEAN CommandQueueing;
  70121.  
  70122.  
  70123.     BOOLEAN AcceleratedTransfer;
  70124.  
  70125.  
  70126.  
  70127.  
  70128.  
  70129.     BYTE BusType;
  70130.  
  70131.  
  70132.  
  70133.     WORD BusMajorVersion;
  70134.  
  70135.  
  70136.     WORD BusMinorVersion;
  70137.  
  70138.  
  70139.  
  70140.  
  70141.     BYTE SrbType;
  70142.  
  70143.  
  70144.     BYTE AddressType;
  70145.  
  70146.  
  70147. } STORAGE_ADAPTER_DESCRIPTOR, *PSTORAGE_ADAPTER_DESCRIPTOR;
  70148. # 1308 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70149. typedef struct _STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR {
  70150.  
  70151.  
  70152.  
  70153.  
  70154.  
  70155.  
  70156.     DWORD Version;
  70157.  
  70158.  
  70159.  
  70160.  
  70161.  
  70162.  
  70163.  
  70164.     DWORD Size;
  70165.  
  70166.  
  70167.  
  70168.  
  70169.  
  70170.  
  70171.     DWORD BytesPerCacheLine;
  70172.  
  70173.  
  70174.  
  70175.  
  70176.  
  70177.  
  70178.     DWORD BytesOffsetForCacheAlignment;
  70179.  
  70180.  
  70181.  
  70182.  
  70183.  
  70184.  
  70185.     DWORD BytesPerLogicalSector;
  70186.  
  70187.  
  70188.  
  70189.  
  70190.  
  70191.  
  70192.     DWORD BytesPerPhysicalSector;
  70193.  
  70194.  
  70195.  
  70196.  
  70197.  
  70198.  
  70199.     DWORD BytesOffsetForSectorAlignment;
  70200.  
  70201. } STORAGE_ACCESS_ALIGNMENT_DESCRIPTOR, *PSTORAGE_ACCESS_ALIGNMENT_DESCRIPTOR;
  70202.  
  70203. typedef struct _STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR {
  70204.  
  70205.  
  70206.  
  70207.  
  70208.  
  70209.     DWORD Version;
  70210.  
  70211.  
  70212.  
  70213.  
  70214.  
  70215.     DWORD Size;
  70216.  
  70217.  
  70218.  
  70219.  
  70220.  
  70221.     DWORD MediumProductType;
  70222.  
  70223. } STORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR, *PSTORAGE_MEDIUM_PRODUCT_TYPE_DESCRIPTOR;
  70224.  
  70225.  
  70226. typedef enum _STORAGE_PORT_CODE_SET {
  70227.     StoragePortCodeSetReserved = 0,
  70228.     StoragePortCodeSetStorport = 1,
  70229.     StoragePortCodeSetSCSIport = 2,
  70230.     StoragePortCodeSetSpaceport = 3,
  70231.     StoragePortCodeSetATAport = 4,
  70232.     StoragePortCodeSetUSBport = 5,
  70233.     StoragePortCodeSetSBP2port = 6,
  70234.     StoragePortCodeSetSDport = 7
  70235. } STORAGE_PORT_CODE_SET, *PSTORAGE_PORT_CODE_SET;
  70236.  
  70237.  
  70238.  
  70239.  
  70240.  
  70241. typedef struct _STORAGE_MINIPORT_DESCRIPTOR {
  70242.  
  70243.  
  70244.     DWORD Version;
  70245.  
  70246.  
  70247.     DWORD Size;
  70248.  
  70249.  
  70250.     STORAGE_PORT_CODE_SET Portdriver;
  70251.  
  70252.  
  70253.     BOOLEAN LUNResetSupported;
  70254.  
  70255.  
  70256.     BOOLEAN TargetResetSupported;
  70257.  
  70258.  
  70259.  
  70260.     WORD IoTimeoutValue;
  70261.  
  70262.  
  70263.  
  70264.  
  70265.     BOOLEAN ExtraIoInfoSupported;
  70266.  
  70267.  
  70268.     BYTE Reserved0[3];
  70269.  
  70270.  
  70271.     DWORD Reserved1;
  70272.  
  70273.  
  70274. } STORAGE_MINIPORT_DESCRIPTOR, *PSTORAGE_MINIPORT_DESCRIPTOR;
  70275.  
  70276.  
  70277.  
  70278.  
  70279.  
  70280.  
  70281.  
  70282. typedef enum _STORAGE_IDENTIFIER_CODE_SET {
  70283.     StorageIdCodeSetReserved = 0,
  70284.     StorageIdCodeSetBinary = 1,
  70285.     StorageIdCodeSetAscii = 2,
  70286.     StorageIdCodeSetUtf8 = 3
  70287. } STORAGE_IDENTIFIER_CODE_SET, *PSTORAGE_IDENTIFIER_CODE_SET;
  70288.  
  70289. typedef enum _STORAGE_IDENTIFIER_TYPE {
  70290.     StorageIdTypeVendorSpecific = 0,
  70291.     StorageIdTypeVendorId = 1,
  70292.     StorageIdTypeEUI64 = 2,
  70293.     StorageIdTypeFCPHName = 3,
  70294.     StorageIdTypePortRelative = 4,
  70295.     StorageIdTypeTargetPortGroup = 5,
  70296.     StorageIdTypeLogicalUnitGroup = 6,
  70297.     StorageIdTypeMD5LogicalUnitIdentifier = 7,
  70298.     StorageIdTypeScsiNameString = 8
  70299. } STORAGE_IDENTIFIER_TYPE, *PSTORAGE_IDENTIFIER_TYPE;
  70300.  
  70301.  
  70302.  
  70303.  
  70304.  
  70305. typedef enum _STORAGE_ID_NAA_FORMAT {
  70306.         StorageIdNAAFormatIEEEExtended = 2,
  70307.         StorageIdNAAFormatIEEERegistered = 3,
  70308.         StorageIdNAAFormatIEEEERegisteredExtended = 5
  70309. } STORAGE_ID_NAA_FORMAT, *PSTORAGE_ID_NAA_FORMAT;
  70310.  
  70311. typedef enum _STORAGE_ASSOCIATION_TYPE {
  70312.     StorageIdAssocDevice = 0,
  70313.     StorageIdAssocPort = 1,
  70314.     StorageIdAssocTarget = 2
  70315. } STORAGE_ASSOCIATION_TYPE, *PSTORAGE_ASSOCIATION_TYPE;
  70316.  
  70317. typedef struct _STORAGE_IDENTIFIER {
  70318.  
  70319.  
  70320.     STORAGE_IDENTIFIER_CODE_SET CodeSet;
  70321.  
  70322.  
  70323.     STORAGE_IDENTIFIER_TYPE Type;
  70324.  
  70325.  
  70326.     WORD IdentifierSize;
  70327.  
  70328.  
  70329.     WORD NextOffset;
  70330.  
  70331.  
  70332.  
  70333.  
  70334.  
  70335.  
  70336.  
  70337.     STORAGE_ASSOCIATION_TYPE Association;
  70338.  
  70339.  
  70340.  
  70341.  
  70342.  
  70343.  
  70344.     BYTE Identifier[1];
  70345.  
  70346. } STORAGE_IDENTIFIER, *PSTORAGE_IDENTIFIER;
  70347.  
  70348. typedef struct _STORAGE_DEVICE_ID_DESCRIPTOR {
  70349.  
  70350.  
  70351.     DWORD Version;
  70352.  
  70353.  
  70354.     DWORD Size;
  70355.  
  70356.  
  70357.  
  70358.  
  70359.  
  70360.  
  70361.     DWORD NumberOfIdentifiers;
  70362. # 1529 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70363.     BYTE Identifiers[1];
  70364.  
  70365. } STORAGE_DEVICE_ID_DESCRIPTOR, *PSTORAGE_DEVICE_ID_DESCRIPTOR;
  70366.  
  70367.  
  70368. typedef struct _DEVICE_SEEK_PENALTY_DESCRIPTOR {
  70369.  
  70370.  
  70371.     DWORD Version;
  70372.  
  70373.  
  70374.     DWORD Size;
  70375.  
  70376.  
  70377.     BOOLEAN IncursSeekPenalty;
  70378. } DEVICE_SEEK_PENALTY_DESCRIPTOR, *PDEVICE_SEEK_PENALTY_DESCRIPTOR;
  70379.  
  70380.  
  70381. typedef struct _DEVICE_WRITE_AGGREGATION_DESCRIPTOR {
  70382.     DWORD Version;
  70383.     DWORD Size;
  70384.  
  70385.     BOOLEAN BenefitsFromWriteAggregation;
  70386. } DEVICE_WRITE_AGGREGATION_DESCRIPTOR, *PDEVICE_WRITE_AGGREGATION_DESCRIPTOR;
  70387.  
  70388.  
  70389. typedef struct _DEVICE_TRIM_DESCRIPTOR {
  70390.  
  70391.  
  70392.     DWORD Version;
  70393.  
  70394.  
  70395.     DWORD Size;
  70396.  
  70397.  
  70398.     BOOLEAN TrimEnabled;
  70399.  
  70400. } DEVICE_TRIM_DESCRIPTOR, *PDEVICE_TRIM_DESCRIPTOR;
  70401.  
  70402. #pragma warning(push)
  70403. #pragma warning(disable: 4214)
  70404.  
  70405.  
  70406.  
  70407. typedef struct _DEVICE_LB_PROVISIONING_DESCRIPTOR {
  70408.  
  70409.     DWORD Version;
  70410.  
  70411.  
  70412.     DWORD Size;
  70413.  
  70414.  
  70415.     BYTE ThinProvisioningEnabled : 1;
  70416.  
  70417.  
  70418.     BYTE ThinProvisioningReadZeros : 1;
  70419.  
  70420.  
  70421.     BYTE AnchorSupported : 3;
  70422.  
  70423.  
  70424.     BYTE UnmapGranularityAlignmentValid : 1;
  70425.  
  70426.  
  70427.     BYTE Reserved0 : 2;
  70428.  
  70429.  
  70430.     BYTE Reserved1[7];
  70431.  
  70432.  
  70433.     DWORDLONG OptimalUnmapGranularity;
  70434.  
  70435.  
  70436.     DWORDLONG UnmapGranularityAlignment;
  70437.  
  70438.  
  70439.  
  70440.  
  70441.     DWORD MaxUnmapLbaCount;
  70442.  
  70443.  
  70444.     DWORD MaxUnmapBlockDescriptorCount;
  70445.  
  70446.  
  70447. } DEVICE_LB_PROVISIONING_DESCRIPTOR, *PDEVICE_LB_PROVISIONING_DESCRIPTOR;
  70448. # 1627 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70449. typedef struct _STORAGE_LB_PROVISIONING_MAP_RESOURCES {
  70450.     DWORD Size;
  70451.     DWORD Version;
  70452.     BYTE AvailableMappingResourcesValid : 1;
  70453.     BYTE UsedMappingResourcesValid : 1;
  70454.     BYTE Reserved0 : 6;
  70455.     BYTE Reserved1[3];
  70456.     BYTE AvailableMappingResourcesScope : 2;
  70457.     BYTE UsedMappingResourcesScope : 2;
  70458.     BYTE Reserved2 : 4;
  70459.     BYTE Reserved3[3];
  70460.     DWORDLONG AvailableMappingResources;
  70461.     DWORDLONG UsedMappingResources;
  70462. } STORAGE_LB_PROVISIONING_MAP_RESOURCES, *PSTORAGE_LB_PROVISIONING_MAP_RESOURCES;
  70463.  
  70464. #pragma warning(pop)
  70465.  
  70466.  
  70467. typedef struct _DEVICE_POWER_DESCRIPTOR {
  70468.     DWORD Version;
  70469.     DWORD Size;
  70470.  
  70471.     BOOLEAN DeviceAttentionSupported;
  70472.     BOOLEAN AsynchronousNotificationSupported;
  70473.     BOOLEAN IdlePowerManagementEnabled;
  70474.     BOOLEAN D3ColdEnabled;
  70475.     BOOLEAN D3ColdSupported;
  70476.     BOOLEAN NoVerifyDuringIdlePower;
  70477.     BYTE Reserved[2];
  70478.     DWORD IdleTimeoutInMS;
  70479. } DEVICE_POWER_DESCRIPTOR, *PDEVICE_POWER_DESCRIPTOR;
  70480.  
  70481.  
  70482.  
  70483.  
  70484. typedef struct _DEVICE_COPY_OFFLOAD_DESCRIPTOR {
  70485.     DWORD Version;
  70486.     DWORD Size;
  70487.  
  70488.     DWORD MaximumTokenLifetime;
  70489.     DWORD DefaultTokenLifetime;
  70490.     DWORDLONG MaximumTransferSize;
  70491.     DWORDLONG OptimalTransferCount;
  70492.     DWORD MaximumDataDescriptors;
  70493.     DWORD MaximumTransferLengthPerDescriptor;
  70494.     DWORD OptimalTransferLengthPerDescriptor;
  70495.     WORD OptimalTransferLengthGranularity;
  70496.     BYTE Reserved[2];
  70497. } DEVICE_COPY_OFFLOAD_DESCRIPTOR, *PDEVICE_COPY_OFFLOAD_DESCRIPTOR;
  70498.  
  70499.  
  70500.  
  70501.  
  70502.  
  70503. typedef struct _STORAGE_DEVICE_RESILIENCY_DESCRIPTOR {
  70504.  
  70505.  
  70506.  
  70507.  
  70508.  
  70509.  
  70510.  
  70511.     DWORD Version;
  70512.  
  70513.  
  70514.  
  70515.  
  70516.  
  70517.  
  70518.  
  70519.     DWORD Size;
  70520.  
  70521.  
  70522.  
  70523.  
  70524.  
  70525.  
  70526.  
  70527.     DWORD NameOffset;
  70528.  
  70529.  
  70530.  
  70531.  
  70532.  
  70533.  
  70534.  
  70535.     DWORD NumberOfLogicalCopies;
  70536.  
  70537.  
  70538.  
  70539.  
  70540.  
  70541.  
  70542.  
  70543.     DWORD NumberOfPhysicalCopies;
  70544.  
  70545.  
  70546.  
  70547.  
  70548.  
  70549.  
  70550.  
  70551.     DWORD PhysicalDiskRedundancy;
  70552.  
  70553.  
  70554.  
  70555.  
  70556.  
  70557.  
  70558.  
  70559.     DWORD NumberOfColumns;
  70560.  
  70561.  
  70562.  
  70563.  
  70564.  
  70565.  
  70566.  
  70567.     DWORD Interleave;
  70568.  
  70569. } STORAGE_DEVICE_RESILIENCY_DESCRIPTOR, *PSTORAGE_DEVICE_RESILIENCY_DESCRIPTOR;
  70570.  
  70571.  
  70572.  
  70573.  
  70574.  
  70575. typedef enum _STORAGE_RPMB_FRAME_TYPE {
  70576.  
  70577.     StorageRpmbFrameTypeUnknown = 0,
  70578.     StorageRpmbFrameTypeStandard,
  70579.     StorageRpmbFrameTypeMax,
  70580.  
  70581. } STORAGE_RPMB_FRAME_TYPE, *PSTORAGE_RPMB_FRAME_TYPE;
  70582.  
  70583.  
  70584.  
  70585.  
  70586.  
  70587. typedef struct _STORAGE_RPMB_DESCRIPTOR {
  70588.  
  70589.  
  70590.  
  70591.  
  70592.  
  70593.  
  70594.     DWORD Version;
  70595.  
  70596.  
  70597.  
  70598.  
  70599.  
  70600.  
  70601.     DWORD Size;
  70602.  
  70603.  
  70604.  
  70605.  
  70606.  
  70607.  
  70608.  
  70609.     DWORD SizeInBytes;
  70610. # 1796 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70611.     DWORD MaxReliableWriteSizeInBytes;
  70612.  
  70613.  
  70614.  
  70615.  
  70616.  
  70617.  
  70618.  
  70619.     STORAGE_RPMB_FRAME_TYPE FrameFormat;
  70620.  
  70621. } STORAGE_RPMB_DESCRIPTOR, *PSTORAGE_RPMB_DESCRIPTOR;
  70622.  
  70623.  
  70624.  
  70625.  
  70626.  
  70627. typedef enum _STORAGE_CRYPTO_ALGORITHM_ID {
  70628.  
  70629.     StorageCryptoAlgorithmUnknown = 0,
  70630.     StorageCryptoAlgorithmXTSAES = 1,
  70631.     StorageCryptoAlgorithmBitlockerAESCBC,
  70632.     StorageCryptoAlgorithmAESECB,
  70633.     StorageCryptoAlgorithmESSIVAESCBC,
  70634.     StorageCryptoAlgorithmMax
  70635.  
  70636. } STORAGE_CRYPTO_ALGORITHM_ID, *PSTORAGE_CRYPTO_ALGORITHM_ID;
  70637.  
  70638. typedef enum _STORAGE_CRYPTO_KEY_SIZE {
  70639.  
  70640.     StorageCryptoKeySizeUnknown = 0,
  70641.     StorageCryptoKeySize128Bits = 1,
  70642.     StorageCryptoKeySize192Bits,
  70643.     StorageCryptoKeySize256Bits,
  70644.     StorageCryptoKeySize512Bits
  70645.  
  70646. } STORAGE_CRYPTO_KEY_SIZE, *PSTORAGE_CRYPTO_KEY_SIZE;
  70647.  
  70648.  
  70649.  
  70650. typedef struct _STORAGE_CRYPTO_CAPABILITY {
  70651.  
  70652.  
  70653.  
  70654.  
  70655.  
  70656.  
  70657.     DWORD Version;
  70658.  
  70659.  
  70660.  
  70661.  
  70662.  
  70663.  
  70664.     DWORD Size;
  70665.  
  70666.  
  70667.  
  70668.  
  70669.  
  70670.     DWORD CryptoCapabilityIndex;
  70671.  
  70672.  
  70673.  
  70674.  
  70675.  
  70676.     STORAGE_CRYPTO_ALGORITHM_ID AlgorithmId;
  70677.  
  70678.  
  70679.  
  70680.  
  70681.  
  70682.     STORAGE_CRYPTO_KEY_SIZE KeySize;
  70683.  
  70684.  
  70685.  
  70686.  
  70687.  
  70688.  
  70689.  
  70690.     DWORD DataUnitSizeBitmask;
  70691.  
  70692. } STORAGE_CRYPTO_CAPABILITY, *PSTORAGE_CRYPTO_CAPABILITY;
  70693.  
  70694.  
  70695.  
  70696. typedef struct _STORAGE_CRYPTO_DESCRIPTOR {
  70697.  
  70698.  
  70699.  
  70700.  
  70701.  
  70702.  
  70703.     DWORD Version;
  70704.  
  70705.  
  70706.  
  70707.  
  70708.  
  70709.  
  70710.     DWORD Size;
  70711.  
  70712.  
  70713.  
  70714.  
  70715.  
  70716.     DWORD NumKeysSupported;
  70717.  
  70718.  
  70719.  
  70720.  
  70721.  
  70722.  
  70723.     DWORD NumCryptoCapabilities;
  70724.  
  70725.  
  70726.  
  70727.  
  70728.  
  70729.                                         STORAGE_CRYPTO_CAPABILITY CryptoCapabilities[1];
  70730.  
  70731. } STORAGE_CRYPTO_DESCRIPTOR, *PSTORAGE_CRYPTO_DESCRIPTOR;
  70732. # 1934 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70733. typedef enum _STORAGE_TIER_MEDIA_TYPE {
  70734.  
  70735.     StorageTierMediaTypeUnspecified = 0,
  70736.     StorageTierMediaTypeDisk = 1,
  70737.     StorageTierMediaTypeSsd = 2,
  70738.     StorageTierMediaTypeScm = 4,
  70739.     StorageTierMediaTypeMax
  70740.  
  70741. } STORAGE_TIER_MEDIA_TYPE, *PSTORAGE_TIER_MEDIA_TYPE;
  70742.  
  70743. typedef enum _STORAGE_TIER_CLASS {
  70744.  
  70745.     StorageTierClassUnspecified = 0,
  70746.     StorageTierClassCapacity,
  70747.     StorageTierClassPerformance,
  70748.     StorageTierClassMax
  70749.  
  70750. } STORAGE_TIER_CLASS, *PSTORAGE_TIER_CLASS;
  70751.  
  70752. typedef struct _STORAGE_TIER {
  70753.  
  70754.  
  70755.  
  70756.  
  70757.  
  70758.     GUID Id;
  70759.  
  70760.  
  70761.  
  70762.  
  70763.  
  70764.     WCHAR Name[(256)];
  70765.  
  70766.  
  70767.  
  70768.  
  70769.  
  70770.     WCHAR Description[(256)];
  70771.  
  70772.  
  70773.  
  70774.  
  70775.  
  70776.     DWORDLONG Flags;
  70777.  
  70778.  
  70779.  
  70780.  
  70781.  
  70782.     DWORDLONG ProvisionedCapacity;
  70783.  
  70784.  
  70785.  
  70786.  
  70787.  
  70788.     STORAGE_TIER_MEDIA_TYPE MediaType;
  70789.  
  70790.  
  70791.  
  70792.  
  70793.  
  70794.     STORAGE_TIER_CLASS Class;
  70795.  
  70796. } STORAGE_TIER, *PSTORAGE_TIER;
  70797.  
  70798.  
  70799.  
  70800.  
  70801.  
  70802.  
  70803. typedef struct _STORAGE_DEVICE_TIERING_DESCRIPTOR {
  70804.  
  70805.  
  70806.  
  70807.  
  70808.  
  70809.  
  70810.     DWORD Version;
  70811.  
  70812.  
  70813.  
  70814.  
  70815.  
  70816.  
  70817.     DWORD Size;
  70818.  
  70819.  
  70820.  
  70821.  
  70822.  
  70823.  
  70824.     DWORD Flags;
  70825.  
  70826.  
  70827.  
  70828.  
  70829.  
  70830.     DWORD TotalNumberOfTiers;
  70831.  
  70832.  
  70833.  
  70834.  
  70835.  
  70836.     DWORD NumberOfTiersReturned;
  70837.  
  70838.  
  70839.  
  70840.  
  70841.  
  70842.                                         STORAGE_TIER Tiers[1];
  70843.  
  70844. } STORAGE_DEVICE_TIERING_DESCRIPTOR, *PSTORAGE_DEVICE_TIERING_DESCRIPTOR;
  70845.  
  70846.  
  70847.  
  70848.  
  70849.  
  70850. typedef struct _STORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR {
  70851.  
  70852.  
  70853.  
  70854.  
  70855.  
  70856.  
  70857.  
  70858.     DWORD Version;
  70859.  
  70860.  
  70861.  
  70862.  
  70863.  
  70864.  
  70865.  
  70866.     DWORD Size;
  70867.  
  70868.  
  70869.  
  70870.  
  70871.  
  70872.  
  70873.     DWORD NumberOfFaultDomains;
  70874.  
  70875.  
  70876.  
  70877.  
  70878.  
  70879.  
  70880.  
  70881.     GUID FaultDomainIds[1];
  70882.  
  70883. } STORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR, *PSTORAGE_DEVICE_FAULT_DOMAIN_DESCRIPTOR;
  70884. # 2095 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70885. typedef enum _STORAGE_PROTOCOL_TYPE {
  70886.     ProtocolTypeUnknown = 0x00,
  70887.     ProtocolTypeScsi,
  70888.     ProtocolTypeAta,
  70889.     ProtocolTypeNvme,
  70890.     ProtocolTypeSd,
  70891.     ProtocolTypeUfs,
  70892.     ProtocolTypeProprietary = 0x7E,
  70893.     ProtocolTypeMaxReserved = 0x7F
  70894. } STORAGE_PROTOCOL_TYPE, *PSTORAGE_PROTOCOL_TYPE;
  70895.  
  70896.  
  70897. typedef enum _STORAGE_PROTOCOL_NVME_DATA_TYPE {
  70898.     NVMeDataTypeUnknown = 0,
  70899.     NVMeDataTypeIdentify,
  70900.     NVMeDataTypeLogPage,
  70901.     NVMeDataTypeFeature,
  70902. } STORAGE_PROTOCOL_NVME_DATA_TYPE, *PSTORAGE_PROTOCOL_NVME_DATA_TYPE;
  70903.  
  70904. typedef enum _STORAGE_PROTOCOL_ATA_DATA_TYPE {
  70905.     AtaDataTypeUnknown = 0,
  70906.     AtaDataTypeIdentify,
  70907.     AtaDataTypeLogPage,
  70908. } STORAGE_PROTOCOL_ATA_DATA_TYPE, *PSTORAGE_PROTOCOL_ATA_DATA_TYPE;
  70909.  
  70910. typedef enum _STORAGE_PROTOCOL_UFS_DATA_TYPE {
  70911.     UfsDataTypeUnknown = 0,
  70912.     UfsDataTypeQueryDescriptor,
  70913.     UfsDataTypeMax,
  70914. } STORAGE_PROTOCOL_UFS_DATA_TYPE, *PSTORAGE_PROTOCOL_UFS_DATA_TYPE;
  70915.  
  70916.  
  70917.  
  70918.  
  70919.  
  70920.  
  70921. typedef struct _STORAGE_PROTOCOL_SPECIFIC_DATA {
  70922.  
  70923.     STORAGE_PROTOCOL_TYPE ProtocolType;
  70924.     DWORD DataType;
  70925.  
  70926.     DWORD ProtocolDataRequestValue;
  70927.     DWORD ProtocolDataRequestSubValue;
  70928.  
  70929.     DWORD ProtocolDataOffset;
  70930.     DWORD ProtocolDataLength;
  70931.  
  70932.     DWORD FixedProtocolReturnData;
  70933.     DWORD Reserved[3];
  70934.  
  70935. } STORAGE_PROTOCOL_SPECIFIC_DATA, *PSTORAGE_PROTOCOL_SPECIFIC_DATA;
  70936. # 2156 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70937. typedef struct _STORAGE_PROTOCOL_DATA_DESCRIPTOR {
  70938.  
  70939.     DWORD Version;
  70940.     DWORD Size;
  70941.  
  70942.     STORAGE_PROTOCOL_SPECIFIC_DATA ProtocolSpecificData;
  70943.  
  70944. } STORAGE_PROTOCOL_DATA_DESCRIPTOR, *PSTORAGE_PROTOCOL_DATA_DESCRIPTOR;
  70945. # 2181 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70946. typedef struct _STORAGE_TEMPERATURE_INFO {
  70947.  
  70948.     WORD Index;
  70949.     SHORT Temperature;
  70950.     SHORT OverThreshold;
  70951.     SHORT UnderThreshold;
  70952.  
  70953.     BOOLEAN OverThresholdChangable;
  70954.     BOOLEAN UnderThresholdChangable;
  70955.     BOOLEAN EventGenerated;
  70956.     BYTE Reserved0;
  70957.     DWORD Reserved1;
  70958.  
  70959. } STORAGE_TEMPERATURE_INFO, *PSTORAGE_TEMPERATURE_INFO;
  70960.  
  70961. typedef struct _STORAGE_TEMPERATURE_DATA_DESCRIPTOR {
  70962.  
  70963.     DWORD Version;
  70964.     DWORD Size;
  70965.  
  70966.  
  70967.  
  70968.  
  70969.  
  70970.     SHORT CriticalTemperature;
  70971.  
  70972.  
  70973.  
  70974.  
  70975.  
  70976.     SHORT WarningTemperature;
  70977.  
  70978.     WORD InfoCount;
  70979.  
  70980.     BYTE Reserved0[2];
  70981.  
  70982.     DWORD Reserved1[2];
  70983.  
  70984.     STORAGE_TEMPERATURE_INFO TemperatureInfo[1];
  70985.  
  70986. } STORAGE_TEMPERATURE_DATA_DESCRIPTOR, *PSTORAGE_TEMPERATURE_DATA_DESCRIPTOR;
  70987. # 2234 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  70988. typedef struct _STORAGE_TEMPERATURE_THRESHOLD {
  70989.  
  70990.     DWORD Version;
  70991.     DWORD Size;
  70992.  
  70993.     WORD Flags;
  70994.     WORD Index;
  70995.  
  70996.     SHORT Threshold;
  70997.     BOOLEAN OverThreshold;
  70998.     BYTE Reserved;
  70999.  
  71000. } STORAGE_TEMPERATURE_THRESHOLD, *PSTORAGE_TEMPERATURE_THRESHOLD;
  71001. # 2266 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71002. typedef struct _NVME_RESERVED_QUEUE_HEADER {
  71003.  
  71004.     DWORD Version;
  71005.     DWORD Size;
  71006.  
  71007. } NVME_RESERVED_QUEUE_HEADER, *PNVME_RESERVED_QUEUE_HEADER;
  71008.  
  71009.  
  71010.  
  71011.  
  71012. typedef struct _NVME_RESERVED_SQ_CREATE_REQUEST {
  71013.  
  71014.     DWORD64 PhysicalAddress;
  71015.     WORD QueuePriority;
  71016.     WORD QueueDepth;
  71017.     BOOLEAN PhysicalContiguous;
  71018.  
  71019.  
  71020.  
  71021. } NVME_RESERVED_SQ_CREATE_REQUEST, *PNVME_RESERVED_SQ_CREATE_REQUEST;
  71022.  
  71023.  
  71024.  
  71025.  
  71026. typedef struct _NVME_RESERVED_CQ_CREATE_REQUEST {
  71027.  
  71028.         DWORD64 PhysicalAddress;
  71029.         DWORD InterruptVector;
  71030.         WORD QueueDepth;
  71031.         BOOLEAN InterruptEnabled;
  71032.         BOOLEAN PhysicalContiguous;
  71033.  
  71034.  
  71035.  
  71036. } NVME_RESERVED_CQ_CREATE_REQUEST, *PNVME_RESERVED_CQ_CREATE_REQUEST;
  71037.  
  71038.  
  71039.  
  71040.  
  71041.  
  71042. typedef struct _NVME_RESERVED_QUEUES_CREATE_REQUEST {
  71043.  
  71044.     NVME_RESERVED_QUEUE_HEADER Header;
  71045.  
  71046.     NVME_RESERVED_CQ_CREATE_REQUEST CompletionQueue;
  71047.  
  71048.     WORD SubmissionQueueCount;
  71049.     NVME_RESERVED_SQ_CREATE_REQUEST SubmissionQueue[1];
  71050.  
  71051.  
  71052. } NVME_RESERVED_QUEUES_CREATE_REQUEST, *PNVME_RESERVED_QUEUES_CREATE_REQUEST;
  71053.  
  71054.  
  71055.  
  71056.  
  71057. typedef struct _NVME_RESERVED_SQ_INFO {
  71058.  
  71059.     DWORD64 PhysicalAddress;
  71060.     DWORD64 DoorbellRegisterAddress;
  71061.     WORD QueueID;
  71062.     WORD QueueDepth;
  71063.     BOOLEAN PhysicalContiguous;
  71064.     WORD CompletionQueueID;
  71065.     BYTE QueuePriority;
  71066.  
  71067. } NVME_RESERVED_SQ_INFO, *PNVME_RESERVED_SQ_INFO;
  71068.  
  71069.  
  71070.  
  71071.  
  71072. typedef struct _NVME_RESERVED_CQ_INFO {
  71073.  
  71074.     DWORD64 PhysicalAddress;
  71075.     DWORD64 DoorbellRegisterAddress;
  71076.     WORD QueueID;
  71077.     WORD QueueDepth;
  71078.     BOOLEAN InterruptEnabled;
  71079.     BOOLEAN PhysicalContiguous;
  71080.     DWORD InterruptVector;
  71081.  
  71082. } NVME_RESERVED_CQ_INFO, *PNVME_RESERVED_CQ_INFO;
  71083.  
  71084.  
  71085.  
  71086.  
  71087.  
  71088. typedef struct _NVME_RESERVED_QUEUES_CREATE_RESPONSE {
  71089.  
  71090.     NVME_RESERVED_QUEUE_HEADER Header;
  71091.     NVME_RESERVED_CQ_INFO CompletionQueue;
  71092.  
  71093.     WORD SubmissionQueueCount;
  71094.     NVME_RESERVED_SQ_INFO SubmissionQueue[1];
  71095.  
  71096. } NVME_RESERVED_QUEUES_CREATE_RESPONSE, *PNVME_RESERVED_QUEUES_CREATE_RESPONSE;
  71097.  
  71098.  
  71099.  
  71100.  
  71101.  
  71102. typedef struct _NVME_RESERVED_QUEUES_DELETE_REQUEST {
  71103.  
  71104.     NVME_RESERVED_QUEUE_HEADER Header;
  71105.  
  71106.     WORD QueueID;
  71107.  
  71108.  
  71109. } NVME_RESERVED_QUEUES_DELETE_REQUEST, *PNVME_RESERVED_QUEUES_DELETE_REQUEST;
  71110.  
  71111.  
  71112.  
  71113.  
  71114.  
  71115. typedef struct _NVME_RESERVED_QUEUES_PROPERTIES {
  71116.  
  71117.     NVME_RESERVED_QUEUE_HEADER Header;
  71118.  
  71119.     WORD QueuePairCount;
  71120.  
  71121.     struct {
  71122.         NVME_RESERVED_CQ_INFO CompletionQueue;
  71123.  
  71124.         WORD SubmissionQueueCount;
  71125.         NVME_RESERVED_SQ_INFO SubmissionQueue[1];
  71126.  
  71127.     } QueueMapping[1];
  71128.  
  71129. } NVME_RESERVED_QUEUES_PROPERTIES, *PNVME_RESERVED_QUEUES_PROPERTIES;
  71130. # 2405 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71131. typedef enum _STORAGE_DEVICE_FORM_FACTOR {
  71132.     FormFactorUnknown = 0,
  71133.  
  71134.     FormFactor3_5,
  71135.     FormFactor2_5,
  71136.     FormFactor1_8,
  71137.     FormFactor1_8Less,
  71138.  
  71139.     FormFactorEmbedded,
  71140.     FormFactorMemoryCard,
  71141.     FormFactormSata,
  71142.     FormFactorM_2,
  71143.     FormFactorPCIeBoard,
  71144.     FormFactorDimm,
  71145.  
  71146. } STORAGE_DEVICE_FORM_FACTOR, *PSTORAGE_DEVICE_FORM_FACTOR;
  71147.  
  71148.  
  71149. typedef enum _STORAGE_COMPONENT_HEALTH_STATUS {
  71150.     HealthStatusUnknown = 0,
  71151.     HealthStatusNormal,
  71152.     HealthStatusThrottled,
  71153.     HealthStatusWarning,
  71154.     HealthStatusDisabled,
  71155.     HealthStatusFailed,
  71156. } STORAGE_COMPONENT_HEALTH_STATUS, *PSTORAGE_COMPONENT_HEALTH_STATUS;
  71157.  
  71158. #pragma warning(push)
  71159. #pragma warning(disable: 4201)
  71160.  
  71161. typedef union _STORAGE_SPEC_VERSION {
  71162.  
  71163.     struct {
  71164.         union {
  71165.             struct {
  71166.                 BYTE SubMinor;
  71167.                 BYTE Minor;
  71168.             } ;
  71169.  
  71170.             WORD AsUshort;
  71171.  
  71172.         } MinorVersion;
  71173.  
  71174.         WORD MajorVersion;
  71175.     } ;
  71176.  
  71177.     DWORD AsUlong;
  71178.  
  71179. } STORAGE_SPEC_VERSION, *PSTORAGE_SPEC_VERSION;
  71180.  
  71181. #pragma warning(pop)
  71182.  
  71183.  
  71184. typedef struct _STORAGE_PHYSICAL_DEVICE_DATA {
  71185.  
  71186.     DWORD DeviceId;
  71187.     DWORD Role;
  71188.  
  71189.     STORAGE_COMPONENT_HEALTH_STATUS HealthStatus;
  71190.     STORAGE_PROTOCOL_TYPE CommandProtocol;
  71191.     STORAGE_SPEC_VERSION SpecVersion;
  71192.     STORAGE_DEVICE_FORM_FACTOR FormFactor;
  71193.  
  71194.     BYTE Vendor[8];
  71195.     BYTE Model[40];
  71196.     BYTE FirmwareRevision[16];
  71197.  
  71198.     DWORDLONG Capacity;
  71199.  
  71200.     BYTE PhysicalLocation[32];
  71201.  
  71202.     DWORD Reserved[2];
  71203.  
  71204. } STORAGE_PHYSICAL_DEVICE_DATA, *PSTORAGE_PHYSICAL_DEVICE_DATA;
  71205.  
  71206.  
  71207. typedef struct _STORAGE_PHYSICAL_ADAPTER_DATA {
  71208.  
  71209.     DWORD AdapterId;
  71210.     STORAGE_COMPONENT_HEALTH_STATUS HealthStatus;
  71211.     STORAGE_PROTOCOL_TYPE CommandProtocol;
  71212.     STORAGE_SPEC_VERSION SpecVersion;
  71213.  
  71214.     BYTE Vendor[8];
  71215.     BYTE Model[40];
  71216.     BYTE FirmwareRevision[16];
  71217.  
  71218.     BYTE PhysicalLocation[32];
  71219.  
  71220.     BOOLEAN ExpanderConnected;
  71221.     BYTE Reserved0[3];
  71222.     DWORD Reserved1[3];
  71223.  
  71224. } STORAGE_PHYSICAL_ADAPTER_DATA, *PSTORAGE_PHYSICAL_ADAPTER_DATA;
  71225.  
  71226.  
  71227. typedef struct _STORAGE_PHYSICAL_NODE_DATA {
  71228.  
  71229.     DWORD NodeId;
  71230.  
  71231.     DWORD AdapterCount;
  71232.     DWORD AdapterDataLength;
  71233.     DWORD AdapterDataOffset;
  71234.  
  71235.     DWORD DeviceCount;
  71236.     DWORD DeviceDataLength;
  71237.     DWORD DeviceDataOffset;
  71238.  
  71239.     DWORD Reserved[3];
  71240.  
  71241. } STORAGE_PHYSICAL_NODE_DATA, *PSTORAGE_PHYSICAL_NODE_DATA;
  71242.  
  71243.  
  71244. typedef struct _STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR {
  71245.  
  71246.     DWORD Version;
  71247.     DWORD Size;
  71248.  
  71249.     DWORD NodeCount;
  71250.     DWORD Reserved;
  71251.  
  71252.     STORAGE_PHYSICAL_NODE_DATA Node[1];
  71253.  
  71254. } STORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR, *PSTORAGE_PHYSICAL_TOPOLOGY_DESCRIPTOR;
  71255.  
  71256.  
  71257.  
  71258.  
  71259.  
  71260.  
  71261. typedef struct _STORAGE_DEVICE_IO_CAPABILITY_DESCRIPTOR {
  71262.  
  71263.  
  71264.  
  71265.  
  71266.  
  71267.  
  71268.     DWORD Version;
  71269.  
  71270.  
  71271.  
  71272.  
  71273.  
  71274.     DWORD Size;
  71275.  
  71276.  
  71277.  
  71278.  
  71279.  
  71280.     DWORD LunMaxIoCount;
  71281.  
  71282.  
  71283.  
  71284.  
  71285.  
  71286.     DWORD AdapterMaxIoCount;
  71287.  
  71288. } STORAGE_DEVICE_IO_CAPABILITY_DESCRIPTOR, *PSTORAGE_DEVICE_IO_CAPABILITY_DESCRIPTOR;
  71289.  
  71290.  
  71291.  
  71292.  
  71293.  
  71294. typedef struct _STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR {
  71295.  
  71296.  
  71297.  
  71298.  
  71299.  
  71300.  
  71301.     DWORD Version;
  71302.  
  71303.  
  71304.  
  71305.  
  71306.  
  71307.     DWORD Size;
  71308.  
  71309.  
  71310.  
  71311.  
  71312.  
  71313.     DWORD64 Attributes;
  71314.  
  71315. } STORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR, *PSTORAGE_DEVICE_ATTRIBUTES_DESCRIPTOR;
  71316. # 2606 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71317. typedef enum _STORAGE_DISK_HEALTH_STATUS {
  71318.     DiskHealthUnknown = 0,
  71319.     DiskHealthUnhealthy,
  71320.     DiskHealthWarning,
  71321.     DiskHealthHealthy,
  71322.     DiskHealthMax
  71323. } STORAGE_DISK_HEALTH_STATUS, *PSTORAGE_DISK_HEALTH_STATUS;
  71324.  
  71325.  
  71326.  
  71327.  
  71328. typedef enum _STORAGE_DISK_OPERATIONAL_STATUS {
  71329.     DiskOpStatusNone = 0,
  71330.     DiskOpStatusUnknown,
  71331.     DiskOpStatusOk,
  71332.     DiskOpStatusPredictingFailure,
  71333.     DiskOpStatusInService,
  71334.     DiskOpStatusHardwareError,
  71335.     DiskOpStatusNotUsable,
  71336.     DiskOpStatusTransientError,
  71337.     DiskOpStatusMissing,
  71338. } STORAGE_DISK_OPERATIONAL_STATUS, *PSTORAGE_DISK_OPERATIONAL_STATUS;
  71339.  
  71340.  
  71341.  
  71342.  
  71343. typedef enum _STORAGE_OPERATIONAL_STATUS_REASON {
  71344.     DiskOpReasonUnknown = 0,
  71345.     DiskOpReasonScsiSenseCode,
  71346.     DiskOpReasonMedia,
  71347.     DiskOpReasonIo,
  71348.     DiskOpReasonThresholdExceeded,
  71349.     DiskOpReasonLostData,
  71350.     DiskOpReasonEnergySource,
  71351.     DiskOpReasonConfiguration,
  71352.     DiskOpReasonDeviceController,
  71353.     DiskOpReasonMediaController,
  71354.     DiskOpReasonComponent,
  71355.     DiskOpReasonNVDIMM_N,
  71356.     DiskOpReasonBackgroundOperation,
  71357.     DiskOpReasonInvalidFirmware,
  71358.     DiskOpReasonHealthCheck,
  71359.     DiskOpReasonLostDataPersistence,
  71360.     DiskOpReasonDisabledByPlatform,
  71361.     DiskOpReasonLostWritePersistence,
  71362.     DiskOpReasonDataPersistenceLossImminent,
  71363.     DiskOpReasonWritePersistenceLossImminent,
  71364.     DiskOpReasonMax
  71365. } STORAGE_OPERATIONAL_STATUS_REASON, *PSTORAGE_OPERATIONAL_STATUS_REASON;
  71366.  
  71367. typedef struct _STORAGE_OPERATIONAL_REASON {
  71368.     DWORD Version;
  71369.     DWORD Size;
  71370.     STORAGE_OPERATIONAL_STATUS_REASON Reason;
  71371.  
  71372.     union {
  71373.  
  71374.  
  71375.  
  71376.  
  71377.         struct {
  71378.             BYTE SenseKey;
  71379.             BYTE ASC;
  71380.             BYTE ASCQ;
  71381.             BYTE Reserved;
  71382.         } ScsiSenseKey;
  71383.  
  71384.  
  71385.  
  71386.  
  71387.         struct {
  71388.             BYTE CriticalHealth;
  71389.             BYTE ModuleHealth[2];
  71390.             BYTE ErrorThresholdStatus;
  71391.         } NVDIMM_N;
  71392.  
  71393.         DWORD AsUlong;
  71394.     } RawBytes;
  71395. } STORAGE_OPERATIONAL_REASON, *PSTORAGE_OPERATIONAL_REASON;
  71396.  
  71397.  
  71398.  
  71399.  
  71400.  
  71401.  
  71402.  
  71403. typedef struct _STORAGE_DEVICE_MANAGEMENT_STATUS {
  71404.  
  71405.  
  71406.  
  71407.  
  71408.  
  71409.  
  71410.     DWORD Version;
  71411.  
  71412.  
  71413.  
  71414.  
  71415.  
  71416.  
  71417.  
  71418.     DWORD Size;
  71419.  
  71420.  
  71421.  
  71422.  
  71423.  
  71424.     STORAGE_DISK_HEALTH_STATUS Health;
  71425.  
  71426.  
  71427.  
  71428.  
  71429.  
  71430.     DWORD NumberOfOperationalStatus;
  71431.  
  71432.  
  71433.  
  71434.  
  71435.  
  71436.     DWORD NumberOfAdditionalReasons;
  71437.  
  71438.  
  71439.  
  71440.  
  71441.  
  71442.  
  71443.     STORAGE_DISK_OPERATIONAL_STATUS OperationalStatus[16];
  71444.  
  71445.  
  71446.  
  71447.  
  71448.  
  71449.     STORAGE_OPERATIONAL_REASON AdditionalReasons[1];
  71450.  
  71451. } STORAGE_DEVICE_MANAGEMENT_STATUS, *PSTORAGE_DEVICE_MANAGEMENT_STATUS;
  71452. # 2756 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71453. typedef struct _STORAGE_ADAPTER_SERIAL_NUMBER {
  71454.  
  71455.  
  71456.     DWORD Version;
  71457.  
  71458.  
  71459.     DWORD Size;
  71460.  
  71461.  
  71462.  
  71463.  
  71464.  
  71465.  
  71466.     WCHAR SerialNumber[(128)];
  71467.  
  71468. } STORAGE_ADAPTER_SERIAL_NUMBER, *PSTORAGE_ADAPTER_SERIAL_NUMBER;
  71469. # 2780 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71470. typedef enum _STORAGE_ZONED_DEVICE_TYPES {
  71471.     ZonedDeviceTypeUnknown = 0,
  71472.     ZonedDeviceTypeHostManaged,
  71473.     ZonedDeviceTypeHostAware,
  71474.     ZonedDeviceTypeDeviceManaged,
  71475. } STORAGE_ZONED_DEVICE_TYPES, *PSTORAGE_ZONED_DEVICE_TYPES;
  71476.  
  71477. typedef enum _STORAGE_ZONE_TYPES {
  71478.     ZoneTypeUnknown = 0,
  71479.     ZoneTypeConventional = 1,
  71480.     ZoneTypeSequentialWriteRequired = 2,
  71481.     ZoneTypeSequentialWritePreferred = 3,
  71482.     ZoneTypeMax
  71483. } STORAGE_ZONE_TYPES, *PSTORAGE_ZONE_TYPES;
  71484.  
  71485. typedef struct _STORAGE_ZONE_GROUP {
  71486.  
  71487.  
  71488.         DWORD ZoneCount;
  71489.  
  71490.  
  71491.         STORAGE_ZONE_TYPES ZoneType;
  71492.  
  71493.  
  71494.         DWORDLONG ZoneSize;
  71495.  
  71496. } STORAGE_ZONE_GROUP, *PSTORAGE_ZONE_GROUP;
  71497.  
  71498. typedef struct _STORAGE_ZONED_DEVICE_DESCRIPTOR {
  71499.  
  71500.  
  71501.  
  71502.  
  71503.  
  71504.  
  71505.     DWORD Version;
  71506.  
  71507.  
  71508.  
  71509.  
  71510.  
  71511.  
  71512.  
  71513.     DWORD Size;
  71514.  
  71515.  
  71516.  
  71517.  
  71518.  
  71519.  
  71520.     STORAGE_ZONED_DEVICE_TYPES DeviceType;
  71521.  
  71522.  
  71523.  
  71524.  
  71525.  
  71526.  
  71527.     DWORD ZoneCount;
  71528.  
  71529.  
  71530.  
  71531.  
  71532.  
  71533.     union {
  71534.         struct {
  71535.  
  71536.             DWORD MaxOpenZoneCount;
  71537.  
  71538.             BOOLEAN UnrestrictedRead;
  71539.  
  71540.             BYTE Reserved[3];
  71541.  
  71542.         } SequentialRequiredZone;
  71543.  
  71544.         struct {
  71545.  
  71546.             DWORD OptimalOpenZoneCount;
  71547.  
  71548.             DWORD Reserved;
  71549.  
  71550.         } SequentialPreferredZone;
  71551.  
  71552.     } ZoneAttributes;
  71553.  
  71554.  
  71555.  
  71556.  
  71557.  
  71558.  
  71559.  
  71560.     DWORD ZoneGroupCount;
  71561.  
  71562.  
  71563.     STORAGE_ZONE_GROUP ZoneGroup[1];
  71564.  
  71565. } STORAGE_ZONED_DEVICE_DESCRIPTOR, *PSTORAGE_ZONED_DEVICE_DESCRIPTOR;
  71566.  
  71567.  
  71568.  
  71569.  
  71570.  
  71571.  
  71572. #pragma warning(push)
  71573. #pragma warning(disable: 4201)
  71574. typedef struct _DEVICE_LOCATION {
  71575.  
  71576.  
  71577.     DWORD Socket;
  71578.  
  71579.  
  71580.     DWORD Slot;
  71581.  
  71582.  
  71583.     DWORD Adapter;
  71584.  
  71585.  
  71586.     DWORD Port;
  71587.  
  71588.     union {
  71589.  
  71590.         struct {
  71591.  
  71592.             DWORD Channel;
  71593.  
  71594.             DWORD Device;
  71595.  
  71596.         } ;
  71597.  
  71598.         struct {
  71599.  
  71600.             DWORD Target;
  71601.  
  71602.             DWORD Lun;
  71603.  
  71604.         } ;
  71605.  
  71606.     } ;
  71607.  
  71608. } DEVICE_LOCATION, *PDEVICE_LOCATION;
  71609. #pragma warning(pop)
  71610.  
  71611. typedef struct _STORAGE_DEVICE_LOCATION_DESCRIPTOR {
  71612.  
  71613.  
  71614.     DWORD Version;
  71615.  
  71616.  
  71617.     DWORD Size;
  71618.  
  71619.  
  71620.     DEVICE_LOCATION Location;
  71621.  
  71622.  
  71623.     DWORD StringOffset;
  71624.  
  71625. } STORAGE_DEVICE_LOCATION_DESCRIPTOR, *PSTORAGE_DEVICE_LOCATION_DESCRIPTOR;
  71626. # 2946 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71627. typedef struct _STORAGE_DEVICE_NUMA_PROPERTY {
  71628.     DWORD Version;
  71629.     DWORD Size;
  71630.     DWORD NumaNode;
  71631. } STORAGE_DEVICE_NUMA_PROPERTY, *PSTORAGE_DEVICE_NUMA_PROPERTY;
  71632. # 2961 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71633. typedef struct _STORAGE_DEVICE_UNSAFE_SHUTDOWN_COUNT {
  71634.     DWORD Version;
  71635.     DWORD Size;
  71636.     DWORD UnsafeShutdownCount;
  71637. } STORAGE_DEVICE_UNSAFE_SHUTDOWN_COUNT, *PSTORAGE_DEVICE_UNSAFE_SHUTDOWN_COUNT;
  71638. # 2983 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71639. typedef DWORD DEVICE_DATA_MANAGEMENT_SET_ACTION, DEVICE_DSM_ACTION;
  71640. # 3041 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71641. typedef struct _DEVICE_DATA_SET_RANGE {
  71642.  
  71643.  
  71644.  
  71645.  
  71646.  
  71647.  
  71648.     LONGLONG StartingOffset;
  71649.     DWORDLONG LengthInBytes;
  71650.  
  71651. } DEVICE_DATA_SET_RANGE, *PDEVICE_DATA_SET_RANGE,
  71652.   DEVICE_DSM_RANGE, *PDEVICE_DSM_RANGE;
  71653.  
  71654. typedef struct _DEVICE_MANAGE_DATA_SET_ATTRIBUTES {
  71655.  
  71656.  
  71657.  
  71658.  
  71659.  
  71660.  
  71661.     DWORD Size;
  71662.  
  71663.     DEVICE_DSM_ACTION Action;
  71664.     DWORD Flags;
  71665.  
  71666.  
  71667.  
  71668.  
  71669.  
  71670.     DWORD ParameterBlockOffset;
  71671.     DWORD ParameterBlockLength;
  71672.  
  71673.  
  71674.  
  71675.  
  71676.  
  71677.     DWORD DataSetRangesOffset;
  71678.     DWORD DataSetRangesLength;
  71679.  
  71680. } DEVICE_MANAGE_DATA_SET_ATTRIBUTES, *PDEVICE_MANAGE_DATA_SET_ATTRIBUTES,
  71681.   DEVICE_DSM_INPUT, *PDEVICE_DSM_INPUT;
  71682.  
  71683. typedef struct _DEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT {
  71684.  
  71685.  
  71686.  
  71687.  
  71688.  
  71689.  
  71690.     DWORD Size;
  71691.  
  71692.     DEVICE_DSM_ACTION Action;
  71693.     DWORD Flags;
  71694.  
  71695.     DWORD OperationStatus;
  71696.     DWORD ExtendedError;
  71697.     DWORD TargetDetailedError;
  71698.     DWORD ReservedStatus;
  71699.  
  71700.  
  71701.  
  71702.  
  71703.  
  71704.     DWORD OutputBlockOffset;
  71705.     DWORD OutputBlockLength;
  71706.  
  71707. } DEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT, *PDEVICE_MANAGE_DATA_SET_ATTRIBUTES_OUTPUT,
  71708.   DEVICE_DSM_OUTPUT, *PDEVICE_DSM_OUTPUT;
  71709.  
  71710. typedef struct _DEVICE_DSM_DEFINITION {
  71711.  
  71712.     DEVICE_DSM_ACTION Action;
  71713.  
  71714.     BOOLEAN SingleRange;
  71715.  
  71716.     DWORD ParameterBlockAlignment;
  71717.     DWORD ParameterBlockLength;
  71718.  
  71719.     BOOLEAN HasOutput;
  71720.  
  71721.     DWORD OutputBlockAlignment;
  71722.     DWORD OutputBlockLength;
  71723.  
  71724. } DEVICE_DSM_DEFINITION, *PDEVICE_DSM_DEFINITION;
  71725. # 3212 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71726. typedef struct _DEVICE_DSM_NOTIFICATION_PARAMETERS {
  71727.  
  71728.     DWORD Size;
  71729.  
  71730.     DWORD Flags;
  71731.  
  71732.     DWORD NumFileTypeIDs;
  71733.     GUID FileTypeID[1];
  71734.  
  71735. } DEVICE_DSM_NOTIFICATION_PARAMETERS, *PDEVICE_DSM_NOTIFICATION_PARAMETERS;
  71736. # 3248 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71737. #pragma warning(push)
  71738. #pragma warning(disable: 4201)
  71739.  
  71740. typedef struct _STORAGE_OFFLOAD_TOKEN {
  71741.  
  71742.     BYTE TokenType[4];
  71743.     BYTE Reserved[2];
  71744.     BYTE TokenIdLength[2];
  71745.     union {
  71746.         struct {
  71747.             BYTE Reserved2[0x1F8];
  71748.         } StorageOffloadZeroDataToken;
  71749.         BYTE Token[0x1F8];
  71750.     } ;
  71751.  
  71752. } STORAGE_OFFLOAD_TOKEN, *PSTORAGE_OFFLOAD_TOKEN;
  71753.  
  71754. #pragma warning(pop)
  71755. # 3285 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71756. typedef struct _DEVICE_DSM_OFFLOAD_READ_PARAMETERS {
  71757.  
  71758.  
  71759.  
  71760.  
  71761.  
  71762.     DWORD Flags;
  71763.  
  71764.  
  71765.  
  71766.  
  71767.  
  71768.  
  71769.     DWORD TimeToLive;
  71770.  
  71771.     DWORD Reserved[2];
  71772.  
  71773. } DEVICE_DSM_OFFLOAD_READ_PARAMETERS, *PDEVICE_DSM_OFFLOAD_READ_PARAMETERS;
  71774. # 3320 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71775. typedef struct _STORAGE_OFFLOAD_READ_OUTPUT {
  71776.  
  71777.     DWORD OffloadReadFlags;
  71778.     DWORD Reserved;
  71779.  
  71780.  
  71781.  
  71782.  
  71783.  
  71784.  
  71785.  
  71786.     DWORDLONG LengthProtected;
  71787.  
  71788.     DWORD TokenLength;
  71789.     STORAGE_OFFLOAD_TOKEN Token;
  71790.  
  71791. } STORAGE_OFFLOAD_READ_OUTPUT, *PSTORAGE_OFFLOAD_READ_OUTPUT;
  71792. # 3359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71793. typedef struct _DEVICE_DSM_OFFLOAD_WRITE_PARAMETERS {
  71794.  
  71795.  
  71796.  
  71797.  
  71798.  
  71799.     DWORD Flags;
  71800.     DWORD Reserved;
  71801.  
  71802.  
  71803.  
  71804.  
  71805.  
  71806.  
  71807.     DWORDLONG TokenOffset;
  71808.  
  71809.     STORAGE_OFFLOAD_TOKEN Token;
  71810.  
  71811. } DEVICE_DSM_OFFLOAD_WRITE_PARAMETERS, *PDEVICE_DSM_OFFLOAD_WRITE_PARAMETERS;
  71812. # 3386 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71813. typedef struct _STORAGE_OFFLOAD_WRITE_OUTPUT {
  71814.  
  71815.     DWORD OffloadWriteFlags;
  71816.     DWORD Reserved;
  71817.  
  71818.  
  71819.  
  71820.  
  71821.  
  71822.  
  71823.     DWORDLONG LengthCopied;
  71824.  
  71825. } STORAGE_OFFLOAD_WRITE_OUTPUT, *PSTORAGE_OFFLOAD_WRITE_OUTPUT;
  71826. # 3427 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71827. typedef struct _DEVICE_DATA_SET_LBP_STATE_PARAMETERS {
  71828.  
  71829.     DWORD Version;
  71830.     DWORD Size;
  71831.  
  71832.  
  71833.  
  71834.  
  71835.  
  71836.     DWORD Flags;
  71837.  
  71838.  
  71839.  
  71840.  
  71841.  
  71842.  
  71843.     DWORD OutputVersion;
  71844.  
  71845. } DEVICE_DATA_SET_LBP_STATE_PARAMETERS, *PDEVICE_DATA_SET_LBP_STATE_PARAMETERS,
  71846.   DEVICE_DSM_ALLOCATION_PARAMETERS, *PDEVICE_DSM_ALLOCATION_PARAMETERS;
  71847.  
  71848.  
  71849.  
  71850.  
  71851. typedef struct _DEVICE_DATA_SET_LB_PROVISIONING_STATE {
  71852.  
  71853.     DWORD Size;
  71854.     DWORD Version;
  71855.  
  71856.     DWORDLONG SlabSizeInBytes;
  71857.  
  71858.  
  71859.  
  71860.  
  71861.  
  71862.  
  71863.  
  71864.     DWORD SlabOffsetDeltaInBytes;
  71865.  
  71866.  
  71867.  
  71868.  
  71869.  
  71870.     DWORD SlabAllocationBitMapBitCount;
  71871.  
  71872.  
  71873.  
  71874.  
  71875.  
  71876.     DWORD SlabAllocationBitMapLength;
  71877.  
  71878.  
  71879.  
  71880.  
  71881.  
  71882.     DWORD SlabAllocationBitMap[1];
  71883.  
  71884. } DEVICE_DATA_SET_LB_PROVISIONING_STATE, *PDEVICE_DATA_SET_LB_PROVISIONING_STATE,
  71885.   DEVICE_DSM_ALLOCATION_OUTPUT, *PDEVICE_DSM_ALLOCATION_OUTPUT;
  71886.  
  71887.  
  71888.  
  71889.  
  71890. typedef struct _DEVICE_DATA_SET_LB_PROVISIONING_STATE_V2 {
  71891.  
  71892.     DWORD Size;
  71893.     DWORD Version;
  71894.  
  71895.     DWORDLONG SlabSizeInBytes;
  71896.  
  71897.  
  71898.  
  71899.  
  71900.  
  71901.  
  71902.  
  71903.     DWORDLONG SlabOffsetDeltaInBytes;
  71904.  
  71905.  
  71906.  
  71907.  
  71908.  
  71909.     DWORD SlabAllocationBitMapBitCount;
  71910.  
  71911.  
  71912.  
  71913.  
  71914.  
  71915.     DWORD SlabAllocationBitMapLength;
  71916.  
  71917.  
  71918.  
  71919.  
  71920.  
  71921.     DWORD SlabAllocationBitMap[1];
  71922.  
  71923. } DEVICE_DATA_SET_LB_PROVISIONING_STATE_V2, *PDEVICE_DATA_SET_LB_PROVISIONING_STATE_V2,
  71924.   DEVICE_DSM_ALLOCATION_OUTPUT2, *PDEVICE_DSM_ALLOCATION_OUTPUT2;
  71925. # 3556 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71926. typedef struct _DEVICE_DATA_SET_REPAIR_PARAMETERS {
  71927.  
  71928.     DWORD NumberOfRepairCopies;
  71929.     DWORD SourceCopy;
  71930.     DWORD RepairCopies[1];
  71931. # 3571 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71932. } DEVICE_DATA_SET_REPAIR_PARAMETERS, *PDEVICE_DATA_SET_REPAIR_PARAMETERS,
  71933.   DEVICE_DSM_REPAIR_PARAMETERS, *PDEVICE_DSM_REPAIR_PARAMETERS;
  71934. # 3586 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71935. typedef struct _DEVICE_DATA_SET_REPAIR_OUTPUT {
  71936.  
  71937.  
  71938.  
  71939.  
  71940.  
  71941.     DEVICE_DSM_RANGE ParityExtent;
  71942.  
  71943. } DEVICE_DATA_SET_REPAIR_OUTPUT, *PDEVICE_DATA_SET_REPAIR_OUTPUT,
  71944.   DEVICE_DSM_REPAIR_OUTPUT, *PDEVICE_DSM_REPAIR_OUTPUT;
  71945. # 3624 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71946. typedef struct _DEVICE_DATA_SET_SCRUB_OUTPUT {
  71947.  
  71948.     DWORDLONG BytesProcessed;
  71949.     DWORDLONG BytesRepaired;
  71950.     DWORDLONG BytesFailed;
  71951.  
  71952. } DEVICE_DATA_SET_SCRUB_OUTPUT, *PDEVICE_DATA_SET_SCRUB_OUTPUT,
  71953.   DEVICE_DSM_SCRUB_OUTPUT, *PDEVICE_DSM_SCRUB_OUTPUT;
  71954.  
  71955.  
  71956.  
  71957.  
  71958.  
  71959.  
  71960.  
  71961. typedef struct _DEVICE_DATA_SET_SCRUB_EX_OUTPUT {
  71962.  
  71963.     DWORDLONG BytesProcessed;
  71964.     DWORDLONG BytesRepaired;
  71965.     DWORDLONG BytesFailed;
  71966.  
  71967.  
  71968.  
  71969.  
  71970.  
  71971.     DEVICE_DSM_RANGE ParityExtent;
  71972.  
  71973. } DEVICE_DATA_SET_SCRUB_EX_OUTPUT, *PDEVICE_DATA_SET_SCRUB_EX_OUTPUT,
  71974.   DEVICE_DSM_SCRUB_OUTPUT2, *PDEVICE_DSM_SCRUB_OUTPUT2;
  71975. # 3738 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  71976. typedef struct _DEVICE_DSM_TIERING_QUERY_INPUT {
  71977.  
  71978.     DWORD Version;
  71979.     DWORD Size;
  71980.  
  71981.  
  71982.  
  71983.  
  71984.  
  71985.     DWORD Flags;
  71986.  
  71987.     DWORD NumberOfTierIds;
  71988.     GUID TierIds[1];
  71989.  
  71990. } DEVICE_DSM_TIERING_QUERY_INPUT, *PDEVICE_DSM_TIERING_QUERY_INPUT,
  71991.   DEVICE_DSM_TIERING_QUERY_PARAMETERS, *PDEVICE_DSM_TIERING_QUERY_PARAMETERS;
  71992.  
  71993. typedef struct _STORAGE_TIER_REGION {
  71994.  
  71995.     GUID TierId;
  71996.  
  71997.     DWORDLONG Offset;
  71998.     DWORDLONG Length;
  71999.  
  72000. } STORAGE_TIER_REGION, *PSTORAGE_TIER_REGION;
  72001.  
  72002. typedef struct _DEVICE_DSM_TIERING_QUERY_OUTPUT {
  72003.  
  72004.     DWORD Version;
  72005.     DWORD Size;
  72006.  
  72007.  
  72008.  
  72009.  
  72010.  
  72011.     DWORD Flags;
  72012.     DWORD Reserved;
  72013.  
  72014.  
  72015.  
  72016.  
  72017.  
  72018.  
  72019.  
  72020.     DWORDLONG Alignment;
  72021.  
  72022.  
  72023.  
  72024.  
  72025.  
  72026.  
  72027.     DWORD TotalNumberOfRegions;
  72028.  
  72029.     DWORD NumberOfRegionsReturned;
  72030.                                           STORAGE_TIER_REGION Regions[1];
  72031.  
  72032. } DEVICE_DSM_TIERING_QUERY_OUTPUT, *PDEVICE_DSM_TIERING_QUERY_OUTPUT;
  72033. # 3859 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72034. typedef struct _DEVICE_DSM_NVCACHE_CHANGE_PRIORITY_PARAMETERS {
  72035.  
  72036.     DWORD Size;
  72037.  
  72038.     BYTE TargetPriority;
  72039.     BYTE Reserved[3];
  72040.  
  72041. } DEVICE_DSM_NVCACHE_CHANGE_PRIORITY_PARAMETERS, *PDEVICE_DSM_NVCACHE_CHANGE_PRIORITY_PARAMETERS;
  72042. # 3909 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72043. typedef struct _DEVICE_DATA_SET_TOPOLOGY_ID_QUERY_OUTPUT {
  72044.  
  72045.  
  72046.  
  72047.  
  72048.  
  72049.  
  72050.  
  72051.     DWORDLONG TopologyRangeBytes;
  72052.  
  72053.  
  72054.  
  72055.  
  72056.  
  72057.     BYTE TopologyId[16];
  72058.  
  72059. } DEVICE_DATA_SET_TOPOLOGY_ID_QUERY_OUTPUT, *PDEVICE_DATA_SET_TOPOLOGY_ID_QUERY_OUTPUT,
  72060.   DEVICE_DSM_TOPOLOGY_ID_QUERY_OUTPUT, *PDEVICE_DSM_TOPOLOGY_ID_QUERY_OUTPUT;
  72061. # 3964 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72062. typedef struct _DEVICE_STORAGE_ADDRESS_RANGE {
  72063.  
  72064.     LONGLONG StartAddress;
  72065.     DWORDLONG LengthInBytes;
  72066.  
  72067. } DEVICE_STORAGE_ADDRESS_RANGE, *PDEVICE_STORAGE_ADDRESS_RANGE;
  72068.  
  72069. typedef struct _DEVICE_DSM_PHYSICAL_ADDRESSES_OUTPUT {
  72070.  
  72071.     DWORD Version;
  72072.  
  72073.  
  72074.  
  72075.  
  72076.  
  72077.     DWORD Flags;
  72078. # 3989 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72079.     DWORD TotalNumberOfRanges;
  72080. # 3999 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72081.     DWORD NumberOfRangesReturned;
  72082.     DEVICE_STORAGE_ADDRESS_RANGE Ranges[1];
  72083.  
  72084. } DEVICE_DSM_PHYSICAL_ADDRESSES_OUTPUT, *PDEVICE_DSM_PHYSICAL_ADDRESSES_OUTPUT;
  72085. # 4049 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72086. typedef struct _DEVICE_DSM_REPORT_ZONES_PARAMETERS {
  72087.  
  72088.     DWORD Size;
  72089.  
  72090.     BYTE ReportOption;
  72091.  
  72092.  
  72093.  
  72094.  
  72095.  
  72096.  
  72097.     BYTE Partial;
  72098.  
  72099.     BYTE Reserved[2];
  72100.  
  72101. } DEVICE_DSM_REPORT_ZONES_PARAMETERS, *PDEVICE_DSM_REPORT_ZONES_PARAMETERS;
  72102.  
  72103. typedef enum _STORAGE_ZONES_ATTRIBUTES {
  72104.  
  72105.     ZonesAttributeTypeAndLengthMayDifferent = 0,
  72106.     ZonesAttributeTypeSameLengthSame = 1,
  72107.     ZonesAttributeTypeSameLastZoneLengthDifferent = 2,
  72108.     ZonesAttributeTypeMayDifferentLengthSame = 3,
  72109.  
  72110. } STORAGE_ZONES_ATTRIBUTES, *PSTORAGE_ZONES_ATTRIBUTES;
  72111.  
  72112. typedef enum _STORAGE_ZONE_CONDITION {
  72113.  
  72114.     ZoneConditionConventional = 0x00,
  72115.     ZoneConditionEmpty = 0x01,
  72116.     ZoneConditionImplicitlyOpened = 0x02,
  72117.     ZoneConditionExplicitlyOpened = 0x03,
  72118.     ZoneConditionClosed = 0x04,
  72119.  
  72120.     ZoneConditionReadOnly = 0x0D,
  72121.     ZoneConditionFull = 0x0E,
  72122.     ZoneConditionOffline = 0x0F,
  72123.  
  72124. } STORAGE_ZONE_CONDITION, *PSTORAGE_ZONE_CONDITION;
  72125.  
  72126. typedef struct _STORAGE_ZONE_DESCRIPTOR {
  72127.  
  72128.     DWORD Size;
  72129.  
  72130.     STORAGE_ZONE_TYPES ZoneType;
  72131.     STORAGE_ZONE_CONDITION ZoneCondition;
  72132.  
  72133.     BOOLEAN ResetWritePointerRecommend;
  72134.     BYTE Reserved0[3];
  72135.  
  72136.  
  72137.  
  72138.  
  72139.  
  72140.     DWORDLONG ZoneSize;
  72141.     DWORDLONG WritePointerOffset;
  72142.  
  72143. } STORAGE_ZONE_DESCRIPTOR, *PSTORAGE_ZONE_DESCRIPTOR;
  72144.  
  72145. typedef struct _DEVICE_DSM_REPORT_ZONES_DATA {
  72146.  
  72147.     DWORD Size;
  72148.  
  72149.     DWORD ZoneCount;
  72150.     STORAGE_ZONES_ATTRIBUTES Attributes;
  72151.  
  72152.     DWORD Reserved0;
  72153.  
  72154.                             STORAGE_ZONE_DESCRIPTOR ZoneDescriptors[1];
  72155.  
  72156. } DEVICE_DSM_REPORT_ZONES_DATA, *PDEVICE_DSM_REPORT_ZONES_DATA,
  72157.   DEVICE_DSM_REPORT_ZONES_OUTPUT, *PDEVICE_DSM_REPORT_ZONES_OUTPUT;
  72158. # 4227 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72159. #pragma warning(push)
  72160. #pragma warning(disable: 4201)
  72161. #pragma warning(disable: 4214)
  72162.  
  72163. typedef struct _DEVICE_STORAGE_RANGE_ATTRIBUTES {
  72164.  
  72165.  
  72166.  
  72167.  
  72168.  
  72169.  
  72170.     DWORDLONG LengthInBytes;
  72171.  
  72172.     union {
  72173.  
  72174.         DWORD AllFlags;
  72175.  
  72176.         struct {
  72177.  
  72178.  
  72179.  
  72180.  
  72181.  
  72182.             DWORD IsRangeBad : 1;
  72183.         };
  72184.     };
  72185.  
  72186.     DWORD Reserved;
  72187.  
  72188. } DEVICE_STORAGE_RANGE_ATTRIBUTES, *PDEVICE_STORAGE_RANGE_ATTRIBUTES;
  72189.  
  72190. #pragma warning(pop)
  72191.  
  72192.  
  72193.  
  72194.  
  72195.  
  72196.  
  72197.  
  72198. typedef struct _DEVICE_DSM_RANGE_ERROR_INFO {
  72199.  
  72200.     DWORD Version;
  72201.  
  72202.     DWORD Flags;
  72203. # 4280 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72204.     DWORD TotalNumberOfRanges;
  72205. # 4297 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72206.     DWORD NumberOfRangesReturned;
  72207.     DEVICE_STORAGE_RANGE_ATTRIBUTES Ranges[1];
  72208.  
  72209. } DEVICE_DSM_RANGE_ERROR_INFO, *PDEVICE_DSM_RANGE_ERROR_INFO,
  72210.   DEVICE_DSM_RANGE_ERROR_OUTPUT, *PDEVICE_DSM_RANGE_ERROR_OUTPUT;
  72211. # 4351 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72212. typedef struct _DEVICE_DSM_LOST_QUERY_PARAMETERS {
  72213.  
  72214.  
  72215.  
  72216.  
  72217.  
  72218.  
  72219.     DWORD Version;
  72220.  
  72221.     DWORDLONG Granularity;
  72222.  
  72223. } DEVICE_DSM_LOST_QUERY_PARAMETERS, *PDEVICE_DSM_LOST_QUERY_PARAMETERS;
  72224.  
  72225. typedef struct _DEVICE_DSM_LOST_QUERY_OUTPUT {
  72226.  
  72227.  
  72228.  
  72229.  
  72230.  
  72231.  
  72232.     DWORD Version;
  72233.  
  72234.  
  72235.  
  72236.  
  72237.  
  72238.  
  72239.  
  72240.     DWORD Size;
  72241.  
  72242.  
  72243.  
  72244.  
  72245.  
  72246.  
  72247.  
  72248.     DWORDLONG Alignment;
  72249.  
  72250.  
  72251.  
  72252.  
  72253.  
  72254.     DWORD NumberOfBits;
  72255.     DWORD BitMap[1];
  72256.  
  72257. } DEVICE_DSM_LOST_QUERY_OUTPUT, *PDEVICE_DSM_LOST_QUERY_OUTPUT;
  72258. # 4419 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72259. typedef struct _DEVICE_DSM_FREE_SPACE_OUTPUT {
  72260.  
  72261.  
  72262.  
  72263.  
  72264.  
  72265.  
  72266.     DWORD Version;
  72267.  
  72268.  
  72269.  
  72270.  
  72271.  
  72272.     DWORDLONG FreeSpace;
  72273.  
  72274. } DEVICE_DSM_FREE_SPACE_OUTPUT, *PDEVICE_DSM_FREE_SPACE_OUTPUT;
  72275. # 4461 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72276. __inline
  72277. PVOID
  72278. DeviceDsmParameterBlock (
  72279.          PDEVICE_DSM_INPUT Input
  72280.     )
  72281. {
  72282.     return (PVOID)
  72283.            ((DWORD_PTR)Input +
  72284.                        Input->ParameterBlockOffset);
  72285. }
  72286.  
  72287.  
  72288. __inline
  72289. PDEVICE_DSM_RANGE
  72290. DeviceDsmDataSetRanges (
  72291.          PDEVICE_DSM_INPUT Input
  72292.     )
  72293. {
  72294.     return (PDEVICE_DSM_RANGE)
  72295.            ((DWORD_PTR)Input +
  72296.                        Input->DataSetRangesOffset);
  72297. }
  72298.  
  72299.  
  72300. __inline
  72301. DWORD
  72302. DeviceDsmNumberOfDataSetRanges (
  72303.          PDEVICE_DSM_INPUT Input
  72304.     )
  72305. {
  72306.     return Input->DataSetRangesLength /
  72307.            sizeof(DEVICE_DSM_RANGE);
  72308. }
  72309.  
  72310.  
  72311.  
  72312.  
  72313. __inline
  72314. DWORD
  72315. DeviceDsmGetInputLength (
  72316.          PDEVICE_DSM_DEFINITION Definition,
  72317.          DWORD ParameterBlockLength,
  72318.          DWORD NumberOfDataSetRanges
  72319.     )
  72320. {
  72321.     DWORD Bytes = sizeof(DEVICE_DSM_INPUT);
  72322.  
  72323.     if (ParameterBlockLength != 0) {
  72324.  
  72325.         Bytes = (((Bytes) + ((Definition->ParameterBlockAlignment) - 1)) / (Definition->ParameterBlockAlignment) * (Definition->ParameterBlockAlignment));
  72326.         Bytes += ParameterBlockLength;
  72327.     }
  72328.  
  72329.     if (NumberOfDataSetRanges != 0) {
  72330.  
  72331.         Bytes = (((Bytes) + ((((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))) - 1)) / (((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))) * (((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))));
  72332.         Bytes += sizeof(DEVICE_DSM_RANGE) * NumberOfDataSetRanges;
  72333.     }
  72334.  
  72335.     return Bytes;
  72336. }
  72337.  
  72338.  
  72339. __inline
  72340. DWORD
  72341. DeviceDsmGetNumberOfDataSetRanges (
  72342.          PDEVICE_DSM_DEFINITION Definition,
  72343.          DWORD InputLength,
  72344.          DWORD ParameterBlockLength
  72345.     )
  72346. {
  72347.     DWORD Bytes = sizeof(DEVICE_DSM_INPUT);
  72348.  
  72349.     if (ParameterBlockLength != 0) {
  72350.  
  72351.         Bytes = (((Bytes) + ((Definition->ParameterBlockAlignment) - 1)) / (Definition->ParameterBlockAlignment) * (Definition->ParameterBlockAlignment));
  72352.         Bytes += ParameterBlockLength;
  72353.     }
  72354.  
  72355.     Bytes = (((Bytes) + ((((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))) - 1)) / (((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))) * (((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))));
  72356.     Bytes = InputLength - Bytes;
  72357.  
  72358.     return Bytes / sizeof(DEVICE_DSM_RANGE);
  72359. }
  72360.  
  72361.  
  72362. __inline
  72363. void
  72364. DeviceDsmInitializeInput (
  72365.          PDEVICE_DSM_DEFINITION Definition,
  72366.                                     PDEVICE_DSM_INPUT Input,
  72367.          DWORD InputLength,
  72368.          DWORD Flags,
  72369.                                                PVOID Parameters,
  72370.          DWORD ParameterBlockLength
  72371.     )
  72372. {
  72373.     DWORD Bytes = sizeof(DEVICE_DSM_INPUT);
  72374.  
  72375.     memset((Input),0,(InputLength));
  72376.  
  72377.     Input->Size = Bytes;
  72378.     Input->Action = Definition->Action;
  72379.     Input->Flags = Flags;
  72380.  
  72381.     if (ParameterBlockLength == 0) {
  72382.         goto Cleanup;
  72383.     }
  72384.  
  72385.     Bytes = (((Bytes) + ((Definition->ParameterBlockAlignment) - 1)) / (Definition->ParameterBlockAlignment) * (Definition->ParameterBlockAlignment));
  72386.  
  72387.     Input->ParameterBlockOffset = Bytes;
  72388.     Input->ParameterBlockLength = ParameterBlockLength;
  72389.  
  72390.     if (!Parameters) {
  72391.         goto Cleanup;
  72392.     }
  72393.  
  72394.     memcpy((DeviceDsmParameterBlock(Input)),(Parameters),(Input->ParameterBlockLength));
  72395.  
  72396.  
  72397.  
  72398. Cleanup:
  72399.  
  72400.     return;
  72401. }
  72402.  
  72403.  
  72404. __inline
  72405. BOOLEAN
  72406. DeviceDsmAddDataSetRange (
  72407.                                     PDEVICE_DSM_INPUT Input,
  72408.          DWORD InputLength,
  72409.          LONGLONG Offset,
  72410.          DWORDLONG Length
  72411.     )
  72412. {
  72413.     DWORD Bytes = 0;
  72414.     DWORD Index = 0;
  72415.     PDEVICE_DSM_RANGE Ranges = 0;
  72416.     BOOLEAN Return = 0;
  72417.  
  72418.     if (Input->Flags & 0x00000001) {
  72419.         goto Cleanup;
  72420.     }
  72421.  
  72422.     if (Input->DataSetRangesLength == 0) {
  72423.  
  72424.         if (Input->ParameterBlockLength == 0) {
  72425.  
  72426.             Bytes = sizeof(DEVICE_DSM_INPUT);
  72427.  
  72428.         } else {
  72429.  
  72430.             Bytes = Input->ParameterBlockOffset +
  72431.                     Input->ParameterBlockLength;
  72432.         }
  72433.  
  72434.         Bytes = (((Bytes) + ((((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))) - 1)) / (((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))) * (((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))));
  72435.  
  72436.     } else {
  72437.  
  72438.         Bytes = Input->DataSetRangesOffset +
  72439.                 Input->DataSetRangesLength;
  72440.     }
  72441.  
  72442.     if ((InputLength - Bytes) < sizeof(DEVICE_DSM_RANGE)) {
  72443.         goto Cleanup;
  72444.     }
  72445.  
  72446.     if (Input->DataSetRangesOffset == 0) {
  72447.         Input->DataSetRangesOffset = Bytes;
  72448.     }
  72449.  
  72450.     Ranges = DeviceDsmDataSetRanges(Input);
  72451.     Index = DeviceDsmNumberOfDataSetRanges(Input);
  72452.  
  72453.     Ranges[Index].StartingOffset = Offset;
  72454.     Ranges[Index].LengthInBytes = Length;
  72455.  
  72456.     Input->DataSetRangesLength += sizeof(DEVICE_DSM_RANGE);
  72457.  
  72458.     Return = 1;
  72459.  
  72460. Cleanup:
  72461.  
  72462.     return Return;
  72463. }
  72464.  
  72465.  
  72466. __inline
  72467. BOOLEAN
  72468. DeviceDsmValidateInput (
  72469.          PDEVICE_DSM_DEFINITION Definition,
  72470.                                   PDEVICE_DSM_INPUT Input,
  72471.          DWORD InputLength
  72472.     )
  72473. {
  72474.     DWORD Max = 0;
  72475.     DWORD Min = 0;
  72476.     BOOLEAN Valid = 0;
  72477.  
  72478.     if (Definition->Action != Input->Action) {
  72479.         goto Cleanup;
  72480.     }
  72481.  
  72482.     if (Definition->ParameterBlockLength != 0) {
  72483.  
  72484.         Min = sizeof(*Input);
  72485.         Max = InputLength;
  72486.  
  72487.         if (Input->ParameterBlockOffset < Min ||
  72488.             Input->ParameterBlockOffset > Max ||
  72489.             Input->ParameterBlockOffset % Definition->ParameterBlockAlignment) {
  72490.             goto Cleanup;
  72491.         }
  72492.  
  72493.         Min = Definition->ParameterBlockLength;
  72494.         Max = InputLength - Input->ParameterBlockOffset;
  72495.  
  72496.         if (Input->ParameterBlockLength < Min ||
  72497.             Input->ParameterBlockLength > Max) {
  72498.             goto Cleanup;
  72499.         }
  72500.     }
  72501.  
  72502.     if (!(Input->Flags & 0x00000001)) {
  72503.  
  72504.         Min = sizeof(*Input);
  72505.         Max = InputLength;
  72506.  
  72507.         if (Input->DataSetRangesOffset < Min ||
  72508.             Input->DataSetRangesOffset > Max ||
  72509.             Input->DataSetRangesOffset % ((LONG)__builtin_offsetof(struct { char x; DEVICE_DSM_RANGE test; }, test))) {
  72510.             goto Cleanup;
  72511.         }
  72512.  
  72513.         Min = sizeof(DEVICE_DSM_RANGE);
  72514.         Max = InputLength - Input->DataSetRangesOffset;
  72515.  
  72516.         if (Input->DataSetRangesLength < Min ||
  72517.             Input->DataSetRangesLength > Max ||
  72518.             Input->DataSetRangesLength % Min) {
  72519.             goto Cleanup;
  72520.         }
  72521.  
  72522.         if (Definition->SingleRange &&
  72523.             Input->DataSetRangesLength != Min) {
  72524.             goto Cleanup;
  72525.         }
  72526.  
  72527.     } else {
  72528.  
  72529.         if (Input->DataSetRangesOffset != 0 ||
  72530.             Input->DataSetRangesLength != 0) {
  72531.             goto Cleanup;
  72532.         }
  72533.     }
  72534.  
  72535.     if (Input->ParameterBlockOffset < Input->DataSetRangesOffset &&
  72536.         Input->ParameterBlockOffset +
  72537.         Input->ParameterBlockLength > Input->DataSetRangesOffset) {
  72538.         goto Cleanup;
  72539.     }
  72540.  
  72541.     if (Input->DataSetRangesOffset < Input->ParameterBlockOffset &&
  72542.         Input->DataSetRangesOffset +
  72543.         Input->DataSetRangesLength > Input->ParameterBlockOffset) {
  72544.         goto Cleanup;
  72545.     }
  72546.  
  72547.     Valid = 1;
  72548.  
  72549. Cleanup:
  72550.  
  72551.     return Valid;
  72552. }
  72553.  
  72554.  
  72555.  
  72556. __inline
  72557. PVOID
  72558. DeviceDsmOutputBlock (
  72559.          PDEVICE_DSM_OUTPUT Output
  72560.     )
  72561. {
  72562.     return (PVOID)
  72563.            ((DWORD_PTR)Output + Output->OutputBlockOffset);
  72564. }
  72565.  
  72566.  
  72567. __inline
  72568. DWORD
  72569. DeviceDsmGetOutputLength (
  72570.          PDEVICE_DSM_DEFINITION Definition,
  72571.          DWORD OutputBlockLength
  72572.     )
  72573. {
  72574.     DWORD Bytes = sizeof(DEVICE_DSM_OUTPUT);
  72575.  
  72576.     if (OutputBlockLength == 0) {
  72577.         goto Cleanup;
  72578.     }
  72579.  
  72580.     Bytes = (((Bytes) + ((Definition->OutputBlockAlignment) - 1)) / (Definition->OutputBlockAlignment) * (Definition->OutputBlockAlignment));
  72581.     Bytes += OutputBlockLength;
  72582.  
  72583. Cleanup:
  72584.  
  72585.     return Bytes;
  72586. }
  72587.  
  72588.  
  72589. __inline
  72590. DWORD
  72591. DeviceDsmGetOutputBlockLength (
  72592.          PDEVICE_DSM_DEFINITION Definition,
  72593.          DWORD OutputLength
  72594.     )
  72595. {
  72596.     DWORD Bytes = 0;
  72597.  
  72598.     if (Definition->OutputBlockLength == 0) {
  72599.         goto Cleanup;
  72600.     }
  72601.  
  72602.     Bytes = sizeof(DEVICE_DSM_OUTPUT);
  72603.     Bytes = (((Bytes) + ((Definition->OutputBlockAlignment) - 1)) / (Definition->OutputBlockAlignment) * (Definition->OutputBlockAlignment));
  72604.     Bytes = OutputLength - Bytes;
  72605.  
  72606. Cleanup:
  72607.  
  72608.     return Bytes;
  72609. }
  72610.  
  72611.  
  72612. __inline
  72613. void
  72614. DeviceDsmInitializeOutput (
  72615.          PDEVICE_DSM_DEFINITION Definition,
  72616.                                      PDEVICE_DSM_OUTPUT Output,
  72617.          DWORD OutputLength,
  72618.          DWORD Flags
  72619.     )
  72620. {
  72621.     DWORD Bytes = sizeof(DEVICE_DSM_OUTPUT);
  72622.  
  72623.     memset((Output),0,(OutputLength));
  72624.  
  72625.     Output->Size = Bytes;
  72626.     Output->Action = Definition->Action;
  72627.     Output->Flags = Flags;
  72628.  
  72629.     if (Definition->OutputBlockLength != 0) {
  72630.  
  72631.         Bytes = (((Bytes) + ((Definition->OutputBlockAlignment) - 1)) / (Definition->OutputBlockAlignment) * (Definition->OutputBlockAlignment));
  72632.  
  72633.         Output->OutputBlockOffset = Bytes;
  72634.         Output->OutputBlockLength = OutputLength - Bytes;
  72635.     }
  72636.  
  72637.     return;
  72638. }
  72639.  
  72640.  
  72641. __inline
  72642. BOOLEAN
  72643. DeviceDsmValidateOutput (
  72644.          PDEVICE_DSM_DEFINITION Definition,
  72645.                                    PDEVICE_DSM_OUTPUT Output,
  72646.          DWORD OutputLength
  72647.     )
  72648. {
  72649.     DWORD Max = 0;
  72650.     DWORD Min = 0;
  72651.     BOOLEAN Valid = 0;
  72652.  
  72653.     if (Definition->Action != Output->Action) {
  72654.         goto Cleanup;
  72655.     }
  72656.  
  72657.     if (!Definition->HasOutput) {
  72658.         goto Cleanup;
  72659.     }
  72660.  
  72661.     if (Definition->OutputBlockLength != 0) {
  72662.  
  72663.         Min = sizeof(*Output);
  72664.         Max = OutputLength;
  72665.  
  72666.         if (Output->OutputBlockOffset < Min ||
  72667.             Output->OutputBlockOffset > Max ||
  72668.             Output->OutputBlockOffset % Definition->OutputBlockAlignment) {
  72669.             goto Cleanup;
  72670.         }
  72671.  
  72672.         Min = Definition->OutputBlockLength;
  72673.         Max = OutputLength - Output->OutputBlockOffset;
  72674.  
  72675.         if (Output->OutputBlockLength < Min ||
  72676.             Output->OutputBlockLength > Max) {
  72677.             goto Cleanup;
  72678.         }
  72679.  
  72680.     } else {
  72681.  
  72682.         if (Output->OutputBlockOffset != 0 ||
  72683.             Output->OutputBlockLength != 0) {
  72684.             goto Cleanup;
  72685.         }
  72686.     }
  72687.  
  72688.     Valid = 1;
  72689.  
  72690. Cleanup:
  72691.  
  72692.     return Valid;
  72693. }
  72694. # 4901 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72695. typedef struct _STORAGE_GET_BC_PROPERTIES_OUTPUT {
  72696.  
  72697.  
  72698.  
  72699.  
  72700.  
  72701.     DWORD MaximumRequestsPerPeriod;
  72702.  
  72703.  
  72704.  
  72705.  
  72706.  
  72707.     DWORD MinimumPeriod;
  72708.  
  72709.  
  72710.  
  72711.  
  72712.  
  72713.  
  72714.  
  72715.     DWORDLONG MaximumRequestSize;
  72716.  
  72717.  
  72718.  
  72719.  
  72720.  
  72721.  
  72722.     DWORD EstimatedTimePerRequest;
  72723. # 4937 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72724.     DWORD NumOutStandingRequests;
  72725.  
  72726.  
  72727.  
  72728.  
  72729.  
  72730.  
  72731.     DWORDLONG RequestSize;
  72732.  
  72733. } STORAGE_GET_BC_PROPERTIES_OUTPUT, *PSTORAGE_GET_BC_PROPERTIES_OUTPUT;
  72734. # 4965 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72735. typedef struct _STORAGE_ALLOCATE_BC_STREAM_INPUT {
  72736.  
  72737.  
  72738.  
  72739.  
  72740.     DWORD Version;
  72741.  
  72742.  
  72743.  
  72744.  
  72745.  
  72746.     DWORD RequestsPerPeriod;
  72747.  
  72748.  
  72749.  
  72750.  
  72751.  
  72752.     DWORD Period;
  72753.  
  72754.  
  72755.  
  72756.  
  72757.  
  72758.     BOOLEAN RetryFailures;
  72759.  
  72760.  
  72761.  
  72762.  
  72763.  
  72764.     BOOLEAN Discardable;
  72765.  
  72766.  
  72767.  
  72768.  
  72769.     BOOLEAN Reserved1[2];
  72770.  
  72771.  
  72772.  
  72773.  
  72774.  
  72775.     DWORD AccessType;
  72776.  
  72777.  
  72778.  
  72779.  
  72780.  
  72781.     DWORD AccessMode;
  72782.  
  72783. } STORAGE_ALLOCATE_BC_STREAM_INPUT, *PSTORAGE_ALLOCATE_BC_STREAM_INPUT;
  72784.  
  72785. typedef struct _STORAGE_ALLOCATE_BC_STREAM_OUTPUT {
  72786.  
  72787.  
  72788.  
  72789.  
  72790.  
  72791.     DWORDLONG RequestSize;
  72792.  
  72793.  
  72794.  
  72795.  
  72796.  
  72797.  
  72798.     DWORD NumOutStandingRequests;
  72799.  
  72800. } STORAGE_ALLOCATE_BC_STREAM_OUTPUT, *PSTORAGE_ALLOCATE_BC_STREAM_OUTPUT;
  72801. # 5054 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72802. typedef struct _STORAGE_PRIORITY_HINT_SUPPORT {
  72803.     DWORD SupportFlags;
  72804. } STORAGE_PRIORITY_HINT_SUPPORT, *PSTORAGE_PRIORITY_HINT_SUPPORT;
  72805. # 5067 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72806. typedef enum _STORAGE_DIAGNOSTIC_LEVEL {
  72807.     StorageDiagnosticLevelDefault = 0,
  72808.     StorageDiagnosticLevelMax
  72809. } STORAGE_DIAGNOSTIC_LEVEL, *PSTORAGE_DIAGNOSTIC_LEVEL;
  72810.  
  72811. typedef enum _STORAGE_DIAGNOSTIC_TARGET_TYPE {
  72812.  
  72813.     StorageDiagnosticTargetTypeUndefined = 0,
  72814.     StorageDiagnosticTargetTypePort,
  72815.     StorageDiagnosticTargetTypeMiniport,
  72816.     StorageDiagnosticTargetTypeHbaFirmware,
  72817.     StorageDiagnosticTargetTypeMax
  72818.  
  72819. } STORAGE_DIAGNOSTIC_TARGET_TYPE, *PSTORAGE_DIAGNOSTIC_TARGET_TYPE;
  72820.  
  72821.  
  72822.  
  72823.  
  72824.  
  72825. typedef struct _STORAGE_DIAGNOSTIC_REQUEST {
  72826.  
  72827.  
  72828.     DWORD Version;
  72829.  
  72830.  
  72831.  
  72832.     DWORD Size;
  72833.  
  72834.  
  72835.     DWORD Reserved;
  72836.  
  72837.  
  72838.     STORAGE_DIAGNOSTIC_TARGET_TYPE TargetType;
  72839.  
  72840.  
  72841.     STORAGE_DIAGNOSTIC_LEVEL Level;
  72842.  
  72843. } STORAGE_DIAGNOSTIC_REQUEST, *PSTORAGE_DIAGNOSTIC_REQUEST;
  72844.  
  72845.  
  72846.  
  72847.  
  72848.  
  72849. typedef struct _STORAGE_DIAGNOSTIC_DATA {
  72850.  
  72851.  
  72852.     DWORD Version;
  72853.  
  72854.  
  72855.     DWORD Size;
  72856.  
  72857.  
  72858.     GUID ProviderId;
  72859.  
  72860.  
  72861.  
  72862.  
  72863.  
  72864.     DWORD BufferSize;
  72865.  
  72866.  
  72867.     DWORD Reserved;
  72868.  
  72869.  
  72870.                              BYTE DiagnosticDataBuffer[1];
  72871.  
  72872. } STORAGE_DIAGNOSTIC_DATA, *PSTORAGE_DIAGNOSTIC_DATA;
  72873. # 5144 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72874. typedef struct _PHYSICAL_ELEMENT_STATUS_REQUEST {
  72875.  
  72876.     DWORD Version;
  72877.     DWORD Size;
  72878.  
  72879.     DWORD StartingElement;
  72880.     BYTE Filter;
  72881.     BYTE ReportType;
  72882.     BYTE Reserved[2];
  72883.  
  72884. } PHYSICAL_ELEMENT_STATUS_REQUEST, *PPHYSICAL_ELEMENT_STATUS_REQUEST;
  72885.  
  72886. typedef struct _PHYSICAL_ELEMENT_STATUS_DESCRIPTOR {
  72887.  
  72888.     DWORD Version;
  72889.     DWORD Size;
  72890.  
  72891.     DWORD ElementIdentifier;
  72892.     BYTE PhysicalElementType;
  72893.     BYTE PhysicalElementHealth;
  72894.     BYTE Reserved1[2];
  72895.  
  72896.  
  72897.     DWORDLONG AssociatedCapacity;
  72898.  
  72899.     DWORD Reserved2[4];
  72900.  
  72901. } PHYSICAL_ELEMENT_STATUS_DESCRIPTOR, *PPHYSICAL_ELEMENT_STATUS_DESCRIPTOR;
  72902.  
  72903. typedef struct _PHYSICAL_ELEMENT_STATUS {
  72904.  
  72905.     DWORD Version;
  72906.     DWORD Size;
  72907.  
  72908.     DWORD DescriptorCount;
  72909.     DWORD ReturnedDescriptorCount;
  72910.  
  72911.     DWORD ElementIdentifierBeingDepoped;
  72912.     DWORD Reserved;
  72913.  
  72914.     PHYSICAL_ELEMENT_STATUS_DESCRIPTOR Descriptors[1];
  72915.  
  72916. } PHYSICAL_ELEMENT_STATUS, *PPHYSICAL_ELEMENT_STATUS;
  72917. # 5195 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72918. typedef struct _REMOVE_ELEMENT_AND_TRUNCATE_REQUEST {
  72919.  
  72920.     DWORD Version;
  72921.     DWORD Size;
  72922.  
  72923.  
  72924.     DWORDLONG RequestCapacity;
  72925.  
  72926.     DWORD ElementIdentifier;
  72927.     DWORD Reserved;
  72928.  
  72929. } REMOVE_ELEMENT_AND_TRUNCATE_REQUEST, *PREMOVE_ELEMENT_AND_TRUNCATE_REQUEST;
  72930.  
  72931.  
  72932. #pragma warning(push)
  72933. #pragma warning(disable: 4200)
  72934. # 5240 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  72935. typedef struct _STORAGE_READ_CAPACITY {
  72936.  
  72937.  
  72938.  
  72939.  
  72940.     DWORD Version;
  72941.  
  72942.  
  72943.  
  72944.  
  72945.     DWORD Size;
  72946.  
  72947.  
  72948.  
  72949.  
  72950.  
  72951.     DWORD BlockLength;
  72952.  
  72953.  
  72954.  
  72955.  
  72956.  
  72957.  
  72958.     LARGE_INTEGER NumberOfBlocks;
  72959.  
  72960.  
  72961.  
  72962.  
  72963.  
  72964.     LARGE_INTEGER DiskLength;
  72965.  
  72966. } STORAGE_READ_CAPACITY, *PSTORAGE_READ_CAPACITY;
  72967.  
  72968. #pragma warning(pop)
  72969.  
  72970.  
  72971.  
  72972.  
  72973.  
  72974.  
  72975.  
  72976.  
  72977. typedef enum _WRITE_CACHE_TYPE {
  72978.     WriteCacheTypeUnknown,
  72979.     WriteCacheTypeNone,
  72980.     WriteCacheTypeWriteBack,
  72981.     WriteCacheTypeWriteThrough
  72982. } WRITE_CACHE_TYPE;
  72983.  
  72984. typedef enum _WRITE_CACHE_ENABLE {
  72985.     WriteCacheEnableUnknown,
  72986.     WriteCacheDisabled,
  72987.     WriteCacheEnabled
  72988. } WRITE_CACHE_ENABLE;
  72989.  
  72990. typedef enum _WRITE_CACHE_CHANGE {
  72991.     WriteCacheChangeUnknown,
  72992.     WriteCacheNotChangeable,
  72993.     WriteCacheChangeable
  72994. } WRITE_CACHE_CHANGE;
  72995.  
  72996. typedef enum _WRITE_THROUGH {
  72997.     WriteThroughUnknown,
  72998.     WriteThroughNotSupported,
  72999.     WriteThroughSupported
  73000. } WRITE_THROUGH;
  73001.  
  73002. typedef struct _STORAGE_WRITE_CACHE_PROPERTY {
  73003.  
  73004.  
  73005.  
  73006.  
  73007.  
  73008.  
  73009.  
  73010.     DWORD Version;
  73011.  
  73012.  
  73013.  
  73014.  
  73015.  
  73016.  
  73017.  
  73018.     DWORD Size;
  73019.  
  73020.  
  73021.  
  73022.  
  73023.  
  73024.  
  73025.     WRITE_CACHE_TYPE WriteCacheType;
  73026.  
  73027.  
  73028.  
  73029.  
  73030.  
  73031.  
  73032.     WRITE_CACHE_ENABLE WriteCacheEnabled;
  73033.  
  73034.  
  73035.  
  73036.  
  73037.  
  73038.  
  73039.     WRITE_CACHE_CHANGE WriteCacheChangeable;
  73040.  
  73041.  
  73042.  
  73043.  
  73044.  
  73045.  
  73046.     WRITE_THROUGH WriteThroughSupported;
  73047.  
  73048.  
  73049.  
  73050.  
  73051.  
  73052.  
  73053.     BOOLEAN FlushCacheSupported;
  73054.  
  73055.  
  73056.  
  73057.  
  73058.  
  73059.  
  73060.     BOOLEAN UserDefinedPowerProtection;
  73061.  
  73062.  
  73063.  
  73064.  
  73065.  
  73066.  
  73067.     BOOLEAN NVCacheEnabled;
  73068.  
  73069. } STORAGE_WRITE_CACHE_PROPERTY, *PSTORAGE_WRITE_CACHE_PROPERTY;
  73070.  
  73071. #pragma warning(push)
  73072. #pragma warning(disable: 4200)
  73073. #pragma warning(disable: 4201)
  73074. #pragma warning(disable: 4214)
  73075. # 5438 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73076. #pragma warning(pop)
  73077. # 5449 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73078. #pragma warning(push)
  73079. # 5473 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73080. typedef enum _DEVICEDUMP_COLLECTION_TYPE {
  73081.     TCCollectionBugCheck = 1,
  73082.     TCCollectionApplicationRequested,
  73083.     TCCollectionDeviceRequested
  73084. } DEVICEDUMP_COLLECTION_TYPEIDE_NOTIFICATION_TYPE, *PDEVICEDUMP_COLLECTION_TYPE;
  73085. # 5491 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73086. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  73087. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  73088. #pragma warning(disable: 4103)
  73089.  
  73090. #pragma pack(push,1)
  73091. # 5491 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  73092. # 5510 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73093. typedef struct _DEVICEDUMP_SUBSECTION_POINTER {
  73094.         DWORD dwSize;
  73095.         DWORD dwFlags;
  73096.         DWORD dwOffset;
  73097. } DEVICEDUMP_SUBSECTION_POINTER,*PDEVICEDUMP_SUBSECTION_POINTER;
  73098.  
  73099.  
  73100.  
  73101.  
  73102. typedef struct _DEVICEDUMP_STRUCTURE_VERSION {
  73103.  
  73104.  
  73105.  
  73106.         DWORD dwSignature;
  73107.  
  73108.  
  73109.  
  73110.  
  73111.         DWORD dwVersion;
  73112.  
  73113.  
  73114.  
  73115.  
  73116.         DWORD dwSize;
  73117.  
  73118. } DEVICEDUMP_STRUCTURE_VERSION, *PDEVICEDUMP_STRUCTURE_VERSION;
  73119.  
  73120.  
  73121.  
  73122.  
  73123. typedef struct _DEVICEDUMP_SECTION_HEADER {
  73124.  
  73125.  
  73126.  
  73127.         GUID guidDeviceDataId;
  73128. # 5556 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73129.         BYTE sOrganizationID[16];
  73130.  
  73131.  
  73132.  
  73133.  
  73134.         DWORD dwFirmwareRevision;
  73135.  
  73136.  
  73137.  
  73138.  
  73139.         BYTE sModelNumber[32];
  73140.  
  73141.  
  73142.  
  73143.  
  73144.         BYTE szDeviceManufacturingID[32];
  73145.  
  73146.  
  73147.  
  73148.  
  73149.  
  73150.  
  73151.         DWORD dwFlags;
  73152.  
  73153.  
  73154.  
  73155.  
  73156.         DWORD bRestrictedPrivateDataVersion;
  73157.  
  73158.  
  73159.  
  73160.  
  73161.  
  73162.         DWORD dwFirmwareIssueId;
  73163.  
  73164.  
  73165.  
  73166.  
  73167.         BYTE szIssueDescriptionString[132];
  73168.  
  73169. } DEVICEDUMP_SECTION_HEADER, *PDEVICEDUMP_SECTION_HEADER;
  73170. # 5623 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73171. typedef struct _GP_LOG_PAGE_DESCRIPTOR {
  73172.         WORD LogAddress;
  73173.         WORD LogSectors;
  73174. } GP_LOG_PAGE_DESCRIPTOR,*PGP_LOG_PAGE_DESCRIPTOR;
  73175.  
  73176. typedef struct _DEVICEDUMP_PUBLIC_SUBSECTION {
  73177.         DWORD dwFlags;
  73178.         GP_LOG_PAGE_DESCRIPTOR GPLogTable[16];
  73179.         CHAR szDescription[16];
  73180.         BYTE bData[1];
  73181. } DEVICEDUMP_PUBLIC_SUBSECTION, *PDEVICEDUMP_PUBLIC_SUBSECTION;
  73182.  
  73183.  
  73184.  
  73185.  
  73186. typedef struct _DEVICEDUMP_RESTRICTED_SUBSECTION {
  73187.  
  73188.         BYTE bData[1];
  73189.  
  73190. } DEVICEDUMP_RESTRICTED_SUBSECTION, *PDEVICEDUMP_RESTRICTED_SUBSECTION;
  73191.  
  73192.  
  73193.  
  73194.  
  73195. typedef struct _DEVICEDUMP_PRIVATE_SUBSECTION {
  73196.  
  73197.         DWORD dwFlags;
  73198.         GP_LOG_PAGE_DESCRIPTOR GPLogId;
  73199.  
  73200.         BYTE bData[1];
  73201.  
  73202. } DEVICEDUMP_PRIVATE_SUBSECTION, *PDEVICEDUMP_PRIVATE_SUBSECTION;
  73203.  
  73204.  
  73205.  
  73206.  
  73207. typedef struct _DEVICEDUMP_STORAGEDEVICE_DATA {
  73208.  
  73209.  
  73210.  
  73211.  
  73212.         DEVICEDUMP_STRUCTURE_VERSION Descriptor;
  73213.  
  73214.  
  73215.  
  73216.  
  73217.         DEVICEDUMP_SECTION_HEADER SectionHeader;
  73218.  
  73219.  
  73220.  
  73221.  
  73222.         DWORD dwBufferSize;
  73223.  
  73224.  
  73225.  
  73226.  
  73227.         DWORD dwReasonForCollection;
  73228.  
  73229.  
  73230.  
  73231.  
  73232.         DEVICEDUMP_SUBSECTION_POINTER PublicData;
  73233.         DEVICEDUMP_SUBSECTION_POINTER RestrictedData;
  73234.         DEVICEDUMP_SUBSECTION_POINTER PrivateData;
  73235.  
  73236. } DEVICEDUMP_STORAGEDEVICE_DATA, *PDEVICEDUMP_STORAGEDEVICE_DATA;
  73237. # 5708 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73238. typedef struct _DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD {
  73239.  
  73240.         BYTE Cdb[16];
  73241.  
  73242.  
  73243.         BYTE Command[16];
  73244.  
  73245.  
  73246.         DWORDLONG StartTime;
  73247.  
  73248.  
  73249.         DWORDLONG EndTime;
  73250.  
  73251.  
  73252.         DWORD OperationStatus;
  73253.  
  73254.  
  73255.         DWORD OperationError;
  73256.  
  73257.  
  73258.         union {
  73259.          struct {
  73260.                 DWORD dwReserved;
  73261.                 } ExternalStack;
  73262.  
  73263.          struct {
  73264.                 DWORD dwAtaPortSpecific;
  73265.          } AtaPort;
  73266.  
  73267.          struct {
  73268.                 DWORD SrbTag ;
  73269.          } StorPort;
  73270.  
  73271.         } StackSpecific;
  73272.  
  73273. } DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD,*PDEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD;
  73274.  
  73275.  
  73276. typedef struct _DEVICEDUMP_STORAGESTACK_PUBLIC_DUMP {
  73277.  
  73278.  
  73279.  
  73280.  
  73281.         DEVICEDUMP_STRUCTURE_VERSION Descriptor;
  73282.  
  73283.  
  73284.  
  73285.  
  73286.         DWORD dwReasonForCollection;
  73287.  
  73288.  
  73289.  
  73290.  
  73291.         BYTE cDriverName[16];
  73292.  
  73293.  
  73294.  
  73295.  
  73296.  
  73297.         DWORD uiNumRecords;
  73298.  
  73299.         DEVICEDUMP_STORAGESTACK_PUBLIC_STATE_RECORD RecordArray[1];
  73300.  
  73301. } DEVICEDUMP_STORAGESTACK_PUBLIC_DUMP,*PDEVICEDUMP_STORAGESTACK_PUBLIC_DUMP;
  73302.  
  73303.  
  73304.  
  73305. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  73306. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  73307. #pragma warning(disable: 4103)
  73308.  
  73309. #pragma pack(pop)
  73310. # 5774 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  73311. # 5786 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73312. #pragma warning(push)
  73313. #pragma warning(disable: 4214)
  73314. # 5799 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73315. typedef struct _STORAGE_IDLE_POWER {
  73316.     DWORD Version;
  73317.     DWORD Size;
  73318.     DWORD WakeCapableHint : 1;
  73319.     DWORD D3ColdSupported : 1;
  73320.     DWORD Reserved : 30;
  73321.     DWORD D3IdleTimeout;
  73322. } STORAGE_IDLE_POWER, *PSTORAGE_IDLE_POWER;
  73323.  
  73324. #pragma warning(pop)
  73325. # 5819 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73326. typedef enum _STORAGE_POWERUP_REASON_TYPE {
  73327.   StoragePowerupUnknown = 0,
  73328.   StoragePowerupIO,
  73329.   StoragePowerupDeviceAttention
  73330. } STORAGE_POWERUP_REASON_TYPE, *PSTORAGE_POWERUP_REASON_TYPE;
  73331.  
  73332. typedef struct _STORAGE_IDLE_POWERUP_REASON {
  73333.     DWORD Version;
  73334.     DWORD Size;
  73335.     STORAGE_POWERUP_REASON_TYPE PowerupReason;
  73336. } STORAGE_IDLE_POWERUP_REASON, *PSTORAGE_IDLE_POWERUP_REASON;
  73337. # 5859 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73338. typedef enum _STORAGE_DEVICE_POWER_CAP_UNITS {
  73339.     StorageDevicePowerCapUnitsPercent,
  73340.     StorageDevicePowerCapUnitsMilliwatts
  73341. } STORAGE_DEVICE_POWER_CAP_UNITS, *PSTORAGE_DEVICE_POWER_CAP_UNITS;
  73342.  
  73343. typedef struct _STORAGE_DEVICE_POWER_CAP {
  73344.     DWORD Version;
  73345.     DWORD Size;
  73346.     STORAGE_DEVICE_POWER_CAP_UNITS Units;
  73347.     DWORDLONG MaxPower;
  73348. } STORAGE_DEVICE_POWER_CAP, *PSTORAGE_DEVICE_POWER_CAP;
  73349. # 5888 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73350. #pragma pack(push)
  73351. #pragma pack(1)
  73352.  
  73353.  
  73354.  
  73355.  
  73356.  
  73357.  
  73358.  
  73359. typedef struct _STORAGE_RPMB_DATA_FRAME {
  73360.  
  73361.  
  73362.  
  73363.  
  73364.     BYTE Stuff[196];
  73365.  
  73366.  
  73367.  
  73368.  
  73369.     BYTE KeyOrMAC[32];
  73370.  
  73371.  
  73372.  
  73373.  
  73374.     BYTE Data[256];
  73375.  
  73376.  
  73377.  
  73378.  
  73379.     BYTE Nonce[16];
  73380.  
  73381.  
  73382.  
  73383.  
  73384.     BYTE WriteCounter[4];
  73385.  
  73386.  
  73387.  
  73388.  
  73389.     BYTE Address[2];
  73390.  
  73391.  
  73392.  
  73393.  
  73394.     BYTE BlockCount[2];
  73395.  
  73396.  
  73397.  
  73398.  
  73399.     BYTE OperationResult[2];
  73400.  
  73401.  
  73402.  
  73403.  
  73404.     BYTE RequestOrResponseType[2];
  73405.  
  73406. } STORAGE_RPMB_DATA_FRAME, *PSTORAGE_RPMB_DATA_FRAME;
  73407.  
  73408.  
  73409.  
  73410.  
  73411.  
  73412. typedef enum _STORAGE_RPMB_COMMAND_TYPE {
  73413.     StorRpmbProgramAuthKey = 0x00000001,
  73414.     StorRpmbQueryWriteCounter = 0x00000002,
  73415.     StorRpmbAuthenticatedWrite = 0x00000003,
  73416.     StorRpmbAuthenticatedRead = 0x00000004,
  73417.     StorRpmbReadResultRequest = 0x00000005,
  73418.     StorRpmbAuthenticatedDeviceConfigWrite = 0x00000006,
  73419.     StorRpmbAuthenticatedDeviceConfigRead = 0x00000007,
  73420. } STORAGE_RPMB_COMMAND_TYPE, *PSTORAGE_RPMB_COMMAND_TYPE;
  73421.  
  73422. #pragma pack(pop)
  73423. # 5971 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73424. typedef struct _STORAGE_EVENT_NOTIFICATION {
  73425.     DWORD Version;
  73426.     DWORD Size;
  73427.     DWORDLONG Events;
  73428. } STORAGE_EVENT_NOTIFICATION, *PSTORAGE_EVENT_NOTIFICATION;
  73429. # 5985 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73430. #pragma warning(pop)
  73431. # 6020 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73432. typedef enum _STORAGE_COUNTER_TYPE {
  73433.  
  73434.     StorageCounterTypeUnknown = 0,
  73435.  
  73436.     StorageCounterTypeTemperatureCelsius,
  73437.     StorageCounterTypeTemperatureCelsiusMax,
  73438.     StorageCounterTypeReadErrorsTotal,
  73439.     StorageCounterTypeReadErrorsCorrected,
  73440.     StorageCounterTypeReadErrorsUncorrected,
  73441.     StorageCounterTypeWriteErrorsTotal,
  73442.     StorageCounterTypeWriteErrorsCorrected,
  73443.     StorageCounterTypeWriteErrorsUncorrected,
  73444.     StorageCounterTypeManufactureDate,
  73445.     StorageCounterTypeStartStopCycleCount,
  73446.     StorageCounterTypeStartStopCycleCountMax,
  73447.     StorageCounterTypeLoadUnloadCycleCount,
  73448.     StorageCounterTypeLoadUnloadCycleCountMax,
  73449.     StorageCounterTypeWearPercentage,
  73450.     StorageCounterTypeWearPercentageWarning,
  73451.     StorageCounterTypeWearPercentageMax,
  73452.     StorageCounterTypePowerOnHours,
  73453.     StorageCounterTypeReadLatency100NSMax,
  73454.     StorageCounterTypeWriteLatency100NSMax,
  73455.     StorageCounterTypeFlushLatency100NSMax,
  73456.  
  73457.     StorageCounterTypeMax
  73458.  
  73459. } STORAGE_COUNTER_TYPE, *PSTORAGE_COUNTER_TYPE;
  73460.  
  73461. typedef struct _STORAGE_COUNTER {
  73462.  
  73463.     STORAGE_COUNTER_TYPE Type;
  73464.  
  73465.     union {
  73466.  
  73467.         struct {
  73468.  
  73469.  
  73470.  
  73471.             DWORD Week;
  73472.  
  73473.  
  73474.  
  73475.  
  73476.             DWORD Year;
  73477.         } ManufactureDate;
  73478.  
  73479.         DWORDLONG AsUlonglong;
  73480.     } Value;
  73481.  
  73482. } STORAGE_COUNTER, *PSTORAGE_COUNTER;
  73483.  
  73484. typedef struct _STORAGE_COUNTERS {
  73485.  
  73486.  
  73487.  
  73488.  
  73489.     DWORD Version;
  73490.  
  73491.  
  73492.  
  73493.  
  73494.     DWORD Size;
  73495.  
  73496.     DWORD NumberOfCounters;
  73497.  
  73498.                                    STORAGE_COUNTER Counters[1];
  73499.  
  73500. } STORAGE_COUNTERS, *PSTORAGE_COUNTERS;
  73501. # 6122 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73502. typedef struct _STORAGE_HW_FIRMWARE_INFO_QUERY {
  73503.     DWORD Version;
  73504.     DWORD Size;
  73505.     DWORD Flags;
  73506.     DWORD Reserved;
  73507. } STORAGE_HW_FIRMWARE_INFO_QUERY, *PSTORAGE_HW_FIRMWARE_INFO_QUERY;
  73508. # 6141 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73509. #pragma warning(push)
  73510. #pragma warning(disable: 4214)
  73511.  
  73512.  
  73513.  
  73514. typedef struct _STORAGE_HW_FIRMWARE_SLOT_INFO {
  73515.  
  73516.  
  73517.     DWORD Version;
  73518.  
  73519.  
  73520.     DWORD Size;
  73521.  
  73522.  
  73523.     BYTE SlotNumber;
  73524.  
  73525.  
  73526.     BYTE ReadOnly : 1;
  73527.  
  73528.  
  73529.     BYTE Reserved0 : 7;
  73530.  
  73531.  
  73532.     BYTE Reserved1[6];
  73533.  
  73534.  
  73535.     BYTE Revision[16];
  73536.  
  73537. } STORAGE_HW_FIRMWARE_SLOT_INFO, *PSTORAGE_HW_FIRMWARE_SLOT_INFO;
  73538.  
  73539. typedef struct _STORAGE_HW_FIRMWARE_INFO {
  73540.  
  73541.  
  73542.     DWORD Version;
  73543.  
  73544.  
  73545.     DWORD Size;
  73546.  
  73547.  
  73548.     BYTE SupportUpgrade : 1;
  73549.  
  73550.  
  73551.     BYTE Reserved0 : 7;
  73552.  
  73553.  
  73554.     BYTE SlotCount;
  73555.  
  73556.  
  73557.     BYTE ActiveSlot;
  73558.  
  73559.  
  73560.     BYTE PendingActivateSlot;
  73561.  
  73562.  
  73563.     BOOLEAN FirmwareShared;
  73564.  
  73565.  
  73566.     BYTE Reserved[3];
  73567.  
  73568.  
  73569.     DWORD ImagePayloadAlignment;
  73570.  
  73571.  
  73572.     DWORD ImagePayloadMaxSize;
  73573.  
  73574.  
  73575.     STORAGE_HW_FIRMWARE_SLOT_INFO Slot[1];
  73576.  
  73577. } STORAGE_HW_FIRMWARE_INFO, *PSTORAGE_HW_FIRMWARE_INFO;
  73578. #pragma warning(pop)
  73579.  
  73580.  
  73581.  
  73582.  
  73583.  
  73584. #pragma warning(push)
  73585. #pragma warning(disable: 4200)
  73586.  
  73587. typedef struct _STORAGE_HW_FIRMWARE_DOWNLOAD {
  73588.  
  73589.     DWORD Version;
  73590.     DWORD Size;
  73591.  
  73592.     DWORD Flags;
  73593.     BYTE Slot;
  73594.     BYTE Reserved[3];
  73595.  
  73596.     DWORDLONG Offset;
  73597.     DWORDLONG BufferSize;
  73598.  
  73599.     BYTE ImageBuffer[1];
  73600.  
  73601. } STORAGE_HW_FIRMWARE_DOWNLOAD, *PSTORAGE_HW_FIRMWARE_DOWNLOAD;
  73602.  
  73603. typedef struct _STORAGE_HW_FIRMWARE_DOWNLOAD_V2 {
  73604.  
  73605.     DWORD Version;
  73606.     DWORD Size;
  73607.  
  73608.     DWORD Flags;
  73609.     BYTE Slot;
  73610.     BYTE Reserved[3];
  73611.  
  73612.     DWORDLONG Offset;
  73613.     DWORDLONG BufferSize;
  73614.  
  73615.     DWORD ImageSize;
  73616.     DWORD Reserved2;
  73617.  
  73618.     BYTE ImageBuffer[1];
  73619.  
  73620. } STORAGE_HW_FIRMWARE_DOWNLOAD_V2, *PSTORAGE_HW_FIRMWARE_DOWNLOAD_V2;
  73621.  
  73622. #pragma warning(pop)
  73623.  
  73624.  
  73625.  
  73626.  
  73627. typedef struct _STORAGE_HW_FIRMWARE_ACTIVATE {
  73628.  
  73629.     DWORD Version;
  73630.     DWORD Size;
  73631.  
  73632.     DWORD Flags;
  73633.     BYTE Slot;
  73634.     BYTE Reserved0[3];
  73635.  
  73636. } STORAGE_HW_FIRMWARE_ACTIVATE, *PSTORAGE_HW_FIRMWARE_ACTIVATE;
  73637.  
  73638.  
  73639.  
  73640.  
  73641.  
  73642.  
  73643.  
  73644. typedef struct _STORAGE_PROTOCOL_COMMAND {
  73645.  
  73646.     DWORD Version;
  73647.     DWORD Length;
  73648.  
  73649.     STORAGE_PROTOCOL_TYPE ProtocolType;
  73650.     DWORD Flags;
  73651.  
  73652.     DWORD ReturnStatus;
  73653.     DWORD ErrorCode;
  73654.  
  73655.     DWORD CommandLength;
  73656.     DWORD ErrorInfoLength;
  73657.     DWORD DataToDeviceTransferLength;
  73658.     DWORD DataFromDeviceTransferLength;
  73659.  
  73660.     DWORD TimeOutValue;
  73661.  
  73662.     DWORD ErrorInfoOffset;
  73663.     DWORD DataToDeviceBufferOffset;
  73664.     DWORD DataFromDeviceBufferOffset;
  73665.  
  73666.     DWORD CommandSpecific;
  73667.     DWORD Reserved0;
  73668.  
  73669.     DWORD FixedProtocolReturnData;
  73670.     DWORD Reserved1[3];
  73671.  
  73672.                                            BYTE Command[1];
  73673.  
  73674. } STORAGE_PROTOCOL_COMMAND, *PSTORAGE_PROTOCOL_COMMAND;
  73675. # 6376 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73676. typedef enum _STORAGE_ATTRIBUTE_MGMT_ACTION {
  73677.     StorAttributeMgmt_ClearAttribute = 0,
  73678.     StorAttributeMgmt_SetAttribute = 1,
  73679.     StorAttributeMgmt_ResetAttribute = 2
  73680. } STORAGE_ATTRIBUTE_MGMT_ACTION, *PSTORAGE_ATTRIBUTE_MGMT_ACTION;
  73681. # 6400 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73682. typedef struct _STORAGE_ATTRIBUTE_MGMT {
  73683.  
  73684.  
  73685.  
  73686.  
  73687.  
  73688.     DWORD Version;
  73689.  
  73690.  
  73691.  
  73692.  
  73693.  
  73694.     DWORD Size;
  73695.  
  73696.  
  73697.  
  73698.  
  73699.     STORAGE_ATTRIBUTE_MGMT_ACTION Action;
  73700.  
  73701.  
  73702.  
  73703.  
  73704.  
  73705.     DWORD Attribute;
  73706.  
  73707. } STORAGE_ATTRIBUTE_MGMT, *PSTORAGE_ATTRIBUTE_MGMT;
  73708. # 6454 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73709. #pragma region Desktop Family or OneCore Family
  73710. # 6742 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73711. typedef enum _MEDIA_TYPE {
  73712.     Unknown,
  73713.     F5_1Pt2_512,
  73714.     F3_1Pt44_512,
  73715.     F3_2Pt88_512,
  73716.     F3_20Pt8_512,
  73717.     F3_720_512,
  73718.     F5_360_512,
  73719.     F5_320_512,
  73720.     F5_320_1024,
  73721.     F5_180_512,
  73722.     F5_160_512,
  73723.     RemovableMedia,
  73724.     FixedMedia,
  73725.     F3_120M_512,
  73726.     F3_640_512,
  73727.     F5_640_512,
  73728.     F5_720_512,
  73729.     F3_1Pt2_512,
  73730.     F3_1Pt23_1024,
  73731.     F5_1Pt23_1024,
  73732.     F3_128Mb_512,
  73733.     F3_230Mb_512,
  73734.     F8_256_128,
  73735.     F3_200Mb_512,
  73736.     F3_240M_512,
  73737.     F3_32M_512
  73738. } MEDIA_TYPE, *PMEDIA_TYPE;
  73739.  
  73740.  
  73741.  
  73742.  
  73743.  
  73744.  
  73745. typedef struct _FORMAT_PARAMETERS {
  73746.    MEDIA_TYPE MediaType;
  73747.    DWORD StartCylinderNumber;
  73748.    DWORD EndCylinderNumber;
  73749.    DWORD StartHeadNumber;
  73750.    DWORD EndHeadNumber;
  73751. } FORMAT_PARAMETERS, *PFORMAT_PARAMETERS;
  73752. # 6791 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73753. typedef WORD BAD_TRACK_NUMBER;
  73754. typedef WORD *PBAD_TRACK_NUMBER;
  73755.  
  73756.  
  73757.  
  73758.  
  73759.  
  73760.  
  73761. typedef struct _FORMAT_EX_PARAMETERS {
  73762.    MEDIA_TYPE MediaType;
  73763.    DWORD StartCylinderNumber;
  73764.    DWORD EndCylinderNumber;
  73765.    DWORD StartHeadNumber;
  73766.    DWORD EndHeadNumber;
  73767.    WORD FormatGapLength;
  73768.    WORD SectorsPerTrack;
  73769.    WORD SectorNumber[1];
  73770. } FORMAT_EX_PARAMETERS, *PFORMAT_EX_PARAMETERS;
  73771.  
  73772.  
  73773.  
  73774.  
  73775.  
  73776.  
  73777.  
  73778. typedef struct _DISK_GEOMETRY {
  73779.  
  73780.  
  73781.     LARGE_INTEGER Cylinders;
  73782.  
  73783.  
  73784.     MEDIA_TYPE MediaType;
  73785.  
  73786.  
  73787.     DWORD TracksPerCylinder;
  73788.  
  73789.  
  73790.     DWORD SectorsPerTrack;
  73791.  
  73792.  
  73793.     DWORD BytesPerSector;
  73794.  
  73795. } DISK_GEOMETRY, *PDISK_GEOMETRY;
  73796. # 6850 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73797. typedef struct _PARTITION_INFORMATION {
  73798.     LARGE_INTEGER StartingOffset;
  73799.     LARGE_INTEGER PartitionLength;
  73800.     DWORD HiddenSectors;
  73801.     DWORD PartitionNumber;
  73802.     BYTE PartitionType;
  73803.     BOOLEAN BootIndicator;
  73804.     BOOLEAN RecognizedPartition;
  73805.     BOOLEAN RewritePartition;
  73806. } PARTITION_INFORMATION, *PPARTITION_INFORMATION;
  73807.  
  73808.  
  73809.  
  73810.  
  73811.  
  73812.  
  73813.  
  73814. typedef struct _SET_PARTITION_INFORMATION {
  73815.     BYTE PartitionType;
  73816. } SET_PARTITION_INFORMATION, *PSET_PARTITION_INFORMATION;
  73817.  
  73818.  
  73819.  
  73820.  
  73821.  
  73822.  
  73823. typedef struct _DRIVE_LAYOUT_INFORMATION {
  73824.     DWORD PartitionCount;
  73825.     DWORD Signature;
  73826.     PARTITION_INFORMATION PartitionEntry[1];
  73827. } DRIVE_LAYOUT_INFORMATION, *PDRIVE_LAYOUT_INFORMATION;
  73828.  
  73829.  
  73830.  
  73831.  
  73832.  
  73833.  
  73834. typedef struct _VERIFY_INFORMATION {
  73835.     LARGE_INTEGER StartingOffset;
  73836.     DWORD Length;
  73837. } VERIFY_INFORMATION, *PVERIFY_INFORMATION;
  73838.  
  73839.  
  73840.  
  73841.  
  73842.  
  73843.  
  73844. typedef struct _REASSIGN_BLOCKS {
  73845.     WORD Reserved;
  73846.     WORD Count;
  73847.     DWORD BlockNumber[1];
  73848. } REASSIGN_BLOCKS, *PREASSIGN_BLOCKS;
  73849.  
  73850.  
  73851.  
  73852.  
  73853.  
  73854.  
  73855.  
  73856. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  73857. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  73858. #pragma warning(disable: 4103)
  73859.  
  73860. #pragma pack(push,1)
  73861. # 6908 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  73862.  
  73863. typedef struct _REASSIGN_BLOCKS_EX {
  73864.     WORD Reserved;
  73865.     WORD Count;
  73866.     LARGE_INTEGER BlockNumber[1];
  73867. } REASSIGN_BLOCKS_EX, *PREASSIGN_BLOCKS_EX;
  73868.  
  73869. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  73870. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  73871. #pragma warning(disable: 4103)
  73872.  
  73873. #pragma pack(pop)
  73874. # 6914 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  73875. # 6931 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73876. typedef enum _PARTITION_STYLE {
  73877.     PARTITION_STYLE_MBR,
  73878.     PARTITION_STYLE_GPT,
  73879.     PARTITION_STYLE_RAW
  73880. } PARTITION_STYLE;
  73881.  
  73882.  
  73883.  
  73884.  
  73885.  
  73886.  
  73887.  
  73888. typedef struct _PARTITION_INFORMATION_GPT {
  73889.  
  73890.  
  73891.     GUID PartitionType;
  73892.  
  73893.  
  73894.     GUID PartitionId;
  73895.  
  73896.  
  73897.     DWORD64 Attributes;
  73898.  
  73899.  
  73900.     WCHAR Name [36];
  73901.  
  73902. } PARTITION_INFORMATION_GPT, *PPARTITION_INFORMATION_GPT;
  73903. # 6991 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73904. typedef struct _PARTITION_INFORMATION_MBR {
  73905.  
  73906.  
  73907.     BYTE PartitionType;
  73908.  
  73909.  
  73910.     BOOLEAN BootIndicator;
  73911.  
  73912.  
  73913.     BOOLEAN RecognizedPartition;
  73914.  
  73915.  
  73916.     DWORD HiddenSectors;
  73917.  
  73918.  
  73919.  
  73920.     GUID PartitionId;
  73921.  
  73922.  
  73923. } PARTITION_INFORMATION_MBR, *PPARTITION_INFORMATION_MBR;
  73924. # 7021 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73925. typedef SET_PARTITION_INFORMATION SET_PARTITION_INFORMATION_MBR;
  73926. typedef PARTITION_INFORMATION_GPT SET_PARTITION_INFORMATION_GPT;
  73927.  
  73928.  
  73929. typedef struct _SET_PARTITION_INFORMATION_EX {
  73930.     PARTITION_STYLE PartitionStyle;
  73931.     union {
  73932.         SET_PARTITION_INFORMATION_MBR Mbr;
  73933.         SET_PARTITION_INFORMATION_GPT Gpt;
  73934.     } ;
  73935. } SET_PARTITION_INFORMATION_EX, *PSET_PARTITION_INFORMATION_EX;
  73936.  
  73937.  
  73938.  
  73939.  
  73940.  
  73941.  
  73942.  
  73943. typedef struct _CREATE_DISK_GPT {
  73944.     GUID DiskId;
  73945.     DWORD MaxPartitionCount;
  73946. } CREATE_DISK_GPT, *PCREATE_DISK_GPT;
  73947.  
  73948.  
  73949.  
  73950.  
  73951.  
  73952.  
  73953. typedef struct _CREATE_DISK_MBR {
  73954.     DWORD Signature;
  73955. } CREATE_DISK_MBR, *PCREATE_DISK_MBR;
  73956.  
  73957.  
  73958. typedef struct _CREATE_DISK {
  73959.     PARTITION_STYLE PartitionStyle;
  73960.     union {
  73961.         CREATE_DISK_MBR Mbr;
  73962.         CREATE_DISK_GPT Gpt;
  73963.     } ;
  73964. } CREATE_DISK, *PCREATE_DISK;
  73965. # 7069 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  73966. typedef struct _GET_LENGTH_INFORMATION {
  73967.     LARGE_INTEGER Length;
  73968. } GET_LENGTH_INFORMATION, *PGET_LENGTH_INFORMATION;
  73969.  
  73970.  
  73971.  
  73972.  
  73973.  
  73974.  
  73975.  
  73976. typedef struct _PARTITION_INFORMATION_EX {
  73977.  
  73978.  
  73979.     PARTITION_STYLE PartitionStyle;
  73980.  
  73981.  
  73982.     LARGE_INTEGER StartingOffset;
  73983.  
  73984.  
  73985.     LARGE_INTEGER PartitionLength;
  73986.  
  73987.  
  73988.     DWORD PartitionNumber;
  73989.  
  73990.  
  73991.     BOOLEAN RewritePartition;
  73992.  
  73993.  
  73994.  
  73995.     BOOLEAN IsServicePartition;
  73996.  
  73997.  
  73998.     union {
  73999.  
  74000.  
  74001.         PARTITION_INFORMATION_MBR Mbr;
  74002.  
  74003.  
  74004.         PARTITION_INFORMATION_GPT Gpt;
  74005.  
  74006.     } ;
  74007.  
  74008. } PARTITION_INFORMATION_EX, *PPARTITION_INFORMATION_EX;
  74009.  
  74010.  
  74011.  
  74012.  
  74013.  
  74014.  
  74015. typedef struct _DRIVE_LAYOUT_INFORMATION_GPT {
  74016.  
  74017.  
  74018.     GUID DiskId;
  74019.  
  74020.  
  74021.     LARGE_INTEGER StartingUsableOffset;
  74022.  
  74023.  
  74024.     LARGE_INTEGER UsableLength;
  74025.  
  74026.  
  74027.     DWORD MaxPartitionCount;
  74028.  
  74029. } DRIVE_LAYOUT_INFORMATION_GPT, *PDRIVE_LAYOUT_INFORMATION_GPT;
  74030.  
  74031.  
  74032.  
  74033.  
  74034.  
  74035.  
  74036. typedef struct _DRIVE_LAYOUT_INFORMATION_MBR {
  74037.  
  74038.  
  74039.     DWORD Signature;
  74040.  
  74041.  
  74042.     DWORD CheckSum;
  74043.  
  74044.  
  74045. } DRIVE_LAYOUT_INFORMATION_MBR, *PDRIVE_LAYOUT_INFORMATION_MBR;
  74046.  
  74047.  
  74048.  
  74049.  
  74050.  
  74051.  
  74052. typedef struct _DRIVE_LAYOUT_INFORMATION_EX {
  74053.  
  74054.  
  74055.     DWORD PartitionStyle;
  74056.  
  74057.  
  74058.     DWORD PartitionCount;
  74059.  
  74060.     union {
  74061.  
  74062.  
  74063.         DRIVE_LAYOUT_INFORMATION_MBR Mbr;
  74064.  
  74065.  
  74066.         DRIVE_LAYOUT_INFORMATION_GPT Gpt;
  74067.  
  74068.     } ;
  74069.  
  74070.  
  74071.     PARTITION_INFORMATION_EX PartitionEntry[1];
  74072.  
  74073. } DRIVE_LAYOUT_INFORMATION_EX, *PDRIVE_LAYOUT_INFORMATION_EX;
  74074. # 7189 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74075. typedef enum _DETECTION_TYPE {
  74076.         DetectNone,
  74077.         DetectInt13,
  74078.         DetectExInt13
  74079. } DETECTION_TYPE;
  74080.  
  74081. typedef struct _DISK_INT13_INFO {
  74082.         WORD DriveSelect;
  74083.         DWORD MaxCylinders;
  74084.         WORD SectorsPerTrack;
  74085.         WORD MaxHeads;
  74086.         WORD NumberDrives;
  74087. } DISK_INT13_INFO, *PDISK_INT13_INFO;
  74088.  
  74089. typedef struct _DISK_EX_INT13_INFO {
  74090.         WORD ExBufferSize;
  74091.         WORD ExFlags;
  74092.         DWORD ExCylinders;
  74093.         DWORD ExHeads;
  74094.         DWORD ExSectorsPerTrack;
  74095.         DWORD64 ExSectorsPerDrive;
  74096.         WORD ExSectorSize;
  74097.         WORD ExReserved;
  74098. } DISK_EX_INT13_INFO, *PDISK_EX_INT13_INFO;
  74099.  
  74100.  
  74101.  
  74102.  
  74103.  
  74104.  
  74105. typedef struct _DISK_DETECTION_INFO {
  74106.         DWORD SizeOfDetectInfo;
  74107.         DETECTION_TYPE DetectionType;
  74108.         union {
  74109.                 struct {
  74110.  
  74111.  
  74112.  
  74113.  
  74114.  
  74115.  
  74116.                         DISK_INT13_INFO Int13;
  74117.  
  74118.  
  74119.  
  74120.  
  74121.  
  74122.  
  74123.                         DISK_EX_INT13_INFO ExInt13;
  74124.                 } ;
  74125.         } ;
  74126. } DISK_DETECTION_INFO, *PDISK_DETECTION_INFO;
  74127.  
  74128.  
  74129. typedef struct _DISK_PARTITION_INFO {
  74130.         DWORD SizeOfPartitionInfo;
  74131.         PARTITION_STYLE PartitionStyle;
  74132.         union {
  74133.                 struct {
  74134.                         DWORD Signature;
  74135.                         DWORD CheckSum;
  74136.                 } Mbr;
  74137.                 struct {
  74138.                         GUID DiskId;
  74139.                 } Gpt;
  74140.         } ;
  74141. } DISK_PARTITION_INFO, *PDISK_PARTITION_INFO;
  74142. # 7282 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74143. typedef struct _DISK_GEOMETRY_EX {
  74144.         DISK_GEOMETRY Geometry;
  74145.         LARGE_INTEGER DiskSize;
  74146.         BYTE Data[1];
  74147. } DISK_GEOMETRY_EX, *PDISK_GEOMETRY_EX;
  74148. # 7297 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74149. typedef struct _DISK_CONTROLLER_NUMBER {
  74150.     DWORD ControllerNumber;
  74151.     DWORD DiskNumber;
  74152. } DISK_CONTROLLER_NUMBER, *PDISK_CONTROLLER_NUMBER;
  74153. # 7327 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74154. typedef enum {
  74155.     EqualPriority,
  74156.     KeepPrefetchedData,
  74157.     KeepReadData
  74158. } DISK_CACHE_RETENTION_PRIORITY;
  74159. # 7341 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74160. typedef struct _DISK_CACHE_INFORMATION {
  74161.  
  74162.  
  74163.  
  74164.  
  74165.  
  74166.  
  74167.  
  74168.     BOOLEAN ParametersSavable;
  74169.  
  74170.  
  74171.  
  74172.  
  74173.  
  74174.     BOOLEAN ReadCacheEnabled;
  74175.     BOOLEAN WriteCacheEnabled;
  74176. # 7365 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74177.     DISK_CACHE_RETENTION_PRIORITY ReadRetentionPriority;
  74178.     DISK_CACHE_RETENTION_PRIORITY WriteRetentionPriority;
  74179.  
  74180.  
  74181.  
  74182.  
  74183.  
  74184.  
  74185.     WORD DisablePrefetchTransferLength;
  74186.  
  74187.  
  74188.  
  74189.  
  74190.  
  74191.  
  74192.  
  74193.     BOOLEAN PrefetchScalar;
  74194. # 7391 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74195.     union {
  74196.         struct {
  74197.             WORD Minimum;
  74198.             WORD Maximum;
  74199.  
  74200.  
  74201.  
  74202.  
  74203.  
  74204.  
  74205.             WORD MaximumBlocks;
  74206.         } ScalarPrefetch;
  74207.  
  74208.         struct {
  74209.             WORD Minimum;
  74210.             WORD Maximum;
  74211.         } BlockPrefetch;
  74212.     } ;
  74213.  
  74214. } DISK_CACHE_INFORMATION, *PDISK_CACHE_INFORMATION;
  74215. # 7419 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74216. typedef struct _DISK_GROW_PARTITION {
  74217.     DWORD PartitionNumber;
  74218.     LARGE_INTEGER BytesToGrow;
  74219. } DISK_GROW_PARTITION, *PDISK_GROW_PARTITION;
  74220. # 7443 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74221. typedef struct _HISTOGRAM_BUCKET {
  74222.     DWORD Reads;
  74223.     DWORD Writes;
  74224. } HISTOGRAM_BUCKET, *PHISTOGRAM_BUCKET;
  74225.  
  74226.  
  74227.  
  74228. typedef struct _DISK_HISTOGRAM {
  74229.     LARGE_INTEGER DiskSize;
  74230.     LARGE_INTEGER Start;
  74231.     LARGE_INTEGER End;
  74232.     LARGE_INTEGER Average;
  74233.     LARGE_INTEGER AverageRead;
  74234.     LARGE_INTEGER AverageWrite;
  74235.     DWORD Granularity;
  74236.     DWORD Size;
  74237.     DWORD ReadCount;
  74238.     DWORD WriteCount;
  74239.     PHISTOGRAM_BUCKET Histogram;
  74240. } DISK_HISTOGRAM, *PDISK_HISTOGRAM;
  74241. # 7486 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74242. typedef struct _DISK_PERFORMANCE {
  74243.         LARGE_INTEGER BytesRead;
  74244.         LARGE_INTEGER BytesWritten;
  74245.         LARGE_INTEGER ReadTime;
  74246.         LARGE_INTEGER WriteTime;
  74247.         LARGE_INTEGER IdleTime;
  74248.         DWORD ReadCount;
  74249.         DWORD WriteCount;
  74250.         DWORD QueueDepth;
  74251.         DWORD SplitCount;
  74252.         LARGE_INTEGER QueryTime;
  74253.         DWORD StorageDeviceNumber;
  74254.         WCHAR StorageManagerName[8];
  74255. } DISK_PERFORMANCE, *PDISK_PERFORMANCE;
  74256.  
  74257.  
  74258.  
  74259.  
  74260.  
  74261.  
  74262.  
  74263. typedef struct _DISK_RECORD {
  74264.    LARGE_INTEGER ByteOffset;
  74265.    LARGE_INTEGER StartTime;
  74266.    LARGE_INTEGER EndTime;
  74267.    PVOID VirtualAddress;
  74268.    DWORD NumberOfBytes;
  74269.    BYTE DeviceNumber;
  74270.    BOOLEAN ReadRequest;
  74271. } DISK_RECORD, *PDISK_RECORD;
  74272.  
  74273.  
  74274.  
  74275.  
  74276.  
  74277.  
  74278. typedef struct _DISK_LOGGING {
  74279.     BYTE Function;
  74280.     PVOID BufferAddress;
  74281.     DWORD BufferSize;
  74282. } DISK_LOGGING, *PDISK_LOGGING;
  74283. # 7564 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74284. typedef enum _BIN_TYPES {
  74285.     RequestSize,
  74286.     RequestLocation
  74287. } BIN_TYPES;
  74288.  
  74289.  
  74290.  
  74291.  
  74292.  
  74293. typedef struct _BIN_RANGE {
  74294.     LARGE_INTEGER StartValue;
  74295.     LARGE_INTEGER Length;
  74296. } BIN_RANGE, *PBIN_RANGE;
  74297.  
  74298.  
  74299.  
  74300.  
  74301.  
  74302. typedef struct _PERF_BIN {
  74303.     DWORD NumberOfBins;
  74304.     DWORD TypeOfBin;
  74305.     BIN_RANGE BinsRanges[1];
  74306. } PERF_BIN, *PPERF_BIN ;
  74307.  
  74308.  
  74309.  
  74310.  
  74311.  
  74312. typedef struct _BIN_COUNT {
  74313.     BIN_RANGE BinRange;
  74314.     DWORD BinCount;
  74315. } BIN_COUNT, *PBIN_COUNT;
  74316.  
  74317.  
  74318.  
  74319.  
  74320.  
  74321. typedef struct _BIN_RESULTS {
  74322.     DWORD NumberOfBins;
  74323.     BIN_COUNT BinCounts[1];
  74324. } BIN_RESULTS, *PBIN_RESULTS;
  74325. # 7614 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74326. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  74327. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  74328. #pragma warning(disable: 4103)
  74329.  
  74330. #pragma pack(push,1)
  74331. # 7614 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74332.  
  74333. typedef struct _GETVERSIONINPARAMS {
  74334.         BYTE bVersion;
  74335.         BYTE bRevision;
  74336.         BYTE bReserved;
  74337.         BYTE bIDEDeviceMap;
  74338.         DWORD fCapabilities;
  74339.         DWORD dwReserved[4];
  74340. } GETVERSIONINPARAMS, *PGETVERSIONINPARAMS, *LPGETVERSIONINPARAMS;
  74341.  
  74342. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  74343. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  74344. #pragma warning(disable: 4103)
  74345.  
  74346. #pragma pack(pop)
  74347. # 7623 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74348. # 7637 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74349. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  74350. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  74351. #pragma warning(disable: 4103)
  74352.  
  74353. #pragma pack(push,1)
  74354. # 7637 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74355.  
  74356. typedef struct _IDEREGS {
  74357.         BYTE bFeaturesReg;
  74358.         BYTE bSectorCountReg;
  74359.         BYTE bSectorNumberReg;
  74360.         BYTE bCylLowReg;
  74361.         BYTE bCylHighReg;
  74362.         BYTE bDriveHeadReg;
  74363.         BYTE bCommandReg;
  74364.         BYTE bReserved;
  74365. } IDEREGS, *PIDEREGS, *LPIDEREGS;
  74366.  
  74367. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  74368. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  74369. #pragma warning(disable: 4103)
  74370.  
  74371. #pragma pack(pop)
  74372. # 7648 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74373. # 7673 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74374. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  74375. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  74376. #pragma warning(disable: 4103)
  74377.  
  74378. #pragma pack(push,1)
  74379. # 7673 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74380.  
  74381. typedef struct _SENDCMDINPARAMS {
  74382.         DWORD cBufferSize;
  74383.         IDEREGS irDriveRegs;
  74384.         BYTE bDriveNumber;
  74385.  
  74386.         BYTE bReserved[3];
  74387.         DWORD dwReserved[4];
  74388.         BYTE bBuffer[1];
  74389. } SENDCMDINPARAMS, *PSENDCMDINPARAMS, *LPSENDCMDINPARAMS;
  74390.  
  74391. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  74392. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  74393. #pragma warning(disable: 4103)
  74394.  
  74395. #pragma pack(pop)
  74396. # 7683 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74397.  
  74398.  
  74399.  
  74400.  
  74401.  
  74402.  
  74403. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  74404. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  74405. #pragma warning(disable: 4103)
  74406.  
  74407. #pragma pack(push,1)
  74408. # 7689 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74409.  
  74410. typedef struct _DRIVERSTATUS {
  74411.         BYTE bDriverError;
  74412.  
  74413.         BYTE bIDEError;
  74414.  
  74415.  
  74416.         BYTE bReserved[2];
  74417.         DWORD dwReserved[2];
  74418. } DRIVERSTATUS, *PDRIVERSTATUS, *LPDRIVERSTATUS;
  74419.  
  74420. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  74421. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  74422. #pragma warning(disable: 4103)
  74423.  
  74424. #pragma pack(pop)
  74425. # 7699 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74426. # 7728 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74427. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  74428. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  74429. #pragma warning(disable: 4103)
  74430.  
  74431. #pragma pack(push,1)
  74432. # 7728 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74433.  
  74434. typedef struct _SENDCMDOUTPARAMS {
  74435.         DWORD cBufferSize;
  74436.         DRIVERSTATUS DriverStatus;
  74437.         BYTE bBuffer[1];
  74438. } SENDCMDOUTPARAMS, *PSENDCMDOUTPARAMS, *LPSENDCMDOUTPARAMS;
  74439.  
  74440. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  74441. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  74442. #pragma warning(disable: 4103)
  74443.  
  74444. #pragma pack(pop)
  74445. # 7734 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 2 3
  74446. # 7780 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74447. typedef struct _GET_DISK_ATTRIBUTES {
  74448.  
  74449.  
  74450.  
  74451.  
  74452.  
  74453.     DWORD Version;
  74454.  
  74455.  
  74456.  
  74457.  
  74458.     DWORD Reserved1;
  74459.  
  74460.  
  74461.  
  74462.  
  74463.  
  74464.     DWORDLONG Attributes;
  74465.  
  74466. } GET_DISK_ATTRIBUTES, *PGET_DISK_ATTRIBUTES;
  74467. # 7811 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74468. typedef struct _SET_DISK_ATTRIBUTES {
  74469.  
  74470.  
  74471.  
  74472.  
  74473.  
  74474.     DWORD Version;
  74475.  
  74476.  
  74477.  
  74478.  
  74479.  
  74480.  
  74481.     BOOLEAN Persist;
  74482.  
  74483.  
  74484.  
  74485.  
  74486.     BYTE Reserved1[3];
  74487.  
  74488.  
  74489.  
  74490.  
  74491.     DWORDLONG Attributes;
  74492.  
  74493.  
  74494.  
  74495.  
  74496.  
  74497.     DWORDLONG AttributesMask;
  74498.  
  74499.  
  74500.  
  74501.  
  74502.     DWORD Reserved2[4];
  74503.  
  74504. } SET_DISK_ATTRIBUTES, *PSET_DISK_ATTRIBUTES;
  74505. # 7860 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74506. #pragma endregion
  74507. # 7893 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74508. typedef enum _ELEMENT_TYPE {
  74509.     AllElements,
  74510.     ChangerTransport,
  74511.     ChangerSlot,
  74512.     ChangerIEPort,
  74513.     ChangerDrive,
  74514.     ChangerDoor,
  74515.     ChangerKeypad,
  74516.     ChangerMaxElement
  74517. } ELEMENT_TYPE, *PELEMENT_TYPE;
  74518.  
  74519. typedef struct _CHANGER_ELEMENT {
  74520.     ELEMENT_TYPE ElementType;
  74521.     DWORD ElementAddress;
  74522. } CHANGER_ELEMENT, *PCHANGER_ELEMENT;
  74523.  
  74524. typedef struct _CHANGER_ELEMENT_LIST {
  74525.     CHANGER_ELEMENT Element;
  74526.     DWORD NumberOfElements;
  74527. } CHANGER_ELEMENT_LIST , *PCHANGER_ELEMENT_LIST;
  74528. # 8003 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74529. typedef struct _GET_CHANGER_PARAMETERS {
  74530.  
  74531.  
  74532.  
  74533.  
  74534.  
  74535.     DWORD Size;
  74536.  
  74537.  
  74538.  
  74539.  
  74540.  
  74541.     WORD NumberTransportElements;
  74542.     WORD NumberStorageElements;
  74543.     WORD NumberCleanerSlots;
  74544.     WORD NumberIEElements;
  74545.     WORD NumberDataTransferElements;
  74546.  
  74547.  
  74548.  
  74549.  
  74550.  
  74551.     WORD NumberOfDoors;
  74552.  
  74553.  
  74554.  
  74555.  
  74556.  
  74557.  
  74558.     WORD FirstSlotNumber;
  74559.     WORD FirstDriveNumber;
  74560.     WORD FirstTransportNumber;
  74561.     WORD FirstIEPortNumber;
  74562.     WORD FirstCleanerSlotAddress;
  74563.  
  74564.  
  74565.  
  74566.  
  74567.  
  74568.     WORD MagazineSize;
  74569.  
  74570.  
  74571.  
  74572.  
  74573.  
  74574.  
  74575.     DWORD DriveCleanTimeout;
  74576.  
  74577.  
  74578.  
  74579.  
  74580.  
  74581.     DWORD Features0;
  74582.     DWORD Features1;
  74583.  
  74584.  
  74585.  
  74586.  
  74587.  
  74588.  
  74589.     BYTE MoveFromTransport;
  74590.     BYTE MoveFromSlot;
  74591.     BYTE MoveFromIePort;
  74592.     BYTE MoveFromDrive;
  74593.  
  74594.  
  74595.  
  74596.  
  74597.  
  74598.  
  74599.     BYTE ExchangeFromTransport;
  74600.     BYTE ExchangeFromSlot;
  74601.     BYTE ExchangeFromIePort;
  74602.     BYTE ExchangeFromDrive;
  74603.  
  74604.  
  74605.  
  74606.  
  74607.  
  74608.  
  74609.     BYTE LockUnlockCapabilities;
  74610.  
  74611.  
  74612.  
  74613.  
  74614.  
  74615.  
  74616.     BYTE PositionCapabilities;
  74617.  
  74618.  
  74619.  
  74620.  
  74621.  
  74622.     BYTE Reserved1[2];
  74623.     DWORD Reserved2[2];
  74624.  
  74625. } GET_CHANGER_PARAMETERS, * PGET_CHANGER_PARAMETERS;
  74626.  
  74627.  
  74628.  
  74629.  
  74630.  
  74631.  
  74632. typedef struct _CHANGER_PRODUCT_DATA {
  74633.  
  74634.  
  74635.  
  74636.  
  74637.  
  74638.     BYTE VendorId[8];
  74639.  
  74640.  
  74641.  
  74642.  
  74643.  
  74644.     BYTE ProductId[16];
  74645.  
  74646.  
  74647.  
  74648.  
  74649.  
  74650.     BYTE Revision[4];
  74651.  
  74652.  
  74653.  
  74654.  
  74655.  
  74656.  
  74657.     BYTE SerialNumber[32];
  74658.  
  74659.  
  74660.  
  74661.  
  74662.  
  74663.     BYTE DeviceType;
  74664.  
  74665. } CHANGER_PRODUCT_DATA, *PCHANGER_PRODUCT_DATA;
  74666. # 8151 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74667. typedef struct _CHANGER_SET_ACCESS {
  74668.  
  74669.  
  74670.  
  74671.  
  74672.  
  74673.     CHANGER_ELEMENT Element;
  74674.  
  74675.  
  74676.  
  74677.  
  74678.  
  74679.     DWORD Control;
  74680. } CHANGER_SET_ACCESS, *PCHANGER_SET_ACCESS;
  74681. # 8175 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74682. typedef struct _CHANGER_READ_ELEMENT_STATUS {
  74683.  
  74684.  
  74685.  
  74686.  
  74687.  
  74688.     CHANGER_ELEMENT_LIST ElementList;
  74689.  
  74690.  
  74691.  
  74692.  
  74693.  
  74694.     BOOLEAN VolumeTagInfo;
  74695. } CHANGER_READ_ELEMENT_STATUS, *PCHANGER_READ_ELEMENT_STATUS;
  74696.  
  74697.  
  74698.  
  74699.  
  74700.  
  74701. typedef struct _CHANGER_ELEMENT_STATUS {
  74702.  
  74703.  
  74704.  
  74705.  
  74706.  
  74707.     CHANGER_ELEMENT Element;
  74708.  
  74709.  
  74710.  
  74711.  
  74712.  
  74713.  
  74714.  
  74715.     CHANGER_ELEMENT SrcElementAddress;
  74716.  
  74717.  
  74718.  
  74719.  
  74720.  
  74721.     DWORD Flags;
  74722.  
  74723.  
  74724.  
  74725.  
  74726.  
  74727.     DWORD ExceptionCode;
  74728.  
  74729.  
  74730.  
  74731.  
  74732.  
  74733.  
  74734.     BYTE TargetId;
  74735.  
  74736.  
  74737.  
  74738.  
  74739.  
  74740.  
  74741.     BYTE Lun;
  74742.     WORD Reserved;
  74743.  
  74744.  
  74745.  
  74746.  
  74747.  
  74748.  
  74749.     BYTE PrimaryVolumeID[36];
  74750.  
  74751.  
  74752.  
  74753.  
  74754.  
  74755.  
  74756.  
  74757.     BYTE AlternateVolumeID[36];
  74758.  
  74759. } CHANGER_ELEMENT_STATUS, *PCHANGER_ELEMENT_STATUS;
  74760.  
  74761.  
  74762.  
  74763.  
  74764.  
  74765.  
  74766.  
  74767. typedef struct _CHANGER_ELEMENT_STATUS_EX {
  74768.  
  74769.  
  74770.  
  74771.  
  74772.  
  74773.     CHANGER_ELEMENT Element;
  74774.  
  74775.  
  74776.  
  74777.  
  74778.  
  74779.  
  74780.  
  74781.     CHANGER_ELEMENT SrcElementAddress;
  74782.  
  74783.  
  74784.  
  74785.  
  74786.  
  74787.     DWORD Flags;
  74788.  
  74789.  
  74790.  
  74791.  
  74792.  
  74793.     DWORD ExceptionCode;
  74794.  
  74795.  
  74796.  
  74797.  
  74798.  
  74799.  
  74800.     BYTE TargetId;
  74801.  
  74802.  
  74803.  
  74804.  
  74805.  
  74806.  
  74807.     BYTE Lun;
  74808.     WORD Reserved;
  74809.  
  74810.  
  74811.  
  74812.  
  74813.  
  74814.  
  74815.     BYTE PrimaryVolumeID[36];
  74816.  
  74817.  
  74818.  
  74819.  
  74820.  
  74821.  
  74822.  
  74823.     BYTE AlternateVolumeID[36];
  74824.  
  74825.  
  74826.  
  74827.  
  74828.     BYTE VendorIdentification[8];
  74829.  
  74830.  
  74831.  
  74832.  
  74833.     BYTE ProductIdentification[16];
  74834.  
  74835.  
  74836.  
  74837.  
  74838.     BYTE SerialNumber[32];
  74839.  
  74840. } CHANGER_ELEMENT_STATUS_EX, *PCHANGER_ELEMENT_STATUS_EX;
  74841. # 8374 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74842. typedef struct _CHANGER_INITIALIZE_ELEMENT_STATUS {
  74843.  
  74844.  
  74845.  
  74846.  
  74847.  
  74848.     CHANGER_ELEMENT_LIST ElementList;
  74849.  
  74850.  
  74851.  
  74852.  
  74853.  
  74854.  
  74855.     BOOLEAN BarCodeScan;
  74856. } CHANGER_INITIALIZE_ELEMENT_STATUS, *PCHANGER_INITIALIZE_ELEMENT_STATUS;
  74857.  
  74858.  
  74859.  
  74860.  
  74861.  
  74862.  
  74863. typedef struct _CHANGER_SET_POSITION {
  74864.  
  74865.  
  74866.  
  74867.  
  74868.  
  74869.  
  74870.     CHANGER_ELEMENT Transport;
  74871.  
  74872.  
  74873.  
  74874.  
  74875.  
  74876.     CHANGER_ELEMENT Destination;
  74877.  
  74878.  
  74879.  
  74880.  
  74881.  
  74882.     BOOLEAN Flip;
  74883. } CHANGER_SET_POSITION, *PCHANGER_SET_POSITION;
  74884.  
  74885.  
  74886.  
  74887.  
  74888.  
  74889.  
  74890. typedef struct _CHANGER_EXCHANGE_MEDIUM {
  74891.  
  74892.  
  74893.  
  74894.  
  74895.  
  74896.     CHANGER_ELEMENT Transport;
  74897.  
  74898.  
  74899.  
  74900.  
  74901.  
  74902.     CHANGER_ELEMENT Source;
  74903.  
  74904.  
  74905.  
  74906.  
  74907.  
  74908.     CHANGER_ELEMENT Destination1;
  74909.  
  74910.  
  74911.  
  74912.  
  74913.  
  74914.     CHANGER_ELEMENT Destination2;
  74915.  
  74916.  
  74917.  
  74918.  
  74919.  
  74920.     BOOLEAN Flip1;
  74921.     BOOLEAN Flip2;
  74922. } CHANGER_EXCHANGE_MEDIUM, *PCHANGER_EXCHANGE_MEDIUM;
  74923.  
  74924.  
  74925.  
  74926.  
  74927.  
  74928.  
  74929. typedef struct _CHANGER_MOVE_MEDIUM {
  74930.  
  74931.  
  74932.  
  74933.  
  74934.  
  74935.     CHANGER_ELEMENT Transport;
  74936.  
  74937.  
  74938.  
  74939.  
  74940.  
  74941.     CHANGER_ELEMENT Source;
  74942.  
  74943.  
  74944.  
  74945.  
  74946.  
  74947.     CHANGER_ELEMENT Destination;
  74948.  
  74949.  
  74950.  
  74951.  
  74952.  
  74953.     BOOLEAN Flip;
  74954. } CHANGER_MOVE_MEDIUM, *PCHANGER_MOVE_MEDIUM;
  74955. # 8498 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74956. typedef struct _CHANGER_SEND_VOLUME_TAG_INFORMATION {
  74957.  
  74958.  
  74959.  
  74960.  
  74961.  
  74962.     CHANGER_ELEMENT StartingElement;
  74963.  
  74964.  
  74965.  
  74966.  
  74967.  
  74968.     DWORD ActionCode;
  74969.  
  74970.  
  74971.  
  74972.  
  74973.  
  74974.     BYTE VolumeIDTemplate[40];
  74975. } CHANGER_SEND_VOLUME_TAG_INFORMATION, *PCHANGER_SEND_VOLUME_TAG_INFORMATION;
  74976.  
  74977.  
  74978.  
  74979.  
  74980.  
  74981.  
  74982. typedef struct _READ_ELEMENT_ADDRESS_INFO {
  74983.  
  74984.  
  74985.  
  74986.  
  74987.  
  74988.     DWORD NumberOfElements;
  74989.  
  74990.  
  74991.  
  74992.  
  74993.  
  74994.  
  74995.     CHANGER_ELEMENT_STATUS ElementStatus[1];
  74996. } READ_ELEMENT_ADDRESS_INFO, *PREAD_ELEMENT_ADDRESS_INFO;
  74997. # 8565 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  74998. typedef enum _CHANGER_DEVICE_PROBLEM_TYPE {
  74999.    DeviceProblemNone,
  75000.    DeviceProblemHardware,
  75001.    DeviceProblemCHMError,
  75002.    DeviceProblemDoorOpen,
  75003.    DeviceProblemCalibrationError,
  75004.    DeviceProblemTargetFailure,
  75005.    DeviceProblemCHMMoveError,
  75006.    DeviceProblemCHMZeroError,
  75007.    DeviceProblemCartridgeInsertError,
  75008.    DeviceProblemPositionError,
  75009.    DeviceProblemSensorError,
  75010.    DeviceProblemCartridgeEjectError,
  75011.    DeviceProblemGripperError,
  75012.    DeviceProblemDriveError
  75013. } CHANGER_DEVICE_PROBLEM_TYPE, *PCHANGER_DEVICE_PROBLEM_TYPE;
  75014. # 9002 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75015. typedef struct _PATHNAME_BUFFER {
  75016.  
  75017.     DWORD PathNameLength;
  75018.     WCHAR Name[1];
  75019.  
  75020. } PATHNAME_BUFFER, *PPATHNAME_BUFFER;
  75021.  
  75022.  
  75023.  
  75024.  
  75025.  
  75026.  
  75027.  
  75028. typedef struct _FSCTL_QUERY_FAT_BPB_BUFFER {
  75029.  
  75030.     BYTE First0x24BytesOfBootSector[0x24];
  75031.  
  75032. } FSCTL_QUERY_FAT_BPB_BUFFER, *PFSCTL_QUERY_FAT_BPB_BUFFER;
  75033. # 9032 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75034. typedef struct {
  75035.  
  75036.     LARGE_INTEGER VolumeSerialNumber;
  75037.     LARGE_INTEGER NumberSectors;
  75038.     LARGE_INTEGER TotalClusters;
  75039.     LARGE_INTEGER FreeClusters;
  75040.     LARGE_INTEGER TotalReserved;
  75041.     DWORD BytesPerSector;
  75042.     DWORD BytesPerCluster;
  75043.     DWORD BytesPerFileRecordSegment;
  75044.     DWORD ClustersPerFileRecordSegment;
  75045.     LARGE_INTEGER MftValidDataLength;
  75046.     LARGE_INTEGER MftStartLcn;
  75047.     LARGE_INTEGER Mft2StartLcn;
  75048.     LARGE_INTEGER MftZoneStart;
  75049.     LARGE_INTEGER MftZoneEnd;
  75050.  
  75051. } NTFS_VOLUME_DATA_BUFFER, *PNTFS_VOLUME_DATA_BUFFER;
  75052.  
  75053. typedef struct {
  75054.  
  75055.     DWORD ByteCount;
  75056.  
  75057.     WORD MajorVersion;
  75058.     WORD MinorVersion;
  75059.  
  75060.     DWORD BytesPerPhysicalSector;
  75061.  
  75062.     WORD LfsMajorVersion;
  75063.     WORD LfsMinorVersion;
  75064.  
  75065.  
  75066.     DWORD MaxDeviceTrimExtentCount;
  75067.     DWORD MaxDeviceTrimByteCount;
  75068.  
  75069.     DWORD MaxVolumeTrimExtentCount;
  75070.     DWORD MaxVolumeTrimByteCount;
  75071.  
  75072.  
  75073. } NTFS_EXTENDED_VOLUME_DATA, *PNTFS_EXTENDED_VOLUME_DATA;
  75074. # 9083 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75075. typedef struct {
  75076.  
  75077.     DWORD ByteCount;
  75078.     DWORD MajorVersion;
  75079.     DWORD MinorVersion;
  75080.  
  75081.     DWORD BytesPerPhysicalSector;
  75082.  
  75083.     LARGE_INTEGER VolumeSerialNumber;
  75084.     LARGE_INTEGER NumberSectors;
  75085.     LARGE_INTEGER TotalClusters;
  75086.     LARGE_INTEGER FreeClusters;
  75087.     LARGE_INTEGER TotalReserved;
  75088.     DWORD BytesPerSector;
  75089.     DWORD BytesPerCluster;
  75090.     LARGE_INTEGER MaximumSizeOfResidentFile;
  75091.  
  75092.     LARGE_INTEGER Reserved[10];
  75093.  
  75094. } REFS_VOLUME_DATA_BUFFER, *PREFS_VOLUME_DATA_BUFFER;
  75095. # 9114 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75096. typedef struct {
  75097.  
  75098.     LARGE_INTEGER StartingLcn;
  75099.  
  75100. } STARTING_LCN_INPUT_BUFFER, *PSTARTING_LCN_INPUT_BUFFER;
  75101.  
  75102.  
  75103.  
  75104.  
  75105.  
  75106. typedef struct {
  75107.  
  75108.     LARGE_INTEGER StartingLcn;
  75109.     DWORD Flags;
  75110.  
  75111. } STARTING_LCN_INPUT_BUFFER_EX, *PSTARTING_LCN_INPUT_BUFFER_EX;
  75112.  
  75113.  
  75114.  
  75115. typedef struct {
  75116.  
  75117.     LARGE_INTEGER StartingLcn;
  75118.     LARGE_INTEGER BitmapSize;
  75119.     BYTE Buffer[1];
  75120.  
  75121. } VOLUME_BITMAP_BUFFER, *PVOLUME_BITMAP_BUFFER;
  75122. # 9149 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75123. typedef struct {
  75124.  
  75125.     LARGE_INTEGER StartingVcn;
  75126.  
  75127. } STARTING_VCN_INPUT_BUFFER, *PSTARTING_VCN_INPUT_BUFFER;
  75128.  
  75129. typedef struct RETRIEVAL_POINTERS_BUFFER {
  75130.  
  75131.     DWORD ExtentCount;
  75132.     LARGE_INTEGER StartingVcn;
  75133.     struct {
  75134.         LARGE_INTEGER NextVcn;
  75135.         LARGE_INTEGER Lcn;
  75136.     } Extents[1];
  75137.  
  75138. } RETRIEVAL_POINTERS_BUFFER, *PRETRIEVAL_POINTERS_BUFFER;
  75139. # 9178 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75140. typedef struct RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER {
  75141.  
  75142.     DWORD ExtentCount;
  75143.     LARGE_INTEGER StartingVcn;
  75144.     struct {
  75145.         LARGE_INTEGER NextVcn;
  75146.         LARGE_INTEGER Lcn;
  75147.         DWORD ReferenceCount;
  75148.     } Extents[1];
  75149.  
  75150. } RETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER, *PRETRIEVAL_POINTERS_AND_REFCOUNT_BUFFER;
  75151. # 9198 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75152. typedef struct {
  75153.  
  75154.     LARGE_INTEGER FileReferenceNumber;
  75155.  
  75156. } NTFS_FILE_RECORD_INPUT_BUFFER, *PNTFS_FILE_RECORD_INPUT_BUFFER;
  75157.  
  75158. typedef struct {
  75159.  
  75160.     LARGE_INTEGER FileReferenceNumber;
  75161.     DWORD FileRecordLength;
  75162.     BYTE FileRecordBuffer[1];
  75163.  
  75164. } NTFS_FILE_RECORD_OUTPUT_BUFFER, *PNTFS_FILE_RECORD_OUTPUT_BUFFER;
  75165. # 9220 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75166. typedef struct {
  75167.  
  75168.     HANDLE FileHandle;
  75169.     LARGE_INTEGER StartingVcn;
  75170.     LARGE_INTEGER StartingLcn;
  75171.     DWORD ClusterCount;
  75172.  
  75173. } MOVE_FILE_DATA, *PMOVE_FILE_DATA;
  75174.  
  75175. typedef struct {
  75176.  
  75177.     HANDLE FileHandle;
  75178.     LARGE_INTEGER SourceFileRecord;
  75179.     LARGE_INTEGER TargetFileRecord;
  75180.  
  75181. } MOVE_FILE_RECORD_DATA, *PMOVE_FILE_RECORD_DATA;
  75182. # 9261 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75183. typedef struct {
  75184.     DWORD Restart;
  75185.     SID Sid;
  75186. } FIND_BY_SID_DATA, *PFIND_BY_SID_DATA;
  75187.  
  75188. typedef struct {
  75189.     DWORD NextEntryOffset;
  75190.     DWORD FileIndex;
  75191.     DWORD FileNameLength;
  75192.     WCHAR FileName[1];
  75193. } FIND_BY_SID_OUTPUT, *PFIND_BY_SID_OUTPUT;
  75194. # 9286 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75195. typedef struct {
  75196.  
  75197.     DWORDLONG StartFileReferenceNumber;
  75198.     USN LowUsn;
  75199.     USN HighUsn;
  75200.  
  75201. } MFT_ENUM_DATA_V0, *PMFT_ENUM_DATA_V0;
  75202.  
  75203. typedef struct {
  75204.  
  75205.     DWORDLONG StartFileReferenceNumber;
  75206.     USN LowUsn;
  75207.     USN HighUsn;
  75208.     WORD MinMajorVersion;
  75209.     WORD MaxMajorVersion;
  75210.  
  75211. } MFT_ENUM_DATA_V1, *PMFT_ENUM_DATA_V1;
  75212.  
  75213.  
  75214. typedef MFT_ENUM_DATA_V1 MFT_ENUM_DATA, *PMFT_ENUM_DATA;
  75215. # 9316 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75216. typedef struct {
  75217.  
  75218.     DWORDLONG MaximumSize;
  75219.     DWORDLONG AllocationDelta;
  75220.  
  75221. } CREATE_USN_JOURNAL_DATA, *PCREATE_USN_JOURNAL_DATA;
  75222. # 9335 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75223. typedef struct {
  75224.  
  75225.     WORD MinMajorVersion;
  75226.     WORD MaxMajorVersion;
  75227.  
  75228. } READ_FILE_USN_DATA, *PREAD_FILE_USN_DATA;
  75229. # 9349 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75230. typedef struct {
  75231.  
  75232.     USN StartUsn;
  75233.     DWORD ReasonMask;
  75234.     DWORD ReturnOnlyOnClose;
  75235.     DWORDLONG Timeout;
  75236.     DWORDLONG BytesToWaitFor;
  75237.     DWORDLONG UsnJournalID;
  75238.  
  75239. } READ_USN_JOURNAL_DATA_V0, *PREAD_USN_JOURNAL_DATA_V0;
  75240.  
  75241. typedef struct {
  75242.  
  75243.     USN StartUsn;
  75244.     DWORD ReasonMask;
  75245.     DWORD ReturnOnlyOnClose;
  75246.     DWORDLONG Timeout;
  75247.     DWORDLONG BytesToWaitFor;
  75248.     DWORDLONG UsnJournalID;
  75249.     WORD MinMajorVersion;
  75250.     WORD MaxMajorVersion;
  75251.  
  75252. } READ_USN_JOURNAL_DATA_V1, *PREAD_USN_JOURNAL_DATA_V1;
  75253.  
  75254.  
  75255. typedef READ_USN_JOURNAL_DATA_V1 READ_USN_JOURNAL_DATA, *PREAD_USN_JOURNAL_DATA;
  75256. # 9385 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75257. typedef struct {
  75258.     DWORD Flags;
  75259.     DWORD Unused;
  75260.     DWORDLONG ChunkSize;
  75261.     LONGLONG FileSizeThreshold;
  75262. } USN_TRACK_MODIFIED_RANGES, *PUSN_TRACK_MODIFIED_RANGES;
  75263.  
  75264. typedef struct {
  75265.     USN Usn;
  75266. } USN_RANGE_TRACK_OUTPUT, *PUSN_RANGE_TRACK_OUTPUT;
  75267. # 9418 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75268. typedef struct {
  75269.  
  75270.     DWORD RecordLength;
  75271.     WORD MajorVersion;
  75272.     WORD MinorVersion;
  75273.     DWORDLONG FileReferenceNumber;
  75274.     DWORDLONG ParentFileReferenceNumber;
  75275.     USN Usn;
  75276.     LARGE_INTEGER TimeStamp;
  75277.     DWORD Reason;
  75278.     DWORD SourceInfo;
  75279.     DWORD SecurityId;
  75280.     DWORD FileAttributes;
  75281.     WORD FileNameLength;
  75282.     WORD FileNameOffset;
  75283.     WCHAR FileName[1];
  75284.  
  75285. } USN_RECORD_V2, *PUSN_RECORD_V2;
  75286.  
  75287. typedef struct {
  75288.  
  75289.     DWORD RecordLength;
  75290.     WORD MajorVersion;
  75291.     WORD MinorVersion;
  75292.     FILE_ID_128 FileReferenceNumber;
  75293.     FILE_ID_128 ParentFileReferenceNumber;
  75294.     USN Usn;
  75295.     LARGE_INTEGER TimeStamp;
  75296.     DWORD Reason;
  75297.     DWORD SourceInfo;
  75298.     DWORD SecurityId;
  75299.     DWORD FileAttributes;
  75300.     WORD FileNameLength;
  75301.     WORD FileNameOffset;
  75302.     WCHAR FileName[1];
  75303.  
  75304. } USN_RECORD_V3, *PUSN_RECORD_V3;
  75305.  
  75306. typedef USN_RECORD_V2 USN_RECORD, *PUSN_RECORD;
  75307.  
  75308. typedef struct {
  75309.     DWORD RecordLength;
  75310.     WORD MajorVersion;
  75311.     WORD MinorVersion;
  75312. } USN_RECORD_COMMON_HEADER, *PUSN_RECORD_COMMON_HEADER;
  75313.  
  75314. typedef struct {
  75315.     LONGLONG Offset;
  75316.     LONGLONG Length;
  75317. } USN_RECORD_EXTENT, *PUSN_RECORD_EXTENT;
  75318.  
  75319. typedef struct {
  75320.     USN_RECORD_COMMON_HEADER Header;
  75321.     FILE_ID_128 FileReferenceNumber;
  75322.     FILE_ID_128 ParentFileReferenceNumber;
  75323.     USN Usn;
  75324.     DWORD Reason;
  75325.     DWORD SourceInfo;
  75326.     DWORD RemainingExtents;
  75327.     WORD NumberOfExtents;
  75328.     WORD ExtentSize;
  75329.     USN_RECORD_EXTENT Extents[1];
  75330. } USN_RECORD_V4, *PUSN_RECORD_V4;
  75331.  
  75332. typedef union {
  75333.     USN_RECORD_COMMON_HEADER Header;
  75334.     USN_RECORD_V2 V2;
  75335.     USN_RECORD_V3 V3;
  75336.     USN_RECORD_V4 V4;
  75337. } USN_RECORD_UNION, *PUSN_RECORD_UNION;
  75338. # 9522 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75339. typedef struct {
  75340.  
  75341.     DWORDLONG UsnJournalID;
  75342.     USN FirstUsn;
  75343.     USN NextUsn;
  75344.     USN LowestValidUsn;
  75345.     USN MaxUsn;
  75346.     DWORDLONG MaximumSize;
  75347.     DWORDLONG AllocationDelta;
  75348.  
  75349. } USN_JOURNAL_DATA_V0, *PUSN_JOURNAL_DATA_V0;
  75350.  
  75351. typedef struct {
  75352.  
  75353.     DWORDLONG UsnJournalID;
  75354.     USN FirstUsn;
  75355.     USN NextUsn;
  75356.     USN LowestValidUsn;
  75357.     USN MaxUsn;
  75358.     DWORDLONG MaximumSize;
  75359.     DWORDLONG AllocationDelta;
  75360.     WORD MinSupportedMajorVersion;
  75361.     WORD MaxSupportedMajorVersion;
  75362.  
  75363. } USN_JOURNAL_DATA_V1, *PUSN_JOURNAL_DATA_V1;
  75364.  
  75365. typedef struct {
  75366.  
  75367.     DWORDLONG UsnJournalID;
  75368.     USN FirstUsn;
  75369.     USN NextUsn;
  75370.     USN LowestValidUsn;
  75371.     USN MaxUsn;
  75372.     DWORDLONG MaximumSize;
  75373.     DWORDLONG AllocationDelta;
  75374.     WORD MinSupportedMajorVersion;
  75375.     WORD MaxSupportedMajorVersion;
  75376.     DWORD Flags;
  75377.     DWORDLONG RangeTrackChunkSize;
  75378.     LONGLONG RangeTrackFileSizeThreshold;
  75379.  
  75380. } USN_JOURNAL_DATA_V2, *PUSN_JOURNAL_DATA_V2;
  75381.  
  75382.  
  75383.  
  75384. typedef USN_JOURNAL_DATA_V1 USN_JOURNAL_DATA, *PUSN_JOURNAL_DATA;
  75385. # 9578 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75386. typedef struct {
  75387.  
  75388.     DWORDLONG UsnJournalID;
  75389.     DWORD DeleteFlags;
  75390.  
  75391. } DELETE_USN_JOURNAL_DATA, *PDELETE_USN_JOURNAL_DATA;
  75392. # 9599 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75393. #pragma warning(disable: 4201)
  75394.  
  75395. typedef struct {
  75396.  
  75397.  
  75398.     union {
  75399.         DWORD UsnSourceInfo;
  75400.         DWORD CopyNumber;
  75401.     } ;
  75402.  
  75403.  
  75404.  
  75405.  
  75406.     HANDLE VolumeHandle;
  75407.     DWORD HandleInfo;
  75408.  
  75409. } MARK_HANDLE_INFO, *PMARK_HANDLE_INFO;
  75410. # 9641 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75411. #pragma warning(default: 4201)
  75412. # 9755 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75413. typedef struct {
  75414.  
  75415.     ACCESS_MASK DesiredAccess;
  75416.     DWORD SecurityIds[1];
  75417.  
  75418. } BULK_SECURITY_TEST_DATA, *PBULK_SECURITY_TEST_DATA;
  75419. # 9780 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75420. typedef struct _FILE_PREFETCH {
  75421.     DWORD Type;
  75422.     DWORD Count;
  75423.     DWORDLONG Prefetch[1];
  75424. } FILE_PREFETCH, *PFILE_PREFETCH;
  75425.  
  75426. typedef struct _FILE_PREFETCH_EX {
  75427.     DWORD Type;
  75428.     DWORD Count;
  75429.     PVOID Context;
  75430.     DWORDLONG Prefetch[1];
  75431. } FILE_PREFETCH_EX, *PFILE_PREFETCH_EX;
  75432. # 9810 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75433. typedef struct _FILESYSTEM_STATISTICS {
  75434.  
  75435.     WORD FileSystemType;
  75436.     WORD Version;
  75437.  
  75438.     DWORD SizeOfCompleteStructure;
  75439.  
  75440.     DWORD UserFileReads;
  75441.     DWORD UserFileReadBytes;
  75442.     DWORD UserDiskReads;
  75443.     DWORD UserFileWrites;
  75444.     DWORD UserFileWriteBytes;
  75445.     DWORD UserDiskWrites;
  75446.  
  75447.     DWORD MetaDataReads;
  75448.     DWORD MetaDataReadBytes;
  75449.     DWORD MetaDataDiskReads;
  75450.     DWORD MetaDataWrites;
  75451.     DWORD MetaDataWriteBytes;
  75452.     DWORD MetaDataDiskWrites;
  75453.  
  75454.  
  75455.  
  75456.  
  75457.  
  75458. } FILESYSTEM_STATISTICS, *PFILESYSTEM_STATISTICS;
  75459. # 9848 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75460. typedef struct _FAT_STATISTICS {
  75461.     DWORD CreateHits;
  75462.     DWORD SuccessfulCreates;
  75463.     DWORD FailedCreates;
  75464.  
  75465.     DWORD NonCachedReads;
  75466.     DWORD NonCachedReadBytes;
  75467.     DWORD NonCachedWrites;
  75468.     DWORD NonCachedWriteBytes;
  75469.  
  75470.     DWORD NonCachedDiskReads;
  75471.     DWORD NonCachedDiskWrites;
  75472. } FAT_STATISTICS, *PFAT_STATISTICS;
  75473.  
  75474. typedef struct _EXFAT_STATISTICS {
  75475.     DWORD CreateHits;
  75476.     DWORD SuccessfulCreates;
  75477.     DWORD FailedCreates;
  75478.  
  75479.     DWORD NonCachedReads;
  75480.     DWORD NonCachedReadBytes;
  75481.     DWORD NonCachedWrites;
  75482.     DWORD NonCachedWriteBytes;
  75483.  
  75484.     DWORD NonCachedDiskReads;
  75485.     DWORD NonCachedDiskWrites;
  75486. } EXFAT_STATISTICS, *PEXFAT_STATISTICS;
  75487.  
  75488. typedef struct _NTFS_STATISTICS {
  75489.  
  75490.     DWORD LogFileFullExceptions;
  75491.     DWORD OtherExceptions;
  75492.  
  75493.  
  75494.  
  75495.  
  75496.  
  75497.     DWORD MftReads;
  75498.     DWORD MftReadBytes;
  75499.     DWORD MftWrites;
  75500.     DWORD MftWriteBytes;
  75501.     struct {
  75502.         WORD Write;
  75503.         WORD Create;
  75504.         WORD SetInfo;
  75505.         WORD Flush;
  75506.     } MftWritesUserLevel;
  75507.  
  75508.     WORD MftWritesFlushForLogFileFull;
  75509.     WORD MftWritesLazyWriter;
  75510.     WORD MftWritesUserRequest;
  75511.  
  75512.     DWORD Mft2Writes;
  75513.     DWORD Mft2WriteBytes;
  75514.     struct {
  75515.         WORD Write;
  75516.         WORD Create;
  75517.         WORD SetInfo;
  75518.         WORD Flush;
  75519.     } Mft2WritesUserLevel;
  75520.  
  75521.     WORD Mft2WritesFlushForLogFileFull;
  75522.     WORD Mft2WritesLazyWriter;
  75523.     WORD Mft2WritesUserRequest;
  75524.  
  75525.     DWORD RootIndexReads;
  75526.     DWORD RootIndexReadBytes;
  75527.     DWORD RootIndexWrites;
  75528.     DWORD RootIndexWriteBytes;
  75529.  
  75530.     DWORD BitmapReads;
  75531.     DWORD BitmapReadBytes;
  75532.     DWORD BitmapWrites;
  75533.     DWORD BitmapWriteBytes;
  75534.  
  75535.     WORD BitmapWritesFlushForLogFileFull;
  75536.     WORD BitmapWritesLazyWriter;
  75537.     WORD BitmapWritesUserRequest;
  75538.  
  75539.     struct {
  75540.         WORD Write;
  75541.         WORD Create;
  75542.         WORD SetInfo;
  75543.     } BitmapWritesUserLevel;
  75544.  
  75545.     DWORD MftBitmapReads;
  75546.     DWORD MftBitmapReadBytes;
  75547.     DWORD MftBitmapWrites;
  75548.     DWORD MftBitmapWriteBytes;
  75549.  
  75550.     WORD MftBitmapWritesFlushForLogFileFull;
  75551.     WORD MftBitmapWritesLazyWriter;
  75552.     WORD MftBitmapWritesUserRequest;
  75553.  
  75554.     struct {
  75555.         WORD Write;
  75556.         WORD Create;
  75557.         WORD SetInfo;
  75558.         WORD Flush;
  75559.     } MftBitmapWritesUserLevel;
  75560.  
  75561.     DWORD UserIndexReads;
  75562.     DWORD UserIndexReadBytes;
  75563.     DWORD UserIndexWrites;
  75564.     DWORD UserIndexWriteBytes;
  75565.  
  75566.  
  75567.  
  75568.  
  75569.  
  75570.     DWORD LogFileReads;
  75571.     DWORD LogFileReadBytes;
  75572.     DWORD LogFileWrites;
  75573.     DWORD LogFileWriteBytes;
  75574.  
  75575.     struct {
  75576.         DWORD Calls;
  75577.         DWORD Clusters;
  75578.         DWORD Hints;
  75579.  
  75580.         DWORD RunsReturned;
  75581.  
  75582.         DWORD HintsHonored;
  75583.         DWORD HintsClusters;
  75584.         DWORD Cache;
  75585.         DWORD CacheClusters;
  75586.         DWORD CacheMiss;
  75587.         DWORD CacheMissClusters;
  75588.     } Allocate;
  75589.  
  75590.  
  75591.  
  75592.  
  75593.  
  75594.     DWORD DiskResourcesExhausted;
  75595.  
  75596.  
  75597.  
  75598.  
  75599.  
  75600. } NTFS_STATISTICS, *PNTFS_STATISTICS;
  75601.  
  75602. typedef struct _FILESYSTEM_STATISTICS_EX {
  75603.  
  75604.     WORD FileSystemType;
  75605.     WORD Version;
  75606.  
  75607.     DWORD SizeOfCompleteStructure;
  75608.  
  75609.     DWORDLONG UserFileReads;
  75610.     DWORDLONG UserFileReadBytes;
  75611.     DWORDLONG UserDiskReads;
  75612.     DWORDLONG UserFileWrites;
  75613.     DWORDLONG UserFileWriteBytes;
  75614.     DWORDLONG UserDiskWrites;
  75615.  
  75616.     DWORDLONG MetaDataReads;
  75617.     DWORDLONG MetaDataReadBytes;
  75618.     DWORDLONG MetaDataDiskReads;
  75619.     DWORDLONG MetaDataWrites;
  75620.     DWORDLONG MetaDataWriteBytes;
  75621.     DWORDLONG MetaDataDiskWrites;
  75622.  
  75623.  
  75624.  
  75625.  
  75626.  
  75627. } FILESYSTEM_STATISTICS_EX, *PFILESYSTEM_STATISTICS_EX;
  75628.  
  75629. typedef struct _NTFS_STATISTICS_EX {
  75630.  
  75631.     DWORD LogFileFullExceptions;
  75632.     DWORD OtherExceptions;
  75633.  
  75634.  
  75635.  
  75636.  
  75637.  
  75638.     DWORDLONG MftReads;
  75639.     DWORDLONG MftReadBytes;
  75640.     DWORDLONG MftWrites;
  75641.     DWORDLONG MftWriteBytes;
  75642.     struct {
  75643.         DWORD Write;
  75644.         DWORD Create;
  75645.         DWORD SetInfo;
  75646.         DWORD Flush;
  75647.     } MftWritesUserLevel;
  75648.  
  75649.     DWORD MftWritesFlushForLogFileFull;
  75650.     DWORD MftWritesLazyWriter;
  75651.     DWORD MftWritesUserRequest;
  75652.  
  75653.     DWORDLONG Mft2Writes;
  75654.     DWORDLONG Mft2WriteBytes;
  75655.     struct {
  75656.         DWORD Write;
  75657.         DWORD Create;
  75658.         DWORD SetInfo;
  75659.         DWORD Flush;
  75660.     } Mft2WritesUserLevel;
  75661.  
  75662.     DWORD Mft2WritesFlushForLogFileFull;
  75663.     DWORD Mft2WritesLazyWriter;
  75664.     DWORD Mft2WritesUserRequest;
  75665.  
  75666.     DWORDLONG RootIndexReads;
  75667.     DWORDLONG RootIndexReadBytes;
  75668.     DWORDLONG RootIndexWrites;
  75669.     DWORDLONG RootIndexWriteBytes;
  75670.  
  75671.     DWORDLONG BitmapReads;
  75672.     DWORDLONG BitmapReadBytes;
  75673.     DWORDLONG BitmapWrites;
  75674.     DWORDLONG BitmapWriteBytes;
  75675.  
  75676.     DWORD BitmapWritesFlushForLogFileFull;
  75677.     DWORD BitmapWritesLazyWriter;
  75678.     DWORD BitmapWritesUserRequest;
  75679.  
  75680.     struct {
  75681.         DWORD Write;
  75682.         DWORD Create;
  75683.         DWORD SetInfo;
  75684.         DWORD Flush;
  75685.     } BitmapWritesUserLevel;
  75686.  
  75687.     DWORDLONG MftBitmapReads;
  75688.     DWORDLONG MftBitmapReadBytes;
  75689.     DWORDLONG MftBitmapWrites;
  75690.     DWORDLONG MftBitmapWriteBytes;
  75691.  
  75692.     DWORD MftBitmapWritesFlushForLogFileFull;
  75693.     DWORD MftBitmapWritesLazyWriter;
  75694.     DWORD MftBitmapWritesUserRequest;
  75695.  
  75696.     struct {
  75697.         DWORD Write;
  75698.         DWORD Create;
  75699.         DWORD SetInfo;
  75700.         DWORD Flush;
  75701.     } MftBitmapWritesUserLevel;
  75702.  
  75703.     DWORDLONG UserIndexReads;
  75704.     DWORDLONG UserIndexReadBytes;
  75705.     DWORDLONG UserIndexWrites;
  75706.     DWORDLONG UserIndexWriteBytes;
  75707.  
  75708.  
  75709.  
  75710.  
  75711.  
  75712.     DWORDLONG LogFileReads;
  75713.     DWORDLONG LogFileReadBytes;
  75714.     DWORDLONG LogFileWrites;
  75715.     DWORDLONG LogFileWriteBytes;
  75716.  
  75717.     struct {
  75718.         DWORD Calls;
  75719.         DWORD RunsReturned;
  75720.         DWORD Hints;
  75721.         DWORD HintsHonored;
  75722.         DWORD Cache;
  75723.         DWORD CacheMiss;
  75724.  
  75725.         DWORDLONG Clusters;
  75726.         DWORDLONG HintsClusters;
  75727.         DWORDLONG CacheClusters;
  75728.         DWORDLONG CacheMissClusters;
  75729.     } Allocate;
  75730.  
  75731.  
  75732.  
  75733.  
  75734.  
  75735.     DWORD DiskResourcesExhausted;
  75736.  
  75737.  
  75738.  
  75739.  
  75740.  
  75741.     DWORDLONG VolumeTrimCount;
  75742.     DWORDLONG VolumeTrimTime;
  75743.     DWORDLONG VolumeTrimByteCount;
  75744.  
  75745.     DWORDLONG FileLevelTrimCount;
  75746.     DWORDLONG FileLevelTrimTime;
  75747.     DWORDLONG FileLevelTrimByteCount;
  75748.  
  75749.     DWORDLONG VolumeTrimSkippedCount;
  75750.     DWORDLONG VolumeTrimSkippedByteCount;
  75751.  
  75752.  
  75753.  
  75754.  
  75755.  
  75756.     DWORDLONG NtfsFillStatInfoFromMftRecordCalledCount;
  75757.     DWORDLONG NtfsFillStatInfoFromMftRecordBailedBecauseOfAttributeListCount;
  75758.     DWORDLONG NtfsFillStatInfoFromMftRecordBailedBecauseOfNonResReparsePointCount;
  75759.  
  75760. } NTFS_STATISTICS_EX, *PNTFS_STATISTICS_EX;
  75761. # 10163 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75762. #pragma warning(disable: 4201)
  75763.  
  75764. typedef struct _FILE_OBJECTID_BUFFER {
  75765.  
  75766.  
  75767.  
  75768.  
  75769.  
  75770.     BYTE ObjectId[16];
  75771.  
  75772.  
  75773.  
  75774.  
  75775.  
  75776.  
  75777.     union {
  75778.         struct {
  75779.             BYTE BirthVolumeId[16];
  75780.             BYTE BirthObjectId[16];
  75781.             BYTE DomainId[16];
  75782.         } ;
  75783.         BYTE ExtendedInfo[48];
  75784.     } ;
  75785.  
  75786. } FILE_OBJECTID_BUFFER, *PFILE_OBJECTID_BUFFER;
  75787.  
  75788.  
  75789.  
  75790.  
  75791. #pragma warning(default: 4201)
  75792. # 10205 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75793. typedef struct _FILE_SET_SPARSE_BUFFER {
  75794.     BOOLEAN SetSparse;
  75795. } FILE_SET_SPARSE_BUFFER, *PFILE_SET_SPARSE_BUFFER;
  75796. # 10220 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75797. typedef struct _FILE_ZERO_DATA_INFORMATION {
  75798.  
  75799.     LARGE_INTEGER FileOffset;
  75800.     LARGE_INTEGER BeyondFinalZero;
  75801.  
  75802. } FILE_ZERO_DATA_INFORMATION, *PFILE_ZERO_DATA_INFORMATION;
  75803.  
  75804.  
  75805.  
  75806.  
  75807.  
  75808.  
  75809. typedef struct _FILE_ZERO_DATA_INFORMATION_EX {
  75810.  
  75811.     LARGE_INTEGER FileOffset;
  75812.     LARGE_INTEGER BeyondFinalZero;
  75813.     DWORD Flags;
  75814.  
  75815. } FILE_ZERO_DATA_INFORMATION_EX, *PFILE_ZERO_DATA_INFORMATION_EX;
  75816. # 10256 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75817. typedef struct _FILE_ALLOCATED_RANGE_BUFFER {
  75818.  
  75819.     LARGE_INTEGER FileOffset;
  75820.     LARGE_INTEGER Length;
  75821.  
  75822. } FILE_ALLOCATED_RANGE_BUFFER, *PFILE_ALLOCATED_RANGE_BUFFER;
  75823. # 10279 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75824. typedef struct _ENCRYPTION_BUFFER {
  75825.  
  75826.     DWORD EncryptionOperation;
  75827.     BYTE Private[1];
  75828.  
  75829. } ENCRYPTION_BUFFER, *PENCRYPTION_BUFFER;
  75830. # 10298 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75831. typedef struct _DECRYPTION_STATUS_BUFFER {
  75832.  
  75833.     BOOLEAN NoEncryptedStreams;
  75834.  
  75835. } DECRYPTION_STATUS_BUFFER, *PDECRYPTION_STATUS_BUFFER;
  75836. # 10312 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75837. typedef struct _REQUEST_RAW_ENCRYPTED_DATA {
  75838. # 10321 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75839.     LONGLONG FileOffset;
  75840.     DWORD Length;
  75841.  
  75842. } REQUEST_RAW_ENCRYPTED_DATA, *PREQUEST_RAW_ENCRYPTED_DATA;
  75843. # 10350 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75844. typedef struct _ENCRYPTED_DATA_INFO {
  75845. # 10359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75846.     DWORDLONG StartingFileOffset;
  75847. # 10369 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75848.     DWORD OutputBufferOffset;
  75849. # 10380 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75850.     DWORD BytesWithinFileSize;
  75851. # 10391 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75852.     DWORD BytesWithinValidDataLength;
  75853. # 10400 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75854.     WORD CompressionFormat;
  75855. # 10421 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75856.     BYTE DataUnitShift;
  75857.     BYTE ChunkShift;
  75858.     BYTE ClusterShift;
  75859.  
  75860.  
  75861.  
  75862.  
  75863.  
  75864.     BYTE EncryptionFormat;
  75865.  
  75866.  
  75867.  
  75868.  
  75869.  
  75870.  
  75871.     WORD NumberOfDataBlocks;
  75872. # 10464 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75873.     DWORD DataBlockSize[1];
  75874.  
  75875. } ENCRYPTED_DATA_INFO, *PENCRYPTED_DATA_INFO;
  75876. # 10479 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75877. typedef struct _EXTENDED_ENCRYPTED_DATA_INFO {
  75878. # 10488 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75879.     DWORD ExtendedCode;
  75880.  
  75881.  
  75882.  
  75883.  
  75884.  
  75885.     DWORD Length;
  75886.  
  75887.  
  75888.  
  75889.  
  75890.  
  75891.     DWORD Flags;
  75892.     DWORD Reserved;
  75893.  
  75894. } EXTENDED_ENCRYPTED_DATA_INFO, *PEXTENDED_ENCRYPTED_DATA_INFO;
  75895. # 10516 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75896. typedef struct _PLEX_READ_DATA_REQUEST {
  75897. # 10528 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75898.     LARGE_INTEGER ByteOffset;
  75899.     DWORD ByteLength;
  75900.     DWORD PlexNumber;
  75901.  
  75902. } PLEX_READ_DATA_REQUEST, *PPLEX_READ_DATA_REQUEST;
  75903. # 10545 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75904. typedef struct _SI_COPYFILE {
  75905.     DWORD SourceFileNameLength;
  75906.     DWORD DestinationFileNameLength;
  75907.     DWORD Flags;
  75908.     WCHAR FileNameBuffer[1];
  75909. } SI_COPYFILE, *PSI_COPYFILE;
  75910. # 10564 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75911. typedef struct _FILE_MAKE_COMPATIBLE_BUFFER {
  75912.     BOOLEAN CloseDisc;
  75913. } FILE_MAKE_COMPATIBLE_BUFFER, *PFILE_MAKE_COMPATIBLE_BUFFER;
  75914.  
  75915.  
  75916.  
  75917.  
  75918.  
  75919.  
  75920.  
  75921. typedef struct _FILE_SET_DEFECT_MGMT_BUFFER {
  75922.     BOOLEAN Disable;
  75923. } FILE_SET_DEFECT_MGMT_BUFFER, *PFILE_SET_DEFECT_MGMT_BUFFER;
  75924.  
  75925.  
  75926.  
  75927.  
  75928.  
  75929.  
  75930.  
  75931. typedef struct _FILE_QUERY_SPARING_BUFFER {
  75932.     DWORD SparingUnitBytes;
  75933.     BOOLEAN SoftwareSparing;
  75934.     DWORD TotalSpareBlocks;
  75935.     DWORD FreeSpareBlocks;
  75936. } FILE_QUERY_SPARING_BUFFER, *PFILE_QUERY_SPARING_BUFFER;
  75937.  
  75938.  
  75939.  
  75940.  
  75941.  
  75942.  
  75943.  
  75944. typedef struct _FILE_QUERY_ON_DISK_VOL_INFO_BUFFER {
  75945.     LARGE_INTEGER DirectoryCount;
  75946.     LARGE_INTEGER FileCount;
  75947.     WORD FsFormatMajVersion;
  75948.     WORD FsFormatMinVersion;
  75949.     WCHAR FsFormatName[ 12];
  75950.     LARGE_INTEGER FormatTime;
  75951.     LARGE_INTEGER LastUpdateTime;
  75952.     WCHAR CopyrightInfo[ 34];
  75953.     WCHAR AbstractInfo[ 34];
  75954.     WCHAR FormattingImplementationInfo[ 34];
  75955.     WCHAR LastModifyingImplementationInfo[ 34];
  75956. } FILE_QUERY_ON_DISK_VOL_INFO_BUFFER, *PFILE_QUERY_ON_DISK_VOL_INFO_BUFFER;
  75957. # 10676 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75958. typedef DWORDLONG CLSN;
  75959.  
  75960. typedef struct _FILE_INITIATE_REPAIR_OUTPUT_BUFFER {
  75961.     DWORDLONG Hint1;
  75962.     DWORDLONG Hint2;
  75963.     CLSN Clsn;
  75964.     DWORD Status;
  75965. } FILE_INITIATE_REPAIR_OUTPUT_BUFFER, *PFILE_INITIATE_REPAIR_OUTPUT_BUFFER;
  75966.  
  75967.  
  75968.  
  75969.  
  75970.  
  75971.  
  75972.  
  75973. typedef enum _SHRINK_VOLUME_REQUEST_TYPES
  75974. {
  75975.     ShrinkPrepare = 1,
  75976.     ShrinkCommit,
  75977.     ShrinkAbort
  75978.  
  75979. } SHRINK_VOLUME_REQUEST_TYPES, *PSHRINK_VOLUME_REQUEST_TYPES;
  75980.  
  75981. typedef struct _SHRINK_VOLUME_INFORMATION
  75982. {
  75983.     SHRINK_VOLUME_REQUEST_TYPES ShrinkRequestType;
  75984.     DWORDLONG Flags;
  75985.     LONGLONG NewNumberOfSectors;
  75986.  
  75987. } SHRINK_VOLUME_INFORMATION, *PSHRINK_VOLUME_INFORMATION;
  75988. # 10776 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  75989. typedef struct _TXFS_MODIFY_RM {
  75990.  
  75991.  
  75992.  
  75993.  
  75994.  
  75995.     DWORD Flags;
  75996.  
  75997.  
  75998.  
  75999.  
  76000.  
  76001.     DWORD LogContainerCountMax;
  76002.  
  76003.  
  76004.  
  76005.  
  76006.  
  76007.     DWORD LogContainerCountMin;
  76008.  
  76009.  
  76010.  
  76011.  
  76012.  
  76013.     DWORD LogContainerCount;
  76014.  
  76015.  
  76016.  
  76017.  
  76018.  
  76019.  
  76020.  
  76021.     DWORD LogGrowthIncrement;
  76022.  
  76023.  
  76024.  
  76025.  
  76026.  
  76027.  
  76028.     DWORD LogAutoShrinkPercentage;
  76029.  
  76030.  
  76031.  
  76032.  
  76033.  
  76034.     DWORDLONG Reserved;
  76035.  
  76036.  
  76037.  
  76038.  
  76039.  
  76040.  
  76041.     WORD LoggingMode;
  76042.  
  76043. } TXFS_MODIFY_RM,
  76044.  *PTXFS_MODIFY_RM;
  76045. # 10878 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76046. typedef struct _TXFS_QUERY_RM_INFORMATION {
  76047.  
  76048.  
  76049.  
  76050.  
  76051.  
  76052.  
  76053.     DWORD BytesRequired;
  76054.  
  76055.  
  76056.  
  76057.  
  76058.  
  76059.     DWORDLONG TailLsn;
  76060.  
  76061.  
  76062.  
  76063.  
  76064.  
  76065.     DWORDLONG CurrentLsn;
  76066.  
  76067.  
  76068.  
  76069.  
  76070.  
  76071.     DWORDLONG ArchiveTailLsn;
  76072.  
  76073.  
  76074.  
  76075.  
  76076.  
  76077.     DWORDLONG LogContainerSize;
  76078.  
  76079.  
  76080.  
  76081.  
  76082.  
  76083.     LARGE_INTEGER HighestVirtualClock;
  76084.  
  76085.  
  76086.  
  76087.  
  76088.  
  76089.     DWORD LogContainerCount;
  76090.  
  76091.  
  76092.  
  76093.  
  76094.  
  76095.     DWORD LogContainerCountMax;
  76096.  
  76097.  
  76098.  
  76099.  
  76100.  
  76101.     DWORD LogContainerCountMin;
  76102.  
  76103.  
  76104.  
  76105.  
  76106.  
  76107.  
  76108.  
  76109.     DWORD LogGrowthIncrement;
  76110.  
  76111.  
  76112.  
  76113.  
  76114.  
  76115.  
  76116.  
  76117.     DWORD LogAutoShrinkPercentage;
  76118.  
  76119.  
  76120.  
  76121.  
  76122.  
  76123.  
  76124.     DWORD Flags;
  76125.  
  76126.  
  76127.  
  76128.  
  76129.  
  76130.     WORD LoggingMode;
  76131.  
  76132.  
  76133.  
  76134.  
  76135.  
  76136.     WORD Reserved;
  76137.  
  76138.  
  76139.  
  76140.  
  76141.  
  76142.     DWORD RmState;
  76143.  
  76144.  
  76145.  
  76146.  
  76147.  
  76148.     DWORDLONG LogCapacity;
  76149.  
  76150.  
  76151.  
  76152.  
  76153.  
  76154.     DWORDLONG LogFree;
  76155.  
  76156.  
  76157.  
  76158.  
  76159.  
  76160.     DWORDLONG TopsSize;
  76161.  
  76162.  
  76163.  
  76164.  
  76165.  
  76166.     DWORDLONG TopsUsed;
  76167.  
  76168.  
  76169.  
  76170.  
  76171.  
  76172.     DWORDLONG TransactionCount;
  76173.  
  76174.  
  76175.  
  76176.  
  76177.  
  76178.     DWORDLONG OnePCCount;
  76179.  
  76180.  
  76181.  
  76182.  
  76183.  
  76184.     DWORDLONG TwoPCCount;
  76185.  
  76186.  
  76187.  
  76188.  
  76189.  
  76190.     DWORDLONG NumberLogFileFull;
  76191.  
  76192.  
  76193.  
  76194.  
  76195.  
  76196.     DWORDLONG OldestTransactionAge;
  76197.  
  76198.  
  76199.  
  76200.  
  76201.  
  76202.     GUID RMName;
  76203.  
  76204.  
  76205.  
  76206.  
  76207.  
  76208.  
  76209.     DWORD TmLogPathOffset;
  76210.  
  76211. } TXFS_QUERY_RM_INFORMATION,
  76212.  *PTXFS_QUERY_RM_INFORMATION;
  76213. # 11059 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76214. typedef struct _TXFS_ROLLFORWARD_REDO_INFORMATION {
  76215.     LARGE_INTEGER LastVirtualClock;
  76216.     DWORDLONG LastRedoLsn;
  76217.     DWORDLONG HighestRecoveryLsn;
  76218.     DWORD Flags;
  76219. } TXFS_ROLLFORWARD_REDO_INFORMATION,
  76220.  *PTXFS_ROLLFORWARD_REDO_INFORMATION;
  76221. # 11125 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76222. typedef struct _TXFS_START_RM_INFORMATION {
  76223.  
  76224.  
  76225.  
  76226.  
  76227.  
  76228.     DWORD Flags;
  76229.  
  76230.  
  76231.  
  76232.  
  76233.  
  76234.     DWORDLONG LogContainerSize;
  76235.  
  76236.  
  76237.  
  76238.  
  76239.  
  76240.     DWORD LogContainerCountMin;
  76241.  
  76242.  
  76243.  
  76244.  
  76245.  
  76246.     DWORD LogContainerCountMax;
  76247.  
  76248.  
  76249.  
  76250.  
  76251.  
  76252.  
  76253.  
  76254.     DWORD LogGrowthIncrement;
  76255.  
  76256.  
  76257.  
  76258.  
  76259.  
  76260.     DWORD LogAutoShrinkPercentage;
  76261.  
  76262.  
  76263.  
  76264.  
  76265.  
  76266.  
  76267.  
  76268.     DWORD TmLogPathOffset;
  76269.  
  76270.  
  76271.  
  76272.  
  76273.  
  76274.  
  76275.     WORD TmLogPathLength;
  76276.  
  76277.  
  76278.  
  76279.  
  76280.  
  76281.  
  76282.  
  76283.     WORD LoggingMode;
  76284.  
  76285.  
  76286.  
  76287.  
  76288.  
  76289.  
  76290.     WORD LogPathLength;
  76291.  
  76292.  
  76293.  
  76294.  
  76295.  
  76296.     WORD Reserved;
  76297.  
  76298.  
  76299.  
  76300.  
  76301.  
  76302.  
  76303.     WCHAR LogPath[1];
  76304.  
  76305. } TXFS_START_RM_INFORMATION,
  76306.  *PTXFS_START_RM_INFORMATION;
  76307. # 11224 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76308. typedef struct _TXFS_GET_METADATA_INFO_OUT {
  76309.  
  76310.  
  76311.  
  76312.  
  76313.  
  76314.     struct {
  76315.         LONGLONG LowPart;
  76316.         LONGLONG HighPart;
  76317.     } TxfFileId;
  76318.  
  76319.  
  76320.  
  76321.  
  76322.  
  76323.     GUID LockingTransaction;
  76324.  
  76325.  
  76326.  
  76327.  
  76328.  
  76329.     DWORDLONG LastLsn;
  76330.  
  76331.  
  76332.  
  76333.  
  76334.  
  76335.     DWORD TransactionState;
  76336.  
  76337. } TXFS_GET_METADATA_INFO_OUT, *PTXFS_GET_METADATA_INFO_OUT;
  76338. # 11274 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76339. typedef struct _TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY {
  76340.  
  76341.  
  76342.  
  76343.  
  76344.  
  76345.  
  76346.     DWORDLONG Offset;
  76347.  
  76348.  
  76349.  
  76350.  
  76351.  
  76352.  
  76353.     DWORD NameFlags;
  76354.  
  76355.  
  76356.  
  76357.  
  76358.  
  76359.     LONGLONG FileId;
  76360.  
  76361.  
  76362.  
  76363.  
  76364.  
  76365.     DWORD Reserved1;
  76366.     DWORD Reserved2;
  76367.     LONGLONG Reserved3;
  76368.  
  76369.  
  76370.  
  76371.  
  76372.  
  76373.     WCHAR FileName[1];
  76374. } TXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY, *PTXFS_LIST_TRANSACTION_LOCKED_FILES_ENTRY;
  76375.  
  76376.  
  76377. typedef struct _TXFS_LIST_TRANSACTION_LOCKED_FILES {
  76378.  
  76379.  
  76380.  
  76381.  
  76382.  
  76383.     GUID KtmTransaction;
  76384.  
  76385.  
  76386.  
  76387.  
  76388.  
  76389.     DWORDLONG NumberOfFiles;
  76390.  
  76391.  
  76392.  
  76393.  
  76394.  
  76395.  
  76396.     DWORDLONG BufferSizeRequired;
  76397.  
  76398.  
  76399.  
  76400.  
  76401.  
  76402.  
  76403.     DWORDLONG Offset;
  76404. } TXFS_LIST_TRANSACTION_LOCKED_FILES, *PTXFS_LIST_TRANSACTION_LOCKED_FILES;
  76405.  
  76406.  
  76407.  
  76408.  
  76409.  
  76410.  
  76411.  
  76412. typedef struct _TXFS_LIST_TRANSACTIONS_ENTRY {
  76413.  
  76414.  
  76415.  
  76416.  
  76417.  
  76418.     GUID TransactionId;
  76419.  
  76420.  
  76421.  
  76422.  
  76423.  
  76424.     DWORD TransactionState;
  76425.  
  76426.  
  76427.  
  76428.  
  76429.  
  76430.     DWORD Reserved1;
  76431.     DWORD Reserved2;
  76432.     LONGLONG Reserved3;
  76433. } TXFS_LIST_TRANSACTIONS_ENTRY, *PTXFS_LIST_TRANSACTIONS_ENTRY;
  76434.  
  76435. typedef struct _TXFS_LIST_TRANSACTIONS {
  76436.  
  76437.  
  76438.  
  76439.  
  76440.  
  76441.     DWORDLONG NumberOfTransactions;
  76442.  
  76443.  
  76444.  
  76445.  
  76446.  
  76447.  
  76448.  
  76449.     DWORDLONG BufferSizeRequired;
  76450. } TXFS_LIST_TRANSACTIONS, *PTXFS_LIST_TRANSACTIONS;
  76451. # 11397 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76452. #pragma warning(disable: 4201)
  76453.  
  76454. typedef struct _TXFS_READ_BACKUP_INFORMATION_OUT {
  76455.     union {
  76456.  
  76457.  
  76458.  
  76459.  
  76460.  
  76461.         DWORD BufferLength;
  76462.  
  76463.  
  76464.  
  76465.  
  76466.  
  76467.         BYTE Buffer[1];
  76468.     } ;
  76469. } TXFS_READ_BACKUP_INFORMATION_OUT, *PTXFS_READ_BACKUP_INFORMATION_OUT;
  76470.  
  76471.  
  76472.  
  76473.  
  76474. #pragma warning(default: 4201)
  76475.  
  76476.  
  76477.  
  76478.  
  76479.  
  76480.  
  76481.  
  76482.  
  76483. typedef struct _TXFS_WRITE_BACKUP_INFORMATION {
  76484.  
  76485.  
  76486.  
  76487.  
  76488.  
  76489.  
  76490.     BYTE Buffer[1];
  76491. } TXFS_WRITE_BACKUP_INFORMATION, *PTXFS_WRITE_BACKUP_INFORMATION;
  76492. # 11447 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76493. typedef struct _TXFS_GET_TRANSACTED_VERSION {
  76494.  
  76495.  
  76496.  
  76497.  
  76498.  
  76499.  
  76500.  
  76501.     DWORD ThisBaseVersion;
  76502.  
  76503.  
  76504.  
  76505.  
  76506.  
  76507.     DWORD LatestVersion;
  76508.  
  76509.  
  76510.  
  76511.  
  76512.  
  76513.  
  76514.     WORD ThisMiniVersion;
  76515.  
  76516.  
  76517.  
  76518.  
  76519.  
  76520.  
  76521.     WORD FirstMiniVersion;
  76522.  
  76523.  
  76524.  
  76525.  
  76526.  
  76527.  
  76528.     WORD LatestMiniVersion;
  76529.  
  76530. } TXFS_GET_TRANSACTED_VERSION, *PTXFS_GET_TRANSACTED_VERSION;
  76531. # 11521 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76532. typedef struct _TXFS_SAVEPOINT_INFORMATION {
  76533.  
  76534.  
  76535.  
  76536.  
  76537.  
  76538.     HANDLE KtmTransaction;
  76539.  
  76540.  
  76541.  
  76542.  
  76543.  
  76544.     DWORD ActionCode;
  76545. # 11545 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76546.     DWORD SavepointId;
  76547.  
  76548. } TXFS_SAVEPOINT_INFORMATION, *PTXFS_SAVEPOINT_INFORMATION;
  76549. # 11564 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76550. typedef struct _TXFS_CREATE_MINIVERSION_INFO {
  76551.  
  76552.     WORD StructureVersion;
  76553.  
  76554.     WORD StructureLength;
  76555.  
  76556.  
  76557.  
  76558.  
  76559.  
  76560.     DWORD BaseVersion;
  76561.  
  76562.  
  76563.  
  76564.  
  76565.  
  76566.     WORD MiniVersion;
  76567.  
  76568. } TXFS_CREATE_MINIVERSION_INFO, *PTXFS_CREATE_MINIVERSION_INFO;
  76569. # 11597 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76570. typedef struct _TXFS_TRANSACTION_ACTIVE_INFO {
  76571.  
  76572.  
  76573.  
  76574.  
  76575.  
  76576.     BOOLEAN TransactionsActiveAtSnapshot;
  76577.  
  76578. } TXFS_TRANSACTION_ACTIVE_INFO, *PTXFS_TRANSACTION_ACTIVE_INFO;
  76579. # 11618 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76580. typedef struct _BOOT_AREA_INFO {
  76581.  
  76582.     DWORD BootSectorCount;
  76583.     struct {
  76584.         LARGE_INTEGER Offset;
  76585.     } BootSectors[2];
  76586.  
  76587. } BOOT_AREA_INFO, *PBOOT_AREA_INFO;
  76588.  
  76589.  
  76590.  
  76591.  
  76592.  
  76593.  
  76594.  
  76595. typedef struct _RETRIEVAL_POINTER_BASE {
  76596.  
  76597.     LARGE_INTEGER FileAreaOffset;
  76598. } RETRIEVAL_POINTER_BASE, *PRETRIEVAL_POINTER_BASE;
  76599. # 11646 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76600. typedef struct _FILE_FS_PERSISTENT_VOLUME_INFORMATION {
  76601.  
  76602.     DWORD VolumeFlags;
  76603.     DWORD FlagMask;
  76604.     DWORD Version;
  76605.     DWORD Reserved;
  76606.  
  76607. } FILE_FS_PERSISTENT_VOLUME_INFORMATION, *PFILE_FS_PERSISTENT_VOLUME_INFORMATION;
  76608. # 11726 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76609. typedef struct _FILE_SYSTEM_RECOGNITION_INFORMATION {
  76610.  
  76611.     CHAR FileSystem[9];
  76612.  
  76613. } FILE_SYSTEM_RECOGNITION_INFORMATION, *PFILE_SYSTEM_RECOGNITION_INFORMATION;
  76614. # 11748 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76615. typedef struct _REQUEST_OPLOCK_INPUT_BUFFER {
  76616.  
  76617.  
  76618.  
  76619.  
  76620.  
  76621.     WORD StructureVersion;
  76622.  
  76623.     WORD StructureLength;
  76624.  
  76625.  
  76626.  
  76627.  
  76628.  
  76629.     DWORD RequestedOplockLevel;
  76630.  
  76631.  
  76632.  
  76633.  
  76634.  
  76635.     DWORD Flags;
  76636.  
  76637. } REQUEST_OPLOCK_INPUT_BUFFER, *PREQUEST_OPLOCK_INPUT_BUFFER;
  76638.  
  76639.  
  76640.  
  76641.  
  76642. typedef struct _REQUEST_OPLOCK_OUTPUT_BUFFER {
  76643.  
  76644.  
  76645.  
  76646.  
  76647.  
  76648.     WORD StructureVersion;
  76649.  
  76650.     WORD StructureLength;
  76651.  
  76652.  
  76653.  
  76654.  
  76655.  
  76656.  
  76657.     DWORD OriginalOplockLevel;
  76658.  
  76659.  
  76660.  
  76661.  
  76662.  
  76663.  
  76664.  
  76665.     DWORD NewOplockLevel;
  76666.  
  76667.  
  76668.  
  76669.  
  76670.  
  76671.     DWORD Flags;
  76672.  
  76673.  
  76674.  
  76675.  
  76676.  
  76677.  
  76678.  
  76679.     ACCESS_MASK AccessMode;
  76680.  
  76681.     WORD ShareMode;
  76682.  
  76683. } REQUEST_OPLOCK_OUTPUT_BUFFER, *PREQUEST_OPLOCK_OUTPUT_BUFFER;
  76684.  
  76685.  
  76686.  
  76687.  
  76688.  
  76689.  
  76690.  
  76691. typedef struct _VIRTUAL_STORAGE_TYPE
  76692. {
  76693.     DWORD DeviceId;
  76694.     GUID VendorId;
  76695. } VIRTUAL_STORAGE_TYPE, *PVIRTUAL_STORAGE_TYPE;
  76696.  
  76697.  
  76698.  
  76699.  
  76700.  
  76701.  
  76702. typedef struct _STORAGE_QUERY_DEPENDENT_VOLUME_REQUEST {
  76703.     DWORD RequestLevel;
  76704.     DWORD RequestFlags;
  76705. } STORAGE_QUERY_DEPENDENT_VOLUME_REQUEST, *PSTORAGE_QUERY_DEPENDENT_VOLUME_REQUEST;
  76706.  
  76707.  
  76708.  
  76709.  
  76710. typedef struct _STORAGE_QUERY_DEPENDENT_VOLUME_LEV1_ENTRY {
  76711.     DWORD EntryLength;
  76712.     DWORD DependencyTypeFlags;
  76713.     DWORD ProviderSpecificFlags;
  76714.     VIRTUAL_STORAGE_TYPE VirtualStorageType;
  76715. } STORAGE_QUERY_DEPENDENT_VOLUME_LEV1_ENTRY, *PSTORAGE_QUERY_DEPENDENT_VOLUME_LEV1_ENTRY;
  76716.  
  76717. typedef struct _STORAGE_QUERY_DEPENDENT_VOLUME_LEV2_ENTRY {
  76718.     DWORD EntryLength;
  76719.     DWORD DependencyTypeFlags;
  76720.     DWORD ProviderSpecificFlags;
  76721.     VIRTUAL_STORAGE_TYPE VirtualStorageType;
  76722.     DWORD AncestorLevel;
  76723.     DWORD HostVolumeNameOffset;
  76724.     DWORD HostVolumeNameSize;
  76725.     DWORD DependentVolumeNameOffset;
  76726.     DWORD DependentVolumeNameSize;
  76727.     DWORD RelativePathOffset;
  76728.     DWORD RelativePathSize;
  76729.     DWORD DependentDeviceNameOffset;
  76730.     DWORD DependentDeviceNameSize;
  76731. } STORAGE_QUERY_DEPENDENT_VOLUME_LEV2_ENTRY, *PSTORAGE_QUERY_DEPENDENT_VOLUME_LEV2_ENTRY;
  76732. # 11908 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76733. typedef struct _SD_CHANGE_MACHINE_SID_INPUT {
  76734. # 11918 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76735.     WORD CurrentMachineSIDOffset;
  76736.     WORD CurrentMachineSIDLength;
  76737. # 11929 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76738.     WORD NewMachineSIDOffset;
  76739.     WORD NewMachineSIDLength;
  76740.  
  76741. } SD_CHANGE_MACHINE_SID_INPUT, *PSD_CHANGE_MACHINE_SID_INPUT;
  76742.  
  76743. typedef struct _SD_CHANGE_MACHINE_SID_OUTPUT {
  76744.  
  76745.  
  76746.  
  76747.  
  76748.  
  76749.     DWORDLONG NumSDChangedSuccess;
  76750.  
  76751.  
  76752.  
  76753.  
  76754.  
  76755.     DWORDLONG NumSDChangedFail;
  76756.  
  76757.  
  76758.  
  76759.  
  76760.  
  76761.     DWORDLONG NumSDUnused;
  76762.  
  76763.  
  76764.  
  76765.  
  76766.  
  76767.     DWORDLONG NumSDTotal;
  76768.  
  76769.  
  76770.  
  76771.  
  76772.  
  76773.     DWORDLONG NumMftSDChangedSuccess;
  76774.  
  76775.  
  76776.  
  76777.  
  76778.  
  76779.     DWORDLONG NumMftSDChangedFail;
  76780.  
  76781.  
  76782.  
  76783.  
  76784.  
  76785.     DWORDLONG NumMftSDTotal;
  76786.  
  76787. } SD_CHANGE_MACHINE_SID_OUTPUT, *PSD_CHANGE_MACHINE_SID_OUTPUT;
  76788.  
  76789.  
  76790.  
  76791.  
  76792.  
  76793. typedef struct _SD_QUERY_STATS_INPUT {
  76794.  
  76795.     DWORD Reserved;
  76796.  
  76797. } SD_QUERY_STATS_INPUT, *PSD_QUERY_STATS_INPUT;
  76798.  
  76799. typedef struct _SD_QUERY_STATS_OUTPUT {
  76800.  
  76801.  
  76802.  
  76803.  
  76804.  
  76805.  
  76806.     DWORDLONG SdsStreamSize;
  76807.     DWORDLONG SdsAllocationSize;
  76808.  
  76809.  
  76810.  
  76811.  
  76812.  
  76813.  
  76814.     DWORDLONG SiiStreamSize;
  76815.     DWORDLONG SiiAllocationSize;
  76816.  
  76817.  
  76818.  
  76819.  
  76820.  
  76821.  
  76822.     DWORDLONG SdhStreamSize;
  76823.     DWORDLONG SdhAllocationSize;
  76824.  
  76825.  
  76826.  
  76827.  
  76828.  
  76829.  
  76830.     DWORDLONG NumSDTotal;
  76831.  
  76832.  
  76833.  
  76834.  
  76835.  
  76836.  
  76837.     DWORDLONG NumSDUnused;
  76838.  
  76839. } SD_QUERY_STATS_OUTPUT, *PSD_QUERY_STATS_OUTPUT;
  76840.  
  76841.  
  76842.  
  76843.  
  76844.  
  76845. typedef struct _SD_ENUM_SDS_INPUT {
  76846. # 12048 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76847.     DWORDLONG StartingOffset;
  76848.  
  76849.  
  76850.  
  76851.  
  76852.  
  76853.  
  76854.  
  76855.     DWORDLONG MaxSDEntriesToReturn;
  76856.  
  76857. } SD_ENUM_SDS_INPUT, *PSD_ENUM_SDS_INPUT;
  76858.  
  76859. typedef struct _SD_ENUM_SDS_ENTRY {
  76860.  
  76861.  
  76862.  
  76863.  
  76864.  
  76865.     DWORD Hash;
  76866.  
  76867.  
  76868.  
  76869.  
  76870.  
  76871.     DWORD SecurityId;
  76872.  
  76873.  
  76874.  
  76875.  
  76876.  
  76877.  
  76878.     DWORDLONG Offset;
  76879.  
  76880.  
  76881.  
  76882.  
  76883.  
  76884.  
  76885.     DWORD Length;
  76886.  
  76887.  
  76888.  
  76889.  
  76890.  
  76891.     BYTE Descriptor[1];
  76892.  
  76893. } SD_ENUM_SDS_ENTRY, *PSD_ENUM_SDS_ENTRY;
  76894.  
  76895. typedef struct _SD_ENUM_SDS_OUTPUT {
  76896. # 12106 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76897.     DWORDLONG NextOffset;
  76898.  
  76899.  
  76900.  
  76901.  
  76902.  
  76903.     DWORDLONG NumSDEntriesReturned;
  76904.  
  76905.  
  76906.  
  76907.  
  76908.  
  76909.     DWORDLONG NumSDBytesReturned;
  76910. # 12128 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  76911.     SD_ENUM_SDS_ENTRY SDEntry[1];
  76912.  
  76913. } SD_ENUM_SDS_OUTPUT, *PSD_ENUM_SDS_OUTPUT;
  76914.  
  76915.  
  76916.  
  76917.  
  76918.  
  76919.  
  76920.  
  76921.  
  76922. #pragma warning(disable: 4201)
  76923.  
  76924. typedef struct _SD_GLOBAL_CHANGE_INPUT
  76925. {
  76926.  
  76927.  
  76928.  
  76929.  
  76930.     DWORD Flags;
  76931.  
  76932.  
  76933.  
  76934.  
  76935.  
  76936.  
  76937.     DWORD ChangeType;
  76938.  
  76939.     union {
  76940.  
  76941.         SD_CHANGE_MACHINE_SID_INPUT SdChange;
  76942.         SD_QUERY_STATS_INPUT SdQueryStats;
  76943.         SD_ENUM_SDS_INPUT SdEnumSds;
  76944.     } ;
  76945.  
  76946. } SD_GLOBAL_CHANGE_INPUT, *PSD_GLOBAL_CHANGE_INPUT;
  76947.  
  76948. typedef struct _SD_GLOBAL_CHANGE_OUTPUT
  76949. {
  76950.  
  76951.  
  76952.  
  76953.  
  76954.  
  76955.     DWORD Flags;
  76956.  
  76957.  
  76958.  
  76959.  
  76960.  
  76961.     DWORD ChangeType;
  76962.  
  76963.     union {
  76964.  
  76965.         SD_CHANGE_MACHINE_SID_OUTPUT SdChange;
  76966.         SD_QUERY_STATS_OUTPUT SdQueryStats;
  76967.         SD_ENUM_SDS_OUTPUT SdEnumSds;
  76968.     } ;
  76969.  
  76970. } SD_GLOBAL_CHANGE_OUTPUT, *PSD_GLOBAL_CHANGE_OUTPUT;
  76971.  
  76972.  
  76973.  
  76974.  
  76975. #pragma warning(default: 4201)
  76976.  
  76977.  
  76978.  
  76979.  
  76980.  
  76981.  
  76982. typedef struct _LOOKUP_STREAM_FROM_CLUSTER_INPUT {
  76983.  
  76984.  
  76985.  
  76986.  
  76987.     DWORD Flags;
  76988.  
  76989.  
  76990.  
  76991.  
  76992.  
  76993.  
  76994.     DWORD NumberOfClusters;
  76995.  
  76996.  
  76997.  
  76998.  
  76999.     LARGE_INTEGER Cluster[1];
  77000. } LOOKUP_STREAM_FROM_CLUSTER_INPUT, *PLOOKUP_STREAM_FROM_CLUSTER_INPUT;
  77001.  
  77002. typedef struct _LOOKUP_STREAM_FROM_CLUSTER_OUTPUT {
  77003.  
  77004.  
  77005.  
  77006.  
  77007.     DWORD Offset;
  77008.  
  77009.  
  77010.  
  77011.  
  77012.  
  77013.  
  77014.     DWORD NumberOfMatches;
  77015.  
  77016.  
  77017.  
  77018.  
  77019.  
  77020.     DWORD BufferSizeRequired;
  77021. } LOOKUP_STREAM_FROM_CLUSTER_OUTPUT, *PLOOKUP_STREAM_FROM_CLUSTER_OUTPUT;
  77022. # 12250 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77023. typedef struct _LOOKUP_STREAM_FROM_CLUSTER_ENTRY {
  77024.  
  77025.  
  77026.  
  77027.  
  77028.     DWORD OffsetToNext;
  77029.  
  77030.  
  77031.  
  77032.  
  77033.     DWORD Flags;
  77034.  
  77035.  
  77036.  
  77037.  
  77038.     LARGE_INTEGER Reserved;
  77039.  
  77040.  
  77041.  
  77042.  
  77043.  
  77044.     LARGE_INTEGER Cluster;
  77045.  
  77046.  
  77047.  
  77048.  
  77049.  
  77050.  
  77051.  
  77052.     WCHAR FileName[1];
  77053. } LOOKUP_STREAM_FROM_CLUSTER_ENTRY, *PLOOKUP_STREAM_FROM_CLUSTER_ENTRY;
  77054. # 12290 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77055. typedef struct _FILE_TYPE_NOTIFICATION_INPUT {
  77056.  
  77057.  
  77058.  
  77059.  
  77060.  
  77061.  
  77062.     DWORD Flags;
  77063.  
  77064.  
  77065.  
  77066.  
  77067.  
  77068.     DWORD NumFileTypeIDs;
  77069.  
  77070.  
  77071.  
  77072.  
  77073.  
  77074.     GUID FileTypeID[1];
  77075.  
  77076. } FILE_TYPE_NOTIFICATION_INPUT, *PFILE_TYPE_NOTIFICATION_INPUT;
  77077. # 12324 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77078. extern const GUID FILE_TYPE_NOTIFICATION_GUID_PAGE_FILE;
  77079. extern const GUID FILE_TYPE_NOTIFICATION_GUID_HIBERNATION_FILE;
  77080. extern const GUID FILE_TYPE_NOTIFICATION_GUID_CRASHDUMP_FILE;
  77081.  
  77082.  
  77083.  
  77084.  
  77085.  
  77086. typedef struct _CSV_MGMT_LOCK {
  77087.     DWORD Flags;
  77088. }CSV_MGMT_LOCK, *PCSV_MGMT_LOCK;
  77089.  
  77090.  
  77091.  
  77092.  
  77093.  
  77094.  
  77095.  
  77096. typedef struct _CSV_NAMESPACE_INFO {
  77097.  
  77098.     DWORD Version;
  77099.     DWORD DeviceNumber;
  77100.     LARGE_INTEGER StartingOffset;
  77101.     DWORD SectorSize;
  77102.  
  77103. } CSV_NAMESPACE_INFO, *PCSV_NAMESPACE_INFO;
  77104. # 12358 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77105. typedef enum _CSV_CONTROL_OP {
  77106.     CsvControlStartRedirectFile = 0x02,
  77107.     CsvControlStopRedirectFile = 0x03,
  77108.     CsvControlQueryRedirectState = 0x04,
  77109.     CsvControlQueryFileRevision = 0x06,
  77110.     CsvControlQueryMdsPath = 0x08,
  77111.     CsvControlQueryFileRevisionFileId128 = 0x09,
  77112.     CsvControlQueryVolumeRedirectState = 0x0a,
  77113.     CsvControlEnableUSNRangeModificationTracking = 0x0d,
  77114.     CsvControlMarkHandleLocalVolumeMount = 0x0e,
  77115.     CsvControlUnmarkHandleLocalVolumeMount = 0x0f,
  77116.     CsvControlGetCsvFsMdsPathV2 = 0x12,
  77117.     CsvControlDisableCaching = 0x13,
  77118.     CsvControlEnableCaching = 0x14,
  77119. } CSV_CONTROL_OP, *PCSV_CONTROL_OP;
  77120.  
  77121. typedef struct _CSV_CONTROL_PARAM {
  77122.     CSV_CONTROL_OP Operation;
  77123.     LONGLONG Unused;
  77124. } CSV_CONTROL_PARAM, *PCSV_CONTROL_PARAM;
  77125.  
  77126.  
  77127.  
  77128.  
  77129. typedef struct _CSV_QUERY_REDIRECT_STATE {
  77130.     DWORD MdsNodeId;
  77131.     DWORD DsNodeId;
  77132.     BOOLEAN FileRedirected;
  77133. } CSV_QUERY_REDIRECT_STATE, *PCSV_QUERY_REDIRECT_STATE;
  77134.  
  77135.  
  77136.  
  77137.  
  77138.  
  77139.  
  77140.  
  77141. typedef struct _CSV_QUERY_FILE_REVISION {
  77142.  
  77143.  
  77144.  
  77145.     LONGLONG FileId;
  77146. # 12417 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77147.     LONGLONG FileRevision[3];
  77148.  
  77149. } CSV_QUERY_FILE_REVISION, *PCSV_QUERY_FILE_REVISION;
  77150.  
  77151.  
  77152.  
  77153.  
  77154.  
  77155.  
  77156.  
  77157. typedef struct _CSV_QUERY_FILE_REVISION_FILE_ID_128 {
  77158.  
  77159.  
  77160.  
  77161.     FILE_ID_128 FileId;
  77162. # 12450 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77163.     LONGLONG FileRevision[3];
  77164.  
  77165. } CSV_QUERY_FILE_REVISION_FILE_ID_128, *PCSV_QUERY_FILE_REVISION_FILE_ID_128;
  77166.  
  77167.  
  77168.  
  77169.  
  77170.  
  77171.  
  77172.  
  77173. typedef struct _CSV_QUERY_MDS_PATH {
  77174.     DWORD MdsNodeId;
  77175.     DWORD DsNodeId;
  77176.     DWORD PathLength;
  77177.     WCHAR Path[1];
  77178. } CSV_QUERY_MDS_PATH, *PCSV_QUERY_MDS_PATH;
  77179.  
  77180. typedef enum _CSVFS_DISK_CONNECTIVITY
  77181. {
  77182.     CsvFsDiskConnectivityNone = 0,
  77183.     CsvFsDiskConnectivityMdsNodeOnly = 1,
  77184.     CsvFsDiskConnectivitySubsetOfNodes = 2,
  77185.     CsvFsDiskConnectivityAllNodes = 3
  77186. } CSVFS_DISK_CONNECTIVITY, *PCSVFS_DISK_CONNECTIVITY;
  77187.  
  77188.  
  77189.  
  77190.  
  77191. typedef struct _CSV_QUERY_VOLUME_REDIRECT_STATE {
  77192.     DWORD MdsNodeId;
  77193.     DWORD DsNodeId;
  77194.     BOOLEAN IsDiskConnected;
  77195.     BOOLEAN ClusterEnableDirectIo;
  77196.     CSVFS_DISK_CONNECTIVITY DiskConnectivity;
  77197. } CSV_QUERY_VOLUME_REDIRECT_STATE, *PCSV_QUERY_VOLUME_REDIRECT_STATE;
  77198. # 12498 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77199. typedef struct _CSV_QUERY_MDS_PATH_V2 {
  77200.  
  77201.  
  77202.  
  77203.  
  77204.     LONGLONG Version;
  77205.  
  77206.  
  77207.  
  77208.  
  77209.     DWORD RequiredSize;
  77210.  
  77211.  
  77212.  
  77213.  
  77214.  
  77215.     DWORD MdsNodeId;
  77216.     DWORD DsNodeId;
  77217.  
  77218.  
  77219.  
  77220.     DWORD Flags;
  77221.  
  77222.  
  77223.  
  77224.     CSVFS_DISK_CONNECTIVITY DiskConnectivity;
  77225.  
  77226.  
  77227.  
  77228.     GUID VolumeId;
  77229.  
  77230.  
  77231.  
  77232.  
  77233.  
  77234.     DWORD IpAddressOffset;
  77235.     DWORD IpAddressLength;
  77236.  
  77237.  
  77238.  
  77239.  
  77240.  
  77241.     DWORD PathOffset;
  77242.     DWORD PathLength;
  77243.  
  77244. } CSV_QUERY_MDS_PATH_V2, *PCSV_QUERY_MDS_PATH_V2;
  77245. # 12556 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77246. typedef struct _CSV_QUERY_VETO_FILE_DIRECT_IO_OUTPUT {
  77247.     DWORDLONG VetoedFromAltitudeIntegral;
  77248.     DWORDLONG VetoedFromAltitudeDecimal;
  77249.     WCHAR Reason[256];
  77250. } CSV_QUERY_VETO_FILE_DIRECT_IO_OUTPUT, *PCSV_QUERY_VETO_FILE_DIRECT_IO_OUTPUT;
  77251. # 12571 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77252. typedef struct _CSV_IS_OWNED_BY_CSVFS {
  77253.     BOOLEAN OwnedByCSVFS;
  77254. }CSV_IS_OWNED_BY_CSVFS, *PCSV_IS_OWNED_BY_CSVFS;
  77255.  
  77256.  
  77257.  
  77258.  
  77259.  
  77260.  
  77261.  
  77262. typedef struct _FILE_LEVEL_TRIM_RANGE {
  77263.  
  77264.  
  77265.  
  77266.  
  77267.  
  77268.     DWORDLONG Offset;
  77269.  
  77270.  
  77271.  
  77272.  
  77273.  
  77274.     DWORDLONG Length;
  77275. } FILE_LEVEL_TRIM_RANGE, *PFILE_LEVEL_TRIM_RANGE;
  77276.  
  77277.  
  77278.  
  77279.  
  77280.  
  77281. typedef struct _FILE_LEVEL_TRIM {
  77282.  
  77283.  
  77284.  
  77285.  
  77286.  
  77287.  
  77288.     DWORD Key;
  77289.  
  77290.  
  77291.  
  77292.  
  77293.  
  77294.     DWORD NumRanges;
  77295.  
  77296.  
  77297.  
  77298.  
  77299.  
  77300.     FILE_LEVEL_TRIM_RANGE Ranges[1];
  77301.  
  77302. } FILE_LEVEL_TRIM, *PFILE_LEVEL_TRIM;
  77303.  
  77304.  
  77305.  
  77306.  
  77307.  
  77308. typedef struct _FILE_LEVEL_TRIM_OUTPUT {
  77309.  
  77310.  
  77311.  
  77312.  
  77313.  
  77314.  
  77315.     DWORD NumRangesProcessed;
  77316.  
  77317. } FILE_LEVEL_TRIM_OUTPUT, *PFILE_LEVEL_TRIM_OUTPUT;
  77318. # 12725 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77319. typedef enum _QUERY_FILE_LAYOUT_FILTER_TYPE {
  77320.     QUERY_FILE_LAYOUT_FILTER_TYPE_NONE = 0,
  77321.     QUERY_FILE_LAYOUT_FILTER_TYPE_CLUSTERS = 1,
  77322.     QUERY_FILE_LAYOUT_FILTER_TYPE_FILEID = 2,
  77323.     QUERY_FILE_LAYOUT_NUM_FILTER_TYPES = 3,
  77324. } QUERY_FILE_LAYOUT_FILTER_TYPE;
  77325.  
  77326. typedef struct _CLUSTER_RANGE {
  77327.  
  77328.  
  77329.  
  77330.  
  77331.  
  77332.     LARGE_INTEGER StartingCluster;
  77333.  
  77334.  
  77335.  
  77336.  
  77337.     LARGE_INTEGER ClusterCount;
  77338.  
  77339. } CLUSTER_RANGE, *PCLUSTER_RANGE;
  77340.  
  77341. typedef struct _FILE_REFERENCE_RANGE {
  77342.  
  77343.  
  77344.  
  77345.  
  77346.  
  77347.     DWORDLONG StartingFileReferenceNumber;
  77348.  
  77349.  
  77350.  
  77351.  
  77352.  
  77353.     DWORDLONG EndingFileReferenceNumber;
  77354.  
  77355. } FILE_REFERENCE_RANGE, *PFILE_REFERENCE_RANGE;
  77356.  
  77357. typedef struct _QUERY_FILE_LAYOUT_INPUT {
  77358.  
  77359.  
  77360.  
  77361.  
  77362.  
  77363.  
  77364.     DWORD NumberOfPairs;
  77365.  
  77366.  
  77367.  
  77368.  
  77369.     DWORD Flags;
  77370.  
  77371.  
  77372.  
  77373.  
  77374.  
  77375.     QUERY_FILE_LAYOUT_FILTER_TYPE FilterType;
  77376.  
  77377.  
  77378.  
  77379.  
  77380.  
  77381.     DWORD Reserved;
  77382.  
  77383.  
  77384.  
  77385.  
  77386.  
  77387.  
  77388.     union {
  77389. # 12803 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77390.         CLUSTER_RANGE ClusterRanges[1];
  77391. # 12812 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77392.         FILE_REFERENCE_RANGE FileReferenceRanges[1];
  77393.  
  77394.     } Filter;
  77395. } QUERY_FILE_LAYOUT_INPUT, *PQUERY_FILE_LAYOUT_INPUT;
  77396.  
  77397.  
  77398.  
  77399.  
  77400.  
  77401.  
  77402.  
  77403. typedef struct _QUERY_FILE_LAYOUT_OUTPUT {
  77404.  
  77405.  
  77406.  
  77407.  
  77408.  
  77409.  
  77410.     DWORD FileEntryCount;
  77411.  
  77412.  
  77413.  
  77414.  
  77415.  
  77416.     DWORD FirstFileOffset;
  77417.  
  77418.  
  77419.  
  77420.  
  77421.  
  77422.     DWORD Flags;
  77423.  
  77424.  
  77425.  
  77426.  
  77427.     DWORD Reserved;
  77428.  
  77429. } QUERY_FILE_LAYOUT_OUTPUT, *PQUERY_FILE_LAYOUT_OUTPUT;
  77430.  
  77431. typedef struct _FILE_LAYOUT_ENTRY {
  77432.  
  77433.  
  77434.  
  77435.  
  77436.  
  77437.     DWORD Version;
  77438.  
  77439.  
  77440.  
  77441.  
  77442.  
  77443.     DWORD NextFileOffset;
  77444.  
  77445.  
  77446.  
  77447.  
  77448.  
  77449.     DWORD Flags;
  77450.  
  77451.  
  77452.  
  77453.  
  77454.     DWORD FileAttributes;
  77455.  
  77456.  
  77457.  
  77458.  
  77459.     DWORDLONG FileReferenceNumber;
  77460.  
  77461.  
  77462.  
  77463.  
  77464.  
  77465.  
  77466.     DWORD FirstNameOffset;
  77467.  
  77468.  
  77469.  
  77470.  
  77471.  
  77472.  
  77473.     DWORD FirstStreamOffset;
  77474.  
  77475.  
  77476.  
  77477.  
  77478.  
  77479.  
  77480.  
  77481.     DWORD ExtraInfoOffset;
  77482.  
  77483.  
  77484.  
  77485.  
  77486.     DWORD Reserved;
  77487. # 12915 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77488. } FILE_LAYOUT_ENTRY, *PFILE_LAYOUT_ENTRY;
  77489. # 12924 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77490. typedef struct _FILE_LAYOUT_NAME_ENTRY {
  77491.  
  77492.  
  77493.  
  77494.  
  77495.  
  77496.     DWORD NextNameOffset;
  77497.  
  77498.  
  77499.  
  77500.  
  77501.     DWORD Flags;
  77502.  
  77503.  
  77504.  
  77505.  
  77506.     DWORDLONG ParentFileReferenceNumber;
  77507.  
  77508.  
  77509.  
  77510.  
  77511.     DWORD FileNameLength;
  77512.  
  77513.  
  77514.  
  77515.  
  77516.     DWORD Reserved;
  77517.  
  77518.  
  77519.  
  77520.  
  77521.  
  77522.  
  77523.     WCHAR FileName[1];
  77524.  
  77525. } FILE_LAYOUT_NAME_ENTRY, *PFILE_LAYOUT_NAME_ENTRY;
  77526.  
  77527. typedef struct _FILE_LAYOUT_INFO_ENTRY {
  77528.  
  77529.  
  77530.  
  77531.  
  77532.     struct {
  77533.         LARGE_INTEGER CreationTime;
  77534.         LARGE_INTEGER LastAccessTime;
  77535.         LARGE_INTEGER LastWriteTime;
  77536.         LARGE_INTEGER ChangeTime;
  77537.         DWORD FileAttributes;
  77538.     } BasicInformation;
  77539.  
  77540.  
  77541.  
  77542.  
  77543.     DWORD OwnerId;
  77544.  
  77545.  
  77546.  
  77547.  
  77548.     DWORD SecurityId;
  77549.  
  77550.  
  77551.  
  77552.  
  77553.     USN Usn;
  77554.  
  77555. } FILE_LAYOUT_INFO_ENTRY, *PFILE_LAYOUT_INFO_ENTRY;
  77556. # 13017 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77557. typedef struct _STREAM_LAYOUT_ENTRY {
  77558.  
  77559.  
  77560.  
  77561.  
  77562.     DWORD Version;
  77563.  
  77564.  
  77565.  
  77566.  
  77567.     DWORD NextStreamOffset;
  77568.  
  77569.  
  77570.  
  77571.  
  77572.     DWORD Flags;
  77573.  
  77574.  
  77575.  
  77576.  
  77577.  
  77578.  
  77579.  
  77580.     DWORD ExtentInformationOffset;
  77581.  
  77582.  
  77583.  
  77584.  
  77585.  
  77586.     LARGE_INTEGER AllocationSize;
  77587.  
  77588.  
  77589.  
  77590.  
  77591.     LARGE_INTEGER EndOfFile;
  77592.  
  77593.  
  77594.  
  77595.  
  77596.  
  77597.     DWORD StreamInformationOffset;
  77598.  
  77599.  
  77600.  
  77601.  
  77602.     DWORD AttributeTypeCode;
  77603.  
  77604.  
  77605.  
  77606.  
  77607.     DWORD AttributeFlags;
  77608.  
  77609.  
  77610.  
  77611.  
  77612.     DWORD StreamIdentifierLength;
  77613.  
  77614.  
  77615.  
  77616.  
  77617.  
  77618.  
  77619.     WCHAR StreamIdentifier[1];
  77620.  
  77621. } STREAM_LAYOUT_ENTRY, *PSTREAM_LAYOUT_ENTRY;
  77622. # 13097 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77623. typedef struct _STREAM_EXTENT_ENTRY {
  77624.  
  77625.  
  77626.  
  77627.  
  77628.     DWORD Flags;
  77629.  
  77630.     union {
  77631.  
  77632.  
  77633.  
  77634.  
  77635.  
  77636.  
  77637.         RETRIEVAL_POINTERS_BUFFER RetrievalPointers;
  77638.  
  77639.     } ExtentInformation;
  77640.  
  77641. } STREAM_EXTENT_ENTRY, *PSTREAM_EXTENT_ENTRY;
  77642. # 13131 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77643. typedef struct _FSCTL_GET_INTEGRITY_INFORMATION_BUFFER {
  77644.     WORD ChecksumAlgorithm;
  77645.     WORD Reserved;
  77646.     DWORD Flags;
  77647.     DWORD ChecksumChunkSizeInBytes;
  77648.     DWORD ClusterSizeInBytes;
  77649. } FSCTL_GET_INTEGRITY_INFORMATION_BUFFER, *PFSCTL_GET_INTEGRITY_INFORMATION_BUFFER;
  77650.  
  77651. typedef struct _FSCTL_SET_INTEGRITY_INFORMATION_BUFFER {
  77652.     WORD ChecksumAlgorithm;
  77653.     WORD Reserved;
  77654.     DWORD Flags;
  77655. } FSCTL_SET_INTEGRITY_INFORMATION_BUFFER, *PFSCTL_SET_INTEGRITY_INFORMATION_BUFFER;
  77656.  
  77657.  
  77658.  
  77659.  
  77660.  
  77661.  
  77662. typedef struct _FSCTL_SET_INTEGRITY_INFORMATION_BUFFER_EX {
  77663.     BYTE EnableIntegrity;
  77664.     BYTE KeepIntegrityStateUnchanged;
  77665.     WORD Reserved;
  77666.     DWORD Flags;
  77667.     BYTE Version;
  77668.     BYTE Reserved2[7];
  77669. } FSCTL_SET_INTEGRITY_INFORMATION_BUFFER_EX, *PFSCTL_SET_INTEGRITY_INFORMATION_BUFFER_EX;
  77670. # 13167 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77671. typedef struct _FSCTL_OFFLOAD_READ_INPUT {
  77672.     DWORD Size;
  77673.     DWORD Flags;
  77674.     DWORD TokenTimeToLive;
  77675.     DWORD Reserved;
  77676.     DWORDLONG FileOffset;
  77677.     DWORDLONG CopyLength;
  77678. } FSCTL_OFFLOAD_READ_INPUT, *PFSCTL_OFFLOAD_READ_INPUT;
  77679.  
  77680. typedef struct _FSCTL_OFFLOAD_READ_OUTPUT {
  77681.     DWORD Size;
  77682.     DWORD Flags;
  77683.     DWORDLONG TransferLength;
  77684.     BYTE Token[512];
  77685. } FSCTL_OFFLOAD_READ_OUTPUT, *PFSCTL_OFFLOAD_READ_OUTPUT;
  77686. # 13192 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77687. typedef struct _FSCTL_OFFLOAD_WRITE_INPUT {
  77688.     DWORD Size;
  77689.     DWORD Flags;
  77690.     DWORDLONG FileOffset;
  77691.     DWORDLONG CopyLength;
  77692.     DWORDLONG TransferOffset;
  77693.     BYTE Token[512];
  77694. } FSCTL_OFFLOAD_WRITE_INPUT, *PFSCTL_OFFLOAD_WRITE_INPUT;
  77695.  
  77696. typedef struct _FSCTL_OFFLOAD_WRITE_OUTPUT {
  77697.     DWORD Size;
  77698.     DWORD Flags;
  77699.     DWORDLONG LengthWritten;
  77700. } FSCTL_OFFLOAD_WRITE_OUTPUT, *PFSCTL_OFFLOAD_WRITE_OUTPUT;
  77701. # 13214 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77702. typedef struct _SET_PURGE_FAILURE_MODE_INPUT {
  77703.     DWORD Flags;
  77704. } SET_PURGE_FAILURE_MODE_INPUT, *PSET_PURGE_FAILURE_MODE_INPUT;
  77705. # 13226 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77706. typedef struct _REPAIR_COPIES_INPUT {
  77707.  
  77708.     DWORD Size;
  77709.  
  77710.     DWORD Flags;
  77711.  
  77712.     LARGE_INTEGER FileOffset;
  77713.  
  77714.     DWORD Length;
  77715.  
  77716.     DWORD SourceCopy;
  77717.  
  77718.     DWORD NumberOfRepairCopies;
  77719.  
  77720.     DWORD RepairCopies[1];
  77721.  
  77722. } REPAIR_COPIES_INPUT, *PREPAIR_COPIES_INPUT;
  77723.  
  77724. typedef struct _REPAIR_COPIES_OUTPUT {
  77725.  
  77726.     DWORD Size;
  77727.  
  77728.     DWORD Status;
  77729.  
  77730.     LARGE_INTEGER ResumeFileOffset;
  77731.  
  77732. } REPAIR_COPIES_OUTPUT, *PREPAIR_COPIES_OUTPUT;
  77733. # 13279 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77734. typedef struct _FILE_REGION_INFO {
  77735.     LONGLONG FileOffset;
  77736.     LONGLONG Length;
  77737.     DWORD Usage;
  77738.     DWORD Reserved;
  77739. } FILE_REGION_INFO, *PFILE_REGION_INFO;
  77740.  
  77741. typedef struct _FILE_REGION_OUTPUT {
  77742.     DWORD Flags;
  77743.     DWORD TotalRegionEntryCount;
  77744.     DWORD RegionEntryCount;
  77745.     DWORD Reserved;
  77746.     FILE_REGION_INFO Region[1];
  77747. } FILE_REGION_OUTPUT, *PFILE_REGION_OUTPUT;
  77748.  
  77749.  
  77750.  
  77751.  
  77752.  
  77753.  
  77754. typedef struct _FILE_REGION_INPUT {
  77755.  
  77756.     LONGLONG FileOffset;
  77757.     LONGLONG Length;
  77758.     DWORD DesiredUsage;
  77759.  
  77760. } FILE_REGION_INPUT, *PFILE_REGION_INPUT;
  77761. # 13324 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77762. typedef struct _WRITE_USN_REASON_INPUT {
  77763.  
  77764.     DWORD Flags;
  77765.     DWORD UsnReasonToWrite;
  77766.  
  77767. } WRITE_USN_REASON_INPUT, *PWRITE_USN_REASON_INPUT;
  77768. # 13367 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77769. typedef enum _FILE_STORAGE_TIER_MEDIA_TYPE {
  77770.  
  77771.     FileStorageTierMediaTypeUnspecified = 0,
  77772.     FileStorageTierMediaTypeDisk = 1,
  77773.     FileStorageTierMediaTypeSsd = 2,
  77774.     FileStorageTierMediaTypeScm = 4,
  77775.     FileStorageTierMediaTypeMax
  77776.  
  77777. } FILE_STORAGE_TIER_MEDIA_TYPE, *PFILE_STORAGE_TIER_MEDIA_TYPE;
  77778.  
  77779. typedef enum _FILE_STORAGE_TIER_CLASS {
  77780.  
  77781.     FileStorageTierClassUnspecified = 0,
  77782.     FileStorageTierClassCapacity,
  77783.     FileStorageTierClassPerformance,
  77784.     FileStorageTierClassMax
  77785.  
  77786. } FILE_STORAGE_TIER_CLASS, *PFILE_STORAGE_TIER_CLASS;
  77787.  
  77788. typedef struct _FILE_STORAGE_TIER {
  77789.  
  77790.  
  77791.  
  77792.  
  77793.  
  77794.     GUID Id;
  77795.  
  77796.  
  77797.  
  77798.  
  77799.  
  77800.     WCHAR Name[(256)];
  77801.  
  77802.  
  77803.  
  77804.  
  77805.  
  77806.     WCHAR Description[(256)];
  77807.  
  77808.  
  77809.  
  77810.  
  77811.  
  77812.     DWORDLONG Flags;
  77813.  
  77814.  
  77815.  
  77816.  
  77817.  
  77818.     DWORDLONG ProvisionedCapacity;
  77819.  
  77820.  
  77821.  
  77822.  
  77823.  
  77824.     FILE_STORAGE_TIER_MEDIA_TYPE MediaType;
  77825.  
  77826.  
  77827.  
  77828.  
  77829.  
  77830.     FILE_STORAGE_TIER_CLASS Class;
  77831.  
  77832. } FILE_STORAGE_TIER, *PFILE_STORAGE_TIER;
  77833. # 13447 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77834. typedef struct _FSCTL_QUERY_STORAGE_CLASSES_OUTPUT {
  77835.  
  77836.  
  77837.  
  77838.  
  77839.  
  77840.  
  77841.  
  77842.     DWORD Version;
  77843.  
  77844.  
  77845.  
  77846.  
  77847.  
  77848.  
  77849.     DWORD Size;
  77850.  
  77851.  
  77852.  
  77853.  
  77854.  
  77855.     DWORD Flags;
  77856.  
  77857.  
  77858.  
  77859.  
  77860.  
  77861.     DWORD TotalNumberOfTiers;
  77862.  
  77863.  
  77864.  
  77865.  
  77866.  
  77867.     DWORD NumberOfTiersReturned;
  77868.  
  77869.  
  77870.  
  77871.  
  77872.  
  77873.     FILE_STORAGE_TIER Tiers[1];
  77874.  
  77875. } FSCTL_QUERY_STORAGE_CLASSES_OUTPUT, *PFSCTL_QUERY_STORAGE_CLASSES_OUTPUT;
  77876.  
  77877.  
  77878.  
  77879.  
  77880.  
  77881.  
  77882. typedef struct _STREAM_INFORMATION_ENTRY {
  77883.  
  77884.  
  77885.  
  77886.  
  77887.     DWORD Version;
  77888.  
  77889.  
  77890.  
  77891.  
  77892.     DWORD Flags;
  77893.  
  77894.  
  77895.  
  77896.  
  77897.  
  77898.     union _StreamInformation {
  77899.  
  77900.  
  77901.  
  77902.  
  77903.  
  77904.         struct _DesiredStorageClass {
  77905.  
  77906.  
  77907.  
  77908.  
  77909.  
  77910.             FILE_STORAGE_TIER_CLASS Class;
  77911.  
  77912.  
  77913.  
  77914.  
  77915.  
  77916.             DWORD Flags;
  77917.  
  77918.         } DesiredStorageClass;
  77919.  
  77920.     } StreamInformation;
  77921.  
  77922. } STREAM_INFORMATION_ENTRY, *PSTREAM_INFORMATION_ENTRY;
  77923. # 13546 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77924. typedef struct _FSCTL_QUERY_REGION_INFO_INPUT {
  77925.  
  77926.     DWORD Version;
  77927.     DWORD Size;
  77928.  
  77929.     DWORD Flags;
  77930.  
  77931.     DWORD NumberOfTierIds;
  77932.     GUID TierIds[1];
  77933.  
  77934. } FSCTL_QUERY_REGION_INFO_INPUT, *PFSCTL_QUERY_REGION_INFO_INPUT;
  77935.  
  77936.  
  77937.  
  77938.  
  77939.  
  77940.  
  77941.  
  77942. typedef struct _FILE_STORAGE_TIER_REGION {
  77943.  
  77944.     GUID TierId;
  77945.  
  77946.     DWORDLONG Offset;
  77947.     DWORDLONG Length;
  77948.  
  77949. } FILE_STORAGE_TIER_REGION, *PFILE_STORAGE_TIER_REGION;
  77950. # 13580 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77951. typedef struct _FSCTL_QUERY_REGION_INFO_OUTPUT {
  77952.  
  77953.     DWORD Version;
  77954.     DWORD Size;
  77955.  
  77956.     DWORD Flags;
  77957.     DWORD Reserved;
  77958.  
  77959.     DWORDLONG Alignment;
  77960.  
  77961.     DWORD TotalNumberOfRegions;
  77962.     DWORD NumberOfRegionsReturned;
  77963.  
  77964.     FILE_STORAGE_TIER_REGION Regions[1];
  77965.  
  77966. } FSCTL_QUERY_REGION_INFO_OUTPUT, *PFSCTL_QUERY_REGION_INFO_OUTPUT;
  77967.  
  77968.  
  77969.  
  77970.  
  77971.  
  77972.  
  77973.  
  77974. typedef struct _FILE_DESIRED_STORAGE_CLASS_INFORMATION {
  77975.  
  77976.  
  77977.  
  77978.  
  77979.  
  77980.     FILE_STORAGE_TIER_CLASS Class;
  77981.  
  77982.  
  77983.  
  77984.  
  77985.  
  77986.     DWORD Flags;
  77987.  
  77988. } FILE_DESIRED_STORAGE_CLASS_INFORMATION, *PFILE_DESIRED_STORAGE_CLASS_INFORMATION;
  77989. # 13632 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77990. typedef struct _DUPLICATE_EXTENTS_DATA {
  77991.     HANDLE FileHandle;
  77992.     LARGE_INTEGER SourceFileOffset;
  77993.     LARGE_INTEGER TargetFileOffset;
  77994.     LARGE_INTEGER ByteCount;
  77995. } DUPLICATE_EXTENTS_DATA, *PDUPLICATE_EXTENTS_DATA;
  77996. # 13664 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  77997. typedef struct _DUPLICATE_EXTENTS_DATA_EX {
  77998.     SIZE_T Size;
  77999.     HANDLE FileHandle;
  78000.     LARGE_INTEGER SourceFileOffset;
  78001.     LARGE_INTEGER TargetFileOffset;
  78002.     LARGE_INTEGER ByteCount;
  78003.     DWORD Flags;
  78004. } DUPLICATE_EXTENTS_DATA_EX, *PDUPLICATE_EXTENTS_DATA_EX;
  78005. # 13700 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78006. typedef enum _REFS_SMR_VOLUME_GC_STATE {
  78007.  
  78008.     SmrGcStateInactive = 0,
  78009.     SmrGcStatePaused = 1,
  78010.     SmrGcStateActive = 2,
  78011.     SmrGcStateActiveFullSpeed = 3,
  78012.  
  78013. } REFS_SMR_VOLUME_GC_STATE, *PREFS_SMR_VOLUME_GC_STATE;
  78014.  
  78015. typedef struct _REFS_SMR_VOLUME_INFO_OUTPUT {
  78016.  
  78017.     DWORD Version;
  78018.     DWORD Flags;
  78019.  
  78020.     LARGE_INTEGER SizeOfRandomlyWritableTier;
  78021.     LARGE_INTEGER FreeSpaceInRandomlyWritableTier;
  78022.     LARGE_INTEGER SizeofSMRTier;
  78023.     LARGE_INTEGER FreeSpaceInSMRTier;
  78024.     LARGE_INTEGER UsableFreeSpaceInSMRTier;
  78025.  
  78026.     REFS_SMR_VOLUME_GC_STATE VolumeGcState;
  78027.     DWORD VolumeGcLastStatus;
  78028.  
  78029.     DWORDLONG Unused[7];
  78030.  
  78031. } REFS_SMR_VOLUME_INFO_OUTPUT, *PREFS_SMR_VOLUME_INFO_OUTPUT;
  78032.  
  78033.  
  78034.  
  78035.  
  78036.  
  78037.  
  78038.  
  78039. typedef enum _REFS_SMR_VOLUME_GC_ACTION {
  78040.  
  78041.     SmrGcActionStart = 1,
  78042.     SmrGcActionStartFullSpeed = 2,
  78043.     SmrGcActionPause = 3,
  78044.     SmrGcActionStop = 4,
  78045.  
  78046. } REFS_SMR_VOLUME_GC_ACTION, *PREFS_SMR_VOLUME_GC_ACTION;
  78047.  
  78048. typedef enum _REFS_SMR_VOLUME_GC_METHOD {
  78049.  
  78050.     SmrGcMethodCompaction = 1,
  78051.     SmrGcMethodCompression = 2,
  78052.     SmrGcMethodRotation = 3,
  78053.  
  78054. } REFS_SMR_VOLUME_GC_METHOD, *PREFS_SMR_VOLUME_GC_METHOD;
  78055.  
  78056. typedef struct _REFS_SMR_VOLUME_GC_PARAMETERS {
  78057.  
  78058.     DWORD Version;
  78059.     DWORD Flags;
  78060.  
  78061.     REFS_SMR_VOLUME_GC_ACTION Action;
  78062.     REFS_SMR_VOLUME_GC_METHOD Method;
  78063.  
  78064.     DWORD IoGranularity;
  78065.     DWORD CompressionFormat;
  78066.  
  78067.     DWORDLONG Unused[8];
  78068.  
  78069. } REFS_SMR_VOLUME_GC_PARAMETERS, *PREFS_SMR_VOLUME_GC_PARAMETERS;
  78070. # 13776 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78071. typedef struct _STREAMS_QUERY_PARAMETERS_OUTPUT_BUFFER {
  78072.  
  78073.     DWORD OptimalWriteSize;
  78074.     DWORD StreamGranularitySize;
  78075.     DWORD StreamIdMin;
  78076.     DWORD StreamIdMax;
  78077.  
  78078. } STREAMS_QUERY_PARAMETERS_OUTPUT_BUFFER, *PSTREAMS_QUERY_PARAMETERS_OUTPUT_BUFFER;
  78079. # 13792 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78080. typedef struct _STREAMS_ASSOCIATE_ID_INPUT_BUFFER {
  78081.  
  78082.     DWORD Flags;
  78083.     DWORD StreamId;
  78084.  
  78085. } STREAMS_ASSOCIATE_ID_INPUT_BUFFER, *PSTREAMS_ASSOCIATE_ID_INPUT_BUFFER;
  78086.  
  78087.  
  78088.  
  78089.  
  78090.  
  78091. typedef struct _STREAMS_QUERY_ID_OUTPUT_BUFFER {
  78092.  
  78093.     DWORD StreamId;
  78094.  
  78095. } STREAMS_QUERY_ID_OUTPUT_BUFFER, *PSTREAMS_QUERY_ID_OUTPUT_BUFFER;
  78096. # 13817 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78097. typedef struct _QUERY_BAD_RANGES_INPUT_RANGE {
  78098.  
  78099.  
  78100.  
  78101.  
  78102.  
  78103.     DWORDLONG StartOffset;
  78104.  
  78105.  
  78106.  
  78107.  
  78108.  
  78109.     DWORDLONG LengthInBytes;
  78110.  
  78111. } QUERY_BAD_RANGES_INPUT_RANGE, *PQUERY_BAD_RANGES_INPUT_RANGE;
  78112.  
  78113.  
  78114.  
  78115.  
  78116.  
  78117.  
  78118.  
  78119. typedef struct _QUERY_BAD_RANGES_INPUT {
  78120.  
  78121.     DWORD Flags;
  78122.  
  78123.  
  78124.  
  78125.  
  78126.  
  78127.     DWORD NumRanges;
  78128. # 13857 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78129.     QUERY_BAD_RANGES_INPUT_RANGE Ranges[1];
  78130.  
  78131. } QUERY_BAD_RANGES_INPUT, *PQUERY_BAD_RANGES_INPUT;
  78132.  
  78133. typedef struct _QUERY_BAD_RANGES_OUTPUT_RANGE {
  78134.  
  78135.  
  78136.  
  78137.  
  78138.  
  78139.     DWORD Flags;
  78140.  
  78141.     DWORD Reserved;
  78142.  
  78143.  
  78144.  
  78145.  
  78146.  
  78147.     DWORDLONG StartOffset;
  78148.  
  78149.  
  78150.  
  78151.  
  78152.  
  78153.     DWORDLONG LengthInBytes;
  78154.  
  78155. } QUERY_BAD_RANGES_OUTPUT_RANGE, *PQUERY_BAD_RANGES_OUTPUT_RANGE;
  78156.  
  78157.  
  78158.  
  78159.  
  78160.  
  78161. typedef struct _QUERY_BAD_RANGES_OUTPUT {
  78162.  
  78163.     DWORD Flags;
  78164.  
  78165.  
  78166.  
  78167.  
  78168.  
  78169.  
  78170.     DWORD NumBadRanges;
  78171. # 13908 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78172.     DWORDLONG NextOffsetToLookUp;
  78173.  
  78174.  
  78175.  
  78176.  
  78177.  
  78178.  
  78179.     QUERY_BAD_RANGES_OUTPUT_RANGE BadRanges[1];
  78180.  
  78181. } QUERY_BAD_RANGES_OUTPUT, *PQUERY_BAD_RANGES_OUTPUT;
  78182. # 13936 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78183. typedef struct _SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT {
  78184.  
  78185.     DWORD Flags;
  78186. # 13949 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78187.     DWORD AlignmentShift;
  78188. # 13959 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78189.     DWORDLONG FileOffsetToAlign;
  78190. # 13969 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78191.     DWORD FallbackAlignmentShift;
  78192.  
  78193.  
  78194. } SET_DAX_ALLOC_ALIGNMENT_HINT_INPUT, *PSET_DAX_ALLOC_ALIGNMENT_HINT_INPUT;
  78195. # 14001 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78196. typedef enum _VIRTUAL_STORAGE_BEHAVIOR_CODE {
  78197.  
  78198.     VirtualStorageBehaviorUndefined = 0,
  78199.     VirtualStorageBehaviorCacheWriteThrough = 1,
  78200.     VirtualStorageBehaviorCacheWriteBack = 2
  78201.  
  78202. } VIRTUAL_STORAGE_BEHAVIOR_CODE, *PVIRTUAL_STORAGE_BEHAVIOR_CODE;
  78203.  
  78204. typedef struct _VIRTUAL_STORAGE_SET_BEHAVIOR_INPUT {
  78205.  
  78206.     DWORD Size;
  78207.     VIRTUAL_STORAGE_BEHAVIOR_CODE BehaviorCode;
  78208.  
  78209. } VIRTUAL_STORAGE_SET_BEHAVIOR_INPUT, *PVIRTUAL_STORAGE_SET_BEHAVIOR_INPUT;
  78210.  
  78211.  
  78212.  
  78213. typedef struct _ENCRYPTION_KEY_CTRL_INPUT {
  78214.  
  78215.     BOOLEAN IsProtect;
  78216. } ENCRYPTION_KEY_CTRL_INPUT, *PENCRYPTION_KEY_CTRL_INPUT;
  78217. # 14039 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78218. typedef struct _WOF_EXTERNAL_INFO {
  78219.     DWORD Version;
  78220.     DWORD Provider;
  78221. } WOF_EXTERNAL_INFO, *PWOF_EXTERNAL_INFO;
  78222.  
  78223. typedef struct _WOF_EXTERNAL_FILE_ID {
  78224.     FILE_ID_128 FileId;
  78225. } WOF_EXTERNAL_FILE_ID, *PWOF_EXTERNAL_FILE_ID;
  78226.  
  78227. typedef struct _WOF_VERSION_INFO {
  78228.     DWORD WofVersion;
  78229. } WOF_VERSION_INFO, *PWOF_VERSION_INFO;
  78230. # 14065 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78231. typedef struct _WIM_PROVIDER_EXTERNAL_INFO {
  78232.     DWORD Version;
  78233.     DWORD Flags;
  78234.     LARGE_INTEGER DataSourceId;
  78235.     BYTE ResourceHash[20];
  78236. } WIM_PROVIDER_EXTERNAL_INFO, *PWIM_PROVIDER_EXTERNAL_INFO;
  78237. # 14085 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78238. typedef struct _WIM_PROVIDER_ADD_OVERLAY_INPUT {
  78239.     DWORD WimType;
  78240.     DWORD WimIndex;
  78241.     DWORD WimFileNameOffset;
  78242.     DWORD WimFileNameLength;
  78243. } WIM_PROVIDER_ADD_OVERLAY_INPUT, *PWIM_PROVIDER_ADD_OVERLAY_INPUT;
  78244.  
  78245. typedef struct _WIM_PROVIDER_UPDATE_OVERLAY_INPUT {
  78246.     LARGE_INTEGER DataSourceId;
  78247.     DWORD WimFileNameOffset;
  78248.     DWORD WimFileNameLength;
  78249. } WIM_PROVIDER_UPDATE_OVERLAY_INPUT, *PWIM_PROVIDER_UPDATE_OVERLAY_INPUT;
  78250.  
  78251. typedef struct _WIM_PROVIDER_REMOVE_OVERLAY_INPUT {
  78252.     LARGE_INTEGER DataSourceId;
  78253. } WIM_PROVIDER_REMOVE_OVERLAY_INPUT, *PWIM_PROVIDER_REMOVE_OVERLAY_INPUT;
  78254.  
  78255. typedef struct _WIM_PROVIDER_SUSPEND_OVERLAY_INPUT {
  78256.     LARGE_INTEGER DataSourceId;
  78257. } WIM_PROVIDER_SUSPEND_OVERLAY_INPUT, *PWIM_PROVIDER_SUSPEND_OVERLAY_INPUT;
  78258.  
  78259. typedef struct _WIM_PROVIDER_OVERLAY_ENTRY {
  78260.     DWORD NextEntryOffset;
  78261.     LARGE_INTEGER DataSourceId;
  78262.     GUID WimGuid;
  78263.     DWORD WimFileNameOffset;
  78264.     DWORD WimType;
  78265.     DWORD WimIndex;
  78266.     DWORD Flags;
  78267. } WIM_PROVIDER_OVERLAY_ENTRY, *PWIM_PROVIDER_OVERLAY_ENTRY;
  78268. # 14137 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78269. typedef struct _FILE_PROVIDER_EXTERNAL_INFO_V0 {
  78270.     DWORD Version;
  78271.     DWORD Algorithm;
  78272. } FILE_PROVIDER_EXTERNAL_INFO_V0, *PFILE_PROVIDER_EXTERNAL_INFO_V0;
  78273.  
  78274. typedef struct _FILE_PROVIDER_EXTERNAL_INFO_V1 {
  78275.     DWORD Version;
  78276.     DWORD Algorithm;
  78277.     DWORD Flags;
  78278. } FILE_PROVIDER_EXTERNAL_INFO_V1, *PFILE_PROVIDER_EXTERNAL_INFO_V1;
  78279.  
  78280. typedef FILE_PROVIDER_EXTERNAL_INFO_V1 FILE_PROVIDER_EXTERNAL_INFO;
  78281. typedef PFILE_PROVIDER_EXTERNAL_INFO_V1 PFILE_PROVIDER_EXTERNAL_INFO;
  78282.  
  78283.  
  78284.  
  78285.  
  78286.  
  78287.  
  78288. typedef struct _CONTAINER_VOLUME_STATE {
  78289.     DWORD Flags;
  78290. } CONTAINER_VOLUME_STATE, *PCONTAINER_VOLUME_STATE;
  78291.  
  78292.  
  78293.  
  78294.  
  78295. typedef struct _CONTAINER_ROOT_INFO_INPUT {
  78296.     DWORD Flags;
  78297. } CONTAINER_ROOT_INFO_INPUT, *PCONTAINER_ROOT_INFO_INPUT;
  78298.  
  78299. typedef struct _CONTAINER_ROOT_INFO_OUTPUT {
  78300.     WORD ContainerRootIdLength;
  78301.     BYTE ContainerRootId[1];
  78302. } CONTAINER_ROOT_INFO_OUTPUT, *PCONTAINER_ROOT_INFO_OUTPUT;
  78303. # 14188 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78304. typedef struct _VIRTUALIZATION_INSTANCE_INFO_INPUT {
  78305.     DWORD NumberOfWorkerThreads;
  78306.     DWORD Flags;
  78307. } VIRTUALIZATION_INSTANCE_INFO_INPUT, *PVIRTUALIZATION_INSTANCE_INFO_INPUT;
  78308.  
  78309.  
  78310.  
  78311. typedef struct _VIRTUALIZATION_INSTANCE_INFO_INPUT_EX {
  78312.     WORD HeaderSize;
  78313.     DWORD Flags;
  78314.     DWORD NotificationInfoSize;
  78315.     WORD NotificationInfoOffset;
  78316.     WORD ProviderMajorVersion;
  78317. } VIRTUALIZATION_INSTANCE_INFO_INPUT_EX, *PVIRTUALIZATION_INSTANCE_INFO_INPUT_EX;
  78318.  
  78319. typedef struct _VIRTUALIZATION_INSTANCE_INFO_OUTPUT {
  78320.     GUID VirtualizationInstanceID;
  78321. } VIRTUALIZATION_INSTANCE_INFO_OUTPUT, *PVIRTUALIZATION_INSTANCE_INFO_OUTPUT;
  78322.  
  78323.  
  78324.  
  78325.  
  78326.  
  78327. typedef struct _GET_FILTER_FILE_IDENTIFIER_INPUT {
  78328.     WORD AltitudeLength;
  78329.     WCHAR Altitude[1];
  78330. } GET_FILTER_FILE_IDENTIFIER_INPUT, *PGET_FILTER_FILE_IDENTIFIER_INPUT;
  78331.  
  78332. typedef struct _GET_FILTER_FILE_IDENTIFIER_OUTPUT {
  78333.     WORD FilterFileIdentifierLength;
  78334.     BYTE FilterFileIdentifier[1];
  78335. } GET_FILTER_FILE_IDENTIFIER_OUTPUT, *PGET_FILTER_FILE_IDENTIFIER_OUTPUT;
  78336. # 14308 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78337. typedef struct _DISK_EXTENT {
  78338.  
  78339.  
  78340.  
  78341.  
  78342.  
  78343.     DWORD DiskNumber;
  78344.  
  78345.  
  78346.  
  78347.  
  78348.  
  78349.  
  78350.     LARGE_INTEGER StartingOffset;
  78351.     LARGE_INTEGER ExtentLength;
  78352.  
  78353. } DISK_EXTENT, *PDISK_EXTENT;
  78354.  
  78355. typedef struct _VOLUME_DISK_EXTENTS {
  78356.  
  78357.  
  78358.  
  78359.  
  78360.  
  78361.     DWORD NumberOfDiskExtents;
  78362.     DISK_EXTENT Extents[1];
  78363.  
  78364. } VOLUME_DISK_EXTENTS, *PVOLUME_DISK_EXTENTS;
  78365. # 14396 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78366. typedef struct _VOLUME_GET_GPT_ATTRIBUTES_INFORMATION {
  78367.  
  78368.  
  78369.  
  78370.  
  78371.  
  78372.     DWORDLONG GptAttributes;
  78373.  
  78374. } VOLUME_GET_GPT_ATTRIBUTES_INFORMATION, *PVOLUME_GET_GPT_ATTRIBUTES_INFORMATION;
  78375. # 14419 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78376. struct _IO_IRP_EXT_TRACK_OFFSET_HEADER;
  78377.  
  78378. typedef void
  78379. (*PIO_IRP_EXT_PROCESS_TRACKED_OFFSET_CALLBACK)(
  78380.          struct _IO_IRP_EXT_TRACK_OFFSET_HEADER *SourceContext,
  78381.             struct _IO_IRP_EXT_TRACK_OFFSET_HEADER *TargetContext,
  78382.          LONGLONG RelativeOffset
  78383.     );
  78384. # 14437 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78385. typedef struct _IO_IRP_EXT_TRACK_OFFSET_HEADER {
  78386.  
  78387.     WORD Validation;
  78388.  
  78389.  
  78390.  
  78391.     WORD Flags;
  78392.  
  78393.     PIO_IRP_EXT_PROCESS_TRACKED_OFFSET_CALLBACK TrackedOffsetCallback;
  78394.  
  78395. } IO_IRP_EXT_TRACK_OFFSET_HEADER, *PIO_IRP_EXT_TRACK_OFFSET_HEADER;
  78396. # 14468 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winioctl.h" 3
  78397. #pragma option pop
  78398. # 32 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 2 3
  78399.  
  78400. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/winsmcrd.h" 1 3
  78401. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/winsmcrd.h" 3
  78402. #pragma option push -b -a8 -pc -A- -w-pun
  78403. # 37 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/winsmcrd.h" 3
  78404. typedef DWORD ULONG;
  78405. typedef WORD UWORD;
  78406. typedef BYTE UCHAR;
  78407. # 60 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/winsmcrd.h" 3
  78408. extern const GUID GUID_DEVINTERFACE_SMARTCARD_READER;
  78409. # 271 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/winsmcrd.h" 3
  78410. typedef struct _SCARD_IO_REQUEST{
  78411.     DWORD dwProtocol;
  78412.     DWORD cbPciLength;
  78413. } SCARD_IO_REQUEST, *PSCARD_IO_REQUEST, *LPSCARD_IO_REQUEST;
  78414. typedef const SCARD_IO_REQUEST *LPCSCARD_IO_REQUEST;
  78415.  
  78416.  
  78417.  
  78418.  
  78419.  
  78420.  
  78421. typedef struct _SCARD_T0_COMMAND {
  78422.     BYTE
  78423.         bCla,
  78424.         bIns,
  78425.         bP1,
  78426.         bP2,
  78427.         bP3;
  78428. } SCARD_T0_COMMAND, *LPSCARD_T0_COMMAND;
  78429.  
  78430. typedef struct _SCARD_T0_REQUEST {
  78431.     SCARD_IO_REQUEST ioRequest;
  78432.     BYTE
  78433.         bSw1,
  78434.         bSw2;
  78435. #pragma warning(push)
  78436. #pragma warning(disable: 4201)
  78437.  union
  78438.     {
  78439.         SCARD_T0_COMMAND CmdBytes;
  78440.         BYTE rgbHeader[5];
  78441.     } ;
  78442. #pragma warning(pop)
  78443. } SCARD_T0_REQUEST;
  78444.  
  78445. typedef SCARD_T0_REQUEST *PSCARD_T0_REQUEST, *LPSCARD_T0_REQUEST;
  78446.  
  78447.  
  78448.  
  78449.  
  78450.  
  78451.  
  78452. typedef struct _SCARD_T1_REQUEST {
  78453.     SCARD_IO_REQUEST ioRequest;
  78454. } SCARD_T1_REQUEST;
  78455. typedef SCARD_T1_REQUEST *PSCARD_T1_REQUEST, *LPSCARD_T1_REQUEST;
  78456. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/winsmcrd.h" 3
  78457. #pragma option pop
  78458. # 33 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 2 3
  78459. # 48 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78460. #pragma region Desktop Family
  78461.  
  78462.  
  78463.  
  78464.  
  78465. typedef const BYTE *LPCBYTE;
  78466.  
  78467.  
  78468.  
  78469. typedef const void *LPCVOID;
  78470. # 72 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78471. __declspec(dllimport) extern const SCARD_IO_REQUEST
  78472.     g_rgSCardT0Pci,
  78473.     g_rgSCardT1Pci,
  78474.     g_rgSCardRawPci;
  78475. # 90 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78476. typedef ULONG_PTR SCARDCONTEXT;
  78477. typedef SCARDCONTEXT *PSCARDCONTEXT, *LPSCARDCONTEXT;
  78478.  
  78479. typedef ULONG_PTR SCARDHANDLE;
  78480. typedef SCARDHANDLE *PSCARDHANDLE, *LPSCARDHANDLE;
  78481. # 112 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78482. extern LONG __stdcall
  78483. SCardEstablishContext(
  78484.           DWORD dwScope,
  78485.                 LPCVOID pvReserved1,
  78486.                 LPCVOID pvReserved2,
  78487.           LPSCARDCONTEXT phContext);
  78488.  
  78489. extern LONG __stdcall
  78490. SCardReleaseContext(
  78491.               SCARDCONTEXT hContext);
  78492.  
  78493. extern LONG __stdcall
  78494. SCardIsValidContext(
  78495.               SCARDCONTEXT hContext);
  78496. # 150 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78497. extern LONG __stdcall
  78498. SCardListReaderGroupsA(
  78499.             SCARDCONTEXT hContext,
  78500.                                                                 LPSTR mszGroups,
  78501.             LPDWORD pcchGroups);
  78502. extern LONG __stdcall
  78503. SCardListReaderGroupsW(
  78504.             SCARDCONTEXT hContext,
  78505.                                                                 LPWSTR mszGroups,
  78506.             LPDWORD pcchGroups);
  78507.  
  78508.  
  78509.  
  78510.  
  78511.  
  78512.  
  78513.  
  78514. extern LONG __stdcall
  78515. SCardListReadersA(
  78516.              SCARDCONTEXT hContext,
  78517.              LPCSTR mszGroups,
  78518.  
  78519.  
  78520.              LPSTR mszReaders,
  78521.              LPDWORD pcchReaders);
  78522.  
  78523. extern LONG __stdcall
  78524. SCardListReadersW(
  78525.              SCARDCONTEXT hContext,
  78526.              LPCWSTR mszGroups,
  78527.  
  78528.  
  78529.              LPWSTR mszReaders,
  78530.              LPDWORD pcchReaders);
  78531.  
  78532.  
  78533.  
  78534.  
  78535.  
  78536.  
  78537.  
  78538. extern LONG __stdcall
  78539. SCardListCardsA(
  78540.               SCARDCONTEXT hContext,
  78541.               LPCBYTE pbAtr,
  78542.                                          LPCGUID rgquidInterfaces,
  78543.               DWORD cguidInterfaceCount,
  78544.  
  78545.  
  78546.               CHAR *mszCards,
  78547.               LPDWORD pcchCards);
  78548.  
  78549. extern LONG __stdcall
  78550. SCardListCardsW(
  78551.               SCARDCONTEXT hContext,
  78552.               LPCBYTE pbAtr,
  78553.                                          LPCGUID rgquidInterfaces,
  78554.               DWORD cguidInterfaceCount,
  78555.  
  78556.  
  78557.               WCHAR *mszCards,
  78558.               LPDWORD pcchCards);
  78559. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78560. extern LONG __stdcall
  78561. SCardListInterfacesA(
  78562.              SCARDCONTEXT hContext,
  78563.              LPCSTR szCard,
  78564.              LPGUID pguidInterfaces,
  78565.              LPDWORD pcguidInterfaces);
  78566. extern LONG __stdcall
  78567. SCardListInterfacesW(
  78568.              SCARDCONTEXT hContext,
  78569.              LPCWSTR szCard,
  78570.              LPGUID pguidInterfaces,
  78571.              LPDWORD pcguidInterfaces);
  78572.  
  78573.  
  78574.  
  78575.  
  78576.  
  78577.  
  78578. extern LONG __stdcall
  78579. SCardGetProviderIdA(
  78580.              SCARDCONTEXT hContext,
  78581.              LPCSTR szCard,
  78582.              LPGUID pguidProviderId);
  78583. extern LONG __stdcall
  78584. SCardGetProviderIdW(
  78585.              SCARDCONTEXT hContext,
  78586.              LPCWSTR szCard,
  78587.              LPGUID pguidProviderId);
  78588. # 272 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78589. extern LONG __stdcall
  78590. SCardGetCardTypeProviderNameA(
  78591.               SCARDCONTEXT hContext,
  78592.               LPCSTR szCardName,
  78593.               DWORD dwProviderId,
  78594.  
  78595.  
  78596.               CHAR *szProvider,
  78597.               LPDWORD pcchProvider);
  78598.  
  78599. extern LONG __stdcall
  78600. SCardGetCardTypeProviderNameW(
  78601.               SCARDCONTEXT hContext,
  78602.               LPCWSTR szCardName,
  78603.               DWORD dwProviderId,
  78604.  
  78605.  
  78606.               WCHAR *szProvider,
  78607.               LPDWORD pcchProvider);
  78608. # 305 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78609. extern LONG __stdcall
  78610. SCardIntroduceReaderGroupA(
  78611.          SCARDCONTEXT hContext,
  78612.          LPCSTR szGroupName);
  78613. extern LONG __stdcall
  78614. SCardIntroduceReaderGroupW(
  78615.          SCARDCONTEXT hContext,
  78616.          LPCWSTR szGroupName);
  78617.  
  78618.  
  78619.  
  78620.  
  78621.  
  78622.  
  78623. extern LONG __stdcall
  78624. SCardForgetReaderGroupA(
  78625.          SCARDCONTEXT hContext,
  78626.          LPCSTR szGroupName);
  78627. extern LONG __stdcall
  78628. SCardForgetReaderGroupW(
  78629.          SCARDCONTEXT hContext,
  78630.          LPCWSTR szGroupName);
  78631.  
  78632.  
  78633.  
  78634.  
  78635.  
  78636.  
  78637. extern LONG __stdcall
  78638. SCardIntroduceReaderA(
  78639.          SCARDCONTEXT hContext,
  78640.          LPCSTR szReaderName,
  78641.          LPCSTR szDeviceName);
  78642. extern LONG __stdcall
  78643. SCardIntroduceReaderW(
  78644.          SCARDCONTEXT hContext,
  78645.          LPCWSTR szReaderName,
  78646.          LPCWSTR szDeviceName);
  78647.  
  78648.  
  78649.  
  78650.  
  78651.  
  78652.  
  78653. extern LONG __stdcall
  78654. SCardForgetReaderA(
  78655.          SCARDCONTEXT hContext,
  78656.          LPCSTR szReaderName);
  78657. extern LONG __stdcall
  78658. SCardForgetReaderW(
  78659.          SCARDCONTEXT hContext,
  78660.          LPCWSTR szReaderName);
  78661.  
  78662.  
  78663.  
  78664.  
  78665.  
  78666.  
  78667. extern LONG __stdcall
  78668. SCardAddReaderToGroupA(
  78669.          SCARDCONTEXT hContext,
  78670.          LPCSTR szReaderName,
  78671.          LPCSTR szGroupName);
  78672. extern LONG __stdcall
  78673. SCardAddReaderToGroupW(
  78674.          SCARDCONTEXT hContext,
  78675.          LPCWSTR szReaderName,
  78676.          LPCWSTR szGroupName);
  78677.  
  78678.  
  78679.  
  78680.  
  78681.  
  78682.  
  78683. extern LONG __stdcall
  78684. SCardRemoveReaderFromGroupA(
  78685.          SCARDCONTEXT hContext,
  78686.          LPCSTR szReaderName,
  78687.          LPCSTR szGroupName);
  78688. extern LONG __stdcall
  78689. SCardRemoveReaderFromGroupW(
  78690.          SCARDCONTEXT hContext,
  78691.          LPCWSTR szReaderName,
  78692.          LPCWSTR szGroupName);
  78693.  
  78694.  
  78695.  
  78696.  
  78697.  
  78698.  
  78699. extern LONG __stdcall
  78700. SCardIntroduceCardTypeA(
  78701.              SCARDCONTEXT hContext,
  78702.              LPCSTR szCardName,
  78703.              LPCGUID pguidPrimaryProvider,
  78704.              LPCGUID rgguidInterfaces,
  78705.              DWORD dwInterfaceCount,
  78706.              LPCBYTE pbAtr,
  78707.              LPCBYTE pbAtrMask,
  78708.              DWORD cbAtrLen);
  78709. extern LONG __stdcall
  78710. SCardIntroduceCardTypeW(
  78711.              SCARDCONTEXT hContext,
  78712.              LPCWSTR szCardName,
  78713.              LPCGUID pguidPrimaryProvider,
  78714.              LPCGUID rgguidInterfaces,
  78715.              DWORD dwInterfaceCount,
  78716.              LPCBYTE pbAtr,
  78717.              LPCBYTE pbAtrMask,
  78718.              DWORD cbAtrLen);
  78719. # 439 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78720. extern LONG __stdcall
  78721. SCardSetCardTypeProviderNameA(
  78722.          SCARDCONTEXT hContext,
  78723.          LPCSTR szCardName,
  78724.          DWORD dwProviderId,
  78725.          LPCSTR szProvider);
  78726. extern LONG __stdcall
  78727. SCardSetCardTypeProviderNameW(
  78728.          SCARDCONTEXT hContext,
  78729.          LPCWSTR szCardName,
  78730.          DWORD dwProviderId,
  78731.          LPCWSTR szProvider);
  78732. # 460 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78733. extern LONG __stdcall
  78734. SCardForgetCardTypeA(
  78735.          SCARDCONTEXT hContext,
  78736.          LPCSTR szCardName);
  78737. extern LONG __stdcall
  78738. SCardForgetCardTypeW(
  78739.          SCARDCONTEXT hContext,
  78740.          LPCWSTR szCardName);
  78741. # 484 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78742. extern LONG __stdcall
  78743. SCardFreeMemory(
  78744.          SCARDCONTEXT hContext,
  78745.          LPCVOID pvMem);
  78746.  
  78747.  
  78748. extern HANDLE __stdcall
  78749. SCardAccessStartedEvent(void);
  78750.  
  78751. extern void __stdcall
  78752. SCardReleaseStartedEvent(void);
  78753. # 505 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78754. typedef struct {
  78755.     LPCSTR szReader;
  78756.     LPVOID pvUserData;
  78757.     DWORD dwCurrentState;
  78758.     DWORD dwEventState;
  78759.     DWORD cbAtr;
  78760.     BYTE rgbAtr[36];
  78761. } SCARD_READERSTATEA, *PSCARD_READERSTATEA, *LPSCARD_READERSTATEA;
  78762. typedef struct {
  78763.     LPCWSTR szReader;
  78764.     LPVOID pvUserData;
  78765.     DWORD dwCurrentState;
  78766.     DWORD dwEventState;
  78767.     DWORD cbAtr;
  78768.     BYTE rgbAtr[36];
  78769. } SCARD_READERSTATEW, *PSCARD_READERSTATEW, *LPSCARD_READERSTATEW;
  78770.  
  78771.  
  78772.  
  78773.  
  78774.  
  78775. typedef SCARD_READERSTATEA SCARD_READERSTATE;
  78776. typedef PSCARD_READERSTATEA PSCARD_READERSTATE;
  78777. typedef LPSCARD_READERSTATEA LPSCARD_READERSTATE;
  78778. # 601 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78779. extern LONG __stdcall
  78780. SCardLocateCardsA(
  78781.             SCARDCONTEXT hContext,
  78782.             LPCSTR mszCards,
  78783.             LPSCARD_READERSTATEA rgReaderStates,
  78784.             DWORD cReaders);
  78785. extern LONG __stdcall
  78786. SCardLocateCardsW(
  78787.             SCARDCONTEXT hContext,
  78788.             LPCWSTR mszCards,
  78789.             LPSCARD_READERSTATEW rgReaderStates,
  78790.             DWORD cReaders);
  78791.  
  78792.  
  78793.  
  78794.  
  78795.  
  78796.  
  78797.  
  78798. typedef struct _SCARD_ATRMASK {
  78799.     DWORD cbAtr;
  78800.     BYTE rgbAtr[36];
  78801.     BYTE rgbMask[36];
  78802. } SCARD_ATRMASK, *PSCARD_ATRMASK, *LPSCARD_ATRMASK;
  78803.  
  78804.  
  78805. extern LONG __stdcall
  78806. SCardLocateCardsByATRA(
  78807.             SCARDCONTEXT hContext,
  78808.             LPSCARD_ATRMASK rgAtrMasks,
  78809.             DWORD cAtrs,
  78810.             LPSCARD_READERSTATEA rgReaderStates,
  78811.             DWORD cReaders);
  78812. extern LONG __stdcall
  78813. SCardLocateCardsByATRW(
  78814.             SCARDCONTEXT hContext,
  78815.             LPSCARD_ATRMASK rgAtrMasks,
  78816.             DWORD cAtrs,
  78817.             LPSCARD_READERSTATEW rgReaderStates,
  78818.             DWORD cReaders);
  78819.  
  78820.  
  78821.  
  78822.  
  78823.  
  78824.  
  78825.  
  78826. extern LONG __stdcall
  78827. SCardGetStatusChangeA(
  78828.             SCARDCONTEXT hContext,
  78829.             DWORD dwTimeout,
  78830.             LPSCARD_READERSTATEA rgReaderStates,
  78831.             DWORD cReaders);
  78832. extern LONG __stdcall
  78833. SCardGetStatusChangeW(
  78834.             SCARDCONTEXT hContext,
  78835.             DWORD dwTimeout,
  78836.             LPSCARD_READERSTATEW rgReaderStates,
  78837.             DWORD cReaders);
  78838.  
  78839.  
  78840.  
  78841.  
  78842.  
  78843.  
  78844. extern LONG __stdcall
  78845. SCardCancel(
  78846.             SCARDCONTEXT hContext);
  78847. # 692 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78848. extern LONG __stdcall
  78849. SCardConnectA(
  78850.             SCARDCONTEXT hContext,
  78851.             LPCSTR szReader,
  78852.             DWORD dwShareMode,
  78853.             DWORD dwPreferredProtocols,
  78854.             LPSCARDHANDLE phCard,
  78855.             LPDWORD pdwActiveProtocol);
  78856. extern LONG __stdcall
  78857. SCardConnectW(
  78858.             SCARDCONTEXT hContext,
  78859.             LPCWSTR szReader,
  78860.             DWORD dwShareMode,
  78861.             DWORD dwPreferredProtocols,
  78862.             LPSCARDHANDLE phCard,
  78863.             LPDWORD pdwActiveProtocol);
  78864.  
  78865.  
  78866.  
  78867.  
  78868.  
  78869.  
  78870. extern LONG __stdcall
  78871. SCardReconnect(
  78872.               SCARDHANDLE hCard,
  78873.               DWORD dwShareMode,
  78874.               DWORD dwPreferredProtocols,
  78875.               DWORD dwInitialization,
  78876.               LPDWORD pdwActiveProtocol);
  78877.  
  78878. extern LONG __stdcall
  78879. SCardDisconnect(
  78880.             SCARDHANDLE hCard,
  78881.             DWORD dwDisposition);
  78882.  
  78883. extern LONG __stdcall
  78884. SCardBeginTransaction(
  78885.             SCARDHANDLE hCard);
  78886.  
  78887. extern LONG __stdcall
  78888. SCardEndTransaction(
  78889.             SCARDHANDLE hCard,
  78890.             DWORD dwDisposition);
  78891.  
  78892. extern LONG __stdcall
  78893. SCardCancelTransaction(
  78894.             SCARDHANDLE hCard);
  78895.  
  78896.  
  78897.  
  78898.  
  78899.  
  78900.  
  78901. extern LONG __stdcall
  78902. SCardState(
  78903.             SCARDHANDLE hCard,
  78904.             LPDWORD pdwState,
  78905.             LPDWORD pdwProtocol,
  78906.                                      LPBYTE pbAtr,
  78907.             LPDWORD pcbAtrLen);
  78908.  
  78909.  
  78910.  
  78911.  
  78912.  
  78913. extern LONG __stdcall
  78914. SCardStatusA(
  78915.                 SCARDHANDLE hCard,
  78916.  
  78917.  
  78918.                 LPSTR mszReaderNames,
  78919.                 LPDWORD pcchReaderLen,
  78920.                 LPDWORD pdwState,
  78921.                 LPDWORD pdwProtocol,
  78922.  
  78923.  
  78924.                 LPBYTE pbAtr,
  78925.                 LPDWORD pcbAtrLen);
  78926. extern LONG __stdcall
  78927. SCardStatusW(
  78928.                 SCARDHANDLE hCard,
  78929.  
  78930.  
  78931.                 LPWSTR mszReaderNames,
  78932.                 LPDWORD pcchReaderLen,
  78933.                 LPDWORD pdwState,
  78934.                 LPDWORD pdwProtocol,
  78935.  
  78936.  
  78937.                 LPBYTE pbAtr,
  78938.                 LPDWORD pcbAtrLen);
  78939.  
  78940.  
  78941.  
  78942.  
  78943.  
  78944.  
  78945. extern LONG __stdcall
  78946. SCardTransmit(
  78947.                 SCARDHANDLE hCard,
  78948.                 LPCSCARD_IO_REQUEST pioSendPci,
  78949.                                    LPCBYTE pbSendBuffer,
  78950.                 DWORD cbSendLength,
  78951.                 LPSCARD_IO_REQUEST pioRecvPci,
  78952.                                        LPBYTE pbRecvBuffer,
  78953.                 LPDWORD pcbRecvLength);
  78954.  
  78955.  
  78956. extern LONG __stdcall
  78957. SCardGetTransmitCount(
  78958.          SCARDHANDLE hCard,
  78959.           LPDWORD pcTransmitCount);
  78960. # 816 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78961. extern LONG __stdcall
  78962. SCardControl(
  78963.             SCARDHANDLE hCard,
  78964.             DWORD dwControlCode,
  78965.                                      LPCVOID lpInBuffer,
  78966.             DWORD cbInBufferSize,
  78967.                                         LPVOID lpOutBuffer,
  78968.             DWORD cbOutBufferSize,
  78969.             LPDWORD lpBytesReturned);
  78970.  
  78971. extern LONG __stdcall
  78972. SCardGetAttrib(
  78973.             SCARDHANDLE hCard,
  78974.             DWORD dwAttrId,
  78975.                                         LPBYTE pbAttr,
  78976.             LPDWORD pcbAttrLen);
  78977. # 846 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78978. extern LONG __stdcall
  78979. SCardSetAttrib(
  78980.          SCARDHANDLE hCard,
  78981.          DWORD dwAttrId,
  78982.                                 LPCBYTE pbAttr,
  78983.          DWORD cbAttrLen);
  78984. # 885 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78985. typedef SCARDHANDLE (__stdcall *LPOCNCONNPROCA) ( SCARDCONTEXT, LPSTR, LPSTR, PVOID);
  78986. typedef SCARDHANDLE (__stdcall *LPOCNCONNPROCW) ( SCARDCONTEXT, LPWSTR, LPWSTR, PVOID);
  78987.  
  78988.  
  78989.  
  78990.  
  78991.  
  78992. typedef BOOL (__stdcall *LPOCNCHKPROC) ( SCARDCONTEXT, SCARDHANDLE, PVOID);
  78993. typedef void (__stdcall *LPOCNDSCPROC) ( SCARDCONTEXT, SCARDHANDLE, PVOID);
  78994. # 905 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  78995. typedef struct {
  78996.     DWORD dwStructSize;
  78997.     LPSTR lpstrGroupNames;
  78998.     DWORD nMaxGroupNames;
  78999.  
  79000.     LPCGUID rgguidInterfaces;
  79001.     DWORD cguidInterfaces;
  79002.     LPSTR lpstrCardNames;
  79003.     DWORD nMaxCardNames;
  79004.     LPOCNCHKPROC lpfnCheck;
  79005.     LPOCNCONNPROCA lpfnConnect;
  79006.     LPOCNDSCPROC lpfnDisconnect;
  79007.     LPVOID pvUserData;
  79008.     DWORD dwShareMode;
  79009.     DWORD dwPreferredProtocols;
  79010. } OPENCARD_SEARCH_CRITERIAA, *POPENCARD_SEARCH_CRITERIAA, *LPOPENCARD_SEARCH_CRITERIAA;
  79011. typedef struct {
  79012.     DWORD dwStructSize;
  79013.     LPWSTR lpstrGroupNames;
  79014.     DWORD nMaxGroupNames;
  79015.  
  79016.     LPCGUID rgguidInterfaces;
  79017.     DWORD cguidInterfaces;
  79018.     LPWSTR lpstrCardNames;
  79019.     DWORD nMaxCardNames;
  79020.     LPOCNCHKPROC lpfnCheck;
  79021.     LPOCNCONNPROCW lpfnConnect;
  79022.     LPOCNDSCPROC lpfnDisconnect;
  79023.     LPVOID pvUserData;
  79024.     DWORD dwShareMode;
  79025.     DWORD dwPreferredProtocols;
  79026. } OPENCARD_SEARCH_CRITERIAW, *POPENCARD_SEARCH_CRITERIAW, *LPOPENCARD_SEARCH_CRITERIAW;
  79027.  
  79028.  
  79029.  
  79030.  
  79031.  
  79032. typedef OPENCARD_SEARCH_CRITERIAA OPENCARD_SEARCH_CRITERIA;
  79033. typedef POPENCARD_SEARCH_CRITERIAA POPENCARD_SEARCH_CRITERIA;
  79034. typedef LPOPENCARD_SEARCH_CRITERIAA LPOPENCARD_SEARCH_CRITERIA;
  79035.  
  79036.  
  79037.  
  79038.  
  79039.  
  79040.  
  79041.  
  79042. typedef struct {
  79043.     DWORD dwStructSize;
  79044.     SCARDCONTEXT hSCardContext;
  79045.     HWND hwndOwner;
  79046.     DWORD dwFlags;
  79047.     LPCSTR lpstrTitle;
  79048.     LPCSTR lpstrSearchDesc;
  79049.     HICON hIcon;
  79050.     POPENCARD_SEARCH_CRITERIAA pOpenCardSearchCriteria;
  79051.     LPOCNCONNPROCA lpfnConnect;
  79052.     LPVOID pvUserData;
  79053.     DWORD dwShareMode;
  79054.     DWORD dwPreferredProtocols;
  79055.  
  79056.     LPSTR lpstrRdr;
  79057.     DWORD nMaxRdr;
  79058.     LPSTR lpstrCard;
  79059.     DWORD nMaxCard;
  79060.     DWORD dwActiveProtocol;
  79061.     SCARDHANDLE hCardHandle;
  79062. } OPENCARDNAME_EXA, *POPENCARDNAME_EXA, *LPOPENCARDNAME_EXA;
  79063. typedef struct {
  79064.     DWORD dwStructSize;
  79065.     SCARDCONTEXT hSCardContext;
  79066.     HWND hwndOwner;
  79067.     DWORD dwFlags;
  79068.     LPCWSTR lpstrTitle;
  79069.     LPCWSTR lpstrSearchDesc;
  79070.     HICON hIcon;
  79071.     POPENCARD_SEARCH_CRITERIAW pOpenCardSearchCriteria;
  79072.     LPOCNCONNPROCW lpfnConnect;
  79073.     LPVOID pvUserData;
  79074.     DWORD dwShareMode;
  79075.     DWORD dwPreferredProtocols;
  79076.  
  79077.     LPWSTR lpstrRdr;
  79078.     DWORD nMaxRdr;
  79079.     LPWSTR lpstrCard;
  79080.     DWORD nMaxCard;
  79081.     DWORD dwActiveProtocol;
  79082.     SCARDHANDLE hCardHandle;
  79083. } OPENCARDNAME_EXW, *POPENCARDNAME_EXW, *LPOPENCARDNAME_EXW;
  79084.  
  79085.  
  79086.  
  79087.  
  79088.  
  79089. typedef OPENCARDNAME_EXA OPENCARDNAME_EX;
  79090. typedef POPENCARDNAME_EXA POPENCARDNAME_EX;
  79091. typedef LPOPENCARDNAME_EXA LPOPENCARDNAME_EX;
  79092. # 1085 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  79093. typedef enum {
  79094.     RSR_MATCH_TYPE_READER_AND_CONTAINER = 1,
  79095.     RSR_MATCH_TYPE_SERIAL_NUMBER,
  79096.     RSR_MATCH_TYPE_ALL_CARDS
  79097. } READER_SEL_REQUEST_MATCH_TYPE;
  79098.  
  79099. typedef struct {
  79100.     DWORD dwShareMode;
  79101.     DWORD dwPreferredProtocols;
  79102.     READER_SEL_REQUEST_MATCH_TYPE MatchType;
  79103. #pragma warning(push)
  79104. #pragma warning(disable: 4201)
  79105.  union {
  79106.         struct {
  79107.             DWORD cbReaderNameOffset;
  79108.             DWORD cchReaderNameLength;
  79109.             DWORD cbContainerNameOffset;
  79110.             DWORD cchContainerNameLength;
  79111.             DWORD dwDesiredCardModuleVersion;
  79112.             DWORD dwCspFlags;
  79113.         } ReaderAndContainerParameter;
  79114.         struct {
  79115.             DWORD cbSerialNumberOffset;
  79116.             DWORD cbSerialNumberLength;
  79117.             DWORD dwDesiredCardModuleVersion;
  79118.         } SerialNumberParameter;
  79119.     } ;
  79120. #pragma warning(pop)
  79121. } READER_SEL_REQUEST, *PREADER_SEL_REQUEST;
  79122. # 1134 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  79123. typedef struct {
  79124.     DWORD cbReaderNameOffset;
  79125.     DWORD cchReaderNameLength;
  79126.     DWORD cbCardNameOffset;
  79127.     DWORD cchCardNameLength;
  79128. } READER_SEL_RESPONSE, *PREADER_SEL_RESPONSE;
  79129.  
  79130.  
  79131.  
  79132.  
  79133.  
  79134.  
  79135. extern LONG __stdcall
  79136. SCardUIDlgSelectCardA(
  79137.     LPOPENCARDNAME_EXA);
  79138. extern LONG __stdcall
  79139. SCardUIDlgSelectCardW(
  79140.     LPOPENCARDNAME_EXW);
  79141. # 1164 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  79142. typedef struct {
  79143.     DWORD dwStructSize;
  79144.     HWND hwndOwner;
  79145.     SCARDCONTEXT hSCardContext;
  79146.     LPSTR lpstrGroupNames;
  79147.     DWORD nMaxGroupNames;
  79148.     LPSTR lpstrCardNames;
  79149.     DWORD nMaxCardNames;
  79150.     LPCGUID rgguidInterfaces;
  79151.     DWORD cguidInterfaces;
  79152.     LPSTR lpstrRdr;
  79153.     DWORD nMaxRdr;
  79154.     LPSTR lpstrCard;
  79155.     DWORD nMaxCard;
  79156.     LPCSTR lpstrTitle;
  79157.     DWORD dwFlags;
  79158.     LPVOID pvUserData;
  79159.     DWORD dwShareMode;
  79160.     DWORD dwPreferredProtocols;
  79161.     DWORD dwActiveProtocol;
  79162.     LPOCNCONNPROCA lpfnConnect;
  79163.     LPOCNCHKPROC lpfnCheck;
  79164.     LPOCNDSCPROC lpfnDisconnect;
  79165.     SCARDHANDLE hCardHandle;
  79166. } OPENCARDNAMEA, *POPENCARDNAMEA, *LPOPENCARDNAMEA;
  79167. typedef struct {
  79168.     DWORD dwStructSize;
  79169.     HWND hwndOwner;
  79170.     SCARDCONTEXT hSCardContext;
  79171.     LPWSTR lpstrGroupNames;
  79172.     DWORD nMaxGroupNames;
  79173.     LPWSTR lpstrCardNames;
  79174.     DWORD nMaxCardNames;
  79175.     LPCGUID rgguidInterfaces;
  79176.     DWORD cguidInterfaces;
  79177.     LPWSTR lpstrRdr;
  79178.     DWORD nMaxRdr;
  79179.     LPWSTR lpstrCard;
  79180.     DWORD nMaxCard;
  79181.     LPCWSTR lpstrTitle;
  79182.     DWORD dwFlags;
  79183.     LPVOID pvUserData;
  79184.     DWORD dwShareMode;
  79185.     DWORD dwPreferredProtocols;
  79186.     DWORD dwActiveProtocol;
  79187.     LPOCNCONNPROCW lpfnConnect;
  79188.     LPOCNCHKPROC lpfnCheck;
  79189.     LPOCNDSCPROC lpfnDisconnect;
  79190.     SCARDHANDLE hCardHandle;
  79191. } OPENCARDNAMEW, *POPENCARDNAMEW, *LPOPENCARDNAMEW;
  79192.  
  79193.  
  79194.  
  79195.  
  79196.  
  79197. typedef OPENCARDNAMEA OPENCARDNAME;
  79198. typedef POPENCARDNAMEA POPENCARDNAME;
  79199. typedef LPOPENCARDNAMEA LPOPENCARDNAME;
  79200. # 1232 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  79201. extern LONG __stdcall
  79202. GetOpenCardNameA(
  79203.     LPOPENCARDNAMEA);
  79204. extern LONG __stdcall
  79205. GetOpenCardNameW(
  79206.     LPOPENCARDNAMEW);
  79207.  
  79208.  
  79209.  
  79210.  
  79211.  
  79212.  
  79213. extern LONG __stdcall
  79214. SCardDlgExtendedError (void);
  79215.  
  79216.  
  79217.  
  79218.  
  79219.  
  79220.  
  79221.  
  79222. extern LONG __stdcall
  79223. SCardReadCacheA(
  79224.           SCARDCONTEXT hContext,
  79225.           UUID *CardIdentifier,
  79226.           DWORD FreshnessCounter,
  79227.           LPSTR LookupName,
  79228.                                  PBYTE Data,
  79229.           DWORD *DataLen);
  79230. extern LONG __stdcall
  79231. SCardReadCacheW(
  79232.           SCARDCONTEXT hContext,
  79233.           UUID *CardIdentifier,
  79234.           DWORD FreshnessCounter,
  79235.           LPWSTR LookupName,
  79236.                                  PBYTE Data,
  79237.           DWORD *DataLen);
  79238.  
  79239.  
  79240.  
  79241.  
  79242.  
  79243.  
  79244. extern LONG __stdcall
  79245. SCardWriteCacheA(
  79246.          SCARDCONTEXT hContext,
  79247.          UUID *CardIdentifier,
  79248.          DWORD FreshnessCounter,
  79249.          LPSTR LookupName,
  79250.                               PBYTE Data,
  79251.          DWORD DataLen);
  79252. extern LONG __stdcall
  79253. SCardWriteCacheW(
  79254.          SCARDCONTEXT hContext,
  79255.          UUID *CardIdentifier,
  79256.          DWORD FreshnessCounter,
  79257.          LPWSTR LookupName,
  79258.                               PBYTE Data,
  79259.          DWORD DataLen);
  79260. # 1302 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  79261. extern LONG __stdcall
  79262. SCardGetReaderIconA(
  79263.            SCARDCONTEXT hContext,
  79264.            LPCSTR szReaderName,
  79265.  
  79266.  
  79267.            LPBYTE pbIcon,
  79268.            LPDWORD pcbIcon);
  79269.  
  79270. extern LONG __stdcall
  79271. SCardGetReaderIconW(
  79272.            SCARDCONTEXT hContext,
  79273.            LPCWSTR szReaderName,
  79274.  
  79275.  
  79276.            LPBYTE pbIcon,
  79277.            LPDWORD pcbIcon);
  79278.  
  79279.  
  79280.  
  79281.  
  79282.  
  79283.  
  79284.  
  79285. extern LONG __stdcall
  79286. SCardGetDeviceTypeIdA(
  79287.            SCARDCONTEXT hContext,
  79288.            LPCSTR szReaderName,
  79289.            LPDWORD pdwDeviceTypeId);
  79290.  
  79291. extern LONG __stdcall
  79292. SCardGetDeviceTypeIdW(
  79293.            SCARDCONTEXT hContext,
  79294.            LPCWSTR szReaderName,
  79295.            LPDWORD pdwDeviceTypeId);
  79296.  
  79297.  
  79298.  
  79299.  
  79300.  
  79301.  
  79302.  
  79303. extern LONG __stdcall
  79304. SCardGetReaderDeviceInstanceIdA(
  79305.           SCARDCONTEXT hContext,
  79306.           LPCSTR szReaderName,
  79307.  
  79308.  
  79309.           LPSTR szDeviceInstanceId,
  79310.           LPDWORD pcchDeviceInstanceId);
  79311.  
  79312. extern LONG __stdcall
  79313. SCardGetReaderDeviceInstanceIdW(
  79314.           SCARDCONTEXT hContext,
  79315.           LPCWSTR szReaderName,
  79316.  
  79317.  
  79318.           LPWSTR szDeviceInstanceId,
  79319.           LPDWORD pcchDeviceInstanceId);
  79320.  
  79321.  
  79322.  
  79323.  
  79324.  
  79325.  
  79326.  
  79327. extern LONG __stdcall
  79328. SCardListReadersWithDeviceInstanceIdA(
  79329.           SCARDCONTEXT hContext,
  79330.           LPCSTR szDeviceInstanceId,
  79331.  
  79332.  
  79333.           LPSTR mszReaders,
  79334.           LPDWORD pcchReaders);
  79335.  
  79336. extern LONG __stdcall
  79337. SCardListReadersWithDeviceInstanceIdW(
  79338.           SCARDCONTEXT hContext,
  79339.           LPCWSTR szDeviceInstanceId,
  79340.  
  79341.  
  79342.           LPWSTR mszReaders,
  79343.           LPDWORD pcchReaders);
  79344. # 1404 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winscard.h" 3
  79345. extern LONG __stdcall
  79346. SCardAudit(
  79347.        SCARDCONTEXT hContext,
  79348.        DWORD dwEvent);
  79349.  
  79350.  
  79351.  
  79352.  
  79353. #pragma endregion
  79354.  
  79355.  
  79356.  
  79357.  
  79358.  
  79359.  
  79360.  
  79361.  
  79362. #pragma option pop
  79363. # 254 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  79364.  
  79365.  
  79366.  
  79367.  
  79368.  
  79369. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 1 3
  79370. # 18 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  79371. #pragma option push -b -a8 -pc -A- -w-pun
  79372.  
  79373.  
  79374.  
  79375.  
  79376.  
  79377.  
  79378. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 1 3
  79379. #pragma option push -b -a8 -pc -A- -w-pun
  79380. # 59 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79381. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 1 3
  79382. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack4.h" 3
  79383. #pragma warning(disable: 4103)
  79384.  
  79385. #pragma pack(push,4)
  79386. # 59 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 2 3
  79387.  
  79388.  
  79389.  
  79390.  
  79391.  
  79392.  
  79393.  
  79394.  
  79395. #pragma region Desktop Family
  79396. # 97 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79397. struct _PSP;
  79398. typedef struct _PSP * HPROPSHEETPAGE;
  79399.  
  79400.  
  79401. struct _PROPSHEETPAGEA;
  79402. struct _PROPSHEETPAGEW;
  79403.  
  79404.  
  79405. typedef UINT (__stdcall *LPFNPSPCALLBACKA)(HWND hwnd, UINT uMsg, struct _PROPSHEETPAGEA *ppsp);
  79406. typedef UINT (__stdcall *LPFNPSPCALLBACKW)(HWND hwnd, UINT uMsg, struct _PROPSHEETPAGEW *ppsp);
  79407. # 141 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79408. typedef LPCDLGTEMPLATE PROPSHEETPAGE_RESOURCE;
  79409. # 197 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79410. typedef struct _PROPSHEETPAGEA_V1
  79411. {
  79412.     DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
  79413. } PROPSHEETPAGEA_V1, *LPPROPSHEETPAGEA_V1;
  79414. typedef const PROPSHEETPAGEA_V1 *LPCPROPSHEETPAGEA_V1;
  79415.  
  79416. typedef struct _PROPSHEETPAGEA_V2
  79417. {
  79418.     DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
  79419.  
  79420.     LPCSTR pszHeaderTitle;
  79421.     LPCSTR pszHeaderSubTitle;
  79422. } PROPSHEETPAGEA_V2, *LPPROPSHEETPAGEA_V2;
  79423. typedef const PROPSHEETPAGEA_V2 *LPCPROPSHEETPAGEA_V2;
  79424.  
  79425. typedef struct _PROPSHEETPAGEA_V3
  79426. {
  79427.     DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
  79428.  
  79429.     LPCSTR pszHeaderTitle;
  79430.     LPCSTR pszHeaderSubTitle;
  79431.  
  79432.     HANDLE hActCtx;
  79433. } PROPSHEETPAGEA_V3, *LPPROPSHEETPAGEA_V3;
  79434. typedef const PROPSHEETPAGEA_V3 *LPCPROPSHEETPAGEA_V3;
  79435.  
  79436.  
  79437. typedef struct _PROPSHEETPAGEA
  79438. {
  79439.     DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; union { LPCSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKA pfnCallback; UINT *pcRefParent;
  79440.  
  79441.     LPCSTR pszHeaderTitle;
  79442.     LPCSTR pszHeaderSubTitle;
  79443.  
  79444.     HANDLE hActCtx;
  79445.  
  79446.     union
  79447.     {
  79448.         HBITMAP hbmHeader;
  79449.         LPCSTR pszbmHeader;
  79450.     } ;
  79451.  
  79452. } PROPSHEETPAGEA_V4, *LPPROPSHEETPAGEA_V4;
  79453. typedef const PROPSHEETPAGEA_V4 *LPCPROPSHEETPAGEA_V4;
  79454.  
  79455.  
  79456. typedef struct _PROPSHEETPAGEW_V1
  79457. {
  79458.     DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
  79459. } PROPSHEETPAGEW_V1, *LPPROPSHEETPAGEW_V1;
  79460. typedef const PROPSHEETPAGEW_V1 *LPCPROPSHEETPAGEW_V1;
  79461.  
  79462. typedef struct _PROPSHEETPAGEW_V2
  79463. {
  79464.     DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
  79465.  
  79466.     LPCWSTR pszHeaderTitle;
  79467.     LPCWSTR pszHeaderSubTitle;
  79468. } PROPSHEETPAGEW_V2, *LPPROPSHEETPAGEW_V2;
  79469. typedef const PROPSHEETPAGEW_V2 *LPCPROPSHEETPAGEW_V2;
  79470.  
  79471. typedef struct _PROPSHEETPAGEW_V3
  79472. {
  79473.     DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
  79474.  
  79475.     LPCWSTR pszHeaderTitle;
  79476.     LPCWSTR pszHeaderSubTitle;
  79477.  
  79478.     HANDLE hActCtx;
  79479. } PROPSHEETPAGEW_V3, *LPPROPSHEETPAGEW_V3;
  79480. typedef const PROPSHEETPAGEW_V3 *LPCPROPSHEETPAGEW_V3;
  79481.  
  79482.  
  79483. typedef struct _PROPSHEETPAGEW
  79484. {
  79485.     DWORD dwSize; DWORD dwFlags; HINSTANCE hInstance; union { LPCWSTR pszTemplate; PROPSHEETPAGE_RESOURCE pResource; } ; union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszTitle; DLGPROC pfnDlgProc; LPARAM lParam; LPFNPSPCALLBACKW pfnCallback; UINT *pcRefParent;
  79486.  
  79487.     LPCWSTR pszHeaderTitle;
  79488.     LPCWSTR pszHeaderSubTitle;
  79489.  
  79490.     HANDLE hActCtx;
  79491.  
  79492.     union
  79493.     {
  79494.         HBITMAP hbmHeader;
  79495.         LPCWSTR pszbmHeader;
  79496.     } ;
  79497.  
  79498. } PROPSHEETPAGEW_V4, *LPPROPSHEETPAGEW_V4;
  79499. typedef const PROPSHEETPAGEW_V4 *LPCPROPSHEETPAGEW_V4;
  79500. # 305 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79501. typedef PROPSHEETPAGEA_V4 PROPSHEETPAGEA_LATEST;
  79502. typedef PROPSHEETPAGEW_V4 PROPSHEETPAGEW_LATEST;
  79503. typedef LPPROPSHEETPAGEA_V4 LPPROPSHEETPAGEA_LATEST;
  79504. typedef LPPROPSHEETPAGEW_V4 LPPROPSHEETPAGEW_LATEST;
  79505. typedef LPCPROPSHEETPAGEA_V4 LPCPROPSHEETPAGEA_LATEST;
  79506. typedef LPCPROPSHEETPAGEW_V4 LPCPROPSHEETPAGEW_LATEST;
  79507. # 322 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79508. typedef PROPSHEETPAGEA_V4 PROPSHEETPAGEA;
  79509. typedef PROPSHEETPAGEW_V4 PROPSHEETPAGEW;
  79510. typedef LPPROPSHEETPAGEA_V4 LPPROPSHEETPAGEA;
  79511. typedef LPPROPSHEETPAGEW_V4 LPPROPSHEETPAGEW;
  79512. typedef LPCPROPSHEETPAGEA_V4 LPCPROPSHEETPAGEA;
  79513. typedef LPCPROPSHEETPAGEW_V4 LPCPROPSHEETPAGEW;
  79514. # 446 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79515. typedef int (__stdcall *PFNPROPSHEETCALLBACK)(HWND, UINT, LPARAM);
  79516. # 472 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79517. typedef struct _PROPSHEETHEADERA_V1
  79518. {
  79519.     DWORD dwSize; DWORD dwFlags; HWND hwndParent; HINSTANCE hInstance; union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszCaption; UINT nPages; union { UINT nStartPage; LPCSTR pStartPage; } ; union { LPCPROPSHEETPAGEA ppsp; HPROPSHEETPAGE *phpage; } ; PFNPROPSHEETCALLBACK pfnCallback;
  79520. } PROPSHEETHEADERA_V1, *LPPROPSHEETHEADERA_V1;
  79521. typedef const PROPSHEETHEADERA_V1 *LPCPROPSHEETHEADERA_V1;
  79522.  
  79523. typedef struct _PROPSHEETHEADERA_V2
  79524. {
  79525.     DWORD dwSize; DWORD dwFlags; HWND hwndParent; HINSTANCE hInstance; union { HICON hIcon; LPCSTR pszIcon; } ; LPCSTR pszCaption; UINT nPages; union { UINT nStartPage; LPCSTR pStartPage; } ; union { LPCPROPSHEETPAGEA ppsp; HPROPSHEETPAGE *phpage; } ; PFNPROPSHEETCALLBACK pfnCallback;
  79526.     union
  79527.     {
  79528.         HBITMAP hbmWatermark;
  79529.         LPCSTR pszbmWatermark;
  79530.     } ;
  79531.     HPALETTE hplWatermark;
  79532.     union
  79533.     {
  79534.         HBITMAP hbmHeader;
  79535.         LPCSTR pszbmHeader;
  79536.     } ;
  79537. } PROPSHEETHEADERA_V2, *LPPROPSHEETHEADERA_V2;
  79538. typedef const PROPSHEETHEADERA_V2 *LPCPROPSHEETHEADERA_V2;
  79539. # 519 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79540. typedef struct _PROPSHEETHEADERW_V1
  79541. {
  79542.     DWORD dwSize; DWORD dwFlags; HWND hwndParent; HINSTANCE hInstance; union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszCaption; UINT nPages; union { UINT nStartPage; LPCWSTR pStartPage; } ; union { LPCPROPSHEETPAGEW ppsp; HPROPSHEETPAGE *phpage; } ; PFNPROPSHEETCALLBACK pfnCallback;
  79543. } PROPSHEETHEADERW_V1, *LPPROPSHEETHEADERW_V1;
  79544. typedef const PROPSHEETHEADERW_V1 *LPCPROPSHEETHEADERW_V1;
  79545.  
  79546. typedef struct _PROPSHEETHEADERW_V2
  79547. {
  79548.     DWORD dwSize; DWORD dwFlags; HWND hwndParent; HINSTANCE hInstance; union { HICON hIcon; LPCWSTR pszIcon; } ; LPCWSTR pszCaption; UINT nPages; union { UINT nStartPage; LPCWSTR pStartPage; } ; union { LPCPROPSHEETPAGEW ppsp; HPROPSHEETPAGE *phpage; } ; PFNPROPSHEETCALLBACK pfnCallback;
  79549.     union
  79550.     {
  79551.         HBITMAP hbmWatermark;
  79552.         LPCWSTR pszbmWatermark;
  79553.     } ;
  79554.     HPALETTE hplWatermark;
  79555.     union
  79556.     {
  79557.         HBITMAP hbmHeader;
  79558.         LPCWSTR pszbmHeader;
  79559.     } ;
  79560. } PROPSHEETHEADERW_V2, *LPPROPSHEETHEADERW_V2;
  79561. typedef const PROPSHEETHEADERW_V2 *LPCPROPSHEETHEADERW_V2;
  79562. # 555 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79563. typedef PROPSHEETHEADERA_V2 PROPSHEETHEADERA;
  79564. typedef PROPSHEETHEADERW_V2 PROPSHEETHEADERW;
  79565. typedef LPPROPSHEETHEADERA_V2 LPPROPSHEETHEADERA;
  79566. typedef LPPROPSHEETHEADERW_V2 LPPROPSHEETHEADERW;
  79567. typedef LPCPROPSHEETHEADERA_V2 LPCPROPSHEETHEADERA;
  79568. typedef LPCPROPSHEETHEADERW_V2 LPCPROPSHEETHEADERW;
  79569. # 591 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79570. __declspec(dllimport) HPROPSHEETPAGE __stdcall CreatePropertySheetPageA(LPCPROPSHEETPAGEA constPropSheetPagePointer);
  79571. __declspec(dllimport) HPROPSHEETPAGE __stdcall CreatePropertySheetPageW(LPCPROPSHEETPAGEW constPropSheetPagePointer);
  79572. __declspec(dllimport) BOOL __stdcall DestroyPropertySheetPage(HPROPSHEETPAGE);
  79573.  
  79574. __declspec(dllimport) INT_PTR __stdcall PropertySheetA(LPCPROPSHEETHEADERA);
  79575.  
  79576. __declspec(dllimport) INT_PTR __stdcall PropertySheetW(LPCPROPSHEETHEADERW);
  79577. # 609 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79578. typedef BOOL (__stdcall *LPFNADDPROPSHEETPAGE)(HPROPSHEETPAGE, LPARAM);
  79579. typedef BOOL (__stdcall *LPFNADDPROPSHEETPAGES)(LPVOID, LPFNADDPROPSHEETPAGE, LPARAM);
  79580.  
  79581.  
  79582. typedef struct _PSHNOTIFY
  79583. {
  79584.     NMHDR hdr;
  79585.     LPARAM lParam;
  79586. } PSHNOTIFY, *LPPSHNOTIFY;
  79587. # 894 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79588. #pragma endregion
  79589. # 908 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79590. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  79591. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  79592. #pragma warning(disable: 4103)
  79593.  
  79594. #pragma pack(pop)
  79595. # 908 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 2 3
  79596. # 918 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  79597. #pragma option pop
  79598. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 2 3
  79599. # 36 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  79600. #pragma region Desktop Family
  79601.  
  79602.  
  79603.  
  79604. typedef struct _PRINTER_INFO_1A {
  79605.     DWORD Flags;
  79606.     LPSTR pDescription;
  79607.     LPSTR pName;
  79608.     LPSTR pComment;
  79609. } PRINTER_INFO_1A, *PPRINTER_INFO_1A, *LPPRINTER_INFO_1A;
  79610. typedef struct _PRINTER_INFO_1W {
  79611.     DWORD Flags;
  79612.     LPWSTR pDescription;
  79613.     LPWSTR pName;
  79614.     LPWSTR pComment;
  79615. } PRINTER_INFO_1W, *PPRINTER_INFO_1W, *LPPRINTER_INFO_1W;
  79616.  
  79617.  
  79618.  
  79619.  
  79620.  
  79621. typedef PRINTER_INFO_1A PRINTER_INFO_1;
  79622. typedef PPRINTER_INFO_1A PPRINTER_INFO_1;
  79623. typedef LPPRINTER_INFO_1A LPPRINTER_INFO_1;
  79624.  
  79625.  
  79626. typedef struct _PRINTER_INFO_2A {
  79627.     LPSTR pServerName;
  79628.     LPSTR pPrinterName;
  79629.     LPSTR pShareName;
  79630.     LPSTR pPortName;
  79631.     LPSTR pDriverName;
  79632.     LPSTR pComment;
  79633.     LPSTR pLocation;
  79634.     LPDEVMODEA pDevMode;
  79635.     LPSTR pSepFile;
  79636.     LPSTR pPrintProcessor;
  79637.     LPSTR pDatatype;
  79638.     LPSTR pParameters;
  79639.     PSECURITY_DESCRIPTOR pSecurityDescriptor;
  79640.     DWORD Attributes;
  79641.     DWORD Priority;
  79642.     DWORD DefaultPriority;
  79643.     DWORD StartTime;
  79644.     DWORD UntilTime;
  79645.     DWORD Status;
  79646.     DWORD cJobs;
  79647.     DWORD AveragePPM;
  79648. } PRINTER_INFO_2A, *PPRINTER_INFO_2A, *LPPRINTER_INFO_2A;
  79649. typedef struct _PRINTER_INFO_2W {
  79650.     LPWSTR pServerName;
  79651.     LPWSTR pPrinterName;
  79652.     LPWSTR pShareName;
  79653.     LPWSTR pPortName;
  79654.     LPWSTR pDriverName;
  79655.     LPWSTR pComment;
  79656.     LPWSTR pLocation;
  79657.     LPDEVMODEW pDevMode;
  79658.     LPWSTR pSepFile;
  79659.     LPWSTR pPrintProcessor;
  79660.     LPWSTR pDatatype;
  79661.     LPWSTR pParameters;
  79662.     PSECURITY_DESCRIPTOR pSecurityDescriptor;
  79663.     DWORD Attributes;
  79664.     DWORD Priority;
  79665.     DWORD DefaultPriority;
  79666.     DWORD StartTime;
  79667.     DWORD UntilTime;
  79668.     DWORD Status;
  79669.     DWORD cJobs;
  79670.     DWORD AveragePPM;
  79671. } PRINTER_INFO_2W, *PPRINTER_INFO_2W, *LPPRINTER_INFO_2W;
  79672.  
  79673.  
  79674.  
  79675.  
  79676.  
  79677. typedef PRINTER_INFO_2A PRINTER_INFO_2;
  79678. typedef PPRINTER_INFO_2A PPRINTER_INFO_2;
  79679. typedef LPPRINTER_INFO_2A LPPRINTER_INFO_2;
  79680.  
  79681.  
  79682. typedef struct _PRINTER_INFO_3 {
  79683.     PSECURITY_DESCRIPTOR pSecurityDescriptor;
  79684. } PRINTER_INFO_3, *PPRINTER_INFO_3, *LPPRINTER_INFO_3;
  79685.  
  79686. typedef struct _PRINTER_INFO_4A {
  79687.     LPSTR pPrinterName;
  79688.     LPSTR pServerName;
  79689.     DWORD Attributes;
  79690. } PRINTER_INFO_4A, *PPRINTER_INFO_4A, *LPPRINTER_INFO_4A;
  79691. typedef struct _PRINTER_INFO_4W {
  79692.     LPWSTR pPrinterName;
  79693.     LPWSTR pServerName;
  79694.     DWORD Attributes;
  79695. } PRINTER_INFO_4W, *PPRINTER_INFO_4W, *LPPRINTER_INFO_4W;
  79696.  
  79697.  
  79698.  
  79699.  
  79700.  
  79701. typedef PRINTER_INFO_4A PRINTER_INFO_4;
  79702. typedef PPRINTER_INFO_4A PPRINTER_INFO_4;
  79703. typedef LPPRINTER_INFO_4A LPPRINTER_INFO_4;
  79704.  
  79705.  
  79706. typedef struct _PRINTER_INFO_5A {
  79707.     LPSTR pPrinterName;
  79708.     LPSTR pPortName;
  79709.     DWORD Attributes;
  79710.     DWORD DeviceNotSelectedTimeout;
  79711.     DWORD TransmissionRetryTimeout;
  79712. } PRINTER_INFO_5A, *PPRINTER_INFO_5A, *LPPRINTER_INFO_5A;
  79713. typedef struct _PRINTER_INFO_5W {
  79714.     LPWSTR pPrinterName;
  79715.     LPWSTR pPortName;
  79716.     DWORD Attributes;
  79717.     DWORD DeviceNotSelectedTimeout;
  79718.     DWORD TransmissionRetryTimeout;
  79719. } PRINTER_INFO_5W, *PPRINTER_INFO_5W, *LPPRINTER_INFO_5W;
  79720.  
  79721.  
  79722.  
  79723.  
  79724.  
  79725. typedef PRINTER_INFO_5A PRINTER_INFO_5;
  79726. typedef PPRINTER_INFO_5A PPRINTER_INFO_5;
  79727. typedef LPPRINTER_INFO_5A LPPRINTER_INFO_5;
  79728.  
  79729.  
  79730. typedef struct _PRINTER_INFO_6 {
  79731.     DWORD dwStatus;
  79732. } PRINTER_INFO_6, *PPRINTER_INFO_6, *LPPRINTER_INFO_6;
  79733.  
  79734.  
  79735. typedef struct _PRINTER_INFO_7A {
  79736.   LPSTR pszObjectGUID;
  79737.   DWORD dwAction;
  79738. } PRINTER_INFO_7A, *PPRINTER_INFO_7A, *LPPRINTER_INFO_7A;
  79739. typedef struct _PRINTER_INFO_7W {
  79740.   LPWSTR pszObjectGUID;
  79741.   DWORD dwAction;
  79742. } PRINTER_INFO_7W, *PPRINTER_INFO_7W, *LPPRINTER_INFO_7W;
  79743.  
  79744.  
  79745.  
  79746.  
  79747.  
  79748. typedef PRINTER_INFO_7A PRINTER_INFO_7;
  79749. typedef PPRINTER_INFO_7A PPRINTER_INFO_7;
  79750. typedef LPPRINTER_INFO_7A LPPRINTER_INFO_7;
  79751. # 195 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  79752. typedef struct _PRINTER_INFO_8A {
  79753.     LPDEVMODEA pDevMode;
  79754. } PRINTER_INFO_8A, *PPRINTER_INFO_8A, *LPPRINTER_INFO_8A;
  79755. typedef struct _PRINTER_INFO_8W {
  79756.     LPDEVMODEW pDevMode;
  79757. } PRINTER_INFO_8W, *PPRINTER_INFO_8W, *LPPRINTER_INFO_8W;
  79758.  
  79759.  
  79760.  
  79761.  
  79762.  
  79763. typedef PRINTER_INFO_8A PRINTER_INFO_8;
  79764. typedef PPRINTER_INFO_8A PPRINTER_INFO_8;
  79765. typedef LPPRINTER_INFO_8A LPPRINTER_INFO_8;
  79766.  
  79767.  
  79768. typedef struct _PRINTER_INFO_9A {
  79769.     LPDEVMODEA pDevMode;
  79770. } PRINTER_INFO_9A, *PPRINTER_INFO_9A, *LPPRINTER_INFO_9A;
  79771. typedef struct _PRINTER_INFO_9W {
  79772.     LPDEVMODEW pDevMode;
  79773. } PRINTER_INFO_9W, *PPRINTER_INFO_9W, *LPPRINTER_INFO_9W;
  79774.  
  79775.  
  79776.  
  79777.  
  79778.  
  79779. typedef PRINTER_INFO_9A PRINTER_INFO_9;
  79780. typedef PPRINTER_INFO_9A PPRINTER_INFO_9;
  79781. typedef LPPRINTER_INFO_9A LPPRINTER_INFO_9;
  79782. # 333 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  79783. typedef struct _JOB_INFO_1A {
  79784.    DWORD JobId;
  79785.    LPSTR pPrinterName;
  79786.    LPSTR pMachineName;
  79787.    LPSTR pUserName;
  79788.    LPSTR pDocument;
  79789.    LPSTR pDatatype;
  79790.    LPSTR pStatus;
  79791.    DWORD Status;
  79792.    DWORD Priority;
  79793.    DWORD Position;
  79794.    DWORD TotalPages;
  79795.    DWORD PagesPrinted;
  79796.    SYSTEMTIME Submitted;
  79797. } JOB_INFO_1A, *PJOB_INFO_1A, *LPJOB_INFO_1A;
  79798. typedef struct _JOB_INFO_1W {
  79799.    DWORD JobId;
  79800.    LPWSTR pPrinterName;
  79801.    LPWSTR pMachineName;
  79802.    LPWSTR pUserName;
  79803.    LPWSTR pDocument;
  79804.    LPWSTR pDatatype;
  79805.    LPWSTR pStatus;
  79806.    DWORD Status;
  79807.    DWORD Priority;
  79808.    DWORD Position;
  79809.    DWORD TotalPages;
  79810.    DWORD PagesPrinted;
  79811.    SYSTEMTIME Submitted;
  79812. } JOB_INFO_1W, *PJOB_INFO_1W, *LPJOB_INFO_1W;
  79813.  
  79814.  
  79815.  
  79816.  
  79817.  
  79818. typedef JOB_INFO_1A JOB_INFO_1;
  79819. typedef PJOB_INFO_1A PJOB_INFO_1;
  79820. typedef LPJOB_INFO_1A LPJOB_INFO_1;
  79821.  
  79822.  
  79823. typedef struct _JOB_INFO_2A {
  79824.    DWORD JobId;
  79825.    LPSTR pPrinterName;
  79826.    LPSTR pMachineName;
  79827.    LPSTR pUserName;
  79828.    LPSTR pDocument;
  79829.    LPSTR pNotifyName;
  79830.    LPSTR pDatatype;
  79831.    LPSTR pPrintProcessor;
  79832.    LPSTR pParameters;
  79833.    LPSTR pDriverName;
  79834.    LPDEVMODEA pDevMode;
  79835.    LPSTR pStatus;
  79836.    PSECURITY_DESCRIPTOR pSecurityDescriptor;
  79837.    DWORD Status;
  79838.    DWORD Priority;
  79839.    DWORD Position;
  79840.    DWORD StartTime;
  79841.    DWORD UntilTime;
  79842.    DWORD TotalPages;
  79843.    DWORD Size;
  79844.    SYSTEMTIME Submitted;
  79845.    DWORD Time;
  79846.    DWORD PagesPrinted;
  79847. } JOB_INFO_2A, *PJOB_INFO_2A, *LPJOB_INFO_2A;
  79848. typedef struct _JOB_INFO_2W {
  79849.    DWORD JobId;
  79850.    LPWSTR pPrinterName;
  79851.    LPWSTR pMachineName;
  79852.    LPWSTR pUserName;
  79853.    LPWSTR pDocument;
  79854.    LPWSTR pNotifyName;
  79855.    LPWSTR pDatatype;
  79856.    LPWSTR pPrintProcessor;
  79857.    LPWSTR pParameters;
  79858.    LPWSTR pDriverName;
  79859.    LPDEVMODEW pDevMode;
  79860.    LPWSTR pStatus;
  79861.    PSECURITY_DESCRIPTOR pSecurityDescriptor;
  79862.    DWORD Status;
  79863.    DWORD Priority;
  79864.    DWORD Position;
  79865.    DWORD StartTime;
  79866.    DWORD UntilTime;
  79867.    DWORD TotalPages;
  79868.    DWORD Size;
  79869.    SYSTEMTIME Submitted;
  79870.    DWORD Time;
  79871.    DWORD PagesPrinted;
  79872. } JOB_INFO_2W, *PJOB_INFO_2W, *LPJOB_INFO_2W;
  79873.  
  79874.  
  79875.  
  79876.  
  79877.  
  79878. typedef JOB_INFO_2A JOB_INFO_2;
  79879. typedef PJOB_INFO_2A PJOB_INFO_2;
  79880. typedef LPJOB_INFO_2A LPJOB_INFO_2;
  79881.  
  79882.  
  79883. typedef struct _JOB_INFO_3 {
  79884.     DWORD JobId;
  79885.     DWORD NextJobId;
  79886.     DWORD Reserved;
  79887. } JOB_INFO_3, *PJOB_INFO_3, *LPJOB_INFO_3;
  79888.  
  79889. typedef struct _JOB_INFO_4A {
  79890.    DWORD JobId;
  79891.    LPSTR pPrinterName;
  79892.    LPSTR pMachineName;
  79893.    LPSTR pUserName;
  79894.    LPSTR pDocument;
  79895.    LPSTR pNotifyName;
  79896.    LPSTR pDatatype;
  79897.    LPSTR pPrintProcessor;
  79898.    LPSTR pParameters;
  79899.    LPSTR pDriverName;
  79900.    LPDEVMODEA pDevMode;
  79901.    LPSTR pStatus;
  79902.    PSECURITY_DESCRIPTOR pSecurityDescriptor;
  79903.    DWORD Status;
  79904.    DWORD Priority;
  79905.    DWORD Position;
  79906.    DWORD StartTime;
  79907.    DWORD UntilTime;
  79908.    DWORD TotalPages;
  79909.    DWORD Size;
  79910.    SYSTEMTIME Submitted;
  79911.    DWORD Time;
  79912.    DWORD PagesPrinted;
  79913.    LONG SizeHigh;
  79914. } JOB_INFO_4A, *PJOB_INFO_4A, *LPJOB_INFO_4A;
  79915. typedef struct _JOB_INFO_4W {
  79916.    DWORD JobId;
  79917.    LPWSTR pPrinterName;
  79918.    LPWSTR pMachineName;
  79919.    LPWSTR pUserName;
  79920.    LPWSTR pDocument;
  79921.    LPWSTR pNotifyName;
  79922.    LPWSTR pDatatype;
  79923.    LPWSTR pPrintProcessor;
  79924.    LPWSTR pParameters;
  79925.    LPWSTR pDriverName;
  79926.    LPDEVMODEW pDevMode;
  79927.    LPWSTR pStatus;
  79928.    PSECURITY_DESCRIPTOR pSecurityDescriptor;
  79929.    DWORD Status;
  79930.    DWORD Priority;
  79931.    DWORD Position;
  79932.    DWORD StartTime;
  79933.    DWORD UntilTime;
  79934.    DWORD TotalPages;
  79935.    DWORD Size;
  79936.    SYSTEMTIME Submitted;
  79937.    DWORD Time;
  79938.    DWORD PagesPrinted;
  79939.    LONG SizeHigh;
  79940. } JOB_INFO_4W, *PJOB_INFO_4W, *LPJOB_INFO_4W;
  79941.  
  79942.  
  79943.  
  79944.  
  79945.  
  79946. typedef JOB_INFO_4A JOB_INFO_4;
  79947. typedef PJOB_INFO_4A PJOB_INFO_4;
  79948. typedef LPJOB_INFO_4A LPJOB_INFO_4;
  79949. # 538 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  79950. typedef struct _ADDJOB_INFO_1A {
  79951.     LPSTR Path;
  79952.     DWORD JobId;
  79953. } ADDJOB_INFO_1A, *PADDJOB_INFO_1A, *LPADDJOB_INFO_1A;
  79954. typedef struct _ADDJOB_INFO_1W {
  79955.     LPWSTR Path;
  79956.     DWORD JobId;
  79957. } ADDJOB_INFO_1W, *PADDJOB_INFO_1W, *LPADDJOB_INFO_1W;
  79958.  
  79959.  
  79960.  
  79961.  
  79962.  
  79963. typedef ADDJOB_INFO_1A ADDJOB_INFO_1;
  79964. typedef PADDJOB_INFO_1A PADDJOB_INFO_1;
  79965. typedef LPADDJOB_INFO_1A LPADDJOB_INFO_1;
  79966.  
  79967.  
  79968.  
  79969. typedef struct _DRIVER_INFO_1A {
  79970.     LPSTR pName;
  79971. } DRIVER_INFO_1A, *PDRIVER_INFO_1A, *LPDRIVER_INFO_1A;
  79972. typedef struct _DRIVER_INFO_1W {
  79973.     LPWSTR pName;
  79974. } DRIVER_INFO_1W, *PDRIVER_INFO_1W, *LPDRIVER_INFO_1W;
  79975.  
  79976.  
  79977.  
  79978.  
  79979.  
  79980. typedef DRIVER_INFO_1A DRIVER_INFO_1;
  79981. typedef PDRIVER_INFO_1A PDRIVER_INFO_1;
  79982. typedef LPDRIVER_INFO_1A LPDRIVER_INFO_1;
  79983.  
  79984.  
  79985. typedef struct _DRIVER_INFO_2A {
  79986.     DWORD cVersion;
  79987.     LPSTR pName;
  79988.     LPSTR pEnvironment;
  79989.     LPSTR pDriverPath;
  79990.     LPSTR pDataFile;
  79991.     LPSTR pConfigFile;
  79992. } DRIVER_INFO_2A, *PDRIVER_INFO_2A, *LPDRIVER_INFO_2A;
  79993. typedef struct _DRIVER_INFO_2W {
  79994.     DWORD cVersion;
  79995.     LPWSTR pName;
  79996.     LPWSTR pEnvironment;
  79997.     LPWSTR pDriverPath;
  79998.     LPWSTR pDataFile;
  79999.     LPWSTR pConfigFile;
  80000. } DRIVER_INFO_2W, *PDRIVER_INFO_2W, *LPDRIVER_INFO_2W;
  80001.  
  80002.  
  80003.  
  80004.  
  80005.  
  80006. typedef DRIVER_INFO_2A DRIVER_INFO_2;
  80007. typedef PDRIVER_INFO_2A PDRIVER_INFO_2;
  80008. typedef LPDRIVER_INFO_2A LPDRIVER_INFO_2;
  80009.  
  80010.  
  80011. typedef struct _DRIVER_INFO_3A {
  80012.     DWORD cVersion;
  80013.     LPSTR pName;
  80014.     LPSTR pEnvironment;
  80015.     LPSTR pDriverPath;
  80016.     LPSTR pDataFile;
  80017.     LPSTR pConfigFile;
  80018.     LPSTR pHelpFile;
  80019.     LPSTR pDependentFiles;
  80020.     LPSTR pMonitorName;
  80021.     LPSTR pDefaultDataType;
  80022. } DRIVER_INFO_3A, *PDRIVER_INFO_3A, *LPDRIVER_INFO_3A;
  80023. typedef struct _DRIVER_INFO_3W {
  80024.     DWORD cVersion;
  80025.     LPWSTR pName;
  80026.     LPWSTR pEnvironment;
  80027.     LPWSTR pDriverPath;
  80028.     LPWSTR pDataFile;
  80029.     LPWSTR pConfigFile;
  80030.     LPWSTR pHelpFile;
  80031.     LPWSTR pDependentFiles;
  80032.     LPWSTR pMonitorName;
  80033.     LPWSTR pDefaultDataType;
  80034. } DRIVER_INFO_3W, *PDRIVER_INFO_3W, *LPDRIVER_INFO_3W;
  80035.  
  80036.  
  80037.  
  80038.  
  80039.  
  80040. typedef DRIVER_INFO_3A DRIVER_INFO_3;
  80041. typedef PDRIVER_INFO_3A PDRIVER_INFO_3;
  80042. typedef LPDRIVER_INFO_3A LPDRIVER_INFO_3;
  80043.  
  80044.  
  80045. typedef struct _DRIVER_INFO_4A {
  80046.     DWORD cVersion;
  80047.     LPSTR pName;
  80048.     LPSTR pEnvironment;
  80049.     LPSTR pDriverPath;
  80050.     LPSTR pDataFile;
  80051.     LPSTR pConfigFile;
  80052.     LPSTR pHelpFile;
  80053.     LPSTR pDependentFiles;
  80054.     LPSTR pMonitorName;
  80055.     LPSTR pDefaultDataType;
  80056.     LPSTR pszzPreviousNames;
  80057. } DRIVER_INFO_4A, *PDRIVER_INFO_4A, *LPDRIVER_INFO_4A;
  80058. typedef struct _DRIVER_INFO_4W {
  80059.     DWORD cVersion;
  80060.     LPWSTR pName;
  80061.     LPWSTR pEnvironment;
  80062.     LPWSTR pDriverPath;
  80063.     LPWSTR pDataFile;
  80064.     LPWSTR pConfigFile;
  80065.     LPWSTR pHelpFile;
  80066.     LPWSTR pDependentFiles;
  80067.     LPWSTR pMonitorName;
  80068.     LPWSTR pDefaultDataType;
  80069.     LPWSTR pszzPreviousNames;
  80070. } DRIVER_INFO_4W, *PDRIVER_INFO_4W, *LPDRIVER_INFO_4W;
  80071.  
  80072.  
  80073.  
  80074.  
  80075.  
  80076. typedef DRIVER_INFO_4A DRIVER_INFO_4;
  80077. typedef PDRIVER_INFO_4A PDRIVER_INFO_4;
  80078. typedef LPDRIVER_INFO_4A LPDRIVER_INFO_4;
  80079.  
  80080.  
  80081. typedef struct _DRIVER_INFO_5A {
  80082.     DWORD cVersion;
  80083.     LPSTR pName;
  80084.     LPSTR pEnvironment;
  80085.     LPSTR pDriverPath;
  80086.     LPSTR pDataFile;
  80087.     LPSTR pConfigFile;
  80088.     DWORD dwDriverAttributes;
  80089.     DWORD dwConfigVersion;
  80090.     DWORD dwDriverVersion;
  80091. } DRIVER_INFO_5A, *PDRIVER_INFO_5A, *LPDRIVER_INFO_5A;
  80092. typedef struct _DRIVER_INFO_5W {
  80093.     DWORD cVersion;
  80094.     LPWSTR pName;
  80095.     LPWSTR pEnvironment;
  80096.     LPWSTR pDriverPath;
  80097.     LPWSTR pDataFile;
  80098.     LPWSTR pConfigFile;
  80099.     DWORD dwDriverAttributes;
  80100.     DWORD dwConfigVersion;
  80101.     DWORD dwDriverVersion;
  80102. } DRIVER_INFO_5W, *PDRIVER_INFO_5W, *LPDRIVER_INFO_5W;
  80103.  
  80104.  
  80105.  
  80106.  
  80107.  
  80108. typedef DRIVER_INFO_5A DRIVER_INFO_5;
  80109. typedef PDRIVER_INFO_5A PDRIVER_INFO_5;
  80110. typedef LPDRIVER_INFO_5A LPDRIVER_INFO_5;
  80111.  
  80112.  
  80113. typedef struct _DRIVER_INFO_6A {
  80114.     DWORD cVersion;
  80115.     LPSTR pName;
  80116.     LPSTR pEnvironment;
  80117.     LPSTR pDriverPath;
  80118.     LPSTR pDataFile;
  80119.     LPSTR pConfigFile;
  80120.     LPSTR pHelpFile;
  80121.     LPSTR pDependentFiles;
  80122.     LPSTR pMonitorName;
  80123.     LPSTR pDefaultDataType;
  80124.     LPSTR pszzPreviousNames;
  80125.     FILETIME ftDriverDate;
  80126.     DWORDLONG dwlDriverVersion;
  80127.     LPSTR pszMfgName;
  80128.     LPSTR pszOEMUrl;
  80129.     LPSTR pszHardwareID;
  80130.     LPSTR pszProvider;
  80131. } DRIVER_INFO_6A, *PDRIVER_INFO_6A, *LPDRIVER_INFO_6A;
  80132. typedef struct _DRIVER_INFO_6W {
  80133.     DWORD cVersion;
  80134.     LPWSTR pName;
  80135.     LPWSTR pEnvironment;
  80136.     LPWSTR pDriverPath;
  80137.     LPWSTR pDataFile;
  80138.     LPWSTR pConfigFile;
  80139.     LPWSTR pHelpFile;
  80140.     LPWSTR pDependentFiles;
  80141.     LPWSTR pMonitorName;
  80142.     LPWSTR pDefaultDataType;
  80143.     LPWSTR pszzPreviousNames;
  80144.     FILETIME ftDriverDate;
  80145.     DWORDLONG dwlDriverVersion;
  80146.     LPWSTR pszMfgName;
  80147.     LPWSTR pszOEMUrl;
  80148.     LPWSTR pszHardwareID;
  80149.     LPWSTR pszProvider;
  80150. } DRIVER_INFO_6W, *PDRIVER_INFO_6W, *LPDRIVER_INFO_6W;
  80151.  
  80152.  
  80153.  
  80154.  
  80155.  
  80156. typedef DRIVER_INFO_6A DRIVER_INFO_6;
  80157. typedef PDRIVER_INFO_6A PDRIVER_INFO_6;
  80158. typedef LPDRIVER_INFO_6A LPDRIVER_INFO_6;
  80159. # 764 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80160. typedef struct _DRIVER_INFO_8A {
  80161.     DWORD cVersion;
  80162.     LPSTR pName;
  80163.     LPSTR pEnvironment;
  80164.     LPSTR pDriverPath;
  80165.     LPSTR pDataFile;
  80166.     LPSTR pConfigFile;
  80167.     LPSTR pHelpFile;
  80168.     LPSTR pDependentFiles;
  80169.     LPSTR pMonitorName;
  80170.     LPSTR pDefaultDataType;
  80171.     LPSTR pszzPreviousNames;
  80172.     FILETIME ftDriverDate;
  80173.     DWORDLONG dwlDriverVersion;
  80174.     LPSTR pszMfgName;
  80175.     LPSTR pszOEMUrl;
  80176.     LPSTR pszHardwareID;
  80177.     LPSTR pszProvider;
  80178.     LPSTR pszPrintProcessor;
  80179.     LPSTR pszVendorSetup;
  80180.     LPSTR pszzColorProfiles;
  80181.     LPSTR pszInfPath;
  80182.     DWORD dwPrinterDriverAttributes;
  80183.     LPSTR pszzCoreDriverDependencies;
  80184.     FILETIME ftMinInboxDriverVerDate;
  80185.     DWORDLONG dwlMinInboxDriverVerVersion;
  80186. } DRIVER_INFO_8A, *PDRIVER_INFO_8A, *LPDRIVER_INFO_8A;
  80187. typedef struct _DRIVER_INFO_8W {
  80188.     DWORD cVersion;
  80189.     LPWSTR pName;
  80190.     LPWSTR pEnvironment;
  80191.     LPWSTR pDriverPath;
  80192.     LPWSTR pDataFile;
  80193.     LPWSTR pConfigFile;
  80194.     LPWSTR pHelpFile;
  80195.     LPWSTR pDependentFiles;
  80196.     LPWSTR pMonitorName;
  80197.     LPWSTR pDefaultDataType;
  80198.     LPWSTR pszzPreviousNames;
  80199.     FILETIME ftDriverDate;
  80200.     DWORDLONG dwlDriverVersion;
  80201.     LPWSTR pszMfgName;
  80202.     LPWSTR pszOEMUrl;
  80203.     LPWSTR pszHardwareID;
  80204.     LPWSTR pszProvider;
  80205.     LPWSTR pszPrintProcessor;
  80206.     LPWSTR pszVendorSetup;
  80207.     LPWSTR pszzColorProfiles;
  80208.     LPWSTR pszInfPath;
  80209.     DWORD dwPrinterDriverAttributes;
  80210.     LPWSTR pszzCoreDriverDependencies;
  80211.     FILETIME ftMinInboxDriverVerDate;
  80212.     DWORDLONG dwlMinInboxDriverVerVersion;
  80213. } DRIVER_INFO_8W, *PDRIVER_INFO_8W, *LPDRIVER_INFO_8W;
  80214.  
  80215.  
  80216.  
  80217.  
  80218.  
  80219. typedef DRIVER_INFO_8A DRIVER_INFO_8;
  80220. typedef PDRIVER_INFO_8A PDRIVER_INFO_8;
  80221. typedef LPDRIVER_INFO_8A LPDRIVER_INFO_8;
  80222. # 851 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80223. typedef struct _DOC_INFO_1A {
  80224.     LPSTR pDocName;
  80225.     LPSTR pOutputFile;
  80226.     LPSTR pDatatype;
  80227. } DOC_INFO_1A, *PDOC_INFO_1A, *LPDOC_INFO_1A;
  80228. typedef struct _DOC_INFO_1W {
  80229.     LPWSTR pDocName;
  80230.     LPWSTR pOutputFile;
  80231.     LPWSTR pDatatype;
  80232. } DOC_INFO_1W, *PDOC_INFO_1W, *LPDOC_INFO_1W;
  80233.  
  80234.  
  80235.  
  80236.  
  80237.  
  80238. typedef DOC_INFO_1A DOC_INFO_1;
  80239. typedef PDOC_INFO_1A PDOC_INFO_1;
  80240. typedef LPDOC_INFO_1A LPDOC_INFO_1;
  80241.  
  80242.  
  80243. typedef struct _FORM_INFO_1A {
  80244.     DWORD Flags;
  80245.     LPSTR pName;
  80246.     SIZEL Size;
  80247.     RECTL ImageableArea;
  80248. } FORM_INFO_1A, *PFORM_INFO_1A, *LPFORM_INFO_1A;
  80249. typedef struct _FORM_INFO_1W {
  80250.     DWORD Flags;
  80251.     LPWSTR pName;
  80252.     SIZEL Size;
  80253.     RECTL ImageableArea;
  80254. } FORM_INFO_1W, *PFORM_INFO_1W, *LPFORM_INFO_1W;
  80255.  
  80256.  
  80257.  
  80258.  
  80259.  
  80260. typedef FORM_INFO_1A FORM_INFO_1;
  80261. typedef PFORM_INFO_1A PFORM_INFO_1;
  80262. typedef LPFORM_INFO_1A LPFORM_INFO_1;
  80263. # 900 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80264.     typedef struct _FORM_INFO_2A {
  80265.         DWORD Flags;
  80266.         LPCSTR pName;
  80267.         SIZEL Size;
  80268.         RECTL ImageableArea;
  80269.         LPCSTR pKeyword;
  80270.         DWORD StringType;
  80271.         LPCSTR pMuiDll;
  80272.         DWORD dwResourceId;
  80273.         LPCSTR pDisplayName;
  80274.         LANGID wLangId;
  80275.     } FORM_INFO_2A, *PFORM_INFO_2A, *LPFORM_INFO_2A;
  80276.     typedef struct _FORM_INFO_2W {
  80277.         DWORD Flags;
  80278.         LPCWSTR pName;
  80279.         SIZEL Size;
  80280.         RECTL ImageableArea;
  80281.         LPCSTR pKeyword;
  80282.         DWORD StringType;
  80283.         LPCWSTR pMuiDll;
  80284.         DWORD dwResourceId;
  80285.         LPCWSTR pDisplayName;
  80286.         LANGID wLangId;
  80287.     } FORM_INFO_2W, *PFORM_INFO_2W, *LPFORM_INFO_2W;
  80288.  
  80289.  
  80290.  
  80291.  
  80292.  
  80293. typedef FORM_INFO_2A FORM_INFO_2;
  80294. typedef PFORM_INFO_2A PFORM_INFO_2;
  80295. typedef LPFORM_INFO_2A LPFORM_INFO_2;
  80296.  
  80297.  
  80298.  
  80299. typedef struct _DOC_INFO_2A {
  80300.     LPSTR pDocName;
  80301.     LPSTR pOutputFile;
  80302.     LPSTR pDatatype;
  80303.     DWORD dwMode;
  80304.     DWORD JobId;
  80305. } DOC_INFO_2A, *PDOC_INFO_2A, *LPDOC_INFO_2A;
  80306. typedef struct _DOC_INFO_2W {
  80307.     LPWSTR pDocName;
  80308.     LPWSTR pOutputFile;
  80309.     LPWSTR pDatatype;
  80310.     DWORD dwMode;
  80311.     DWORD JobId;
  80312. } DOC_INFO_2W, *PDOC_INFO_2W, *LPDOC_INFO_2W;
  80313.  
  80314.  
  80315.  
  80316.  
  80317.  
  80318. typedef DOC_INFO_2A DOC_INFO_2;
  80319. typedef PDOC_INFO_2A PDOC_INFO_2;
  80320. typedef LPDOC_INFO_2A LPDOC_INFO_2;
  80321.  
  80322.  
  80323.  
  80324.  
  80325.  
  80326.  
  80327.  
  80328. typedef struct _DOC_INFO_3A {
  80329.     LPSTR pDocName;
  80330.     LPSTR pOutputFile;
  80331.     LPSTR pDatatype;
  80332.     DWORD dwFlags;
  80333. } DOC_INFO_3A, *PDOC_INFO_3A, *LPDOC_INFO_3A;
  80334. typedef struct _DOC_INFO_3W {
  80335.     LPWSTR pDocName;
  80336.     LPWSTR pOutputFile;
  80337.     LPWSTR pDatatype;
  80338.     DWORD dwFlags;
  80339. } DOC_INFO_3W, *PDOC_INFO_3W, *LPDOC_INFO_3W;
  80340.  
  80341.  
  80342.  
  80343.  
  80344.  
  80345. typedef DOC_INFO_3A DOC_INFO_3;
  80346. typedef PDOC_INFO_3A PDOC_INFO_3;
  80347. typedef LPDOC_INFO_3A LPDOC_INFO_3;
  80348. # 992 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80349. typedef struct _PRINTPROCESSOR_INFO_1A {
  80350.     LPSTR pName;
  80351. } PRINTPROCESSOR_INFO_1A, *PPRINTPROCESSOR_INFO_1A, *LPPRINTPROCESSOR_INFO_1A;
  80352. typedef struct _PRINTPROCESSOR_INFO_1W {
  80353.     LPWSTR pName;
  80354. } PRINTPROCESSOR_INFO_1W, *PPRINTPROCESSOR_INFO_1W, *LPPRINTPROCESSOR_INFO_1W;
  80355.  
  80356.  
  80357.  
  80358.  
  80359.  
  80360. typedef PRINTPROCESSOR_INFO_1A PRINTPROCESSOR_INFO_1;
  80361. typedef PPRINTPROCESSOR_INFO_1A PPRINTPROCESSOR_INFO_1;
  80362. typedef LPPRINTPROCESSOR_INFO_1A LPPRINTPROCESSOR_INFO_1;
  80363.  
  80364.  
  80365.  
  80366.     typedef struct _PRINTPROCESSOR_CAPS_1 {
  80367.         DWORD dwLevel;
  80368.         DWORD dwNupOptions;
  80369.         DWORD dwPageOrderFlags;
  80370.         DWORD dwNumberOfCopies;
  80371.     } PRINTPROCESSOR_CAPS_1, *PPRINTPROCESSOR_CAPS_1;
  80372.  
  80373.  
  80374.  
  80375.  
  80376.  
  80377.  
  80378.     typedef struct _PRINTPROCESSOR_CAPS_2 {
  80379.         DWORD dwLevel;
  80380.         DWORD dwNupOptions;
  80381.         DWORD dwPageOrderFlags;
  80382.         DWORD dwNumberOfCopies;
  80383.  
  80384.  
  80385.         DWORD dwDuplexHandlingCaps;
  80386.         DWORD dwNupDirectionCaps;
  80387.         DWORD dwNupBorderCaps;
  80388.         DWORD dwBookletHandlingCaps;
  80389.         DWORD dwScalingCaps;
  80390.  
  80391.     } PRINTPROCESSOR_CAPS_2, *PPRINTPROCESSOR_CAPS_2;
  80392. # 1061 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80393. typedef struct _PORT_INFO_1A {
  80394.     LPSTR pName;
  80395. } PORT_INFO_1A, *PPORT_INFO_1A, *LPPORT_INFO_1A;
  80396. typedef struct _PORT_INFO_1W {
  80397.     LPWSTR pName;
  80398. } PORT_INFO_1W, *PPORT_INFO_1W, *LPPORT_INFO_1W;
  80399.  
  80400.  
  80401.  
  80402.  
  80403.  
  80404. typedef PORT_INFO_1A PORT_INFO_1;
  80405. typedef PPORT_INFO_1A PPORT_INFO_1;
  80406. typedef LPPORT_INFO_1A LPPORT_INFO_1;
  80407.  
  80408.  
  80409. typedef struct _PORT_INFO_2A {
  80410.     LPSTR pPortName;
  80411.     LPSTR pMonitorName;
  80412.     LPSTR pDescription;
  80413.     DWORD fPortType;
  80414.     DWORD Reserved;
  80415. } PORT_INFO_2A, *PPORT_INFO_2A, *LPPORT_INFO_2A;
  80416. typedef struct _PORT_INFO_2W {
  80417.     LPWSTR pPortName;
  80418.     LPWSTR pMonitorName;
  80419.     LPWSTR pDescription;
  80420.     DWORD fPortType;
  80421.     DWORD Reserved;
  80422. } PORT_INFO_2W, *PPORT_INFO_2W, *LPPORT_INFO_2W;
  80423.  
  80424.  
  80425.  
  80426.  
  80427.  
  80428. typedef PORT_INFO_2A PORT_INFO_2;
  80429. typedef PPORT_INFO_2A PPORT_INFO_2;
  80430. typedef LPPORT_INFO_2A LPPORT_INFO_2;
  80431.  
  80432.  
  80433.  
  80434.  
  80435.  
  80436.  
  80437.  
  80438. typedef struct _PORT_INFO_3A {
  80439.     DWORD dwStatus;
  80440.     LPSTR pszStatus;
  80441.     DWORD dwSeverity;
  80442. } PORT_INFO_3A, *PPORT_INFO_3A, *LPPORT_INFO_3A;
  80443. typedef struct _PORT_INFO_3W {
  80444.     DWORD dwStatus;
  80445.     LPWSTR pszStatus;
  80446.     DWORD dwSeverity;
  80447. } PORT_INFO_3W, *PPORT_INFO_3W, *LPPORT_INFO_3W;
  80448.  
  80449.  
  80450.  
  80451.  
  80452.  
  80453. typedef PORT_INFO_3A PORT_INFO_3;
  80454. typedef PPORT_INFO_3A PPORT_INFO_3;
  80455. typedef LPPORT_INFO_3A LPPORT_INFO_3;
  80456. # 1146 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80457. typedef struct _MONITOR_INFO_1A{
  80458.     LPSTR pName;
  80459. } MONITOR_INFO_1A, *PMONITOR_INFO_1A, *LPMONITOR_INFO_1A;
  80460. typedef struct _MONITOR_INFO_1W{
  80461.     LPWSTR pName;
  80462. } MONITOR_INFO_1W, *PMONITOR_INFO_1W, *LPMONITOR_INFO_1W;
  80463.  
  80464.  
  80465.  
  80466.  
  80467.  
  80468. typedef MONITOR_INFO_1A MONITOR_INFO_1;
  80469. typedef PMONITOR_INFO_1A PMONITOR_INFO_1;
  80470. typedef LPMONITOR_INFO_1A LPMONITOR_INFO_1;
  80471.  
  80472.  
  80473. typedef struct _MONITOR_INFO_2A{
  80474.     LPSTR pName;
  80475.     LPSTR pEnvironment;
  80476.     LPSTR pDLLName;
  80477. } MONITOR_INFO_2A, *PMONITOR_INFO_2A, *LPMONITOR_INFO_2A;
  80478. typedef struct _MONITOR_INFO_2W{
  80479.     LPWSTR pName;
  80480.     LPWSTR pEnvironment;
  80481.     LPWSTR pDLLName;
  80482. } MONITOR_INFO_2W, *PMONITOR_INFO_2W, *LPMONITOR_INFO_2W;
  80483.  
  80484.  
  80485.  
  80486.  
  80487.  
  80488. typedef MONITOR_INFO_2A MONITOR_INFO_2;
  80489. typedef PMONITOR_INFO_2A PMONITOR_INFO_2;
  80490. typedef LPMONITOR_INFO_2A LPMONITOR_INFO_2;
  80491.  
  80492.  
  80493. typedef struct _DATATYPES_INFO_1A{
  80494.     LPSTR pName;
  80495. } DATATYPES_INFO_1A, *PDATATYPES_INFO_1A, *LPDATATYPES_INFO_1A;
  80496. typedef struct _DATATYPES_INFO_1W{
  80497.     LPWSTR pName;
  80498. } DATATYPES_INFO_1W, *PDATATYPES_INFO_1W, *LPDATATYPES_INFO_1W;
  80499.  
  80500.  
  80501.  
  80502.  
  80503.  
  80504. typedef DATATYPES_INFO_1A DATATYPES_INFO_1;
  80505. typedef PDATATYPES_INFO_1A PDATATYPES_INFO_1;
  80506. typedef LPDATATYPES_INFO_1A LPDATATYPES_INFO_1;
  80507.  
  80508.  
  80509. typedef struct _PRINTER_DEFAULTSA{
  80510.     LPSTR pDatatype;
  80511.     LPDEVMODEA pDevMode;
  80512.     ACCESS_MASK DesiredAccess;
  80513. } PRINTER_DEFAULTSA, *PPRINTER_DEFAULTSA, *LPPRINTER_DEFAULTSA;
  80514. typedef struct _PRINTER_DEFAULTSW{
  80515.     LPWSTR pDatatype;
  80516.     LPDEVMODEW pDevMode;
  80517.     ACCESS_MASK DesiredAccess;
  80518. } PRINTER_DEFAULTSW, *PPRINTER_DEFAULTSW, *LPPRINTER_DEFAULTSW;
  80519.  
  80520.  
  80521.  
  80522.  
  80523.  
  80524. typedef PRINTER_DEFAULTSA PRINTER_DEFAULTS;
  80525. typedef PPRINTER_DEFAULTSA PPRINTER_DEFAULTS;
  80526. typedef LPPRINTER_DEFAULTSA LPPRINTER_DEFAULTS;
  80527.  
  80528.  
  80529. typedef struct _PRINTER_ENUM_VALUESA {
  80530.     LPSTR pValueName;
  80531.     DWORD cbValueName;
  80532.     DWORD dwType;
  80533.     LPBYTE pData;
  80534.     DWORD cbData;
  80535. } PRINTER_ENUM_VALUESA, *PPRINTER_ENUM_VALUESA, *LPPRINTER_ENUM_VALUESA;
  80536. typedef struct _PRINTER_ENUM_VALUESW {
  80537.     LPWSTR pValueName;
  80538.     DWORD cbValueName;
  80539.     DWORD dwType;
  80540.     LPBYTE pData;
  80541.     DWORD cbData;
  80542. } PRINTER_ENUM_VALUESW, *PPRINTER_ENUM_VALUESW, *LPPRINTER_ENUM_VALUESW;
  80543.  
  80544.  
  80545.  
  80546.  
  80547.  
  80548. typedef PRINTER_ENUM_VALUESA PRINTER_ENUM_VALUES;
  80549. typedef PPRINTER_ENUM_VALUESA PPRINTER_ENUM_VALUES;
  80550. typedef LPPRINTER_ENUM_VALUESA LPPRINTER_ENUM_VALUES;
  80551.  
  80552.  
  80553.  
  80554. BOOL
  80555. __stdcall
  80556. EnumPrintersA(
  80557.               DWORD Flags,
  80558.               LPSTR Name,
  80559.               DWORD Level,
  80560.  
  80561.               LPBYTE pPrinterEnum,
  80562.               DWORD cbBuf,
  80563.               LPDWORD pcbNeeded,
  80564.               LPDWORD pcReturned
  80565. );
  80566.  
  80567. BOOL
  80568. __stdcall
  80569. EnumPrintersW(
  80570.               DWORD Flags,
  80571.               LPWSTR Name,
  80572.               DWORD Level,
  80573.  
  80574.               LPBYTE pPrinterEnum,
  80575.               DWORD cbBuf,
  80576.               LPDWORD pcbNeeded,
  80577.               LPDWORD pcReturned
  80578. );
  80579. # 1304 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80580. HANDLE
  80581. __stdcall
  80582. GetSpoolFileHandle(
  80583.         HANDLE hPrinter
  80584. );
  80585.  
  80586. HANDLE
  80587. __stdcall
  80588. CommitSpoolData(
  80589.         HANDLE hPrinter,
  80590.         HANDLE hSpoolFile,
  80591.         DWORD cbCommit
  80592. );
  80593.  
  80594. BOOL
  80595. __stdcall
  80596. CloseSpoolFileHandle(
  80597.         HANDLE hPrinter,
  80598.         HANDLE hSpoolFile
  80599. );
  80600.  
  80601. BOOL
  80602. __stdcall
  80603. OpenPrinterA(
  80604.             LPSTR pPrinterName,
  80605.             LPHANDLE phPrinter,
  80606.             LPPRINTER_DEFAULTSA pDefault
  80607. );
  80608. BOOL
  80609. __stdcall
  80610. OpenPrinterW(
  80611.             LPWSTR pPrinterName,
  80612.             LPHANDLE phPrinter,
  80613.             LPPRINTER_DEFAULTSW pDefault
  80614. );
  80615.  
  80616.  
  80617.  
  80618.  
  80619.  
  80620.  
  80621. BOOL
  80622. __stdcall
  80623. ResetPrinterA(
  80624.             HANDLE hPrinter,
  80625.             LPPRINTER_DEFAULTSA pDefault
  80626. );
  80627. BOOL
  80628. __stdcall
  80629. ResetPrinterW(
  80630.             HANDLE hPrinter,
  80631.             LPPRINTER_DEFAULTSW pDefault
  80632. );
  80633.  
  80634.  
  80635.  
  80636.  
  80637.  
  80638.  
  80639. BOOL
  80640. __stdcall
  80641. SetJobA(
  80642.                  HANDLE hPrinter,
  80643.                  DWORD JobId,
  80644.                  DWORD Level,
  80645.  
  80646.  
  80647.  
  80648.  
  80649.  
  80650.                  LPBYTE pJob,
  80651.                  DWORD Command
  80652. );
  80653. BOOL
  80654. __stdcall
  80655. SetJobW(
  80656.                  HANDLE hPrinter,
  80657.                  DWORD JobId,
  80658.                  DWORD Level,
  80659.  
  80660.  
  80661.  
  80662.  
  80663.  
  80664.                  LPBYTE pJob,
  80665.                  DWORD Command
  80666. );
  80667.  
  80668.  
  80669.  
  80670.  
  80671.  
  80672.  
  80673. BOOL
  80674. __stdcall
  80675. GetJobA(
  80676.       HANDLE hPrinter,
  80677.       DWORD JobId,
  80678.       DWORD Level,
  80679.  
  80680.       LPBYTE pJob,
  80681.       DWORD cbBuf,
  80682.       LPDWORD pcbNeeded
  80683. );
  80684. BOOL
  80685. __stdcall
  80686. GetJobW(
  80687.       HANDLE hPrinter,
  80688.       DWORD JobId,
  80689.       DWORD Level,
  80690.  
  80691.       LPBYTE pJob,
  80692.       DWORD cbBuf,
  80693.       LPDWORD pcbNeeded
  80694. );
  80695.  
  80696.  
  80697.  
  80698.  
  80699.  
  80700.  
  80701. BOOL
  80702. __stdcall
  80703. EnumJobsA(
  80704.       HANDLE hPrinter,
  80705.       DWORD FirstJob,
  80706.       DWORD NoJobs,
  80707.       DWORD Level,
  80708.  
  80709.       LPBYTE pJob,
  80710.       DWORD cbBuf,
  80711.       LPDWORD pcbNeeded,
  80712.       LPDWORD pcReturned
  80713. );
  80714. BOOL
  80715. __stdcall
  80716. EnumJobsW(
  80717.       HANDLE hPrinter,
  80718.       DWORD FirstJob,
  80719.       DWORD NoJobs,
  80720.       DWORD Level,
  80721.  
  80722.       LPBYTE pJob,
  80723.       DWORD cbBuf,
  80724.       LPDWORD pcbNeeded,
  80725.       LPDWORD pcReturned
  80726. );
  80727.  
  80728.  
  80729.  
  80730.  
  80731.  
  80732.  
  80733. HANDLE
  80734. __stdcall
  80735. AddPrinterA(
  80736.             LPSTR pName,
  80737.  
  80738.             DWORD Level,
  80739.  
  80740.  
  80741.             LPBYTE pPrinter
  80742. );
  80743. HANDLE
  80744. __stdcall
  80745. AddPrinterW(
  80746.             LPWSTR pName,
  80747.  
  80748.             DWORD Level,
  80749.  
  80750.  
  80751.             LPBYTE pPrinter
  80752. );
  80753.  
  80754.  
  80755.  
  80756.  
  80757.  
  80758.  
  80759. BOOL
  80760. __stdcall
  80761. DeletePrinter(
  80762.         HANDLE hPrinter
  80763. );
  80764.  
  80765. BOOL
  80766. __stdcall
  80767. SetPrinterA(
  80768.                      HANDLE hPrinter,
  80769.                      DWORD Level,
  80770. # 1505 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80771.                      LPBYTE pPrinter,
  80772.                      DWORD Command
  80773.     );
  80774. BOOL
  80775. __stdcall
  80776. SetPrinterW(
  80777.                      HANDLE hPrinter,
  80778.                      DWORD Level,
  80779. # 1524 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80780.                      LPBYTE pPrinter,
  80781.                      DWORD Command
  80782.     );
  80783.  
  80784.  
  80785.  
  80786.  
  80787.  
  80788.  
  80789. BOOL
  80790. __stdcall
  80791. GetPrinterA(
  80792.       HANDLE hPrinter,
  80793.       DWORD Level,
  80794.  
  80795.       LPBYTE pPrinter,
  80796.       DWORD cbBuf,
  80797.       LPDWORD pcbNeeded
  80798. );
  80799. BOOL
  80800. __stdcall
  80801. GetPrinterW(
  80802.       HANDLE hPrinter,
  80803.       DWORD Level,
  80804.  
  80805.       LPBYTE pPrinter,
  80806.       DWORD cbBuf,
  80807.       LPDWORD pcbNeeded
  80808. );
  80809.  
  80810.  
  80811.  
  80812.  
  80813.  
  80814.  
  80815. BOOL
  80816. __stdcall
  80817. AddPrinterDriverA(
  80818.             LPSTR pName,
  80819.             DWORD Level,
  80820.             LPBYTE pDriverInfo
  80821. );
  80822. BOOL
  80823. __stdcall
  80824. AddPrinterDriverW(
  80825.             LPWSTR pName,
  80826.             DWORD Level,
  80827.             LPBYTE pDriverInfo
  80828. );
  80829.  
  80830.  
  80831.  
  80832.  
  80833.  
  80834.  
  80835. BOOL
  80836. __stdcall
  80837. AddPrinterDriverExA(
  80838.                  LPSTR pName,
  80839.                  DWORD Level,
  80840.  
  80841.  
  80842.  
  80843.  
  80844.  
  80845.                  PBYTE lpbDriverInfo,
  80846.                  DWORD dwFileCopyFlags
  80847. );
  80848. BOOL
  80849. __stdcall
  80850. AddPrinterDriverExW(
  80851.                  LPWSTR pName,
  80852.                  DWORD Level,
  80853.  
  80854.  
  80855.  
  80856.  
  80857.  
  80858.                  PBYTE lpbDriverInfo,
  80859.                  DWORD dwFileCopyFlags
  80860. );
  80861.  
  80862.  
  80863.  
  80864.  
  80865.  
  80866.  
  80867. BOOL
  80868. __stdcall
  80869. EnumPrinterDriversA(
  80870.             LPSTR pName,
  80871.             LPSTR pEnvironment,
  80872.             DWORD Level,
  80873.  
  80874.             LPBYTE pDriverInfo,
  80875.             DWORD cbBuf,
  80876.             LPDWORD pcbNeeded,
  80877.             LPDWORD pcReturned
  80878. );
  80879. BOOL
  80880. __stdcall
  80881. EnumPrinterDriversW(
  80882.             LPWSTR pName,
  80883.             LPWSTR pEnvironment,
  80884.             DWORD Level,
  80885.  
  80886.             LPBYTE pDriverInfo,
  80887.             DWORD cbBuf,
  80888.             LPDWORD pcbNeeded,
  80889.             LPDWORD pcReturned
  80890. );
  80891.  
  80892.  
  80893.  
  80894.  
  80895.  
  80896.  
  80897. BOOL
  80898. __stdcall
  80899. GetPrinterDriverA(
  80900.             HANDLE hPrinter,
  80901.             LPSTR pEnvironment,
  80902.             DWORD Level,
  80903.  
  80904.             LPBYTE pDriverInfo,
  80905.             DWORD cbBuf,
  80906.             LPDWORD pcbNeeded
  80907. );
  80908. BOOL
  80909. __stdcall
  80910. GetPrinterDriverW(
  80911.             HANDLE hPrinter,
  80912.             LPWSTR pEnvironment,
  80913.             DWORD Level,
  80914.  
  80915.             LPBYTE pDriverInfo,
  80916.             DWORD cbBuf,
  80917.             LPDWORD pcbNeeded
  80918. );
  80919.  
  80920.  
  80921.  
  80922.  
  80923.  
  80924.  
  80925. BOOL
  80926. __stdcall
  80927. GetPrinterDriverDirectoryA(
  80928.             LPSTR pName,
  80929.             LPSTR pEnvironment,
  80930.             DWORD Level,
  80931.  
  80932.             LPBYTE pDriverDirectory,
  80933.             DWORD cbBuf,
  80934.             LPDWORD pcbNeeded
  80935. );
  80936. BOOL
  80937. __stdcall
  80938. GetPrinterDriverDirectoryW(
  80939.             LPWSTR pName,
  80940.             LPWSTR pEnvironment,
  80941.             DWORD Level,
  80942.  
  80943.             LPBYTE pDriverDirectory,
  80944.             DWORD cbBuf,
  80945.             LPDWORD pcbNeeded
  80946. );
  80947.  
  80948.  
  80949.  
  80950.  
  80951.  
  80952.  
  80953. BOOL
  80954. __stdcall
  80955. DeletePrinterDriverA(
  80956.             LPSTR pName,
  80957.             LPSTR pEnvironment,
  80958.             LPSTR pDriverName
  80959. );
  80960. BOOL
  80961. __stdcall
  80962. DeletePrinterDriverW(
  80963.             LPWSTR pName,
  80964.             LPWSTR pEnvironment,
  80965.             LPWSTR pDriverName
  80966. );
  80967.  
  80968.  
  80969.  
  80970.  
  80971.  
  80972.  
  80973. BOOL
  80974. __stdcall
  80975. DeletePrinterDriverExA(
  80976.             LPSTR pName,
  80977.             LPSTR pEnvironment,
  80978.             LPSTR pDriverName,
  80979.             DWORD dwDeleteFlag,
  80980.             DWORD dwVersionFlag
  80981. );
  80982. BOOL
  80983. __stdcall
  80984. DeletePrinterDriverExW(
  80985.             LPWSTR pName,
  80986.             LPWSTR pEnvironment,
  80987.             LPWSTR pDriverName,
  80988.             DWORD dwDeleteFlag,
  80989.             DWORD dwVersionFlag
  80990. );
  80991. # 1743 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  80992. BOOL
  80993. __stdcall
  80994. AddPrintProcessorA(
  80995.            LPSTR pName,
  80996.            LPSTR pEnvironment,
  80997.            LPSTR pPathName,
  80998.            LPSTR pPrintProcessorName
  80999. );
  81000. BOOL
  81001. __stdcall
  81002. AddPrintProcessorW(
  81003.            LPWSTR pName,
  81004.            LPWSTR pEnvironment,
  81005.            LPWSTR pPathName,
  81006.            LPWSTR pPrintProcessorName
  81007. );
  81008.  
  81009.  
  81010.  
  81011.  
  81012.  
  81013.  
  81014. BOOL
  81015. __stdcall
  81016. EnumPrintProcessorsA(
  81017.            LPSTR pName,
  81018.            LPSTR pEnvironment,
  81019.            DWORD Level,
  81020.  
  81021.            LPBYTE pPrintProcessorInfo,
  81022.            DWORD cbBuf,
  81023.            LPDWORD pcbNeeded,
  81024.            LPDWORD pcReturned
  81025. );
  81026. BOOL
  81027. __stdcall
  81028. EnumPrintProcessorsW(
  81029.            LPWSTR pName,
  81030.            LPWSTR pEnvironment,
  81031.            DWORD Level,
  81032.  
  81033.            LPBYTE pPrintProcessorInfo,
  81034.            DWORD cbBuf,
  81035.            LPDWORD pcbNeeded,
  81036.            LPDWORD pcReturned
  81037. );
  81038. # 1797 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81039. BOOL
  81040. __stdcall
  81041. GetPrintProcessorDirectoryA(
  81042.            LPSTR pName,
  81043.            LPSTR pEnvironment,
  81044.            DWORD Level,
  81045.  
  81046.            LPBYTE pPrintProcessorInfo,
  81047.            DWORD cbBuf,
  81048.            LPDWORD pcbNeeded
  81049. );
  81050. BOOL
  81051. __stdcall
  81052. GetPrintProcessorDirectoryW(
  81053.            LPWSTR pName,
  81054.            LPWSTR pEnvironment,
  81055.            DWORD Level,
  81056.  
  81057.            LPBYTE pPrintProcessorInfo,
  81058.            DWORD cbBuf,
  81059.            LPDWORD pcbNeeded
  81060. );
  81061.  
  81062.  
  81063.  
  81064.  
  81065.  
  81066.  
  81067.  
  81068. BOOL
  81069. __stdcall
  81070. EnumPrintProcessorDatatypesA(
  81071.             LPSTR pName,
  81072.             LPSTR pPrintProcessorName,
  81073.             DWORD Level,
  81074.  
  81075.             LPBYTE pDatatypes,
  81076.             DWORD cbBuf,
  81077.             LPDWORD pcbNeeded,
  81078.             LPDWORD pcReturned
  81079. );
  81080.  
  81081. BOOL
  81082. __stdcall
  81083. EnumPrintProcessorDatatypesW(
  81084.             LPWSTR pName,
  81085.             LPWSTR pPrintProcessorName,
  81086.             DWORD Level,
  81087.  
  81088.             LPBYTE pDatatypes,
  81089.             DWORD cbBuf,
  81090.             LPDWORD pcbNeeded,
  81091.             LPDWORD pcReturned
  81092. );
  81093.  
  81094.  
  81095.  
  81096.  
  81097.  
  81098.  
  81099. BOOL
  81100. __stdcall
  81101. DeletePrintProcessorA(
  81102.             LPSTR pName,
  81103.             LPSTR pEnvironment,
  81104.             LPSTR pPrintProcessorName
  81105. );
  81106. BOOL
  81107. __stdcall
  81108. DeletePrintProcessorW(
  81109.             LPWSTR pName,
  81110.             LPWSTR pEnvironment,
  81111.             LPWSTR pPrintProcessorName
  81112. );
  81113.  
  81114.  
  81115.  
  81116.  
  81117.  
  81118.  
  81119. DWORD
  81120. __stdcall
  81121. StartDocPrinterA(
  81122.                  HANDLE hPrinter,
  81123.                  DWORD Level,
  81124.  
  81125.  
  81126.                  LPBYTE pDocInfo
  81127. );
  81128. DWORD
  81129. __stdcall
  81130. StartDocPrinterW(
  81131.                  HANDLE hPrinter,
  81132.                  DWORD Level,
  81133.  
  81134.  
  81135.                  LPBYTE pDocInfo
  81136. );
  81137.  
  81138.  
  81139.  
  81140.  
  81141.  
  81142.  
  81143. BOOL
  81144. __stdcall
  81145. StartPagePrinter(
  81146.         HANDLE hPrinter
  81147. );
  81148.  
  81149. BOOL
  81150. __stdcall
  81151. WritePrinter(
  81152.         HANDLE hPrinter,
  81153.  
  81154.         LPVOID pBuf,
  81155.         DWORD cbBuf,
  81156.         LPDWORD pcWritten
  81157. );
  81158.  
  81159.  
  81160. BOOL
  81161. __stdcall
  81162. FlushPrinter(
  81163.         HANDLE hPrinter,
  81164.  
  81165.         LPVOID pBuf,
  81166.         DWORD cbBuf,
  81167.         LPDWORD pcWritten,
  81168.         DWORD cSleep
  81169. );
  81170.  
  81171. BOOL
  81172. __stdcall
  81173. EndPagePrinter(
  81174.         HANDLE hPrinter
  81175. );
  81176.  
  81177. BOOL
  81178. __stdcall
  81179. AbortPrinter(
  81180.         HANDLE hPrinter
  81181. );
  81182.  
  81183. BOOL
  81184. __stdcall
  81185. ReadPrinter(
  81186.         HANDLE hPrinter,
  81187.  
  81188.         LPVOID pBuf,
  81189.         DWORD cbBuf,
  81190.         LPDWORD pNoBytesRead
  81191. );
  81192.  
  81193. BOOL
  81194. __stdcall
  81195. EndDocPrinter(
  81196.           HANDLE hPrinter
  81197.     );
  81198.  
  81199. BOOL
  81200. __stdcall
  81201. AddJobA(
  81202.         HANDLE hPrinter,
  81203.         DWORD Level,
  81204.  
  81205.         LPBYTE pData,
  81206.         DWORD cbBuf,
  81207.         LPDWORD pcbNeeded
  81208. );
  81209. BOOL
  81210. __stdcall
  81211. AddJobW(
  81212.         HANDLE hPrinter,
  81213.         DWORD Level,
  81214.  
  81215.         LPBYTE pData,
  81216.         DWORD cbBuf,
  81217.         LPDWORD pcbNeeded
  81218. );
  81219.  
  81220.  
  81221.  
  81222.  
  81223.  
  81224.  
  81225. BOOL
  81226. __stdcall
  81227. ScheduleJob(
  81228.         HANDLE hPrinter,
  81229.         DWORD JobId
  81230. );
  81231.  
  81232. BOOL
  81233. __stdcall
  81234. PrinterProperties(
  81235.         HWND hWnd,
  81236.         HANDLE hPrinter
  81237. );
  81238.  
  81239.  
  81240. LONG
  81241. __stdcall
  81242. DocumentPropertiesA(
  81243.                 HWND hWnd,
  81244.                 HANDLE hPrinter,
  81245.                 LPSTR pDeviceName,
  81246.                 PDEVMODEA pDevModeOutput,
  81247.                 PDEVMODEA pDevModeInput,
  81248.                 DWORD fMode
  81249. );
  81250.  
  81251. LONG
  81252. __stdcall
  81253. DocumentPropertiesW(
  81254.                 HWND hWnd,
  81255.                 HANDLE hPrinter,
  81256.                 LPWSTR pDeviceName,
  81257.                 PDEVMODEW pDevModeOutput,
  81258.                 PDEVMODEW pDevModeInput,
  81259.                 DWORD fMode
  81260. );
  81261.  
  81262.  
  81263.  
  81264.  
  81265.  
  81266.  
  81267. LONG
  81268. __stdcall
  81269. AdvancedDocumentPropertiesA(
  81270.                 HWND hWnd,
  81271.                 HANDLE hPrinter,
  81272.                 LPSTR pDeviceName,
  81273.                 PDEVMODEA pDevModeOutput,
  81274.                 PDEVMODEA pDevModeInput
  81275. );
  81276. LONG
  81277. __stdcall
  81278. AdvancedDocumentPropertiesW(
  81279.                 HWND hWnd,
  81280.                 HANDLE hPrinter,
  81281.                 LPWSTR pDeviceName,
  81282.                 PDEVMODEW pDevModeOutput,
  81283.                 PDEVMODEW pDevModeInput
  81284. );
  81285.  
  81286.  
  81287.  
  81288.  
  81289.  
  81290.  
  81291.  
  81292.     LONG
  81293.     ExtDeviceMode(
  81294.                     HWND hWnd,
  81295.                     HANDLE hInst,
  81296.                     LPDEVMODEA pDevModeOutput,
  81297.                     LPSTR pDeviceName,
  81298.                     LPSTR pPort,
  81299.                     LPDEVMODEA pDevModeInput,
  81300.                     LPSTR pProfile,
  81301.                     DWORD fMode
  81302.     );
  81303.  
  81304.  
  81305.  
  81306. DWORD
  81307. __stdcall
  81308. GetPrinterDataA(
  81309.              HANDLE hPrinter,
  81310.              LPSTR pValueName,
  81311.              LPDWORD pType,
  81312.  
  81313.              LPBYTE pData,
  81314.              DWORD nSize,
  81315.              LPDWORD pcbNeeded
  81316. );
  81317. DWORD
  81318. __stdcall
  81319. GetPrinterDataW(
  81320.              HANDLE hPrinter,
  81321.              LPWSTR pValueName,
  81322.              LPDWORD pType,
  81323.  
  81324.              LPBYTE pData,
  81325.              DWORD nSize,
  81326.              LPDWORD pcbNeeded
  81327. );
  81328.  
  81329.  
  81330.  
  81331.  
  81332.  
  81333.  
  81334. DWORD
  81335. __stdcall
  81336. GetPrinterDataExA(
  81337.              HANDLE hPrinter,
  81338.              LPCSTR pKeyName,
  81339.              LPCSTR pValueName,
  81340.              LPDWORD pType,
  81341.  
  81342.              LPBYTE pData,
  81343.              DWORD nSize,
  81344.              LPDWORD pcbNeeded
  81345. );
  81346. DWORD
  81347. __stdcall
  81348. GetPrinterDataExW(
  81349.              HANDLE hPrinter,
  81350.              LPCWSTR pKeyName,
  81351.              LPCWSTR pValueName,
  81352.              LPDWORD pType,
  81353.  
  81354.              LPBYTE pData,
  81355.              DWORD nSize,
  81356.              LPDWORD pcbNeeded
  81357. );
  81358.  
  81359.  
  81360.  
  81361.  
  81362.  
  81363.  
  81364. DWORD
  81365. __stdcall
  81366. EnumPrinterDataA(
  81367.             HANDLE hPrinter,
  81368.             DWORD dwIndex,
  81369.  
  81370.             LPSTR pValueName,
  81371.             DWORD cbValueName,
  81372.             LPDWORD pcbValueName,
  81373.             LPDWORD pType,
  81374.  
  81375.             LPBYTE pData,
  81376.             DWORD cbData,
  81377.  
  81378.             LPDWORD pcbData
  81379. );
  81380. DWORD
  81381. __stdcall
  81382. EnumPrinterDataW(
  81383.             HANDLE hPrinter,
  81384.             DWORD dwIndex,
  81385.  
  81386.             LPWSTR pValueName,
  81387.             DWORD cbValueName,
  81388.             LPDWORD pcbValueName,
  81389.             LPDWORD pType,
  81390.  
  81391.             LPBYTE pData,
  81392.             DWORD cbData,
  81393.  
  81394.             LPDWORD pcbData
  81395. );
  81396.  
  81397.  
  81398.  
  81399.  
  81400.  
  81401.  
  81402. DWORD
  81403. __stdcall
  81404. EnumPrinterDataExA(
  81405.         HANDLE hPrinter,
  81406.         LPCSTR pKeyName,
  81407.  
  81408.         LPBYTE pEnumValues,
  81409.         DWORD cbEnumValues,
  81410.         LPDWORD pcbEnumValues,
  81411.         LPDWORD pnEnumValues
  81412. );
  81413. DWORD
  81414. __stdcall
  81415. EnumPrinterDataExW(
  81416.         HANDLE hPrinter,
  81417.         LPCWSTR pKeyName,
  81418.  
  81419.         LPBYTE pEnumValues,
  81420.         DWORD cbEnumValues,
  81421.         LPDWORD pcbEnumValues,
  81422.         LPDWORD pnEnumValues
  81423. );
  81424.  
  81425.  
  81426.  
  81427.  
  81428.  
  81429.  
  81430. DWORD
  81431. __stdcall
  81432. EnumPrinterKeyA(
  81433.         HANDLE hPrinter,
  81434.         LPCSTR pKeyName,
  81435.  
  81436.         LPSTR pSubkey,
  81437.         DWORD cbSubkey,
  81438.         LPDWORD pcbSubkey
  81439. );
  81440. DWORD
  81441. __stdcall
  81442. EnumPrinterKeyW(
  81443.         HANDLE hPrinter,
  81444.         LPCWSTR pKeyName,
  81445.  
  81446.         LPWSTR pSubkey,
  81447.         DWORD cbSubkey,
  81448.         LPDWORD pcbSubkey
  81449. );
  81450.  
  81451.  
  81452.  
  81453.  
  81454.  
  81455.  
  81456.  
  81457. DWORD
  81458. __stdcall
  81459. SetPrinterDataA(
  81460.         HANDLE hPrinter,
  81461.         LPSTR pValueName,
  81462.         DWORD Type,
  81463.  
  81464.         LPBYTE pData,
  81465.         DWORD cbData
  81466. );
  81467. DWORD
  81468. __stdcall
  81469. SetPrinterDataW(
  81470.         HANDLE hPrinter,
  81471.         LPWSTR pValueName,
  81472.         DWORD Type,
  81473.  
  81474.         LPBYTE pData,
  81475.         DWORD cbData
  81476. );
  81477.  
  81478.  
  81479.  
  81480.  
  81481.  
  81482.  
  81483.  
  81484. DWORD
  81485. __stdcall
  81486. SetPrinterDataExA(
  81487.         HANDLE hPrinter,
  81488.         LPCSTR pKeyName,
  81489.         LPCSTR pValueName,
  81490.         DWORD Type,
  81491.  
  81492.         LPBYTE pData,
  81493.         DWORD cbData
  81494. );
  81495. DWORD
  81496. __stdcall
  81497. SetPrinterDataExW(
  81498.         HANDLE hPrinter,
  81499.         LPCWSTR pKeyName,
  81500.         LPCWSTR pValueName,
  81501.         DWORD Type,
  81502.  
  81503.         LPBYTE pData,
  81504.         DWORD cbData
  81505. );
  81506. # 2272 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81507. DWORD
  81508. __stdcall
  81509. DeletePrinterDataA(
  81510.         HANDLE hPrinter,
  81511.         LPSTR pValueName
  81512. );
  81513. DWORD
  81514. __stdcall
  81515. DeletePrinterDataW(
  81516.         HANDLE hPrinter,
  81517.         LPWSTR pValueName
  81518. );
  81519.  
  81520.  
  81521.  
  81522.  
  81523.  
  81524.  
  81525.  
  81526. DWORD
  81527. __stdcall
  81528. DeletePrinterDataExA(
  81529.         HANDLE hPrinter,
  81530.         LPCSTR pKeyName,
  81531.         LPCSTR pValueName
  81532. );
  81533. DWORD
  81534. __stdcall
  81535. DeletePrinterDataExW(
  81536.         HANDLE hPrinter,
  81537.         LPCWSTR pKeyName,
  81538.         LPCWSTR pValueName
  81539. );
  81540.  
  81541.  
  81542.  
  81543.  
  81544.  
  81545.  
  81546.  
  81547. DWORD
  81548. __stdcall
  81549. DeletePrinterKeyA(
  81550.         HANDLE hPrinter,
  81551.         LPCSTR pKeyName
  81552. );
  81553. DWORD
  81554. __stdcall
  81555. DeletePrinterKeyW(
  81556.         HANDLE hPrinter,
  81557.         LPCWSTR pKeyName
  81558. );
  81559. # 2406 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81560. typedef struct _PRINTER_NOTIFY_OPTIONS_TYPE {
  81561.     WORD Type;
  81562.     WORD Reserved0;
  81563.     DWORD Reserved1;
  81564.     DWORD Reserved2;
  81565.     DWORD Count;
  81566.     PWORD pFields;
  81567. } PRINTER_NOTIFY_OPTIONS_TYPE, *PPRINTER_NOTIFY_OPTIONS_TYPE, *LPPRINTER_NOTIFY_OPTIONS_TYPE;
  81568.  
  81569.  
  81570.  
  81571.  
  81572. typedef struct _PRINTER_NOTIFY_OPTIONS {
  81573.     DWORD Version;
  81574.     DWORD Flags;
  81575.     DWORD Count;
  81576.     PPRINTER_NOTIFY_OPTIONS_TYPE pTypes;
  81577. } PRINTER_NOTIFY_OPTIONS, *PPRINTER_NOTIFY_OPTIONS, *LPPRINTER_NOTIFY_OPTIONS;
  81578.  
  81579.  
  81580.  
  81581.  
  81582.  
  81583. typedef struct _PRINTER_NOTIFY_INFO_DATA {
  81584.     WORD Type;
  81585.     WORD Field;
  81586.     DWORD Reserved;
  81587.     DWORD Id;
  81588.     union {
  81589.         DWORD adwData[2];
  81590.         struct {
  81591.             DWORD cbBuf;
  81592.             LPVOID pBuf;
  81593.         } Data;
  81594.     } NotifyData;
  81595. } PRINTER_NOTIFY_INFO_DATA, *PPRINTER_NOTIFY_INFO_DATA, *LPPRINTER_NOTIFY_INFO_DATA;
  81596.  
  81597. typedef struct _PRINTER_NOTIFY_INFO {
  81598.     DWORD Version;
  81599.     DWORD Flags;
  81600.     DWORD Count;
  81601.     PRINTER_NOTIFY_INFO_DATA aData[1];
  81602. } PRINTER_NOTIFY_INFO, *PPRINTER_NOTIFY_INFO, *LPPRINTER_NOTIFY_INFO;
  81603.  
  81604.  
  81605.     typedef struct _BINARY_CONTAINER{
  81606.         DWORD cbBuf;
  81607.         LPBYTE pData;
  81608.     } BINARY_CONTAINER, *PBINARY_CONTAINER;
  81609.  
  81610.  
  81611.     typedef struct _BIDI_DATA{
  81612.         DWORD dwBidiType;
  81613.         union {
  81614.             BOOL bData;
  81615.             LONG iData;
  81616.             LPWSTR sData;
  81617.             FLOAT fData;
  81618.             BINARY_CONTAINER biData;
  81619.             }u;
  81620.     } BIDI_DATA, *PBIDI_DATA, *LPBIDI_DATA;
  81621.  
  81622.  
  81623.     typedef struct _BIDI_REQUEST_DATA{
  81624.         DWORD dwReqNumber;
  81625.         LPWSTR pSchema;
  81626.         BIDI_DATA data;
  81627.     } BIDI_REQUEST_DATA , *PBIDI_REQUEST_DATA , *LPBIDI_REQUEST_DATA;
  81628.  
  81629.  
  81630.     typedef struct _BIDI_REQUEST_CONTAINER{
  81631.         DWORD Version;
  81632.         DWORD Flags;
  81633.         DWORD Count;
  81634.         BIDI_REQUEST_DATA aData[ 1 ];
  81635.     }BIDI_REQUEST_CONTAINER, *PBIDI_REQUEST_CONTAINER, *LPBIDI_REQUEST_CONTAINER;
  81636.  
  81637.     typedef struct _BIDI_RESPONSE_DATA{
  81638.         DWORD dwResult;
  81639.         DWORD dwReqNumber;
  81640.         LPWSTR pSchema;
  81641.         BIDI_DATA data;
  81642.     } BIDI_RESPONSE_DATA, *PBIDI_RESPONSE_DATA, *LPBIDI_RESPONSE_DATA;
  81643.  
  81644.     typedef struct _BIDI_RESPONSE_CONTAINER{
  81645.         DWORD Version;
  81646.         DWORD Flags;
  81647.         DWORD Count;
  81648.         BIDI_RESPONSE_DATA aData[ 1 ];
  81649.     } BIDI_RESPONSE_CONTAINER, *PBIDI_RESPONSE_CONTAINER, *LPBIDI_RESPONSE_CONTAINER;
  81650.  
  81651.  
  81652.  
  81653.  
  81654.  
  81655.  
  81656.  
  81657.     typedef enum {
  81658.         BIDI_NULL = 0,
  81659.         BIDI_INT = 1,
  81660.         BIDI_FLOAT = 2,
  81661.         BIDI_BOOL = 3,
  81662.         BIDI_STRING = 4,
  81663.         BIDI_TEXT = 5,
  81664.         BIDI_ENUM = 6,
  81665.         BIDI_BLOB = 7
  81666.     } BIDI_TYPE;
  81667. # 2546 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81668. DWORD
  81669. __stdcall
  81670. WaitForPrinterChange(
  81671.      HANDLE hPrinter,
  81672.      DWORD Flags
  81673. );
  81674.  
  81675. HANDLE
  81676. __stdcall
  81677. FindFirstPrinterChangeNotification(
  81678.          HANDLE hPrinter,
  81679.          DWORD fdwFilter,
  81680.          DWORD fdwOptions,
  81681.          PVOID pPrinterNotifyOptions
  81682.     );
  81683.  
  81684.  
  81685. BOOL
  81686. __stdcall
  81687. FindNextPrinterChangeNotification(
  81688.             HANDLE hChange,
  81689.             PDWORD pdwChange,
  81690.             LPVOID pvReserved,
  81691.             LPVOID *ppPrinterNotifyInfo
  81692.     );
  81693.  
  81694. BOOL
  81695. __stdcall
  81696. FreePrinterNotifyInfo(
  81697.        PPRINTER_NOTIFY_INFO pPrinterNotifyInfo
  81698.     );
  81699.  
  81700. BOOL
  81701. __stdcall
  81702. FindClosePrinterChangeNotification(
  81703.        HANDLE hChange
  81704.     );
  81705. # 2620 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81706. DWORD
  81707. __stdcall
  81708. PrinterMessageBoxA(
  81709.        HANDLE hPrinter,
  81710.        DWORD Error,
  81711.        HWND hWnd,
  81712.        LPSTR pText,
  81713.        LPSTR pCaption,
  81714.        DWORD dwType
  81715. );
  81716. DWORD
  81717. __stdcall
  81718. PrinterMessageBoxW(
  81719.        HANDLE hPrinter,
  81720.        DWORD Error,
  81721.        HWND hWnd,
  81722.        LPWSTR pText,
  81723.        LPWSTR pCaption,
  81724.        DWORD dwType
  81725. );
  81726. # 2656 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81727. BOOL
  81728. __stdcall
  81729. ClosePrinter(
  81730.      HANDLE hPrinter
  81731. );
  81732.  
  81733. BOOL
  81734. __stdcall
  81735. AddFormA(
  81736.                  HANDLE hPrinter,
  81737.                  DWORD Level,
  81738.  
  81739.  
  81740.                  LPBYTE pForm
  81741. );
  81742. BOOL
  81743. __stdcall
  81744. AddFormW(
  81745.                  HANDLE hPrinter,
  81746.                  DWORD Level,
  81747.  
  81748.  
  81749.                  LPBYTE pForm
  81750. );
  81751.  
  81752.  
  81753.  
  81754.  
  81755.  
  81756.  
  81757. BOOL
  81758. __stdcall
  81759. DeleteFormA(
  81760.         HANDLE hPrinter,
  81761.         LPSTR pFormName
  81762. );
  81763. BOOL
  81764. __stdcall
  81765. DeleteFormW(
  81766.         HANDLE hPrinter,
  81767.         LPWSTR pFormName
  81768. );
  81769. # 2706 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81770. BOOL
  81771. __stdcall
  81772. GetFormA(
  81773.         HANDLE hPrinter,
  81774.         LPSTR pFormName,
  81775.         DWORD Level,
  81776.  
  81777.         LPBYTE pForm,
  81778.         DWORD cbBuf,
  81779.         LPDWORD pcbNeeded
  81780. );
  81781. BOOL
  81782. __stdcall
  81783. GetFormW(
  81784.         HANDLE hPrinter,
  81785.         LPWSTR pFormName,
  81786.         DWORD Level,
  81787.  
  81788.         LPBYTE pForm,
  81789.         DWORD cbBuf,
  81790.         LPDWORD pcbNeeded
  81791. );
  81792. # 2736 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81793. BOOL
  81794. __stdcall
  81795. SetFormA(
  81796.                  HANDLE hPrinter,
  81797.                  LPSTR pFormName,
  81798.                  DWORD Level,
  81799.  
  81800.  
  81801.                  LPBYTE pForm
  81802. );
  81803. BOOL
  81804. __stdcall
  81805. SetFormW(
  81806.                  HANDLE hPrinter,
  81807.                  LPWSTR pFormName,
  81808.                  DWORD Level,
  81809.  
  81810.  
  81811.                  LPBYTE pForm
  81812. );
  81813.  
  81814.  
  81815.  
  81816.  
  81817.  
  81818.  
  81819. BOOL
  81820. __stdcall
  81821. EnumFormsA(
  81822.         HANDLE hPrinter,
  81823.         DWORD Level,
  81824.  
  81825.         LPBYTE pForm,
  81826.         DWORD cbBuf,
  81827.         LPDWORD pcbNeeded,
  81828.         LPDWORD pcReturned
  81829. );
  81830. BOOL
  81831. __stdcall
  81832. EnumFormsW(
  81833.         HANDLE hPrinter,
  81834.         DWORD Level,
  81835.  
  81836.         LPBYTE pForm,
  81837.         DWORD cbBuf,
  81838.         LPDWORD pcbNeeded,
  81839.         LPDWORD pcReturned
  81840. );
  81841.  
  81842.  
  81843.  
  81844.  
  81845.  
  81846.  
  81847.  
  81848. BOOL
  81849. __stdcall
  81850. EnumMonitorsA(
  81851.             LPSTR pName,
  81852.             DWORD Level,
  81853.  
  81854.             LPBYTE pMonitor,
  81855.             DWORD cbBuf,
  81856.             LPDWORD pcbNeeded,
  81857.             LPDWORD pcReturned
  81858. );
  81859. BOOL
  81860. __stdcall
  81861. EnumMonitorsW(
  81862.             LPWSTR pName,
  81863.             DWORD Level,
  81864.  
  81865.             LPBYTE pMonitor,
  81866.             DWORD cbBuf,
  81867.             LPDWORD pcbNeeded,
  81868.             LPDWORD pcReturned
  81869. );
  81870. # 2821 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81871. BOOL
  81872. __stdcall
  81873. AddMonitorA(
  81874.             LPSTR pName,
  81875.             DWORD Level,
  81876.  
  81877.             LPBYTE pMonitors
  81878. );
  81879. BOOL
  81880. __stdcall
  81881. AddMonitorW(
  81882.             LPWSTR pName,
  81883.             DWORD Level,
  81884.  
  81885.             LPBYTE pMonitors
  81886. );
  81887. # 2845 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81888. BOOL
  81889. __stdcall
  81890. DeleteMonitorA(
  81891.             LPSTR pName,
  81892.             LPSTR pEnvironment,
  81893.             LPSTR pMonitorName
  81894. );
  81895. BOOL
  81896. __stdcall
  81897. DeleteMonitorW(
  81898.             LPWSTR pName,
  81899.             LPWSTR pEnvironment,
  81900.             LPWSTR pMonitorName
  81901. );
  81902. # 2867 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81903. BOOL
  81904. __stdcall
  81905. EnumPortsA(
  81906.             LPSTR pName,
  81907.             DWORD Level,
  81908.  
  81909.             LPBYTE pPort,
  81910.             DWORD cbBuf,
  81911.             LPDWORD pcbNeeded,
  81912.             LPDWORD pcReturned
  81913. );
  81914. BOOL
  81915. __stdcall
  81916. EnumPortsW(
  81917.             LPWSTR pName,
  81918.             DWORD Level,
  81919.  
  81920.             LPBYTE pPort,
  81921.             DWORD cbBuf,
  81922.             LPDWORD pcbNeeded,
  81923.             LPDWORD pcReturned
  81924. );
  81925.  
  81926.  
  81927.  
  81928.  
  81929.  
  81930.  
  81931.  
  81932. BOOL
  81933. __stdcall
  81934. AddPortA(
  81935.             LPSTR pName,
  81936.             HWND hWnd,
  81937.             LPSTR pMonitorName
  81938. );
  81939. BOOL
  81940. __stdcall
  81941. AddPortW(
  81942.             LPWSTR pName,
  81943.             HWND hWnd,
  81944.             LPWSTR pMonitorName
  81945. );
  81946. # 2918 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  81947. BOOL
  81948. __stdcall
  81949. ConfigurePortA(
  81950.             LPSTR pName,
  81951.             HWND hWnd,
  81952.             LPSTR pPortName
  81953. );
  81954. BOOL
  81955. __stdcall
  81956. ConfigurePortW(
  81957.             LPWSTR pName,
  81958.             HWND hWnd,
  81959.             LPWSTR pPortName
  81960. );
  81961.  
  81962.  
  81963.  
  81964.  
  81965.  
  81966.  
  81967. BOOL
  81968. __stdcall
  81969. DeletePortA(
  81970.             LPSTR pName,
  81971.             HWND hWnd,
  81972.             LPSTR pPortName
  81973. );
  81974. BOOL
  81975. __stdcall
  81976. DeletePortW(
  81977.             LPWSTR pName,
  81978.             HWND hWnd,
  81979.             LPWSTR pPortName
  81980. );
  81981.  
  81982.  
  81983.  
  81984.  
  81985.  
  81986.  
  81987. BOOL
  81988. __stdcall
  81989. XcvDataW(
  81990.             HANDLE hXcv,
  81991.             PCWSTR pszDataName,
  81992.  
  81993.             PBYTE pInputData,
  81994.             DWORD cbInputData,
  81995.  
  81996.             PBYTE pOutputData,
  81997.             DWORD cbOutputData,
  81998.             PDWORD pcbOutputNeeded,
  81999.             PDWORD pdwStatus
  82000. );
  82001.  
  82002.  
  82003. BOOL
  82004. __stdcall
  82005. GetDefaultPrinterA(
  82006.                                     LPSTR pszBuffer,
  82007.                                     LPDWORD pcchBuffer
  82008.     );
  82009. BOOL
  82010. __stdcall
  82011. GetDefaultPrinterW(
  82012.                                     LPWSTR pszBuffer,
  82013.                                     LPDWORD pcchBuffer
  82014.     );
  82015.  
  82016.  
  82017.  
  82018.  
  82019.  
  82020.  
  82021. BOOL
  82022. __stdcall
  82023. SetDefaultPrinterA(
  82024.             LPCSTR pszPrinter
  82025.     );
  82026. BOOL
  82027. __stdcall
  82028. SetDefaultPrinterW(
  82029.             LPCWSTR pszPrinter
  82030.     );
  82031.  
  82032.  
  82033.  
  82034.  
  82035.  
  82036.  
  82037.  
  82038. BOOL
  82039. __stdcall
  82040. SetPortA(
  82041.             LPSTR pName,
  82042.             LPSTR pPortName,
  82043.             DWORD dwLevel,
  82044.  
  82045.             LPBYTE pPortInfo
  82046. );
  82047. BOOL
  82048. __stdcall
  82049. SetPortW(
  82050.             LPWSTR pName,
  82051.             LPWSTR pPortName,
  82052.             DWORD dwLevel,
  82053.  
  82054.             LPBYTE pPortInfo
  82055. );
  82056. # 3035 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  82057. BOOL
  82058. __stdcall
  82059. AddPrinterConnectionA(
  82060.      LPSTR pName
  82061. );
  82062. BOOL
  82063. __stdcall
  82064. AddPrinterConnectionW(
  82065.      LPWSTR pName
  82066. );
  82067. # 3053 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  82068. BOOL
  82069. __stdcall
  82070. DeletePrinterConnectionA(
  82071.      LPSTR pName
  82072. );
  82073. BOOL
  82074. __stdcall
  82075. DeletePrinterConnectionW(
  82076.      LPWSTR pName
  82077. );
  82078. # 3071 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  82079. HANDLE
  82080. __stdcall
  82081. ConnectToPrinterDlg(
  82082.         HWND hwnd,
  82083.        DWORD Flags
  82084. );
  82085.  
  82086. typedef struct _PROVIDOR_INFO_1A{
  82087.     LPSTR pName;
  82088.     LPSTR pEnvironment;
  82089.     LPSTR pDLLName;
  82090. } PROVIDOR_INFO_1A, *PPROVIDOR_INFO_1A, *LPPROVIDOR_INFO_1A;
  82091. typedef struct _PROVIDOR_INFO_1W{
  82092.     LPWSTR pName;
  82093.     LPWSTR pEnvironment;
  82094.     LPWSTR pDLLName;
  82095. } PROVIDOR_INFO_1W, *PPROVIDOR_INFO_1W, *LPPROVIDOR_INFO_1W;
  82096.  
  82097.  
  82098.  
  82099.  
  82100.  
  82101. typedef PROVIDOR_INFO_1A PROVIDOR_INFO_1;
  82102. typedef PPROVIDOR_INFO_1A PPROVIDOR_INFO_1;
  82103. typedef LPPROVIDOR_INFO_1A LPPROVIDOR_INFO_1;
  82104.  
  82105.  
  82106. typedef struct _PROVIDOR_INFO_2A{
  82107.     LPSTR pOrder;
  82108. } PROVIDOR_INFO_2A, *PPROVIDOR_INFO_2A, *LPPROVIDOR_INFO_2A;
  82109. typedef struct _PROVIDOR_INFO_2W{
  82110.     LPWSTR pOrder;
  82111. } PROVIDOR_INFO_2W, *PPROVIDOR_INFO_2W, *LPPROVIDOR_INFO_2W;
  82112.  
  82113.  
  82114.  
  82115.  
  82116.  
  82117. typedef PROVIDOR_INFO_2A PROVIDOR_INFO_2;
  82118. typedef PPROVIDOR_INFO_2A PPROVIDOR_INFO_2;
  82119. typedef LPPROVIDOR_INFO_2A LPPROVIDOR_INFO_2;
  82120.  
  82121.  
  82122. BOOL
  82123. __stdcall
  82124. AddPrintProvidorA(
  82125.                  LPSTR pName,
  82126.                  DWORD Level,
  82127.  
  82128.  
  82129.                  LPBYTE pProvidorInfo
  82130. );
  82131. BOOL
  82132. __stdcall
  82133. AddPrintProvidorW(
  82134.                  LPWSTR pName,
  82135.                  DWORD Level,
  82136.  
  82137.  
  82138.                  LPBYTE pProvidorInfo
  82139. );
  82140.  
  82141.  
  82142.  
  82143.  
  82144.  
  82145.  
  82146. BOOL
  82147. __stdcall
  82148. DeletePrintProvidorA(
  82149.             LPSTR pName,
  82150.             LPSTR pEnvironment,
  82151.             LPSTR pPrintProvidorName
  82152. );
  82153. BOOL
  82154. __stdcall
  82155. DeletePrintProvidorW(
  82156.             LPWSTR pName,
  82157.             LPWSTR pEnvironment,
  82158.             LPWSTR pPrintProvidorName
  82159. );
  82160.  
  82161.  
  82162.  
  82163.  
  82164.  
  82165.  
  82166.  
  82167.     BOOL
  82168.     __stdcall
  82169.     IsValidDevmodeA(
  82170.                     PDEVMODEA pDevmode,
  82171.                     size_t DevmodeSize
  82172.         );
  82173.     BOOL
  82174.     __stdcall
  82175.     IsValidDevmodeW(
  82176.                     PDEVMODEW pDevmode,
  82177.                     size_t DevmodeSize
  82178.         );
  82179. # 3396 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  82180.     typedef enum _PRINTER_OPTION_FLAGS
  82181.     {
  82182.         PRINTER_OPTION_NO_CACHE = 1 << 0,
  82183.         PRINTER_OPTION_CACHE = 1 << 1,
  82184.         PRINTER_OPTION_CLIENT_CHANGE = 1 << 2,
  82185.         PRINTER_OPTION_NO_CLIENT_DATA = 1 << 3,
  82186.     } PRINTER_OPTION_FLAGS;
  82187.  
  82188.  
  82189.     typedef struct _PRINTER_OPTIONSA
  82190.     {
  82191.         UINT cbSize;
  82192.         DWORD dwFlags;
  82193.     } PRINTER_OPTIONSA, *PPRINTER_OPTIONSA, *LPPRINTER_OPTIONSA;
  82194.     typedef struct _PRINTER_OPTIONSW
  82195.     {
  82196.         UINT cbSize;
  82197.         DWORD dwFlags;
  82198.     } PRINTER_OPTIONSW, *PPRINTER_OPTIONSW, *LPPRINTER_OPTIONSW;
  82199.  
  82200.  
  82201.  
  82202.  
  82203.  
  82204. typedef PRINTER_OPTIONSA PRINTER_OPTIONS;
  82205. typedef PPRINTER_OPTIONSA PPRINTER_OPTIONS;
  82206. typedef LPPRINTER_OPTIONSA LPPRINTER_OPTIONS;
  82207.  
  82208.  
  82209.     BOOL
  82210.     __stdcall
  82211.     OpenPrinter2A(
  82212.                   LPCSTR pPrinterName,
  82213.                   LPHANDLE phPrinter,
  82214.                   PPRINTER_DEFAULTSA pDefault,
  82215.                   PPRINTER_OPTIONSA pOptions
  82216.     );
  82217.     BOOL
  82218.     __stdcall
  82219.     OpenPrinter2W(
  82220.                   LPCWSTR pPrinterName,
  82221.                   LPHANDLE phPrinter,
  82222.                   PPRINTER_DEFAULTSW pDefault,
  82223.                   PPRINTER_OPTIONSW pOptions
  82224.     );
  82225. # 3450 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  82226.     typedef struct _PRINTER_CONNECTION_INFO_1A
  82227.     {
  82228.         DWORD dwFlags;
  82229.         LPSTR pszDriverName;
  82230.     } PRINTER_CONNECTION_INFO_1A, *PPRINTER_CONNECTION_INFO_1A;
  82231.     typedef struct _PRINTER_CONNECTION_INFO_1W
  82232.     {
  82233.         DWORD dwFlags;
  82234.         LPWSTR pszDriverName;
  82235.     } PRINTER_CONNECTION_INFO_1W, *PPRINTER_CONNECTION_INFO_1W;
  82236.  
  82237.  
  82238.  
  82239.  
  82240. typedef PRINTER_CONNECTION_INFO_1A PRINTER_CONNECTION_INFO_1;
  82241. typedef PPRINTER_CONNECTION_INFO_1A PPRINTER_CONNECTION_INFO_1;
  82242.  
  82243.  
  82244.     BOOL
  82245.     __stdcall
  82246.     AddPrinterConnection2A(
  82247.                 HWND hWnd,
  82248.                 LPCSTR pszName,
  82249.                 DWORD dwLevel,
  82250.                 PVOID pConnectionInfo
  82251.         );
  82252.     BOOL
  82253.     __stdcall
  82254.     AddPrinterConnection2W(
  82255.                 HWND hWnd,
  82256.                 LPCWSTR pszName,
  82257.                 DWORD dwLevel,
  82258.                 PVOID pConnectionInfo
  82259.         );
  82260. # 3497 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  82261.     HRESULT
  82262.     __stdcall
  82263.     InstallPrinterDriverFromPackageA(
  82264.                LPCSTR pszServer,
  82265.                LPCSTR pszInfPath,
  82266.                LPCSTR pszDriverName,
  82267.                LPCSTR pszEnvironment,
  82268.                DWORD dwFlags
  82269.     );
  82270.     HRESULT
  82271.     __stdcall
  82272.     InstallPrinterDriverFromPackageW(
  82273.                LPCWSTR pszServer,
  82274.                LPCWSTR pszInfPath,
  82275.                LPCWSTR pszDriverName,
  82276.                LPCWSTR pszEnvironment,
  82277.                DWORD dwFlags
  82278.     );
  82279. # 3526 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  82280.     HRESULT
  82281.     __stdcall
  82282.     UploadPrinterDriverPackageA(
  82283.                LPCSTR pszServer,
  82284.                LPCSTR pszInfPath,
  82285.                LPCSTR pszEnvironment,
  82286.                DWORD dwFlags,
  82287.                HWND hwnd,
  82288.  
  82289.                LPSTR pszDestInfPath,
  82290.                PULONG pcchDestInfPath
  82291.     );
  82292.     HRESULT
  82293.     __stdcall
  82294.     UploadPrinterDriverPackageW(
  82295.                LPCWSTR pszServer,
  82296.                LPCWSTR pszInfPath,
  82297.                LPCWSTR pszEnvironment,
  82298.                DWORD dwFlags,
  82299.                HWND hwnd,
  82300.  
  82301.                LPWSTR pszDestInfPath,
  82302.                PULONG pcchDestInfPath
  82303.     );
  82304.  
  82305.  
  82306.  
  82307.  
  82308.  
  82309.  
  82310.     typedef struct _CORE_PRINTER_DRIVERA
  82311.     {
  82312.         GUID CoreDriverGUID;
  82313.         FILETIME ftDriverDate;
  82314.         DWORDLONG dwlDriverVersion;
  82315.         CHAR szPackageID[260];
  82316.     } CORE_PRINTER_DRIVERA, *PCORE_PRINTER_DRIVERA;
  82317.     typedef struct _CORE_PRINTER_DRIVERW
  82318.     {
  82319.         GUID CoreDriverGUID;
  82320.         FILETIME ftDriverDate;
  82321.         DWORDLONG dwlDriverVersion;
  82322.         WCHAR szPackageID[260];
  82323.     } CORE_PRINTER_DRIVERW, *PCORE_PRINTER_DRIVERW;
  82324.  
  82325.  
  82326.  
  82327.  
  82328. typedef CORE_PRINTER_DRIVERA CORE_PRINTER_DRIVER;
  82329. typedef PCORE_PRINTER_DRIVERA PCORE_PRINTER_DRIVER;
  82330.  
  82331.  
  82332.     HRESULT
  82333.     __stdcall
  82334.     GetCorePrinterDriversA(
  82335.                                       LPCSTR pszServer,
  82336.                                       LPCSTR pszEnvironment,
  82337.                                       LPCSTR pszzCoreDriverDependencies,
  82338.                                       DWORD cCorePrinterDrivers,
  82339.                                       PCORE_PRINTER_DRIVERA pCorePrinterDrivers
  82340.     );
  82341.     HRESULT
  82342.     __stdcall
  82343.     GetCorePrinterDriversW(
  82344.                                       LPCWSTR pszServer,
  82345.                                       LPCWSTR pszEnvironment,
  82346.                                       LPCWSTR pszzCoreDriverDependencies,
  82347.                                       DWORD cCorePrinterDrivers,
  82348.                                       PCORE_PRINTER_DRIVERW pCorePrinterDrivers
  82349.     );
  82350.  
  82351.  
  82352.  
  82353.  
  82354.  
  82355.  
  82356.     HRESULT
  82357.     __stdcall
  82358.     CorePrinterDriverInstalledA(
  82359.                         LPCSTR pszServer,
  82360.                         LPCSTR pszEnvironment,
  82361.                         GUID CoreDriverGUID,
  82362.                         FILETIME ftDriverDate,
  82363.                         DWORDLONG dwlDriverVersion,
  82364.                         BOOL *pbDriverInstalled
  82365.     );
  82366.     HRESULT
  82367.     __stdcall
  82368.     CorePrinterDriverInstalledW(
  82369.                         LPCWSTR pszServer,
  82370.                         LPCWSTR pszEnvironment,
  82371.                         GUID CoreDriverGUID,
  82372.                         FILETIME ftDriverDate,
  82373.                         DWORDLONG dwlDriverVersion,
  82374.                         BOOL *pbDriverInstalled
  82375.     );
  82376.  
  82377.  
  82378.  
  82379.  
  82380.  
  82381.  
  82382.     HRESULT
  82383.     __stdcall
  82384.     GetPrinterDriverPackagePathA(
  82385.                                                LPCSTR pszServer,
  82386.                                                LPCSTR pszEnvironment,
  82387.                                                LPCSTR pszLanguage,
  82388.                                                LPCSTR pszPackageID,
  82389.                                                 LPSTR pszDriverPackageCab,
  82390.                                                DWORD cchDriverPackageCab,
  82391.                                                LPDWORD pcchRequiredSize
  82392.     );
  82393.     HRESULT
  82394.     __stdcall
  82395.     GetPrinterDriverPackagePathW(
  82396.                                                LPCWSTR pszServer,
  82397.                                                LPCWSTR pszEnvironment,
  82398.                                                LPCWSTR pszLanguage,
  82399.                                                LPCWSTR pszPackageID,
  82400.                                                 LPWSTR pszDriverPackageCab,
  82401.                                                DWORD cchDriverPackageCab,
  82402.                                                LPDWORD pcchRequiredSize
  82403.     );
  82404.  
  82405.  
  82406.  
  82407.  
  82408.  
  82409.  
  82410.     HRESULT
  82411.     __stdcall
  82412.     DeletePrinterDriverPackageA(
  82413.                LPCSTR pszServer,
  82414.                LPCSTR pszInfPath,
  82415.                LPCSTR pszEnvironment
  82416.     );
  82417.     HRESULT
  82418.     __stdcall
  82419.     DeletePrinterDriverPackageW(
  82420.                LPCWSTR pszServer,
  82421.                LPCWSTR pszInfPath,
  82422.                LPCWSTR pszEnvironment
  82423.     );
  82424.  
  82425.  
  82426.  
  82427.  
  82428.  
  82429.  
  82430.     typedef enum
  82431.     {
  82432.         kPropertyTypeString = 1,
  82433.         kPropertyTypeInt32,
  82434.         kPropertyTypeInt64,
  82435.         kPropertyTypeByte,
  82436.         kPropertyTypeTime,
  82437.         kPropertyTypeDevMode,
  82438.         kPropertyTypeSD,
  82439.         kPropertyTypeNotificationReply,
  82440.         kPropertyTypeNotificationOptions,
  82441.         kPropertyTypeBuffer
  82442.  
  82443.     } EPrintPropertyType;
  82444.  
  82445.     typedef enum
  82446.     {
  82447.         kAddingDocumentSequence = 0,
  82448.         kDocumentSequenceAdded = 1,
  82449.         kAddingFixedDocument = 2,
  82450.         kFixedDocumentAdded = 3,
  82451.         kAddingFixedPage = 4,
  82452.         kFixedPageAdded = 5,
  82453.         kResourceAdded = 6,
  82454.         kFontAdded = 7,
  82455.         kImageAdded = 8,
  82456.         kXpsDocumentCommitted = 9
  82457.  
  82458.     } EPrintXPSJobProgress;
  82459.  
  82460.     typedef enum
  82461.     {
  82462.         kJobProduction = 1,
  82463.         kJobConsumption
  82464.  
  82465.     } EPrintXPSJobOperation;
  82466.  
  82467.     typedef struct
  82468.     {
  82469.         EPrintPropertyType ePropertyType;
  82470.         union
  82471.         {
  82472.             BYTE propertyByte;
  82473.             PWSTR propertyString;
  82474.             LONG propertyInt32;
  82475.             LONGLONG propertyInt64;
  82476.             struct {
  82477.                 DWORD cbBuf;
  82478.                 LPVOID pBuf;
  82479.             } propertyBlob;
  82480.         } value;
  82481.  
  82482.     }PrintPropertyValue;
  82483.  
  82484.     typedef struct
  82485.     {
  82486.         WCHAR* propertyName;
  82487.         PrintPropertyValue propertyValue;
  82488.  
  82489.     }PrintNamedProperty;
  82490.  
  82491.     typedef struct
  82492.     {
  82493.         ULONG numberOfProperties;
  82494.         PrintNamedProperty* propertiesCollection;
  82495.  
  82496.     }PrintPropertiesCollection;
  82497.  
  82498.     HRESULT
  82499.     __stdcall
  82500.     ReportJobProcessingProgress(
  82501.                 HANDLE printerHandle,
  82502.                 ULONG jobId,
  82503.                 EPrintXPSJobOperation jobOperation,
  82504.                 EPrintXPSJobProgress jobProgress
  82505.         );
  82506.  
  82507.     BOOL
  82508.     __stdcall
  82509.     GetPrinterDriver2A(
  82510.                     HWND hWnd,
  82511.                     HANDLE hPrinter,
  82512.                     LPSTR pEnvironment,
  82513.                     DWORD Level,
  82514.  
  82515.                     LPBYTE pDriverInfo,
  82516.                     DWORD cbBuf,
  82517.                     LPDWORD pcbNeeded
  82518.     );
  82519.     BOOL
  82520.     __stdcall
  82521.     GetPrinterDriver2W(
  82522.                     HWND hWnd,
  82523.                     HANDLE hPrinter,
  82524.                     LPWSTR pEnvironment,
  82525.                     DWORD Level,
  82526.  
  82527.                     LPBYTE pDriverInfo,
  82528.                     DWORD cbBuf,
  82529.                     LPDWORD pcbNeeded
  82530.     );
  82531. # 3787 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  82532. typedef enum
  82533. {
  82534.     PRINT_EXECUTION_CONTEXT_APPLICATION = 0,
  82535.     PRINT_EXECUTION_CONTEXT_SPOOLER_SERVICE = 1,
  82536.     PRINT_EXECUTION_CONTEXT_SPOOLER_ISOLATION_HOST = 2,
  82537.     PRINT_EXECUTION_CONTEXT_FILTER_PIPELINE = 3,
  82538.     PRINT_EXECUTION_CONTEXT_WOW64 = 4
  82539. }
  82540. PRINT_EXECUTION_CONTEXT;
  82541.  
  82542. typedef struct
  82543. {
  82544.     PRINT_EXECUTION_CONTEXT context;
  82545.     DWORD clientAppPID;
  82546. }
  82547. PRINT_EXECUTION_DATA;
  82548.  
  82549. BOOL
  82550. __stdcall
  82551. GetPrintExecutionData(
  82552.           PRINT_EXECUTION_DATA *pData
  82553.     );
  82554.  
  82555.  
  82556.  
  82557.  
  82558.  
  82559.  
  82560. DWORD
  82561. __stdcall
  82562. GetJobNamedPropertyValue(
  82563.           HANDLE hPrinter,
  82564.           DWORD JobId,
  82565.           PCWSTR pszName,
  82566.           PrintPropertyValue *pValue
  82567.     );
  82568.  
  82569. void
  82570. __stdcall
  82571. FreePrintPropertyValue(
  82572.             PrintPropertyValue *pValue
  82573.     );
  82574.  
  82575. void
  82576. __stdcall
  82577. FreePrintNamedPropertyArray(
  82578.                                       DWORD cProperties,
  82579.  
  82580.  
  82581.                                       PrintNamedProperty **ppProperties
  82582.     );
  82583.  
  82584. DWORD
  82585. __stdcall
  82586. SetJobNamedProperty(
  82587.           HANDLE hPrinter,
  82588.           DWORD JobId,
  82589.           const PrintNamedProperty *pProperty
  82590.     );
  82591.  
  82592. DWORD
  82593. __stdcall
  82594. DeleteJobNamedProperty(
  82595.           HANDLE hPrinter,
  82596.           DWORD JobId,
  82597.           PCWSTR pszName
  82598.     );
  82599.  
  82600. DWORD
  82601. __stdcall
  82602. EnumJobNamedProperties(
  82603.           HANDLE hPrinter,
  82604.           DWORD JobId,
  82605.           DWORD *pcProperties,
  82606.  
  82607.           PrintNamedProperty **ppProperties
  82608.     );
  82609.  
  82610. HRESULT
  82611. __stdcall
  82612. GetPrintOutputInfo(
  82613.                 HWND hWnd,
  82614.                 PCWSTR pszPrinter,
  82615.              HANDLE *phFile,
  82616.              PWSTR *ppszOutputFile
  82617.     );
  82618.  
  82619.  
  82620.  
  82621.  
  82622.  
  82623.  
  82624.  
  82625.  
  82626. #pragma endregion
  82627. # 3892 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winspool.h" 3
  82628. #pragma option pop
  82629. # 259 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\windows.h" 2 3
  82630.  
  82631.  
  82632.  
  82633.  
  82634. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ole2.h" 1 3
  82635. #pragma option push -b -a8 -pc -A- -w-pun
  82636. # 28 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ole2.h" 3
  82637. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 1 3
  82638. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 3
  82639. #pragma warning(disable: 4103)
  82640.  
  82641. #pragma pack(push,8)
  82642. # 28 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ole2.h" 2 3
  82643. # 38 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ole2.h" 3
  82644. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 1 3
  82645. #pragma option push -b -a8 -pc -A- -w-pun
  82646. # 16 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 3
  82647. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  82648. #pragma option push -b -a8 -pc -A- -w-pun
  82649. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  82650. #pragma option pop
  82651. # 16 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 2 3
  82652.  
  82653. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  82654. #pragma option push -b -a8 -pc -A- -w-pun
  82655. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  82656. #pragma option pop
  82657. # 17 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 2 3
  82658. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 3
  82659. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 1 3
  82660. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 3
  82661. #pragma warning(disable: 4103)
  82662.  
  82663. #pragma pack(push,8)
  82664. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 2 3
  82665.  
  82666. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 1 3
  82667. #pragma option push -b -a8 -pc -A- -w-pun
  82668. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  82669. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  82670. #pragma option push -b -a8 -pc -A- -w-pun
  82671. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  82672. #pragma option pop
  82673. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  82674.  
  82675. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  82676. #pragma option push -b -a8 -pc -A- -w-pun
  82677. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  82678. #pragma option pop
  82679. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  82680. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  82681. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 1 3
  82682. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 3
  82683. #pragma warning(disable: 4103)
  82684.  
  82685. #pragma pack(push,8)
  82686. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  82687. # 68 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  82688. #pragma region Application or OneCore Family
  82689. # 292 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  82690. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 1 3
  82691. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82692. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  82693. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 2 3
  82694. # 56 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82695. #pragma pack(push, 1)
  82696.  
  82697.  
  82698.  
  82699.  
  82700.  
  82701. typedef struct {
  82702.         int quot;
  82703.         int rem;
  82704. } div_t;
  82705.  
  82706.  
  82707.  
  82708.  
  82709. typedef struct {
  82710.         long quot;
  82711.         long rem;
  82712. } ldiv_t;
  82713.  
  82714.  
  82715.  
  82716.  
  82717. typedef struct {
  82718.         long long quot;
  82719.         long long rem;
  82720. } lldiv_t;
  82721. # 105 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82722. typedef void (__cdecl * atexit_t)(void);
  82723. # 120 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82724. typedef void (__cdecl *constraint_handler_t)(const char * __msg,
  82725.             void * __ptr,
  82726.             errno_t __error);
  82727.  
  82728. constraint_handler_t __cdecl set_constraint_handler_s(constraint_handler_t __handler);
  82729. void __cdecl abort_handler_s(const char * __msg,
  82730.      void * __ptr,
  82731.      errno_t __error);
  82732. void __cdecl ignore_handler_s(const char * __msg,
  82733.       void * __ptr,
  82734.       errno_t __error);
  82735.  
  82736. errno_t __cdecl getenv_s(size_t * len, char * value,
  82737.         rsize_t maxsize, const char * name);
  82738. errno_t __cdecl wgetenv_s(size_t * len, wchar_t * value,
  82739.          rsize_t maxsize, const wchar_t * name);
  82740.  
  82741.  
  82742.  
  82743. void __cdecl __declspec(noreturn) abort(void);
  82744. # 155 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82745. int __cdecl abs(int __x);
  82746.  
  82747.  
  82748. int __cdecl atexit(void (__cdecl * __func)(void));
  82749. double __cdecl atof(const char * __s);
  82750. int __cdecl atoi(const char * __s);
  82751. long __cdecl atol(const char * __s);
  82752. long long __cdecl atoll(const char * __s);
  82753. void * __cdecl calloc(size_t __nitems, size_t __size);
  82754. div_t __cdecl div(int __numer, int __denom);
  82755. void __cdecl __declspec(noreturn) exit(int __status);
  82756. void __cdecl free(void * __block);
  82757. char * __cdecl getenv(const char * __name);
  82758. long __cdecl labs(long __x);
  82759. long long __cdecl llabs(long long __x);
  82760. ldiv_t __cdecl ldiv(long __numer, long __denom);
  82761. lldiv_t __cdecl lldiv(long long __numer, long long __denom);
  82762. void * __cdecl malloc(size_t __size);
  82763. int __cdecl mblen(const char * __s, size_t __n);
  82764. size_t __cdecl mbstowcs(wchar_t *__pwcs, const char * __s,
  82765.                                      size_t __n);
  82766. size_t __cdecl _mbstrlen(const char *__s);
  82767. int __cdecl mbtowc(wchar_t *__pwc, const char * __s, size_t __n);
  82768. int __cdecl mbtowc_cp(wchar_t *__pwc, const char * __s, size_t __n, const unsigned _codepage);
  82769. int __cdecl rand(void);
  82770.  
  82771.  
  82772.  
  82773. void * __cdecl realloc(void * __block, size_t __size);
  82774. void __cdecl srand(unsigned __seed);
  82775.  
  82776. float __cdecl strtof(const char * __s, char * *__endptr);
  82777.  
  82778. double __cdecl strtod(const char * __s, char * *__endptr);
  82779. long __cdecl strtol(const char * __s, char * *__endptr, int __radix);
  82780. long long __cdecl strtoll(const char * __s, char * *__endptr, int __radix);
  82781.  
  82782. long double __cdecl _strtold(const char * __s, char * *__endptr);
  82783.  
  82784. long double __cdecl strtold(const char * __s, char * *__endptr);
  82785. unsigned long __cdecl strtoul(const char * __s, char * *__endptr, int __radix);
  82786. unsigned long long __cdecl strtoull(const char * __s, char * *__endptr, int __radix);
  82787. int __cdecl system(const char * __command);
  82788.  
  82789. size_t __cdecl wcstombs(char * __s, const wchar_t *__pwcs,size_t __n);
  82790. int __cdecl wctomb(char * __s, wchar_t __wc);
  82791. int __cdecl wctomb_cp(char * __s, wchar_t __wc, const unsigned _codepage);
  82792. double __cdecl _wtof(const wchar_t * __s);
  82793. int __cdecl _wtoi(const wchar_t * __s);
  82794. long __cdecl _wtol(const wchar_t * __s);
  82795. long long __cdecl _wtoll(const wchar_t * __s);
  82796. long double __cdecl _wtold(const wchar_t * __s);
  82797.  
  82798. float __cdecl wcstof(const wchar_t * __s, wchar_t * *__endptr);
  82799.  
  82800. double __cdecl wcstod(const wchar_t * __s, wchar_t * *__endptr);
  82801. long double __cdecl wcstold(const wchar_t * __s, wchar_t * *__endptr);
  82802. long __cdecl wcstol(const wchar_t * __s, wchar_t * *__endptr, int __radix);
  82803. long long __cdecl wcstoll(const wchar_t * __s, wchar_t * *__endptr, int __radix);
  82804.  
  82805. long double __cdecl _wcstold(const wchar_t * __s, wchar_t * *__endptr);
  82806.  
  82807. unsigned long __cdecl wcstoul(const wchar_t * __s, wchar_t * *__endptr, int __radix);
  82808. unsigned long long __cdecl wcstoull(const wchar_t * __s, wchar_t * *__endptr, int __radix);
  82809. int __cdecl _wsystem(const wchar_t * __command);
  82810. wchar_t * __cdecl _itow(int __value, wchar_t *__string, int __radix);
  82811. wchar_t * __cdecl _ltow(long __value, wchar_t *__string, int __radix);
  82812. wchar_t * __cdecl _ultow(unsigned long __value, wchar_t *__string, int __radix);
  82813.  
  82814.  
  82815.  
  82816. __int64 __cdecl _atoi64(const char * __s);
  82817. char * __cdecl _i64toa(__int64 __value, char *__strP, int __radix);
  82818. char * __cdecl _ui64toa(unsigned __int64 __value, char *__strP, int __radix);
  82819. __int64 __cdecl _wtoi64(const wchar_t * __s);
  82820. wchar_t * __cdecl _i64tow(__int64 __value, wchar_t *__strP, int __radix);
  82821. wchar_t * __cdecl _ui64tow(unsigned __int64 __value, wchar_t *__strP, int __radix);
  82822.  
  82823. char * __cdecl ltoa(long __value, char * __string, int __radix);
  82824. char * __cdecl ecvt(double __value, int __ndig, int * __dec, int * __sign);
  82825. char * __cdecl fcvt(double __value, int __ndig, int * __dec, int * __sign);
  82826. char * __cdecl gcvt(double __value, int __ndec, char * __buf);
  82827.  
  82828.  
  82829.  
  82830.  
  82831. extern int __cdecl __mb_cur_max;
  82832. # 255 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82833. void __cdecl _seterrormode(int __mode);
  82834.  
  82835.  
  82836.  
  82837. extern char ** __cdecl _environ;
  82838. extern wchar_t ** __cdecl _wenviron;
  82839. extern int __cdecl _fileinfo;
  82840. extern int __cdecl _fmode;
  82841. extern unsigned char __cdecl _osmajor;
  82842. extern unsigned char __cdecl _osminor;
  82843. extern unsigned char __cdecl _osmode;
  82844. extern unsigned int __cdecl _osversion;
  82845. extern int __cdecl _cmdline_escapes;
  82846.  
  82847. extern char * __cdecl _sys_errlist[];
  82848. extern int __cdecl _sys_nerr;
  82849. # 306 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82850. long double __cdecl _atold(const char * __s);
  82851.  
  82852. unsigned char __cdecl _crotl(unsigned char __value, int __count);
  82853. unsigned char __cdecl _crotr(unsigned char __value, int __count);
  82854.  
  82855. char * __cdecl _ecvt(double __value, int __ndig, int * __dec,
  82856.                                      int * __sign);
  82857. void __cdecl __declspec(noreturn) _exit(int __status);
  82858. void __cdecl __declspec(noreturn) _Exit(int __status);
  82859. char * __cdecl _fcvt(double __value, int __ndig, int * __dec,
  82860.                                      int * __sign);
  82861. char * __cdecl _fullpath(char * __buf, const char * __path,
  82862.                                      size_t __maxlen);
  82863. char * __cdecl _gcvt(double __value, int __ndec,
  82864.                                      char * __buf);
  82865. char * __cdecl itoa(int __value, char * __string,
  82866.                                      int __radix);
  82867. long __cdecl _lrand(void);
  82868. unsigned long __cdecl _lrotl(unsigned long __val, int __count);
  82869. unsigned long __cdecl _lrotr(unsigned long __val, int __count);
  82870.  
  82871. char * __cdecl _ltoa(long __value, char * __string,
  82872.                                      int __radix);
  82873. void __cdecl _makepath(char * __path,
  82874.                                      const char * __drive,
  82875.                                      const char * __dir,
  82876.                                      const char * __name,
  82877.                                      const char * __ext );
  82878. int __cdecl putenv(const char * __name);
  82879.  
  82880.  
  82881.  
  82882.  
  82883.  
  82884.  
  82885.  
  82886. void __cdecl _searchenv(const char * __file,
  82887.                                      const char * __varname,
  82888.                                      char *__pathname);
  82889. void __cdecl _searchstr(const char * __file,
  82890.                                      const char * __ipath,
  82891.                                      char *__pathname);
  82892. void __cdecl _splitpath(const char * __path,
  82893.                                      char * __drive,
  82894.                                      char * __dir,
  82895.                                      char * __name,
  82896.                                      char * __ext );
  82897.  
  82898.  
  82899. void __cdecl swab(const char * __from, char * __to, ssize_t __nbytes);
  82900.  
  82901.  
  82902. char * __cdecl ultoa(unsigned long __value, char * __string,
  82903.                                      int __radix);
  82904. void __cdecl perror(const char * __s);
  82905.  
  82906. void __cdecl _wperror(const wchar_t * __s);
  82907. wchar_t * __cdecl _wfullpath(wchar_t * __buf,const wchar_t * __path,
  82908.                                      size_t __maxlen);
  82909. void __cdecl _wmakepath(wchar_t * __path,
  82910.                                      const wchar_t * __drive,
  82911.                                      const wchar_t * __dir,
  82912.                                      const wchar_t * __name,
  82913.                                      const wchar_t * __ext );
  82914. void __cdecl _wsplitpath(const wchar_t * __path,
  82915.                                      wchar_t * __drive,
  82916.                                      wchar_t * __dir,
  82917.                                      wchar_t * __name,
  82918.                                      wchar_t * __ext );
  82919.  
  82920. void __cdecl _wsearchenv(const wchar_t * __file,
  82921.                                      const wchar_t * __varname,
  82922.                                      wchar_t *__pathname);
  82923. void __cdecl _wsearchstr(const wchar_t * __file,
  82924.                                      const wchar_t * __ipath,
  82925.                                      wchar_t *__pathname);
  82926. wchar_t * __cdecl _wgetenv(const wchar_t * __name);
  82927. int __cdecl _wputenv(const wchar_t * __name);
  82928. # 403 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82929. long __cdecl time(long *);
  82930. # 506 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82931.     extern int __cdecl _argc;
  82932.     extern char ** __cdecl _argv;
  82933.  
  82934.  
  82935.  
  82936.     extern wchar_t ** __cdecl _wargv;
  82937.  
  82938.  
  82939.  
  82940.  
  82941.  
  82942.  
  82943.  
  82944.  
  82945. #pragma pack(pop)
  82946. # 534 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 3
  82947. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\search.h" 1 3
  82948. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\search.h" 3
  82949. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  82950. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\search.h" 2 3
  82951. # 34 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\search.h" 3
  82952. void * __cdecl bsearch(const void * __key, const void * __base,
  82953.        size_t __nelem, size_t __width,
  82954.        int (__cdecl *fcmp)(const void *, const void *));
  82955.  
  82956. void * __cdecl lfind(const void * __key, const void * __base,
  82957.     size_t *__num, size_t __width,
  82958.                                 int (__cdecl *fcmp)(const void *, const void *));
  82959.  
  82960. void * __cdecl lsearch(const void * __key, void * __base,
  82961.       size_t *__num, size_t __width,
  82962.       int (__cdecl *fcmp)(const void *, const void *));
  82963.  
  82964. void __cdecl qsort(void * __base, size_t __nelem, size_t __width,
  82965.      int (__cdecl *__fcmp)(const void *, const void *));
  82966.  
  82967.  
  82968. void * __cdecl bsearch_s(const void * __key, const void * __base,
  82969.          rsize_t __nelem, rsize_t __width,
  82970.          int (__cdecl *__fcmp)(const void *, const void *, void *),
  82971.          void *__context);
  82972.  
  82973. errno_t __cdecl qsort_s(void * __base, rsize_t __nelem, rsize_t __width,
  82974.         int (__cdecl *__fcmp)(const void *, const void *, void *),
  82975.         void *__context);
  82976. # 534 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 2 3
  82977.  
  82978. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\errno.h" 1 3
  82979. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\errno.h" 3
  82980. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  82981. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\errno.h" 2 3
  82982. # 425 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\errno.h" 3
  82983. extern int * __cdecl __errno(void);
  82984. extern int * __cdecl __doserrno(void);
  82985. # 458 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\errno.h" 3
  82986. extern int __cdecl _sys_nerr;
  82987. extern char * __cdecl _sys_errlist[];
  82988. # 535 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\stdlib.h" 2 3
  82989. # 292 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  82990. # 318 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  82991. typedef enum tagREGCLS
  82992. {
  82993.     REGCLS_SINGLEUSE = 0,
  82994.     REGCLS_MULTIPLEUSE = 1,
  82995.  
  82996.     REGCLS_MULTI_SEPARATE = 2,
  82997.  
  82998.     REGCLS_SUSPENDED = 4,
  82999.  
  83000.     REGCLS_SURROGATE = 8,
  83001.  
  83002.  
  83003.  
  83004.     REGCLS_AGILE = 0x10,
  83005. # 340 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  83006. } REGCLS;
  83007.  
  83008.  
  83009. typedef struct IRpcStubBuffer IRpcStubBuffer;
  83010. typedef struct IRpcChannelBuffer IRpcChannelBuffer;
  83011.  
  83012.  
  83013. typedef enum tagCOINITBASE
  83014. {
  83015.  
  83016.  
  83017.  
  83018.   COINITBASE_MULTITHREADED = 0x0,
  83019.  
  83020. } COINITBASE;
  83021.  
  83022.  
  83023. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 1 3
  83024. #pragma option push -b -a8 -pc -A- -w-pun
  83025. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 3
  83026. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  83027. #pragma option push -b -a8 -pc -A- -w-pun
  83028. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  83029. #pragma option pop
  83030. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 2 3
  83031.  
  83032. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  83033. #pragma option push -b -a8 -pc -A- -w-pun
  83034. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  83035. #pragma option pop
  83036. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 2 3
  83037. # 574 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 3
  83038. #pragma option pop
  83039. # 356 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  83040.  
  83041. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 1 3
  83042. #pragma option push -b -a8 -pc -A- -w-pun
  83043. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83044. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  83045. #pragma option push -b -a8 -pc -A- -w-pun
  83046. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  83047. #pragma option pop
  83048. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 2 3
  83049.  
  83050. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  83051. #pragma option push -b -a8 -pc -A- -w-pun
  83052. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  83053. #pragma option pop
  83054. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 2 3
  83055.  
  83056.  
  83057.  
  83058.  
  83059.  
  83060.  
  83061.  
  83062. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  83063. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 2 3
  83064.  
  83065. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  83066. #pragma option push -b -a8 -pc -A- -w-pun
  83067. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  83068. #pragma option pop
  83069. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 2 3
  83070. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83071. typedef struct IUnknown IUnknown;
  83072.  
  83073.  
  83074.  
  83075.  
  83076.  
  83077.  
  83078. typedef struct AsyncIUnknown AsyncIUnknown;
  83079.  
  83080.  
  83081.  
  83082.  
  83083.  
  83084.  
  83085. typedef struct IClassFactory IClassFactory;
  83086.  
  83087.  
  83088.  
  83089.  
  83090.  
  83091.  
  83092. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 1 3
  83093. #pragma option push -b -a8 -pc -A- -w-pun
  83094. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 3
  83095. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  83096. #pragma option push -b -a8 -pc -A- -w-pun
  83097. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  83098. #pragma option pop
  83099. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 2 3
  83100.  
  83101. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  83102. #pragma option push -b -a8 -pc -A- -w-pun
  83103. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  83104. #pragma option pop
  83105. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 2 3
  83106. # 574 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\wtypesbase.h" 3
  83107. #pragma option pop
  83108. # 65 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 2 3
  83109. # 85 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83110. #pragma region Application Family or OneCore Family
  83111.  
  83112.  
  83113.  
  83114. extern RPC_IF_HANDLE __MIDL_itf_unknwnbase_0000_0000_v0_0_c_ifspec;
  83115. extern RPC_IF_HANDLE __MIDL_itf_unknwnbase_0000_0000_v0_0_s_ifspec;
  83116.  
  83117.  
  83118.  
  83119.  
  83120.  
  83121.  
  83122.  
  83123. typedef IUnknown *LPUNKNOWN;
  83124. # 167 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83125. extern const IID IID_IUnknown;
  83126. # 191 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83127.     typedef struct IUnknownVtbl
  83128.     {
  83129.  
  83130.  
  83131.         HRESULT ( __stdcall *QueryInterface )(
  83132.             IUnknown * This,
  83133.                        const IID * riid,
  83134.  
  83135.                           void **ppvObject);
  83136.  
  83137.         ULONG ( __stdcall *AddRef )(
  83138.             IUnknown * This);
  83139.  
  83140.         ULONG ( __stdcall *Release )(
  83141.             IUnknown * This);
  83142.  
  83143.  
  83144.     } IUnknownVtbl;
  83145.  
  83146.     struct IUnknown
  83147.     {
  83148.                    struct IUnknownVtbl *lpVtbl;
  83149.     };
  83150. # 236 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83151. HRESULT __stdcall IUnknown_QueryInterface_Proxy(
  83152.     IUnknown * This,
  83153.                const IID * riid,
  83154.  
  83155.                   void **ppvObject);
  83156.  
  83157.  
  83158. void __stdcall IUnknown_QueryInterface_Stub(
  83159.     IRpcStubBuffer *This,
  83160.     IRpcChannelBuffer *_pRpcChannelBuffer,
  83161.     PRPC_MESSAGE _pRpcMessage,
  83162.     DWORD *_pdwStubPhase);
  83163.  
  83164.  
  83165. ULONG __stdcall IUnknown_AddRef_Proxy(
  83166.     IUnknown * This);
  83167.  
  83168.  
  83169. void __stdcall IUnknown_AddRef_Stub(
  83170.     IRpcStubBuffer *This,
  83171.     IRpcChannelBuffer *_pRpcChannelBuffer,
  83172.     PRPC_MESSAGE _pRpcMessage,
  83173.     DWORD *_pdwStubPhase);
  83174.  
  83175.  
  83176. ULONG __stdcall IUnknown_Release_Proxy(
  83177.     IUnknown * This);
  83178.  
  83179.  
  83180. void __stdcall IUnknown_Release_Stub(
  83181.     IRpcStubBuffer *This,
  83182.     IRpcChannelBuffer *_pRpcChannelBuffer,
  83183.     PRPC_MESSAGE _pRpcMessage,
  83184.     DWORD *_pdwStubPhase);
  83185. # 281 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83186. #pragma endregion
  83187. #pragma region Desktop Family or OneCore Family
  83188.  
  83189.  
  83190.  
  83191. extern RPC_IF_HANDLE __MIDL_itf_unknwnbase_0000_0001_v0_0_c_ifspec;
  83192. extern RPC_IF_HANDLE __MIDL_itf_unknwnbase_0000_0001_v0_0_s_ifspec;
  83193. # 296 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83194. extern const IID IID_AsyncIUnknown;
  83195. # 324 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83196.     typedef struct AsyncIUnknownVtbl
  83197.     {
  83198.  
  83199.  
  83200.         HRESULT ( __stdcall *QueryInterface )(
  83201.             AsyncIUnknown * This,
  83202.                        const IID * riid,
  83203.  
  83204.                           void **ppvObject);
  83205.  
  83206.         ULONG ( __stdcall *AddRef )(
  83207.             AsyncIUnknown * This);
  83208.  
  83209.         ULONG ( __stdcall *Release )(
  83210.             AsyncIUnknown * This);
  83211.  
  83212.         HRESULT ( __stdcall *Begin_QueryInterface )(
  83213.             AsyncIUnknown * This,
  83214.                        const IID * riid);
  83215.  
  83216.         HRESULT ( __stdcall *Finish_QueryInterface )(
  83217.             AsyncIUnknown * This,
  83218.  
  83219.                               void **ppvObject);
  83220.  
  83221.         HRESULT ( __stdcall *Begin_AddRef )(
  83222.             AsyncIUnknown * This);
  83223.  
  83224.         ULONG ( __stdcall *Finish_AddRef )(
  83225.             AsyncIUnknown * This);
  83226.  
  83227.         HRESULT ( __stdcall *Begin_Release )(
  83228.             AsyncIUnknown * This);
  83229.  
  83230.         ULONG ( __stdcall *Finish_Release )(
  83231.             AsyncIUnknown * This);
  83232.  
  83233.  
  83234.     } AsyncIUnknownVtbl;
  83235.  
  83236.     struct AsyncIUnknown
  83237.     {
  83238.                    struct AsyncIUnknownVtbl *lpVtbl;
  83239.     };
  83240. # 417 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83241. #pragma endregion
  83242. #pragma region Application Family or OneCore Family
  83243.  
  83244.  
  83245.  
  83246. extern RPC_IF_HANDLE __MIDL_itf_unknwnbase_0000_0002_v0_0_c_ifspec;
  83247. extern RPC_IF_HANDLE __MIDL_itf_unknwnbase_0000_0002_v0_0_s_ifspec;
  83248.  
  83249.  
  83250.  
  83251.  
  83252.  
  83253.  
  83254.  
  83255. typedef IClassFactory *LPCLASSFACTORY;
  83256.  
  83257.  
  83258. extern const IID IID_IClassFactory;
  83259. # 458 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83260.     typedef struct IClassFactoryVtbl
  83261.     {
  83262.  
  83263.  
  83264.         HRESULT ( __stdcall *QueryInterface )(
  83265.                       IClassFactory * This,
  83266.                                  const IID * riid,
  83267.  
  83268.                           void **ppvObject);
  83269.  
  83270.         ULONG ( __stdcall *AddRef )(
  83271.                       IClassFactory * This);
  83272.  
  83273.         ULONG ( __stdcall *Release )(
  83274.                       IClassFactory * This);
  83275.  
  83276.                       HRESULT ( __stdcall *CreateInstance )(
  83277.             IClassFactory * This,
  83278.  
  83279.                       IUnknown *pUnkOuter,
  83280.  
  83281.                   const IID * riid,
  83282.  
  83283.                           void **ppvObject);
  83284.  
  83285.                       HRESULT ( __stdcall *LockServer )(
  83286.             IClassFactory * This,
  83287.                        BOOL fLock);
  83288.  
  83289.  
  83290.     } IClassFactoryVtbl;
  83291.  
  83292.     struct IClassFactory
  83293.     {
  83294.                    struct IClassFactoryVtbl *lpVtbl;
  83295.     };
  83296. # 523 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83297.                 HRESULT __stdcall IClassFactory_RemoteCreateInstance_Proxy(
  83298.               IClassFactory * This,
  83299.                          const IID * riid,
  83300.                                              IUnknown **ppvObject);
  83301.  
  83302.  
  83303. void __stdcall IClassFactory_RemoteCreateInstance_Stub(
  83304.     IRpcStubBuffer *This,
  83305.     IRpcChannelBuffer *_pRpcChannelBuffer,
  83306.     PRPC_MESSAGE _pRpcMessage,
  83307.     DWORD *_pdwStubPhase);
  83308.  
  83309.  
  83310.                 HRESULT __stdcall IClassFactory_RemoteLockServer_Proxy(
  83311.               IClassFactory * This,
  83312.                BOOL fLock);
  83313.  
  83314.  
  83315. void __stdcall IClassFactory_RemoteLockServer_Stub(
  83316.     IRpcStubBuffer *This,
  83317.     IRpcChannelBuffer *_pRpcChannelBuffer,
  83318.     PRPC_MESSAGE _pRpcMessage,
  83319.     DWORD *_pdwStubPhase);
  83320. # 556 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83321. #pragma endregion
  83322.  
  83323.  
  83324. extern RPC_IF_HANDLE __MIDL_itf_unknwnbase_0000_0003_v0_0_c_ifspec;
  83325. extern RPC_IF_HANDLE __MIDL_itf_unknwnbase_0000_0003_v0_0_s_ifspec;
  83326.  
  83327.  
  83328.  
  83329.               HRESULT __stdcall IClassFactory_CreateInstance_Proxy(
  83330.     IClassFactory * This,
  83331.  
  83332.               IUnknown *pUnkOuter,
  83333.  
  83334.           const IID * riid,
  83335.  
  83336.                   void **ppvObject);
  83337.  
  83338.  
  83339.                 HRESULT __stdcall IClassFactory_CreateInstance_Stub(
  83340.               IClassFactory * This,
  83341.                          const IID * riid,
  83342.                                              IUnknown **ppvObject);
  83343.  
  83344.               HRESULT __stdcall IClassFactory_LockServer_Proxy(
  83345.     IClassFactory * This,
  83346.                BOOL fLock);
  83347.  
  83348.  
  83349.                 HRESULT __stdcall IClassFactory_LockServer_Stub(
  83350.               IClassFactory * This,
  83351.                BOOL fLock);
  83352. # 599 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwnbase.h" 3
  83353. #pragma option pop
  83354. # 357 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  83355. # 379 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  83356. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 1 3
  83357. #pragma option push -b -a8 -pc -A- -w-pun
  83358. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  83359. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  83360. #pragma option push -b -a8 -pc -A- -w-pun
  83361. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  83362. #pragma option pop
  83363. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 2 3
  83364.  
  83365. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  83366. #pragma option push -b -a8 -pc -A- -w-pun
  83367. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  83368. #pragma option pop
  83369. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 2 3
  83370.  
  83371.  
  83372.  
  83373.  
  83374.  
  83375.  
  83376.  
  83377. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  83378. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 2 3
  83379.  
  83380. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  83381. #pragma option push -b -a8 -pc -A- -w-pun
  83382. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  83383. #pragma option pop
  83384. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 2 3
  83385. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  83386. typedef struct IMarshal IMarshal;
  83387.  
  83388.  
  83389.  
  83390.  
  83391.  
  83392.  
  83393. typedef struct INoMarshal INoMarshal;
  83394.  
  83395.  
  83396.  
  83397.  
  83398.  
  83399.  
  83400. typedef struct IAgileObject IAgileObject;
  83401.  
  83402.  
  83403.  
  83404.  
  83405.  
  83406.  
  83407. typedef struct IActivationFilter IActivationFilter;
  83408.  
  83409.  
  83410.  
  83411.  
  83412.  
  83413.  
  83414. typedef struct IMarshal2 IMarshal2;
  83415.  
  83416.  
  83417.  
  83418.  
  83419.  
  83420.  
  83421. typedef struct IMalloc IMalloc;
  83422.  
  83423.  
  83424.  
  83425.  
  83426.  
  83427.  
  83428. typedef struct IStdMarshalInfo IStdMarshalInfo;
  83429.  
  83430.  
  83431.  
  83432.  
  83433.  
  83434.  
  83435. typedef struct IExternalConnection IExternalConnection;
  83436.  
  83437.  
  83438.  
  83439.  
  83440.  
  83441.  
  83442. typedef struct IMultiQI IMultiQI;
  83443.  
  83444.  
  83445.  
  83446.  
  83447.  
  83448.  
  83449. typedef struct AsyncIMultiQI AsyncIMultiQI;
  83450.  
  83451.  
  83452.  
  83453.  
  83454.  
  83455.  
  83456. typedef struct IInternalUnknown IInternalUnknown;
  83457.  
  83458.  
  83459.  
  83460.  
  83461.  
  83462.  
  83463. typedef struct IEnumUnknown IEnumUnknown;
  83464.  
  83465.  
  83466.  
  83467.  
  83468.  
  83469.  
  83470. typedef struct IEnumString IEnumString;
  83471.  
  83472.  
  83473.  
  83474.  
  83475.  
  83476.  
  83477. typedef struct ISequentialStream ISequentialStream;
  83478.  
  83479.  
  83480.  
  83481.  
  83482.  
  83483.  
  83484. typedef struct IStream IStream;
  83485.  
  83486.  
  83487.  
  83488.  
  83489.  
  83490.  
  83491. typedef struct IRpcChannelBuffer IRpcChannelBuffer;
  83492.  
  83493.  
  83494.  
  83495.  
  83496.  
  83497.  
  83498. typedef struct IRpcChannelBuffer2 IRpcChannelBuffer2;
  83499.  
  83500.  
  83501.  
  83502.  
  83503.  
  83504.  
  83505. typedef struct IAsyncRpcChannelBuffer IAsyncRpcChannelBuffer;
  83506.  
  83507.  
  83508.  
  83509.  
  83510.  
  83511.  
  83512. typedef struct IRpcChannelBuffer3 IRpcChannelBuffer3;
  83513.  
  83514.  
  83515.  
  83516.  
  83517.  
  83518.  
  83519. typedef struct IRpcSyntaxNegotiate IRpcSyntaxNegotiate;
  83520.  
  83521.  
  83522.  
  83523.  
  83524.  
  83525.  
  83526. typedef struct IRpcProxyBuffer IRpcProxyBuffer;
  83527.  
  83528.  
  83529.  
  83530.  
  83531.  
  83532.  
  83533. typedef struct IRpcStubBuffer IRpcStubBuffer;
  83534.  
  83535.  
  83536.  
  83537.  
  83538.  
  83539.  
  83540. typedef struct IPSFactoryBuffer IPSFactoryBuffer;
  83541.  
  83542.  
  83543.  
  83544.  
  83545.  
  83546.  
  83547. typedef struct IChannelHook IChannelHook;
  83548.  
  83549.  
  83550.  
  83551.  
  83552.  
  83553.  
  83554. typedef struct IClientSecurity IClientSecurity;
  83555.  
  83556.  
  83557.  
  83558.  
  83559.  
  83560.  
  83561. typedef struct IServerSecurity IServerSecurity;
  83562.  
  83563.  
  83564.  
  83565.  
  83566.  
  83567.  
  83568. typedef struct IRpcOptions IRpcOptions;
  83569.  
  83570.  
  83571.  
  83572.  
  83573.  
  83574.  
  83575. typedef struct IGlobalOptions IGlobalOptions;
  83576.  
  83577.  
  83578.  
  83579.  
  83580.  
  83581.  
  83582. typedef struct ISurrogate ISurrogate;
  83583.  
  83584.  
  83585.  
  83586.  
  83587.  
  83588.  
  83589. typedef struct IGlobalInterfaceTable IGlobalInterfaceTable;
  83590.  
  83591.  
  83592.  
  83593.  
  83594.  
  83595.  
  83596. typedef struct ISynchronize ISynchronize;
  83597.  
  83598.  
  83599.  
  83600.  
  83601.  
  83602.  
  83603. typedef struct ISynchronizeHandle ISynchronizeHandle;
  83604.  
  83605.  
  83606.  
  83607.  
  83608.  
  83609.  
  83610. typedef struct ISynchronizeEvent ISynchronizeEvent;
  83611.  
  83612.  
  83613.  
  83614.  
  83615.  
  83616.  
  83617. typedef struct ISynchronizeContainer ISynchronizeContainer;
  83618.  
  83619.  
  83620.  
  83621.  
  83622.  
  83623.  
  83624. typedef struct ISynchronizeMutex ISynchronizeMutex;
  83625.  
  83626.  
  83627.  
  83628.  
  83629.  
  83630.  
  83631. typedef struct ICancelMethodCalls ICancelMethodCalls;
  83632.  
  83633.  
  83634.  
  83635.  
  83636.  
  83637.  
  83638. typedef struct IAsyncManager IAsyncManager;
  83639.  
  83640.  
  83641.  
  83642.  
  83643.  
  83644.  
  83645. typedef struct ICallFactory ICallFactory;
  83646.  
  83647.  
  83648.  
  83649.  
  83650.  
  83651.  
  83652. typedef struct IRpcHelper IRpcHelper;
  83653.  
  83654.  
  83655.  
  83656.  
  83657.  
  83658.  
  83659. typedef struct IReleaseMarshalBuffers IReleaseMarshalBuffers;
  83660.  
  83661.  
  83662.  
  83663.  
  83664.  
  83665.  
  83666. typedef struct IWaitMultiple IWaitMultiple;
  83667.  
  83668.  
  83669.  
  83670.  
  83671.  
  83672.  
  83673. typedef struct IAddrTrackingControl IAddrTrackingControl;
  83674.  
  83675.  
  83676.  
  83677.  
  83678.  
  83679.  
  83680. typedef struct IAddrExclusionControl IAddrExclusionControl;
  83681.  
  83682.  
  83683.  
  83684.  
  83685.  
  83686.  
  83687. typedef struct IPipeByte IPipeByte;
  83688.  
  83689.  
  83690.  
  83691.  
  83692.  
  83693.  
  83694. typedef struct AsyncIPipeByte AsyncIPipeByte;
  83695.  
  83696.  
  83697.  
  83698.  
  83699.  
  83700.  
  83701. typedef struct IPipeLong IPipeLong;
  83702.  
  83703.  
  83704.  
  83705.  
  83706.  
  83707.  
  83708. typedef struct AsyncIPipeLong AsyncIPipeLong;
  83709.  
  83710.  
  83711.  
  83712.  
  83713.  
  83714.  
  83715. typedef struct IPipeDouble IPipeDouble;
  83716.  
  83717.  
  83718.  
  83719.  
  83720.  
  83721.  
  83722. typedef struct AsyncIPipeDouble AsyncIPipeDouble;
  83723.  
  83724.  
  83725.  
  83726.  
  83727.  
  83728.  
  83729. typedef struct IEnumContextProps IEnumContextProps;
  83730.  
  83731.  
  83732.  
  83733.  
  83734.  
  83735.  
  83736. typedef struct IContext IContext;
  83737.  
  83738.  
  83739.  
  83740.  
  83741.  
  83742.  
  83743. typedef struct IObjContext IObjContext;
  83744.  
  83745.  
  83746.  
  83747.  
  83748.  
  83749.  
  83750. typedef struct IComThreadingInfo IComThreadingInfo;
  83751.  
  83752.  
  83753.  
  83754.  
  83755.  
  83756.  
  83757. typedef struct IProcessInitControl IProcessInitControl;
  83758.  
  83759.  
  83760.  
  83761.  
  83762.  
  83763.  
  83764. typedef struct IFastRundown IFastRundown;
  83765.  
  83766.  
  83767.  
  83768.  
  83769.  
  83770.  
  83771. typedef struct IMarshalingStream IMarshalingStream;
  83772.  
  83773.  
  83774.  
  83775.  
  83776.  
  83777.  
  83778. typedef struct IAgileReference IAgileReference;
  83779.  
  83780.  
  83781.  
  83782.  
  83783.  
  83784.  
  83785. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwnbase.h" 1 3
  83786. #pragma option push -b -a8 -pc -A- -w-pun
  83787. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwnbase.h" 3
  83788. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  83789. #pragma option push -b -a8 -pc -A- -w-pun
  83790. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  83791. #pragma option pop
  83792. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwnbase.h" 2 3
  83793.  
  83794. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  83795. #pragma option push -b -a8 -pc -A- -w-pun
  83796. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  83797. #pragma option pop
  83798. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwnbase.h" 2 3
  83799.  
  83800.  
  83801.  
  83802.  
  83803.  
  83804.  
  83805.  
  83806. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  83807. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwnbase.h" 2 3
  83808.  
  83809. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  83810. #pragma option push -b -a8 -pc -A- -w-pun
  83811. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  83812. #pragma option pop
  83813. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwnbase.h" 2 3
  83814. # 599 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwnbase.h" 3
  83815. #pragma option pop
  83816. # 443 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 2 3
  83817. # 489 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  83818. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\limits.h" 1 3
  83819. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\limits.h" 3
  83820. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_lim.h" 1 3
  83821. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_lim.h" 3
  83822. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_stddef.h" 1 3
  83823. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_lim.h" 2 3
  83824. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\limits.h" 2 3
  83825. # 489 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 2 3
  83826.  
  83827.  
  83828. #pragma region Application Family or OneCore Family
  83829.  
  83830.  
  83831.  
  83832.  
  83833. #pragma endregion
  83834. #pragma region Desktop Family or OneCore Family
  83835.  
  83836.  
  83837.  
  83838.  
  83839.  
  83840. #pragma endregion
  83841. #pragma region Application Family or OneCore Family
  83842.  
  83843.  
  83844. typedef struct _COSERVERINFO
  83845.     {
  83846.     DWORD dwReserved1;
  83847.     LPWSTR pwszName;
  83848.     COAUTHINFO *pAuthInfo;
  83849.     DWORD dwReserved2;
  83850.     } COSERVERINFO;
  83851.  
  83852.  
  83853.  
  83854.  
  83855. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0000_v0_0_c_ifspec;
  83856. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0000_v0_0_s_ifspec;
  83857.  
  83858.  
  83859.  
  83860.  
  83861.  
  83862.  
  83863.  
  83864. typedef IMarshal *LPMARSHAL;
  83865.  
  83866.  
  83867. extern const IID IID_IMarshal;
  83868. # 601 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  83869.     typedef struct IMarshalVtbl
  83870.     {
  83871.  
  83872.  
  83873.         HRESULT ( __stdcall *QueryInterface )(
  83874.             IMarshal * This,
  83875.                        const IID * riid,
  83876.  
  83877.                           void **ppvObject);
  83878.  
  83879.         ULONG ( __stdcall *AddRef )(
  83880.             IMarshal * This);
  83881.  
  83882.         ULONG ( __stdcall *Release )(
  83883.             IMarshal * This);
  83884.  
  83885.         HRESULT ( __stdcall *GetUnmarshalClass )(
  83886.             IMarshal * This,
  83887.  
  83888.                   const IID * riid,
  83889.  
  83890.                       void *pv,
  83891.  
  83892.                   DWORD dwDestContext,
  83893.  
  83894.                         void *pvDestContext,
  83895.  
  83896.                   DWORD mshlflags,
  83897.  
  83898.                    CLSID *pCid);
  83899.  
  83900.         HRESULT ( __stdcall *GetMarshalSizeMax )(
  83901.             IMarshal * This,
  83902.  
  83903.                   const IID * riid,
  83904.  
  83905.                       void *pv,
  83906.  
  83907.                   DWORD dwDestContext,
  83908.  
  83909.                         void *pvDestContext,
  83910.  
  83911.                   DWORD mshlflags,
  83912.  
  83913.                    DWORD *pSize);
  83914.  
  83915.         HRESULT ( __stdcall *MarshalInterface )(
  83916.             IMarshal * This,
  83917.  
  83918.                   IStream *pStm,
  83919.  
  83920.                   const IID * riid,
  83921.  
  83922.                       void *pv,
  83923.  
  83924.                   DWORD dwDestContext,
  83925.  
  83926.                         void *pvDestContext,
  83927.  
  83928.                   DWORD mshlflags);
  83929.  
  83930.         HRESULT ( __stdcall *UnmarshalInterface )(
  83931.             IMarshal * This,
  83932.  
  83933.                   IStream *pStm,
  83934.  
  83935.                   const IID * riid,
  83936.  
  83937.                       void **ppv);
  83938.  
  83939.         HRESULT ( __stdcall *ReleaseMarshalData )(
  83940.             IMarshal * This,
  83941.  
  83942.                   IStream *pStm);
  83943.  
  83944.         HRESULT ( __stdcall *DisconnectObject )(
  83945.             IMarshal * This,
  83946.  
  83947.                   DWORD dwReserved);
  83948.  
  83949.  
  83950.     } IMarshalVtbl;
  83951.  
  83952.     struct IMarshal
  83953.     {
  83954.                    struct IMarshalVtbl *lpVtbl;
  83955.     };
  83956. # 740 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  83957. extern const IID IID_INoMarshal;
  83958. # 753 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  83959.     typedef struct INoMarshalVtbl
  83960.     {
  83961.  
  83962.  
  83963.         HRESULT ( __stdcall *QueryInterface )(
  83964.             INoMarshal * This,
  83965.                        const IID * riid,
  83966.  
  83967.                           void **ppvObject);
  83968.  
  83969.         ULONG ( __stdcall *AddRef )(
  83970.             INoMarshal * This);
  83971.  
  83972.         ULONG ( __stdcall *Release )(
  83973.             INoMarshal * This);
  83974.  
  83975.  
  83976.     } INoMarshalVtbl;
  83977.  
  83978.     struct INoMarshal
  83979.     {
  83980.                    struct INoMarshalVtbl *lpVtbl;
  83981.     };
  83982. # 810 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  83983. extern const IID IID_IAgileObject;
  83984. # 823 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  83985.     typedef struct IAgileObjectVtbl
  83986.     {
  83987.  
  83988.  
  83989.         HRESULT ( __stdcall *QueryInterface )(
  83990.             IAgileObject * This,
  83991.                        const IID * riid,
  83992.  
  83993.                           void **ppvObject);
  83994.  
  83995.         ULONG ( __stdcall *AddRef )(
  83996.             IAgileObject * This);
  83997.  
  83998.         ULONG ( __stdcall *Release )(
  83999.             IAgileObject * This);
  84000.  
  84001.  
  84002.     } IAgileObjectVtbl;
  84003.  
  84004.     struct IAgileObject
  84005.     {
  84006.                    struct IAgileObjectVtbl *lpVtbl;
  84007.     };
  84008. # 877 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84009. #pragma endregion
  84010. #pragma region Desktop Family or OneCore Family or OneCore Family
  84011.  
  84012.  
  84013.  
  84014. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0003_v0_0_c_ifspec;
  84015. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0003_v0_0_s_ifspec;
  84016.  
  84017.  
  84018.  
  84019.  
  84020.  
  84021.  
  84022.  
  84023. typedef
  84024. enum tagACTIVATIONTYPE
  84025.     {
  84026.         ACTIVATIONTYPE_UNCATEGORIZED = 0,
  84027.         ACTIVATIONTYPE_FROM_MONIKER = 0x1,
  84028.         ACTIVATIONTYPE_FROM_DATA = 0x2,
  84029.         ACTIVATIONTYPE_FROM_STORAGE = 0x4,
  84030.         ACTIVATIONTYPE_FROM_STREAM = 0x8,
  84031.         ACTIVATIONTYPE_FROM_FILE = 0x10
  84032.     } ACTIVATIONTYPE;
  84033.  
  84034.  
  84035. extern const IID IID_IActivationFilter;
  84036. # 921 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84037.     typedef struct IActivationFilterVtbl
  84038.     {
  84039.  
  84040.  
  84041.         HRESULT ( __stdcall *QueryInterface )(
  84042.             IActivationFilter * This,
  84043.                        const IID * riid,
  84044.  
  84045.                           void **ppvObject);
  84046.  
  84047.         ULONG ( __stdcall *AddRef )(
  84048.             IActivationFilter * This);
  84049.  
  84050.         ULONG ( __stdcall *Release )(
  84051.             IActivationFilter * This);
  84052.  
  84053.         HRESULT ( __stdcall *HandleActivation )(
  84054.             IActivationFilter * This,
  84055.                        DWORD dwActivationType,
  84056.                        const IID * rclsid,
  84057.                         CLSID *pReplacementClsId);
  84058.  
  84059.  
  84060.     } IActivationFilterVtbl;
  84061.  
  84062.     struct IActivationFilter
  84063.     {
  84064.                    struct IActivationFilterVtbl *lpVtbl;
  84065.     };
  84066. # 986 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84067. typedef IMarshal2 *LPMARSHAL2;
  84068.  
  84069.  
  84070. extern const IID IID_IMarshal2;
  84071. # 1002 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84072.     typedef struct IMarshal2Vtbl
  84073.     {
  84074.  
  84075.  
  84076.         HRESULT ( __stdcall *QueryInterface )(
  84077.             IMarshal2 * This,
  84078.                        const IID * riid,
  84079.  
  84080.                           void **ppvObject);
  84081.  
  84082.         ULONG ( __stdcall *AddRef )(
  84083.             IMarshal2 * This);
  84084.  
  84085.         ULONG ( __stdcall *Release )(
  84086.             IMarshal2 * This);
  84087.  
  84088.         HRESULT ( __stdcall *GetUnmarshalClass )(
  84089.             IMarshal2 * This,
  84090.  
  84091.                   const IID * riid,
  84092.  
  84093.                       void *pv,
  84094.  
  84095.                   DWORD dwDestContext,
  84096.  
  84097.                         void *pvDestContext,
  84098.  
  84099.                   DWORD mshlflags,
  84100.  
  84101.                    CLSID *pCid);
  84102.  
  84103.         HRESULT ( __stdcall *GetMarshalSizeMax )(
  84104.             IMarshal2 * This,
  84105.  
  84106.                   const IID * riid,
  84107.  
  84108.                       void *pv,
  84109.  
  84110.                   DWORD dwDestContext,
  84111.  
  84112.                         void *pvDestContext,
  84113.  
  84114.                   DWORD mshlflags,
  84115.  
  84116.                    DWORD *pSize);
  84117.  
  84118.         HRESULT ( __stdcall *MarshalInterface )(
  84119.             IMarshal2 * This,
  84120.  
  84121.                   IStream *pStm,
  84122.  
  84123.                   const IID * riid,
  84124.  
  84125.                       void *pv,
  84126.  
  84127.                   DWORD dwDestContext,
  84128.  
  84129.                         void *pvDestContext,
  84130.  
  84131.                   DWORD mshlflags);
  84132.  
  84133.         HRESULT ( __stdcall *UnmarshalInterface )(
  84134.             IMarshal2 * This,
  84135.  
  84136.                   IStream *pStm,
  84137.  
  84138.                   const IID * riid,
  84139.  
  84140.                       void **ppv);
  84141.  
  84142.         HRESULT ( __stdcall *ReleaseMarshalData )(
  84143.             IMarshal2 * This,
  84144.  
  84145.                   IStream *pStm);
  84146.  
  84147.         HRESULT ( __stdcall *DisconnectObject )(
  84148.             IMarshal2 * This,
  84149.  
  84150.                   DWORD dwReserved);
  84151.  
  84152.  
  84153.     } IMarshal2Vtbl;
  84154.  
  84155.     struct IMarshal2
  84156.     {
  84157.                    struct IMarshal2Vtbl *lpVtbl;
  84158.     };
  84159. # 1141 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84160. typedef IMalloc *LPMALLOC;
  84161.  
  84162.  
  84163. extern const IID IID_IMalloc;
  84164. # 1181 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84165.     typedef struct IMallocVtbl
  84166.     {
  84167.  
  84168.  
  84169.         HRESULT ( __stdcall *QueryInterface )(
  84170.             IMalloc * This,
  84171.                        const IID * riid,
  84172.  
  84173.                           void **ppvObject);
  84174.  
  84175.         ULONG ( __stdcall *AddRef )(
  84176.             IMalloc * This);
  84177.  
  84178.         ULONG ( __stdcall *Release )(
  84179.             IMalloc * This);
  84180.  
  84181.         void *( __stdcall *Alloc )(
  84182.             IMalloc * This,
  84183.  
  84184.                   SIZE_T cb);
  84185.  
  84186.         void *( __stdcall *Realloc )(
  84187.             IMalloc * This,
  84188.  
  84189.                       void *pv,
  84190.  
  84191.                   SIZE_T cb);
  84192.  
  84193.         void ( __stdcall *Free )(
  84194.             IMalloc * This,
  84195.  
  84196.                       void *pv);
  84197.  
  84198.         SIZE_T ( __stdcall *GetSize )(
  84199.             IMalloc * This,
  84200.  
  84201.                                                         void *pv);
  84202.  
  84203.         int ( __stdcall *DidAlloc )(
  84204.             IMalloc * This,
  84205.  
  84206.                       void *pv);
  84207.  
  84208.         void ( __stdcall *HeapMinimize )(
  84209.             IMalloc * This);
  84210.  
  84211.  
  84212.     } IMallocVtbl;
  84213.  
  84214.     struct IMalloc
  84215.     {
  84216.                    struct IMallocVtbl *lpVtbl;
  84217.     };
  84218. # 1285 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84219. typedef IStdMarshalInfo *LPSTDMARSHALINFO;
  84220.  
  84221.  
  84222. extern const IID IID_IStdMarshalInfo;
  84223. # 1309 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84224.     typedef struct IStdMarshalInfoVtbl
  84225.     {
  84226.  
  84227.  
  84228.         HRESULT ( __stdcall *QueryInterface )(
  84229.             IStdMarshalInfo * This,
  84230.                        const IID * riid,
  84231.  
  84232.                           void **ppvObject);
  84233.  
  84234.         ULONG ( __stdcall *AddRef )(
  84235.             IStdMarshalInfo * This);
  84236.  
  84237.         ULONG ( __stdcall *Release )(
  84238.             IStdMarshalInfo * This);
  84239.  
  84240.         HRESULT ( __stdcall *GetClassForHandler )(
  84241.             IStdMarshalInfo * This,
  84242.  
  84243.                   DWORD dwDestContext,
  84244.  
  84245.                         void *pvDestContext,
  84246.  
  84247.                    CLSID *pClsid);
  84248.  
  84249.  
  84250.     } IStdMarshalInfoVtbl;
  84251.  
  84252.     struct IStdMarshalInfo
  84253.     {
  84254.                    struct IStdMarshalInfoVtbl *lpVtbl;
  84255.     };
  84256. # 1377 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84257. typedef IExternalConnection *LPEXTERNALCONNECTION;
  84258.  
  84259. typedef
  84260. enum tagEXTCONN
  84261.     {
  84262.         EXTCONN_STRONG = 0x1,
  84263.         EXTCONN_WEAK = 0x2,
  84264.         EXTCONN_CALLABLE = 0x4
  84265.     } EXTCONN;
  84266.  
  84267.  
  84268. extern const IID IID_IExternalConnection;
  84269. # 1415 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84270.     typedef struct IExternalConnectionVtbl
  84271.     {
  84272.  
  84273.  
  84274.         HRESULT ( __stdcall *QueryInterface )(
  84275.             IExternalConnection * This,
  84276.                        const IID * riid,
  84277.  
  84278.                           void **ppvObject);
  84279.  
  84280.         ULONG ( __stdcall *AddRef )(
  84281.             IExternalConnection * This);
  84282.  
  84283.         ULONG ( __stdcall *Release )(
  84284.             IExternalConnection * This);
  84285.  
  84286.         DWORD ( __stdcall *AddConnection )(
  84287.             IExternalConnection * This,
  84288.  
  84289.                   DWORD extconn,
  84290.  
  84291.                   DWORD reserved);
  84292.  
  84293.         DWORD ( __stdcall *ReleaseConnection )(
  84294.             IExternalConnection * This,
  84295.  
  84296.                   DWORD extconn,
  84297.  
  84298.                   DWORD reserved,
  84299.  
  84300.                   BOOL fLastReleaseCloses);
  84301.  
  84302.  
  84303.     } IExternalConnectionVtbl;
  84304.  
  84305.     struct IExternalConnection
  84306.     {
  84307.                    struct IExternalConnectionVtbl *lpVtbl;
  84308.     };
  84309. # 1490 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84310. typedef IMultiQI *LPMULTIQI;
  84311.  
  84312.  
  84313. #pragma endregion
  84314. #pragma region Application Family or OneCore Family
  84315.  
  84316. typedef struct tagMULTI_QI
  84317.     {
  84318.     const IID *pIID;
  84319.     IUnknown *pItf;
  84320.     HRESULT hr;
  84321.     } MULTI_QI;
  84322.  
  84323.  
  84324.  
  84325. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0008_v0_0_c_ifspec;
  84326. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0008_v0_0_s_ifspec;
  84327. # 1515 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84328. extern const IID IID_IMultiQI;
  84329. # 1534 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84330.     typedef struct IMultiQIVtbl
  84331.     {
  84332.  
  84333.  
  84334.         HRESULT ( __stdcall *QueryInterface )(
  84335.             IMultiQI * This,
  84336.                        const IID * riid,
  84337.  
  84338.                           void **ppvObject);
  84339.  
  84340.         ULONG ( __stdcall *AddRef )(
  84341.             IMultiQI * This);
  84342.  
  84343.         ULONG ( __stdcall *Release )(
  84344.             IMultiQI * This);
  84345.  
  84346.         HRESULT ( __stdcall *QueryMultipleInterfaces )(
  84347.             IMultiQI * This,
  84348.  
  84349.                   ULONG cMQIs,
  84350.  
  84351.                                     MULTI_QI *pMQIs);
  84352.  
  84353.  
  84354.     } IMultiQIVtbl;
  84355.  
  84356.     struct IMultiQI
  84357.     {
  84358.                    struct IMultiQIVtbl *lpVtbl;
  84359.     };
  84360. # 1601 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84361. extern const IID IID_AsyncIMultiQI;
  84362. # 1624 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84363.     typedef struct AsyncIMultiQIVtbl
  84364.     {
  84365.  
  84366.  
  84367.         HRESULT ( __stdcall *QueryInterface )(
  84368.             AsyncIMultiQI * This,
  84369.                        const IID * riid,
  84370.  
  84371.                           void **ppvObject);
  84372.  
  84373.         ULONG ( __stdcall *AddRef )(
  84374.             AsyncIMultiQI * This);
  84375.  
  84376.         ULONG ( __stdcall *Release )(
  84377.             AsyncIMultiQI * This);
  84378.  
  84379.         HRESULT ( __stdcall *Begin_QueryMultipleInterfaces )(
  84380.             AsyncIMultiQI * This,
  84381.  
  84382.                   ULONG cMQIs,
  84383.  
  84384.                                     MULTI_QI *pMQIs);
  84385.  
  84386.         HRESULT ( __stdcall *Finish_QueryMultipleInterfaces )(
  84387.             AsyncIMultiQI * This,
  84388.  
  84389.                                     MULTI_QI *pMQIs);
  84390.  
  84391.  
  84392.     } AsyncIMultiQIVtbl;
  84393.  
  84394.     struct AsyncIMultiQI
  84395.     {
  84396.                    struct AsyncIMultiQIVtbl *lpVtbl;
  84397.     };
  84398. # 1696 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84399. #pragma endregion
  84400. #pragma region Desktop Family or OneCore Family
  84401.  
  84402.  
  84403.  
  84404. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0009_v0_0_c_ifspec;
  84405. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0009_v0_0_s_ifspec;
  84406. # 1711 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84407. extern const IID IID_IInternalUnknown;
  84408. # 1730 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84409.     typedef struct IInternalUnknownVtbl
  84410.     {
  84411.  
  84412.  
  84413.         HRESULT ( __stdcall *QueryInterface )(
  84414.             IInternalUnknown * This,
  84415.                        const IID * riid,
  84416.  
  84417.                           void **ppvObject);
  84418.  
  84419.         ULONG ( __stdcall *AddRef )(
  84420.             IInternalUnknown * This);
  84421.  
  84422.         ULONG ( __stdcall *Release )(
  84423.             IInternalUnknown * This);
  84424.  
  84425.         HRESULT ( __stdcall *QueryInternalInterface )(
  84426.             IInternalUnknown * This,
  84427.  
  84428.                   const IID * riid,
  84429.  
  84430.                       void **ppv);
  84431.  
  84432.  
  84433.     } IInternalUnknownVtbl;
  84434.  
  84435.     struct IInternalUnknown
  84436.     {
  84437.                    struct IInternalUnknownVtbl *lpVtbl;
  84438.     };
  84439. # 1794 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84440. #pragma endregion
  84441. #pragma region Application Family or OneCore Family or OneCore Family
  84442.  
  84443.  
  84444.  
  84445. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0010_v0_0_c_ifspec;
  84446. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0010_v0_0_s_ifspec;
  84447.  
  84448.  
  84449.  
  84450.  
  84451.  
  84452.  
  84453.  
  84454. typedef IEnumUnknown *LPENUMUNKNOWN;
  84455.  
  84456.  
  84457. extern const IID IID_IEnumUnknown;
  84458. # 1840 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84459.     typedef struct IEnumUnknownVtbl
  84460.     {
  84461.  
  84462.  
  84463.         HRESULT ( __stdcall *QueryInterface )(
  84464.                       IEnumUnknown * This,
  84465.                                  const IID * riid,
  84466.  
  84467.                           void **ppvObject);
  84468.  
  84469.         ULONG ( __stdcall *AddRef )(
  84470.                       IEnumUnknown * This);
  84471.  
  84472.         ULONG ( __stdcall *Release )(
  84473.                       IEnumUnknown * This);
  84474.  
  84475.                       HRESULT ( __stdcall *Next )(
  84476.             IEnumUnknown * This,
  84477.  
  84478.                   ULONG celt,
  84479.  
  84480.                                                  IUnknown **rgelt,
  84481.  
  84482.                        ULONG *pceltFetched);
  84483.  
  84484.         HRESULT ( __stdcall *Skip )(
  84485.                       IEnumUnknown * This,
  84486.                        ULONG celt);
  84487.  
  84488.         HRESULT ( __stdcall *Reset )(
  84489.                       IEnumUnknown * This);
  84490.  
  84491.         HRESULT ( __stdcall *Clone )(
  84492.                       IEnumUnknown * This,
  84493.                                              IEnumUnknown **ppenum);
  84494.  
  84495.  
  84496.     } IEnumUnknownVtbl;
  84497.  
  84498.     struct IEnumUnknown
  84499.     {
  84500.                    struct IEnumUnknownVtbl *lpVtbl;
  84501.     };
  84502. # 1918 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84503.                 HRESULT __stdcall IEnumUnknown_RemoteNext_Proxy(
  84504.               IEnumUnknown * This,
  84505.                ULONG celt,
  84506.                                                                                 IUnknown **rgelt,
  84507.                            ULONG *pceltFetched);
  84508.  
  84509.  
  84510. void __stdcall IEnumUnknown_RemoteNext_Stub(
  84511.     IRpcStubBuffer *This,
  84512.     IRpcChannelBuffer *_pRpcChannelBuffer,
  84513.     PRPC_MESSAGE _pRpcMessage,
  84514.     DWORD *_pdwStubPhase);
  84515. # 1942 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84516. typedef IEnumString *LPENUMSTRING;
  84517.  
  84518.  
  84519. extern const IID IID_IEnumString;
  84520. # 1973 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84521.     typedef struct IEnumStringVtbl
  84522.     {
  84523.  
  84524.  
  84525.         HRESULT ( __stdcall *QueryInterface )(
  84526.                       IEnumString * This,
  84527.                                  const IID * riid,
  84528.  
  84529.                           void **ppvObject);
  84530.  
  84531.         ULONG ( __stdcall *AddRef )(
  84532.                       IEnumString * This);
  84533.  
  84534.         ULONG ( __stdcall *Release )(
  84535.                       IEnumString * This);
  84536.  
  84537.                       HRESULT ( __stdcall *Next )(
  84538.             IEnumString * This,
  84539.                        ULONG celt,
  84540.  
  84541.                                                  LPOLESTR *rgelt,
  84542.  
  84543.                        ULONG *pceltFetched);
  84544.  
  84545.         HRESULT ( __stdcall *Skip )(
  84546.                       IEnumString * This,
  84547.                        ULONG celt);
  84548.  
  84549.         HRESULT ( __stdcall *Reset )(
  84550.                       IEnumString * This);
  84551.  
  84552.         HRESULT ( __stdcall *Clone )(
  84553.                       IEnumString * This,
  84554.                                              IEnumString **ppenum);
  84555.  
  84556.  
  84557.     } IEnumStringVtbl;
  84558.  
  84559.     struct IEnumString
  84560.     {
  84561.                    struct IEnumStringVtbl *lpVtbl;
  84562.     };
  84563. # 2050 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84564.                 HRESULT __stdcall IEnumString_RemoteNext_Proxy(
  84565.               IEnumString * This,
  84566.                ULONG celt,
  84567.                                                                                 LPOLESTR *rgelt,
  84568.                            ULONG *pceltFetched);
  84569.  
  84570.  
  84571. void __stdcall IEnumString_RemoteNext_Stub(
  84572.     IRpcStubBuffer *This,
  84573.     IRpcChannelBuffer *_pRpcChannelBuffer,
  84574.     PRPC_MESSAGE _pRpcMessage,
  84575.     DWORD *_pdwStubPhase);
  84576. # 2075 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84577. extern const IID IID_ISequentialStream;
  84578. # 2104 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84579.     typedef struct ISequentialStreamVtbl
  84580.     {
  84581.  
  84582.  
  84583.         HRESULT ( __stdcall *QueryInterface )(
  84584.                       ISequentialStream * This,
  84585.                                  const IID * riid,
  84586.  
  84587.                           void **ppvObject);
  84588.  
  84589.         ULONG ( __stdcall *AddRef )(
  84590.                       ISequentialStream * This);
  84591.  
  84592.         ULONG ( __stdcall *Release )(
  84593.                       ISequentialStream * This);
  84594.  
  84595.                       HRESULT ( __stdcall *Read )(
  84596.             ISequentialStream * This,
  84597.  
  84598.                                                  void *pv,
  84599.  
  84600.                   ULONG cb,
  84601.  
  84602.                        ULONG *pcbRead);
  84603.  
  84604.                       HRESULT ( __stdcall *Write )(
  84605.             ISequentialStream * This,
  84606.  
  84607.                                   const void *pv,
  84608.  
  84609.                   ULONG cb,
  84610.  
  84611.                        ULONG *pcbWritten);
  84612.  
  84613.  
  84614.     } ISequentialStreamVtbl;
  84615.  
  84616.     struct ISequentialStream
  84617.     {
  84618.                    struct ISequentialStreamVtbl *lpVtbl;
  84619.     };
  84620. # 2174 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84621.                 HRESULT __stdcall ISequentialStream_RemoteRead_Proxy(
  84622.               ISequentialStream * This,
  84623.                                                                          byte *pv,
  84624.                ULONG cb,
  84625.                            ULONG *pcbRead);
  84626.  
  84627.  
  84628. void __stdcall ISequentialStream_RemoteRead_Stub(
  84629.     IRpcStubBuffer *This,
  84630.     IRpcChannelBuffer *_pRpcChannelBuffer,
  84631.     PRPC_MESSAGE _pRpcMessage,
  84632.     DWORD *_pdwStubPhase);
  84633.  
  84634.  
  84635.                 HRESULT __stdcall ISequentialStream_RemoteWrite_Proxy(
  84636.               ISequentialStream * This,
  84637.                                                   const byte *pv,
  84638.                ULONG cb,
  84639.                            ULONG *pcbWritten);
  84640.  
  84641.  
  84642. void __stdcall ISequentialStream_RemoteWrite_Stub(
  84643.     IRpcStubBuffer *This,
  84644.     IRpcChannelBuffer *_pRpcChannelBuffer,
  84645.     PRPC_MESSAGE _pRpcMessage,
  84646.     DWORD *_pdwStubPhase);
  84647. # 2212 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84648. typedef IStream *LPSTREAM;
  84649.  
  84650. typedef struct tagSTATSTG
  84651.     {
  84652.     LPOLESTR pwcsName;
  84653.     DWORD type;
  84654.     ULARGE_INTEGER cbSize;
  84655.     FILETIME mtime;
  84656.     FILETIME ctime;
  84657.     FILETIME atime;
  84658.     DWORD grfMode;
  84659.     DWORD grfLocksSupported;
  84660.     CLSID clsid;
  84661.     DWORD grfStateBits;
  84662.     DWORD reserved;
  84663.     } STATSTG;
  84664.  
  84665. typedef
  84666. enum tagSTGTY
  84667.     {
  84668.         STGTY_STORAGE = 1,
  84669.         STGTY_STREAM = 2,
  84670.         STGTY_LOCKBYTES = 3,
  84671.         STGTY_PROPERTY = 4
  84672.     } STGTY;
  84673.  
  84674. typedef
  84675. enum tagSTREAM_SEEK
  84676.     {
  84677.         STREAM_SEEK_SET = 0,
  84678.         STREAM_SEEK_CUR = 1,
  84679.         STREAM_SEEK_END = 2
  84680.     } STREAM_SEEK;
  84681.  
  84682. typedef
  84683. enum tagLOCKTYPE
  84684.     {
  84685.         LOCK_WRITE = 1,
  84686.         LOCK_EXCLUSIVE = 2,
  84687.         LOCK_ONLYONCE = 4
  84688.     } LOCKTYPE;
  84689.  
  84690.  
  84691. extern const IID IID_IStream;
  84692. # 2308 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84693.     typedef struct IStreamVtbl
  84694.     {
  84695.  
  84696.  
  84697.         HRESULT ( __stdcall *QueryInterface )(
  84698.                       IStream * This,
  84699.                                  const IID * riid,
  84700.  
  84701.                           void **ppvObject);
  84702.  
  84703.         ULONG ( __stdcall *AddRef )(
  84704.                       IStream * This);
  84705.  
  84706.         ULONG ( __stdcall *Release )(
  84707.                       IStream * This);
  84708.  
  84709.                       HRESULT ( __stdcall *Read )(
  84710.             IStream * This,
  84711.  
  84712.                                                  void *pv,
  84713.  
  84714.                   ULONG cb,
  84715.  
  84716.                        ULONG *pcbRead);
  84717.  
  84718.                       HRESULT ( __stdcall *Write )(
  84719.             IStream * This,
  84720.  
  84721.                                   const void *pv,
  84722.  
  84723.                   ULONG cb,
  84724.  
  84725.                        ULONG *pcbWritten);
  84726.  
  84727.                       HRESULT ( __stdcall *Seek )(
  84728.             IStream * This,
  84729.                        LARGE_INTEGER dlibMove,
  84730.                        DWORD dwOrigin,
  84731.  
  84732.                        ULARGE_INTEGER *plibNewPosition);
  84733.  
  84734.         HRESULT ( __stdcall *SetSize )(
  84735.                       IStream * This,
  84736.                        ULARGE_INTEGER libNewSize);
  84737.  
  84738.                       HRESULT ( __stdcall *CopyTo )(
  84739.             IStream * This,
  84740.  
  84741.                   IStream *pstm,
  84742.                        ULARGE_INTEGER cb,
  84743.  
  84744.                        ULARGE_INTEGER *pcbRead,
  84745.  
  84746.                        ULARGE_INTEGER *pcbWritten);
  84747.  
  84748.         HRESULT ( __stdcall *Commit )(
  84749.                       IStream * This,
  84750.                        DWORD grfCommitFlags);
  84751.  
  84752.         HRESULT ( __stdcall *Revert )(
  84753.                       IStream * This);
  84754.  
  84755.         HRESULT ( __stdcall *LockRegion )(
  84756.                       IStream * This,
  84757.                        ULARGE_INTEGER libOffset,
  84758.                        ULARGE_INTEGER cb,
  84759.                        DWORD dwLockType);
  84760.  
  84761.         HRESULT ( __stdcall *UnlockRegion )(
  84762.                       IStream * This,
  84763.                        ULARGE_INTEGER libOffset,
  84764.                        ULARGE_INTEGER cb,
  84765.                        DWORD dwLockType);
  84766.  
  84767.         HRESULT ( __stdcall *Stat )(
  84768.                       IStream * This,
  84769.                                    STATSTG *pstatstg,
  84770.                        DWORD grfStatFlag);
  84771.  
  84772.         HRESULT ( __stdcall *Clone )(
  84773.                       IStream * This,
  84774.                                              IStream **ppstm);
  84775.  
  84776.  
  84777.     } IStreamVtbl;
  84778.  
  84779.     struct IStream
  84780.     {
  84781.                    struct IStreamVtbl *lpVtbl;
  84782.     };
  84783. # 2455 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84784.                 HRESULT __stdcall IStream_RemoteSeek_Proxy(
  84785.               IStream * This,
  84786.                LARGE_INTEGER dlibMove,
  84787.                DWORD dwOrigin,
  84788.                            ULARGE_INTEGER *plibNewPosition);
  84789.  
  84790.  
  84791. void __stdcall IStream_RemoteSeek_Stub(
  84792.     IRpcStubBuffer *This,
  84793.     IRpcChannelBuffer *_pRpcChannelBuffer,
  84794.     PRPC_MESSAGE _pRpcMessage,
  84795.     DWORD *_pdwStubPhase);
  84796.  
  84797.  
  84798.                 HRESULT __stdcall IStream_RemoteCopyTo_Proxy(
  84799.               IStream * This,
  84800.                                      IStream *pstm,
  84801.                ULARGE_INTEGER cb,
  84802.                            ULARGE_INTEGER *pcbRead,
  84803.                            ULARGE_INTEGER *pcbWritten);
  84804.  
  84805.  
  84806. void __stdcall IStream_RemoteCopyTo_Stub(
  84807.     IRpcStubBuffer *This,
  84808.     IRpcChannelBuffer *_pRpcChannelBuffer,
  84809.     PRPC_MESSAGE _pRpcMessage,
  84810.     DWORD *_pdwStubPhase);
  84811. # 2494 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84812. typedef ULONG RPCOLEDATAREP;
  84813.  
  84814. typedef struct tagRPCOLEMESSAGE
  84815.     {
  84816.     void *reserved1;
  84817.     RPCOLEDATAREP dataRepresentation;
  84818.     void *Buffer;
  84819.     ULONG cbBuffer;
  84820.     ULONG iMethod;
  84821.     void *reserved2[ 5 ];
  84822.     ULONG rpcFlags;
  84823.     } RPCOLEMESSAGE;
  84824.  
  84825. typedef RPCOLEMESSAGE *PRPCOLEMESSAGE;
  84826.  
  84827.  
  84828. extern const IID IID_IRpcChannelBuffer;
  84829. # 2547 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84830.     typedef struct IRpcChannelBufferVtbl
  84831.     {
  84832.  
  84833.  
  84834.         HRESULT ( __stdcall *QueryInterface )(
  84835.             IRpcChannelBuffer * This,
  84836.                        const IID * riid,
  84837.  
  84838.                           void **ppvObject);
  84839.  
  84840.         ULONG ( __stdcall *AddRef )(
  84841.             IRpcChannelBuffer * This);
  84842.  
  84843.         ULONG ( __stdcall *Release )(
  84844.             IRpcChannelBuffer * This);
  84845.  
  84846.         HRESULT ( __stdcall *GetBuffer )(
  84847.             IRpcChannelBuffer * This,
  84848.  
  84849.                      RPCOLEMESSAGE *pMessage,
  84850.  
  84851.                   const IID * riid);
  84852.  
  84853.         HRESULT ( __stdcall *SendReceive )(
  84854.             IRpcChannelBuffer * This,
  84855.  
  84856.                      RPCOLEMESSAGE *pMessage,
  84857.  
  84858.                        ULONG *pStatus);
  84859.  
  84860.         HRESULT ( __stdcall *FreeBuffer )(
  84861.             IRpcChannelBuffer * This,
  84862.  
  84863.                      RPCOLEMESSAGE *pMessage);
  84864.  
  84865.         HRESULT ( __stdcall *GetDestCtx )(
  84866.             IRpcChannelBuffer * This,
  84867.  
  84868.                    DWORD *pdwDestContext,
  84869.  
  84870.                                        void **ppvDestContext);
  84871.  
  84872.         HRESULT ( __stdcall *IsConnected )(
  84873.             IRpcChannelBuffer * This);
  84874.  
  84875.  
  84876.     } IRpcChannelBufferVtbl;
  84877.  
  84878.     struct IRpcChannelBuffer
  84879.     {
  84880.                    struct IRpcChannelBufferVtbl *lpVtbl;
  84881.     };
  84882. # 2645 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84883. #pragma endregion
  84884. #pragma region Desktop Family or OneCore Family
  84885.  
  84886.  
  84887.  
  84888. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0015_v0_0_c_ifspec;
  84889. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0015_v0_0_s_ifspec;
  84890. # 2660 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84891. extern const IID IID_IRpcChannelBuffer2;
  84892. # 2677 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84893.     typedef struct IRpcChannelBuffer2Vtbl
  84894.     {
  84895.  
  84896.  
  84897.         HRESULT ( __stdcall *QueryInterface )(
  84898.             IRpcChannelBuffer2 * This,
  84899.                        const IID * riid,
  84900.  
  84901.                           void **ppvObject);
  84902.  
  84903.         ULONG ( __stdcall *AddRef )(
  84904.             IRpcChannelBuffer2 * This);
  84905.  
  84906.         ULONG ( __stdcall *Release )(
  84907.             IRpcChannelBuffer2 * This);
  84908.  
  84909.         HRESULT ( __stdcall *GetBuffer )(
  84910.             IRpcChannelBuffer2 * This,
  84911.  
  84912.                      RPCOLEMESSAGE *pMessage,
  84913.  
  84914.                   const IID * riid);
  84915.  
  84916.         HRESULT ( __stdcall *SendReceive )(
  84917.             IRpcChannelBuffer2 * This,
  84918.  
  84919.                      RPCOLEMESSAGE *pMessage,
  84920.  
  84921.                        ULONG *pStatus);
  84922.  
  84923.         HRESULT ( __stdcall *FreeBuffer )(
  84924.             IRpcChannelBuffer2 * This,
  84925.  
  84926.                      RPCOLEMESSAGE *pMessage);
  84927.  
  84928.         HRESULT ( __stdcall *GetDestCtx )(
  84929.             IRpcChannelBuffer2 * This,
  84930.  
  84931.                    DWORD *pdwDestContext,
  84932.  
  84933.                                        void **ppvDestContext);
  84934.  
  84935.         HRESULT ( __stdcall *IsConnected )(
  84936.             IRpcChannelBuffer2 * This);
  84937.  
  84938.         HRESULT ( __stdcall *GetProtocolVersion )(
  84939.             IRpcChannelBuffer2 * This,
  84940.  
  84941.                    DWORD *pdwVersion);
  84942.  
  84943.  
  84944.     } IRpcChannelBuffer2Vtbl;
  84945.  
  84946.     struct IRpcChannelBuffer2
  84947.     {
  84948.                    struct IRpcChannelBuffer2Vtbl *lpVtbl;
  84949.     };
  84950. # 2787 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84951. extern const IID IID_IAsyncRpcChannelBuffer;
  84952. # 2822 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  84953.     typedef struct IAsyncRpcChannelBufferVtbl
  84954.     {
  84955.  
  84956.  
  84957.         HRESULT ( __stdcall *QueryInterface )(
  84958.             IAsyncRpcChannelBuffer * This,
  84959.                        const IID * riid,
  84960.  
  84961.                           void **ppvObject);
  84962.  
  84963.         ULONG ( __stdcall *AddRef )(
  84964.             IAsyncRpcChannelBuffer * This);
  84965.  
  84966.         ULONG ( __stdcall *Release )(
  84967.             IAsyncRpcChannelBuffer * This);
  84968.  
  84969.         HRESULT ( __stdcall *GetBuffer )(
  84970.             IAsyncRpcChannelBuffer * This,
  84971.  
  84972.                      RPCOLEMESSAGE *pMessage,
  84973.  
  84974.                   const IID * riid);
  84975.  
  84976.         HRESULT ( __stdcall *SendReceive )(
  84977.             IAsyncRpcChannelBuffer * This,
  84978.  
  84979.                      RPCOLEMESSAGE *pMessage,
  84980.  
  84981.                        ULONG *pStatus);
  84982.  
  84983.         HRESULT ( __stdcall *FreeBuffer )(
  84984.             IAsyncRpcChannelBuffer * This,
  84985.  
  84986.                      RPCOLEMESSAGE *pMessage);
  84987.  
  84988.         HRESULT ( __stdcall *GetDestCtx )(
  84989.             IAsyncRpcChannelBuffer * This,
  84990.  
  84991.                    DWORD *pdwDestContext,
  84992.  
  84993.                                        void **ppvDestContext);
  84994.  
  84995.         HRESULT ( __stdcall *IsConnected )(
  84996.             IAsyncRpcChannelBuffer * This);
  84997.  
  84998.         HRESULT ( __stdcall *GetProtocolVersion )(
  84999.             IAsyncRpcChannelBuffer * This,
  85000.  
  85001.                    DWORD *pdwVersion);
  85002.  
  85003.         HRESULT ( __stdcall *Send )(
  85004.             IAsyncRpcChannelBuffer * This,
  85005.  
  85006.                      RPCOLEMESSAGE *pMsg,
  85007.  
  85008.                   ISynchronize *pSync,
  85009.  
  85010.                    ULONG *pulStatus);
  85011.  
  85012.         HRESULT ( __stdcall *Receive )(
  85013.             IAsyncRpcChannelBuffer * This,
  85014.  
  85015.                      RPCOLEMESSAGE *pMsg,
  85016.  
  85017.                    ULONG *pulStatus);
  85018.  
  85019.         HRESULT ( __stdcall *GetDestCtxEx )(
  85020.             IAsyncRpcChannelBuffer * This,
  85021.  
  85022.                   RPCOLEMESSAGE *pMsg,
  85023.  
  85024.                    DWORD *pdwDestContext,
  85025.  
  85026.                                            void **ppvDestContext);
  85027.  
  85028.  
  85029.     } IAsyncRpcChannelBufferVtbl;
  85030.  
  85031.     struct IAsyncRpcChannelBuffer
  85032.     {
  85033.                    struct IAsyncRpcChannelBufferVtbl *lpVtbl;
  85034.     };
  85035. # 2967 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85036. extern const IID IID_IRpcChannelBuffer3;
  85037. # 3026 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85038.     typedef struct IRpcChannelBuffer3Vtbl
  85039.     {
  85040.  
  85041.  
  85042.         HRESULT ( __stdcall *QueryInterface )(
  85043.             IRpcChannelBuffer3 * This,
  85044.                        const IID * riid,
  85045.  
  85046.                           void **ppvObject);
  85047.  
  85048.         ULONG ( __stdcall *AddRef )(
  85049.             IRpcChannelBuffer3 * This);
  85050.  
  85051.         ULONG ( __stdcall *Release )(
  85052.             IRpcChannelBuffer3 * This);
  85053.  
  85054.         HRESULT ( __stdcall *GetBuffer )(
  85055.             IRpcChannelBuffer3 * This,
  85056.  
  85057.                      RPCOLEMESSAGE *pMessage,
  85058.  
  85059.                   const IID * riid);
  85060.  
  85061.         HRESULT ( __stdcall *SendReceive )(
  85062.             IRpcChannelBuffer3 * This,
  85063.  
  85064.                      RPCOLEMESSAGE *pMessage,
  85065.  
  85066.                        ULONG *pStatus);
  85067.  
  85068.         HRESULT ( __stdcall *FreeBuffer )(
  85069.             IRpcChannelBuffer3 * This,
  85070.  
  85071.                      RPCOLEMESSAGE *pMessage);
  85072.  
  85073.         HRESULT ( __stdcall *GetDestCtx )(
  85074.             IRpcChannelBuffer3 * This,
  85075.  
  85076.                    DWORD *pdwDestContext,
  85077.  
  85078.                                        void **ppvDestContext);
  85079.  
  85080.         HRESULT ( __stdcall *IsConnected )(
  85081.             IRpcChannelBuffer3 * This);
  85082.  
  85083.         HRESULT ( __stdcall *GetProtocolVersion )(
  85084.             IRpcChannelBuffer3 * This,
  85085.  
  85086.                    DWORD *pdwVersion);
  85087.  
  85088.         HRESULT ( __stdcall *Send )(
  85089.             IRpcChannelBuffer3 * This,
  85090.  
  85091.                      RPCOLEMESSAGE *pMsg,
  85092.  
  85093.                    ULONG *pulStatus);
  85094.  
  85095.         HRESULT ( __stdcall *Receive )(
  85096.             IRpcChannelBuffer3 * This,
  85097.  
  85098.                      RPCOLEMESSAGE *pMsg,
  85099.  
  85100.                   ULONG ulSize,
  85101.  
  85102.                    ULONG *pulStatus);
  85103.  
  85104.         HRESULT ( __stdcall *Cancel )(
  85105.             IRpcChannelBuffer3 * This,
  85106.  
  85107.                      RPCOLEMESSAGE *pMsg);
  85108.  
  85109.         HRESULT ( __stdcall *GetCallContext )(
  85110.             IRpcChannelBuffer3 * This,
  85111.  
  85112.                   RPCOLEMESSAGE *pMsg,
  85113.  
  85114.                   const IID * riid,
  85115.  
  85116.                       void **pInterface);
  85117.  
  85118.         HRESULT ( __stdcall *GetDestCtxEx )(
  85119.             IRpcChannelBuffer3 * This,
  85120.  
  85121.                   RPCOLEMESSAGE *pMsg,
  85122.  
  85123.                    DWORD *pdwDestContext,
  85124.  
  85125.                                            void **ppvDestContext);
  85126.  
  85127.         HRESULT ( __stdcall *GetState )(
  85128.             IRpcChannelBuffer3 * This,
  85129.  
  85130.                   RPCOLEMESSAGE *pMsg,
  85131.  
  85132.                    DWORD *pState);
  85133.  
  85134.         HRESULT ( __stdcall *RegisterAsync )(
  85135.             IRpcChannelBuffer3 * This,
  85136.  
  85137.                      RPCOLEMESSAGE *pMsg,
  85138.  
  85139.                   IAsyncManager *pAsyncMgr);
  85140.  
  85141.  
  85142.     } IRpcChannelBuffer3Vtbl;
  85143.  
  85144.     struct IRpcChannelBuffer3
  85145.     {
  85146.                    struct IRpcChannelBuffer3Vtbl *lpVtbl;
  85147.     };
  85148. # 3211 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85149. extern const IID IID_IRpcSyntaxNegotiate;
  85150. # 3228 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85151.     typedef struct IRpcSyntaxNegotiateVtbl
  85152.     {
  85153.  
  85154.  
  85155.         HRESULT ( __stdcall *QueryInterface )(
  85156.             IRpcSyntaxNegotiate * This,
  85157.                        const IID * riid,
  85158.  
  85159.                           void **ppvObject);
  85160.  
  85161.         ULONG ( __stdcall *AddRef )(
  85162.             IRpcSyntaxNegotiate * This);
  85163.  
  85164.         ULONG ( __stdcall *Release )(
  85165.             IRpcSyntaxNegotiate * This);
  85166.  
  85167.         HRESULT ( __stdcall *NegotiateSyntax )(
  85168.             IRpcSyntaxNegotiate * This,
  85169.  
  85170.                      RPCOLEMESSAGE *pMsg);
  85171.  
  85172.  
  85173.     } IRpcSyntaxNegotiateVtbl;
  85174.  
  85175.     struct IRpcSyntaxNegotiate
  85176.     {
  85177.                    struct IRpcSyntaxNegotiateVtbl *lpVtbl;
  85178.     };
  85179. # 3293 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85180. extern const IID IID_IRpcProxyBuffer;
  85181. # 3312 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85182.     typedef struct IRpcProxyBufferVtbl
  85183.     {
  85184.  
  85185.  
  85186.         HRESULT ( __stdcall *QueryInterface )(
  85187.             IRpcProxyBuffer * This,
  85188.                        const IID * riid,
  85189.  
  85190.                           void **ppvObject);
  85191.  
  85192.         ULONG ( __stdcall *AddRef )(
  85193.             IRpcProxyBuffer * This);
  85194.  
  85195.         ULONG ( __stdcall *Release )(
  85196.             IRpcProxyBuffer * This);
  85197.  
  85198.         HRESULT ( __stdcall *Connect )(
  85199.             IRpcProxyBuffer * This,
  85200.  
  85201.                   IRpcChannelBuffer *pRpcChannelBuffer);
  85202.  
  85203.         void ( __stdcall *Disconnect )(
  85204.             IRpcProxyBuffer * This);
  85205.  
  85206.  
  85207.     } IRpcProxyBufferVtbl;
  85208.  
  85209.     struct IRpcProxyBuffer
  85210.     {
  85211.                    struct IRpcProxyBufferVtbl *lpVtbl;
  85212.     };
  85213. # 3380 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85214. #pragma endregion
  85215. #pragma region Application Family or OneCore Family or OneCore Family
  85216.  
  85217.  
  85218.  
  85219. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0020_v0_0_c_ifspec;
  85220. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0020_v0_0_s_ifspec;
  85221. # 3395 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85222. extern const IID IID_IRpcStubBuffer;
  85223. # 3434 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85224.     typedef struct IRpcStubBufferVtbl
  85225.     {
  85226.  
  85227.  
  85228.         HRESULT ( __stdcall *QueryInterface )(
  85229.             IRpcStubBuffer * This,
  85230.                        const IID * riid,
  85231.  
  85232.                           void **ppvObject);
  85233.  
  85234.         ULONG ( __stdcall *AddRef )(
  85235.             IRpcStubBuffer * This);
  85236.  
  85237.         ULONG ( __stdcall *Release )(
  85238.             IRpcStubBuffer * This);
  85239.  
  85240.         HRESULT ( __stdcall *Connect )(
  85241.             IRpcStubBuffer * This,
  85242.  
  85243.                   IUnknown *pUnkServer);
  85244.  
  85245.         void ( __stdcall *Disconnect )(
  85246.             IRpcStubBuffer * This);
  85247.  
  85248.         HRESULT ( __stdcall *Invoke )(
  85249.             IRpcStubBuffer * This,
  85250.  
  85251.                      RPCOLEMESSAGE *_prpcmsg,
  85252.  
  85253.                   IRpcChannelBuffer *_pRpcChannelBuffer);
  85254.  
  85255.         IRpcStubBuffer *( __stdcall *IsIIDSupported )(
  85256.             IRpcStubBuffer * This,
  85257.  
  85258.                   const IID * riid);
  85259.  
  85260.         ULONG ( __stdcall *CountRefs )(
  85261.             IRpcStubBuffer * This);
  85262.  
  85263.         HRESULT ( __stdcall *DebugServerQueryInterface )(
  85264.             IRpcStubBuffer * This,
  85265.  
  85266.                       void **ppv);
  85267.  
  85268.         void ( __stdcall *DebugServerRelease )(
  85269.             IRpcStubBuffer * This,
  85270.  
  85271.                   void *pv);
  85272.  
  85273.  
  85274.     } IRpcStubBufferVtbl;
  85275.  
  85276.     struct IRpcStubBuffer
  85277.     {
  85278.                    struct IRpcStubBufferVtbl *lpVtbl;
  85279.     };
  85280. # 3545 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85281. extern const IID IID_IPSFactoryBuffer;
  85282. # 3576 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85283.     typedef struct IPSFactoryBufferVtbl
  85284.     {
  85285.  
  85286.  
  85287.         HRESULT ( __stdcall *QueryInterface )(
  85288.             IPSFactoryBuffer * This,
  85289.                        const IID * riid,
  85290.  
  85291.                           void **ppvObject);
  85292.  
  85293.         ULONG ( __stdcall *AddRef )(
  85294.             IPSFactoryBuffer * This);
  85295.  
  85296.         ULONG ( __stdcall *Release )(
  85297.             IPSFactoryBuffer * This);
  85298.  
  85299.         HRESULT ( __stdcall *CreateProxy )(
  85300.             IPSFactoryBuffer * This,
  85301.  
  85302.                   IUnknown *pUnkOuter,
  85303.  
  85304.                   const IID * riid,
  85305.  
  85306.                       IRpcProxyBuffer **ppProxy,
  85307.  
  85308.                       void **ppv);
  85309.  
  85310.         HRESULT ( __stdcall *CreateStub )(
  85311.             IPSFactoryBuffer * This,
  85312.  
  85313.                   const IID * riid,
  85314.  
  85315.                       IUnknown *pUnkServer,
  85316.  
  85317.                       IRpcStubBuffer **ppStub);
  85318.  
  85319.  
  85320.     } IPSFactoryBufferVtbl;
  85321.  
  85322.     struct IPSFactoryBuffer
  85323.     {
  85324.                    struct IPSFactoryBufferVtbl *lpVtbl;
  85325.     };
  85326. # 3656 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85327. #pragma endregion
  85328. #pragma region Desktop Family or OneCore Family
  85329.  
  85330.  
  85331.  
  85332. typedef struct SChannelHookCallInfo
  85333.     {
  85334.     IID iid;
  85335.     DWORD cbSize;
  85336.     GUID uCausality;
  85337.     DWORD dwServerPid;
  85338.     DWORD iMethod;
  85339.     void *pObject;
  85340.     } SChannelHookCallInfo;
  85341.  
  85342.  
  85343.  
  85344. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0022_v0_0_c_ifspec;
  85345. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0022_v0_0_s_ifspec;
  85346. # 3683 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85347. extern const IID IID_IChannelHook;
  85348. # 3762 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85349.     typedef struct IChannelHookVtbl
  85350.     {
  85351.  
  85352.  
  85353.         HRESULT ( __stdcall *QueryInterface )(
  85354.             IChannelHook * This,
  85355.                        const IID * riid,
  85356.  
  85357.                           void **ppvObject);
  85358.  
  85359.         ULONG ( __stdcall *AddRef )(
  85360.             IChannelHook * This);
  85361.  
  85362.         ULONG ( __stdcall *Release )(
  85363.             IChannelHook * This);
  85364.  
  85365.         void ( __stdcall *ClientGetSize )(
  85366.             IChannelHook * This,
  85367.  
  85368.                   const GUID * uExtent,
  85369.  
  85370.                   const IID * riid,
  85371.  
  85372.                    ULONG *pDataSize);
  85373.  
  85374.         void ( __stdcall *ClientFillBuffer )(
  85375.             IChannelHook * This,
  85376.  
  85377.                   const GUID * uExtent,
  85378.  
  85379.                   const IID * riid,
  85380.  
  85381.                      ULONG *pDataSize,
  85382.  
  85383.                   void *pDataBuffer);
  85384.  
  85385.         void ( __stdcall *ClientNotify )(
  85386.             IChannelHook * This,
  85387.  
  85388.                   const GUID * uExtent,
  85389.  
  85390.                   const IID * riid,
  85391.  
  85392.                   ULONG cbDataSize,
  85393.  
  85394.                   void *pDataBuffer,
  85395.  
  85396.                   DWORD lDataRep,
  85397.  
  85398.                   HRESULT hrFault);
  85399.  
  85400.         void ( __stdcall *ServerNotify )(
  85401.             IChannelHook * This,
  85402.  
  85403.                   const GUID * uExtent,
  85404.  
  85405.                   const IID * riid,
  85406.  
  85407.                   ULONG cbDataSize,
  85408.  
  85409.                   void *pDataBuffer,
  85410.  
  85411.                   DWORD lDataRep);
  85412.  
  85413.         void ( __stdcall *ServerGetSize )(
  85414.             IChannelHook * This,
  85415.  
  85416.                   const GUID * uExtent,
  85417.  
  85418.                   const IID * riid,
  85419.  
  85420.                   HRESULT hrFault,
  85421.  
  85422.                    ULONG *pDataSize);
  85423.  
  85424.         void ( __stdcall *ServerFillBuffer )(
  85425.             IChannelHook * This,
  85426.  
  85427.                   const GUID * uExtent,
  85428.  
  85429.                   const IID * riid,
  85430.  
  85431.                      ULONG *pDataSize,
  85432.  
  85433.                   void *pDataBuffer,
  85434.  
  85435.                   HRESULT hrFault);
  85436.  
  85437.  
  85438.     } IChannelHookVtbl;
  85439.  
  85440.     struct IChannelHook
  85441.     {
  85442.                    struct IChannelHookVtbl *lpVtbl;
  85443.     };
  85444. # 3907 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85445. #pragma endregion
  85446.  
  85447.  
  85448. #pragma region Application Family or OneCore Family
  85449.  
  85450.  
  85451.  
  85452. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0023_v0_0_c_ifspec;
  85453. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0023_v0_0_s_ifspec;
  85454.  
  85455.  
  85456.  
  85457.  
  85458.  
  85459.  
  85460.  
  85461. typedef struct tagSOLE_AUTHENTICATION_SERVICE
  85462.     {
  85463.     DWORD dwAuthnSvc;
  85464.     DWORD dwAuthzSvc;
  85465.     OLECHAR *pPrincipalName;
  85466.     HRESULT hr;
  85467.     } SOLE_AUTHENTICATION_SERVICE;
  85468.  
  85469. typedef SOLE_AUTHENTICATION_SERVICE *PSOLE_AUTHENTICATION_SERVICE;
  85470.  
  85471. typedef
  85472. enum tagEOLE_AUTHENTICATION_CAPABILITIES
  85473.     {
  85474.         EOAC_NONE = 0,
  85475.         EOAC_MUTUAL_AUTH = 0x1,
  85476.         EOAC_STATIC_CLOAKING = 0x20,
  85477.         EOAC_DYNAMIC_CLOAKING = 0x40,
  85478.         EOAC_ANY_AUTHORITY = 0x80,
  85479.         EOAC_MAKE_FULLSIC = 0x100,
  85480.         EOAC_DEFAULT = 0x800,
  85481.         EOAC_SECURE_REFS = 0x2,
  85482.         EOAC_ACCESS_CONTROL = 0x4,
  85483.         EOAC_APPID = 0x8,
  85484.         EOAC_DYNAMIC = 0x10,
  85485.         EOAC_REQUIRE_FULLSIC = 0x200,
  85486.         EOAC_AUTO_IMPERSONATE = 0x400,
  85487.         EOAC_DISABLE_AAA = 0x1000,
  85488.         EOAC_NO_CUSTOM_MARSHAL = 0x2000,
  85489.         EOAC_RESERVED1 = 0x4000
  85490.     } EOLE_AUTHENTICATION_CAPABILITIES;
  85491.  
  85492.  
  85493.  
  85494.  
  85495.  
  85496. typedef struct tagSOLE_AUTHENTICATION_INFO
  85497.     {
  85498.     DWORD dwAuthnSvc;
  85499.     DWORD dwAuthzSvc;
  85500.     void *pAuthInfo;
  85501.     } SOLE_AUTHENTICATION_INFO;
  85502.  
  85503. typedef struct tagSOLE_AUTHENTICATION_INFO *PSOLE_AUTHENTICATION_INFO;
  85504.  
  85505. typedef struct tagSOLE_AUTHENTICATION_LIST
  85506.     {
  85507.     DWORD cAuthInfo;
  85508.     SOLE_AUTHENTICATION_INFO *aAuthInfo;
  85509.     } SOLE_AUTHENTICATION_LIST;
  85510.  
  85511. typedef struct tagSOLE_AUTHENTICATION_LIST *PSOLE_AUTHENTICATION_LIST;
  85512.  
  85513.  
  85514. extern const IID IID_IClientSecurity;
  85515. # 4031 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85516.     typedef struct IClientSecurityVtbl
  85517.     {
  85518.  
  85519.  
  85520.         HRESULT ( __stdcall *QueryInterface )(
  85521.             IClientSecurity * This,
  85522.                        const IID * riid,
  85523.  
  85524.                           void **ppvObject);
  85525.  
  85526.         ULONG ( __stdcall *AddRef )(
  85527.             IClientSecurity * This);
  85528.  
  85529.         ULONG ( __stdcall *Release )(
  85530.             IClientSecurity * This);
  85531.  
  85532.         HRESULT ( __stdcall *QueryBlanket )(
  85533.             IClientSecurity * This,
  85534.  
  85535.                   IUnknown *pProxy,
  85536.  
  85537.                    DWORD *pAuthnSvc,
  85538.  
  85539.                        DWORD *pAuthzSvc,
  85540.  
  85541.                                   OLECHAR **pServerPrincName,
  85542.  
  85543.                        DWORD *pAuthnLevel,
  85544.  
  85545.                        DWORD *pImpLevel,
  85546.  
  85547.                                        void **pAuthInfo,
  85548.  
  85549.                        DWORD *pCapabilites);
  85550.  
  85551.         HRESULT ( __stdcall *SetBlanket )(
  85552.             IClientSecurity * This,
  85553.  
  85554.                   IUnknown *pProxy,
  85555.  
  85556.                   DWORD dwAuthnSvc,
  85557.  
  85558.                   DWORD dwAuthzSvc,
  85559.  
  85560.                            OLECHAR *pServerPrincName,
  85561.  
  85562.                   DWORD dwAuthnLevel,
  85563.  
  85564.                   DWORD dwImpLevel,
  85565.  
  85566.                       void *pAuthInfo,
  85567.  
  85568.                   DWORD dwCapabilities);
  85569.  
  85570.         HRESULT ( __stdcall *CopyProxy )(
  85571.             IClientSecurity * This,
  85572.  
  85573.                   IUnknown *pProxy,
  85574.  
  85575.                       IUnknown **ppCopy);
  85576.  
  85577.  
  85578.     } IClientSecurityVtbl;
  85579.  
  85580.     struct IClientSecurity
  85581.     {
  85582.                    struct IClientSecurityVtbl *lpVtbl;
  85583.     };
  85584. # 4139 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85585. #pragma endregion
  85586. #pragma region Desktop Family or OneCore Family
  85587.  
  85588.  
  85589.  
  85590. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0024_v0_0_c_ifspec;
  85591. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0024_v0_0_s_ifspec;
  85592. # 4154 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85593. extern const IID IID_IServerSecurity;
  85594. # 4189 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85595.     typedef struct IServerSecurityVtbl
  85596.     {
  85597.  
  85598.  
  85599.         HRESULT ( __stdcall *QueryInterface )(
  85600.             IServerSecurity * This,
  85601.                        const IID * riid,
  85602.  
  85603.                           void **ppvObject);
  85604.  
  85605.         ULONG ( __stdcall *AddRef )(
  85606.             IServerSecurity * This);
  85607.  
  85608.         ULONG ( __stdcall *Release )(
  85609.             IServerSecurity * This);
  85610.  
  85611.         HRESULT ( __stdcall *QueryBlanket )(
  85612.             IServerSecurity * This,
  85613.  
  85614.                        DWORD *pAuthnSvc,
  85615.  
  85616.                        DWORD *pAuthzSvc,
  85617.  
  85618.                                   OLECHAR **pServerPrincName,
  85619.  
  85620.                        DWORD *pAuthnLevel,
  85621.  
  85622.                        DWORD *pImpLevel,
  85623.  
  85624.                                        void **pPrivs,
  85625.  
  85626.                          DWORD *pCapabilities);
  85627.  
  85628.         HRESULT ( __stdcall *ImpersonateClient )(
  85629.             IServerSecurity * This);
  85630.  
  85631.         HRESULT ( __stdcall *RevertToSelf )(
  85632.             IServerSecurity * This);
  85633.  
  85634.         BOOL ( __stdcall *IsImpersonating )(
  85635.             IServerSecurity * This);
  85636.  
  85637.  
  85638.     } IServerSecurityVtbl;
  85639.  
  85640.     struct IServerSecurity
  85641.     {
  85642.                    struct IServerSecurityVtbl *lpVtbl;
  85643.     };
  85644. # 4280 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85645. typedef
  85646. enum tagRPCOPT_PROPERTIES
  85647.     {
  85648.         COMBND_RPCTIMEOUT = 0x1,
  85649.         COMBND_SERVER_LOCALITY = 0x2,
  85650.         COMBND_RESERVED1 = 0x4,
  85651.         COMBND_RESERVED2 = 0x5,
  85652.         COMBND_RESERVED3 = 0x8,
  85653.         COMBND_RESERVED4 = 0x10
  85654.     } RPCOPT_PROPERTIES;
  85655.  
  85656. typedef
  85657. enum tagRPCOPT_SERVER_LOCALITY_VALUES
  85658.     {
  85659.         SERVER_LOCALITY_PROCESS_LOCAL = 0,
  85660.         SERVER_LOCALITY_MACHINE_LOCAL = 1,
  85661.         SERVER_LOCALITY_REMOTE = 2
  85662.     } RPCOPT_SERVER_LOCALITY_VALUES;
  85663.  
  85664.  
  85665.  
  85666. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0025_v0_0_c_ifspec;
  85667. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0025_v0_0_s_ifspec;
  85668. # 4311 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85669. extern const IID IID_IRpcOptions;
  85670. # 4340 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85671.     typedef struct IRpcOptionsVtbl
  85672.     {
  85673.  
  85674.  
  85675.         HRESULT ( __stdcall *QueryInterface )(
  85676.             IRpcOptions * This,
  85677.                        const IID * riid,
  85678.  
  85679.                           void **ppvObject);
  85680.  
  85681.         ULONG ( __stdcall *AddRef )(
  85682.             IRpcOptions * This);
  85683.  
  85684.         ULONG ( __stdcall *Release )(
  85685.             IRpcOptions * This);
  85686.  
  85687.         HRESULT ( __stdcall *Set )(
  85688.             IRpcOptions * This,
  85689.  
  85690.                   IUnknown *pPrx,
  85691.  
  85692.                   RPCOPT_PROPERTIES dwProperty,
  85693.  
  85694.                   ULONG_PTR dwValue);
  85695.  
  85696.         HRESULT ( __stdcall *Query )(
  85697.             IRpcOptions * This,
  85698.  
  85699.                   IUnknown *pPrx,
  85700.  
  85701.                   RPCOPT_PROPERTIES dwProperty,
  85702.  
  85703.                    ULONG_PTR *pdwValue);
  85704.  
  85705.  
  85706.     } IRpcOptionsVtbl;
  85707.  
  85708.     struct IRpcOptions
  85709.     {
  85710.                    struct IRpcOptionsVtbl *lpVtbl;
  85711.     };
  85712. # 4418 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85713. #pragma endregion
  85714. #pragma region Application Family or OneCore Family
  85715.  
  85716. typedef
  85717. enum tagGLOBALOPT_PROPERTIES
  85718.     {
  85719.         COMGLB_EXCEPTION_HANDLING = 1,
  85720.         COMGLB_APPID = 2,
  85721.         COMGLB_RPC_THREADPOOL_SETTING = 3,
  85722.         COMGLB_RO_SETTINGS = 4,
  85723.         COMGLB_UNMARSHALING_POLICY = 5,
  85724.         COMGLB_PROPERTIES_RESERVED1 = 6,
  85725.         COMGLB_PROPERTIES_RESERVED2 = 7
  85726.     } GLOBALOPT_PROPERTIES;
  85727.  
  85728. typedef
  85729. enum tagGLOBALOPT_EH_VALUES
  85730.     {
  85731.         COMGLB_EXCEPTION_HANDLE = 0,
  85732.         COMGLB_EXCEPTION_DONOT_HANDLE_FATAL = 1,
  85733.         COMGLB_EXCEPTION_DONOT_HANDLE = COMGLB_EXCEPTION_DONOT_HANDLE_FATAL,
  85734.         COMGLB_EXCEPTION_DONOT_HANDLE_ANY = 2
  85735.     } GLOBALOPT_EH_VALUES;
  85736.  
  85737. typedef
  85738. enum tagGLOBALOPT_RPCTP_VALUES
  85739.     {
  85740.         COMGLB_RPC_THREADPOOL_SETTING_DEFAULT_POOL = 0,
  85741.         COMGLB_RPC_THREADPOOL_SETTING_PRIVATE_POOL = 1
  85742.     } GLOBALOPT_RPCTP_VALUES;
  85743.  
  85744. typedef
  85745. enum tagGLOBALOPT_RO_FLAGS
  85746.     {
  85747.         COMGLB_STA_MODALLOOP_REMOVE_TOUCH_MESSAGES = 0x1,
  85748.         COMGLB_STA_MODALLOOP_SHARED_QUEUE_REMOVE_INPUT_MESSAGES = 0x2,
  85749.         COMGLB_STA_MODALLOOP_SHARED_QUEUE_DONOT_REMOVE_INPUT_MESSAGES = 0x4,
  85750.         COMGLB_FAST_RUNDOWN = 0x8,
  85751.         COMGLB_RESERVED1 = 0x10,
  85752.         COMGLB_RESERVED2 = 0x20,
  85753.         COMGLB_RESERVED3 = 0x40,
  85754.         COMGLB_STA_MODALLOOP_SHARED_QUEUE_REORDER_POINTER_MESSAGES = 0x80,
  85755.         COMGLB_RESERVED4 = 0x100,
  85756.         COMGLB_RESERVED5 = 0x200,
  85757.         COMGLB_RESERVED6 = 0x400
  85758.     } GLOBALOPT_RO_FLAGS;
  85759.  
  85760. typedef
  85761. enum tagGLOBALOPT_UNMARSHALING_POLICY_VALUES
  85762.     {
  85763.         COMGLB_UNMARSHALING_POLICY_NORMAL = 0,
  85764.         COMGLB_UNMARSHALING_POLICY_STRONG = 1,
  85765.         COMGLB_UNMARSHALING_POLICY_HYBRID = 2
  85766.     } GLOBALOPT_UNMARSHALING_POLICY_VALUES;
  85767.  
  85768.  
  85769.  
  85770. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0026_v0_0_c_ifspec;
  85771. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0026_v0_0_s_ifspec;
  85772. # 4485 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85773. extern const IID IID_IGlobalOptions;
  85774. # 4510 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85775.     typedef struct IGlobalOptionsVtbl
  85776.     {
  85777.  
  85778.  
  85779.         HRESULT ( __stdcall *QueryInterface )(
  85780.             IGlobalOptions * This,
  85781.                        const IID * riid,
  85782.  
  85783.                           void **ppvObject);
  85784.  
  85785.         ULONG ( __stdcall *AddRef )(
  85786.             IGlobalOptions * This);
  85787.  
  85788.         ULONG ( __stdcall *Release )(
  85789.             IGlobalOptions * This);
  85790.  
  85791.         HRESULT ( __stdcall *Set )(
  85792.             IGlobalOptions * This,
  85793.  
  85794.                   GLOBALOPT_PROPERTIES dwProperty,
  85795.  
  85796.                   ULONG_PTR dwValue);
  85797.  
  85798.         HRESULT ( __stdcall *Query )(
  85799.             IGlobalOptions * This,
  85800.  
  85801.                   GLOBALOPT_PROPERTIES dwProperty,
  85802.  
  85803.                    ULONG_PTR *pdwValue);
  85804.  
  85805.  
  85806.     } IGlobalOptionsVtbl;
  85807.  
  85808.     struct IGlobalOptions
  85809.     {
  85810.                    struct IGlobalOptionsVtbl *lpVtbl;
  85811.     };
  85812. # 4584 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85813. #pragma endregion
  85814.  
  85815. #pragma region Application Family or OneCore Family
  85816.  
  85817.  
  85818.  
  85819. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0027_v0_0_c_ifspec;
  85820. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0027_v0_0_s_ifspec;
  85821.  
  85822.  
  85823.  
  85824.  
  85825.  
  85826.  
  85827.  
  85828. typedef ISurrogate *LPSURROGATE;
  85829.  
  85830.  
  85831. extern const IID IID_ISurrogate;
  85832. # 4620 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85833.     typedef struct ISurrogateVtbl
  85834.     {
  85835.  
  85836.  
  85837.         HRESULT ( __stdcall *QueryInterface )(
  85838.                       ISurrogate * This,
  85839.                                  const IID * riid,
  85840.  
  85841.                           void **ppvObject);
  85842.  
  85843.         ULONG ( __stdcall *AddRef )(
  85844.                       ISurrogate * This);
  85845.  
  85846.         ULONG ( __stdcall *Release )(
  85847.                       ISurrogate * This);
  85848.  
  85849.         HRESULT ( __stdcall *LoadDllServer )(
  85850.                       ISurrogate * This,
  85851.                                  const IID * Clsid);
  85852.  
  85853.         HRESULT ( __stdcall *FreeSurrogate )(
  85854.                       ISurrogate * This);
  85855.  
  85856.  
  85857.     } ISurrogateVtbl;
  85858.  
  85859.     struct ISurrogate
  85860.     {
  85861.                    struct ISurrogateVtbl *lpVtbl;
  85862.     };
  85863. # 4689 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85864. typedef IGlobalInterfaceTable *LPGLOBALINTERFACETABLE;
  85865.  
  85866.  
  85867. extern const IID IID_IGlobalInterfaceTable;
  85868. # 4725 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85869.     typedef struct IGlobalInterfaceTableVtbl
  85870.     {
  85871.  
  85872.  
  85873.         HRESULT ( __stdcall *QueryInterface )(
  85874.             IGlobalInterfaceTable * This,
  85875.                        const IID * riid,
  85876.  
  85877.                           void **ppvObject);
  85878.  
  85879.         ULONG ( __stdcall *AddRef )(
  85880.             IGlobalInterfaceTable * This);
  85881.  
  85882.         ULONG ( __stdcall *Release )(
  85883.             IGlobalInterfaceTable * This);
  85884.  
  85885.         HRESULT ( __stdcall *RegisterInterfaceInGlobal )(
  85886.             IGlobalInterfaceTable * This,
  85887.  
  85888.                   IUnknown *pUnk,
  85889.  
  85890.                   const IID * riid,
  85891.  
  85892.                    DWORD *pdwCookie);
  85893.  
  85894.         HRESULT ( __stdcall *RevokeInterfaceFromGlobal )(
  85895.             IGlobalInterfaceTable * This,
  85896.  
  85897.                   DWORD dwCookie);
  85898.  
  85899.         HRESULT ( __stdcall *GetInterfaceFromGlobal )(
  85900.             IGlobalInterfaceTable * This,
  85901.  
  85902.                   DWORD dwCookie,
  85903.  
  85904.                   const IID * riid,
  85905.  
  85906.                       void **ppv);
  85907.  
  85908.  
  85909.     } IGlobalInterfaceTableVtbl;
  85910.  
  85911.     struct IGlobalInterfaceTable
  85912.     {
  85913.                    struct IGlobalInterfaceTableVtbl *lpVtbl;
  85914.     };
  85915. # 4811 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85916. #pragma endregion
  85917. #pragma region Desktop Family or OneCore Family
  85918.  
  85919.  
  85920.  
  85921. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0029_v0_0_c_ifspec;
  85922. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0029_v0_0_s_ifspec;
  85923. # 4826 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85924. extern const IID IID_ISynchronize;
  85925. # 4847 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85926.     typedef struct ISynchronizeVtbl
  85927.     {
  85928.  
  85929.  
  85930.         HRESULT ( __stdcall *QueryInterface )(
  85931.                       ISynchronize * This,
  85932.                                  const IID * riid,
  85933.  
  85934.                           void **ppvObject);
  85935.  
  85936.         ULONG ( __stdcall *AddRef )(
  85937.                       ISynchronize * This);
  85938.  
  85939.         ULONG ( __stdcall *Release )(
  85940.                       ISynchronize * This);
  85941.  
  85942.         HRESULT ( __stdcall *Wait )(
  85943.                       ISynchronize * This,
  85944.                        DWORD dwFlags,
  85945.                        DWORD dwMilliseconds);
  85946.  
  85947.         HRESULT ( __stdcall *Signal )(
  85948.                       ISynchronize * This);
  85949.  
  85950.         HRESULT ( __stdcall *Reset )(
  85951.                       ISynchronize * This);
  85952.  
  85953.  
  85954.     } ISynchronizeVtbl;
  85955.  
  85956.     struct ISynchronize
  85957.     {
  85958.                    struct ISynchronizeVtbl *lpVtbl;
  85959.     };
  85960. # 4924 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85961. extern const IID IID_ISynchronizeHandle;
  85962. # 4941 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85963.     typedef struct ISynchronizeHandleVtbl
  85964.     {
  85965.  
  85966.  
  85967.         HRESULT ( __stdcall *QueryInterface )(
  85968.             ISynchronizeHandle * This,
  85969.                        const IID * riid,
  85970.  
  85971.                           void **ppvObject);
  85972.  
  85973.         ULONG ( __stdcall *AddRef )(
  85974.             ISynchronizeHandle * This);
  85975.  
  85976.         ULONG ( __stdcall *Release )(
  85977.             ISynchronizeHandle * This);
  85978.  
  85979.         HRESULT ( __stdcall *GetHandle )(
  85980.             ISynchronizeHandle * This,
  85981.  
  85982.                    HANDLE *ph);
  85983.  
  85984.  
  85985.     } ISynchronizeHandleVtbl;
  85986.  
  85987.     struct ISynchronizeHandle
  85988.     {
  85989.                    struct ISynchronizeHandleVtbl *lpVtbl;
  85990.     };
  85991. # 5006 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85992. extern const IID IID_ISynchronizeEvent;
  85993. # 5023 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  85994.     typedef struct ISynchronizeEventVtbl
  85995.     {
  85996.  
  85997.  
  85998.         HRESULT ( __stdcall *QueryInterface )(
  85999.             ISynchronizeEvent * This,
  86000.                        const IID * riid,
  86001.  
  86002.                           void **ppvObject);
  86003.  
  86004.         ULONG ( __stdcall *AddRef )(
  86005.             ISynchronizeEvent * This);
  86006.  
  86007.         ULONG ( __stdcall *Release )(
  86008.             ISynchronizeEvent * This);
  86009.  
  86010.         HRESULT ( __stdcall *GetHandle )(
  86011.             ISynchronizeEvent * This,
  86012.  
  86013.                    HANDLE *ph);
  86014.  
  86015.         HRESULT ( __stdcall *SetEventHandle )(
  86016.             ISynchronizeEvent * This,
  86017.  
  86018.                   HANDLE *ph);
  86019.  
  86020.  
  86021.     } ISynchronizeEventVtbl;
  86022.  
  86023.     struct ISynchronizeEvent
  86024.     {
  86025.                    struct ISynchronizeEventVtbl *lpVtbl;
  86026.     };
  86027. # 5097 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86028. extern const IID IID_ISynchronizeContainer;
  86029. # 5122 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86030.     typedef struct ISynchronizeContainerVtbl
  86031.     {
  86032.  
  86033.  
  86034.         HRESULT ( __stdcall *QueryInterface )(
  86035.             ISynchronizeContainer * This,
  86036.                        const IID * riid,
  86037.  
  86038.                           void **ppvObject);
  86039.  
  86040.         ULONG ( __stdcall *AddRef )(
  86041.             ISynchronizeContainer * This);
  86042.  
  86043.         ULONG ( __stdcall *Release )(
  86044.             ISynchronizeContainer * This);
  86045.  
  86046.         HRESULT ( __stdcall *AddSynchronize )(
  86047.             ISynchronizeContainer * This,
  86048.  
  86049.                   ISynchronize *pSync);
  86050.  
  86051.         HRESULT ( __stdcall *WaitMultiple )(
  86052.             ISynchronizeContainer * This,
  86053.  
  86054.                   DWORD dwFlags,
  86055.  
  86056.                   DWORD dwTimeOut,
  86057.  
  86058.                       ISynchronize **ppSync);
  86059.  
  86060.  
  86061.     } ISynchronizeContainerVtbl;
  86062.  
  86063.     struct ISynchronizeContainer
  86064.     {
  86065.                    struct ISynchronizeContainerVtbl *lpVtbl;
  86066.     };
  86067. # 5199 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86068. extern const IID IID_ISynchronizeMutex;
  86069. # 5214 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86070.     typedef struct ISynchronizeMutexVtbl
  86071.     {
  86072.  
  86073.  
  86074.         HRESULT ( __stdcall *QueryInterface )(
  86075.             ISynchronizeMutex * This,
  86076.                        const IID * riid,
  86077.  
  86078.                           void **ppvObject);
  86079.  
  86080.         ULONG ( __stdcall *AddRef )(
  86081.             ISynchronizeMutex * This);
  86082.  
  86083.         ULONG ( __stdcall *Release )(
  86084.             ISynchronizeMutex * This);
  86085.  
  86086.         HRESULT ( __stdcall *Wait )(
  86087.             ISynchronizeMutex * This,
  86088.                        DWORD dwFlags,
  86089.                        DWORD dwMilliseconds);
  86090.  
  86091.         HRESULT ( __stdcall *Signal )(
  86092.             ISynchronizeMutex * This);
  86093.  
  86094.         HRESULT ( __stdcall *Reset )(
  86095.             ISynchronizeMutex * This);
  86096.  
  86097.         HRESULT ( __stdcall *ReleaseMutex )(
  86098.             ISynchronizeMutex * This);
  86099.  
  86100.  
  86101.     } ISynchronizeMutexVtbl;
  86102.  
  86103.     struct ISynchronizeMutex
  86104.     {
  86105.                    struct ISynchronizeMutexVtbl *lpVtbl;
  86106.     };
  86107. # 5297 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86108. typedef ICancelMethodCalls *LPCANCELMETHODCALLS;
  86109.  
  86110.  
  86111. extern const IID IID_ICancelMethodCalls;
  86112. # 5319 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86113.     typedef struct ICancelMethodCallsVtbl
  86114.     {
  86115.  
  86116.  
  86117.         HRESULT ( __stdcall *QueryInterface )(
  86118.             ICancelMethodCalls * This,
  86119.                        const IID * riid,
  86120.  
  86121.                           void **ppvObject);
  86122.  
  86123.         ULONG ( __stdcall *AddRef )(
  86124.             ICancelMethodCalls * This);
  86125.  
  86126.         ULONG ( __stdcall *Release )(
  86127.             ICancelMethodCalls * This);
  86128.  
  86129.         HRESULT ( __stdcall *Cancel )(
  86130.             ICancelMethodCalls * This,
  86131.  
  86132.                   ULONG ulSeconds);
  86133.  
  86134.         HRESULT ( __stdcall *TestCancel )(
  86135.             ICancelMethodCalls * This);
  86136.  
  86137.  
  86138.     } ICancelMethodCallsVtbl;
  86139.  
  86140.     struct ICancelMethodCalls
  86141.     {
  86142.                    struct ICancelMethodCallsVtbl *lpVtbl;
  86143.     };
  86144. # 5389 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86145. typedef
  86146. enum tagDCOM_CALL_STATE
  86147.     {
  86148.         DCOM_NONE = 0,
  86149.         DCOM_CALL_COMPLETE = 0x1,
  86150.         DCOM_CALL_CANCELED = 0x2
  86151.     } DCOM_CALL_STATE;
  86152.  
  86153.  
  86154. extern const IID IID_IAsyncManager;
  86155. # 5425 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86156.     typedef struct IAsyncManagerVtbl
  86157.     {
  86158.  
  86159.  
  86160.         HRESULT ( __stdcall *QueryInterface )(
  86161.             IAsyncManager * This,
  86162.                        const IID * riid,
  86163.  
  86164.                           void **ppvObject);
  86165.  
  86166.         ULONG ( __stdcall *AddRef )(
  86167.             IAsyncManager * This);
  86168.  
  86169.         ULONG ( __stdcall *Release )(
  86170.             IAsyncManager * This);
  86171.  
  86172.         HRESULT ( __stdcall *CompleteCall )(
  86173.             IAsyncManager * This,
  86174.  
  86175.                   HRESULT Result);
  86176.  
  86177.         HRESULT ( __stdcall *GetCallContext )(
  86178.             IAsyncManager * This,
  86179.  
  86180.                   const IID * riid,
  86181.  
  86182.                       void **pInterface);
  86183.  
  86184.         HRESULT ( __stdcall *GetState )(
  86185.             IAsyncManager * This,
  86186.  
  86187.                    ULONG *pulStateFlags);
  86188.  
  86189.  
  86190.     } IAsyncManagerVtbl;
  86191.  
  86192.     struct IAsyncManager
  86193.     {
  86194.                    struct IAsyncManagerVtbl *lpVtbl;
  86195.     };
  86196. # 5508 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86197. extern const IID IID_ICallFactory;
  86198. # 5531 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86199.     typedef struct ICallFactoryVtbl
  86200.     {
  86201.  
  86202.  
  86203.         HRESULT ( __stdcall *QueryInterface )(
  86204.             ICallFactory * This,
  86205.                        const IID * riid,
  86206.  
  86207.                           void **ppvObject);
  86208.  
  86209.         ULONG ( __stdcall *AddRef )(
  86210.             ICallFactory * This);
  86211.  
  86212.         ULONG ( __stdcall *Release )(
  86213.             ICallFactory * This);
  86214.  
  86215.         HRESULT ( __stdcall *CreateCall )(
  86216.             ICallFactory * This,
  86217.  
  86218.                   const IID * riid,
  86219.  
  86220.                       IUnknown *pCtrlUnk,
  86221.  
  86222.                   const IID * riid2,
  86223.  
  86224.                       IUnknown **ppv);
  86225.  
  86226.  
  86227.     } ICallFactoryVtbl;
  86228.  
  86229.     struct ICallFactory
  86230.     {
  86231.                    struct ICallFactoryVtbl *lpVtbl;
  86232.     };
  86233. # 5602 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86234. extern const IID IID_IRpcHelper;
  86235. # 5625 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86236.     typedef struct IRpcHelperVtbl
  86237.     {
  86238.  
  86239.  
  86240.         HRESULT ( __stdcall *QueryInterface )(
  86241.             IRpcHelper * This,
  86242.                        const IID * riid,
  86243.  
  86244.                           void **ppvObject);
  86245.  
  86246.         ULONG ( __stdcall *AddRef )(
  86247.             IRpcHelper * This);
  86248.  
  86249.         ULONG ( __stdcall *Release )(
  86250.             IRpcHelper * This);
  86251.  
  86252.         HRESULT ( __stdcall *GetDCOMProtocolVersion )(
  86253.             IRpcHelper * This,
  86254.  
  86255.                    DWORD *pComVersion);
  86256.  
  86257.         HRESULT ( __stdcall *GetIIDFromOBJREF )(
  86258.             IRpcHelper * This,
  86259.  
  86260.                   void *pObjRef,
  86261.  
  86262.                       IID **piid);
  86263.  
  86264.  
  86265.     } IRpcHelperVtbl;
  86266.  
  86267.     struct IRpcHelper
  86268.     {
  86269.                    struct IRpcHelperVtbl *lpVtbl;
  86270.     };
  86271. # 5700 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86272. extern const IID IID_IReleaseMarshalBuffers;
  86273. # 5721 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86274.     typedef struct IReleaseMarshalBuffersVtbl
  86275.     {
  86276.  
  86277.  
  86278.         HRESULT ( __stdcall *QueryInterface )(
  86279.             IReleaseMarshalBuffers * This,
  86280.                        const IID * riid,
  86281.  
  86282.                           void **ppvObject);
  86283.  
  86284.         ULONG ( __stdcall *AddRef )(
  86285.             IReleaseMarshalBuffers * This);
  86286.  
  86287.         ULONG ( __stdcall *Release )(
  86288.             IReleaseMarshalBuffers * This);
  86289.  
  86290.         HRESULT ( __stdcall *ReleaseMarshalBuffer )(
  86291.             IReleaseMarshalBuffers * This,
  86292.  
  86293.                      RPCOLEMESSAGE *pMsg,
  86294.  
  86295.                   DWORD dwFlags,
  86296.  
  86297.                       IUnknown *pChnl);
  86298.  
  86299.  
  86300.     } IReleaseMarshalBuffersVtbl;
  86301.  
  86302.     struct IReleaseMarshalBuffers
  86303.     {
  86304.                    struct IReleaseMarshalBuffersVtbl *lpVtbl;
  86305.     };
  86306. # 5790 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86307. extern const IID IID_IWaitMultiple;
  86308. # 5813 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86309.     typedef struct IWaitMultipleVtbl
  86310.     {
  86311.  
  86312.  
  86313.         HRESULT ( __stdcall *QueryInterface )(
  86314.             IWaitMultiple * This,
  86315.                        const IID * riid,
  86316.  
  86317.                           void **ppvObject);
  86318.  
  86319.         ULONG ( __stdcall *AddRef )(
  86320.             IWaitMultiple * This);
  86321.  
  86322.         ULONG ( __stdcall *Release )(
  86323.             IWaitMultiple * This);
  86324.  
  86325.         HRESULT ( __stdcall *WaitMultiple )(
  86326.             IWaitMultiple * This,
  86327.  
  86328.                   DWORD timeout,
  86329.  
  86330.                       ISynchronize **pSync);
  86331.  
  86332.         HRESULT ( __stdcall *AddSynchronize )(
  86333.             IWaitMultiple * This,
  86334.  
  86335.                   ISynchronize *pSync);
  86336.  
  86337.  
  86338.     } IWaitMultipleVtbl;
  86339.  
  86340.     struct IWaitMultiple
  86341.     {
  86342.                    struct IWaitMultipleVtbl *lpVtbl;
  86343.     };
  86344. # 5887 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86345. typedef IAddrTrackingControl *LPADDRTRACKINGCONTROL;
  86346.  
  86347.  
  86348. extern const IID IID_IAddrTrackingControl;
  86349. # 5907 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86350.     typedef struct IAddrTrackingControlVtbl
  86351.     {
  86352.  
  86353.  
  86354.         HRESULT ( __stdcall *QueryInterface )(
  86355.             IAddrTrackingControl * This,
  86356.                        const IID * riid,
  86357.  
  86358.                           void **ppvObject);
  86359.  
  86360.         ULONG ( __stdcall *AddRef )(
  86361.             IAddrTrackingControl * This);
  86362.  
  86363.         ULONG ( __stdcall *Release )(
  86364.             IAddrTrackingControl * This);
  86365.  
  86366.         HRESULT ( __stdcall *EnableCOMDynamicAddrTracking )(
  86367.             IAddrTrackingControl * This);
  86368.  
  86369.         HRESULT ( __stdcall *DisableCOMDynamicAddrTracking )(
  86370.             IAddrTrackingControl * This);
  86371.  
  86372.  
  86373.     } IAddrTrackingControlVtbl;
  86374.  
  86375.     struct IAddrTrackingControl
  86376.     {
  86377.                    struct IAddrTrackingControlVtbl *lpVtbl;
  86378.     };
  86379. # 5975 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86380. typedef IAddrExclusionControl *LPADDREXCLUSIONCONTROL;
  86381.  
  86382.  
  86383. extern const IID IID_IAddrExclusionControl;
  86384. # 6001 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86385.     typedef struct IAddrExclusionControlVtbl
  86386.     {
  86387.  
  86388.  
  86389.         HRESULT ( __stdcall *QueryInterface )(
  86390.             IAddrExclusionControl * This,
  86391.                        const IID * riid,
  86392.  
  86393.                           void **ppvObject);
  86394.  
  86395.         ULONG ( __stdcall *AddRef )(
  86396.             IAddrExclusionControl * This);
  86397.  
  86398.         ULONG ( __stdcall *Release )(
  86399.             IAddrExclusionControl * This);
  86400.  
  86401.         HRESULT ( __stdcall *GetCurrentAddrExclusionList )(
  86402.             IAddrExclusionControl * This,
  86403.  
  86404.                   const IID * riid,
  86405.  
  86406.                       void **ppEnumerator);
  86407.  
  86408.         HRESULT ( __stdcall *UpdateAddrExclusionList )(
  86409.             IAddrExclusionControl * This,
  86410.  
  86411.                   IUnknown *pEnumerator);
  86412.  
  86413.  
  86414.     } IAddrExclusionControlVtbl;
  86415.  
  86416.     struct IAddrExclusionControl
  86417.     {
  86418.                    struct IAddrExclusionControlVtbl *lpVtbl;
  86419.     };
  86420. # 6076 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86421. extern const IID IID_IPipeByte;
  86422. # 6098 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86423.     typedef struct IPipeByteVtbl
  86424.     {
  86425.  
  86426.  
  86427.         HRESULT ( __stdcall *QueryInterface )(
  86428.                       IPipeByte * This,
  86429.                                  const IID * riid,
  86430.  
  86431.                           void **ppvObject);
  86432.  
  86433.         ULONG ( __stdcall *AddRef )(
  86434.                       IPipeByte * This);
  86435.  
  86436.         ULONG ( __stdcall *Release )(
  86437.                       IPipeByte * This);
  86438.  
  86439.         HRESULT ( __stdcall *Pull )(
  86440.                       IPipeByte * This,
  86441.                                                                                           BYTE *buf,
  86442.                        ULONG cRequest,
  86443.                                    ULONG *pcReturned);
  86444.  
  86445.         HRESULT ( __stdcall *Push )(
  86446.                       IPipeByte * This,
  86447.                                                              BYTE *buf,
  86448.                        ULONG cSent);
  86449.  
  86450.  
  86451.     } IPipeByteVtbl;
  86452.  
  86453.     struct IPipeByte
  86454.     {
  86455.                    struct IPipeByteVtbl *lpVtbl;
  86456.     };
  86457. # 6172 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86458. extern const IID IID_AsyncIPipeByte;
  86459. # 6198 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86460.     typedef struct AsyncIPipeByteVtbl
  86461.     {
  86462.  
  86463.  
  86464.         HRESULT ( __stdcall *QueryInterface )(
  86465.                       AsyncIPipeByte * This,
  86466.                                  const IID * riid,
  86467.  
  86468.                           void **ppvObject);
  86469.  
  86470.         ULONG ( __stdcall *AddRef )(
  86471.                       AsyncIPipeByte * This);
  86472.  
  86473.         ULONG ( __stdcall *Release )(
  86474.                       AsyncIPipeByte * This);
  86475.  
  86476.         HRESULT ( __stdcall *Begin_Pull )(
  86477.                       AsyncIPipeByte * This,
  86478.                        ULONG cRequest);
  86479.  
  86480.         HRESULT ( __stdcall *Finish_Pull )(
  86481.                       AsyncIPipeByte * This,
  86482.                                                                                           BYTE *buf,
  86483.                                    ULONG *pcReturned);
  86484.  
  86485.         HRESULT ( __stdcall *Begin_Push )(
  86486.                       AsyncIPipeByte * This,
  86487.                                                              BYTE *buf,
  86488.                        ULONG cSent);
  86489.  
  86490.         HRESULT ( __stdcall *Finish_Push )(
  86491.                       AsyncIPipeByte * This);
  86492.  
  86493.  
  86494.     } AsyncIPipeByteVtbl;
  86495.  
  86496.     struct AsyncIPipeByte
  86497.     {
  86498.                    struct AsyncIPipeByteVtbl *lpVtbl;
  86499.     };
  86500. # 6284 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86501. extern const IID IID_IPipeLong;
  86502. # 6306 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86503.     typedef struct IPipeLongVtbl
  86504.     {
  86505.  
  86506.  
  86507.         HRESULT ( __stdcall *QueryInterface )(
  86508.                       IPipeLong * This,
  86509.                                  const IID * riid,
  86510.  
  86511.                           void **ppvObject);
  86512.  
  86513.         ULONG ( __stdcall *AddRef )(
  86514.                       IPipeLong * This);
  86515.  
  86516.         ULONG ( __stdcall *Release )(
  86517.                       IPipeLong * This);
  86518.  
  86519.         HRESULT ( __stdcall *Pull )(
  86520.                       IPipeLong * This,
  86521.                                                                                           LONG *buf,
  86522.                        ULONG cRequest,
  86523.                                    ULONG *pcReturned);
  86524.  
  86525.         HRESULT ( __stdcall *Push )(
  86526.                       IPipeLong * This,
  86527.                                                              LONG *buf,
  86528.                        ULONG cSent);
  86529.  
  86530.  
  86531.     } IPipeLongVtbl;
  86532.  
  86533.     struct IPipeLong
  86534.     {
  86535.                    struct IPipeLongVtbl *lpVtbl;
  86536.     };
  86537. # 6380 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86538. extern const IID IID_AsyncIPipeLong;
  86539. # 6406 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86540.     typedef struct AsyncIPipeLongVtbl
  86541.     {
  86542.  
  86543.  
  86544.         HRESULT ( __stdcall *QueryInterface )(
  86545.                       AsyncIPipeLong * This,
  86546.                                  const IID * riid,
  86547.  
  86548.                           void **ppvObject);
  86549.  
  86550.         ULONG ( __stdcall *AddRef )(
  86551.                       AsyncIPipeLong * This);
  86552.  
  86553.         ULONG ( __stdcall *Release )(
  86554.                       AsyncIPipeLong * This);
  86555.  
  86556.         HRESULT ( __stdcall *Begin_Pull )(
  86557.                       AsyncIPipeLong * This,
  86558.                        ULONG cRequest);
  86559.  
  86560.         HRESULT ( __stdcall *Finish_Pull )(
  86561.                       AsyncIPipeLong * This,
  86562.                                                                                           LONG *buf,
  86563.                                    ULONG *pcReturned);
  86564.  
  86565.         HRESULT ( __stdcall *Begin_Push )(
  86566.                       AsyncIPipeLong * This,
  86567.                                                              LONG *buf,
  86568.                        ULONG cSent);
  86569.  
  86570.         HRESULT ( __stdcall *Finish_Push )(
  86571.                       AsyncIPipeLong * This);
  86572.  
  86573.  
  86574.     } AsyncIPipeLongVtbl;
  86575.  
  86576.     struct AsyncIPipeLong
  86577.     {
  86578.                    struct AsyncIPipeLongVtbl *lpVtbl;
  86579.     };
  86580. # 6492 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86581. extern const IID IID_IPipeDouble;
  86582. # 6514 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86583.     typedef struct IPipeDoubleVtbl
  86584.     {
  86585.  
  86586.  
  86587.         HRESULT ( __stdcall *QueryInterface )(
  86588.                       IPipeDouble * This,
  86589.                                  const IID * riid,
  86590.  
  86591.                           void **ppvObject);
  86592.  
  86593.         ULONG ( __stdcall *AddRef )(
  86594.                       IPipeDouble * This);
  86595.  
  86596.         ULONG ( __stdcall *Release )(
  86597.                       IPipeDouble * This);
  86598.  
  86599.         HRESULT ( __stdcall *Pull )(
  86600.                       IPipeDouble * This,
  86601.                                                                                           DOUBLE *buf,
  86602.                        ULONG cRequest,
  86603.                                    ULONG *pcReturned);
  86604.  
  86605.         HRESULT ( __stdcall *Push )(
  86606.                       IPipeDouble * This,
  86607.                                                              DOUBLE *buf,
  86608.                        ULONG cSent);
  86609.  
  86610.  
  86611.     } IPipeDoubleVtbl;
  86612.  
  86613.     struct IPipeDouble
  86614.     {
  86615.                    struct IPipeDoubleVtbl *lpVtbl;
  86616.     };
  86617. # 6588 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86618. extern const IID IID_AsyncIPipeDouble;
  86619. # 6614 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86620.     typedef struct AsyncIPipeDoubleVtbl
  86621.     {
  86622.  
  86623.  
  86624.         HRESULT ( __stdcall *QueryInterface )(
  86625.                       AsyncIPipeDouble * This,
  86626.                                  const IID * riid,
  86627.  
  86628.                           void **ppvObject);
  86629.  
  86630.         ULONG ( __stdcall *AddRef )(
  86631.                       AsyncIPipeDouble * This);
  86632.  
  86633.         ULONG ( __stdcall *Release )(
  86634.                       AsyncIPipeDouble * This);
  86635.  
  86636.         HRESULT ( __stdcall *Begin_Pull )(
  86637.                       AsyncIPipeDouble * This,
  86638.                        ULONG cRequest);
  86639.  
  86640.         HRESULT ( __stdcall *Finish_Pull )(
  86641.                       AsyncIPipeDouble * This,
  86642.                                                                                           DOUBLE *buf,
  86643.                                    ULONG *pcReturned);
  86644.  
  86645.         HRESULT ( __stdcall *Begin_Push )(
  86646.                       AsyncIPipeDouble * This,
  86647.                                                              DOUBLE *buf,
  86648.                        ULONG cSent);
  86649.  
  86650.         HRESULT ( __stdcall *Finish_Push )(
  86651.                       AsyncIPipeDouble * This);
  86652.  
  86653.  
  86654.     } AsyncIPipeDoubleVtbl;
  86655.  
  86656.     struct AsyncIPipeDouble
  86657.     {
  86658.                    struct AsyncIPipeDoubleVtbl *lpVtbl;
  86659.     };
  86660. # 7163 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86661. #pragma endregion
  86662. #pragma region Application Family or OneCore Family
  86663.  
  86664. typedef
  86665. enum _APTTYPEQUALIFIER
  86666.     {
  86667.         APTTYPEQUALIFIER_NONE = 0,
  86668.         APTTYPEQUALIFIER_IMPLICIT_MTA = 1,
  86669.         APTTYPEQUALIFIER_NA_ON_MTA = 2,
  86670.         APTTYPEQUALIFIER_NA_ON_STA = 3,
  86671.         APTTYPEQUALIFIER_NA_ON_IMPLICIT_MTA = 4,
  86672.         APTTYPEQUALIFIER_NA_ON_MAINSTA = 5,
  86673.         APTTYPEQUALIFIER_APPLICATION_STA = 6
  86674.     } APTTYPEQUALIFIER;
  86675.  
  86676. typedef
  86677. enum _APTTYPE
  86678.     {
  86679.         APTTYPE_CURRENT = -1,
  86680.         APTTYPE_STA = 0,
  86681.         APTTYPE_MTA = 1,
  86682.         APTTYPE_NA = 2,
  86683.         APTTYPE_MAINSTA = 3
  86684.     } APTTYPE;
  86685.  
  86686.  
  86687. #pragma endregion
  86688. #pragma region Desktop Family or OneCore Family
  86689.  
  86690. typedef
  86691. enum _THDTYPE
  86692.     {
  86693.         THDTYPE_BLOCKMESSAGES = 0,
  86694.         THDTYPE_PROCESSMESSAGES = 1
  86695.     } THDTYPE;
  86696.  
  86697. typedef DWORD APARTMENTID;
  86698.  
  86699.  
  86700.  
  86701. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0048_v0_0_c_ifspec;
  86702. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0048_v0_0_s_ifspec;
  86703. # 7213 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86704. extern const IID IID_IComThreadingInfo;
  86705. # 7242 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86706.     typedef struct IComThreadingInfoVtbl
  86707.     {
  86708.  
  86709.  
  86710.         HRESULT ( __stdcall *QueryInterface )(
  86711.             IComThreadingInfo * This,
  86712.                        const IID * riid,
  86713.  
  86714.                           void **ppvObject);
  86715.  
  86716.         ULONG ( __stdcall *AddRef )(
  86717.             IComThreadingInfo * This);
  86718.  
  86719.         ULONG ( __stdcall *Release )(
  86720.             IComThreadingInfo * This);
  86721.  
  86722.         HRESULT ( __stdcall *GetCurrentApartmentType )(
  86723.             IComThreadingInfo * This,
  86724.  
  86725.                    APTTYPE *pAptType);
  86726.  
  86727.         HRESULT ( __stdcall *GetCurrentThreadType )(
  86728.             IComThreadingInfo * This,
  86729.  
  86730.                    THDTYPE *pThreadType);
  86731.  
  86732.         HRESULT ( __stdcall *GetCurrentLogicalThreadId )(
  86733.             IComThreadingInfo * This,
  86734.  
  86735.                    GUID *pguidLogicalThreadId);
  86736.  
  86737.         HRESULT ( __stdcall *SetCurrentLogicalThreadId )(
  86738.             IComThreadingInfo * This,
  86739.  
  86740.                   const GUID * rguid);
  86741.  
  86742.  
  86743.     } IComThreadingInfoVtbl;
  86744.  
  86745.     struct IComThreadingInfo
  86746.     {
  86747.                    struct IComThreadingInfoVtbl *lpVtbl;
  86748.     };
  86749. # 7331 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86750. extern const IID IID_IProcessInitControl;
  86751. # 7347 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86752.     typedef struct IProcessInitControlVtbl
  86753.     {
  86754.  
  86755.  
  86756.         HRESULT ( __stdcall *QueryInterface )(
  86757.                       IProcessInitControl * This,
  86758.                                  const IID * riid,
  86759.  
  86760.                           void **ppvObject);
  86761.  
  86762.         ULONG ( __stdcall *AddRef )(
  86763.                       IProcessInitControl * This);
  86764.  
  86765.         ULONG ( __stdcall *Release )(
  86766.                       IProcessInitControl * This);
  86767.  
  86768.         HRESULT ( __stdcall *ResetInitializerTimeout )(
  86769.                       IProcessInitControl * This,
  86770.                        DWORD dwSecondsRemaining);
  86771.  
  86772.  
  86773.     } IProcessInitControlVtbl;
  86774.  
  86775.     struct IProcessInitControl
  86776.     {
  86777.                    struct IProcessInitControlVtbl *lpVtbl;
  86778.     };
  86779. # 7411 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86780. extern const IID IID_IFastRundown;
  86781. # 7424 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86782.     typedef struct IFastRundownVtbl
  86783.     {
  86784.  
  86785.  
  86786.         HRESULT ( __stdcall *QueryInterface )(
  86787.             IFastRundown * This,
  86788.                        const IID * riid,
  86789.  
  86790.                           void **ppvObject);
  86791.  
  86792.         ULONG ( __stdcall *AddRef )(
  86793.             IFastRundown * This);
  86794.  
  86795.         ULONG ( __stdcall *Release )(
  86796.             IFastRundown * This);
  86797.  
  86798.  
  86799.     } IFastRundownVtbl;
  86800.  
  86801.     struct IFastRundown
  86802.     {
  86803.                    struct IFastRundownVtbl *lpVtbl;
  86804.     };
  86805. # 7477 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86806. typedef
  86807. enum CO_MARSHALING_CONTEXT_ATTRIBUTES
  86808.     {
  86809.         CO_MARSHALING_SOURCE_IS_APP_CONTAINER = 0,
  86810.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_1 = 0x80000000,
  86811.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_2 = 0x80000001,
  86812.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_3 = 0x80000002,
  86813.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_4 = 0x80000003,
  86814.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_5 = 0x80000004,
  86815.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_6 = 0x80000005,
  86816.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_7 = 0x80000006,
  86817.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_8 = 0x80000007,
  86818.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_9 = 0x80000008,
  86819.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_10 = 0x80000009,
  86820.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_11 = 0x8000000a,
  86821.         CO_MARSHALING_CONTEXT_ATTRIBUTE_RESERVED_12 = 0x8000000b
  86822.     } CO_MARSHALING_CONTEXT_ATTRIBUTES;
  86823.  
  86824.  
  86825.  
  86826. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0051_v0_0_c_ifspec;
  86827. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0051_v0_0_s_ifspec;
  86828. # 7507 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86829. extern const IID IID_IMarshalingStream;
  86830. # 7524 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86831.     typedef struct IMarshalingStreamVtbl
  86832.     {
  86833.  
  86834.  
  86835.         HRESULT ( __stdcall *QueryInterface )(
  86836.             IMarshalingStream * This,
  86837.                        const IID * riid,
  86838.  
  86839.                           void **ppvObject);
  86840.  
  86841.         ULONG ( __stdcall *AddRef )(
  86842.             IMarshalingStream * This);
  86843.  
  86844.         ULONG ( __stdcall *Release )(
  86845.             IMarshalingStream * This);
  86846.  
  86847.                       HRESULT ( __stdcall *Read )(
  86848.             IMarshalingStream * This,
  86849.  
  86850.                                                  void *pv,
  86851.  
  86852.                   ULONG cb,
  86853.  
  86854.                        ULONG *pcbRead);
  86855.  
  86856.                       HRESULT ( __stdcall *Write )(
  86857.             IMarshalingStream * This,
  86858.  
  86859.                                   const void *pv,
  86860.  
  86861.                   ULONG cb,
  86862.  
  86863.                        ULONG *pcbWritten);
  86864.  
  86865.                       HRESULT ( __stdcall *Seek )(
  86866.             IMarshalingStream * This,
  86867.                        LARGE_INTEGER dlibMove,
  86868.                        DWORD dwOrigin,
  86869.  
  86870.                        ULARGE_INTEGER *plibNewPosition);
  86871.  
  86872.         HRESULT ( __stdcall *SetSize )(
  86873.             IMarshalingStream * This,
  86874.                        ULARGE_INTEGER libNewSize);
  86875.  
  86876.                       HRESULT ( __stdcall *CopyTo )(
  86877.             IMarshalingStream * This,
  86878.  
  86879.                   IStream *pstm,
  86880.                        ULARGE_INTEGER cb,
  86881.  
  86882.                        ULARGE_INTEGER *pcbRead,
  86883.  
  86884.                        ULARGE_INTEGER *pcbWritten);
  86885.  
  86886.         HRESULT ( __stdcall *Commit )(
  86887.             IMarshalingStream * This,
  86888.                        DWORD grfCommitFlags);
  86889.  
  86890.         HRESULT ( __stdcall *Revert )(
  86891.             IMarshalingStream * This);
  86892.  
  86893.         HRESULT ( __stdcall *LockRegion )(
  86894.             IMarshalingStream * This,
  86895.                        ULARGE_INTEGER libOffset,
  86896.                        ULARGE_INTEGER cb,
  86897.                        DWORD dwLockType);
  86898.  
  86899.         HRESULT ( __stdcall *UnlockRegion )(
  86900.             IMarshalingStream * This,
  86901.                        ULARGE_INTEGER libOffset,
  86902.                        ULARGE_INTEGER cb,
  86903.                        DWORD dwLockType);
  86904.  
  86905.         HRESULT ( __stdcall *Stat )(
  86906.             IMarshalingStream * This,
  86907.                         STATSTG *pstatstg,
  86908.                        DWORD grfStatFlag);
  86909.  
  86910.         HRESULT ( __stdcall *Clone )(
  86911.             IMarshalingStream * This,
  86912.                         IStream **ppstm);
  86913.  
  86914.         HRESULT ( __stdcall *GetMarshalingContextAttribute )(
  86915.             IMarshalingStream * This,
  86916.                        CO_MARSHALING_CONTEXT_ATTRIBUTES attribute,
  86917.                         ULONG_PTR *pAttributeValue);
  86918.  
  86919.  
  86920.     } IMarshalingStreamVtbl;
  86921.  
  86922.     struct IMarshalingStream
  86923.     {
  86924.                    struct IMarshalingStreamVtbl *lpVtbl;
  86925.     };
  86926. # 7688 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86927. #pragma endregion
  86928. #pragma region Application Family or OneCore Family
  86929.  
  86930.  
  86931.  
  86932. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0052_v0_0_c_ifspec;
  86933. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0052_v0_0_s_ifspec;
  86934. # 7730 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86935. extern const IID IID_IAgileReference;
  86936. # 7747 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86937.     typedef struct IAgileReferenceVtbl
  86938.     {
  86939.  
  86940.  
  86941.         HRESULT ( __stdcall *QueryInterface )(
  86942.             IAgileReference * This,
  86943.                        const IID * riid,
  86944.  
  86945.                           void **ppvObject);
  86946.  
  86947.         ULONG ( __stdcall *AddRef )(
  86948.             IAgileReference * This);
  86949.  
  86950.         ULONG ( __stdcall *Release )(
  86951.             IAgileReference * This);
  86952.  
  86953.         HRESULT ( __stdcall *Resolve )(
  86954.             IAgileReference * This,
  86955.                        const IID * riid,
  86956.                                         void **ppvObjectReference);
  86957.  
  86958.  
  86959.     } IAgileReferenceVtbl;
  86960.  
  86961.     struct IAgileReference
  86962.     {
  86963.                    struct IAgileReferenceVtbl *lpVtbl;
  86964.     };
  86965. # 7810 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86966. #pragma endregion
  86967. #pragma region Application Family or OneCore Family
  86968.  
  86969. extern const GUID IID_ICallbackWithNoReentrancyToApplicationSTA;
  86970.  
  86971. #pragma endregion
  86972. # 7827 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  86973. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0053_v0_0_c_ifspec;
  86974. extern RPC_IF_HANDLE __MIDL_itf_objidlbase_0000_0053_v0_0_s_ifspec;
  86975.  
  86976.  
  86977.  
  86978.               HRESULT __stdcall IEnumUnknown_Next_Proxy(
  86979.     IEnumUnknown * This,
  86980.  
  86981.           ULONG celt,
  86982.  
  86983.                                          IUnknown **rgelt,
  86984.  
  86985.                ULONG *pceltFetched);
  86986.  
  86987.  
  86988.                 HRESULT __stdcall IEnumUnknown_Next_Stub(
  86989.               IEnumUnknown * This,
  86990.                ULONG celt,
  86991.                                                                                 IUnknown **rgelt,
  86992.                            ULONG *pceltFetched);
  86993.  
  86994.               HRESULT __stdcall IEnumString_Next_Proxy(
  86995.     IEnumString * This,
  86996.                ULONG celt,
  86997.  
  86998.                                          LPOLESTR *rgelt,
  86999.  
  87000.                ULONG *pceltFetched);
  87001.  
  87002.  
  87003.                 HRESULT __stdcall IEnumString_Next_Stub(
  87004.               IEnumString * This,
  87005.                ULONG celt,
  87006.                                                                                 LPOLESTR *rgelt,
  87007.                            ULONG *pceltFetched);
  87008.  
  87009.               HRESULT __stdcall ISequentialStream_Read_Proxy(
  87010.     ISequentialStream * This,
  87011.  
  87012.                                          void *pv,
  87013.  
  87014.           ULONG cb,
  87015.  
  87016.                ULONG *pcbRead);
  87017.  
  87018.  
  87019.                 HRESULT __stdcall ISequentialStream_Read_Stub(
  87020.               ISequentialStream * This,
  87021.                                                                          byte *pv,
  87022.                ULONG cb,
  87023.                            ULONG *pcbRead);
  87024.  
  87025.               HRESULT __stdcall ISequentialStream_Write_Proxy(
  87026.     ISequentialStream * This,
  87027.  
  87028.                           const void *pv,
  87029.  
  87030.           ULONG cb,
  87031.  
  87032.                ULONG *pcbWritten);
  87033.  
  87034.  
  87035.                 HRESULT __stdcall ISequentialStream_Write_Stub(
  87036.               ISequentialStream * This,
  87037.                                                   const byte *pv,
  87038.                ULONG cb,
  87039.                            ULONG *pcbWritten);
  87040.  
  87041.               HRESULT __stdcall IStream_Seek_Proxy(
  87042.     IStream * This,
  87043.                LARGE_INTEGER dlibMove,
  87044.                DWORD dwOrigin,
  87045.  
  87046.                ULARGE_INTEGER *plibNewPosition);
  87047.  
  87048.  
  87049.                 HRESULT __stdcall IStream_Seek_Stub(
  87050.               IStream * This,
  87051.                LARGE_INTEGER dlibMove,
  87052.                DWORD dwOrigin,
  87053.                            ULARGE_INTEGER *plibNewPosition);
  87054.  
  87055.               HRESULT __stdcall IStream_CopyTo_Proxy(
  87056.     IStream * This,
  87057.  
  87058.           IStream *pstm,
  87059.                ULARGE_INTEGER cb,
  87060.  
  87061.                ULARGE_INTEGER *pcbRead,
  87062.  
  87063.                ULARGE_INTEGER *pcbWritten);
  87064.  
  87065.  
  87066.                 HRESULT __stdcall IStream_CopyTo_Stub(
  87067.               IStream * This,
  87068.                                      IStream *pstm,
  87069.                ULARGE_INTEGER cb,
  87070.                            ULARGE_INTEGER *pcbRead,
  87071.                            ULARGE_INTEGER *pcbWritten);
  87072. # 7938 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidlbase.h" 3
  87073. #pragma option pop
  87074. # 379 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  87075.  
  87076.  
  87077. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/guiddef.h" 1 3
  87078. #pragma option push -b -a8 -pc -A- -w-pun
  87079. # 217 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/guiddef.h" 3
  87080. #pragma option pop
  87081. # 381 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  87082.  
  87083.  
  87084.  
  87085.  
  87086. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\cguid.h" 1 3
  87087. #pragma option push -b -a8 -pc -A- -w-pun
  87088. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\cguid.h" 3
  87089. #pragma region Application Family
  87090.  
  87091.  
  87092. extern const IID GUID_NULL;
  87093.  
  87094.  
  87095. #pragma endregion
  87096.  
  87097. #pragma region Desktop Family
  87098.  
  87099.  
  87100.  
  87101. extern const IID CATID_MARSHALER;
  87102.  
  87103.  
  87104. extern const IID IID_IRpcChannel;
  87105. extern const IID IID_IRpcStub;
  87106. extern const IID IID_IStubManager;
  87107. extern const IID IID_IRpcProxy;
  87108. extern const IID IID_IProxyManager;
  87109. extern const IID IID_IPSFactory;
  87110. extern const IID IID_IInternalMoniker;
  87111. extern const IID IID_IDfReserved1;
  87112. extern const IID IID_IDfReserved2;
  87113. extern const IID IID_IDfReserved3;
  87114. extern const CLSID CLSID_StdMarshal;
  87115. extern const CLSID CLSID_AggStdMarshal;
  87116. extern const CLSID CLSID_StdAsyncActManager;
  87117. extern const IID IID_IStub;
  87118. extern const IID IID_IProxy;
  87119. extern const IID IID_IEnumGeneric;
  87120. extern const IID IID_IEnumHolder;
  87121. extern const IID IID_IEnumCallback;
  87122. extern const IID IID_IOleManager;
  87123. extern const IID IID_IOlePresObj;
  87124. extern const IID IID_IDebug;
  87125. extern const IID IID_IDebugStream;
  87126. extern const CLSID CLSID_PSGenObject;
  87127. extern const CLSID CLSID_PSClientSite;
  87128. extern const CLSID CLSID_PSClassObject;
  87129. extern const CLSID CLSID_PSInPlaceActive;
  87130. extern const CLSID CLSID_PSInPlaceFrame;
  87131. extern const CLSID CLSID_PSDragDrop;
  87132. extern const CLSID CLSID_PSBindCtx;
  87133. extern const CLSID CLSID_PSEnumerators;
  87134. extern const CLSID CLSID_StaticMetafile;
  87135. extern const CLSID CLSID_StaticDib;
  87136. extern const CLSID CID_CDfsVolume;
  87137. extern const CLSID CLSID_DCOMAccessControl;
  87138.  
  87139.  
  87140. #pragma endregion
  87141.  
  87142. #pragma region Application Family or OneCore Family
  87143.  
  87144.  
  87145. extern const CLSID CLSID_GlobalOptions;
  87146. extern const CLSID CLSID_StdGlobalInterfaceTable;
  87147.  
  87148.  
  87149. #pragma endregion
  87150.  
  87151. #pragma region Desktop Family
  87152.  
  87153.  
  87154. extern const CLSID CLSID_ComBinding;
  87155. extern const CLSID CLSID_StdEvent;
  87156. extern const CLSID CLSID_ManualResetEvent;
  87157. extern const CLSID CLSID_SynchronizeContainer;
  87158.  
  87159.  
  87160. extern const CLSID CLSID_AddrControl;
  87161.  
  87162.  
  87163.  
  87164. extern const CLSID CLSID_ContextSwitcher;
  87165. # 118 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\cguid.h" 3
  87166. extern const CLSID CLSID_CCDFormKrnl;
  87167. extern const CLSID CLSID_CCDPropertyPage;
  87168. extern const CLSID CLSID_CCDFormDialog;
  87169.  
  87170.  
  87171.  
  87172.  
  87173. extern const CLSID CLSID_CCDCommandButton;
  87174. extern const CLSID CLSID_CCDComboBox;
  87175. extern const CLSID CLSID_CCDTextBox;
  87176. extern const CLSID CLSID_CCDCheckBox;
  87177. extern const CLSID CLSID_CCDLabel;
  87178. extern const CLSID CLSID_CCDOptionButton;
  87179. extern const CLSID CLSID_CCDListBox;
  87180. extern const CLSID CLSID_CCDScrollBar;
  87181. extern const CLSID CLSID_CCDGroupBox;
  87182.  
  87183.  
  87184.  
  87185.  
  87186. extern const CLSID CLSID_CCDGeneralPropertyPage;
  87187. extern const CLSID CLSID_CCDGenericPropertyPage;
  87188. extern const CLSID CLSID_CCDFontPropertyPage;
  87189. extern const CLSID CLSID_CCDColorPropertyPage;
  87190. extern const CLSID CLSID_CCDLabelPropertyPage;
  87191. extern const CLSID CLSID_CCDCheckBoxPropertyPage;
  87192. extern const CLSID CLSID_CCDTextBoxPropertyPage;
  87193. extern const CLSID CLSID_CCDOptionButtonPropertyPage;
  87194. extern const CLSID CLSID_CCDListBoxPropertyPage;
  87195. extern const CLSID CLSID_CCDCommandButtonPropertyPage;
  87196. extern const CLSID CLSID_CCDComboBoxPropertyPage;
  87197. extern const CLSID CLSID_CCDScrollBarPropertyPage;
  87198. extern const CLSID CLSID_CCDGroupBoxPropertyPage;
  87199. extern const CLSID CLSID_CCDXObjectPropertyPage;
  87200.  
  87201. extern const CLSID CLSID_CStdPropertyFrame;
  87202.  
  87203. extern const CLSID CLSID_CFormPropertyPage;
  87204. extern const CLSID CLSID_CGridPropertyPage;
  87205.  
  87206. extern const CLSID CLSID_CWSJArticlePage;
  87207. extern const CLSID CLSID_CSystemPage;
  87208. extern const CLSID CLSID_IdentityUnmarshal;
  87209.  
  87210.  
  87211. #pragma endregion
  87212.  
  87213. #pragma region Application Family
  87214.  
  87215.  
  87216. extern const CLSID CLSID_InProcFreeMarshaler;
  87217.  
  87218.  
  87219. #pragma endregion
  87220.  
  87221. #pragma region Desktop Family
  87222.  
  87223.  
  87224. extern const CLSID CLSID_Picture_Metafile;
  87225. extern const CLSID CLSID_Picture_EnhMetafile;
  87226. extern const CLSID CLSID_Picture_Dib;
  87227.  
  87228.  
  87229.  
  87230.  
  87231. extern const GUID GUID_TRISTATE;
  87232.  
  87233.  
  87234. #pragma endregion
  87235. # 201 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\cguid.h" 3
  87236. #pragma option pop
  87237. # 385 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  87238.  
  87239.  
  87240.  
  87241.  
  87242. #pragma endregion
  87243.  
  87244.  
  87245.  
  87246. #pragma region Desktop or OneCore Family
  87247.  
  87248.  
  87249.  extern __declspec(dllimport) HRESULT __stdcall
  87250. CoGetMalloc(
  87251.          DWORD dwMemContext,
  87252.              LPMALLOC * ppMalloc
  87253.     );
  87254.  
  87255.  
  87256.  
  87257. #pragma endregion
  87258.  
  87259. #pragma region Application or OneCore Family
  87260.  
  87261.  
  87262.  extern __declspec(dllimport) HRESULT __stdcall
  87263. CreateStreamOnHGlobal(
  87264.     HGLOBAL hGlobal,
  87265.          BOOL fDeleteOnRelease,
  87266.              LPSTREAM * ppstm
  87267.     );
  87268.  
  87269.  
  87270.                extern __declspec(dllimport) HRESULT __stdcall
  87271. GetHGlobalFromStream(
  87272.          LPSTREAM pstm,
  87273.           HGLOBAL * phglobal
  87274.     );
  87275.  
  87276.  
  87277.  
  87278.  
  87279. extern __declspec(dllimport) void __stdcall
  87280. CoUninitialize(
  87281.     void
  87282.     );
  87283.  
  87284.  
  87285.  
  87286. #pragma endregion
  87287.  
  87288. #pragma region Desktop or OneCore Family
  87289.  
  87290.  
  87291. extern __declspec(dllimport) DWORD __stdcall
  87292. CoGetCurrentProcess(
  87293.     void
  87294.     );
  87295.  
  87296.  
  87297.  
  87298. #pragma endregion
  87299.  
  87300.  
  87301.  
  87302.  
  87303. #pragma region Application or OneCore Family
  87304.  
  87305.  
  87306.  extern __declspec(dllimport) HRESULT __stdcall
  87307. CoInitializeEx(
  87308.              LPVOID pvReserved,
  87309.          DWORD dwCoInit
  87310.     );
  87311.  
  87312.  
  87313.  
  87314. #pragma endregion
  87315.  
  87316. #pragma region Desktop or OneCore Family
  87317.  
  87318.  
  87319. extern __declspec(dllimport) HRESULT __stdcall
  87320. CoGetCallerTID(
  87321.           LPDWORD lpdwTID
  87322.     );
  87323.  
  87324.  
  87325.  
  87326. #pragma endregion
  87327.  
  87328. #pragma region Application or OneCore Family
  87329.  
  87330.  
  87331. extern __declspec(dllimport) HRESULT __stdcall
  87332. CoGetCurrentLogicalThreadId(
  87333.           GUID* pguid
  87334.     );
  87335.  
  87336.  
  87337.  
  87338. #pragma endregion
  87339.  
  87340.  
  87341.  
  87342.  
  87343.  
  87344. #pragma region Application or OneCore Family
  87345.  
  87346.  
  87347.  extern __declspec(dllimport) HRESULT __stdcall
  87348. CoGetContextToken(
  87349.           ULONG_PTR* pToken
  87350.     );
  87351.  
  87352.  
  87353.  
  87354. #pragma endregion
  87355.  
  87356. #pragma region Desktop or OneCore Family
  87357.  
  87358.  
  87359.  extern __declspec(dllimport) HRESULT __stdcall
  87360. CoGetDefaultContext(
  87361.          APTTYPE aptType,
  87362.          const IID * riid,
  87363.              void** ppv
  87364.     );
  87365.  
  87366.  
  87367.  
  87368. #pragma endregion
  87369.  
  87370.  
  87371.  
  87372. #pragma region Application or OneCore Family
  87373.  
  87374.  
  87375.  
  87376.  
  87377.  
  87378.  
  87379.  extern __declspec(dllimport) HRESULT __stdcall
  87380. CoGetApartmentType(
  87381.           APTTYPE* pAptType,
  87382.           APTTYPEQUALIFIER* pAptQualifier
  87383.     );
  87384.  
  87385.  
  87386.  
  87387.  
  87388.  
  87389. #pragma endregion
  87390.  
  87391.  
  87392.  
  87393.  
  87394.  
  87395. #pragma region Application or OneCore Family
  87396.  
  87397.  
  87398. typedef struct tagServerInformation
  87399. {
  87400.     DWORD dwServerPid;
  87401.     DWORD dwServerTid;
  87402.     UINT64 ui64ServerAddress;
  87403. } ServerInformation, *PServerInformation;
  87404.  
  87405.  
  87406. #pragma endregion
  87407.  
  87408. #pragma region Desktop or OneCore Family
  87409.  
  87410.  
  87411.  extern __declspec(dllimport) HRESULT __stdcall
  87412. CoDecodeProxy(
  87413.          DWORD dwClientPid,
  87414.          UINT64 ui64ProxyAddress,
  87415.           PServerInformation pServerInformation
  87416.     );
  87417.  
  87418.  
  87419.  
  87420. #pragma endregion
  87421.  
  87422. #pragma region Application or OneCore Family
  87423.  
  87424.  
  87425. struct CO_MTA_USAGE_COOKIE__{int unused;}; typedef struct CO_MTA_USAGE_COOKIE__ *CO_MTA_USAGE_COOKIE;
  87426.  
  87427.  
  87428. #pragma endregion
  87429.  
  87430. #pragma region Desktop or OneCore Family
  87431.  
  87432.  
  87433.  extern __declspec(dllimport) HRESULT __stdcall
  87434. CoIncrementMTAUsage(
  87435.           CO_MTA_USAGE_COOKIE* pCookie
  87436.     );
  87437.  
  87438.                extern __declspec(dllimport) HRESULT __stdcall
  87439. CoDecrementMTAUsage(
  87440.          CO_MTA_USAGE_COOKIE Cookie
  87441.     );
  87442.  
  87443.  
  87444. extern __declspec(dllimport) HRESULT __stdcall
  87445. CoAllowUnmarshalerCLSID(
  87446.          const IID * clsid
  87447.     );
  87448.  
  87449.  
  87450.  
  87451. #pragma endregion
  87452.  
  87453.  
  87454.  
  87455. #pragma region Application or OneCore Family
  87456.  
  87457.  
  87458.  extern __declspec(dllimport) HRESULT __stdcall
  87459. CoGetObjectContext(
  87460.          const IID * riid,
  87461.              LPVOID * ppv
  87462.     );
  87463.  
  87464.  
  87465.  
  87466. #pragma endregion
  87467.  
  87468. #pragma region Desktop or OneCore Family
  87469.  
  87470.  
  87471.  
  87472.  
  87473.  extern __declspec(dllimport) HRESULT __stdcall
  87474. CoGetClassObject(
  87475.          const IID * rclsid,
  87476.          DWORD dwClsContext,
  87477.              LPVOID pvReserved,
  87478.          const IID * riid,
  87479.              LPVOID * ppv
  87480.     );
  87481.  
  87482.  
  87483. #pragma endregion
  87484.  
  87485. #pragma region Application or OneCore Family
  87486.  
  87487.  
  87488.  extern __declspec(dllimport) HRESULT __stdcall
  87489. CoRegisterClassObject(
  87490.          const IID * rclsid,
  87491.          LPUNKNOWN pUnk,
  87492.          DWORD dwClsContext,
  87493.          DWORD flags,
  87494.           LPDWORD lpdwRegister
  87495.     );
  87496.  
  87497. extern __declspec(dllimport) HRESULT __stdcall
  87498. CoRevokeClassObject(
  87499.          DWORD dwRegister
  87500.     );
  87501.  
  87502.                extern __declspec(dllimport) HRESULT __stdcall
  87503. CoResumeClassObjects(
  87504.     void
  87505.     );
  87506.  
  87507.                extern __declspec(dllimport) HRESULT __stdcall
  87508. CoSuspendClassObjects(
  87509.     void
  87510.     );
  87511.  
  87512.  
  87513.  
  87514. #pragma endregion
  87515.  
  87516. #pragma region Desktop or OneCore Family
  87517.  
  87518.  
  87519. extern __declspec(dllimport) ULONG __stdcall
  87520. CoAddRefServerProcess(
  87521.     void
  87522.     );
  87523.  
  87524.  
  87525. extern __declspec(dllimport) ULONG __stdcall
  87526. CoReleaseServerProcess(
  87527.     void
  87528.     );
  87529.  
  87530.  
  87531.                extern __declspec(dllimport) HRESULT __stdcall
  87532. CoGetPSClsid(
  87533.          const IID * riid,
  87534.           CLSID* pClsid
  87535.     );
  87536.  
  87537.                extern __declspec(dllimport) HRESULT __stdcall
  87538. CoRegisterPSClsid(
  87539.          const IID * riid,
  87540.          const IID * rclsid
  87541.     );
  87542.  
  87543.  
  87544.  
  87545.                extern __declspec(dllimport) HRESULT __stdcall
  87546. CoRegisterSurrogate(
  87547.          LPSURROGATE pSurrogate
  87548.     );
  87549.  
  87550.  
  87551.  
  87552. #pragma endregion
  87553.  
  87554. #pragma region Application or OneCore Family
  87555.  
  87556.  
  87557.  
  87558.  
  87559.  extern __declspec(dllimport) HRESULT __stdcall
  87560. CoGetMarshalSizeMax(
  87561.           ULONG* pulSize,
  87562.          const IID * riid,
  87563.          LPUNKNOWN pUnk,
  87564.          DWORD dwDestContext,
  87565.              LPVOID pvDestContext,
  87566.          DWORD mshlflags
  87567.     );
  87568.  
  87569.                extern __declspec(dllimport) HRESULT __stdcall
  87570. CoMarshalInterface(
  87571.          LPSTREAM pStm,
  87572.          const IID * riid,
  87573.          LPUNKNOWN pUnk,
  87574.          DWORD dwDestContext,
  87575.              LPVOID pvDestContext,
  87576.          DWORD mshlflags
  87577.     );
  87578.  
  87579.                extern __declspec(dllimport) HRESULT __stdcall
  87580. CoUnmarshalInterface(
  87581.          LPSTREAM pStm,
  87582.          const IID * riid,
  87583.                  LPVOID * ppv
  87584.     );
  87585.  
  87586.  
  87587.  
  87588. #pragma endregion
  87589.  
  87590. #pragma region Desktop or OneCore Family
  87591.  
  87592.  
  87593. extern __declspec(dllimport) HRESULT __stdcall
  87594. CoMarshalHresult(
  87595.          LPSTREAM pstm,
  87596.          HRESULT hresult
  87597.     );
  87598.  
  87599. extern __declspec(dllimport) HRESULT __stdcall
  87600. CoUnmarshalHresult(
  87601.          LPSTREAM pstm,
  87602.           HRESULT * phresult
  87603.     );
  87604.  
  87605.  
  87606.  
  87607. #pragma endregion
  87608.  
  87609. #pragma region Application or OneCore Family
  87610.  
  87611.  
  87612.  extern __declspec(dllimport) HRESULT __stdcall
  87613. CoReleaseMarshalData(
  87614.          LPSTREAM pStm
  87615.     );
  87616.  
  87617.                extern __declspec(dllimport) HRESULT __stdcall
  87618. CoDisconnectObject(
  87619.          LPUNKNOWN pUnk,
  87620.          DWORD dwReserved
  87621.     );
  87622.  
  87623.  
  87624.  
  87625. #pragma endregion
  87626.  
  87627. #pragma region Desktop or OneCore Family
  87628.  
  87629.  
  87630.  extern __declspec(dllimport) HRESULT __stdcall
  87631. CoLockObjectExternal(
  87632.          LPUNKNOWN pUnk,
  87633.          BOOL fLock,
  87634.          BOOL fLastUnlockReleases
  87635.     );
  87636.  
  87637.  
  87638.  
  87639. #pragma endregion
  87640.  
  87641. #pragma region Application or OneCore Family
  87642.  
  87643.  
  87644.  extern __declspec(dllimport) HRESULT __stdcall
  87645. CoGetStandardMarshal(
  87646.          const IID * riid,
  87647.          LPUNKNOWN pUnk,
  87648.          DWORD dwDestContext,
  87649.              LPVOID pvDestContext,
  87650.          DWORD mshlflags,
  87651.              LPMARSHAL * ppMarshal
  87652.     );
  87653.  
  87654.  
  87655.  
  87656. #pragma endregion
  87657.  
  87658. #pragma region Desktop or OneCore Family
  87659.  
  87660.  
  87661.  extern __declspec(dllimport) HRESULT __stdcall
  87662. CoGetStdMarshalEx(
  87663.          LPUNKNOWN pUnkOuter,
  87664.          DWORD smexflags,
  87665.              LPUNKNOWN * ppUnkInner
  87666.     );
  87667.  
  87668.  
  87669.  
  87670. #pragma endregion
  87671.  
  87672. #pragma region Application or OneCore Family
  87673.  
  87674.  
  87675.  
  87676. typedef enum tagSTDMSHLFLAGS
  87677. {
  87678.     SMEXF_SERVER = 0x01,
  87679.     SMEXF_HANDLER = 0x02
  87680. } STDMSHLFLAGS;
  87681.  
  87682.  
  87683. #pragma endregion
  87684.  
  87685. #pragma region Desktop or OneCore Family
  87686.  
  87687.  
  87688. extern __declspec(dllimport) BOOL __stdcall
  87689. CoIsHandlerConnected(
  87690.          LPUNKNOWN pUnk
  87691.     );
  87692.  
  87693.  
  87694.  
  87695. #pragma endregion
  87696.  
  87697. #pragma region Application or OneCore Family
  87698.  
  87699.  
  87700.  
  87701.  extern __declspec(dllimport) HRESULT __stdcall
  87702. CoMarshalInterThreadInterfaceInStream(
  87703.          const IID * riid,
  87704.          LPUNKNOWN pUnk,
  87705.              LPSTREAM* ppStm
  87706.     );
  87707.  
  87708.  
  87709.                extern __declspec(dllimport) HRESULT __stdcall
  87710. CoGetInterfaceAndReleaseStream(
  87711.          LPSTREAM pStm,
  87712.          const IID * iid,
  87713.                  LPVOID * ppv
  87714.     );
  87715.  
  87716.  
  87717.                extern __declspec(dllimport) HRESULT __stdcall
  87718. CoCreateFreeThreadedMarshaler(
  87719.              LPUNKNOWN punkOuter,
  87720.              LPUNKNOWN* ppunkMarshal
  87721.     );
  87722.  
  87723.  
  87724. extern __declspec(dllimport) void __stdcall
  87725. CoFreeUnusedLibraries(
  87726.     void
  87727.     );
  87728.  
  87729.  
  87730. extern __declspec(dllimport) void __stdcall
  87731. CoFreeUnusedLibrariesEx(
  87732.          DWORD dwUnloadDelay,
  87733.          DWORD dwReserved
  87734.     );
  87735.  
  87736.  
  87737.  
  87738.  
  87739. #pragma endregion
  87740.  
  87741.  
  87742.  
  87743. #pragma region Desktop or OneCore Family
  87744.  
  87745.  
  87746.  extern __declspec(dllimport) HRESULT __stdcall
  87747. CoDisconnectContext(
  87748.     DWORD dwTimeout
  87749.     );
  87750.  
  87751.  
  87752.  
  87753. #pragma endregion
  87754.  
  87755.  
  87756.  
  87757.  
  87758.  
  87759.  
  87760. #pragma region Application or OneCore Family
  87761.  
  87762.  
  87763.  
  87764.  
  87765.  extern __declspec(dllimport) HRESULT __stdcall
  87766. CoInitializeSecurity(
  87767.              PSECURITY_DESCRIPTOR pSecDesc,
  87768.          LONG cAuthSvc,
  87769.                              SOLE_AUTHENTICATION_SERVICE* asAuthSvc,
  87770.              void* pReserved1,
  87771.          DWORD dwAuthnLevel,
  87772.          DWORD dwImpLevel,
  87773.              void* pAuthList,
  87774.          DWORD dwCapabilities,
  87775.              void* pReserved3
  87776.     );
  87777.  
  87778.  
  87779.  
  87780. #pragma endregion
  87781.  
  87782. #pragma region Desktop or OneCore Family
  87783.  
  87784.  
  87785.  extern __declspec(dllimport) HRESULT __stdcall
  87786. CoGetCallContext(
  87787.          const IID * riid,
  87788.              void** ppInterface
  87789.     );
  87790.  
  87791.  
  87792.                extern __declspec(dllimport) HRESULT __stdcall
  87793. CoQueryProxyBlanket(
  87794.          IUnknown* pProxy,
  87795.               DWORD* pwAuthnSvc,
  87796.               DWORD* pAuthzSvc,
  87797.                  LPOLESTR* pServerPrincName,
  87798.               DWORD* pAuthnLevel,
  87799.               DWORD* pImpLevel,
  87800.               RPC_AUTH_IDENTITY_HANDLE* pAuthInfo,
  87801.               DWORD* pCapabilites
  87802.     );
  87803.  
  87804.  
  87805.                extern __declspec(dllimport) HRESULT __stdcall
  87806. CoSetProxyBlanket(
  87807.          IUnknown* pProxy,
  87808.          DWORD dwAuthnSvc,
  87809.          DWORD dwAuthzSvc,
  87810.              OLECHAR* pServerPrincName,
  87811.          DWORD dwAuthnLevel,
  87812.          DWORD dwImpLevel,
  87813.              RPC_AUTH_IDENTITY_HANDLE pAuthInfo,
  87814.          DWORD dwCapabilities
  87815.     );
  87816.  
  87817.  
  87818.                extern __declspec(dllimport) HRESULT __stdcall
  87819. CoCopyProxy(
  87820.          IUnknown* pProxy,
  87821.              IUnknown** ppCopy
  87822.     );
  87823.  
  87824.  
  87825.                extern __declspec(dllimport) HRESULT __stdcall
  87826. CoQueryClientBlanket(
  87827.               DWORD* pAuthnSvc,
  87828.               DWORD* pAuthzSvc,
  87829.                  LPOLESTR* pServerPrincName,
  87830.               DWORD* pAuthnLevel,
  87831.               DWORD* pImpLevel,
  87832.                                                                         RPC_AUTHZ_HANDLE* pPrivs,
  87833.                 DWORD* pCapabilities
  87834.     );
  87835.  
  87836.  
  87837.                extern __declspec(dllimport) HRESULT __stdcall
  87838. CoImpersonateClient(
  87839.     void
  87840.     );
  87841.  
  87842.  
  87843.                extern __declspec(dllimport) HRESULT __stdcall
  87844. CoRevertToSelf(
  87845.     void
  87846.     );
  87847.  
  87848.  
  87849.                extern __declspec(dllimport) HRESULT __stdcall
  87850. CoQueryAuthenticationServices(
  87851.           DWORD* pcAuthSvc,
  87852.                                        SOLE_AUTHENTICATION_SERVICE** asAuthSvc
  87853.     );
  87854.  
  87855.  
  87856.  
  87857. #pragma endregion
  87858.  
  87859. #pragma region Application or OneCore Family
  87860.  
  87861.  
  87862.  extern __declspec(dllimport) HRESULT __stdcall
  87863. CoSwitchCallContext(
  87864.              IUnknown* pNewObject,
  87865.              IUnknown** ppOldObject
  87866.     );
  87867. # 1023 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  87868. #pragma endregion
  87869.  
  87870.  
  87871.  
  87872. #pragma region Desktop or OneCore Family
  87873.  
  87874.  
  87875.  
  87876.  
  87877.  extern __declspec(dllimport) HRESULT __stdcall
  87878. CoCreateInstance(
  87879.          const IID * rclsid,
  87880.              LPUNKNOWN pUnkOuter,
  87881.          DWORD dwClsContext,
  87882.          const IID * riid,
  87883.                                                                            LPVOID * ppv
  87884.     );
  87885.  
  87886.  
  87887.  
  87888.  
  87889.  
  87890.                extern __declspec(dllimport) HRESULT __stdcall
  87891. CoCreateInstanceEx(
  87892.          const IID * Clsid,
  87893.              IUnknown* punkOuter,
  87894.          DWORD dwClsCtx,
  87895.              COSERVERINFO* pServerInfo,
  87896.          DWORD dwCount,
  87897.                              MULTI_QI* pResults
  87898.     );
  87899.  
  87900.  
  87901.  
  87902.  
  87903. extern __declspec(dllimport) HRESULT __stdcall
  87904. CoRegisterActivationFilter(
  87905.          IActivationFilter* pActivationFilter
  87906.     );
  87907.  
  87908.  
  87909.  
  87910. #pragma endregion
  87911.  
  87912.  
  87913.  
  87914. #pragma region Application or OneCore Family
  87915.  
  87916.  
  87917.  extern __declspec(dllimport) HRESULT __stdcall
  87918. CoCreateInstanceFromApp(
  87919.          const IID * Clsid,
  87920.              IUnknown* punkOuter,
  87921.          DWORD dwClsCtx,
  87922.              PVOID reserved,
  87923.          DWORD dwCount,
  87924.                              MULTI_QI* pResults
  87925.     );
  87926.  
  87927.  
  87928.  
  87929. #pragma endregion
  87930.  
  87931.  
  87932.  
  87933. #pragma region Not Desktop or OneCore Family
  87934. # 1134 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  87935. #pragma endregion
  87936.  
  87937.  
  87938.  
  87939.  
  87940.  
  87941. #pragma region Desktop or OneCore Family
  87942.  
  87943.  
  87944.  extern __declspec(dllimport) HRESULT __stdcall
  87945. CoGetCancelObject(
  87946.          DWORD dwThreadId,
  87947.          const IID * iid,
  87948.              void** ppUnk
  87949.     );
  87950.  
  87951.  
  87952.                extern __declspec(dllimport) HRESULT __stdcall
  87953. CoSetCancelObject(
  87954.              IUnknown* pUnk
  87955.     );
  87956.  
  87957.  
  87958.                extern __declspec(dllimport) HRESULT __stdcall
  87959. CoCancelCall(
  87960.          DWORD dwThreadId,
  87961.          ULONG ulTimeout
  87962.     );
  87963.  
  87964.  
  87965.                extern __declspec(dllimport) HRESULT __stdcall
  87966. CoTestCancel(
  87967.     void
  87968.     );
  87969.  
  87970.  
  87971.                extern __declspec(dllimport) HRESULT __stdcall
  87972. CoEnableCallCancellation(
  87973.              LPVOID pReserved
  87974.     );
  87975.  
  87976.  
  87977.                extern __declspec(dllimport) HRESULT __stdcall
  87978. CoDisableCallCancellation(
  87979.              LPVOID pReserved
  87980.     );
  87981.  
  87982.  
  87983.  
  87984. #pragma endregion
  87985.  
  87986.  
  87987.  
  87988. #pragma region Application or OneCore Family
  87989.  
  87990.  
  87991.  
  87992.  
  87993.  extern __declspec(dllimport) HRESULT __stdcall
  87994. StringFromCLSID(
  87995.          const IID * rclsid,
  87996.              LPOLESTR * lplpsz
  87997.     );
  87998.  
  87999.                extern __declspec(dllimport) HRESULT __stdcall
  88000. CLSIDFromString(
  88001.          LPCOLESTR lpsz,
  88002.           LPCLSID pclsid
  88003.     );
  88004.  
  88005.                extern __declspec(dllimport) HRESULT __stdcall
  88006. StringFromIID(
  88007.          const IID * rclsid,
  88008.              LPOLESTR * lplpsz
  88009.     );
  88010.  
  88011.                extern __declspec(dllimport) HRESULT __stdcall
  88012. IIDFromString(
  88013.          LPCOLESTR lpsz,
  88014.           LPIID lpiid
  88015.     );
  88016.  
  88017.  
  88018.  
  88019. #pragma endregion
  88020.  
  88021. #pragma region Desktop or OneCore Family
  88022.  
  88023.  
  88024.  extern __declspec(dllimport) HRESULT __stdcall
  88025. ProgIDFromCLSID(
  88026.          const IID * clsid,
  88027.              LPOLESTR * lplpszProgID
  88028.     );
  88029.  
  88030.                extern __declspec(dllimport) HRESULT __stdcall
  88031. CLSIDFromProgID(
  88032.          LPCOLESTR lpszProgID,
  88033.           LPCLSID lpclsid
  88034.     );
  88035.  
  88036.  
  88037.  
  88038. #pragma endregion
  88039.  
  88040. #pragma region Application or OneCore Family
  88041.  
  88042.  
  88043.  extern __declspec(dllimport) int __stdcall
  88044. StringFromGUID2(
  88045.          const GUID * rguid,
  88046.                                    LPOLESTR lpsz,
  88047.          int cchMax
  88048.     );
  88049.  
  88050.  
  88051.                extern __declspec(dllimport) HRESULT __stdcall
  88052. CoCreateGuid(
  88053.           GUID * pguid
  88054.     );
  88055.  
  88056.  
  88057.  
  88058.  
  88059. typedef struct tagPROPVARIANT PROPVARIANT;
  88060.  
  88061.  
  88062. extern __declspec(dllimport) HRESULT __stdcall
  88063. PropVariantCopy(
  88064.           PROPVARIANT* pvarDest,
  88065.          const PROPVARIANT* pvarSrc
  88066.     );
  88067.  
  88068.  
  88069. extern __declspec(dllimport) HRESULT __stdcall
  88070. PropVariantClear(
  88071.             PROPVARIANT* pvar
  88072.     );
  88073.  
  88074.  
  88075. extern __declspec(dllimport) HRESULT __stdcall
  88076. FreePropVariantArray(
  88077.          ULONG cVariants,
  88078.                                PROPVARIANT* rgvars
  88079.     );
  88080.  
  88081.  
  88082.  
  88083. #pragma endregion
  88084.  
  88085.  
  88086.  
  88087.  
  88088. #pragma region Desktop or OneCore Family
  88089.  
  88090.  
  88091.  
  88092. #pragma endregion
  88093.  
  88094.  
  88095.  
  88096.  
  88097.  
  88098.  
  88099.  
  88100. #pragma region Desktop or OneCore Family
  88101.  
  88102.  
  88103.  extern __declspec(dllimport) HRESULT __stdcall
  88104. CoWaitForMultipleHandles(
  88105.          DWORD dwFlags,
  88106.          DWORD dwTimeout,
  88107.          ULONG cHandles,
  88108.                          LPHANDLE pHandles,
  88109.           LPDWORD lpdwindex
  88110.     );
  88111.  
  88112.  
  88113.  
  88114.  
  88115. typedef enum tagCOWAIT_FLAGS
  88116. {
  88117.   COWAIT_DEFAULT = 0,
  88118.   COWAIT_WAITALL = 1,
  88119.   COWAIT_ALERTABLE = 2,
  88120.   COWAIT_INPUTAVAILABLE = 4,
  88121.   COWAIT_DISPATCH_CALLS = 8,
  88122.   COWAIT_DISPATCH_WINDOW_MESSAGES = 0x10,
  88123. }COWAIT_FLAGS;
  88124.  
  88125.  
  88126.  
  88127. typedef enum CWMO_FLAGS
  88128. {
  88129.   CWMO_DEFAULT = 0,
  88130.   CWMO_DISPATCH_CALLS = 1,
  88131.   CWMO_DISPATCH_WINDOW_MESSAGES = 2,
  88132. } CWMO_FLAGS;
  88133.  
  88134. extern __declspec(dllimport) HRESULT __stdcall
  88135. CoWaitForMultipleObjects(
  88136.          DWORD dwFlags,
  88137.          DWORD dwTimeout,
  88138.          ULONG cHandles,
  88139.                          const HANDLE* pHandles,
  88140.           LPDWORD lpdwindex
  88141.     );
  88142.  
  88143.  
  88144.  
  88145.  
  88146.  
  88147.  
  88148.  
  88149. #pragma endregion
  88150.  
  88151.  
  88152.  
  88153. #pragma region Desktop or OneCore Family
  88154.  
  88155.  
  88156.  extern __declspec(dllimport) HRESULT __stdcall
  88157. CoGetTreatAsClass(
  88158.          const IID * clsidOld,
  88159.           LPCLSID pClsidNew
  88160.     );
  88161.  
  88162.  
  88163.  
  88164. #pragma endregion
  88165.  
  88166.  
  88167.  
  88168.  
  88169.  
  88170. #pragma region Desktop or OneCore Family
  88171.  
  88172.  
  88173.  extern __declspec(dllimport) HRESULT __stdcall
  88174. CoInvalidateRemoteMachineBindings(
  88175.          LPOLESTR pszMachineName
  88176.     );
  88177.  
  88178.  
  88179.  
  88180. #pragma endregion
  88181.  
  88182.  
  88183.  
  88184.  
  88185.  
  88186. #pragma region Application or OneCore Family
  88187.  
  88188.  
  88189. enum AgileReferenceOptions
  88190. {
  88191.     AGILEREFERENCE_DEFAULT = 0,
  88192.     AGILEREFERENCE_DELAYEDMARSHAL = 1,
  88193. };
  88194.  
  88195.                extern __declspec(dllimport) HRESULT __stdcall
  88196. RoGetAgileReference(
  88197.          enum AgileReferenceOptions options,
  88198.          const IID * riid,
  88199.          IUnknown* pUnk,
  88200.                  IAgileReference** ppAgileReference
  88201.     );
  88202.  
  88203.  
  88204.  
  88205. #pragma endregion
  88206.  
  88207.  
  88208.  
  88209. #pragma region Application or OneCore Family
  88210.  
  88211.  
  88212.  
  88213.  
  88214.  
  88215.  
  88216.  
  88217. typedef HRESULT (__stdcall * LPFNGETCLASSOBJECT) (const IID * , const IID * , LPVOID *);
  88218. typedef HRESULT (__stdcall * LPFNCANUNLOADNOW)(void);
  88219.  
  88220.  
  88221. extern HRESULT __stdcall DllGetClassObject( const IID * rclsid, const IID * riid, LPVOID * ppv);
  88222.  
  88223.  
  88224. extern HRESULT __stdcall DllCanUnloadNow(void);
  88225.  
  88226.  
  88227. extern __declspec(dllimport) LPVOID __stdcall
  88228. CoTaskMemAlloc(
  88229.          SIZE_T cb
  88230.     );
  88231.  
  88232. extern __declspec(dllimport) LPVOID __stdcall
  88233. CoTaskMemRealloc(
  88234.                                                        LPVOID pv,
  88235.          SIZE_T cb
  88236.     );
  88237.  
  88238. extern __declspec(dllimport) void __stdcall
  88239. CoTaskMemFree(
  88240.                     LPVOID pv
  88241.     );
  88242.  
  88243.  
  88244.  
  88245. #pragma endregion
  88246.  
  88247. #pragma region Desktop or OneCore Family
  88248.  
  88249.  
  88250. extern __declspec(dllimport) HRESULT __stdcall
  88251. CoFileTimeNow(
  88252.           FILETIME * lpFileTime
  88253.     );
  88254.  
  88255.                extern __declspec(dllimport) HRESULT __stdcall
  88256. CLSIDFromProgIDEx(
  88257.          LPCOLESTR lpszProgID,
  88258.           LPCLSID lpclsid
  88259.     );
  88260.  
  88261.  
  88262.  
  88263. #pragma endregion
  88264.  
  88265.  
  88266.  
  88267. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  88268. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  88269. #pragma warning(disable: 4103)
  88270.  
  88271. #pragma pack(pop)
  88272. # 1465 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  88273.  
  88274.  
  88275.  
  88276.  
  88277. #pragma option pop
  88278. # 28 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 2 3
  88279.  
  88280. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\coml2api.h" 1 3
  88281. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\coml2api.h" 3
  88282. #pragma option push -b -a8 -pc -A- -w-pun
  88283. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\coml2api.h" 3
  88284. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 1 3
  88285. #pragma option push -b -a8 -pc -A- -w-pun
  88286. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  88287. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  88288. #pragma option push -b -a8 -pc -A- -w-pun
  88289. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  88290. #pragma option pop
  88291. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  88292.  
  88293. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  88294. #pragma option push -b -a8 -pc -A- -w-pun
  88295. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  88296. #pragma option pop
  88297. # 20 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 2 3
  88298. # 1469 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\combaseapi.h" 3
  88299. #pragma option pop
  88300. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\coml2api.h" 2 3
  88301.  
  88302. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 1 3
  88303. #pragma option push -b -a8 -pc -A- -w-pun
  88304. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88305. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  88306. #pragma option push -b -a8 -pc -A- -w-pun
  88307. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  88308. #pragma option pop
  88309. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 2 3
  88310.  
  88311. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  88312. #pragma option push -b -a8 -pc -A- -w-pun
  88313. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  88314. #pragma option pop
  88315. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 2 3
  88316.  
  88317.  
  88318.  
  88319.  
  88320.  
  88321.  
  88322.  
  88323. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  88324. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 2 3
  88325.  
  88326. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  88327. #pragma option push -b -a8 -pc -A- -w-pun
  88328. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  88329. #pragma option pop
  88330. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 2 3
  88331. # 444 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88332. typedef struct IMallocSpy IMallocSpy;
  88333.  
  88334.  
  88335.  
  88336.  
  88337.  
  88338.  
  88339. typedef struct IBindCtx IBindCtx;
  88340.  
  88341.  
  88342.  
  88343.  
  88344.  
  88345.  
  88346. typedef struct IEnumMoniker IEnumMoniker;
  88347.  
  88348.  
  88349.  
  88350.  
  88351.  
  88352.  
  88353. typedef struct IRunnableObject IRunnableObject;
  88354.  
  88355.  
  88356.  
  88357.  
  88358.  
  88359.  
  88360. typedef struct IRunningObjectTable IRunningObjectTable;
  88361.  
  88362.  
  88363.  
  88364.  
  88365.  
  88366.  
  88367. typedef struct IPersist IPersist;
  88368.  
  88369.  
  88370.  
  88371.  
  88372.  
  88373.  
  88374. typedef struct IPersistStream IPersistStream;
  88375.  
  88376.  
  88377.  
  88378.  
  88379.  
  88380.  
  88381. typedef struct IMoniker IMoniker;
  88382.  
  88383.  
  88384.  
  88385.  
  88386.  
  88387.  
  88388. typedef struct IROTData IROTData;
  88389.  
  88390.  
  88391.  
  88392.  
  88393.  
  88394.  
  88395. typedef struct IEnumSTATSTG IEnumSTATSTG;
  88396.  
  88397.  
  88398.  
  88399.  
  88400.  
  88401.  
  88402. typedef struct IStorage IStorage;
  88403.  
  88404.  
  88405.  
  88406.  
  88407.  
  88408.  
  88409. typedef struct IPersistFile IPersistFile;
  88410.  
  88411.  
  88412.  
  88413.  
  88414.  
  88415.  
  88416. typedef struct IPersistStorage IPersistStorage;
  88417.  
  88418.  
  88419.  
  88420.  
  88421.  
  88422.  
  88423. typedef struct ILockBytes ILockBytes;
  88424.  
  88425.  
  88426.  
  88427.  
  88428.  
  88429.  
  88430. typedef struct IEnumFORMATETC IEnumFORMATETC;
  88431.  
  88432.  
  88433.  
  88434.  
  88435.  
  88436.  
  88437. typedef struct IEnumSTATDATA IEnumSTATDATA;
  88438.  
  88439.  
  88440.  
  88441.  
  88442.  
  88443.  
  88444. typedef struct IRootStorage IRootStorage;
  88445.  
  88446.  
  88447.  
  88448.  
  88449.  
  88450.  
  88451. typedef struct IAdviseSink IAdviseSink;
  88452.  
  88453.  
  88454.  
  88455.  
  88456.  
  88457.  
  88458. typedef struct AsyncIAdviseSink AsyncIAdviseSink;
  88459.  
  88460.  
  88461.  
  88462.  
  88463.  
  88464.  
  88465. typedef struct IAdviseSink2 IAdviseSink2;
  88466.  
  88467.  
  88468.  
  88469.  
  88470.  
  88471.  
  88472. typedef struct AsyncIAdviseSink2 AsyncIAdviseSink2;
  88473.  
  88474.  
  88475.  
  88476.  
  88477.  
  88478.  
  88479. typedef struct IDataObject IDataObject;
  88480.  
  88481.  
  88482.  
  88483.  
  88484.  
  88485.  
  88486. typedef struct IDataAdviseHolder IDataAdviseHolder;
  88487.  
  88488.  
  88489.  
  88490.  
  88491.  
  88492.  
  88493. typedef struct IMessageFilter IMessageFilter;
  88494.  
  88495.  
  88496.  
  88497.  
  88498.  
  88499.  
  88500. typedef struct IClassActivator IClassActivator;
  88501.  
  88502.  
  88503.  
  88504.  
  88505.  
  88506.  
  88507. typedef struct IFillLockBytes IFillLockBytes;
  88508.  
  88509.  
  88510.  
  88511.  
  88512.  
  88513.  
  88514. typedef struct IProgressNotify IProgressNotify;
  88515.  
  88516.  
  88517.  
  88518.  
  88519.  
  88520.  
  88521. typedef struct ILayoutStorage ILayoutStorage;
  88522.  
  88523.  
  88524.  
  88525.  
  88526.  
  88527.  
  88528. typedef struct IBlockingLock IBlockingLock;
  88529.  
  88530.  
  88531.  
  88532.  
  88533.  
  88534.  
  88535. typedef struct ITimeAndNoticeControl ITimeAndNoticeControl;
  88536.  
  88537.  
  88538.  
  88539.  
  88540.  
  88541.  
  88542. typedef struct IOplockStorage IOplockStorage;
  88543.  
  88544.  
  88545.  
  88546.  
  88547.  
  88548.  
  88549. typedef struct IDirectWriterLock IDirectWriterLock;
  88550.  
  88551.  
  88552.  
  88553.  
  88554.  
  88555.  
  88556. typedef struct IUrlMon IUrlMon;
  88557.  
  88558.  
  88559.  
  88560.  
  88561.  
  88562.  
  88563. typedef struct IForegroundTransfer IForegroundTransfer;
  88564.  
  88565.  
  88566.  
  88567.  
  88568.  
  88569.  
  88570. typedef struct IThumbnailExtractor IThumbnailExtractor;
  88571.  
  88572.  
  88573.  
  88574.  
  88575.  
  88576.  
  88577. typedef struct IDummyHICONIncluder IDummyHICONIncluder;
  88578.  
  88579.  
  88580.  
  88581.  
  88582.  
  88583.  
  88584. typedef struct IProcessLock IProcessLock;
  88585.  
  88586.  
  88587.  
  88588.  
  88589.  
  88590.  
  88591. typedef struct ISurrogateService ISurrogateService;
  88592.  
  88593.  
  88594.  
  88595.  
  88596.  
  88597.  
  88598. typedef struct IInitializeSpy IInitializeSpy;
  88599.  
  88600.  
  88601.  
  88602.  
  88603.  
  88604.  
  88605. typedef struct IApartmentShutdown IApartmentShutdown;
  88606.  
  88607.  
  88608.  
  88609.  
  88610.  
  88611.  
  88612. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 1 3
  88613. #pragma option push -b -a8 -pc -A- -w-pun
  88614. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 3
  88615. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  88616. #pragma option push -b -a8 -pc -A- -w-pun
  88617. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  88618. #pragma option pop
  88619. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 2 3
  88620.  
  88621. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  88622. #pragma option push -b -a8 -pc -A- -w-pun
  88623. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  88624. #pragma option pop
  88625. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 2 3
  88626.  
  88627.  
  88628.  
  88629.  
  88630.  
  88631.  
  88632.  
  88633. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  88634. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 2 3
  88635.  
  88636. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  88637. #pragma option push -b -a8 -pc -A- -w-pun
  88638. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  88639. #pragma option pop
  88640. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 2 3
  88641. # 65 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 3
  88642. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypes.h" 1 3
  88643. #pragma option push -b -a8 -pc -A- -w-pun
  88644. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypes.h" 3
  88645. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  88646. #pragma option push -b -a8 -pc -A- -w-pun
  88647. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  88648. #pragma option pop
  88649. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypes.h" 2 3
  88650.  
  88651. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  88652. #pragma option push -b -a8 -pc -A- -w-pun
  88653. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  88654. #pragma option pop
  88655. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypes.h" 2 3
  88656. # 971 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/wtypes.h" 3
  88657. #pragma option pop
  88658. # 65 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 2 3
  88659. # 85 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 3
  88660. #pragma region Application Family or OneCore Family
  88661.  
  88662.  
  88663.  
  88664. extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_0000_v0_0_c_ifspec;
  88665. extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_0000_v0_0_s_ifspec;
  88666. # 281 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 3
  88667. #pragma endregion
  88668. #pragma region Desktop Family or OneCore Family
  88669.  
  88670.  
  88671.  
  88672. extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_0001_v0_0_c_ifspec;
  88673. extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_0001_v0_0_s_ifspec;
  88674. # 417 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 3
  88675. #pragma endregion
  88676. #pragma region Application Family or OneCore Family
  88677.  
  88678.  
  88679.  
  88680. extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_0002_v0_0_c_ifspec;
  88681. extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_0002_v0_0_s_ifspec;
  88682. # 556 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 3
  88683. #pragma endregion
  88684.  
  88685.  
  88686. extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_0003_v0_0_c_ifspec;
  88687. extern RPC_IF_HANDLE __MIDL_itf_unknwn_0000_0003_v0_0_s_ifspec;
  88688.  
  88689.  
  88690.  
  88691.               HRESULT __stdcall IClassFactory_CreateInstance_Proxy(
  88692.     IClassFactory * This,
  88693.  
  88694.               IUnknown *pUnkOuter,
  88695.  
  88696.           const IID * riid,
  88697.  
  88698.                   void **ppvObject);
  88699.  
  88700.  
  88701.                 HRESULT __stdcall IClassFactory_CreateInstance_Stub(
  88702.               IClassFactory * This,
  88703.                          const IID * riid,
  88704.                                              IUnknown **ppvObject);
  88705.  
  88706.               HRESULT __stdcall IClassFactory_LockServer_Proxy(
  88707.     IClassFactory * This,
  88708.                BOOL fLock);
  88709.  
  88710.  
  88711.                 HRESULT __stdcall IClassFactory_LockServer_Stub(
  88712.               IClassFactory * This,
  88713.                BOOL fLock);
  88714. # 599 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 3
  88715. #pragma option pop
  88716. # 723 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 2 3
  88717. # 802 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88718. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\limits.h" 1 3
  88719. # 802 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 2 3
  88720. # 8147 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88721. #pragma region Desktop Family or OneCore Family
  88722.  
  88723.  
  88724.  
  88725. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0053_v0_0_c_ifspec;
  88726. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0053_v0_0_s_ifspec;
  88727.  
  88728.  
  88729.  
  88730.  
  88731.  
  88732.  
  88733.  
  88734. typedef IMallocSpy *LPMALLOCSPY;
  88735.  
  88736.  
  88737. extern const IID IID_IMallocSpy;
  88738. # 8240 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88739.     typedef struct IMallocSpyVtbl
  88740.     {
  88741.  
  88742.  
  88743.         HRESULT ( __stdcall *QueryInterface )(
  88744.             IMallocSpy * This,
  88745.                        const IID * riid,
  88746.  
  88747.                           void **ppvObject);
  88748.  
  88749.         ULONG ( __stdcall *AddRef )(
  88750.             IMallocSpy * This);
  88751.  
  88752.         ULONG ( __stdcall *Release )(
  88753.             IMallocSpy * This);
  88754.  
  88755.         SIZE_T ( __stdcall *PreAlloc )(
  88756.             IMallocSpy * This,
  88757.  
  88758.                   SIZE_T cbRequest);
  88759.  
  88760.         void *( __stdcall *PostAlloc )(
  88761.             IMallocSpy * This,
  88762.  
  88763.                   void *pActual);
  88764.  
  88765.         void *( __stdcall *PreFree )(
  88766.             IMallocSpy * This,
  88767.  
  88768.                   void *pRequest,
  88769.  
  88770.                   BOOL fSpyed);
  88771.  
  88772.         void ( __stdcall *PostFree )(
  88773.             IMallocSpy * This,
  88774.  
  88775.                   BOOL fSpyed);
  88776.  
  88777.         SIZE_T ( __stdcall *PreRealloc )(
  88778.             IMallocSpy * This,
  88779.  
  88780.                   void *pRequest,
  88781.  
  88782.                   SIZE_T cbRequest,
  88783.  
  88784.                       void **ppNewRequest,
  88785.  
  88786.                   BOOL fSpyed);
  88787.  
  88788.         void *( __stdcall *PostRealloc )(
  88789.             IMallocSpy * This,
  88790.  
  88791.                   void *pActual,
  88792.  
  88793.                   BOOL fSpyed);
  88794.  
  88795.         void *( __stdcall *PreGetSize )(
  88796.             IMallocSpy * This,
  88797.  
  88798.                   void *pRequest,
  88799.  
  88800.                   BOOL fSpyed);
  88801.  
  88802.         SIZE_T ( __stdcall *PostGetSize )(
  88803.             IMallocSpy * This,
  88804.  
  88805.                   SIZE_T cbActual,
  88806.  
  88807.                   BOOL fSpyed);
  88808.  
  88809.         void *( __stdcall *PreDidAlloc )(
  88810.             IMallocSpy * This,
  88811.  
  88812.                   void *pRequest,
  88813.  
  88814.                   BOOL fSpyed);
  88815.  
  88816.         int ( __stdcall *PostDidAlloc )(
  88817.             IMallocSpy * This,
  88818.  
  88819.                   void *pRequest,
  88820.  
  88821.                   BOOL fSpyed,
  88822.  
  88823.                   int fActual);
  88824.  
  88825.         void ( __stdcall *PreHeapMinimize )(
  88826.             IMallocSpy * This);
  88827.  
  88828.         void ( __stdcall *PostHeapMinimize )(
  88829.             IMallocSpy * This);
  88830.  
  88831.  
  88832.     } IMallocSpyVtbl;
  88833.  
  88834.     struct IMallocSpy
  88835.     {
  88836.                    struct IMallocSpyVtbl *lpVtbl;
  88837.     };
  88838. # 8406 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88839. #pragma endregion
  88840. #pragma region Application Family or OneCore Family
  88841.  
  88842.  
  88843.  
  88844. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0054_v0_0_c_ifspec;
  88845. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0054_v0_0_s_ifspec;
  88846.  
  88847.  
  88848.  
  88849.  
  88850.  
  88851.  
  88852.  
  88853. typedef IBindCtx *LPBC;
  88854.  
  88855. typedef IBindCtx *LPBINDCTX;
  88856. # 8432 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88857. typedef struct tagBIND_OPTS
  88858.     {
  88859.     DWORD cbStruct;
  88860.     DWORD grfFlags;
  88861.     DWORD grfMode;
  88862.     DWORD dwTickCountDeadline;
  88863.     } BIND_OPTS;
  88864.  
  88865. typedef struct tagBIND_OPTS *LPBIND_OPTS;
  88866. # 8452 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88867. typedef struct tagBIND_OPTS2
  88868.     {
  88869.     DWORD cbStruct;
  88870.     DWORD grfFlags;
  88871.     DWORD grfMode;
  88872.     DWORD dwTickCountDeadline;
  88873.     DWORD dwTrackFlags;
  88874.     DWORD dwClassContext;
  88875.     LCID locale;
  88876.     COSERVERINFO *pServerInfo;
  88877.     } BIND_OPTS2;
  88878.  
  88879. typedef struct tagBIND_OPTS2 *LPBIND_OPTS2;
  88880.  
  88881.  
  88882.  
  88883.  
  88884.  
  88885.  
  88886.  
  88887. typedef struct tagBIND_OPTS3
  88888.     {
  88889.     DWORD cbStruct;
  88890.     DWORD grfFlags;
  88891.     DWORD grfMode;
  88892.     DWORD dwTickCountDeadline;
  88893.     DWORD dwTrackFlags;
  88894.     DWORD dwClassContext;
  88895.     LCID locale;
  88896.     COSERVERINFO *pServerInfo;
  88897.     HWND hwnd;
  88898.     } BIND_OPTS3;
  88899.  
  88900. typedef struct tagBIND_OPTS3 *LPBIND_OPTS3;
  88901.  
  88902.  
  88903. typedef
  88904. enum tagBIND_FLAGS
  88905.     {
  88906.         BIND_MAYBOTHERUSER = 1,
  88907.         BIND_JUSTTESTEXISTENCE = 2
  88908.     } BIND_FLAGS;
  88909.  
  88910.  
  88911. extern const IID IID_IBindCtx;
  88912. # 8542 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88913.     typedef struct IBindCtxVtbl
  88914.     {
  88915.  
  88916.  
  88917.         HRESULT ( __stdcall *QueryInterface )(
  88918.                       IBindCtx * This,
  88919.                                  const IID * riid,
  88920.  
  88921.                           void **ppvObject);
  88922.  
  88923.         ULONG ( __stdcall *AddRef )(
  88924.                       IBindCtx * This);
  88925.  
  88926.         ULONG ( __stdcall *Release )(
  88927.                       IBindCtx * This);
  88928.  
  88929.         HRESULT ( __stdcall *RegisterObjectBound )(
  88930.                       IBindCtx * This,
  88931.                                              IUnknown *punk);
  88932.  
  88933.         HRESULT ( __stdcall *RevokeObjectBound )(
  88934.                       IBindCtx * This,
  88935.                                              IUnknown *punk);
  88936.  
  88937.         HRESULT ( __stdcall *ReleaseBoundObjects )(
  88938.                       IBindCtx * This);
  88939.  
  88940.                       HRESULT ( __stdcall *SetBindOptions )(
  88941.             IBindCtx * This,
  88942.  
  88943.                   BIND_OPTS *pbindopts);
  88944.  
  88945.                       HRESULT ( __stdcall *GetBindOptions )(
  88946.             IBindCtx * This,
  88947.  
  88948.                      BIND_OPTS *pbindopts);
  88949.  
  88950.         HRESULT ( __stdcall *GetRunningObjectTable )(
  88951.                       IBindCtx * This,
  88952.                                              IRunningObjectTable **pprot);
  88953.  
  88954.         HRESULT ( __stdcall *RegisterObjectParam )(
  88955.                       IBindCtx * This,
  88956.                                  LPOLESTR pszKey,
  88957.                                              IUnknown *punk);
  88958.  
  88959.         HRESULT ( __stdcall *GetObjectParam )(
  88960.                       IBindCtx * This,
  88961.                                  LPOLESTR pszKey,
  88962.                                              IUnknown **ppunk);
  88963.  
  88964.         HRESULT ( __stdcall *EnumObjectParam )(
  88965.                       IBindCtx * This,
  88966.                                              IEnumString **ppenum);
  88967.  
  88968.         HRESULT ( __stdcall *RevokeObjectParam )(
  88969.                       IBindCtx * This,
  88970.                                  LPOLESTR pszKey);
  88971.  
  88972.  
  88973.     } IBindCtxVtbl;
  88974.  
  88975.     struct IBindCtx
  88976.     {
  88977.                    struct IBindCtxVtbl *lpVtbl;
  88978.     };
  88979. # 8661 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  88980.                 HRESULT __stdcall IBindCtx_RemoteSetBindOptions_Proxy(
  88981.               IBindCtx * This,
  88982.                          BIND_OPTS2 *pbindopts);
  88983.  
  88984.  
  88985. void __stdcall IBindCtx_RemoteSetBindOptions_Stub(
  88986.     IRpcStubBuffer *This,
  88987.     IRpcChannelBuffer *_pRpcChannelBuffer,
  88988.     PRPC_MESSAGE _pRpcMessage,
  88989.     DWORD *_pdwStubPhase);
  88990.  
  88991.  
  88992.                 HRESULT __stdcall IBindCtx_RemoteGetBindOptions_Proxy(
  88993.               IBindCtx * This,
  88994.                                  BIND_OPTS2 *pbindopts);
  88995.  
  88996.  
  88997. void __stdcall IBindCtx_RemoteGetBindOptions_Stub(
  88998.     IRpcStubBuffer *This,
  88999.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89000.     PRPC_MESSAGE _pRpcMessage,
  89001.     DWORD *_pdwStubPhase);
  89002. # 8695 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89003. typedef IEnumMoniker *LPENUMMONIKER;
  89004.  
  89005.  
  89006. extern const IID IID_IEnumMoniker;
  89007. # 8726 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89008.     typedef struct IEnumMonikerVtbl
  89009.     {
  89010.  
  89011.  
  89012.         HRESULT ( __stdcall *QueryInterface )(
  89013.                       IEnumMoniker * This,
  89014.                                  const IID * riid,
  89015.  
  89016.                           void **ppvObject);
  89017.  
  89018.         ULONG ( __stdcall *AddRef )(
  89019.                       IEnumMoniker * This);
  89020.  
  89021.         ULONG ( __stdcall *Release )(
  89022.                       IEnumMoniker * This);
  89023.  
  89024.                       HRESULT ( __stdcall *Next )(
  89025.             IEnumMoniker * This,
  89026.                        ULONG celt,
  89027.  
  89028.                                                  IMoniker **rgelt,
  89029.  
  89030.                        ULONG *pceltFetched);
  89031.  
  89032.         HRESULT ( __stdcall *Skip )(
  89033.                       IEnumMoniker * This,
  89034.                        ULONG celt);
  89035.  
  89036.         HRESULT ( __stdcall *Reset )(
  89037.                       IEnumMoniker * This);
  89038.  
  89039.         HRESULT ( __stdcall *Clone )(
  89040.                       IEnumMoniker * This,
  89041.                                              IEnumMoniker **ppenum);
  89042.  
  89043.  
  89044.     } IEnumMonikerVtbl;
  89045.  
  89046.     struct IEnumMoniker
  89047.     {
  89048.                    struct IEnumMonikerVtbl *lpVtbl;
  89049.     };
  89050. # 8803 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89051.                 HRESULT __stdcall IEnumMoniker_RemoteNext_Proxy(
  89052.               IEnumMoniker * This,
  89053.                ULONG celt,
  89054.                                                                                 IMoniker **rgelt,
  89055.                            ULONG *pceltFetched);
  89056.  
  89057.  
  89058. void __stdcall IEnumMoniker_RemoteNext_Stub(
  89059.     IRpcStubBuffer *This,
  89060.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89061.     PRPC_MESSAGE _pRpcMessage,
  89062.     DWORD *_pdwStubPhase);
  89063. # 8825 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89064. #pragma endregion
  89065. #pragma region Desktop Family or OneCore Family
  89066.  
  89067.  
  89068.  
  89069. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0056_v0_0_c_ifspec;
  89070. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0056_v0_0_s_ifspec;
  89071.  
  89072.  
  89073.  
  89074.  
  89075.  
  89076.  
  89077.  
  89078. typedef IRunnableObject *LPRUNNABLEOBJECT;
  89079.  
  89080.  
  89081. extern const IID IID_IRunnableObject;
  89082. # 8870 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89083.     typedef struct IRunnableObjectVtbl
  89084.     {
  89085.  
  89086.  
  89087.         HRESULT ( __stdcall *QueryInterface )(
  89088.                       IRunnableObject * This,
  89089.                                  const IID * riid,
  89090.  
  89091.                           void **ppvObject);
  89092.  
  89093.         ULONG ( __stdcall *AddRef )(
  89094.                       IRunnableObject * This);
  89095.  
  89096.         ULONG ( __stdcall *Release )(
  89097.                       IRunnableObject * This);
  89098.  
  89099.         HRESULT ( __stdcall *GetRunningClass )(
  89100.                       IRunnableObject * This,
  89101.                                    LPCLSID lpClsid);
  89102.  
  89103.         HRESULT ( __stdcall *Run )(
  89104.                       IRunnableObject * This,
  89105.                                      LPBINDCTX pbc);
  89106.  
  89107.                       BOOL ( __stdcall *IsRunning )(
  89108.             IRunnableObject * This);
  89109.  
  89110.         HRESULT ( __stdcall *LockRunning )(
  89111.                       IRunnableObject * This,
  89112.                        BOOL fLock,
  89113.                        BOOL fLastUnlockCloses);
  89114.  
  89115.         HRESULT ( __stdcall *SetContainedObject )(
  89116.                       IRunnableObject * This,
  89117.                        BOOL fContained);
  89118.  
  89119.  
  89120.     } IRunnableObjectVtbl;
  89121.  
  89122.     struct IRunnableObject
  89123.     {
  89124.                    struct IRunnableObjectVtbl *lpVtbl;
  89125.     };
  89126. # 8951 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89127.                 HRESULT __stdcall IRunnableObject_RemoteIsRunning_Proxy(
  89128.               IRunnableObject * This);
  89129.  
  89130.  
  89131. void __stdcall IRunnableObject_RemoteIsRunning_Stub(
  89132.     IRpcStubBuffer *This,
  89133.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89134.     PRPC_MESSAGE _pRpcMessage,
  89135.     DWORD *_pdwStubPhase);
  89136. # 8972 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89137. typedef IRunningObjectTable *LPRUNNINGOBJECTTABLE;
  89138.  
  89139.  
  89140. extern const IID IID_IRunningObjectTable;
  89141. # 9015 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89142.     typedef struct IRunningObjectTableVtbl
  89143.     {
  89144.  
  89145.  
  89146.         HRESULT ( __stdcall *QueryInterface )(
  89147.                       IRunningObjectTable * This,
  89148.                                  const IID * riid,
  89149.  
  89150.                           void **ppvObject);
  89151.  
  89152.         ULONG ( __stdcall *AddRef )(
  89153.                       IRunningObjectTable * This);
  89154.  
  89155.         ULONG ( __stdcall *Release )(
  89156.                       IRunningObjectTable * This);
  89157.  
  89158.         HRESULT ( __stdcall *Register )(
  89159.                       IRunningObjectTable * This,
  89160.                        DWORD grfFlags,
  89161.                                              IUnknown *punkObject,
  89162.                                              IMoniker *pmkObjectName,
  89163.                                    DWORD *pdwRegister);
  89164.  
  89165.         HRESULT ( __stdcall *Revoke )(
  89166.                       IRunningObjectTable * This,
  89167.                        DWORD dwRegister);
  89168.  
  89169.         HRESULT ( __stdcall *IsRunning )(
  89170.                       IRunningObjectTable * This,
  89171.                                              IMoniker *pmkObjectName);
  89172.  
  89173.         HRESULT ( __stdcall *GetObjectA )(
  89174.                       IRunningObjectTable * This,
  89175.                                              IMoniker *pmkObjectName,
  89176.                                              IUnknown **ppunkObject);
  89177.  
  89178.         HRESULT ( __stdcall *NoteChangeTime )(
  89179.                       IRunningObjectTable * This,
  89180.                        DWORD dwRegister,
  89181.                                  FILETIME *pfiletime);
  89182.  
  89183.         HRESULT ( __stdcall *GetTimeOfLastChange )(
  89184.                       IRunningObjectTable * This,
  89185.                                              IMoniker *pmkObjectName,
  89186.                                    FILETIME *pfiletime);
  89187.  
  89188.         HRESULT ( __stdcall *EnumRunning )(
  89189.                       IRunningObjectTable * This,
  89190.                                              IEnumMoniker **ppenumMoniker);
  89191.  
  89192.  
  89193.     } IRunningObjectTableVtbl;
  89194.  
  89195.     struct IRunningObjectTable
  89196.     {
  89197.                    struct IRunningObjectTableVtbl *lpVtbl;
  89198.     };
  89199. # 9124 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89200. #pragma endregion
  89201. #pragma region Application Family or OneCore Family
  89202.  
  89203.  
  89204.  
  89205. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0058_v0_0_c_ifspec;
  89206. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0058_v0_0_s_ifspec;
  89207.  
  89208.  
  89209.  
  89210.  
  89211.  
  89212.  
  89213.  
  89214. typedef IPersist *LPPERSIST;
  89215.  
  89216.  
  89217. extern const IID IID_IPersist;
  89218. # 9157 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89219.     typedef struct IPersistVtbl
  89220.     {
  89221.  
  89222.  
  89223.         HRESULT ( __stdcall *QueryInterface )(
  89224.                       IPersist * This,
  89225.                                  const IID * riid,
  89226.  
  89227.                           void **ppvObject);
  89228.  
  89229.         ULONG ( __stdcall *AddRef )(
  89230.                       IPersist * This);
  89231.  
  89232.         ULONG ( __stdcall *Release )(
  89233.                       IPersist * This);
  89234.  
  89235.         HRESULT ( __stdcall *GetClassID )(
  89236.                       IPersist * This,
  89237.                                    CLSID *pClassID);
  89238.  
  89239.  
  89240.     } IPersistVtbl;
  89241.  
  89242.     struct IPersist
  89243.     {
  89244.                    struct IPersistVtbl *lpVtbl;
  89245.     };
  89246. # 9220 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89247. typedef IPersistStream *LPPERSISTSTREAM;
  89248.  
  89249.  
  89250. extern const IID IID_IPersistStream;
  89251. # 9248 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89252.     typedef struct IPersistStreamVtbl
  89253.     {
  89254.  
  89255.  
  89256.         HRESULT ( __stdcall *QueryInterface )(
  89257.                       IPersistStream * This,
  89258.                                  const IID * riid,
  89259.  
  89260.                           void **ppvObject);
  89261.  
  89262.         ULONG ( __stdcall *AddRef )(
  89263.                       IPersistStream * This);
  89264.  
  89265.         ULONG ( __stdcall *Release )(
  89266.                       IPersistStream * This);
  89267.  
  89268.         HRESULT ( __stdcall *GetClassID )(
  89269.                       IPersistStream * This,
  89270.                                    CLSID *pClassID);
  89271.  
  89272.         HRESULT ( __stdcall *IsDirty )(
  89273.                       IPersistStream * This);
  89274.  
  89275.         HRESULT ( __stdcall *Load )(
  89276.                       IPersistStream * This,
  89277.                                              IStream *pStm);
  89278.  
  89279.         HRESULT ( __stdcall *Save )(
  89280.                       IPersistStream * This,
  89281.                                              IStream *pStm,
  89282.                        BOOL fClearDirty);
  89283.  
  89284.         HRESULT ( __stdcall *GetSizeMax )(
  89285.                       IPersistStream * This,
  89286.                                    ULARGE_INTEGER *pcbSize);
  89287.  
  89288.  
  89289.     } IPersistStreamVtbl;
  89290.  
  89291.     struct IPersistStream
  89292.     {
  89293.                    struct IPersistStreamVtbl *lpVtbl;
  89294.     };
  89295. # 9340 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89296. typedef IMoniker *LPMONIKER;
  89297.  
  89298. typedef
  89299. enum tagMKSYS
  89300.     {
  89301.         MKSYS_NONE = 0,
  89302.         MKSYS_GENERICCOMPOSITE = 1,
  89303.         MKSYS_FILEMONIKER = 2,
  89304.         MKSYS_ANTIMONIKER = 3,
  89305.         MKSYS_ITEMMONIKER = 4,
  89306.         MKSYS_POINTERMONIKER = 5,
  89307.         MKSYS_CLASSMONIKER = 7,
  89308.         MKSYS_OBJREFMONIKER = 8,
  89309.         MKSYS_SESSIONMONIKER = 9,
  89310.         MKSYS_LUAMONIKER = 10
  89311.     } MKSYS;
  89312.  
  89313. typedef
  89314. enum tagMKREDUCE
  89315.     {
  89316.         MKRREDUCE_ONE = ( 3 << 16 ) ,
  89317.         MKRREDUCE_TOUSER = ( 2 << 16 ) ,
  89318.         MKRREDUCE_THROUGHUSER = ( 1 << 16 ) ,
  89319.         MKRREDUCE_ALL = 0
  89320.     } MKRREDUCE;
  89321.  
  89322.  
  89323. extern const IID IID_IMoniker;
  89324. # 9457 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89325.     typedef struct IMonikerVtbl
  89326.     {
  89327.  
  89328.  
  89329.         HRESULT ( __stdcall *QueryInterface )(
  89330.                       IMoniker * This,
  89331.                                  const IID * riid,
  89332.  
  89333.                           void **ppvObject);
  89334.  
  89335.         ULONG ( __stdcall *AddRef )(
  89336.                       IMoniker * This);
  89337.  
  89338.         ULONG ( __stdcall *Release )(
  89339.                       IMoniker * This);
  89340.  
  89341.         HRESULT ( __stdcall *GetClassID )(
  89342.                       IMoniker * This,
  89343.                                    CLSID *pClassID);
  89344.  
  89345.         HRESULT ( __stdcall *IsDirty )(
  89346.                       IMoniker * This);
  89347.  
  89348.         HRESULT ( __stdcall *Load )(
  89349.                       IMoniker * This,
  89350.                                              IStream *pStm);
  89351.  
  89352.         HRESULT ( __stdcall *Save )(
  89353.                       IMoniker * This,
  89354.                                              IStream *pStm,
  89355.                        BOOL fClearDirty);
  89356.  
  89357.         HRESULT ( __stdcall *GetSizeMax )(
  89358.                       IMoniker * This,
  89359.                                    ULARGE_INTEGER *pcbSize);
  89360.  
  89361.                       HRESULT ( __stdcall *BindToObject )(
  89362.             IMoniker * This,
  89363.  
  89364.                   IBindCtx *pbc,
  89365.  
  89366.                       IMoniker *pmkToLeft,
  89367.  
  89368.                   const IID * riidResult,
  89369.  
  89370.                       void **ppvResult);
  89371.  
  89372.                       HRESULT ( __stdcall *BindToStorage )(
  89373.             IMoniker * This,
  89374.  
  89375.                   IBindCtx *pbc,
  89376.  
  89377.                       IMoniker *pmkToLeft,
  89378.  
  89379.                   const IID * riid,
  89380.  
  89381.                       void **ppvObj);
  89382.  
  89383.         HRESULT ( __stdcall *Reduce )(
  89384.                       IMoniker * This,
  89385.                                              IBindCtx *pbc,
  89386.                        DWORD dwReduceHowFar,
  89387.                                                                IMoniker **ppmkToLeft,
  89388.                                              IMoniker **ppmkReduced);
  89389.  
  89390.         HRESULT ( __stdcall *ComposeWith )(
  89391.                       IMoniker * This,
  89392.                                              IMoniker *pmkRight,
  89393.                        BOOL fOnlyIfNotGeneric,
  89394.                                              IMoniker **ppmkComposite);
  89395.  
  89396.         HRESULT ( __stdcall *Enum )(
  89397.                       IMoniker * This,
  89398.                        BOOL fForward,
  89399.                                              IEnumMoniker **ppenumMoniker);
  89400.  
  89401.         HRESULT ( __stdcall *IsEqual )(
  89402.                       IMoniker * This,
  89403.                                              IMoniker *pmkOtherMoniker);
  89404.  
  89405.         HRESULT ( __stdcall *Hash )(
  89406.                       IMoniker * This,
  89407.                                    DWORD *pdwHash);
  89408.  
  89409.         HRESULT ( __stdcall *IsRunning )(
  89410.                       IMoniker * This,
  89411.                                              IBindCtx *pbc,
  89412.                                              IMoniker *pmkToLeft,
  89413.                                              IMoniker *pmkNewlyRunning);
  89414.  
  89415.         HRESULT ( __stdcall *GetTimeOfLastChange )(
  89416.                       IMoniker * This,
  89417.                                              IBindCtx *pbc,
  89418.                                              IMoniker *pmkToLeft,
  89419.                                    FILETIME *pFileTime);
  89420.  
  89421.         HRESULT ( __stdcall *Inverse )(
  89422.                       IMoniker * This,
  89423.                                              IMoniker **ppmk);
  89424.  
  89425.         HRESULT ( __stdcall *CommonPrefixWith )(
  89426.                       IMoniker * This,
  89427.                                              IMoniker *pmkOther,
  89428.                                              IMoniker **ppmkPrefix);
  89429.  
  89430.         HRESULT ( __stdcall *RelativePathTo )(
  89431.                       IMoniker * This,
  89432.                                              IMoniker *pmkOther,
  89433.                                              IMoniker **ppmkRelPath);
  89434.  
  89435.         HRESULT ( __stdcall *GetDisplayName )(
  89436.                       IMoniker * This,
  89437.                                              IBindCtx *pbc,
  89438.                                              IMoniker *pmkToLeft,
  89439.                                              LPOLESTR *ppszDisplayName);
  89440.  
  89441.         HRESULT ( __stdcall *ParseDisplayName )(
  89442.                       IMoniker * This,
  89443.                                              IBindCtx *pbc,
  89444.                                              IMoniker *pmkToLeft,
  89445.                                  LPOLESTR pszDisplayName,
  89446.                                    ULONG *pchEaten,
  89447.                                              IMoniker **ppmkOut);
  89448.  
  89449.         HRESULT ( __stdcall *IsSystemMoniker )(
  89450.                       IMoniker * This,
  89451.                                    DWORD *pdwMksys);
  89452.  
  89453.  
  89454.     } IMonikerVtbl;
  89455.  
  89456.     struct IMoniker
  89457.     {
  89458.                    struct IMonikerVtbl *lpVtbl;
  89459.     };
  89460. # 9677 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89461.                 HRESULT __stdcall IMoniker_RemoteBindToObject_Proxy(
  89462.               IMoniker * This,
  89463.                                      IBindCtx *pbc,
  89464.                                      IMoniker *pmkToLeft,
  89465.                          const IID * riidResult,
  89466.                                              IUnknown **ppvResult);
  89467.  
  89468.  
  89469. void __stdcall IMoniker_RemoteBindToObject_Stub(
  89470.     IRpcStubBuffer *This,
  89471.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89472.     PRPC_MESSAGE _pRpcMessage,
  89473.     DWORD *_pdwStubPhase);
  89474.  
  89475.  
  89476.                 HRESULT __stdcall IMoniker_RemoteBindToStorage_Proxy(
  89477.               IMoniker * This,
  89478.                                      IBindCtx *pbc,
  89479.                                      IMoniker *pmkToLeft,
  89480.                          const IID * riid,
  89481.                                              IUnknown **ppvObj);
  89482.  
  89483.  
  89484. void __stdcall IMoniker_RemoteBindToStorage_Stub(
  89485.     IRpcStubBuffer *This,
  89486.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89487.     PRPC_MESSAGE _pRpcMessage,
  89488.     DWORD *_pdwStubPhase);
  89489. # 9715 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89490. #pragma endregion
  89491. #pragma region Desktop Family or OneCore Family
  89492.  
  89493.  
  89494.  
  89495. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0061_v0_0_c_ifspec;
  89496. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0061_v0_0_s_ifspec;
  89497. # 9730 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89498. extern const IID IID_IROTData;
  89499. # 9748 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89500.     typedef struct IROTDataVtbl
  89501.     {
  89502.  
  89503.  
  89504.         HRESULT ( __stdcall *QueryInterface )(
  89505.                       IROTData * This,
  89506.                                  const IID * riid,
  89507.  
  89508.                           void **ppvObject);
  89509.  
  89510.         ULONG ( __stdcall *AddRef )(
  89511.                       IROTData * This);
  89512.  
  89513.         ULONG ( __stdcall *Release )(
  89514.                       IROTData * This);
  89515.  
  89516.         HRESULT ( __stdcall *GetComparisonData )(
  89517.                       IROTData * This,
  89518.                                                                byte *pbData,
  89519.                        ULONG cbMax,
  89520.                                    ULONG *pcbData);
  89521.  
  89522.  
  89523.     } IROTDataVtbl;
  89524.  
  89525.     struct IROTData
  89526.     {
  89527.                    struct IROTDataVtbl *lpVtbl;
  89528.     };
  89529. # 9811 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89530. #pragma endregion
  89531. #pragma region Application Family or OneCore Family
  89532.  
  89533.  
  89534.  
  89535. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0062_v0_0_c_ifspec;
  89536. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0062_v0_0_s_ifspec;
  89537.  
  89538.  
  89539.  
  89540.  
  89541.  
  89542.  
  89543.  
  89544. typedef IEnumSTATSTG *LPENUMSTATSTG;
  89545.  
  89546.  
  89547. extern const IID IID_IEnumSTATSTG;
  89548. # 9856 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89549.     typedef struct IEnumSTATSTGVtbl
  89550.     {
  89551.  
  89552.  
  89553.         HRESULT ( __stdcall *QueryInterface )(
  89554.                       IEnumSTATSTG * This,
  89555.                                  const IID * riid,
  89556.  
  89557.                           void **ppvObject);
  89558.  
  89559.         ULONG ( __stdcall *AddRef )(
  89560.                       IEnumSTATSTG * This);
  89561.  
  89562.         ULONG ( __stdcall *Release )(
  89563.                       IEnumSTATSTG * This);
  89564.  
  89565.                       HRESULT ( __stdcall *Next )(
  89566.             IEnumSTATSTG * This,
  89567.                        ULONG celt,
  89568.  
  89569.                                                  STATSTG *rgelt,
  89570.  
  89571.                        ULONG *pceltFetched);
  89572.  
  89573.         HRESULT ( __stdcall *Skip )(
  89574.                       IEnumSTATSTG * This,
  89575.                        ULONG celt);
  89576.  
  89577.         HRESULT ( __stdcall *Reset )(
  89578.                       IEnumSTATSTG * This);
  89579.  
  89580.         HRESULT ( __stdcall *Clone )(
  89581.                       IEnumSTATSTG * This,
  89582.                                              IEnumSTATSTG **ppenum);
  89583.  
  89584.  
  89585.     } IEnumSTATSTGVtbl;
  89586.  
  89587.     struct IEnumSTATSTG
  89588.     {
  89589.                    struct IEnumSTATSTGVtbl *lpVtbl;
  89590.     };
  89591. # 9933 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89592.                 HRESULT __stdcall IEnumSTATSTG_RemoteNext_Proxy(
  89593.               IEnumSTATSTG * This,
  89594.                ULONG celt,
  89595.                                                                                 STATSTG *rgelt,
  89596.                            ULONG *pceltFetched);
  89597.  
  89598.  
  89599. void __stdcall IEnumSTATSTG_RemoteNext_Stub(
  89600.     IRpcStubBuffer *This,
  89601.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89602.     PRPC_MESSAGE _pRpcMessage,
  89603.     DWORD *_pdwStubPhase);
  89604. # 9957 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89605. typedef IStorage *LPSTORAGE;
  89606.  
  89607. typedef struct tagRemSNB
  89608.     {
  89609.     ULONG ulCntStr;
  89610.     ULONG ulCntChar;
  89611.                     OLECHAR rgString[ 1 ];
  89612.     } RemSNB;
  89613.  
  89614. typedef RemSNB *wireSNB;
  89615.  
  89616.  
  89617. typedef LPOLESTR *SNB;
  89618.  
  89619.  
  89620.  
  89621. extern const IID IID_IStorage;
  89622. # 10072 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89623.     typedef struct IStorageVtbl
  89624.     {
  89625.  
  89626.  
  89627.         HRESULT ( __stdcall *QueryInterface )(
  89628.                       IStorage * This,
  89629.                                  const IID * riid,
  89630.  
  89631.                           void **ppvObject);
  89632.  
  89633.         ULONG ( __stdcall *AddRef )(
  89634.                       IStorage * This);
  89635.  
  89636.         ULONG ( __stdcall *Release )(
  89637.                       IStorage * This);
  89638.  
  89639.         HRESULT ( __stdcall *CreateStream )(
  89640.                       IStorage * This,
  89641.                                                 const OLECHAR *pwcsName,
  89642.                        DWORD grfMode,
  89643.                        DWORD reserved1,
  89644.                        DWORD reserved2,
  89645.                                              IStream **ppstm);
  89646.  
  89647.                       HRESULT ( __stdcall *OpenStream )(
  89648.             IStorage * This,
  89649.  
  89650.                     const OLECHAR *pwcsName,
  89651.  
  89652.                         void *reserved1,
  89653.                        DWORD grfMode,
  89654.                        DWORD reserved2,
  89655.  
  89656.                       IStream **ppstm);
  89657.  
  89658.         HRESULT ( __stdcall *CreateStorage )(
  89659.                       IStorage * This,
  89660.                                                 const OLECHAR *pwcsName,
  89661.                        DWORD grfMode,
  89662.                        DWORD reserved1,
  89663.                        DWORD reserved2,
  89664.                                              IStorage **ppstg);
  89665.  
  89666.         HRESULT ( __stdcall *OpenStorage )(
  89667.                       IStorage * This,
  89668.                                                             const OLECHAR *pwcsName,
  89669.                                              IStorage *pstgPriority,
  89670.                        DWORD grfMode,
  89671.                                                        SNB snbExclude,
  89672.                        DWORD reserved,
  89673.                                              IStorage **ppstg);
  89674.  
  89675.                       HRESULT ( __stdcall *CopyTo )(
  89676.             IStorage * This,
  89677.                        DWORD ciidExclude,
  89678.  
  89679.                                          const IID *rgiidExclude,
  89680.  
  89681.                       SNB snbExclude,
  89682.  
  89683.                   IStorage *pstgDest);
  89684.  
  89685.         HRESULT ( __stdcall *MoveElementTo )(
  89686.                       IStorage * This,
  89687.                                                 const OLECHAR *pwcsName,
  89688.                                              IStorage *pstgDest,
  89689.                                                 const OLECHAR *pwcsNewName,
  89690.                        DWORD grfFlags);
  89691.  
  89692.         HRESULT ( __stdcall *Commit )(
  89693.                       IStorage * This,
  89694.                        DWORD grfCommitFlags);
  89695.  
  89696.         HRESULT ( __stdcall *Revert )(
  89697.                       IStorage * This);
  89698.  
  89699.                       HRESULT ( __stdcall *EnumElements )(
  89700.             IStorage * This,
  89701.  
  89702.                         DWORD reserved1,
  89703.  
  89704.                         void *reserved2,
  89705.  
  89706.                         DWORD reserved3,
  89707.  
  89708.                       IEnumSTATSTG **ppenum);
  89709.  
  89710.         HRESULT ( __stdcall *DestroyElement )(
  89711.                       IStorage * This,
  89712.                                                 const OLECHAR *pwcsName);
  89713.  
  89714.         HRESULT ( __stdcall *RenameElement )(
  89715.                       IStorage * This,
  89716.                                                 const OLECHAR *pwcsOldName,
  89717.                                                 const OLECHAR *pwcsNewName);
  89718.  
  89719.         HRESULT ( __stdcall *SetElementTimes )(
  89720.                       IStorage * This,
  89721.                                                             const OLECHAR *pwcsName,
  89722.                                              const FILETIME *pctime,
  89723.                                              const FILETIME *patime,
  89724.                                              const FILETIME *pmtime);
  89725.  
  89726.         HRESULT ( __stdcall *SetClass )(
  89727.                       IStorage * This,
  89728.                                  const IID * clsid);
  89729.  
  89730.         HRESULT ( __stdcall *SetStateBits )(
  89731.                       IStorage * This,
  89732.                        DWORD grfStateBits,
  89733.                        DWORD grfMask);
  89734.  
  89735.         HRESULT ( __stdcall *Stat )(
  89736.                       IStorage * This,
  89737.                                    STATSTG *pstatstg,
  89738.                        DWORD grfStatFlag);
  89739.  
  89740.  
  89741.     } IStorageVtbl;
  89742.  
  89743.     struct IStorage
  89744.     {
  89745.                    struct IStorageVtbl *lpVtbl;
  89746.     };
  89747. # 10264 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89748.                 HRESULT __stdcall IStorage_RemoteOpenStream_Proxy(
  89749.               IStorage * This,
  89750.                                         const OLECHAR *pwcsName,
  89751.                ULONG cbReserved1,
  89752.                                                                        byte *reserved1,
  89753.                DWORD grfMode,
  89754.                DWORD reserved2,
  89755.                                      IStream **ppstm);
  89756.  
  89757.  
  89758. void __stdcall IStorage_RemoteOpenStream_Stub(
  89759.     IRpcStubBuffer *This,
  89760.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89761.     PRPC_MESSAGE _pRpcMessage,
  89762.     DWORD *_pdwStubPhase);
  89763.  
  89764.  
  89765.                 HRESULT __stdcall IStorage_RemoteCopyTo_Proxy(
  89766.               IStorage * This,
  89767.                DWORD ciidExclude,
  89768.                                                                        const IID *rgiidExclude,
  89769.                                                SNB snbExclude,
  89770.                                      IStorage *pstgDest);
  89771.  
  89772.  
  89773. void __stdcall IStorage_RemoteCopyTo_Stub(
  89774.     IRpcStubBuffer *This,
  89775.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89776.     PRPC_MESSAGE _pRpcMessage,
  89777.     DWORD *_pdwStubPhase);
  89778.  
  89779.  
  89780.                 HRESULT __stdcall IStorage_RemoteEnumElements_Proxy(
  89781.               IStorage * This,
  89782.                DWORD reserved1,
  89783.                ULONG cbReserved2,
  89784.                                                                        byte *reserved2,
  89785.                DWORD reserved3,
  89786.                                      IEnumSTATSTG **ppenum);
  89787.  
  89788.  
  89789. void __stdcall IStorage_RemoteEnumElements_Stub(
  89790.     IRpcStubBuffer *This,
  89791.     IRpcChannelBuffer *_pRpcChannelBuffer,
  89792.     PRPC_MESSAGE _pRpcMessage,
  89793.     DWORD *_pdwStubPhase);
  89794. # 10320 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89795. #pragma endregion
  89796. #pragma region Desktop Family or OneCore Family
  89797.  
  89798.  
  89799.  
  89800. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0064_v0_0_c_ifspec;
  89801. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0064_v0_0_s_ifspec;
  89802.  
  89803.  
  89804.  
  89805.  
  89806.  
  89807.  
  89808.  
  89809. typedef IPersistFile *LPPERSISTFILE;
  89810.  
  89811.  
  89812. extern const IID IID_IPersistFile;
  89813. # 10366 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89814.     typedef struct IPersistFileVtbl
  89815.     {
  89816.  
  89817.  
  89818.         HRESULT ( __stdcall *QueryInterface )(
  89819.                       IPersistFile * This,
  89820.                                  const IID * riid,
  89821.  
  89822.                           void **ppvObject);
  89823.  
  89824.         ULONG ( __stdcall *AddRef )(
  89825.                       IPersistFile * This);
  89826.  
  89827.         ULONG ( __stdcall *Release )(
  89828.                       IPersistFile * This);
  89829.  
  89830.         HRESULT ( __stdcall *GetClassID )(
  89831.                       IPersistFile * This,
  89832.                                    CLSID *pClassID);
  89833.  
  89834.         HRESULT ( __stdcall *IsDirty )(
  89835.                       IPersistFile * This);
  89836.  
  89837.         HRESULT ( __stdcall *Load )(
  89838.                       IPersistFile * This,
  89839.                                  LPCOLESTR pszFileName,
  89840.                        DWORD dwMode);
  89841.  
  89842.         HRESULT ( __stdcall *Save )(
  89843.                       IPersistFile * This,
  89844.                                              LPCOLESTR pszFileName,
  89845.                        BOOL fRemember);
  89846.  
  89847.         HRESULT ( __stdcall *SaveCompleted )(
  89848.                       IPersistFile * This,
  89849.                                              LPCOLESTR pszFileName);
  89850.  
  89851.         HRESULT ( __stdcall *GetCurFile )(
  89852.                       IPersistFile * This,
  89853.                                              LPOLESTR *ppszFileName);
  89854.  
  89855.  
  89856.     } IPersistFileVtbl;
  89857.  
  89858.     struct IPersistFile
  89859.     {
  89860.                    struct IPersistFileVtbl *lpVtbl;
  89861.     };
  89862. # 10466 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89863. typedef IPersistStorage *LPPERSISTSTORAGE;
  89864.  
  89865.  
  89866. extern const IID IID_IPersistStorage;
  89867. # 10499 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89868.     typedef struct IPersistStorageVtbl
  89869.     {
  89870.  
  89871.  
  89872.         HRESULT ( __stdcall *QueryInterface )(
  89873.                       IPersistStorage * This,
  89874.                                  const IID * riid,
  89875.  
  89876.                           void **ppvObject);
  89877.  
  89878.         ULONG ( __stdcall *AddRef )(
  89879.                       IPersistStorage * This);
  89880.  
  89881.         ULONG ( __stdcall *Release )(
  89882.                       IPersistStorage * This);
  89883.  
  89884.         HRESULT ( __stdcall *GetClassID )(
  89885.                       IPersistStorage * This,
  89886.                                    CLSID *pClassID);
  89887.  
  89888.         HRESULT ( __stdcall *IsDirty )(
  89889.                       IPersistStorage * This);
  89890.  
  89891.         HRESULT ( __stdcall *InitNew )(
  89892.                       IPersistStorage * This,
  89893.                                              IStorage *pStg);
  89894.  
  89895.         HRESULT ( __stdcall *Load )(
  89896.                       IPersistStorage * This,
  89897.                                              IStorage *pStg);
  89898.  
  89899.         HRESULT ( __stdcall *Save )(
  89900.                       IPersistStorage * This,
  89901.                                              IStorage *pStgSave,
  89902.                        BOOL fSameAsLoad);
  89903.  
  89904.         HRESULT ( __stdcall *SaveCompleted )(
  89905.                       IPersistStorage * This,
  89906.                                              IStorage *pStgNew);
  89907.  
  89908.         HRESULT ( __stdcall *HandsOffStorage )(
  89909.                       IPersistStorage * This);
  89910.  
  89911.  
  89912.     } IPersistStorageVtbl;
  89913.  
  89914.     struct IPersistStorage
  89915.     {
  89916.                    struct IPersistStorageVtbl *lpVtbl;
  89917.     };
  89918. # 10602 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89919. #pragma endregion
  89920. #pragma region Application Family or OneCore Family
  89921.  
  89922.  
  89923.  
  89924. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0066_v0_0_c_ifspec;
  89925. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0066_v0_0_s_ifspec;
  89926.  
  89927.  
  89928.  
  89929.  
  89930.  
  89931.  
  89932.  
  89933. typedef ILockBytes *LPLOCKBYTES;
  89934.  
  89935.  
  89936. extern const IID IID_ILockBytes;
  89937. # 10667 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  89938.     typedef struct ILockBytesVtbl
  89939.     {
  89940.  
  89941.  
  89942.         HRESULT ( __stdcall *QueryInterface )(
  89943.                       ILockBytes * This,
  89944.                                  const IID * riid,
  89945.  
  89946.                           void **ppvObject);
  89947.  
  89948.         ULONG ( __stdcall *AddRef )(
  89949.                       ILockBytes * This);
  89950.  
  89951.         ULONG ( __stdcall *Release )(
  89952.                       ILockBytes * This);
  89953.  
  89954.                       HRESULT ( __stdcall *ReadAt )(
  89955.             ILockBytes * This,
  89956.                        ULARGE_INTEGER ulOffset,
  89957.  
  89958.                                                  void *pv,
  89959.                        ULONG cb,
  89960.  
  89961.                        ULONG *pcbRead);
  89962.  
  89963.                       HRESULT ( __stdcall *WriteAt )(
  89964.             ILockBytes * This,
  89965.                        ULARGE_INTEGER ulOffset,
  89966.  
  89967.                                   const void *pv,
  89968.                        ULONG cb,
  89969.  
  89970.                        ULONG *pcbWritten);
  89971.  
  89972.         HRESULT ( __stdcall *Flush )(
  89973.                       ILockBytes * This);
  89974.  
  89975.         HRESULT ( __stdcall *SetSize )(
  89976.                       ILockBytes * This,
  89977.                        ULARGE_INTEGER cb);
  89978.  
  89979.         HRESULT ( __stdcall *LockRegion )(
  89980.                       ILockBytes * This,
  89981.                        ULARGE_INTEGER libOffset,
  89982.                        ULARGE_INTEGER cb,
  89983.                        DWORD dwLockType);
  89984.  
  89985.         HRESULT ( __stdcall *UnlockRegion )(
  89986.                       ILockBytes * This,
  89987.                        ULARGE_INTEGER libOffset,
  89988.                        ULARGE_INTEGER cb,
  89989.                        DWORD dwLockType);
  89990.  
  89991.         HRESULT ( __stdcall *Stat )(
  89992.                       ILockBytes * This,
  89993.                                    STATSTG *pstatstg,
  89994.                        DWORD grfStatFlag);
  89995.  
  89996.  
  89997.     } ILockBytesVtbl;
  89998.  
  89999.     struct ILockBytes
  90000.     {
  90001.                    struct ILockBytesVtbl *lpVtbl;
  90002.     };
  90003. # 10776 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90004.                 HRESULT __stdcall ILockBytes_RemoteReadAt_Proxy(
  90005.               ILockBytes * This,
  90006.                ULARGE_INTEGER ulOffset,
  90007.                                                                          byte *pv,
  90008.                ULONG cb,
  90009.                            ULONG *pcbRead);
  90010.  
  90011.  
  90012. void __stdcall ILockBytes_RemoteReadAt_Stub(
  90013.     IRpcStubBuffer *This,
  90014.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90015.     PRPC_MESSAGE _pRpcMessage,
  90016.     DWORD *_pdwStubPhase);
  90017.  
  90018.  
  90019.                 HRESULT __stdcall ILockBytes_RemoteWriteAt_Proxy(
  90020.               ILockBytes * This,
  90021.                ULARGE_INTEGER ulOffset,
  90022.                                                   const byte *pv,
  90023.                ULONG cb,
  90024.                            ULONG *pcbWritten);
  90025.  
  90026.  
  90027. void __stdcall ILockBytes_RemoteWriteAt_Stub(
  90028.     IRpcStubBuffer *This,
  90029.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90030.     PRPC_MESSAGE _pRpcMessage,
  90031.     DWORD *_pdwStubPhase);
  90032. # 10816 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90033. typedef IEnumFORMATETC *LPENUMFORMATETC;
  90034.  
  90035.  
  90036. typedef struct tagDVTARGETDEVICE
  90037.     {
  90038.     DWORD tdSize;
  90039.     WORD tdDriverNameOffset;
  90040.     WORD tdDeviceNameOffset;
  90041.     WORD tdPortNameOffset;
  90042.     WORD tdExtDevmodeOffset;
  90043.                     BYTE tdData[ 1 ];
  90044.     } DVTARGETDEVICE;
  90045.  
  90046.  
  90047. typedef CLIPFORMAT *LPCLIPFORMAT;
  90048.  
  90049. typedef struct tagFORMATETC
  90050.     {
  90051.     CLIPFORMAT cfFormat;
  90052.                    DVTARGETDEVICE *ptd;
  90053.     DWORD dwAspect;
  90054.     LONG lindex;
  90055.     DWORD tymed;
  90056.     } FORMATETC;
  90057.  
  90058. typedef struct tagFORMATETC *LPFORMATETC;
  90059.  
  90060.  
  90061. extern const IID IID_IEnumFORMATETC;
  90062. # 10872 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90063.     typedef struct IEnumFORMATETCVtbl
  90064.     {
  90065.  
  90066.  
  90067.         HRESULT ( __stdcall *QueryInterface )(
  90068.                       IEnumFORMATETC * This,
  90069.                                  const IID * riid,
  90070.  
  90071.                           void **ppvObject);
  90072.  
  90073.         ULONG ( __stdcall *AddRef )(
  90074.                       IEnumFORMATETC * This);
  90075.  
  90076.         ULONG ( __stdcall *Release )(
  90077.                       IEnumFORMATETC * This);
  90078.  
  90079.                       HRESULT ( __stdcall *Next )(
  90080.             IEnumFORMATETC * This,
  90081.                        ULONG celt,
  90082.  
  90083.                                                  FORMATETC *rgelt,
  90084.  
  90085.                        ULONG *pceltFetched);
  90086.  
  90087.         HRESULT ( __stdcall *Skip )(
  90088.                       IEnumFORMATETC * This,
  90089.                        ULONG celt);
  90090.  
  90091.         HRESULT ( __stdcall *Reset )(
  90092.                       IEnumFORMATETC * This);
  90093.  
  90094.         HRESULT ( __stdcall *Clone )(
  90095.                       IEnumFORMATETC * This,
  90096.                                              IEnumFORMATETC **ppenum);
  90097.  
  90098.  
  90099.     } IEnumFORMATETCVtbl;
  90100.  
  90101.     struct IEnumFORMATETC
  90102.     {
  90103.                    struct IEnumFORMATETCVtbl *lpVtbl;
  90104.     };
  90105. # 10949 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90106.                 HRESULT __stdcall IEnumFORMATETC_RemoteNext_Proxy(
  90107.               IEnumFORMATETC * This,
  90108.                ULONG celt,
  90109.                                                                                 FORMATETC *rgelt,
  90110.                            ULONG *pceltFetched);
  90111.  
  90112.  
  90113. void __stdcall IEnumFORMATETC_RemoteNext_Stub(
  90114.     IRpcStubBuffer *This,
  90115.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90116.     PRPC_MESSAGE _pRpcMessage,
  90117.     DWORD *_pdwStubPhase);
  90118. # 10973 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90119. typedef IEnumSTATDATA *LPENUMSTATDATA;
  90120.  
  90121. typedef
  90122. enum tagADVF
  90123.     {
  90124.         ADVF_NODATA = 1,
  90125.         ADVF_PRIMEFIRST = 2,
  90126.         ADVF_ONLYONCE = 4,
  90127.         ADVF_DATAONSTOP = 64,
  90128.         ADVFCACHE_NOHANDLER = 8,
  90129.         ADVFCACHE_FORCEBUILTIN = 16,
  90130.         ADVFCACHE_ONSAVE = 32
  90131.     } ADVF;
  90132.  
  90133. typedef struct tagSTATDATA
  90134.     {
  90135.     FORMATETC formatetc;
  90136.     DWORD advf;
  90137.                    IAdviseSink *pAdvSink;
  90138.     DWORD dwConnection;
  90139.     } STATDATA;
  90140.  
  90141. typedef STATDATA *LPSTATDATA;
  90142.  
  90143.  
  90144. extern const IID IID_IEnumSTATDATA;
  90145. # 11026 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90146.     typedef struct IEnumSTATDATAVtbl
  90147.     {
  90148.  
  90149.  
  90150.         HRESULT ( __stdcall *QueryInterface )(
  90151.                       IEnumSTATDATA * This,
  90152.                                  const IID * riid,
  90153.  
  90154.                           void **ppvObject);
  90155.  
  90156.         ULONG ( __stdcall *AddRef )(
  90157.                       IEnumSTATDATA * This);
  90158.  
  90159.         ULONG ( __stdcall *Release )(
  90160.                       IEnumSTATDATA * This);
  90161.  
  90162.                       HRESULT ( __stdcall *Next )(
  90163.             IEnumSTATDATA * This,
  90164.                        ULONG celt,
  90165.  
  90166.                                                  STATDATA *rgelt,
  90167.  
  90168.                        ULONG *pceltFetched);
  90169.  
  90170.         HRESULT ( __stdcall *Skip )(
  90171.                       IEnumSTATDATA * This,
  90172.                        ULONG celt);
  90173.  
  90174.         HRESULT ( __stdcall *Reset )(
  90175.                       IEnumSTATDATA * This);
  90176.  
  90177.         HRESULT ( __stdcall *Clone )(
  90178.                       IEnumSTATDATA * This,
  90179.                                              IEnumSTATDATA **ppenum);
  90180.  
  90181.  
  90182.     } IEnumSTATDATAVtbl;
  90183.  
  90184.     struct IEnumSTATDATA
  90185.     {
  90186.                    struct IEnumSTATDATAVtbl *lpVtbl;
  90187.     };
  90188. # 11103 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90189.                 HRESULT __stdcall IEnumSTATDATA_RemoteNext_Proxy(
  90190.               IEnumSTATDATA * This,
  90191.                ULONG celt,
  90192.                                                                                 STATDATA *rgelt,
  90193.                            ULONG *pceltFetched);
  90194.  
  90195.  
  90196. void __stdcall IEnumSTATDATA_RemoteNext_Stub(
  90197.     IRpcStubBuffer *This,
  90198.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90199.     PRPC_MESSAGE _pRpcMessage,
  90200.     DWORD *_pdwStubPhase);
  90201. # 11127 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90202. typedef IRootStorage *LPROOTSTORAGE;
  90203.  
  90204.  
  90205. extern const IID IID_IRootStorage;
  90206. # 11146 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90207.     typedef struct IRootStorageVtbl
  90208.     {
  90209.  
  90210.  
  90211.         HRESULT ( __stdcall *QueryInterface )(
  90212.                       IRootStorage * This,
  90213.                                  const IID * riid,
  90214.  
  90215.                           void **ppvObject);
  90216.  
  90217.         ULONG ( __stdcall *AddRef )(
  90218.                       IRootStorage * This);
  90219.  
  90220.         ULONG ( __stdcall *Release )(
  90221.                       IRootStorage * This);
  90222.  
  90223.         HRESULT ( __stdcall *SwitchToFile )(
  90224.                       IRootStorage * This,
  90225.                                  LPOLESTR pszFile);
  90226.  
  90227.  
  90228.     } IRootStorageVtbl;
  90229.  
  90230.     struct IRootStorage
  90231.     {
  90232.                    struct IRootStorageVtbl *lpVtbl;
  90233.     };
  90234. # 11209 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90235. typedef IAdviseSink *LPADVISESINK;
  90236.  
  90237. typedef
  90238. enum tagTYMED
  90239.     {
  90240.         TYMED_HGLOBAL = 1,
  90241.         TYMED_FILE = 2,
  90242.         TYMED_ISTREAM = 4,
  90243.         TYMED_ISTORAGE = 8,
  90244.         TYMED_GDI = 16,
  90245.         TYMED_MFPICT = 32,
  90246.         TYMED_ENHMF = 64,
  90247.         TYMED_NULL = 0
  90248.     } TYMED;
  90249.  
  90250.  
  90251.  
  90252.  
  90253.  
  90254. #pragma warning(disable: 4200)
  90255.  
  90256. typedef struct tagRemSTGMEDIUM
  90257.     {
  90258.     DWORD tymed;
  90259.     DWORD dwHandleType;
  90260.     ULONG pData;
  90261.     ULONG pUnkForRelease;
  90262.     ULONG cbData;
  90263.                     byte data[ 1 ];
  90264.     } RemSTGMEDIUM;
  90265.  
  90266.  
  90267.  
  90268.  
  90269.  
  90270. #pragma warning(default: 4200)
  90271.  
  90272.  
  90273.  
  90274. typedef struct tagSTGMEDIUM {
  90275.     DWORD tymed;
  90276.     union {
  90277.         HBITMAP hBitmap;
  90278.         HMETAFILEPICT hMetaFilePict;
  90279.         HENHMETAFILE hEnhMetaFile;
  90280.         HGLOBAL hGlobal;
  90281.         LPOLESTR lpszFileName;
  90282.         IStream *pstm;
  90283.         IStorage *pstg;
  90284.         } u;
  90285.     IUnknown *pUnkForRelease;
  90286. }uSTGMEDIUM;
  90287. # 11280 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90288. typedef struct _GDI_OBJECT
  90289.     {
  90290.     DWORD ObjectType;
  90291.                                           union __MIDL_IAdviseSink_0002
  90292.         {
  90293.                        wireHBITMAP hBitmap;
  90294.                        wireHPALETTE hPalette;
  90295.                         wireHGLOBAL hGeneric;
  90296.         } u;
  90297.     } GDI_OBJECT;
  90298.  
  90299. typedef struct _userSTGMEDIUM
  90300.     {
  90301.     struct _STGMEDIUM_UNION
  90302.         {
  90303.         DWORD tymed;
  90304.                                               union __MIDL_IAdviseSink_0003
  90305.             {
  90306.  
  90307.                            wireHMETAFILEPICT hMetaFilePict;
  90308.                            wireHENHMETAFILE hHEnhMetaFile;
  90309.                            GDI_OBJECT *hGdiHandle;
  90310.                            wireHGLOBAL hGlobal;
  90311.                            LPOLESTR lpszFileName;
  90312.                            BYTE_BLOB *pstm;
  90313.                            BYTE_BLOB *pstg;
  90314.             } u;
  90315.         } ;
  90316.     IUnknown *pUnkForRelease;
  90317.     } userSTGMEDIUM;
  90318.  
  90319. typedef userSTGMEDIUM *wireSTGMEDIUM;
  90320.  
  90321. typedef uSTGMEDIUM STGMEDIUM;
  90322.  
  90323. typedef userSTGMEDIUM *wireASYNC_STGMEDIUM;
  90324.  
  90325. typedef STGMEDIUM ASYNC_STGMEDIUM;
  90326.  
  90327. typedef STGMEDIUM *LPSTGMEDIUM;
  90328.  
  90329. typedef struct _userFLAG_STGMEDIUM
  90330.     {
  90331.     LONG ContextFlags;
  90332.     LONG fPassOwnership;
  90333.     userSTGMEDIUM Stgmed;
  90334.     } userFLAG_STGMEDIUM;
  90335.  
  90336. typedef userFLAG_STGMEDIUM *wireFLAG_STGMEDIUM;
  90337.  
  90338. typedef struct _FLAG_STGMEDIUM
  90339.     {
  90340.     LONG ContextFlags;
  90341.     LONG fPassOwnership;
  90342.     STGMEDIUM Stgmed;
  90343.     } FLAG_STGMEDIUM;
  90344.  
  90345.  
  90346. extern const IID IID_IAdviseSink;
  90347. # 11369 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90348.     typedef struct IAdviseSinkVtbl
  90349.     {
  90350.  
  90351.  
  90352.         HRESULT ( __stdcall *QueryInterface )(
  90353.                       IAdviseSink * This,
  90354.                                  const IID * riid,
  90355.  
  90356.                           void **ppvObject);
  90357.  
  90358.         ULONG ( __stdcall *AddRef )(
  90359.                       IAdviseSink * This);
  90360.  
  90361.         ULONG ( __stdcall *Release )(
  90362.                       IAdviseSink * This);
  90363.  
  90364.                       void ( __stdcall *OnDataChange )(
  90365.             IAdviseSink * This,
  90366.  
  90367.                   FORMATETC *pFormatetc,
  90368.  
  90369.                   STGMEDIUM *pStgmed);
  90370.  
  90371.                       void ( __stdcall *OnViewChange )(
  90372.             IAdviseSink * This,
  90373.                        DWORD dwAspect,
  90374.                        LONG lindex);
  90375.  
  90376.                       void ( __stdcall *OnRename )(
  90377.             IAdviseSink * This,
  90378.  
  90379.                   IMoniker *pmk);
  90380.  
  90381.                       void ( __stdcall *OnSave )(
  90382.             IAdviseSink * This);
  90383.  
  90384.                       void ( __stdcall *OnClose )(
  90385.             IAdviseSink * This);
  90386.  
  90387.  
  90388.     } IAdviseSinkVtbl;
  90389.  
  90390.     struct IAdviseSink
  90391.     {
  90392.                    struct IAdviseSinkVtbl *lpVtbl;
  90393.     };
  90394. # 11453 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90395.                 HRESULT __stdcall IAdviseSink_RemoteOnDataChange_Proxy(
  90396.               IAdviseSink * This,
  90397.                                      FORMATETC *pFormatetc,
  90398.                                      ASYNC_STGMEDIUM *pStgmed);
  90399.  
  90400.  
  90401. void __stdcall IAdviseSink_RemoteOnDataChange_Stub(
  90402.     IRpcStubBuffer *This,
  90403.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90404.     PRPC_MESSAGE _pRpcMessage,
  90405.     DWORD *_pdwStubPhase);
  90406.  
  90407.  
  90408.                 HRESULT __stdcall IAdviseSink_RemoteOnViewChange_Proxy(
  90409.               IAdviseSink * This,
  90410.                DWORD dwAspect,
  90411.                LONG lindex);
  90412.  
  90413.  
  90414. void __stdcall IAdviseSink_RemoteOnViewChange_Stub(
  90415.     IRpcStubBuffer *This,
  90416.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90417.     PRPC_MESSAGE _pRpcMessage,
  90418.     DWORD *_pdwStubPhase);
  90419.  
  90420.  
  90421.                 HRESULT __stdcall IAdviseSink_RemoteOnRename_Proxy(
  90422.               IAdviseSink * This,
  90423.                              IMoniker *pmk);
  90424.  
  90425.  
  90426. void __stdcall IAdviseSink_RemoteOnRename_Stub(
  90427.     IRpcStubBuffer *This,
  90428.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90429.     PRPC_MESSAGE _pRpcMessage,
  90430.     DWORD *_pdwStubPhase);
  90431.  
  90432.  
  90433.                 HRESULT __stdcall IAdviseSink_RemoteOnSave_Proxy(
  90434.               IAdviseSink * This);
  90435.  
  90436.  
  90437. void __stdcall IAdviseSink_RemoteOnSave_Stub(
  90438.     IRpcStubBuffer *This,
  90439.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90440.     PRPC_MESSAGE _pRpcMessage,
  90441.     DWORD *_pdwStubPhase);
  90442.  
  90443.  
  90444.                 HRESULT __stdcall IAdviseSink_RemoteOnClose_Proxy(
  90445.               IAdviseSink * This);
  90446.  
  90447.  
  90448. void __stdcall IAdviseSink_RemoteOnClose_Stub(
  90449.     IRpcStubBuffer *This,
  90450.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90451.     PRPC_MESSAGE _pRpcMessage,
  90452.     DWORD *_pdwStubPhase);
  90453. # 11524 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90454. extern const IID IID_AsyncIAdviseSink;
  90455. # 11565 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90456.     typedef struct AsyncIAdviseSinkVtbl
  90457.     {
  90458.  
  90459.  
  90460.         HRESULT ( __stdcall *QueryInterface )(
  90461.                       AsyncIAdviseSink * This,
  90462.                                  const IID * riid,
  90463.  
  90464.                           void **ppvObject);
  90465.  
  90466.         ULONG ( __stdcall *AddRef )(
  90467.                       AsyncIAdviseSink * This);
  90468.  
  90469.         ULONG ( __stdcall *Release )(
  90470.                       AsyncIAdviseSink * This);
  90471.  
  90472.                       void ( __stdcall *Begin_OnDataChange )(
  90473.             AsyncIAdviseSink * This,
  90474.  
  90475.                   FORMATETC *pFormatetc,
  90476.  
  90477.                   STGMEDIUM *pStgmed);
  90478.  
  90479.                       void ( __stdcall *Finish_OnDataChange )(
  90480.             AsyncIAdviseSink * This);
  90481.  
  90482.                       void ( __stdcall *Begin_OnViewChange )(
  90483.             AsyncIAdviseSink * This,
  90484.                        DWORD dwAspect,
  90485.                        LONG lindex);
  90486.  
  90487.                       void ( __stdcall *Finish_OnViewChange )(
  90488.             AsyncIAdviseSink * This);
  90489.  
  90490.                       void ( __stdcall *Begin_OnRename )(
  90491.             AsyncIAdviseSink * This,
  90492.  
  90493.                   IMoniker *pmk);
  90494.  
  90495.                       void ( __stdcall *Finish_OnRename )(
  90496.             AsyncIAdviseSink * This);
  90497.  
  90498.                       void ( __stdcall *Begin_OnSave )(
  90499.             AsyncIAdviseSink * This);
  90500.  
  90501.                       void ( __stdcall *Finish_OnSave )(
  90502.             AsyncIAdviseSink * This);
  90503.  
  90504.                       void ( __stdcall *Begin_OnClose )(
  90505.             AsyncIAdviseSink * This);
  90506.  
  90507.                       void ( __stdcall *Finish_OnClose )(
  90508.             AsyncIAdviseSink * This);
  90509.  
  90510.  
  90511.     } AsyncIAdviseSinkVtbl;
  90512.  
  90513.     struct AsyncIAdviseSink
  90514.     {
  90515.                    struct AsyncIAdviseSinkVtbl *lpVtbl;
  90516.     };
  90517. # 11679 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90518.                 HRESULT __stdcall AsyncIAdviseSink_Begin_RemoteOnDataChange_Proxy(
  90519.               AsyncIAdviseSink * This,
  90520.                                      FORMATETC *pFormatetc,
  90521.                                      ASYNC_STGMEDIUM *pStgmed);
  90522.  
  90523.  
  90524. void __stdcall AsyncIAdviseSink_Begin_RemoteOnDataChange_Stub(
  90525.     IRpcStubBuffer *This,
  90526.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90527.     PRPC_MESSAGE _pRpcMessage,
  90528.     DWORD *_pdwStubPhase);
  90529.  
  90530.  
  90531.                 HRESULT __stdcall AsyncIAdviseSink_Finish_RemoteOnDataChange_Proxy(
  90532.               AsyncIAdviseSink * This);
  90533.  
  90534.  
  90535. void __stdcall AsyncIAdviseSink_Finish_RemoteOnDataChange_Stub(
  90536.     IRpcStubBuffer *This,
  90537.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90538.     PRPC_MESSAGE _pRpcMessage,
  90539.     DWORD *_pdwStubPhase);
  90540.  
  90541.  
  90542.                 HRESULT __stdcall AsyncIAdviseSink_Begin_RemoteOnViewChange_Proxy(
  90543.               AsyncIAdviseSink * This,
  90544.                DWORD dwAspect,
  90545.                LONG lindex);
  90546.  
  90547.  
  90548. void __stdcall AsyncIAdviseSink_Begin_RemoteOnViewChange_Stub(
  90549.     IRpcStubBuffer *This,
  90550.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90551.     PRPC_MESSAGE _pRpcMessage,
  90552.     DWORD *_pdwStubPhase);
  90553.  
  90554.  
  90555.                 HRESULT __stdcall AsyncIAdviseSink_Finish_RemoteOnViewChange_Proxy(
  90556.               AsyncIAdviseSink * This);
  90557.  
  90558.  
  90559. void __stdcall AsyncIAdviseSink_Finish_RemoteOnViewChange_Stub(
  90560.     IRpcStubBuffer *This,
  90561.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90562.     PRPC_MESSAGE _pRpcMessage,
  90563.     DWORD *_pdwStubPhase);
  90564.  
  90565.  
  90566.                 HRESULT __stdcall AsyncIAdviseSink_Begin_RemoteOnRename_Proxy(
  90567.               AsyncIAdviseSink * This,
  90568.                              IMoniker *pmk);
  90569.  
  90570.  
  90571. void __stdcall AsyncIAdviseSink_Begin_RemoteOnRename_Stub(
  90572.     IRpcStubBuffer *This,
  90573.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90574.     PRPC_MESSAGE _pRpcMessage,
  90575.     DWORD *_pdwStubPhase);
  90576.  
  90577.  
  90578.                 HRESULT __stdcall AsyncIAdviseSink_Finish_RemoteOnRename_Proxy(
  90579.               AsyncIAdviseSink * This);
  90580.  
  90581.  
  90582. void __stdcall AsyncIAdviseSink_Finish_RemoteOnRename_Stub(
  90583.     IRpcStubBuffer *This,
  90584.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90585.     PRPC_MESSAGE _pRpcMessage,
  90586.     DWORD *_pdwStubPhase);
  90587.  
  90588.  
  90589.                 HRESULT __stdcall AsyncIAdviseSink_Begin_RemoteOnSave_Proxy(
  90590.               AsyncIAdviseSink * This);
  90591.  
  90592.  
  90593. void __stdcall AsyncIAdviseSink_Begin_RemoteOnSave_Stub(
  90594.     IRpcStubBuffer *This,
  90595.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90596.     PRPC_MESSAGE _pRpcMessage,
  90597.     DWORD *_pdwStubPhase);
  90598.  
  90599.  
  90600.                 HRESULT __stdcall AsyncIAdviseSink_Finish_RemoteOnSave_Proxy(
  90601.               AsyncIAdviseSink * This);
  90602.  
  90603.  
  90604. void __stdcall AsyncIAdviseSink_Finish_RemoteOnSave_Stub(
  90605.     IRpcStubBuffer *This,
  90606.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90607.     PRPC_MESSAGE _pRpcMessage,
  90608.     DWORD *_pdwStubPhase);
  90609.  
  90610.  
  90611.                 HRESULT __stdcall AsyncIAdviseSink_Begin_RemoteOnClose_Proxy(
  90612.               AsyncIAdviseSink * This);
  90613.  
  90614.  
  90615. void __stdcall AsyncIAdviseSink_Begin_RemoteOnClose_Stub(
  90616.     IRpcStubBuffer *This,
  90617.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90618.     PRPC_MESSAGE _pRpcMessage,
  90619.     DWORD *_pdwStubPhase);
  90620.  
  90621.  
  90622.                 HRESULT __stdcall AsyncIAdviseSink_Finish_RemoteOnClose_Proxy(
  90623.               AsyncIAdviseSink * This);
  90624.  
  90625.  
  90626. void __stdcall AsyncIAdviseSink_Finish_RemoteOnClose_Stub(
  90627.     IRpcStubBuffer *This,
  90628.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90629.     PRPC_MESSAGE _pRpcMessage,
  90630.     DWORD *_pdwStubPhase);
  90631. # 11802 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90632. #pragma endregion
  90633. #pragma region Desktop Family or OneCore Family
  90634.  
  90635.  
  90636.  
  90637. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0071_v0_0_c_ifspec;
  90638. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0071_v0_0_s_ifspec;
  90639.  
  90640.  
  90641.  
  90642.  
  90643.  
  90644.  
  90645.  
  90646. typedef IAdviseSink2 *LPADVISESINK2;
  90647.  
  90648.  
  90649. extern const IID IID_IAdviseSink2;
  90650. # 11836 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90651.     typedef struct IAdviseSink2Vtbl
  90652.     {
  90653.  
  90654.  
  90655.         HRESULT ( __stdcall *QueryInterface )(
  90656.                       IAdviseSink2 * This,
  90657.                                  const IID * riid,
  90658.  
  90659.                           void **ppvObject);
  90660.  
  90661.         ULONG ( __stdcall *AddRef )(
  90662.                       IAdviseSink2 * This);
  90663.  
  90664.         ULONG ( __stdcall *Release )(
  90665.                       IAdviseSink2 * This);
  90666.  
  90667.                       void ( __stdcall *OnDataChange )(
  90668.             IAdviseSink2 * This,
  90669.  
  90670.                   FORMATETC *pFormatetc,
  90671.  
  90672.                   STGMEDIUM *pStgmed);
  90673.  
  90674.                       void ( __stdcall *OnViewChange )(
  90675.             IAdviseSink2 * This,
  90676.                        DWORD dwAspect,
  90677.                        LONG lindex);
  90678.  
  90679.                       void ( __stdcall *OnRename )(
  90680.             IAdviseSink2 * This,
  90681.  
  90682.                   IMoniker *pmk);
  90683.  
  90684.                       void ( __stdcall *OnSave )(
  90685.             IAdviseSink2 * This);
  90686.  
  90687.                       void ( __stdcall *OnClose )(
  90688.             IAdviseSink2 * This);
  90689.  
  90690.                       void ( __stdcall *OnLinkSrcChange )(
  90691.             IAdviseSink2 * This,
  90692.  
  90693.                   IMoniker *pmk);
  90694.  
  90695.  
  90696.     } IAdviseSink2Vtbl;
  90697.  
  90698.     struct IAdviseSink2
  90699.     {
  90700.                    struct IAdviseSink2Vtbl *lpVtbl;
  90701.     };
  90702. # 11929 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90703.                 HRESULT __stdcall IAdviseSink2_RemoteOnLinkSrcChange_Proxy(
  90704.               IAdviseSink2 * This,
  90705.                                      IMoniker *pmk);
  90706.  
  90707.  
  90708. void __stdcall IAdviseSink2_RemoteOnLinkSrcChange_Stub(
  90709.     IRpcStubBuffer *This,
  90710.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90711.     PRPC_MESSAGE _pRpcMessage,
  90712.     DWORD *_pdwStubPhase);
  90713. # 11952 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90714. extern const IID IID_AsyncIAdviseSink2;
  90715. # 11971 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90716.     typedef struct AsyncIAdviseSink2Vtbl
  90717.     {
  90718.  
  90719.  
  90720.         HRESULT ( __stdcall *QueryInterface )(
  90721.                       AsyncIAdviseSink2 * This,
  90722.                                  const IID * riid,
  90723.  
  90724.                           void **ppvObject);
  90725.  
  90726.         ULONG ( __stdcall *AddRef )(
  90727.                       AsyncIAdviseSink2 * This);
  90728.  
  90729.         ULONG ( __stdcall *Release )(
  90730.                       AsyncIAdviseSink2 * This);
  90731.  
  90732.                       void ( __stdcall *Begin_OnDataChange )(
  90733.             AsyncIAdviseSink2 * This,
  90734.  
  90735.                   FORMATETC *pFormatetc,
  90736.  
  90737.                   STGMEDIUM *pStgmed);
  90738.  
  90739.                       void ( __stdcall *Finish_OnDataChange )(
  90740.             AsyncIAdviseSink2 * This);
  90741.  
  90742.                       void ( __stdcall *Begin_OnViewChange )(
  90743.             AsyncIAdviseSink2 * This,
  90744.                        DWORD dwAspect,
  90745.                        LONG lindex);
  90746.  
  90747.                       void ( __stdcall *Finish_OnViewChange )(
  90748.             AsyncIAdviseSink2 * This);
  90749.  
  90750.                       void ( __stdcall *Begin_OnRename )(
  90751.             AsyncIAdviseSink2 * This,
  90752.  
  90753.                   IMoniker *pmk);
  90754.  
  90755.                       void ( __stdcall *Finish_OnRename )(
  90756.             AsyncIAdviseSink2 * This);
  90757.  
  90758.                       void ( __stdcall *Begin_OnSave )(
  90759.             AsyncIAdviseSink2 * This);
  90760.  
  90761.                       void ( __stdcall *Finish_OnSave )(
  90762.             AsyncIAdviseSink2 * This);
  90763.  
  90764.                       void ( __stdcall *Begin_OnClose )(
  90765.             AsyncIAdviseSink2 * This);
  90766.  
  90767.                       void ( __stdcall *Finish_OnClose )(
  90768.             AsyncIAdviseSink2 * This);
  90769.  
  90770.                       void ( __stdcall *Begin_OnLinkSrcChange )(
  90771.             AsyncIAdviseSink2 * This,
  90772.  
  90773.                   IMoniker *pmk);
  90774.  
  90775.                       void ( __stdcall *Finish_OnLinkSrcChange )(
  90776.             AsyncIAdviseSink2 * This);
  90777.  
  90778.  
  90779.     } AsyncIAdviseSink2Vtbl;
  90780.  
  90781.     struct AsyncIAdviseSink2
  90782.     {
  90783.                    struct AsyncIAdviseSink2Vtbl *lpVtbl;
  90784.     };
  90785. # 12100 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90786.                 HRESULT __stdcall AsyncIAdviseSink2_Begin_RemoteOnLinkSrcChange_Proxy(
  90787.               AsyncIAdviseSink2 * This,
  90788.                                      IMoniker *pmk);
  90789.  
  90790.  
  90791. void __stdcall AsyncIAdviseSink2_Begin_RemoteOnLinkSrcChange_Stub(
  90792.     IRpcStubBuffer *This,
  90793.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90794.     PRPC_MESSAGE _pRpcMessage,
  90795.     DWORD *_pdwStubPhase);
  90796.  
  90797.  
  90798.                 HRESULT __stdcall AsyncIAdviseSink2_Finish_RemoteOnLinkSrcChange_Proxy(
  90799.               AsyncIAdviseSink2 * This);
  90800.  
  90801.  
  90802. void __stdcall AsyncIAdviseSink2_Finish_RemoteOnLinkSrcChange_Stub(
  90803.     IRpcStubBuffer *This,
  90804.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90805.     PRPC_MESSAGE _pRpcMessage,
  90806.     DWORD *_pdwStubPhase);
  90807. # 12131 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90808. #pragma endregion
  90809. #pragma region Application Family or OneCore Family
  90810.  
  90811.  
  90812.  
  90813. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0072_v0_0_c_ifspec;
  90814. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0072_v0_0_s_ifspec;
  90815.  
  90816.  
  90817.  
  90818.  
  90819.  
  90820.  
  90821.  
  90822. typedef IDataObject *LPDATAOBJECT;
  90823.  
  90824. typedef
  90825. enum tagDATADIR
  90826.     {
  90827.         DATADIR_GET = 1,
  90828.         DATADIR_SET = 2
  90829.     } DATADIR;
  90830.  
  90831.  
  90832. extern const IID IID_IDataObject;
  90833. # 12210 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90834.     typedef struct IDataObjectVtbl
  90835.     {
  90836.  
  90837.  
  90838.         HRESULT ( __stdcall *QueryInterface )(
  90839.                       IDataObject * This,
  90840.                                  const IID * riid,
  90841.  
  90842.                           void **ppvObject);
  90843.  
  90844.         ULONG ( __stdcall *AddRef )(
  90845.                       IDataObject * This);
  90846.  
  90847.         ULONG ( __stdcall *Release )(
  90848.                       IDataObject * This);
  90849.  
  90850.                       HRESULT ( __stdcall *GetData )(
  90851.             IDataObject * This,
  90852.  
  90853.                   FORMATETC *pformatetcIn,
  90854.  
  90855.                    STGMEDIUM *pmedium);
  90856.  
  90857.                       HRESULT ( __stdcall *GetDataHere )(
  90858.             IDataObject * This,
  90859.  
  90860.                   FORMATETC *pformatetc,
  90861.  
  90862.                      STGMEDIUM *pmedium);
  90863.  
  90864.         HRESULT ( __stdcall *QueryGetData )(
  90865.                       IDataObject * This,
  90866.                                              FORMATETC *pformatetc);
  90867.  
  90868.         HRESULT ( __stdcall *GetCanonicalFormatEtc )(
  90869.                       IDataObject * This,
  90870.                                              FORMATETC *pformatectIn,
  90871.                                    FORMATETC *pformatetcOut);
  90872.  
  90873.                       HRESULT ( __stdcall *SetData )(
  90874.             IDataObject * This,
  90875.  
  90876.                   FORMATETC *pformatetc,
  90877.  
  90878.                   STGMEDIUM *pmedium,
  90879.                        BOOL fRelease);
  90880.  
  90881.         HRESULT ( __stdcall *EnumFormatEtc )(
  90882.                       IDataObject * This,
  90883.                        DWORD dwDirection,
  90884.                                              IEnumFORMATETC **ppenumFormatEtc);
  90885.  
  90886.         HRESULT ( __stdcall *DAdvise )(
  90887.                       IDataObject * This,
  90888.                                  FORMATETC *pformatetc,
  90889.                        DWORD advf,
  90890.                                              IAdviseSink *pAdvSink,
  90891.                                    DWORD *pdwConnection);
  90892.  
  90893.         HRESULT ( __stdcall *DUnadvise )(
  90894.                       IDataObject * This,
  90895.                        DWORD dwConnection);
  90896.  
  90897.         HRESULT ( __stdcall *EnumDAdvise )(
  90898.                       IDataObject * This,
  90899.                                              IEnumSTATDATA **ppenumAdvise);
  90900.  
  90901.  
  90902.     } IDataObjectVtbl;
  90903.  
  90904.     struct IDataObject
  90905.     {
  90906.                    struct IDataObjectVtbl *lpVtbl;
  90907.     };
  90908. # 12334 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90909.                 HRESULT __stdcall IDataObject_RemoteGetData_Proxy(
  90910.               IDataObject * This,
  90911.                                      FORMATETC *pformatetcIn,
  90912.                            STGMEDIUM *pRemoteMedium);
  90913.  
  90914.  
  90915. void __stdcall IDataObject_RemoteGetData_Stub(
  90916.     IRpcStubBuffer *This,
  90917.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90918.     PRPC_MESSAGE _pRpcMessage,
  90919.     DWORD *_pdwStubPhase);
  90920.  
  90921.  
  90922.                 HRESULT __stdcall IDataObject_RemoteGetDataHere_Proxy(
  90923.               IDataObject * This,
  90924.                                      FORMATETC *pformatetc,
  90925.                                  STGMEDIUM *pRemoteMedium);
  90926.  
  90927.  
  90928. void __stdcall IDataObject_RemoteGetDataHere_Stub(
  90929.     IRpcStubBuffer *This,
  90930.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90931.     PRPC_MESSAGE _pRpcMessage,
  90932.     DWORD *_pdwStubPhase);
  90933.  
  90934.  
  90935.                 HRESULT __stdcall IDataObject_RemoteSetData_Proxy(
  90936.               IDataObject * This,
  90937.                                      FORMATETC *pformatetc,
  90938.                                      FLAG_STGMEDIUM *pmedium,
  90939.                BOOL fRelease);
  90940.  
  90941.  
  90942. void __stdcall IDataObject_RemoteSetData_Stub(
  90943.     IRpcStubBuffer *This,
  90944.     IRpcChannelBuffer *_pRpcChannelBuffer,
  90945.     PRPC_MESSAGE _pRpcMessage,
  90946.     DWORD *_pdwStubPhase);
  90947. # 12382 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90948. #pragma endregion
  90949. #pragma region Desktop Family or OneCore Family
  90950.  
  90951.  
  90952.  
  90953. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0073_v0_0_c_ifspec;
  90954. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0073_v0_0_s_ifspec;
  90955.  
  90956.  
  90957.  
  90958.  
  90959.  
  90960.  
  90961.  
  90962. typedef IDataAdviseHolder *LPDATAADVISEHOLDER;
  90963.  
  90964.  
  90965. extern const IID IID_IDataAdviseHolder;
  90966. # 12440 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  90967.     typedef struct IDataAdviseHolderVtbl
  90968.     {
  90969.  
  90970.  
  90971.         HRESULT ( __stdcall *QueryInterface )(
  90972.             IDataAdviseHolder * This,
  90973.                        const IID * riid,
  90974.  
  90975.                           void **ppvObject);
  90976.  
  90977.         ULONG ( __stdcall *AddRef )(
  90978.             IDataAdviseHolder * This);
  90979.  
  90980.         ULONG ( __stdcall *Release )(
  90981.             IDataAdviseHolder * This);
  90982.  
  90983.         HRESULT ( __stdcall *Advise )(
  90984.             IDataAdviseHolder * This,
  90985.  
  90986.                       IDataObject *pDataObject,
  90987.  
  90988.                   FORMATETC *pFetc,
  90989.  
  90990.                   DWORD advf,
  90991.  
  90992.                   IAdviseSink *pAdvise,
  90993.  
  90994.                    DWORD *pdwConnection);
  90995.  
  90996.         HRESULT ( __stdcall *Unadvise )(
  90997.             IDataAdviseHolder * This,
  90998.  
  90999.                   DWORD dwConnection);
  91000.  
  91001.         HRESULT ( __stdcall *EnumAdvise )(
  91002.             IDataAdviseHolder * This,
  91003.  
  91004.                       IEnumSTATDATA **ppenumAdvise);
  91005.  
  91006.         HRESULT ( __stdcall *SendOnDataChange )(
  91007.             IDataAdviseHolder * This,
  91008.  
  91009.                   IDataObject *pDataObject,
  91010.  
  91011.                         DWORD dwReserved,
  91012.  
  91013.                   DWORD advf);
  91014.  
  91015.  
  91016.     } IDataAdviseHolderVtbl;
  91017.  
  91018.     struct IDataAdviseHolder
  91019.     {
  91020.                    struct IDataAdviseHolderVtbl *lpVtbl;
  91021.     };
  91022. # 12540 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91023. typedef IMessageFilter *LPMESSAGEFILTER;
  91024.  
  91025. typedef
  91026. enum tagCALLTYPE
  91027.     {
  91028.         CALLTYPE_TOPLEVEL = 1,
  91029.         CALLTYPE_NESTED = 2,
  91030.         CALLTYPE_ASYNC = 3,
  91031.         CALLTYPE_TOPLEVEL_CALLPENDING = 4,
  91032.         CALLTYPE_ASYNC_CALLPENDING = 5
  91033.     } CALLTYPE;
  91034.  
  91035. typedef
  91036. enum tagSERVERCALL
  91037.     {
  91038.         SERVERCALL_ISHANDLED = 0,
  91039.         SERVERCALL_REJECTED = 1,
  91040.         SERVERCALL_RETRYLATER = 2
  91041.     } SERVERCALL;
  91042.  
  91043. typedef
  91044. enum tagPENDINGTYPE
  91045.     {
  91046.         PENDINGTYPE_TOPLEVEL = 1,
  91047.         PENDINGTYPE_NESTED = 2
  91048.     } PENDINGTYPE;
  91049.  
  91050. typedef
  91051. enum tagPENDINGMSG
  91052.     {
  91053.         PENDINGMSG_CANCELCALL = 0,
  91054.         PENDINGMSG_WAITNOPROCESS = 1,
  91055.         PENDINGMSG_WAITDEFPROCESS = 2
  91056.     } PENDINGMSG;
  91057.  
  91058. typedef struct tagINTERFACEINFO
  91059.     {
  91060.     IUnknown *pUnk;
  91061.     IID iid;
  91062.     WORD wMethod;
  91063.     } INTERFACEINFO;
  91064.  
  91065. typedef struct tagINTERFACEINFO *LPINTERFACEINFO;
  91066.  
  91067.  
  91068. extern const IID IID_IMessageFilter;
  91069. # 12624 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91070.     typedef struct IMessageFilterVtbl
  91071.     {
  91072.  
  91073.  
  91074.         HRESULT ( __stdcall *QueryInterface )(
  91075.             IMessageFilter * This,
  91076.                        const IID * riid,
  91077.  
  91078.                           void **ppvObject);
  91079.  
  91080.         ULONG ( __stdcall *AddRef )(
  91081.             IMessageFilter * This);
  91082.  
  91083.         ULONG ( __stdcall *Release )(
  91084.             IMessageFilter * This);
  91085.  
  91086.         DWORD ( __stdcall *HandleInComingCall )(
  91087.             IMessageFilter * This,
  91088.  
  91089.                   DWORD dwCallType,
  91090.  
  91091.                   HTASK htaskCaller,
  91092.  
  91093.                   DWORD dwTickCount,
  91094.  
  91095.                       LPINTERFACEINFO lpInterfaceInfo);
  91096.  
  91097.         DWORD ( __stdcall *RetryRejectedCall )(
  91098.             IMessageFilter * This,
  91099.  
  91100.                   HTASK htaskCallee,
  91101.  
  91102.                   DWORD dwTickCount,
  91103.  
  91104.                   DWORD dwRejectType);
  91105.  
  91106.         DWORD ( __stdcall *MessagePending )(
  91107.             IMessageFilter * This,
  91108.  
  91109.                   HTASK htaskCallee,
  91110.  
  91111.                   DWORD dwTickCount,
  91112.  
  91113.                   DWORD dwPendingType);
  91114.  
  91115.  
  91116.     } IMessageFilterVtbl;
  91117.  
  91118.     struct IMessageFilter
  91119.     {
  91120.                    struct IMessageFilterVtbl *lpVtbl;
  91121.     };
  91122. # 12717 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91123. extern const FMTID FMTID_SummaryInformation;
  91124.  
  91125. extern const FMTID FMTID_DocSummaryInformation;
  91126.  
  91127. extern const FMTID FMTID_UserDefinedProperties;
  91128.  
  91129. extern const FMTID FMTID_DiscardableInformation;
  91130.  
  91131. extern const FMTID FMTID_ImageSummaryInformation;
  91132.  
  91133. extern const FMTID FMTID_AudioSummaryInformation;
  91134.  
  91135. extern const FMTID FMTID_VideoSummaryInformation;
  91136.  
  91137. extern const FMTID FMTID_MediaFileSummaryInformation;
  91138.  
  91139.  
  91140.  
  91141. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0075_v0_0_c_ifspec;
  91142. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0075_v0_0_s_ifspec;
  91143. # 12745 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91144. extern const IID IID_IClassActivator;
  91145. # 12765 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91146.     typedef struct IClassActivatorVtbl
  91147.     {
  91148.  
  91149.  
  91150.         HRESULT ( __stdcall *QueryInterface )(
  91151.                       IClassActivator * This,
  91152.                                  const IID * riid,
  91153.  
  91154.                           void **ppvObject);
  91155.  
  91156.         ULONG ( __stdcall *AddRef )(
  91157.                       IClassActivator * This);
  91158.  
  91159.         ULONG ( __stdcall *Release )(
  91160.                       IClassActivator * This);
  91161.  
  91162.         HRESULT ( __stdcall *GetClassObject )(
  91163.                       IClassActivator * This,
  91164.                                  const IID * rclsid,
  91165.                        DWORD dwClassContext,
  91166.                        LCID locale,
  91167.                                  const IID * riid,
  91168.                                                      void **ppv);
  91169.  
  91170.  
  91171.     } IClassActivatorVtbl;
  91172.  
  91173.     struct IClassActivator
  91174.     {
  91175.                    struct IClassActivatorVtbl *lpVtbl;
  91176.     };
  91177. # 12830 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91178. #pragma endregion
  91179. #pragma region Application Family or OneCore Family
  91180.  
  91181.  
  91182.  
  91183. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0076_v0_0_c_ifspec;
  91184. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0076_v0_0_s_ifspec;
  91185. # 12845 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91186. extern const IID IID_IFillLockBytes;
  91187. # 12882 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91188.     typedef struct IFillLockBytesVtbl
  91189.     {
  91190.  
  91191.  
  91192.         HRESULT ( __stdcall *QueryInterface )(
  91193.                       IFillLockBytes * This,
  91194.                                  const IID * riid,
  91195.  
  91196.                           void **ppvObject);
  91197.  
  91198.         ULONG ( __stdcall *AddRef )(
  91199.                       IFillLockBytes * This);
  91200.  
  91201.         ULONG ( __stdcall *Release )(
  91202.                       IFillLockBytes * This);
  91203.  
  91204.                       HRESULT ( __stdcall *FillAppend )(
  91205.             IFillLockBytes * This,
  91206.  
  91207.                                   const void *pv,
  91208.  
  91209.                   ULONG cb,
  91210.  
  91211.                    ULONG *pcbWritten);
  91212.  
  91213.                       HRESULT ( __stdcall *FillAt )(
  91214.             IFillLockBytes * This,
  91215.  
  91216.                   ULARGE_INTEGER ulOffset,
  91217.  
  91218.                                   const void *pv,
  91219.  
  91220.                   ULONG cb,
  91221.  
  91222.                    ULONG *pcbWritten);
  91223.  
  91224.         HRESULT ( __stdcall *SetFillSize )(
  91225.                       IFillLockBytes * This,
  91226.                        ULARGE_INTEGER ulSize);
  91227.  
  91228.         HRESULT ( __stdcall *Terminate )(
  91229.                       IFillLockBytes * This,
  91230.                        BOOL bCanceled);
  91231.  
  91232.  
  91233.     } IFillLockBytesVtbl;
  91234.  
  91235.     struct IFillLockBytes
  91236.     {
  91237.                    struct IFillLockBytesVtbl *lpVtbl;
  91238.     };
  91239. # 12968 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91240.                 HRESULT __stdcall IFillLockBytes_RemoteFillAppend_Proxy(
  91241.               IFillLockBytes * This,
  91242.                                                   const byte *pv,
  91243.                ULONG cb,
  91244.                            ULONG *pcbWritten);
  91245.  
  91246.  
  91247. void __stdcall IFillLockBytes_RemoteFillAppend_Stub(
  91248.     IRpcStubBuffer *This,
  91249.     IRpcChannelBuffer *_pRpcChannelBuffer,
  91250.     PRPC_MESSAGE _pRpcMessage,
  91251.     DWORD *_pdwStubPhase);
  91252.  
  91253.  
  91254.                 HRESULT __stdcall IFillLockBytes_RemoteFillAt_Proxy(
  91255.               IFillLockBytes * This,
  91256.                ULARGE_INTEGER ulOffset,
  91257.                                                   const byte *pv,
  91258.                ULONG cb,
  91259.                            ULONG *pcbWritten);
  91260.  
  91261.  
  91262. void __stdcall IFillLockBytes_RemoteFillAt_Stub(
  91263.     IRpcStubBuffer *This,
  91264.     IRpcChannelBuffer *_pRpcChannelBuffer,
  91265.     PRPC_MESSAGE _pRpcMessage,
  91266.     DWORD *_pdwStubPhase);
  91267. # 13005 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91268. #pragma endregion
  91269. #pragma region Desktop Family or OneCore Family
  91270.  
  91271.  
  91272.  
  91273. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0077_v0_0_c_ifspec;
  91274. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0077_v0_0_s_ifspec;
  91275. # 13020 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91276. extern const IID IID_IProgressNotify;
  91277. # 13039 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91278.     typedef struct IProgressNotifyVtbl
  91279.     {
  91280.  
  91281.  
  91282.         HRESULT ( __stdcall *QueryInterface )(
  91283.                       IProgressNotify * This,
  91284.                                  const IID * riid,
  91285.  
  91286.                           void **ppvObject);
  91287.  
  91288.         ULONG ( __stdcall *AddRef )(
  91289.                       IProgressNotify * This);
  91290.  
  91291.         ULONG ( __stdcall *Release )(
  91292.                       IProgressNotify * This);
  91293.  
  91294.         HRESULT ( __stdcall *OnProgress )(
  91295.                       IProgressNotify * This,
  91296.                        DWORD dwProgressCurrent,
  91297.                        DWORD dwProgressMaximum,
  91298.                        BOOL fAccurate,
  91299.                        BOOL fOwner);
  91300.  
  91301.  
  91302.     } IProgressNotifyVtbl;
  91303.  
  91304.     struct IProgressNotify
  91305.     {
  91306.                    struct IProgressNotifyVtbl *lpVtbl;
  91307.     };
  91308. # 13103 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91309. #pragma endregion
  91310. #pragma region Application Family or OneCore Family
  91311.  
  91312.  
  91313.  
  91314. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0078_v0_0_c_ifspec;
  91315. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0078_v0_0_s_ifspec;
  91316.  
  91317.  
  91318.  
  91319.  
  91320.  
  91321.  
  91322.  
  91323. typedef struct tagStorageLayout
  91324.     {
  91325.     DWORD LayoutType;
  91326.     OLECHAR *pwcsElementName;
  91327.     LARGE_INTEGER cOffset;
  91328.     LARGE_INTEGER cBytes;
  91329.     } StorageLayout;
  91330.  
  91331.  
  91332. extern const IID IID_ILayoutStorage;
  91333. # 13159 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91334.     typedef struct ILayoutStorageVtbl
  91335.     {
  91336.  
  91337.  
  91338.         HRESULT ( __stdcall *QueryInterface )(
  91339.             ILayoutStorage * This,
  91340.                        const IID * riid,
  91341.  
  91342.                           void **ppvObject);
  91343.  
  91344.         ULONG ( __stdcall *AddRef )(
  91345.             ILayoutStorage * This);
  91346.  
  91347.         ULONG ( __stdcall *Release )(
  91348.             ILayoutStorage * This);
  91349.  
  91350.         HRESULT ( __stdcall *LayoutScript )(
  91351.             ILayoutStorage * This,
  91352.  
  91353.                                   StorageLayout *pStorageLayout,
  91354.  
  91355.                   DWORD nEntries,
  91356.  
  91357.                         DWORD glfInterleavedFlag);
  91358.  
  91359.         HRESULT ( __stdcall *BeginMonitor )(
  91360.             ILayoutStorage * This);
  91361.  
  91362.         HRESULT ( __stdcall *EndMonitor )(
  91363.             ILayoutStorage * This);
  91364.  
  91365.         HRESULT ( __stdcall *ReLayoutDocfile )(
  91366.             ILayoutStorage * This,
  91367.  
  91368.                        OLECHAR *pwcsNewDfName);
  91369.  
  91370.         HRESULT ( __stdcall *ReLayoutDocfileOnILockBytes )(
  91371.             ILayoutStorage * This,
  91372.  
  91373.                   ILockBytes *pILockBytes);
  91374.  
  91375.  
  91376.     } ILayoutStorageVtbl;
  91377.  
  91378.     struct ILayoutStorage
  91379.     {
  91380.                    struct ILayoutStorageVtbl *lpVtbl;
  91381.     };
  91382. # 13253 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91383. #pragma endregion
  91384. #pragma region Desktop Family or OneCore Family
  91385.  
  91386.  
  91387.  
  91388. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0079_v0_0_c_ifspec;
  91389. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0079_v0_0_s_ifspec;
  91390. # 13268 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91391. extern const IID IID_IBlockingLock;
  91392. # 13286 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91393.     typedef struct IBlockingLockVtbl
  91394.     {
  91395.  
  91396.  
  91397.         HRESULT ( __stdcall *QueryInterface )(
  91398.                       IBlockingLock * This,
  91399.                                  const IID * riid,
  91400.  
  91401.                           void **ppvObject);
  91402.  
  91403.         ULONG ( __stdcall *AddRef )(
  91404.                       IBlockingLock * This);
  91405.  
  91406.         ULONG ( __stdcall *Release )(
  91407.                       IBlockingLock * This);
  91408.  
  91409.         HRESULT ( __stdcall *Lock )(
  91410.                       IBlockingLock * This,
  91411.                        DWORD dwTimeout);
  91412.  
  91413.         HRESULT ( __stdcall *Unlock )(
  91414.                       IBlockingLock * This);
  91415.  
  91416.  
  91417.     } IBlockingLockVtbl;
  91418.  
  91419.     struct IBlockingLock
  91420.     {
  91421.                    struct IBlockingLockVtbl *lpVtbl;
  91422.     };
  91423. # 13356 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91424. extern const IID IID_ITimeAndNoticeControl;
  91425. # 13373 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91426.     typedef struct ITimeAndNoticeControlVtbl
  91427.     {
  91428.  
  91429.  
  91430.         HRESULT ( __stdcall *QueryInterface )(
  91431.                       ITimeAndNoticeControl * This,
  91432.                                  const IID * riid,
  91433.  
  91434.                           void **ppvObject);
  91435.  
  91436.         ULONG ( __stdcall *AddRef )(
  91437.                       ITimeAndNoticeControl * This);
  91438.  
  91439.         ULONG ( __stdcall *Release )(
  91440.                       ITimeAndNoticeControl * This);
  91441.  
  91442.         HRESULT ( __stdcall *SuppressChanges )(
  91443.                       ITimeAndNoticeControl * This,
  91444.                        DWORD res1,
  91445.                        DWORD res2);
  91446.  
  91447.  
  91448.     } ITimeAndNoticeControlVtbl;
  91449.  
  91450.     struct ITimeAndNoticeControl
  91451.     {
  91452.                    struct ITimeAndNoticeControlVtbl *lpVtbl;
  91453.     };
  91454. # 13438 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91455. extern const IID IID_IOplockStorage;
  91456. # 13467 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91457.     typedef struct IOplockStorageVtbl
  91458.     {
  91459.  
  91460.  
  91461.         HRESULT ( __stdcall *QueryInterface )(
  91462.                       IOplockStorage * This,
  91463.                                  const IID * riid,
  91464.  
  91465.                           void **ppvObject);
  91466.  
  91467.         ULONG ( __stdcall *AddRef )(
  91468.                       IOplockStorage * This);
  91469.  
  91470.         ULONG ( __stdcall *Release )(
  91471.                       IOplockStorage * This);
  91472.  
  91473.         HRESULT ( __stdcall *CreateStorageEx )(
  91474.                       IOplockStorage * This,
  91475.                                  LPCWSTR pwcsName,
  91476.                        DWORD grfMode,
  91477.                        DWORD stgfmt,
  91478.                        DWORD grfAttrs,
  91479.                                  const IID * riid,
  91480.                                                      void **ppstgOpen);
  91481.  
  91482.         HRESULT ( __stdcall *OpenStorageEx )(
  91483.                       IOplockStorage * This,
  91484.                                  LPCWSTR pwcsName,
  91485.                        DWORD grfMode,
  91486.                        DWORD stgfmt,
  91487.                        DWORD grfAttrs,
  91488.                                  const IID * riid,
  91489.                                                      void **ppstgOpen);
  91490.  
  91491.  
  91492.     } IOplockStorageVtbl;
  91493.  
  91494.     struct IOplockStorage
  91495.     {
  91496.                    struct IOplockStorageVtbl *lpVtbl;
  91497.     };
  91498. # 13545 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91499. #pragma endregion
  91500. #pragma region Application Family or OneCore Family
  91501.  
  91502.  
  91503.  
  91504. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0082_v0_0_c_ifspec;
  91505. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0082_v0_0_s_ifspec;
  91506. # 13560 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91507. extern const IID IID_IDirectWriterLock;
  91508. # 13580 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91509.     typedef struct IDirectWriterLockVtbl
  91510.     {
  91511.  
  91512.  
  91513.         HRESULT ( __stdcall *QueryInterface )(
  91514.                       IDirectWriterLock * This,
  91515.                                  const IID * riid,
  91516.  
  91517.                           void **ppvObject);
  91518.  
  91519.         ULONG ( __stdcall *AddRef )(
  91520.                       IDirectWriterLock * This);
  91521.  
  91522.         ULONG ( __stdcall *Release )(
  91523.                       IDirectWriterLock * This);
  91524.  
  91525.         HRESULT ( __stdcall *WaitForWriteAccess )(
  91526.                       IDirectWriterLock * This,
  91527.                        DWORD dwTimeout);
  91528.  
  91529.         HRESULT ( __stdcall *ReleaseWriteAccess )(
  91530.                       IDirectWriterLock * This);
  91531.  
  91532.         HRESULT ( __stdcall *HaveWriteAccess )(
  91533.                       IDirectWriterLock * This);
  91534.  
  91535.  
  91536.     } IDirectWriterLockVtbl;
  91537.  
  91538.     struct IDirectWriterLock
  91539.     {
  91540.                    struct IDirectWriterLockVtbl *lpVtbl;
  91541.     };
  91542. # 13653 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91543. #pragma endregion
  91544. #pragma region Desktop Family or OneCore Family
  91545.  
  91546.  
  91547.  
  91548. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0083_v0_0_c_ifspec;
  91549. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0083_v0_0_s_ifspec;
  91550. # 13668 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91551. extern const IID IID_IUrlMon;
  91552. # 13693 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91553.     typedef struct IUrlMonVtbl
  91554.     {
  91555.  
  91556.  
  91557.         HRESULT ( __stdcall *QueryInterface )(
  91558.                       IUrlMon * This,
  91559.                                  const IID * riid,
  91560.  
  91561.                           void **ppvObject);
  91562.  
  91563.         ULONG ( __stdcall *AddRef )(
  91564.                       IUrlMon * This);
  91565.  
  91566.         ULONG ( __stdcall *Release )(
  91567.                       IUrlMon * This);
  91568.  
  91569.         HRESULT ( __stdcall *AsyncGetClassBits )(
  91570.                       IUrlMon * This,
  91571.                                  const IID * rclsid,
  91572.                                              LPCWSTR pszTYPE,
  91573.                                              LPCWSTR pszExt,
  91574.                        DWORD dwFileVersionMS,
  91575.                        DWORD dwFileVersionLS,
  91576.                                              LPCWSTR pszCodeBase,
  91577.                                      IBindCtx *pbc,
  91578.                        DWORD dwClassContext,
  91579.                                  const IID * riid,
  91580.                        DWORD flags);
  91581.  
  91582.  
  91583.     } IUrlMonVtbl;
  91584.  
  91585.     struct IUrlMon
  91586.     {
  91587.                    struct IUrlMonVtbl *lpVtbl;
  91588.     };
  91589. # 13766 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91590. extern const IID IID_IForegroundTransfer;
  91591. # 13783 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91592.     typedef struct IForegroundTransferVtbl
  91593.     {
  91594.  
  91595.  
  91596.         HRESULT ( __stdcall *QueryInterface )(
  91597.             IForegroundTransfer * This,
  91598.                        const IID * riid,
  91599.  
  91600.                           void **ppvObject);
  91601.  
  91602.         ULONG ( __stdcall *AddRef )(
  91603.             IForegroundTransfer * This);
  91604.  
  91605.         ULONG ( __stdcall *Release )(
  91606.             IForegroundTransfer * This);
  91607.  
  91608.         HRESULT ( __stdcall *AllowForegroundTransfer )(
  91609.             IForegroundTransfer * This,
  91610.  
  91611.                         void *lpvReserved);
  91612.  
  91613.  
  91614.     } IForegroundTransferVtbl;
  91615.  
  91616.     struct IForegroundTransfer
  91617.     {
  91618.                    struct IForegroundTransferVtbl *lpVtbl;
  91619.     };
  91620. # 13848 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91621. extern const IID IID_IThumbnailExtractor;
  91622. # 13872 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91623.     typedef struct IThumbnailExtractorVtbl
  91624.     {
  91625.  
  91626.  
  91627.         HRESULT ( __stdcall *QueryInterface )(
  91628.                       IThumbnailExtractor * This,
  91629.                                  const IID * riid,
  91630.  
  91631.                           void **ppvObject);
  91632.  
  91633.         ULONG ( __stdcall *AddRef )(
  91634.                       IThumbnailExtractor * This);
  91635.  
  91636.         ULONG ( __stdcall *Release )(
  91637.                       IThumbnailExtractor * This);
  91638.  
  91639.         HRESULT ( __stdcall *ExtractThumbnail )(
  91640.                       IThumbnailExtractor * This,
  91641.                                      IStorage *pStg,
  91642.                        ULONG ulLength,
  91643.                        ULONG ulHeight,
  91644.                                    ULONG *pulOutputLength,
  91645.                                    ULONG *pulOutputHeight,
  91646.                                              HBITMAP *phOutputBitmap);
  91647.  
  91648.         HRESULT ( __stdcall *OnFileUpdated )(
  91649.                       IThumbnailExtractor * This,
  91650.                                      IStorage *pStg);
  91651.  
  91652.  
  91653.     } IThumbnailExtractorVtbl;
  91654.  
  91655.     struct IThumbnailExtractor
  91656.     {
  91657.                    struct IThumbnailExtractorVtbl *lpVtbl;
  91658.     };
  91659. # 13948 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91660. extern const IID IID_IDummyHICONIncluder;
  91661. # 13965 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91662.     typedef struct IDummyHICONIncluderVtbl
  91663.     {
  91664.  
  91665.  
  91666.         HRESULT ( __stdcall *QueryInterface )(
  91667.                       IDummyHICONIncluder * This,
  91668.                                  const IID * riid,
  91669.  
  91670.                           void **ppvObject);
  91671.  
  91672.         ULONG ( __stdcall *AddRef )(
  91673.                       IDummyHICONIncluder * This);
  91674.  
  91675.         ULONG ( __stdcall *Release )(
  91676.                       IDummyHICONIncluder * This);
  91677.  
  91678.         HRESULT ( __stdcall *Dummy )(
  91679.                       IDummyHICONIncluder * This,
  91680.                                  HICON h1,
  91681.                                  HDC h2);
  91682.  
  91683.  
  91684.     } IDummyHICONIncluderVtbl;
  91685.  
  91686.     struct IDummyHICONIncluder
  91687.     {
  91688.                    struct IDummyHICONIncluderVtbl *lpVtbl;
  91689.     };
  91690. # 14026 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91691. typedef
  91692. enum tagApplicationType
  91693.     {
  91694.         ServerApplication = 0,
  91695.         LibraryApplication = ( ServerApplication + 1 )
  91696.     } ApplicationType;
  91697.  
  91698. typedef
  91699. enum tagShutdownType
  91700.     {
  91701.         IdleShutdown = 0,
  91702.         ForcedShutdown = ( IdleShutdown + 1 )
  91703.     } ShutdownType;
  91704.  
  91705.  
  91706.  
  91707. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0087_v0_0_c_ifspec;
  91708. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0087_v0_0_s_ifspec;
  91709. # 14052 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91710. extern const IID IID_IProcessLock;
  91711. # 14069 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91712.     typedef struct IProcessLockVtbl
  91713.     {
  91714.  
  91715.  
  91716.         HRESULT ( __stdcall *QueryInterface )(
  91717.             IProcessLock * This,
  91718.                        const IID * riid,
  91719.  
  91720.                           void **ppvObject);
  91721.  
  91722.         ULONG ( __stdcall *AddRef )(
  91723.             IProcessLock * This);
  91724.  
  91725.         ULONG ( __stdcall *Release )(
  91726.             IProcessLock * This);
  91727.  
  91728.         ULONG ( __stdcall *AddRefOnProcess )(
  91729.             IProcessLock * This);
  91730.  
  91731.         ULONG ( __stdcall *ReleaseRefOnProcess )(
  91732.             IProcessLock * This);
  91733.  
  91734.  
  91735.     } IProcessLockVtbl;
  91736.  
  91737.     struct IProcessLock
  91738.     {
  91739.                    struct IProcessLockVtbl *lpVtbl;
  91740.     };
  91741. # 14138 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91742. extern const IID IID_ISurrogateService;
  91743. # 14177 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91744.     typedef struct ISurrogateServiceVtbl
  91745.     {
  91746.  
  91747.  
  91748.         HRESULT ( __stdcall *QueryInterface )(
  91749.             ISurrogateService * This,
  91750.                        const IID * riid,
  91751.  
  91752.                           void **ppvObject);
  91753.  
  91754.         ULONG ( __stdcall *AddRef )(
  91755.             ISurrogateService * This);
  91756.  
  91757.         ULONG ( __stdcall *Release )(
  91758.             ISurrogateService * This);
  91759.  
  91760.         HRESULT ( __stdcall *Init )(
  91761.             ISurrogateService * This,
  91762.  
  91763.                   const GUID * rguidProcessID,
  91764.  
  91765.                   IProcessLock *pProcessLock,
  91766.  
  91767.                    BOOL *pfApplicationAware);
  91768.  
  91769.         HRESULT ( __stdcall *ApplicationLaunch )(
  91770.             ISurrogateService * This,
  91771.  
  91772.                   const GUID * rguidApplID,
  91773.  
  91774.                   ApplicationType appType);
  91775.  
  91776.         HRESULT ( __stdcall *ApplicationFree )(
  91777.             ISurrogateService * This,
  91778.  
  91779.                   const GUID * rguidApplID);
  91780.  
  91781.         HRESULT ( __stdcall *CatalogRefresh )(
  91782.             ISurrogateService * This,
  91783.  
  91784.                         ULONG ulReserved);
  91785.  
  91786.         HRESULT ( __stdcall *ProcessShutdown )(
  91787.             ISurrogateService * This,
  91788.  
  91789.                   ShutdownType shutdownType);
  91790.  
  91791.  
  91792.     } ISurrogateServiceVtbl;
  91793.  
  91794.     struct ISurrogateService
  91795.     {
  91796.                    struct ISurrogateServiceVtbl *lpVtbl;
  91797.     };
  91798. # 14279 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91799. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0089_v0_0_c_ifspec;
  91800. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0089_v0_0_s_ifspec;
  91801.  
  91802.  
  91803.  
  91804.  
  91805.  
  91806.  
  91807.  
  91808. typedef IInitializeSpy *LPINITIALIZESPY;
  91809.  
  91810.  
  91811. extern const IID IID_IInitializeSpy;
  91812. # 14326 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91813.     typedef struct IInitializeSpyVtbl
  91814.     {
  91815.  
  91816.  
  91817.         HRESULT ( __stdcall *QueryInterface )(
  91818.             IInitializeSpy * This,
  91819.                        const IID * riid,
  91820.  
  91821.                           void **ppvObject);
  91822.  
  91823.         ULONG ( __stdcall *AddRef )(
  91824.             IInitializeSpy * This);
  91825.  
  91826.         ULONG ( __stdcall *Release )(
  91827.             IInitializeSpy * This);
  91828.  
  91829.         HRESULT ( __stdcall *PreInitialize )(
  91830.             IInitializeSpy * This,
  91831.  
  91832.                   DWORD dwCoInit,
  91833.  
  91834.                   DWORD dwCurThreadAptRefs);
  91835.  
  91836.         HRESULT ( __stdcall *PostInitialize )(
  91837.             IInitializeSpy * This,
  91838.  
  91839.                   HRESULT hrCoInit,
  91840.  
  91841.                   DWORD dwCoInit,
  91842.  
  91843.                   DWORD dwNewThreadAptRefs);
  91844.  
  91845.         HRESULT ( __stdcall *PreUninitialize )(
  91846.             IInitializeSpy * This,
  91847.  
  91848.                   DWORD dwCurThreadAptRefs);
  91849.  
  91850.         HRESULT ( __stdcall *PostUninitialize )(
  91851.             IInitializeSpy * This,
  91852.  
  91853.                   DWORD dwNewThreadAptRefs);
  91854.  
  91855.  
  91856.     } IInitializeSpyVtbl;
  91857.  
  91858.     struct IInitializeSpy
  91859.     {
  91860.                    struct IInitializeSpyVtbl *lpVtbl;
  91861.     };
  91862. # 14419 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91863. #pragma endregion
  91864. #pragma region Application Family or OneCore Family
  91865.  
  91866.  
  91867.  
  91868. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0090_v0_0_c_ifspec;
  91869. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0090_v0_0_s_ifspec;
  91870. # 14434 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91871. extern const IID IID_IApartmentShutdown;
  91872. # 14451 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91873.     typedef struct IApartmentShutdownVtbl
  91874.     {
  91875.  
  91876.  
  91877.         HRESULT ( __stdcall *QueryInterface )(
  91878.             IApartmentShutdown * This,
  91879.                        const IID * riid,
  91880.  
  91881.                           void **ppvObject);
  91882.  
  91883.         ULONG ( __stdcall *AddRef )(
  91884.             IApartmentShutdown * This);
  91885.  
  91886.         ULONG ( __stdcall *Release )(
  91887.             IApartmentShutdown * This);
  91888.  
  91889.         void ( __stdcall *OnUninitialize )(
  91890.             IApartmentShutdown * This,
  91891.  
  91892.                   UINT64 ui64ApartmentIdentifier);
  91893.  
  91894.  
  91895.     } IApartmentShutdownVtbl;
  91896.  
  91897.     struct IApartmentShutdown
  91898.     {
  91899.                    struct IApartmentShutdownVtbl *lpVtbl;
  91900.     };
  91901. # 14513 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91902. #pragma endregion
  91903. # 14523 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  91904. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0091_v0_0_c_ifspec;
  91905. extern RPC_IF_HANDLE __MIDL_itf_objidl_0000_0091_v0_0_s_ifspec;
  91906.  
  91907.  
  91908.  
  91909. unsigned long __stdcall ASYNC_STGMEDIUM_UserSize( unsigned long *, unsigned long , ASYNC_STGMEDIUM * );
  91910. unsigned char * __stdcall ASYNC_STGMEDIUM_UserMarshal( unsigned long *, unsigned char *, ASYNC_STGMEDIUM * );
  91911. unsigned char * __stdcall ASYNC_STGMEDIUM_UserUnmarshal( unsigned long *, unsigned char *, ASYNC_STGMEDIUM * );
  91912. void __stdcall ASYNC_STGMEDIUM_UserFree( unsigned long *, ASYNC_STGMEDIUM * );
  91913.  
  91914. unsigned long __stdcall CLIPFORMAT_UserSize( unsigned long *, unsigned long , CLIPFORMAT * );
  91915. unsigned char * __stdcall CLIPFORMAT_UserMarshal( unsigned long *, unsigned char *, CLIPFORMAT * );
  91916. unsigned char * __stdcall CLIPFORMAT_UserUnmarshal( unsigned long *, unsigned char *, CLIPFORMAT * );
  91917. void __stdcall CLIPFORMAT_UserFree( unsigned long *, CLIPFORMAT * );
  91918.  
  91919. unsigned long __stdcall FLAG_STGMEDIUM_UserSize( unsigned long *, unsigned long , FLAG_STGMEDIUM * );
  91920. unsigned char * __stdcall FLAG_STGMEDIUM_UserMarshal( unsigned long *, unsigned char *, FLAG_STGMEDIUM * );
  91921. unsigned char * __stdcall FLAG_STGMEDIUM_UserUnmarshal( unsigned long *, unsigned char *, FLAG_STGMEDIUM * );
  91922. void __stdcall FLAG_STGMEDIUM_UserFree( unsigned long *, FLAG_STGMEDIUM * );
  91923.  
  91924. unsigned long __stdcall HBITMAP_UserSize( unsigned long *, unsigned long , HBITMAP * );
  91925. unsigned char * __stdcall HBITMAP_UserMarshal( unsigned long *, unsigned char *, HBITMAP * );
  91926. unsigned char * __stdcall HBITMAP_UserUnmarshal( unsigned long *, unsigned char *, HBITMAP * );
  91927. void __stdcall HBITMAP_UserFree( unsigned long *, HBITMAP * );
  91928.  
  91929. unsigned long __stdcall HDC_UserSize( unsigned long *, unsigned long , HDC * );
  91930. unsigned char * __stdcall HDC_UserMarshal( unsigned long *, unsigned char *, HDC * );
  91931. unsigned char * __stdcall HDC_UserUnmarshal( unsigned long *, unsigned char *, HDC * );
  91932. void __stdcall HDC_UserFree( unsigned long *, HDC * );
  91933.  
  91934. unsigned long __stdcall HICON_UserSize( unsigned long *, unsigned long , HICON * );
  91935. unsigned char * __stdcall HICON_UserMarshal( unsigned long *, unsigned char *, HICON * );
  91936. unsigned char * __stdcall HICON_UserUnmarshal( unsigned long *, unsigned char *, HICON * );
  91937. void __stdcall HICON_UserFree( unsigned long *, HICON * );
  91938.  
  91939. unsigned long __stdcall SNB_UserSize( unsigned long *, unsigned long , SNB * );
  91940. unsigned char * __stdcall SNB_UserMarshal( unsigned long *, unsigned char *, SNB * );
  91941. unsigned char * __stdcall SNB_UserUnmarshal( unsigned long *, unsigned char *, SNB * );
  91942. void __stdcall SNB_UserFree( unsigned long *, SNB * );
  91943.  
  91944. unsigned long __stdcall STGMEDIUM_UserSize( unsigned long *, unsigned long , STGMEDIUM * );
  91945. unsigned char * __stdcall STGMEDIUM_UserMarshal( unsigned long *, unsigned char *, STGMEDIUM * );
  91946. unsigned char * __stdcall STGMEDIUM_UserUnmarshal( unsigned long *, unsigned char *, STGMEDIUM * );
  91947. void __stdcall STGMEDIUM_UserFree( unsigned long *, STGMEDIUM * );
  91948.  
  91949. unsigned long __stdcall ASYNC_STGMEDIUM_UserSize64( unsigned long *, unsigned long , ASYNC_STGMEDIUM * );
  91950. unsigned char * __stdcall ASYNC_STGMEDIUM_UserMarshal64( unsigned long *, unsigned char *, ASYNC_STGMEDIUM * );
  91951. unsigned char * __stdcall ASYNC_STGMEDIUM_UserUnmarshal64( unsigned long *, unsigned char *, ASYNC_STGMEDIUM * );
  91952. void __stdcall ASYNC_STGMEDIUM_UserFree64( unsigned long *, ASYNC_STGMEDIUM * );
  91953.  
  91954. unsigned long __stdcall CLIPFORMAT_UserSize64( unsigned long *, unsigned long , CLIPFORMAT * );
  91955. unsigned char * __stdcall CLIPFORMAT_UserMarshal64( unsigned long *, unsigned char *, CLIPFORMAT * );
  91956. unsigned char * __stdcall CLIPFORMAT_UserUnmarshal64( unsigned long *, unsigned char *, CLIPFORMAT * );
  91957. void __stdcall CLIPFORMAT_UserFree64( unsigned long *, CLIPFORMAT * );
  91958.  
  91959. unsigned long __stdcall FLAG_STGMEDIUM_UserSize64( unsigned long *, unsigned long , FLAG_STGMEDIUM * );
  91960. unsigned char * __stdcall FLAG_STGMEDIUM_UserMarshal64( unsigned long *, unsigned char *, FLAG_STGMEDIUM * );
  91961. unsigned char * __stdcall FLAG_STGMEDIUM_UserUnmarshal64( unsigned long *, unsigned char *, FLAG_STGMEDIUM * );
  91962. void __stdcall FLAG_STGMEDIUM_UserFree64( unsigned long *, FLAG_STGMEDIUM * );
  91963.  
  91964. unsigned long __stdcall HBITMAP_UserSize64( unsigned long *, unsigned long , HBITMAP * );
  91965. unsigned char * __stdcall HBITMAP_UserMarshal64( unsigned long *, unsigned char *, HBITMAP * );
  91966. unsigned char * __stdcall HBITMAP_UserUnmarshal64( unsigned long *, unsigned char *, HBITMAP * );
  91967. void __stdcall HBITMAP_UserFree64( unsigned long *, HBITMAP * );
  91968.  
  91969. unsigned long __stdcall HDC_UserSize64( unsigned long *, unsigned long , HDC * );
  91970. unsigned char * __stdcall HDC_UserMarshal64( unsigned long *, unsigned char *, HDC * );
  91971. unsigned char * __stdcall HDC_UserUnmarshal64( unsigned long *, unsigned char *, HDC * );
  91972. void __stdcall HDC_UserFree64( unsigned long *, HDC * );
  91973.  
  91974. unsigned long __stdcall HICON_UserSize64( unsigned long *, unsigned long , HICON * );
  91975. unsigned char * __stdcall HICON_UserMarshal64( unsigned long *, unsigned char *, HICON * );
  91976. unsigned char * __stdcall HICON_UserUnmarshal64( unsigned long *, unsigned char *, HICON * );
  91977. void __stdcall HICON_UserFree64( unsigned long *, HICON * );
  91978.  
  91979. unsigned long __stdcall SNB_UserSize64( unsigned long *, unsigned long , SNB * );
  91980. unsigned char * __stdcall SNB_UserMarshal64( unsigned long *, unsigned char *, SNB * );
  91981. unsigned char * __stdcall SNB_UserUnmarshal64( unsigned long *, unsigned char *, SNB * );
  91982. void __stdcall SNB_UserFree64( unsigned long *, SNB * );
  91983.  
  91984. unsigned long __stdcall STGMEDIUM_UserSize64( unsigned long *, unsigned long , STGMEDIUM * );
  91985. unsigned char * __stdcall STGMEDIUM_UserMarshal64( unsigned long *, unsigned char *, STGMEDIUM * );
  91986. unsigned char * __stdcall STGMEDIUM_UserUnmarshal64( unsigned long *, unsigned char *, STGMEDIUM * );
  91987. void __stdcall STGMEDIUM_UserFree64( unsigned long *, STGMEDIUM * );
  91988.  
  91989.               HRESULT __stdcall IEnumUnknown_Next_Proxy(
  91990.     IEnumUnknown * This,
  91991.  
  91992.           ULONG celt,
  91993.  
  91994.                                          IUnknown **rgelt,
  91995.  
  91996.                ULONG *pceltFetched);
  91997.  
  91998.  
  91999.                 HRESULT __stdcall IEnumUnknown_Next_Stub(
  92000.               IEnumUnknown * This,
  92001.                ULONG celt,
  92002.                                                                                 IUnknown **rgelt,
  92003.                            ULONG *pceltFetched);
  92004.  
  92005.               HRESULT __stdcall IEnumString_Next_Proxy(
  92006.     IEnumString * This,
  92007.                ULONG celt,
  92008.  
  92009.                                          LPOLESTR *rgelt,
  92010.  
  92011.                ULONG *pceltFetched);
  92012.  
  92013.  
  92014.                 HRESULT __stdcall IEnumString_Next_Stub(
  92015.               IEnumString * This,
  92016.                ULONG celt,
  92017.                                                                                 LPOLESTR *rgelt,
  92018.                            ULONG *pceltFetched);
  92019.  
  92020.               HRESULT __stdcall ISequentialStream_Read_Proxy(
  92021.     ISequentialStream * This,
  92022.  
  92023.                                          void *pv,
  92024.  
  92025.           ULONG cb,
  92026.  
  92027.                ULONG *pcbRead);
  92028.  
  92029.  
  92030.                 HRESULT __stdcall ISequentialStream_Read_Stub(
  92031.               ISequentialStream * This,
  92032.                                                                          byte *pv,
  92033.                ULONG cb,
  92034.                            ULONG *pcbRead);
  92035.  
  92036.               HRESULT __stdcall ISequentialStream_Write_Proxy(
  92037.     ISequentialStream * This,
  92038.  
  92039.                           const void *pv,
  92040.  
  92041.           ULONG cb,
  92042.  
  92043.                ULONG *pcbWritten);
  92044.  
  92045.  
  92046.                 HRESULT __stdcall ISequentialStream_Write_Stub(
  92047.               ISequentialStream * This,
  92048.                                                   const byte *pv,
  92049.                ULONG cb,
  92050.                            ULONG *pcbWritten);
  92051.  
  92052.               HRESULT __stdcall IStream_Seek_Proxy(
  92053.     IStream * This,
  92054.                LARGE_INTEGER dlibMove,
  92055.                DWORD dwOrigin,
  92056.  
  92057.                ULARGE_INTEGER *plibNewPosition);
  92058.  
  92059.  
  92060.                 HRESULT __stdcall IStream_Seek_Stub(
  92061.               IStream * This,
  92062.                LARGE_INTEGER dlibMove,
  92063.                DWORD dwOrigin,
  92064.                            ULARGE_INTEGER *plibNewPosition);
  92065.  
  92066.               HRESULT __stdcall IStream_CopyTo_Proxy(
  92067.     IStream * This,
  92068.  
  92069.           IStream *pstm,
  92070.                ULARGE_INTEGER cb,
  92071.  
  92072.                ULARGE_INTEGER *pcbRead,
  92073.  
  92074.                ULARGE_INTEGER *pcbWritten);
  92075.  
  92076.  
  92077.                 HRESULT __stdcall IStream_CopyTo_Stub(
  92078.               IStream * This,
  92079.                                      IStream *pstm,
  92080.                ULARGE_INTEGER cb,
  92081.                            ULARGE_INTEGER *pcbRead,
  92082.                            ULARGE_INTEGER *pcbWritten);
  92083.  
  92084.               HRESULT __stdcall IBindCtx_SetBindOptions_Proxy(
  92085.     IBindCtx * This,
  92086.  
  92087.           BIND_OPTS *pbindopts);
  92088.  
  92089.  
  92090.                 HRESULT __stdcall IBindCtx_SetBindOptions_Stub(
  92091.               IBindCtx * This,
  92092.                          BIND_OPTS2 *pbindopts);
  92093.  
  92094.               HRESULT __stdcall IBindCtx_GetBindOptions_Proxy(
  92095.     IBindCtx * This,
  92096.  
  92097.              BIND_OPTS *pbindopts);
  92098.  
  92099.  
  92100.                 HRESULT __stdcall IBindCtx_GetBindOptions_Stub(
  92101.               IBindCtx * This,
  92102.                                  BIND_OPTS2 *pbindopts);
  92103.  
  92104.               HRESULT __stdcall IEnumMoniker_Next_Proxy(
  92105.     IEnumMoniker * This,
  92106.                ULONG celt,
  92107.  
  92108.                                          IMoniker **rgelt,
  92109.  
  92110.                ULONG *pceltFetched);
  92111.  
  92112.  
  92113.                 HRESULT __stdcall IEnumMoniker_Next_Stub(
  92114.               IEnumMoniker * This,
  92115.                ULONG celt,
  92116.                                                                                 IMoniker **rgelt,
  92117.                            ULONG *pceltFetched);
  92118.  
  92119.               BOOL __stdcall IRunnableObject_IsRunning_Proxy(
  92120.     IRunnableObject * This);
  92121.  
  92122.  
  92123.                 HRESULT __stdcall IRunnableObject_IsRunning_Stub(
  92124.               IRunnableObject * This);
  92125.  
  92126.               HRESULT __stdcall IMoniker_BindToObject_Proxy(
  92127.     IMoniker * This,
  92128.  
  92129.           IBindCtx *pbc,
  92130.  
  92131.               IMoniker *pmkToLeft,
  92132.  
  92133.           const IID * riidResult,
  92134.  
  92135.               void **ppvResult);
  92136.  
  92137.  
  92138.                 HRESULT __stdcall IMoniker_BindToObject_Stub(
  92139.               IMoniker * This,
  92140.                                      IBindCtx *pbc,
  92141.                                      IMoniker *pmkToLeft,
  92142.                          const IID * riidResult,
  92143.                                              IUnknown **ppvResult);
  92144.  
  92145.               HRESULT __stdcall IMoniker_BindToStorage_Proxy(
  92146.     IMoniker * This,
  92147.  
  92148.           IBindCtx *pbc,
  92149.  
  92150.               IMoniker *pmkToLeft,
  92151.  
  92152.           const IID * riid,
  92153.  
  92154.               void **ppvObj);
  92155.  
  92156.  
  92157.                 HRESULT __stdcall IMoniker_BindToStorage_Stub(
  92158.               IMoniker * This,
  92159.                                      IBindCtx *pbc,
  92160.                                      IMoniker *pmkToLeft,
  92161.                          const IID * riid,
  92162.                                              IUnknown **ppvObj);
  92163.  
  92164.               HRESULT __stdcall IEnumSTATSTG_Next_Proxy(
  92165.     IEnumSTATSTG * This,
  92166.                ULONG celt,
  92167.  
  92168.                                          STATSTG *rgelt,
  92169.  
  92170.                ULONG *pceltFetched);
  92171.  
  92172.  
  92173.                 HRESULT __stdcall IEnumSTATSTG_Next_Stub(
  92174.               IEnumSTATSTG * This,
  92175.                ULONG celt,
  92176.                                                                                 STATSTG *rgelt,
  92177.                            ULONG *pceltFetched);
  92178.  
  92179.               HRESULT __stdcall IStorage_OpenStream_Proxy(
  92180.     IStorage * This,
  92181.  
  92182.             const OLECHAR *pwcsName,
  92183.  
  92184.                 void *reserved1,
  92185.                DWORD grfMode,
  92186.                DWORD reserved2,
  92187.  
  92188.               IStream **ppstm);
  92189.  
  92190.  
  92191.                 HRESULT __stdcall IStorage_OpenStream_Stub(
  92192.               IStorage * This,
  92193.                                         const OLECHAR *pwcsName,
  92194.                ULONG cbReserved1,
  92195.                                                                        byte *reserved1,
  92196.                DWORD grfMode,
  92197.                DWORD reserved2,
  92198.                                      IStream **ppstm);
  92199.  
  92200.               HRESULT __stdcall IStorage_CopyTo_Proxy(
  92201.     IStorage * This,
  92202.                DWORD ciidExclude,
  92203.  
  92204.                                  const IID *rgiidExclude,
  92205.  
  92206.               SNB snbExclude,
  92207.  
  92208.           IStorage *pstgDest);
  92209.  
  92210.  
  92211.                 HRESULT __stdcall IStorage_CopyTo_Stub(
  92212.               IStorage * This,
  92213.                DWORD ciidExclude,
  92214.                                                                        const IID *rgiidExclude,
  92215.                                                SNB snbExclude,
  92216.                                      IStorage *pstgDest);
  92217.  
  92218.               HRESULT __stdcall IStorage_EnumElements_Proxy(
  92219.     IStorage * This,
  92220.  
  92221.                 DWORD reserved1,
  92222.  
  92223.                 void *reserved2,
  92224.  
  92225.                 DWORD reserved3,
  92226.  
  92227.               IEnumSTATSTG **ppenum);
  92228.  
  92229.  
  92230.                 HRESULT __stdcall IStorage_EnumElements_Stub(
  92231.               IStorage * This,
  92232.                DWORD reserved1,
  92233.                ULONG cbReserved2,
  92234.                                                                        byte *reserved2,
  92235.                DWORD reserved3,
  92236.                                      IEnumSTATSTG **ppenum);
  92237.  
  92238.               HRESULT __stdcall ILockBytes_ReadAt_Proxy(
  92239.     ILockBytes * This,
  92240.                ULARGE_INTEGER ulOffset,
  92241.  
  92242.                                          void *pv,
  92243.                ULONG cb,
  92244.  
  92245.                ULONG *pcbRead);
  92246.  
  92247.  
  92248.                 HRESULT __stdcall ILockBytes_ReadAt_Stub(
  92249.               ILockBytes * This,
  92250.                ULARGE_INTEGER ulOffset,
  92251.                                                                          byte *pv,
  92252.                ULONG cb,
  92253.                            ULONG *pcbRead);
  92254.  
  92255.               HRESULT __stdcall ILockBytes_WriteAt_Proxy(
  92256.     ILockBytes * This,
  92257.                ULARGE_INTEGER ulOffset,
  92258.  
  92259.                           const void *pv,
  92260.                ULONG cb,
  92261.  
  92262.                ULONG *pcbWritten);
  92263.  
  92264.  
  92265.                 HRESULT __stdcall ILockBytes_WriteAt_Stub(
  92266.               ILockBytes * This,
  92267.                ULARGE_INTEGER ulOffset,
  92268.                                                   const byte *pv,
  92269.                ULONG cb,
  92270.                            ULONG *pcbWritten);
  92271.  
  92272.               HRESULT __stdcall IEnumFORMATETC_Next_Proxy(
  92273.     IEnumFORMATETC * This,
  92274.                ULONG celt,
  92275.  
  92276.                                          FORMATETC *rgelt,
  92277.  
  92278.                ULONG *pceltFetched);
  92279.  
  92280.  
  92281.                 HRESULT __stdcall IEnumFORMATETC_Next_Stub(
  92282.               IEnumFORMATETC * This,
  92283.                ULONG celt,
  92284.                                                                                 FORMATETC *rgelt,
  92285.                            ULONG *pceltFetched);
  92286.  
  92287.               HRESULT __stdcall IEnumSTATDATA_Next_Proxy(
  92288.     IEnumSTATDATA * This,
  92289.                ULONG celt,
  92290.  
  92291.                                          STATDATA *rgelt,
  92292.  
  92293.                ULONG *pceltFetched);
  92294.  
  92295.  
  92296.                 HRESULT __stdcall IEnumSTATDATA_Next_Stub(
  92297.               IEnumSTATDATA * This,
  92298.                ULONG celt,
  92299.                                                                                 STATDATA *rgelt,
  92300.                            ULONG *pceltFetched);
  92301.  
  92302.               void __stdcall IAdviseSink_OnDataChange_Proxy(
  92303.     IAdviseSink * This,
  92304.  
  92305.           FORMATETC *pFormatetc,
  92306.  
  92307.           STGMEDIUM *pStgmed);
  92308.  
  92309.  
  92310.                 HRESULT __stdcall IAdviseSink_OnDataChange_Stub(
  92311.               IAdviseSink * This,
  92312.                                      FORMATETC *pFormatetc,
  92313.                                      ASYNC_STGMEDIUM *pStgmed);
  92314.  
  92315.               void __stdcall IAdviseSink_OnViewChange_Proxy(
  92316.     IAdviseSink * This,
  92317.                DWORD dwAspect,
  92318.                LONG lindex);
  92319.  
  92320.  
  92321.                 HRESULT __stdcall IAdviseSink_OnViewChange_Stub(
  92322.               IAdviseSink * This,
  92323.                DWORD dwAspect,
  92324.                LONG lindex);
  92325.  
  92326.               void __stdcall IAdviseSink_OnRename_Proxy(
  92327.     IAdviseSink * This,
  92328.  
  92329.           IMoniker *pmk);
  92330.  
  92331.  
  92332.                 HRESULT __stdcall IAdviseSink_OnRename_Stub(
  92333.               IAdviseSink * This,
  92334.                              IMoniker *pmk);
  92335.  
  92336.               void __stdcall IAdviseSink_OnSave_Proxy(
  92337.     IAdviseSink * This);
  92338.  
  92339.  
  92340.                 HRESULT __stdcall IAdviseSink_OnSave_Stub(
  92341.               IAdviseSink * This);
  92342.  
  92343.               void __stdcall IAdviseSink_OnClose_Proxy(
  92344.     IAdviseSink * This);
  92345.  
  92346.  
  92347.                 HRESULT __stdcall IAdviseSink_OnClose_Stub(
  92348.               IAdviseSink * This);
  92349.  
  92350.               void __stdcall AsyncIAdviseSink_Begin_OnDataChange_Proxy(
  92351.     AsyncIAdviseSink * This,
  92352.  
  92353.           FORMATETC *pFormatetc,
  92354.  
  92355.           STGMEDIUM *pStgmed);
  92356.  
  92357.  
  92358.                 HRESULT __stdcall AsyncIAdviseSink_Begin_OnDataChange_Stub(
  92359.               AsyncIAdviseSink * This,
  92360.                                      FORMATETC *pFormatetc,
  92361.                                      ASYNC_STGMEDIUM *pStgmed);
  92362.  
  92363.               void __stdcall AsyncIAdviseSink_Finish_OnDataChange_Proxy(
  92364.     AsyncIAdviseSink * This);
  92365.  
  92366.  
  92367.                 HRESULT __stdcall AsyncIAdviseSink_Finish_OnDataChange_Stub(
  92368.               AsyncIAdviseSink * This);
  92369.  
  92370.               void __stdcall AsyncIAdviseSink_Begin_OnViewChange_Proxy(
  92371.     AsyncIAdviseSink * This,
  92372.                DWORD dwAspect,
  92373.                LONG lindex);
  92374.  
  92375.  
  92376.                 HRESULT __stdcall AsyncIAdviseSink_Begin_OnViewChange_Stub(
  92377.               AsyncIAdviseSink * This,
  92378.                DWORD dwAspect,
  92379.                LONG lindex);
  92380.  
  92381.               void __stdcall AsyncIAdviseSink_Finish_OnViewChange_Proxy(
  92382.     AsyncIAdviseSink * This);
  92383.  
  92384.  
  92385.                 HRESULT __stdcall AsyncIAdviseSink_Finish_OnViewChange_Stub(
  92386.               AsyncIAdviseSink * This);
  92387.  
  92388.               void __stdcall AsyncIAdviseSink_Begin_OnRename_Proxy(
  92389.     AsyncIAdviseSink * This,
  92390.  
  92391.           IMoniker *pmk);
  92392.  
  92393.  
  92394.                 HRESULT __stdcall AsyncIAdviseSink_Begin_OnRename_Stub(
  92395.               AsyncIAdviseSink * This,
  92396.                              IMoniker *pmk);
  92397.  
  92398.               void __stdcall AsyncIAdviseSink_Finish_OnRename_Proxy(
  92399.     AsyncIAdviseSink * This);
  92400.  
  92401.  
  92402.                 HRESULT __stdcall AsyncIAdviseSink_Finish_OnRename_Stub(
  92403.               AsyncIAdviseSink * This);
  92404.  
  92405.               void __stdcall AsyncIAdviseSink_Begin_OnSave_Proxy(
  92406.     AsyncIAdviseSink * This);
  92407.  
  92408.  
  92409.                 HRESULT __stdcall AsyncIAdviseSink_Begin_OnSave_Stub(
  92410.               AsyncIAdviseSink * This);
  92411.  
  92412.               void __stdcall AsyncIAdviseSink_Finish_OnSave_Proxy(
  92413.     AsyncIAdviseSink * This);
  92414.  
  92415.  
  92416.                 HRESULT __stdcall AsyncIAdviseSink_Finish_OnSave_Stub(
  92417.               AsyncIAdviseSink * This);
  92418.  
  92419.               void __stdcall AsyncIAdviseSink_Begin_OnClose_Proxy(
  92420.     AsyncIAdviseSink * This);
  92421.  
  92422.  
  92423.                 HRESULT __stdcall AsyncIAdviseSink_Begin_OnClose_Stub(
  92424.               AsyncIAdviseSink * This);
  92425.  
  92426.               void __stdcall AsyncIAdviseSink_Finish_OnClose_Proxy(
  92427.     AsyncIAdviseSink * This);
  92428.  
  92429.  
  92430.                 HRESULT __stdcall AsyncIAdviseSink_Finish_OnClose_Stub(
  92431.               AsyncIAdviseSink * This);
  92432.  
  92433.               void __stdcall IAdviseSink2_OnLinkSrcChange_Proxy(
  92434.     IAdviseSink2 * This,
  92435.  
  92436.           IMoniker *pmk);
  92437.  
  92438.  
  92439.                 HRESULT __stdcall IAdviseSink2_OnLinkSrcChange_Stub(
  92440.               IAdviseSink2 * This,
  92441.                                      IMoniker *pmk);
  92442.  
  92443.               void __stdcall AsyncIAdviseSink2_Begin_OnLinkSrcChange_Proxy(
  92444.     AsyncIAdviseSink2 * This,
  92445.  
  92446.           IMoniker *pmk);
  92447.  
  92448.  
  92449.                 HRESULT __stdcall AsyncIAdviseSink2_Begin_OnLinkSrcChange_Stub(
  92450.               AsyncIAdviseSink2 * This,
  92451.                                      IMoniker *pmk);
  92452.  
  92453.               void __stdcall AsyncIAdviseSink2_Finish_OnLinkSrcChange_Proxy(
  92454.     AsyncIAdviseSink2 * This);
  92455.  
  92456.  
  92457.                 HRESULT __stdcall AsyncIAdviseSink2_Finish_OnLinkSrcChange_Stub(
  92458.               AsyncIAdviseSink2 * This);
  92459.  
  92460.               HRESULT __stdcall IDataObject_GetData_Proxy(
  92461.     IDataObject * This,
  92462.  
  92463.           FORMATETC *pformatetcIn,
  92464.  
  92465.            STGMEDIUM *pmedium);
  92466.  
  92467.  
  92468.                 HRESULT __stdcall IDataObject_GetData_Stub(
  92469.               IDataObject * This,
  92470.                                      FORMATETC *pformatetcIn,
  92471.                            STGMEDIUM *pRemoteMedium);
  92472.  
  92473.               HRESULT __stdcall IDataObject_GetDataHere_Proxy(
  92474.     IDataObject * This,
  92475.  
  92476.           FORMATETC *pformatetc,
  92477.  
  92478.              STGMEDIUM *pmedium);
  92479.  
  92480.  
  92481.                 HRESULT __stdcall IDataObject_GetDataHere_Stub(
  92482.               IDataObject * This,
  92483.                                      FORMATETC *pformatetc,
  92484.                                  STGMEDIUM *pRemoteMedium);
  92485.  
  92486.               HRESULT __stdcall IDataObject_SetData_Proxy(
  92487.     IDataObject * This,
  92488.  
  92489.           FORMATETC *pformatetc,
  92490.  
  92491.           STGMEDIUM *pmedium,
  92492.                BOOL fRelease);
  92493.  
  92494.  
  92495.                 HRESULT __stdcall IDataObject_SetData_Stub(
  92496.               IDataObject * This,
  92497.                                      FORMATETC *pformatetc,
  92498.                                      FLAG_STGMEDIUM *pmedium,
  92499.                BOOL fRelease);
  92500.  
  92501.               HRESULT __stdcall IFillLockBytes_FillAppend_Proxy(
  92502.     IFillLockBytes * This,
  92503.  
  92504.                           const void *pv,
  92505.  
  92506.           ULONG cb,
  92507.  
  92508.            ULONG *pcbWritten);
  92509.  
  92510.  
  92511.                 HRESULT __stdcall IFillLockBytes_FillAppend_Stub(
  92512.               IFillLockBytes * This,
  92513.                                                   const byte *pv,
  92514.                ULONG cb,
  92515.                            ULONG *pcbWritten);
  92516.  
  92517.               HRESULT __stdcall IFillLockBytes_FillAt_Proxy(
  92518.     IFillLockBytes * This,
  92519.  
  92520.           ULARGE_INTEGER ulOffset,
  92521.  
  92522.                           const void *pv,
  92523.  
  92524.           ULONG cb,
  92525.  
  92526.            ULONG *pcbWritten);
  92527.  
  92528.  
  92529.                 HRESULT __stdcall IFillLockBytes_FillAt_Stub(
  92530.               IFillLockBytes * This,
  92531.                ULARGE_INTEGER ulOffset,
  92532.                                                   const byte *pv,
  92533.                ULONG cb,
  92534.                            ULONG *pcbWritten);
  92535. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objidl.h" 3
  92536. #pragma option pop
  92537. # 25 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\coml2api.h" 2 3
  92538.  
  92539. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 1 3
  92540. #pragma option push -b -a8 -pc -A- -w-pun
  92541. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  92542. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  92543. #pragma option push -b -a8 -pc -A- -w-pun
  92544. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  92545. #pragma option pop
  92546. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 2 3
  92547.  
  92548. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  92549. #pragma option push -b -a8 -pc -A- -w-pun
  92550. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  92551. #pragma option pop
  92552. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 2 3
  92553.  
  92554.  
  92555.  
  92556.  
  92557.  
  92558.  
  92559.  
  92560. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  92561. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 2 3
  92562.  
  92563. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  92564. #pragma option push -b -a8 -pc -A- -w-pun
  92565. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  92566. #pragma option pop
  92567. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 2 3
  92568. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  92569. typedef struct IPropertyStorage IPropertyStorage;
  92570.  
  92571.  
  92572.  
  92573.  
  92574.  
  92575.  
  92576. typedef struct IPropertySetStorage IPropertySetStorage;
  92577.  
  92578.  
  92579.  
  92580.  
  92581.  
  92582.  
  92583. typedef struct IEnumSTATPROPSTG IEnumSTATPROPSTG;
  92584.  
  92585.  
  92586.  
  92587.  
  92588.  
  92589.  
  92590. typedef struct IEnumSTATPROPSETSTG IEnumSTATPROPSETSTG;
  92591.  
  92592.  
  92593.  
  92594.  
  92595.  
  92596.  
  92597. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 1 3
  92598. #pragma option push -b -a8 -pc -A- -w-pun
  92599. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  92600. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  92601. #pragma option push -b -a8 -pc -A- -w-pun
  92602. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  92603. #pragma option pop
  92604. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  92605.  
  92606. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  92607. #pragma option push -b -a8 -pc -A- -w-pun
  92608. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  92609. #pragma option pop
  92610. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  92611.  
  92612.  
  92613.  
  92614.  
  92615.  
  92616.  
  92617.  
  92618. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  92619. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  92620.  
  92621. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  92622. #pragma option push -b -a8 -pc -A- -w-pun
  92623. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  92624. #pragma option pop
  92625. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  92626. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  92627. #pragma option pop
  92628. # 72 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 2 3
  92629.  
  92630. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 1 3
  92631. #pragma option push -b -a8 -pc -A- -w-pun
  92632. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  92633. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  92634. #pragma option push -b -a8 -pc -A- -w-pun
  92635. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  92636. #pragma option pop
  92637. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  92638.  
  92639. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  92640. #pragma option push -b -a8 -pc -A- -w-pun
  92641. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  92642. #pragma option pop
  92643. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  92644.  
  92645.  
  92646.  
  92647.  
  92648.  
  92649.  
  92650.  
  92651. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  92652. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  92653.  
  92654. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  92655. #pragma option push -b -a8 -pc -A- -w-pun
  92656. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  92657. #pragma option pop
  92658. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  92659. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  92660. typedef struct ICreateTypeInfo ICreateTypeInfo;
  92661.  
  92662.  
  92663.  
  92664.  
  92665.  
  92666.  
  92667. typedef struct ICreateTypeInfo2 ICreateTypeInfo2;
  92668.  
  92669.  
  92670.  
  92671.  
  92672.  
  92673.  
  92674. typedef struct ICreateTypeLib ICreateTypeLib;
  92675.  
  92676.  
  92677.  
  92678.  
  92679.  
  92680.  
  92681. typedef struct ICreateTypeLib2 ICreateTypeLib2;
  92682.  
  92683.  
  92684.  
  92685.  
  92686.  
  92687.  
  92688. typedef struct IDispatch IDispatch;
  92689.  
  92690.  
  92691.  
  92692.  
  92693.  
  92694.  
  92695. typedef struct IEnumVARIANT IEnumVARIANT;
  92696.  
  92697.  
  92698.  
  92699.  
  92700.  
  92701.  
  92702. typedef struct ITypeComp ITypeComp;
  92703.  
  92704.  
  92705.  
  92706.  
  92707.  
  92708.  
  92709. typedef struct ITypeInfo ITypeInfo;
  92710.  
  92711.  
  92712.  
  92713.  
  92714.  
  92715.  
  92716. typedef struct ITypeInfo2 ITypeInfo2;
  92717.  
  92718.  
  92719.  
  92720.  
  92721.  
  92722.  
  92723. typedef struct ITypeLib ITypeLib;
  92724.  
  92725.  
  92726.  
  92727.  
  92728.  
  92729.  
  92730. typedef struct ITypeLib2 ITypeLib2;
  92731.  
  92732.  
  92733.  
  92734.  
  92735.  
  92736.  
  92737. typedef struct ITypeChangeEvents ITypeChangeEvents;
  92738.  
  92739.  
  92740.  
  92741.  
  92742.  
  92743.  
  92744. typedef struct IErrorInfo IErrorInfo;
  92745.  
  92746.  
  92747.  
  92748.  
  92749.  
  92750.  
  92751. typedef struct ICreateErrorInfo ICreateErrorInfo;
  92752.  
  92753.  
  92754.  
  92755.  
  92756.  
  92757.  
  92758. typedef struct ISupportErrorInfo ISupportErrorInfo;
  92759.  
  92760.  
  92761.  
  92762.  
  92763.  
  92764.  
  92765. typedef struct ITypeFactory ITypeFactory;
  92766.  
  92767.  
  92768.  
  92769.  
  92770.  
  92771.  
  92772. typedef struct ITypeMarshal ITypeMarshal;
  92773.  
  92774.  
  92775.  
  92776.  
  92777.  
  92778.  
  92779. typedef struct IRecordInfo IRecordInfo;
  92780.  
  92781.  
  92782.  
  92783.  
  92784.  
  92785.  
  92786. typedef struct IErrorLog IErrorLog;
  92787.  
  92788.  
  92789.  
  92790.  
  92791.  
  92792.  
  92793. typedef struct IPropertyBag IPropertyBag;
  92794.  
  92795.  
  92796.  
  92797.  
  92798.  
  92799.  
  92800. typedef struct ITypeLibRegistrationReader ITypeLibRegistrationReader;
  92801.  
  92802.  
  92803.  
  92804.  
  92805.  
  92806.  
  92807. typedef struct ITypeLibRegistration ITypeLibRegistration;
  92808.  
  92809.  
  92810.  
  92811.  
  92812.  
  92813.  
  92814. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 1 3
  92815. #pragma option push -b -a8 -pc -A- -w-pun
  92816. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  92817. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  92818. #pragma option push -b -a8 -pc -A- -w-pun
  92819. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  92820. #pragma option pop
  92821. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  92822.  
  92823. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  92824. #pragma option push -b -a8 -pc -A- -w-pun
  92825. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  92826. #pragma option pop
  92827. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  92828.  
  92829.  
  92830.  
  92831.  
  92832.  
  92833.  
  92834.  
  92835. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  92836. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  92837.  
  92838. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  92839. #pragma option push -b -a8 -pc -A- -w-pun
  92840. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  92841. #pragma option pop
  92842. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  92843. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  92844. #pragma option pop
  92845. # 198 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  92846. # 225 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  92847. #pragma region Desktop Family or OneCore Family
  92848.  
  92849.  
  92850.  
  92851.  
  92852.  
  92853.  
  92854. #pragma endregion
  92855. #pragma region Application Family or OneCore Family
  92856.  
  92857.  
  92858.  
  92859.  
  92860.  
  92861. #pragma endregion
  92862. #pragma region Desktop Family or OneCore Family or OneCore Family
  92863. # 254 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  92864. #pragma endregion
  92865. #pragma region Application Family or OneCore Family
  92866.  
  92867.  
  92868.  
  92869. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0000_v0_0_c_ifspec;
  92870. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0000_v0_0_s_ifspec;
  92871.  
  92872.  
  92873.  
  92874.  
  92875.  
  92876.  
  92877.  
  92878. typedef CY CURRENCY;
  92879.  
  92880. typedef struct tagSAFEARRAYBOUND
  92881.     {
  92882.     ULONG cElements;
  92883.     LONG lLbound;
  92884.     } SAFEARRAYBOUND;
  92885.  
  92886. typedef struct tagSAFEARRAYBOUND *LPSAFEARRAYBOUND;
  92887.  
  92888.  
  92889. typedef struct _wireVARIANT *wireVARIANT;
  92890.  
  92891. typedef struct _wireBRECORD *wireBRECORD;
  92892.  
  92893. typedef struct _wireSAFEARR_BSTR
  92894.     {
  92895.     ULONG Size;
  92896.                          wireBSTR *aBstr;
  92897.     } SAFEARR_BSTR;
  92898.  
  92899. typedef struct _wireSAFEARR_UNKNOWN
  92900.     {
  92901.     ULONG Size;
  92902.                          IUnknown **apUnknown;
  92903.     } SAFEARR_UNKNOWN;
  92904.  
  92905. typedef struct _wireSAFEARR_DISPATCH
  92906.     {
  92907.     ULONG Size;
  92908.                          IDispatch **apDispatch;
  92909.     } SAFEARR_DISPATCH;
  92910.  
  92911. typedef struct _wireSAFEARR_VARIANT
  92912.     {
  92913.     ULONG Size;
  92914.                          wireVARIANT *aVariant;
  92915.     } SAFEARR_VARIANT;
  92916.  
  92917. typedef struct _wireSAFEARR_BRECORD
  92918.     {
  92919.     ULONG Size;
  92920.                          wireBRECORD *aRecord;
  92921.     } SAFEARR_BRECORD;
  92922.  
  92923. typedef struct _wireSAFEARR_HAVEIID
  92924.     {
  92925.     ULONG Size;
  92926.                          IUnknown **apUnknown;
  92927.     IID iid;
  92928.     } SAFEARR_HAVEIID;
  92929.  
  92930. typedef
  92931. enum tagSF_TYPE
  92932.     {
  92933.         SF_ERROR = VT_ERROR,
  92934.         SF_I1 = VT_I1,
  92935.         SF_I2 = VT_I2,
  92936.         SF_I4 = VT_I4,
  92937.         SF_I8 = VT_I8,
  92938.         SF_BSTR = VT_BSTR,
  92939.         SF_UNKNOWN = VT_UNKNOWN,
  92940.         SF_DISPATCH = VT_DISPATCH,
  92941.         SF_VARIANT = VT_VARIANT,
  92942.         SF_RECORD = VT_RECORD,
  92943.         SF_HAVEIID = ( VT_UNKNOWN | VT_RESERVED )
  92944.     } SF_TYPE;
  92945.  
  92946. typedef struct _wireSAFEARRAY_UNION
  92947.     {
  92948.     ULONG sfType;
  92949.                                           union __MIDL_IOleAutomationTypes_0001
  92950.         {
  92951.                        SAFEARR_BSTR BstrStr;
  92952.                        SAFEARR_UNKNOWN UnknownStr;
  92953.                        SAFEARR_DISPATCH DispatchStr;
  92954.                        SAFEARR_VARIANT VariantStr;
  92955.                        SAFEARR_BRECORD RecordStr;
  92956.                        SAFEARR_HAVEIID HaveIidStr;
  92957.                        BYTE_SIZEDARR ByteStr;
  92958.                        WORD_SIZEDARR WordStr;
  92959.                        DWORD_SIZEDARR LongStr;
  92960.                        HYPER_SIZEDARR HyperStr;
  92961.         } u;
  92962.     } SAFEARRAYUNION;
  92963.  
  92964. typedef struct _wireSAFEARRAY
  92965.     {
  92966.     USHORT cDims;
  92967.     USHORT fFeatures;
  92968.     ULONG cbElements;
  92969.     ULONG cLocks;
  92970.     SAFEARRAYUNION uArrayStructs;
  92971.                     SAFEARRAYBOUND rgsabound[ 1 ];
  92972.     } *wireSAFEARRAY;
  92973.  
  92974. typedef wireSAFEARRAY *wirePSAFEARRAY;
  92975.  
  92976. typedef struct tagSAFEARRAY
  92977.     {
  92978.     USHORT cDims;
  92979.     USHORT fFeatures;
  92980.     ULONG cbElements;
  92981.     ULONG cLocks;
  92982.     PVOID pvData;
  92983.     SAFEARRAYBOUND rgsabound[ 1 ];
  92984.     } SAFEARRAY;
  92985.  
  92986. typedef SAFEARRAY *LPSAFEARRAY;
  92987. # 467 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  92988. typedef struct tagVARIANT VARIANT;
  92989.  
  92990. struct tagVARIANT
  92991.     {
  92992.     union
  92993.         {
  92994.         struct __tagVARIANT
  92995.             {
  92996.             VARTYPE vt;
  92997.             WORD wReserved1;
  92998.             WORD wReserved2;
  92999.             WORD wReserved3;
  93000.             union
  93001.                 {
  93002.                 LONGLONG llVal;
  93003.                 LONG lVal;
  93004.                 BYTE bVal;
  93005.                 SHORT iVal;
  93006.                 FLOAT fltVal;
  93007.                 DOUBLE dblVal;
  93008.                 VARIANT_BOOL boolVal;
  93009.  
  93010.                 SCODE scode;
  93011.                 CY cyVal;
  93012.                 DATE date;
  93013.                 BSTR bstrVal;
  93014.                 IUnknown *punkVal;
  93015.                 IDispatch *pdispVal;
  93016.                 SAFEARRAY *parray;
  93017.                 BYTE *pbVal;
  93018.                 SHORT *piVal;
  93019.                 LONG *plVal;
  93020.                 LONGLONG *pllVal;
  93021.                 FLOAT *pfltVal;
  93022.                 DOUBLE *pdblVal;
  93023.                 VARIANT_BOOL *pboolVal;
  93024.  
  93025.                 SCODE *pscode;
  93026.                 CY *pcyVal;
  93027.                 DATE *pdate;
  93028.                 BSTR *pbstrVal;
  93029.                 IUnknown **ppunkVal;
  93030.                 IDispatch **ppdispVal;
  93031.                 SAFEARRAY **pparray;
  93032.                 VARIANT *pvarVal;
  93033.                 PVOID byref;
  93034.                 CHAR cVal;
  93035.                 USHORT uiVal;
  93036.                 ULONG ulVal;
  93037.                 ULONGLONG ullVal;
  93038.                 INT intVal;
  93039.                 UINT uintVal;
  93040.                 DECIMAL *pdecVal;
  93041.                 CHAR *pcVal;
  93042.                 USHORT *puiVal;
  93043.                 ULONG *pulVal;
  93044.                 ULONGLONG *pullVal;
  93045.                 INT *pintVal;
  93046.                 UINT *puintVal;
  93047.                 struct __tagBRECORD
  93048.                     {
  93049.                     PVOID pvRecord;
  93050.                     IRecordInfo *pRecInfo;
  93051.                     } brecVal;
  93052.                 } n3;
  93053.             } n2;
  93054.         DECIMAL decVal;
  93055.         } n1;
  93056.     } ;
  93057. typedef VARIANT *LPVARIANT;
  93058.  
  93059. typedef VARIANT VARIANTARG;
  93060.  
  93061. typedef VARIANT *LPVARIANTARG;
  93062. # 559 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93063. struct _wireBRECORD
  93064.     {
  93065.     ULONG fFlags;
  93066.     ULONG clSize;
  93067.     IRecordInfo *pRecInfo;
  93068.                     byte *pRecord;
  93069.     } ;
  93070. struct _wireVARIANT
  93071.     {
  93072.     DWORD clSize;
  93073.     DWORD rpcReserved;
  93074.     USHORT vt;
  93075.     USHORT wReserved1;
  93076.     USHORT wReserved2;
  93077.     USHORT wReserved3;
  93078.                                    union
  93079.         {
  93080.                        LONGLONG llVal;
  93081.                        LONG lVal;
  93082.                        BYTE bVal;
  93083.                        SHORT iVal;
  93084.                        FLOAT fltVal;
  93085.                        DOUBLE dblVal;
  93086.                        VARIANT_BOOL boolVal;
  93087.                        SCODE scode;
  93088.                        CY cyVal;
  93089.                        DATE date;
  93090.                        wireBSTR bstrVal;
  93091.                        IUnknown *punkVal;
  93092.                        IDispatch *pdispVal;
  93093.                        wirePSAFEARRAY parray;
  93094.                        wireBRECORD brecVal;
  93095.                        BYTE *pbVal;
  93096.                        SHORT *piVal;
  93097.                        LONG *plVal;
  93098.                        LONGLONG *pllVal;
  93099.                        FLOAT *pfltVal;
  93100.                        DOUBLE *pdblVal;
  93101.                        VARIANT_BOOL *pboolVal;
  93102.                        SCODE *pscode;
  93103.                        CY *pcyVal;
  93104.                        DATE *pdate;
  93105.                        wireBSTR *pbstrVal;
  93106.                        IUnknown **ppunkVal;
  93107.                        IDispatch **ppdispVal;
  93108.                        wirePSAFEARRAY *pparray;
  93109.                        wireVARIANT *pvarVal;
  93110.                        CHAR cVal;
  93111.                        USHORT uiVal;
  93112.                        ULONG ulVal;
  93113.                        ULONGLONG ullVal;
  93114.                        INT intVal;
  93115.                        UINT uintVal;
  93116.                        DECIMAL decVal;
  93117.                        DECIMAL *pdecVal;
  93118.                        CHAR *pcVal;
  93119.                        USHORT *puiVal;
  93120.                        ULONG *pulVal;
  93121.                        ULONGLONG *pullVal;
  93122.                        INT *pintVal;
  93123.                        UINT *puintVal;
  93124.  
  93125.  
  93126.         } ;
  93127.     } ;
  93128. typedef LONG DISPID;
  93129.  
  93130. typedef DISPID MEMBERID;
  93131.  
  93132. typedef DWORD HREFTYPE;
  93133.  
  93134. typedef
  93135. enum tagTYPEKIND
  93136.     {
  93137.         TKIND_ENUM = 0,
  93138.         TKIND_RECORD = ( TKIND_ENUM + 1 ) ,
  93139.         TKIND_MODULE = ( TKIND_RECORD + 1 ) ,
  93140.         TKIND_INTERFACE = ( TKIND_MODULE + 1 ) ,
  93141.         TKIND_DISPATCH = ( TKIND_INTERFACE + 1 ) ,
  93142.         TKIND_COCLASS = ( TKIND_DISPATCH + 1 ) ,
  93143.         TKIND_ALIAS = ( TKIND_COCLASS + 1 ) ,
  93144.         TKIND_UNION = ( TKIND_ALIAS + 1 ) ,
  93145.         TKIND_MAX = ( TKIND_UNION + 1 )
  93146.     } TYPEKIND;
  93147.  
  93148. typedef struct tagTYPEDESC
  93149.     {
  93150.                                    union
  93151.         {
  93152.                        struct tagTYPEDESC *lptdesc;
  93153.                        struct tagARRAYDESC *lpadesc;
  93154.                        HREFTYPE hreftype;
  93155.  
  93156.         } ;
  93157.     VARTYPE vt;
  93158.     } TYPEDESC;
  93159.  
  93160. typedef struct tagARRAYDESC
  93161.     {
  93162.     TYPEDESC tdescElem;
  93163.     USHORT cDims;
  93164.                     SAFEARRAYBOUND rgbounds[ 1 ];
  93165.     } ARRAYDESC;
  93166.  
  93167. typedef struct tagPARAMDESCEX
  93168.     {
  93169.     ULONG cBytes;
  93170.     VARIANTARG varDefaultValue;
  93171.     } PARAMDESCEX;
  93172.  
  93173. typedef struct tagPARAMDESCEX *LPPARAMDESCEX;
  93174.  
  93175. typedef struct tagPARAMDESC
  93176.     {
  93177.     LPPARAMDESCEX pparamdescex;
  93178.     USHORT wParamFlags;
  93179.     } PARAMDESC;
  93180.  
  93181. typedef struct tagPARAMDESC *LPPARAMDESC;
  93182. # 695 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93183. typedef struct tagIDLDESC
  93184.     {
  93185.     ULONG_PTR dwReserved;
  93186.     USHORT wIDLFlags;
  93187.     } IDLDESC;
  93188.  
  93189. typedef struct tagIDLDESC *LPIDLDESC;
  93190. # 724 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93191. typedef struct tagELEMDESC {
  93192.     TYPEDESC tdesc;
  93193.     union {
  93194.         IDLDESC idldesc;
  93195.         PARAMDESC paramdesc;
  93196.     } ;
  93197. } ELEMDESC, * LPELEMDESC;
  93198.  
  93199.  
  93200.  
  93201. typedef struct tagTYPEATTR
  93202.     {
  93203.     GUID guid;
  93204.     LCID lcid;
  93205.     DWORD dwReserved;
  93206.     MEMBERID memidConstructor;
  93207.     MEMBERID memidDestructor;
  93208.     LPOLESTR lpstrSchema;
  93209.     ULONG cbSizeInstance;
  93210.     TYPEKIND typekind;
  93211.     WORD cFuncs;
  93212.     WORD cVars;
  93213.     WORD cImplTypes;
  93214.     WORD cbSizeVft;
  93215.     WORD cbAlignment;
  93216.     WORD wTypeFlags;
  93217.     WORD wMajorVerNum;
  93218.     WORD wMinorVerNum;
  93219.     TYPEDESC tdescAlias;
  93220.     IDLDESC idldescType;
  93221.     } TYPEATTR;
  93222.  
  93223. typedef struct tagTYPEATTR *LPTYPEATTR;
  93224.  
  93225. typedef struct tagDISPPARAMS
  93226.     {
  93227.                     VARIANTARG *rgvarg;
  93228.                     DISPID *rgdispidNamedArgs;
  93229.     UINT cArgs;
  93230.     UINT cNamedArgs;
  93231.     } DISPPARAMS;
  93232. # 785 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93233. typedef struct tagEXCEPINFO {
  93234.     WORD wCode;
  93235.     WORD wReserved;
  93236.     BSTR bstrSource;
  93237.     BSTR bstrDescription;
  93238.     BSTR bstrHelpFile;
  93239.     DWORD dwHelpContext;
  93240.     PVOID pvReserved;
  93241.     HRESULT (__stdcall *pfnDeferredFillIn)(struct tagEXCEPINFO *);
  93242.     SCODE scode;
  93243. } EXCEPINFO, * LPEXCEPINFO;
  93244.  
  93245.  
  93246.  
  93247. typedef
  93248. enum tagCALLCONV
  93249.     {
  93250.         CC_FASTCALL = 0,
  93251.         CC_CDECL = 1,
  93252.         CC_MSCPASCAL = ( CC_CDECL + 1 ) ,
  93253.         CC_PASCAL = CC_MSCPASCAL,
  93254.         CC_MACPASCAL = ( CC_PASCAL + 1 ) ,
  93255.         CC_STDCALL = ( CC_MACPASCAL + 1 ) ,
  93256.         CC_FPFASTCALL = ( CC_STDCALL + 1 ) ,
  93257.         CC_SYSCALL = ( CC_FPFASTCALL + 1 ) ,
  93258.         CC_MPWCDECL = ( CC_SYSCALL + 1 ) ,
  93259.         CC_MPWPASCAL = ( CC_MPWCDECL + 1 ) ,
  93260.         CC_MAX = ( CC_MPWPASCAL + 1 )
  93261.     } CALLCONV;
  93262.  
  93263. typedef
  93264. enum tagFUNCKIND
  93265.     {
  93266.         FUNC_VIRTUAL = 0,
  93267.         FUNC_PUREVIRTUAL = ( FUNC_VIRTUAL + 1 ) ,
  93268.         FUNC_NONVIRTUAL = ( FUNC_PUREVIRTUAL + 1 ) ,
  93269.         FUNC_STATIC = ( FUNC_NONVIRTUAL + 1 ) ,
  93270.         FUNC_DISPATCH = ( FUNC_STATIC + 1 )
  93271.     } FUNCKIND;
  93272.  
  93273. typedef
  93274. enum tagINVOKEKIND
  93275.     {
  93276.         INVOKE_FUNC = 1,
  93277.         INVOKE_PROPERTYGET = 2,
  93278.         INVOKE_PROPERTYPUT = 4,
  93279.         INVOKE_PROPERTYPUTREF = 8
  93280.     } INVOKEKIND;
  93281.  
  93282. typedef struct tagFUNCDESC
  93283.     {
  93284.     MEMBERID memid;
  93285.                     SCODE *lprgscode;
  93286.                     ELEMDESC *lprgelemdescParam;
  93287.     FUNCKIND funckind;
  93288.     INVOKEKIND invkind;
  93289.     CALLCONV callconv;
  93290.     SHORT cParams;
  93291.     SHORT cParamsOpt;
  93292.     SHORT oVft;
  93293.     SHORT cScodes;
  93294.     ELEMDESC elemdescFunc;
  93295.     WORD wFuncFlags;
  93296.     } FUNCDESC;
  93297.  
  93298. typedef struct tagFUNCDESC *LPFUNCDESC;
  93299.  
  93300. typedef
  93301. enum tagVARKIND
  93302.     {
  93303.         VAR_PERINSTANCE = 0,
  93304.         VAR_STATIC = ( VAR_PERINSTANCE + 1 ) ,
  93305.         VAR_CONST = ( VAR_STATIC + 1 ) ,
  93306.         VAR_DISPATCH = ( VAR_CONST + 1 )
  93307.     } VARKIND;
  93308. # 869 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93309. typedef struct tagVARDESC
  93310.     {
  93311.     MEMBERID memid;
  93312.     LPOLESTR lpstrSchema;
  93313.                                    union
  93314.         {
  93315.                        ULONG oInst;
  93316.                        VARIANT *lpvarValue;
  93317.         } ;
  93318.     ELEMDESC elemdescVar;
  93319.     WORD wVarFlags;
  93320.     VARKIND varkind;
  93321.     } VARDESC;
  93322.  
  93323. typedef struct tagVARDESC *LPVARDESC;
  93324.  
  93325. typedef
  93326. enum tagTYPEFLAGS
  93327.     {
  93328.         TYPEFLAG_FAPPOBJECT = 0x1,
  93329.         TYPEFLAG_FCANCREATE = 0x2,
  93330.         TYPEFLAG_FLICENSED = 0x4,
  93331.         TYPEFLAG_FPREDECLID = 0x8,
  93332.         TYPEFLAG_FHIDDEN = 0x10,
  93333.         TYPEFLAG_FCONTROL = 0x20,
  93334.         TYPEFLAG_FDUAL = 0x40,
  93335.         TYPEFLAG_FNONEXTENSIBLE = 0x80,
  93336.         TYPEFLAG_FOLEAUTOMATION = 0x100,
  93337.         TYPEFLAG_FRESTRICTED = 0x200,
  93338.         TYPEFLAG_FAGGREGATABLE = 0x400,
  93339.         TYPEFLAG_FREPLACEABLE = 0x800,
  93340.         TYPEFLAG_FDISPATCHABLE = 0x1000,
  93341.         TYPEFLAG_FREVERSEBIND = 0x2000,
  93342.         TYPEFLAG_FPROXY = 0x4000
  93343.     } TYPEFLAGS;
  93344.  
  93345. typedef
  93346. enum tagFUNCFLAGS
  93347.     {
  93348.         FUNCFLAG_FRESTRICTED = 0x1,
  93349.         FUNCFLAG_FSOURCE = 0x2,
  93350.         FUNCFLAG_FBINDABLE = 0x4,
  93351.         FUNCFLAG_FREQUESTEDIT = 0x8,
  93352.         FUNCFLAG_FDISPLAYBIND = 0x10,
  93353.         FUNCFLAG_FDEFAULTBIND = 0x20,
  93354.         FUNCFLAG_FHIDDEN = 0x40,
  93355.         FUNCFLAG_FUSESGETLASTERROR = 0x80,
  93356.         FUNCFLAG_FDEFAULTCOLLELEM = 0x100,
  93357.         FUNCFLAG_FUIDEFAULT = 0x200,
  93358.         FUNCFLAG_FNONBROWSABLE = 0x400,
  93359.         FUNCFLAG_FREPLACEABLE = 0x800,
  93360.         FUNCFLAG_FIMMEDIATEBIND = 0x1000
  93361.     } FUNCFLAGS;
  93362.  
  93363. typedef
  93364. enum tagVARFLAGS
  93365.     {
  93366.         VARFLAG_FREADONLY = 0x1,
  93367.         VARFLAG_FSOURCE = 0x2,
  93368.         VARFLAG_FBINDABLE = 0x4,
  93369.         VARFLAG_FREQUESTEDIT = 0x8,
  93370.         VARFLAG_FDISPLAYBIND = 0x10,
  93371.         VARFLAG_FDEFAULTBIND = 0x20,
  93372.         VARFLAG_FHIDDEN = 0x40,
  93373.         VARFLAG_FRESTRICTED = 0x80,
  93374.         VARFLAG_FDEFAULTCOLLELEM = 0x100,
  93375.         VARFLAG_FUIDEFAULT = 0x200,
  93376.         VARFLAG_FNONBROWSABLE = 0x400,
  93377.         VARFLAG_FREPLACEABLE = 0x800,
  93378.         VARFLAG_FIMMEDIATEBIND = 0x1000
  93379.     } VARFLAGS;
  93380.  
  93381. typedef struct tagCLEANLOCALSTORAGE
  93382.     {
  93383.     IUnknown *pInterface;
  93384.     PVOID pStorage;
  93385.     DWORD flags;
  93386.     } CLEANLOCALSTORAGE;
  93387.  
  93388. typedef struct tagCUSTDATAITEM
  93389.     {
  93390.     GUID guid;
  93391.     VARIANTARG varValue;
  93392.     } CUSTDATAITEM;
  93393.  
  93394. typedef struct tagCUSTDATAITEM *LPCUSTDATAITEM;
  93395.  
  93396. typedef struct tagCUSTDATA
  93397.     {
  93398.     DWORD cCustData;
  93399.                     LPCUSTDATAITEM prgCustData;
  93400.     } CUSTDATA;
  93401.  
  93402. typedef struct tagCUSTDATA *LPCUSTDATA;
  93403.  
  93404.  
  93405.  
  93406. extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_c_ifspec;
  93407. extern RPC_IF_HANDLE IOleAutomationTypes_v1_0_s_ifspec;
  93408.  
  93409.  
  93410.  
  93411.  
  93412.  
  93413.  
  93414. #pragma endregion
  93415. #pragma region Desktop Family or OneCore Family
  93416.  
  93417.  
  93418.  
  93419. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0001_v0_0_c_ifspec;
  93420. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0001_v0_0_s_ifspec;
  93421.  
  93422.  
  93423.  
  93424.  
  93425.  
  93426.  
  93427.  
  93428. typedef ICreateTypeInfo *LPCREATETYPEINFO;
  93429.  
  93430.  
  93431. extern const IID IID_ICreateTypeInfo;
  93432. # 1097 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93433.     typedef struct ICreateTypeInfoVtbl
  93434.     {
  93435.  
  93436.  
  93437.         HRESULT ( __stdcall *QueryInterface )(
  93438.             ICreateTypeInfo * This,
  93439.                        const IID * riid,
  93440.  
  93441.                           void **ppvObject);
  93442.  
  93443.         ULONG ( __stdcall *AddRef )(
  93444.             ICreateTypeInfo * This);
  93445.  
  93446.         ULONG ( __stdcall *Release )(
  93447.             ICreateTypeInfo * This);
  93448.  
  93449.         HRESULT ( __stdcall *SetGuid )(
  93450.             ICreateTypeInfo * This,
  93451.                        const GUID * guid);
  93452.  
  93453.         HRESULT ( __stdcall *SetTypeFlags )(
  93454.             ICreateTypeInfo * This,
  93455.                        UINT uTypeFlags);
  93456.  
  93457.         HRESULT ( __stdcall *SetDocString )(
  93458.             ICreateTypeInfo * This,
  93459.  
  93460.                        LPOLESTR pStrDoc);
  93461.  
  93462.         HRESULT ( __stdcall *SetHelpContext )(
  93463.             ICreateTypeInfo * This,
  93464.                        DWORD dwHelpContext);
  93465.  
  93466.         HRESULT ( __stdcall *SetVersion )(
  93467.             ICreateTypeInfo * This,
  93468.                        WORD wMajorVerNum,
  93469.                        WORD wMinorVerNum);
  93470.  
  93471.         HRESULT ( __stdcall *AddRefTypeInfo )(
  93472.             ICreateTypeInfo * This,
  93473.                        ITypeInfo *pTInfo,
  93474.                        HREFTYPE *phRefType);
  93475.  
  93476.         HRESULT ( __stdcall *AddFuncDesc )(
  93477.             ICreateTypeInfo * This,
  93478.                        UINT index,
  93479.                        FUNCDESC *pFuncDesc);
  93480.  
  93481.         HRESULT ( __stdcall *AddImplType )(
  93482.             ICreateTypeInfo * This,
  93483.                        UINT index,
  93484.                        HREFTYPE hRefType);
  93485.  
  93486.         HRESULT ( __stdcall *SetImplTypeFlags )(
  93487.             ICreateTypeInfo * This,
  93488.                        UINT index,
  93489.                        INT implTypeFlags);
  93490.  
  93491.         HRESULT ( __stdcall *SetAlignment )(
  93492.             ICreateTypeInfo * This,
  93493.                        WORD cbAlignment);
  93494.  
  93495.         HRESULT ( __stdcall *SetSchema )(
  93496.             ICreateTypeInfo * This,
  93497.  
  93498.                        LPOLESTR pStrSchema);
  93499.  
  93500.         HRESULT ( __stdcall *AddVarDesc )(
  93501.             ICreateTypeInfo * This,
  93502.                        UINT index,
  93503.                        VARDESC *pVarDesc);
  93504.  
  93505.         HRESULT ( __stdcall *SetFuncAndParamNames )(
  93506.             ICreateTypeInfo * This,
  93507.                        UINT index,
  93508.  
  93509.                                       LPOLESTR *rgszNames,
  93510.                        UINT cNames);
  93511.  
  93512.         HRESULT ( __stdcall *SetVarName )(
  93513.             ICreateTypeInfo * This,
  93514.                        UINT index,
  93515.  
  93516.                        LPOLESTR szName);
  93517.  
  93518.         HRESULT ( __stdcall *SetTypeDescAlias )(
  93519.             ICreateTypeInfo * This,
  93520.                        TYPEDESC *pTDescAlias);
  93521.  
  93522.         HRESULT ( __stdcall *DefineFuncAsDllEntry )(
  93523.             ICreateTypeInfo * This,
  93524.                        UINT index,
  93525.  
  93526.                        LPOLESTR szDllName,
  93527.  
  93528.                        LPOLESTR szProcName);
  93529.  
  93530.         HRESULT ( __stdcall *SetFuncDocString )(
  93531.             ICreateTypeInfo * This,
  93532.                        UINT index,
  93533.  
  93534.                        LPOLESTR szDocString);
  93535.  
  93536.         HRESULT ( __stdcall *SetVarDocString )(
  93537.             ICreateTypeInfo * This,
  93538.                        UINT index,
  93539.  
  93540.                        LPOLESTR szDocString);
  93541.  
  93542.         HRESULT ( __stdcall *SetFuncHelpContext )(
  93543.             ICreateTypeInfo * This,
  93544.                        UINT index,
  93545.                        DWORD dwHelpContext);
  93546.  
  93547.         HRESULT ( __stdcall *SetVarHelpContext )(
  93548.             ICreateTypeInfo * This,
  93549.                        UINT index,
  93550.                        DWORD dwHelpContext);
  93551.  
  93552.         HRESULT ( __stdcall *SetMops )(
  93553.             ICreateTypeInfo * This,
  93554.                        UINT index,
  93555.  
  93556.                   BSTR bstrMops);
  93557.  
  93558.         HRESULT ( __stdcall *SetTypeIdldesc )(
  93559.             ICreateTypeInfo * This,
  93560.                        IDLDESC *pIdlDesc);
  93561.  
  93562.         HRESULT ( __stdcall *LayOut )(
  93563.             ICreateTypeInfo * This);
  93564.  
  93565.  
  93566.     } ICreateTypeInfoVtbl;
  93567.  
  93568.     struct ICreateTypeInfo
  93569.     {
  93570.                    struct ICreateTypeInfoVtbl *lpVtbl;
  93571.     };
  93572. # 1338 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93573. typedef ICreateTypeInfo2 *LPCREATETYPEINFO2;
  93574.  
  93575.  
  93576. extern const IID IID_ICreateTypeInfo2;
  93577. # 1412 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93578.     typedef struct ICreateTypeInfo2Vtbl
  93579.     {
  93580.  
  93581.  
  93582.         HRESULT ( __stdcall *QueryInterface )(
  93583.             ICreateTypeInfo2 * This,
  93584.                        const IID * riid,
  93585.  
  93586.                           void **ppvObject);
  93587.  
  93588.         ULONG ( __stdcall *AddRef )(
  93589.             ICreateTypeInfo2 * This);
  93590.  
  93591.         ULONG ( __stdcall *Release )(
  93592.             ICreateTypeInfo2 * This);
  93593.  
  93594.         HRESULT ( __stdcall *SetGuid )(
  93595.             ICreateTypeInfo2 * This,
  93596.                        const GUID * guid);
  93597.  
  93598.         HRESULT ( __stdcall *SetTypeFlags )(
  93599.             ICreateTypeInfo2 * This,
  93600.                        UINT uTypeFlags);
  93601.  
  93602.         HRESULT ( __stdcall *SetDocString )(
  93603.             ICreateTypeInfo2 * This,
  93604.  
  93605.                        LPOLESTR pStrDoc);
  93606.  
  93607.         HRESULT ( __stdcall *SetHelpContext )(
  93608.             ICreateTypeInfo2 * This,
  93609.                        DWORD dwHelpContext);
  93610.  
  93611.         HRESULT ( __stdcall *SetVersion )(
  93612.             ICreateTypeInfo2 * This,
  93613.                        WORD wMajorVerNum,
  93614.                        WORD wMinorVerNum);
  93615.  
  93616.         HRESULT ( __stdcall *AddRefTypeInfo )(
  93617.             ICreateTypeInfo2 * This,
  93618.                        ITypeInfo *pTInfo,
  93619.                        HREFTYPE *phRefType);
  93620.  
  93621.         HRESULT ( __stdcall *AddFuncDesc )(
  93622.             ICreateTypeInfo2 * This,
  93623.                        UINT index,
  93624.                        FUNCDESC *pFuncDesc);
  93625.  
  93626.         HRESULT ( __stdcall *AddImplType )(
  93627.             ICreateTypeInfo2 * This,
  93628.                        UINT index,
  93629.                        HREFTYPE hRefType);
  93630.  
  93631.         HRESULT ( __stdcall *SetImplTypeFlags )(
  93632.             ICreateTypeInfo2 * This,
  93633.                        UINT index,
  93634.                        INT implTypeFlags);
  93635.  
  93636.         HRESULT ( __stdcall *SetAlignment )(
  93637.             ICreateTypeInfo2 * This,
  93638.                        WORD cbAlignment);
  93639.  
  93640.         HRESULT ( __stdcall *SetSchema )(
  93641.             ICreateTypeInfo2 * This,
  93642.  
  93643.                        LPOLESTR pStrSchema);
  93644.  
  93645.         HRESULT ( __stdcall *AddVarDesc )(
  93646.             ICreateTypeInfo2 * This,
  93647.                        UINT index,
  93648.                        VARDESC *pVarDesc);
  93649.  
  93650.         HRESULT ( __stdcall *SetFuncAndParamNames )(
  93651.             ICreateTypeInfo2 * This,
  93652.                        UINT index,
  93653.  
  93654.                                       LPOLESTR *rgszNames,
  93655.                        UINT cNames);
  93656.  
  93657.         HRESULT ( __stdcall *SetVarName )(
  93658.             ICreateTypeInfo2 * This,
  93659.                        UINT index,
  93660.  
  93661.                        LPOLESTR szName);
  93662.  
  93663.         HRESULT ( __stdcall *SetTypeDescAlias )(
  93664.             ICreateTypeInfo2 * This,
  93665.                        TYPEDESC *pTDescAlias);
  93666.  
  93667.         HRESULT ( __stdcall *DefineFuncAsDllEntry )(
  93668.             ICreateTypeInfo2 * This,
  93669.                        UINT index,
  93670.  
  93671.                        LPOLESTR szDllName,
  93672.  
  93673.                        LPOLESTR szProcName);
  93674.  
  93675.         HRESULT ( __stdcall *SetFuncDocString )(
  93676.             ICreateTypeInfo2 * This,
  93677.                        UINT index,
  93678.  
  93679.                        LPOLESTR szDocString);
  93680.  
  93681.         HRESULT ( __stdcall *SetVarDocString )(
  93682.             ICreateTypeInfo2 * This,
  93683.                        UINT index,
  93684.  
  93685.                        LPOLESTR szDocString);
  93686.  
  93687.         HRESULT ( __stdcall *SetFuncHelpContext )(
  93688.             ICreateTypeInfo2 * This,
  93689.                        UINT index,
  93690.                        DWORD dwHelpContext);
  93691.  
  93692.         HRESULT ( __stdcall *SetVarHelpContext )(
  93693.             ICreateTypeInfo2 * This,
  93694.                        UINT index,
  93695.                        DWORD dwHelpContext);
  93696.  
  93697.         HRESULT ( __stdcall *SetMops )(
  93698.             ICreateTypeInfo2 * This,
  93699.                        UINT index,
  93700.  
  93701.                   BSTR bstrMops);
  93702.  
  93703.         HRESULT ( __stdcall *SetTypeIdldesc )(
  93704.             ICreateTypeInfo2 * This,
  93705.                        IDLDESC *pIdlDesc);
  93706.  
  93707.         HRESULT ( __stdcall *LayOut )(
  93708.             ICreateTypeInfo2 * This);
  93709.  
  93710.         HRESULT ( __stdcall *DeleteFuncDesc )(
  93711.             ICreateTypeInfo2 * This,
  93712.                        UINT index);
  93713.  
  93714.         HRESULT ( __stdcall *DeleteFuncDescByMemId )(
  93715.             ICreateTypeInfo2 * This,
  93716.                        MEMBERID memid,
  93717.                        INVOKEKIND invKind);
  93718.  
  93719.         HRESULT ( __stdcall *DeleteVarDesc )(
  93720.             ICreateTypeInfo2 * This,
  93721.                        UINT index);
  93722.  
  93723.         HRESULT ( __stdcall *DeleteVarDescByMemId )(
  93724.             ICreateTypeInfo2 * This,
  93725.                        MEMBERID memid);
  93726.  
  93727.         HRESULT ( __stdcall *DeleteImplType )(
  93728.             ICreateTypeInfo2 * This,
  93729.                        UINT index);
  93730.  
  93731.         HRESULT ( __stdcall *SetCustData )(
  93732.             ICreateTypeInfo2 * This,
  93733.                        const GUID * guid,
  93734.                        VARIANT *pVarVal);
  93735.  
  93736.         HRESULT ( __stdcall *SetFuncCustData )(
  93737.             ICreateTypeInfo2 * This,
  93738.                        UINT index,
  93739.                        const GUID * guid,
  93740.                        VARIANT *pVarVal);
  93741.  
  93742.         HRESULT ( __stdcall *SetParamCustData )(
  93743.             ICreateTypeInfo2 * This,
  93744.                        UINT indexFunc,
  93745.                        UINT indexParam,
  93746.                        const GUID * guid,
  93747.                        VARIANT *pVarVal);
  93748.  
  93749.         HRESULT ( __stdcall *SetVarCustData )(
  93750.             ICreateTypeInfo2 * This,
  93751.                        UINT index,
  93752.                        const GUID * guid,
  93753.                        VARIANT *pVarVal);
  93754.  
  93755.         HRESULT ( __stdcall *SetImplTypeCustData )(
  93756.             ICreateTypeInfo2 * This,
  93757.                        UINT index,
  93758.                        const GUID * guid,
  93759.                        VARIANT *pVarVal);
  93760.  
  93761.         HRESULT ( __stdcall *SetHelpStringContext )(
  93762.             ICreateTypeInfo2 * This,
  93763.                        ULONG dwHelpStringContext);
  93764.  
  93765.         HRESULT ( __stdcall *SetFuncHelpStringContext )(
  93766.             ICreateTypeInfo2 * This,
  93767.                        UINT index,
  93768.                        ULONG dwHelpStringContext);
  93769.  
  93770.         HRESULT ( __stdcall *SetVarHelpStringContext )(
  93771.             ICreateTypeInfo2 * This,
  93772.                        UINT index,
  93773.                        ULONG dwHelpStringContext);
  93774.  
  93775.         HRESULT ( __stdcall *Invalidate )(
  93776.             ICreateTypeInfo2 * This);
  93777.  
  93778.         HRESULT ( __stdcall *SetName )(
  93779.             ICreateTypeInfo2 * This,
  93780.  
  93781.                        LPOLESTR szName);
  93782.  
  93783.  
  93784.     } ICreateTypeInfo2Vtbl;
  93785.  
  93786.     struct ICreateTypeInfo2
  93787.     {
  93788.                    struct ICreateTypeInfo2Vtbl *lpVtbl;
  93789.     };
  93790. # 1772 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93791. typedef ICreateTypeLib *LPCREATETYPELIB;
  93792.  
  93793.  
  93794. extern const IID IID_ICreateTypeLib;
  93795. # 1824 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93796.     typedef struct ICreateTypeLibVtbl
  93797.     {
  93798.  
  93799.  
  93800.         HRESULT ( __stdcall *QueryInterface )(
  93801.             ICreateTypeLib * This,
  93802.                        const IID * riid,
  93803.  
  93804.                           void **ppvObject);
  93805.  
  93806.         ULONG ( __stdcall *AddRef )(
  93807.             ICreateTypeLib * This);
  93808.  
  93809.         ULONG ( __stdcall *Release )(
  93810.             ICreateTypeLib * This);
  93811.  
  93812.         HRESULT ( __stdcall *CreateTypeInfo )(
  93813.             ICreateTypeLib * This,
  93814.  
  93815.                        LPOLESTR szName,
  93816.                        TYPEKIND tkind,
  93817.                         ICreateTypeInfo **ppCTInfo);
  93818.  
  93819.         HRESULT ( __stdcall *SetName )(
  93820.             ICreateTypeLib * This,
  93821.  
  93822.                        LPOLESTR szName);
  93823.  
  93824.         HRESULT ( __stdcall *SetVersion )(
  93825.             ICreateTypeLib * This,
  93826.                        WORD wMajorVerNum,
  93827.                        WORD wMinorVerNum);
  93828.  
  93829.         HRESULT ( __stdcall *SetGuid )(
  93830.             ICreateTypeLib * This,
  93831.                        const GUID * guid);
  93832.  
  93833.         HRESULT ( __stdcall *SetDocString )(
  93834.             ICreateTypeLib * This,
  93835.  
  93836.                        LPOLESTR szDoc);
  93837.  
  93838.         HRESULT ( __stdcall *SetHelpFileName )(
  93839.             ICreateTypeLib * This,
  93840.  
  93841.                        LPOLESTR szHelpFileName);
  93842.  
  93843.         HRESULT ( __stdcall *SetHelpContext )(
  93844.             ICreateTypeLib * This,
  93845.                        DWORD dwHelpContext);
  93846.  
  93847.         HRESULT ( __stdcall *SetLcid )(
  93848.             ICreateTypeLib * This,
  93849.                        LCID lcid);
  93850.  
  93851.         HRESULT ( __stdcall *SetLibFlags )(
  93852.             ICreateTypeLib * This,
  93853.                        UINT uLibFlags);
  93854.  
  93855.         HRESULT ( __stdcall *SaveAllChanges )(
  93856.             ICreateTypeLib * This);
  93857.  
  93858.  
  93859.     } ICreateTypeLibVtbl;
  93860.  
  93861.     struct ICreateTypeLib
  93862.     {
  93863.                    struct ICreateTypeLibVtbl *lpVtbl;
  93864.     };
  93865. # 1956 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93866. typedef ICreateTypeLib2 *LPCREATETYPELIB2;
  93867.  
  93868.  
  93869. extern const IID IID_ICreateTypeLib2;
  93870. # 1987 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93871.     typedef struct ICreateTypeLib2Vtbl
  93872.     {
  93873.  
  93874.  
  93875.         HRESULT ( __stdcall *QueryInterface )(
  93876.             ICreateTypeLib2 * This,
  93877.                        const IID * riid,
  93878.  
  93879.                           void **ppvObject);
  93880.  
  93881.         ULONG ( __stdcall *AddRef )(
  93882.             ICreateTypeLib2 * This);
  93883.  
  93884.         ULONG ( __stdcall *Release )(
  93885.             ICreateTypeLib2 * This);
  93886.  
  93887.         HRESULT ( __stdcall *CreateTypeInfo )(
  93888.             ICreateTypeLib2 * This,
  93889.  
  93890.                        LPOLESTR szName,
  93891.                        TYPEKIND tkind,
  93892.                         ICreateTypeInfo **ppCTInfo);
  93893.  
  93894.         HRESULT ( __stdcall *SetName )(
  93895.             ICreateTypeLib2 * This,
  93896.  
  93897.                        LPOLESTR szName);
  93898.  
  93899.         HRESULT ( __stdcall *SetVersion )(
  93900.             ICreateTypeLib2 * This,
  93901.                        WORD wMajorVerNum,
  93902.                        WORD wMinorVerNum);
  93903.  
  93904.         HRESULT ( __stdcall *SetGuid )(
  93905.             ICreateTypeLib2 * This,
  93906.                        const GUID * guid);
  93907.  
  93908.         HRESULT ( __stdcall *SetDocString )(
  93909.             ICreateTypeLib2 * This,
  93910.  
  93911.                        LPOLESTR szDoc);
  93912.  
  93913.         HRESULT ( __stdcall *SetHelpFileName )(
  93914.             ICreateTypeLib2 * This,
  93915.  
  93916.                        LPOLESTR szHelpFileName);
  93917.  
  93918.         HRESULT ( __stdcall *SetHelpContext )(
  93919.             ICreateTypeLib2 * This,
  93920.                        DWORD dwHelpContext);
  93921.  
  93922.         HRESULT ( __stdcall *SetLcid )(
  93923.             ICreateTypeLib2 * This,
  93924.                        LCID lcid);
  93925.  
  93926.         HRESULT ( __stdcall *SetLibFlags )(
  93927.             ICreateTypeLib2 * This,
  93928.                        UINT uLibFlags);
  93929.  
  93930.         HRESULT ( __stdcall *SaveAllChanges )(
  93931.             ICreateTypeLib2 * This);
  93932.  
  93933.         HRESULT ( __stdcall *DeleteTypeInfo )(
  93934.             ICreateTypeLib2 * This,
  93935.  
  93936.                        LPOLESTR szName);
  93937.  
  93938.         HRESULT ( __stdcall *SetCustData )(
  93939.             ICreateTypeLib2 * This,
  93940.                        const GUID * guid,
  93941.                        VARIANT *pVarVal);
  93942.  
  93943.         HRESULT ( __stdcall *SetHelpStringContext )(
  93944.             ICreateTypeLib2 * This,
  93945.                        ULONG dwHelpStringContext);
  93946.  
  93947.         HRESULT ( __stdcall *SetHelpStringDll )(
  93948.             ICreateTypeLib2 * This,
  93949.  
  93950.                        LPOLESTR szFileName);
  93951.  
  93952.  
  93953.     } ICreateTypeLib2Vtbl;
  93954.  
  93955.     struct ICreateTypeLib2
  93956.     {
  93957.                    struct ICreateTypeLib2Vtbl *lpVtbl;
  93958.     };
  93959. # 2149 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93960. #pragma endregion
  93961. #pragma region Application Family or OneCore Family
  93962.  
  93963.  
  93964.  
  93965. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0005_v0_0_c_ifspec;
  93966. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0005_v0_0_s_ifspec;
  93967.  
  93968.  
  93969.  
  93970.  
  93971.  
  93972.  
  93973.  
  93974. typedef IDispatch *LPDISPATCH;
  93975. # 2197 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93976. extern const IID IID_IDispatch;
  93977. # 2243 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  93978.     typedef struct IDispatchVtbl
  93979.     {
  93980.  
  93981.  
  93982.         HRESULT ( __stdcall *QueryInterface )(
  93983.                       IDispatch * This,
  93984.                                  const IID * riid,
  93985.  
  93986.                           void **ppvObject);
  93987.  
  93988.         ULONG ( __stdcall *AddRef )(
  93989.                       IDispatch * This);
  93990.  
  93991.         ULONG ( __stdcall *Release )(
  93992.                       IDispatch * This);
  93993.  
  93994.         HRESULT ( __stdcall *GetTypeInfoCount )(
  93995.                       IDispatch * This,
  93996.                                    UINT *pctinfo);
  93997.  
  93998.         HRESULT ( __stdcall *GetTypeInfo )(
  93999.                       IDispatch * This,
  94000.                        UINT iTInfo,
  94001.                        LCID lcid,
  94002.                                              ITypeInfo **ppTInfo);
  94003.  
  94004.         HRESULT ( __stdcall *GetIDsOfNames )(
  94005.                       IDispatch * This,
  94006.                                  const IID * riid,
  94007.                                                               LPOLESTR *rgszNames,
  94008.                                                        UINT cNames,
  94009.                        LCID lcid,
  94010.                                                                 DISPID *rgDispId);
  94011.  
  94012.                       HRESULT ( __stdcall *Invoke )(
  94013.             IDispatch * This,
  94014.  
  94015.                   DISPID dispIdMember,
  94016.  
  94017.                   const IID * riid,
  94018.  
  94019.                   LCID lcid,
  94020.  
  94021.                   WORD wFlags,
  94022.  
  94023.                   DISPPARAMS *pDispParams,
  94024.  
  94025.                        VARIANT *pVarResult,
  94026.  
  94027.                        EXCEPINFO *pExcepInfo,
  94028.  
  94029.                        UINT *puArgErr);
  94030.  
  94031.  
  94032.     } IDispatchVtbl;
  94033.  
  94034.     struct IDispatch
  94035.     {
  94036.                    struct IDispatchVtbl *lpVtbl;
  94037.     };
  94038. # 2338 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94039.                 HRESULT __stdcall IDispatch_RemoteInvoke_Proxy(
  94040.               IDispatch * This,
  94041.                DISPID dispIdMember,
  94042.                          const IID * riid,
  94043.                LCID lcid,
  94044.                DWORD dwFlags,
  94045.                          DISPPARAMS *pDispParams,
  94046.                            VARIANT *pVarResult,
  94047.                            EXCEPINFO *pExcepInfo,
  94048.                            UINT *pArgErr,
  94049.                UINT cVarRef,
  94050.                                                        UINT *rgVarRefIdx,
  94051.                                                                VARIANTARG *rgVarRef);
  94052.  
  94053.  
  94054. void __stdcall IDispatch_RemoteInvoke_Stub(
  94055.     IRpcStubBuffer *This,
  94056.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94057.     PRPC_MESSAGE _pRpcMessage,
  94058.     DWORD *_pdwStubPhase);
  94059. # 2370 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94060. typedef IEnumVARIANT *LPENUMVARIANT;
  94061.  
  94062.  
  94063. extern const IID IID_IEnumVARIANT;
  94064. # 2399 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94065.     typedef struct IEnumVARIANTVtbl
  94066.     {
  94067.  
  94068.  
  94069.         HRESULT ( __stdcall *QueryInterface )(
  94070.                       IEnumVARIANT * This,
  94071.                                  const IID * riid,
  94072.  
  94073.                           void **ppvObject);
  94074.  
  94075.         ULONG ( __stdcall *AddRef )(
  94076.                       IEnumVARIANT * This);
  94077.  
  94078.         ULONG ( __stdcall *Release )(
  94079.                       IEnumVARIANT * This);
  94080.  
  94081.                       HRESULT ( __stdcall *Next )(
  94082.             IEnumVARIANT * This,
  94083.                        ULONG celt,
  94084.                                             VARIANT *rgVar,
  94085.                         ULONG *pCeltFetched);
  94086.  
  94087.         HRESULT ( __stdcall *Skip )(
  94088.                       IEnumVARIANT * This,
  94089.                        ULONG celt);
  94090.  
  94091.         HRESULT ( __stdcall *Reset )(
  94092.                       IEnumVARIANT * This);
  94093.  
  94094.         HRESULT ( __stdcall *Clone )(
  94095.                       IEnumVARIANT * This,
  94096.                                              IEnumVARIANT **ppEnum);
  94097.  
  94098.  
  94099.     } IEnumVARIANTVtbl;
  94100.  
  94101.     struct IEnumVARIANT
  94102.     {
  94103.                    struct IEnumVARIANTVtbl *lpVtbl;
  94104.     };
  94105. # 2474 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94106.                 HRESULT __stdcall IEnumVARIANT_RemoteNext_Proxy(
  94107.               IEnumVARIANT * This,
  94108.                ULONG celt,
  94109.                                                                                 VARIANT *rgVar,
  94110.                            ULONG *pCeltFetched);
  94111.  
  94112.  
  94113. void __stdcall IEnumVARIANT_RemoteNext_Stub(
  94114.     IRpcStubBuffer *This,
  94115.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94116.     PRPC_MESSAGE _pRpcMessage,
  94117.     DWORD *_pdwStubPhase);
  94118. # 2498 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94119. typedef ITypeComp *LPTYPECOMP;
  94120.  
  94121. typedef
  94122. enum tagDESCKIND
  94123.     {
  94124.         DESCKIND_NONE = 0,
  94125.         DESCKIND_FUNCDESC = ( DESCKIND_NONE + 1 ) ,
  94126.         DESCKIND_VARDESC = ( DESCKIND_FUNCDESC + 1 ) ,
  94127.         DESCKIND_TYPECOMP = ( DESCKIND_VARDESC + 1 ) ,
  94128.         DESCKIND_IMPLICITAPPOBJ = ( DESCKIND_TYPECOMP + 1 ) ,
  94129.         DESCKIND_MAX = ( DESCKIND_IMPLICITAPPOBJ + 1 )
  94130.     } DESCKIND;
  94131.  
  94132. typedef union tagBINDPTR
  94133.     {
  94134.     FUNCDESC *lpfuncdesc;
  94135.     VARDESC *lpvardesc;
  94136.     ITypeComp *lptcomp;
  94137.     } BINDPTR;
  94138.  
  94139. typedef union tagBINDPTR *LPBINDPTR;
  94140.  
  94141.  
  94142. extern const IID IID_ITypeComp;
  94143. # 2550 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94144.     typedef struct ITypeCompVtbl
  94145.     {
  94146.  
  94147.  
  94148.         HRESULT ( __stdcall *QueryInterface )(
  94149.                       ITypeComp * This,
  94150.                                  const IID * riid,
  94151.  
  94152.                           void **ppvObject);
  94153.  
  94154.         ULONG ( __stdcall *AddRef )(
  94155.                       ITypeComp * This);
  94156.  
  94157.         ULONG ( __stdcall *Release )(
  94158.                       ITypeComp * This);
  94159.  
  94160.                       HRESULT ( __stdcall *Bind )(
  94161.             ITypeComp * This,
  94162.  
  94163.                        LPOLESTR szName,
  94164.                        ULONG lHashVal,
  94165.                        WORD wFlags,
  94166.                         ITypeInfo **ppTInfo,
  94167.                         DESCKIND *pDescKind,
  94168.                         BINDPTR *pBindPtr);
  94169.  
  94170.                       HRESULT ( __stdcall *BindType )(
  94171.             ITypeComp * This,
  94172.  
  94173.                        LPOLESTR szName,
  94174.                        ULONG lHashVal,
  94175.                         ITypeInfo **ppTInfo,
  94176.                         ITypeComp **ppTComp);
  94177.  
  94178.  
  94179.     } ITypeCompVtbl;
  94180.  
  94181.     struct ITypeComp
  94182.     {
  94183.                    struct ITypeCompVtbl *lpVtbl;
  94184.     };
  94185. # 2620 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94186.                 HRESULT __stdcall ITypeComp_RemoteBind_Proxy(
  94187.               ITypeComp * This,
  94188.                          LPOLESTR szName,
  94189.                ULONG lHashVal,
  94190.                WORD wFlags,
  94191.                                      ITypeInfo **ppTInfo,
  94192.                            DESCKIND *pDescKind,
  94193.                                      LPFUNCDESC *ppFuncDesc,
  94194.                                      LPVARDESC *ppVarDesc,
  94195.                                      ITypeComp **ppTypeComp,
  94196.                            CLEANLOCALSTORAGE *pDummy);
  94197.  
  94198.  
  94199. void __stdcall ITypeComp_RemoteBind_Stub(
  94200.     IRpcStubBuffer *This,
  94201.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94202.     PRPC_MESSAGE _pRpcMessage,
  94203.     DWORD *_pdwStubPhase);
  94204.  
  94205.  
  94206.                 HRESULT __stdcall ITypeComp_RemoteBindType_Proxy(
  94207.               ITypeComp * This,
  94208.                          LPOLESTR szName,
  94209.                ULONG lHashVal,
  94210.                                      ITypeInfo **ppTInfo);
  94211.  
  94212.  
  94213. void __stdcall ITypeComp_RemoteBindType_Stub(
  94214.     IRpcStubBuffer *This,
  94215.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94216.     PRPC_MESSAGE _pRpcMessage,
  94217.     DWORD *_pdwStubPhase);
  94218. # 2662 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94219. #pragma endregion
  94220. #pragma region Desktop Family or OneCore Family
  94221.  
  94222.  
  94223.  
  94224. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0008_v0_0_c_ifspec;
  94225. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0008_v0_0_s_ifspec;
  94226.  
  94227.  
  94228.  
  94229.  
  94230.  
  94231.  
  94232.  
  94233. typedef ITypeInfo *LPTYPEINFO;
  94234.  
  94235.  
  94236. extern const IID IID_ITypeInfo;
  94237. # 2787 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94238.     typedef struct ITypeInfoVtbl
  94239.     {
  94240.  
  94241.  
  94242.         HRESULT ( __stdcall *QueryInterface )(
  94243.                       ITypeInfo * This,
  94244.                                  const IID * riid,
  94245.  
  94246.                           void **ppvObject);
  94247.  
  94248.         ULONG ( __stdcall *AddRef )(
  94249.                       ITypeInfo * This);
  94250.  
  94251.         ULONG ( __stdcall *Release )(
  94252.                       ITypeInfo * This);
  94253.  
  94254.                       HRESULT ( __stdcall *GetTypeAttr )(
  94255.             ITypeInfo * This,
  94256.                         TYPEATTR **ppTypeAttr);
  94257.  
  94258.         HRESULT ( __stdcall *GetTypeComp )(
  94259.                       ITypeInfo * This,
  94260.                                              ITypeComp **ppTComp);
  94261.  
  94262.                       HRESULT ( __stdcall *GetFuncDesc )(
  94263.             ITypeInfo * This,
  94264.                        UINT index,
  94265.                         FUNCDESC **ppFuncDesc);
  94266.  
  94267.                       HRESULT ( __stdcall *GetVarDesc )(
  94268.             ITypeInfo * This,
  94269.                        UINT index,
  94270.                         VARDESC **ppVarDesc);
  94271.  
  94272.                       HRESULT ( __stdcall *GetNames )(
  94273.             ITypeInfo * This,
  94274.                        MEMBERID memid,
  94275.  
  94276.                                                          BSTR *rgBstrNames,
  94277.                        UINT cMaxNames,
  94278.  
  94279.                         UINT *pcNames);
  94280.  
  94281.         HRESULT ( __stdcall *GetRefTypeOfImplType )(
  94282.                       ITypeInfo * This,
  94283.                        UINT index,
  94284.                                    HREFTYPE *pRefType);
  94285.  
  94286.         HRESULT ( __stdcall *GetImplTypeFlags )(
  94287.                       ITypeInfo * This,
  94288.                        UINT index,
  94289.                                    INT *pImplTypeFlags);
  94290.  
  94291.                       HRESULT ( __stdcall *GetIDsOfNames )(
  94292.             ITypeInfo * This,
  94293.  
  94294.                                       LPOLESTR *rgszNames,
  94295.                        UINT cNames,
  94296.                                  MEMBERID *pMemId);
  94297.  
  94298.                       HRESULT ( __stdcall *Invoke )(
  94299.             ITypeInfo * This,
  94300.                        PVOID pvInstance,
  94301.                        MEMBERID memid,
  94302.                        WORD wFlags,
  94303.                             DISPPARAMS *pDispParams,
  94304.                         VARIANT *pVarResult,
  94305.                         EXCEPINFO *pExcepInfo,
  94306.                         UINT *puArgErr);
  94307.  
  94308.                       HRESULT ( __stdcall *GetDocumentation )(
  94309.             ITypeInfo * This,
  94310.                        MEMBERID memid,
  94311.  
  94312.                           BSTR *pBstrName,
  94313.  
  94314.                           BSTR *pBstrDocString,
  94315.                         DWORD *pdwHelpContext,
  94316.  
  94317.                           BSTR *pBstrHelpFile);
  94318.  
  94319.                       HRESULT ( __stdcall *GetDllEntry )(
  94320.             ITypeInfo * This,
  94321.                        MEMBERID memid,
  94322.                        INVOKEKIND invKind,
  94323.  
  94324.                           BSTR *pBstrDllName,
  94325.  
  94326.                           BSTR *pBstrName,
  94327.                         WORD *pwOrdinal);
  94328.  
  94329.         HRESULT ( __stdcall *GetRefTypeInfo )(
  94330.                       ITypeInfo * This,
  94331.                        HREFTYPE hRefType,
  94332.                                              ITypeInfo **ppTInfo);
  94333.  
  94334.                       HRESULT ( __stdcall *AddressOfMember )(
  94335.             ITypeInfo * This,
  94336.                        MEMBERID memid,
  94337.                        INVOKEKIND invKind,
  94338.                         PVOID *ppv);
  94339.  
  94340.                       HRESULT ( __stdcall *CreateInstance )(
  94341.             ITypeInfo * This,
  94342.                        IUnknown *pUnkOuter,
  94343.                        const IID * riid,
  94344.                                 PVOID *ppvObj);
  94345.  
  94346.         HRESULT ( __stdcall *GetMops )(
  94347.                       ITypeInfo * This,
  94348.                        MEMBERID memid,
  94349.                                              BSTR *pBstrMops);
  94350.  
  94351.                       HRESULT ( __stdcall *GetContainingTypeLib )(
  94352.             ITypeInfo * This,
  94353.                         ITypeLib **ppTLib,
  94354.                         UINT *pIndex);
  94355.  
  94356.                       void ( __stdcall *ReleaseTypeAttr )(
  94357.             ITypeInfo * This,
  94358.                        TYPEATTR *pTypeAttr);
  94359.  
  94360.                       void ( __stdcall *ReleaseFuncDesc )(
  94361.             ITypeInfo * This,
  94362.                        FUNCDESC *pFuncDesc);
  94363.  
  94364.                       void ( __stdcall *ReleaseVarDesc )(
  94365.             ITypeInfo * This,
  94366.                        VARDESC *pVarDesc);
  94367.  
  94368.  
  94369.     } ITypeInfoVtbl;
  94370.  
  94371.     struct ITypeInfo
  94372.     {
  94373.                    struct ITypeInfoVtbl *lpVtbl;
  94374.     };
  94375. # 3004 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94376.                 HRESULT __stdcall ITypeInfo_RemoteGetTypeAttr_Proxy(
  94377.               ITypeInfo * This,
  94378.                                      LPTYPEATTR *ppTypeAttr,
  94379.                            CLEANLOCALSTORAGE *pDummy);
  94380.  
  94381.  
  94382. void __stdcall ITypeInfo_RemoteGetTypeAttr_Stub(
  94383.     IRpcStubBuffer *This,
  94384.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94385.     PRPC_MESSAGE _pRpcMessage,
  94386.     DWORD *_pdwStubPhase);
  94387.  
  94388.  
  94389.                 HRESULT __stdcall ITypeInfo_RemoteGetFuncDesc_Proxy(
  94390.               ITypeInfo * This,
  94391.                UINT index,
  94392.                                      LPFUNCDESC *ppFuncDesc,
  94393.                            CLEANLOCALSTORAGE *pDummy);
  94394.  
  94395.  
  94396. void __stdcall ITypeInfo_RemoteGetFuncDesc_Stub(
  94397.     IRpcStubBuffer *This,
  94398.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94399.     PRPC_MESSAGE _pRpcMessage,
  94400.     DWORD *_pdwStubPhase);
  94401.  
  94402.  
  94403.                 HRESULT __stdcall ITypeInfo_RemoteGetVarDesc_Proxy(
  94404.               ITypeInfo * This,
  94405.                UINT index,
  94406.                                      LPVARDESC *ppVarDesc,
  94407.                            CLEANLOCALSTORAGE *pDummy);
  94408.  
  94409.  
  94410. void __stdcall ITypeInfo_RemoteGetVarDesc_Stub(
  94411.     IRpcStubBuffer *This,
  94412.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94413.     PRPC_MESSAGE _pRpcMessage,
  94414.     DWORD *_pdwStubPhase);
  94415.  
  94416.  
  94417.                 HRESULT __stdcall ITypeInfo_RemoteGetNames_Proxy(
  94418.               ITypeInfo * This,
  94419.                MEMBERID memid,
  94420.                                                                                 BSTR *rgBstrNames,
  94421.                UINT cMaxNames,
  94422.                            UINT *pcNames);
  94423.  
  94424.  
  94425. void __stdcall ITypeInfo_RemoteGetNames_Stub(
  94426.     IRpcStubBuffer *This,
  94427.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94428.     PRPC_MESSAGE _pRpcMessage,
  94429.     DWORD *_pdwStubPhase);
  94430.  
  94431.  
  94432.                         HRESULT __stdcall ITypeInfo_LocalGetIDsOfNames_Proxy(
  94433.               ITypeInfo * This);
  94434.  
  94435.  
  94436. void __stdcall ITypeInfo_LocalGetIDsOfNames_Stub(
  94437.     IRpcStubBuffer *This,
  94438.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94439.     PRPC_MESSAGE _pRpcMessage,
  94440.     DWORD *_pdwStubPhase);
  94441.  
  94442.  
  94443.                         HRESULT __stdcall ITypeInfo_LocalInvoke_Proxy(
  94444.               ITypeInfo * This);
  94445.  
  94446.  
  94447. void __stdcall ITypeInfo_LocalInvoke_Stub(
  94448.     IRpcStubBuffer *This,
  94449.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94450.     PRPC_MESSAGE _pRpcMessage,
  94451.     DWORD *_pdwStubPhase);
  94452.  
  94453.  
  94454.                 HRESULT __stdcall ITypeInfo_RemoteGetDocumentation_Proxy(
  94455.               ITypeInfo * This,
  94456.                MEMBERID memid,
  94457.                DWORD refPtrFlags,
  94458.                                      BSTR *pBstrName,
  94459.                                      BSTR *pBstrDocString,
  94460.                            DWORD *pdwHelpContext,
  94461.                                      BSTR *pBstrHelpFile);
  94462.  
  94463.  
  94464. void __stdcall ITypeInfo_RemoteGetDocumentation_Stub(
  94465.     IRpcStubBuffer *This,
  94466.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94467.     PRPC_MESSAGE _pRpcMessage,
  94468.     DWORD *_pdwStubPhase);
  94469.  
  94470.  
  94471.                 HRESULT __stdcall ITypeInfo_RemoteGetDllEntry_Proxy(
  94472.               ITypeInfo * This,
  94473.                MEMBERID memid,
  94474.                INVOKEKIND invKind,
  94475.                DWORD refPtrFlags,
  94476.                                      BSTR *pBstrDllName,
  94477.                                      BSTR *pBstrName,
  94478.                            WORD *pwOrdinal);
  94479.  
  94480.  
  94481. void __stdcall ITypeInfo_RemoteGetDllEntry_Stub(
  94482.     IRpcStubBuffer *This,
  94483.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94484.     PRPC_MESSAGE _pRpcMessage,
  94485.     DWORD *_pdwStubPhase);
  94486.  
  94487.  
  94488.                         HRESULT __stdcall ITypeInfo_LocalAddressOfMember_Proxy(
  94489.               ITypeInfo * This);
  94490.  
  94491.  
  94492. void __stdcall ITypeInfo_LocalAddressOfMember_Stub(
  94493.     IRpcStubBuffer *This,
  94494.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94495.     PRPC_MESSAGE _pRpcMessage,
  94496.     DWORD *_pdwStubPhase);
  94497.  
  94498.  
  94499.                 HRESULT __stdcall ITypeInfo_RemoteCreateInstance_Proxy(
  94500.               ITypeInfo * This,
  94501.                          const IID * riid,
  94502.                                              IUnknown **ppvObj);
  94503.  
  94504.  
  94505. void __stdcall ITypeInfo_RemoteCreateInstance_Stub(
  94506.     IRpcStubBuffer *This,
  94507.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94508.     PRPC_MESSAGE _pRpcMessage,
  94509.     DWORD *_pdwStubPhase);
  94510.  
  94511.  
  94512.                 HRESULT __stdcall ITypeInfo_RemoteGetContainingTypeLib_Proxy(
  94513.               ITypeInfo * This,
  94514.                                      ITypeLib **ppTLib,
  94515.                            UINT *pIndex);
  94516.  
  94517.  
  94518. void __stdcall ITypeInfo_RemoteGetContainingTypeLib_Stub(
  94519.     IRpcStubBuffer *This,
  94520.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94521.     PRPC_MESSAGE _pRpcMessage,
  94522.     DWORD *_pdwStubPhase);
  94523.  
  94524.  
  94525.                         HRESULT __stdcall ITypeInfo_LocalReleaseTypeAttr_Proxy(
  94526.               ITypeInfo * This);
  94527.  
  94528.  
  94529. void __stdcall ITypeInfo_LocalReleaseTypeAttr_Stub(
  94530.     IRpcStubBuffer *This,
  94531.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94532.     PRPC_MESSAGE _pRpcMessage,
  94533.     DWORD *_pdwStubPhase);
  94534.  
  94535.  
  94536.                         HRESULT __stdcall ITypeInfo_LocalReleaseFuncDesc_Proxy(
  94537.               ITypeInfo * This);
  94538.  
  94539.  
  94540. void __stdcall ITypeInfo_LocalReleaseFuncDesc_Stub(
  94541.     IRpcStubBuffer *This,
  94542.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94543.     PRPC_MESSAGE _pRpcMessage,
  94544.     DWORD *_pdwStubPhase);
  94545.  
  94546.  
  94547.                         HRESULT __stdcall ITypeInfo_LocalReleaseVarDesc_Proxy(
  94548.               ITypeInfo * This);
  94549.  
  94550.  
  94551. void __stdcall ITypeInfo_LocalReleaseVarDesc_Stub(
  94552.     IRpcStubBuffer *This,
  94553.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94554.     PRPC_MESSAGE _pRpcMessage,
  94555.     DWORD *_pdwStubPhase);
  94556. # 3196 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94557. typedef ITypeInfo2 *LPTYPEINFO2;
  94558.  
  94559.  
  94560. extern const IID IID_ITypeInfo2;
  94561. # 3281 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94562.     typedef struct ITypeInfo2Vtbl
  94563.     {
  94564.  
  94565.  
  94566.         HRESULT ( __stdcall *QueryInterface )(
  94567.                       ITypeInfo2 * This,
  94568.                                  const IID * riid,
  94569.  
  94570.                           void **ppvObject);
  94571.  
  94572.         ULONG ( __stdcall *AddRef )(
  94573.                       ITypeInfo2 * This);
  94574.  
  94575.         ULONG ( __stdcall *Release )(
  94576.                       ITypeInfo2 * This);
  94577.  
  94578.                       HRESULT ( __stdcall *GetTypeAttr )(
  94579.             ITypeInfo2 * This,
  94580.                         TYPEATTR **ppTypeAttr);
  94581.  
  94582.         HRESULT ( __stdcall *GetTypeComp )(
  94583.                       ITypeInfo2 * This,
  94584.                                              ITypeComp **ppTComp);
  94585.  
  94586.                       HRESULT ( __stdcall *GetFuncDesc )(
  94587.             ITypeInfo2 * This,
  94588.                        UINT index,
  94589.                         FUNCDESC **ppFuncDesc);
  94590.  
  94591.                       HRESULT ( __stdcall *GetVarDesc )(
  94592.             ITypeInfo2 * This,
  94593.                        UINT index,
  94594.                         VARDESC **ppVarDesc);
  94595.  
  94596.                       HRESULT ( __stdcall *GetNames )(
  94597.             ITypeInfo2 * This,
  94598.                        MEMBERID memid,
  94599.  
  94600.                                                          BSTR *rgBstrNames,
  94601.                        UINT cMaxNames,
  94602.  
  94603.                         UINT *pcNames);
  94604.  
  94605.         HRESULT ( __stdcall *GetRefTypeOfImplType )(
  94606.                       ITypeInfo2 * This,
  94607.                        UINT index,
  94608.                                    HREFTYPE *pRefType);
  94609.  
  94610.         HRESULT ( __stdcall *GetImplTypeFlags )(
  94611.                       ITypeInfo2 * This,
  94612.                        UINT index,
  94613.                                    INT *pImplTypeFlags);
  94614.  
  94615.                       HRESULT ( __stdcall *GetIDsOfNames )(
  94616.             ITypeInfo2 * This,
  94617.  
  94618.                                       LPOLESTR *rgszNames,
  94619.                        UINT cNames,
  94620.                                  MEMBERID *pMemId);
  94621.  
  94622.                       HRESULT ( __stdcall *Invoke )(
  94623.             ITypeInfo2 * This,
  94624.                        PVOID pvInstance,
  94625.                        MEMBERID memid,
  94626.                        WORD wFlags,
  94627.                             DISPPARAMS *pDispParams,
  94628.                         VARIANT *pVarResult,
  94629.                         EXCEPINFO *pExcepInfo,
  94630.                         UINT *puArgErr);
  94631.  
  94632.                       HRESULT ( __stdcall *GetDocumentation )(
  94633.             ITypeInfo2 * This,
  94634.                        MEMBERID memid,
  94635.  
  94636.                           BSTR *pBstrName,
  94637.  
  94638.                           BSTR *pBstrDocString,
  94639.                         DWORD *pdwHelpContext,
  94640.  
  94641.                           BSTR *pBstrHelpFile);
  94642.  
  94643.                       HRESULT ( __stdcall *GetDllEntry )(
  94644.             ITypeInfo2 * This,
  94645.                        MEMBERID memid,
  94646.                        INVOKEKIND invKind,
  94647.  
  94648.                           BSTR *pBstrDllName,
  94649.  
  94650.                           BSTR *pBstrName,
  94651.                         WORD *pwOrdinal);
  94652.  
  94653.         HRESULT ( __stdcall *GetRefTypeInfo )(
  94654.                       ITypeInfo2 * This,
  94655.                        HREFTYPE hRefType,
  94656.                                              ITypeInfo **ppTInfo);
  94657.  
  94658.                       HRESULT ( __stdcall *AddressOfMember )(
  94659.             ITypeInfo2 * This,
  94660.                        MEMBERID memid,
  94661.                        INVOKEKIND invKind,
  94662.                         PVOID *ppv);
  94663.  
  94664.                       HRESULT ( __stdcall *CreateInstance )(
  94665.             ITypeInfo2 * This,
  94666.                        IUnknown *pUnkOuter,
  94667.                        const IID * riid,
  94668.                                 PVOID *ppvObj);
  94669.  
  94670.         HRESULT ( __stdcall *GetMops )(
  94671.                       ITypeInfo2 * This,
  94672.                        MEMBERID memid,
  94673.                                              BSTR *pBstrMops);
  94674.  
  94675.                       HRESULT ( __stdcall *GetContainingTypeLib )(
  94676.             ITypeInfo2 * This,
  94677.                         ITypeLib **ppTLib,
  94678.                         UINT *pIndex);
  94679.  
  94680.                       void ( __stdcall *ReleaseTypeAttr )(
  94681.             ITypeInfo2 * This,
  94682.                        TYPEATTR *pTypeAttr);
  94683.  
  94684.                       void ( __stdcall *ReleaseFuncDesc )(
  94685.             ITypeInfo2 * This,
  94686.                        FUNCDESC *pFuncDesc);
  94687.  
  94688.                       void ( __stdcall *ReleaseVarDesc )(
  94689.             ITypeInfo2 * This,
  94690.                        VARDESC *pVarDesc);
  94691.  
  94692.         HRESULT ( __stdcall *GetTypeKind )(
  94693.                       ITypeInfo2 * This,
  94694.                                    TYPEKIND *pTypeKind);
  94695.  
  94696.         HRESULT ( __stdcall *GetTypeFlags )(
  94697.                       ITypeInfo2 * This,
  94698.                                    ULONG *pTypeFlags);
  94699.  
  94700.         HRESULT ( __stdcall *GetFuncIndexOfMemId )(
  94701.                       ITypeInfo2 * This,
  94702.                        MEMBERID memid,
  94703.                        INVOKEKIND invKind,
  94704.                                    UINT *pFuncIndex);
  94705.  
  94706.         HRESULT ( __stdcall *GetVarIndexOfMemId )(
  94707.                       ITypeInfo2 * This,
  94708.                        MEMBERID memid,
  94709.                                    UINT *pVarIndex);
  94710.  
  94711.         HRESULT ( __stdcall *GetCustData )(
  94712.                       ITypeInfo2 * This,
  94713.                                  const GUID * guid,
  94714.                                    VARIANT *pVarVal);
  94715.  
  94716.         HRESULT ( __stdcall *GetFuncCustData )(
  94717.                       ITypeInfo2 * This,
  94718.                        UINT index,
  94719.                                  const GUID * guid,
  94720.                                    VARIANT *pVarVal);
  94721.  
  94722.         HRESULT ( __stdcall *GetParamCustData )(
  94723.                       ITypeInfo2 * This,
  94724.                        UINT indexFunc,
  94725.                        UINT indexParam,
  94726.                                  const GUID * guid,
  94727.                                    VARIANT *pVarVal);
  94728.  
  94729.         HRESULT ( __stdcall *GetVarCustData )(
  94730.                       ITypeInfo2 * This,
  94731.                        UINT index,
  94732.                                  const GUID * guid,
  94733.                                    VARIANT *pVarVal);
  94734.  
  94735.         HRESULT ( __stdcall *GetImplTypeCustData )(
  94736.                       ITypeInfo2 * This,
  94737.                        UINT index,
  94738.                                  const GUID * guid,
  94739.                                    VARIANT *pVarVal);
  94740.  
  94741.                       HRESULT ( __stdcall *GetDocumentation2 )(
  94742.             ITypeInfo2 * This,
  94743.                        MEMBERID memid,
  94744.                        LCID lcid,
  94745.  
  94746.                           BSTR *pbstrHelpString,
  94747.                         DWORD *pdwHelpStringContext,
  94748.  
  94749.                           BSTR *pbstrHelpStringDll);
  94750.  
  94751.         HRESULT ( __stdcall *GetAllCustData )(
  94752.                       ITypeInfo2 * This,
  94753.                                    CUSTDATA *pCustData);
  94754.  
  94755.         HRESULT ( __stdcall *GetAllFuncCustData )(
  94756.                       ITypeInfo2 * This,
  94757.                        UINT index,
  94758.                                    CUSTDATA *pCustData);
  94759.  
  94760.         HRESULT ( __stdcall *GetAllParamCustData )(
  94761.                       ITypeInfo2 * This,
  94762.                        UINT indexFunc,
  94763.                        UINT indexParam,
  94764.                                    CUSTDATA *pCustData);
  94765.  
  94766.         HRESULT ( __stdcall *GetAllVarCustData )(
  94767.                       ITypeInfo2 * This,
  94768.                        UINT index,
  94769.                                    CUSTDATA *pCustData);
  94770.  
  94771.         HRESULT ( __stdcall *GetAllImplTypeCustData )(
  94772.                       ITypeInfo2 * This,
  94773.                        UINT index,
  94774.                                    CUSTDATA *pCustData);
  94775.  
  94776.  
  94777.     } ITypeInfo2Vtbl;
  94778.  
  94779.     struct ITypeInfo2
  94780.     {
  94781.                    struct ITypeInfo2Vtbl *lpVtbl;
  94782.     };
  94783. # 3628 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94784.                 HRESULT __stdcall ITypeInfo2_RemoteGetDocumentation2_Proxy(
  94785.               ITypeInfo2 * This,
  94786.                MEMBERID memid,
  94787.                LCID lcid,
  94788.                DWORD refPtrFlags,
  94789.                                      BSTR *pbstrHelpString,
  94790.                            DWORD *pdwHelpStringContext,
  94791.                                      BSTR *pbstrHelpStringDll);
  94792.  
  94793.  
  94794. void __stdcall ITypeInfo2_RemoteGetDocumentation2_Stub(
  94795.     IRpcStubBuffer *This,
  94796.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94797.     PRPC_MESSAGE _pRpcMessage,
  94798.     DWORD *_pdwStubPhase);
  94799. # 3653 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94800. #pragma endregion
  94801. #pragma region Application Family or OneCore Family
  94802.  
  94803.  
  94804.  
  94805. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0010_v0_0_c_ifspec;
  94806. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0010_v0_0_s_ifspec;
  94807.  
  94808.  
  94809.  
  94810.  
  94811.  
  94812.  
  94813.  
  94814. typedef
  94815. enum tagSYSKIND
  94816.     {
  94817.         SYS_WIN16 = 0,
  94818.         SYS_WIN32 = ( SYS_WIN16 + 1 ) ,
  94819.         SYS_MAC = ( SYS_WIN32 + 1 ) ,
  94820.         SYS_WIN64 = ( SYS_MAC + 1 )
  94821.     } SYSKIND;
  94822.  
  94823. typedef
  94824. enum tagLIBFLAGS
  94825.     {
  94826.         LIBFLAG_FRESTRICTED = 0x1,
  94827.         LIBFLAG_FCONTROL = 0x2,
  94828.         LIBFLAG_FHIDDEN = 0x4,
  94829.         LIBFLAG_FHASDISKIMAGE = 0x8
  94830.     } LIBFLAGS;
  94831.  
  94832. typedef ITypeLib *LPTYPELIB;
  94833.  
  94834. typedef struct tagTLIBATTR
  94835.     {
  94836.     GUID guid;
  94837.     LCID lcid;
  94838.     SYSKIND syskind;
  94839.     WORD wMajorVerNum;
  94840.     WORD wMinorVerNum;
  94841.     WORD wLibFlags;
  94842.     } TLIBATTR;
  94843.  
  94844. typedef struct tagTLIBATTR *LPTLIBATTR;
  94845.  
  94846.  
  94847. extern const IID IID_ITypeLib;
  94848. # 3760 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94849.     typedef struct ITypeLibVtbl
  94850.     {
  94851.  
  94852.  
  94853.         HRESULT ( __stdcall *QueryInterface )(
  94854.                       ITypeLib * This,
  94855.                                  const IID * riid,
  94856.  
  94857.                           void **ppvObject);
  94858.  
  94859.         ULONG ( __stdcall *AddRef )(
  94860.                       ITypeLib * This);
  94861.  
  94862.         ULONG ( __stdcall *Release )(
  94863.                       ITypeLib * This);
  94864.  
  94865.                       UINT ( __stdcall *GetTypeInfoCount )(
  94866.             ITypeLib * This);
  94867.  
  94868.         HRESULT ( __stdcall *GetTypeInfo )(
  94869.                       ITypeLib * This,
  94870.                        UINT index,
  94871.                                              ITypeInfo **ppTInfo);
  94872.  
  94873.         HRESULT ( __stdcall *GetTypeInfoType )(
  94874.                       ITypeLib * This,
  94875.                        UINT index,
  94876.                                    TYPEKIND *pTKind);
  94877.  
  94878.         HRESULT ( __stdcall *GetTypeInfoOfGuid )(
  94879.                       ITypeLib * This,
  94880.                                  const GUID * guid,
  94881.                                              ITypeInfo **ppTinfo);
  94882.  
  94883.                       HRESULT ( __stdcall *GetLibAttr )(
  94884.             ITypeLib * This,
  94885.                         TLIBATTR **ppTLibAttr);
  94886.  
  94887.         HRESULT ( __stdcall *GetTypeComp )(
  94888.                       ITypeLib * This,
  94889.                                              ITypeComp **ppTComp);
  94890.  
  94891.                       HRESULT ( __stdcall *GetDocumentation )(
  94892.             ITypeLib * This,
  94893.                        INT index,
  94894.  
  94895.                           BSTR *pBstrName,
  94896.  
  94897.                           BSTR *pBstrDocString,
  94898.                         DWORD *pdwHelpContext,
  94899.  
  94900.                           BSTR *pBstrHelpFile);
  94901.  
  94902.                       HRESULT ( __stdcall *IsName )(
  94903.             ITypeLib * This,
  94904.  
  94905.                           LPOLESTR szNameBuf,
  94906.                        ULONG lHashVal,
  94907.                         BOOL *pfName);
  94908.  
  94909.                       HRESULT ( __stdcall *FindName )(
  94910.             ITypeLib * This,
  94911.  
  94912.                           LPOLESTR szNameBuf,
  94913.                        ULONG lHashVal,
  94914.                                             ITypeInfo **ppTInfo,
  94915.                                             MEMBERID *rgMemId,
  94916.                             USHORT *pcFound);
  94917.  
  94918.                       void ( __stdcall *ReleaseTLibAttr )(
  94919.             ITypeLib * This,
  94920.                        TLIBATTR *pTLibAttr);
  94921.  
  94922.  
  94923.     } ITypeLibVtbl;
  94924.  
  94925.     struct ITypeLib
  94926.     {
  94927.                    struct ITypeLibVtbl *lpVtbl;
  94928.     };
  94929. # 3893 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  94930.                 HRESULT __stdcall ITypeLib_RemoteGetTypeInfoCount_Proxy(
  94931.               ITypeLib * This,
  94932.                            UINT *pcTInfo);
  94933.  
  94934.  
  94935. void __stdcall ITypeLib_RemoteGetTypeInfoCount_Stub(
  94936.     IRpcStubBuffer *This,
  94937.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94938.     PRPC_MESSAGE _pRpcMessage,
  94939.     DWORD *_pdwStubPhase);
  94940.  
  94941.  
  94942.                 HRESULT __stdcall ITypeLib_RemoteGetLibAttr_Proxy(
  94943.               ITypeLib * This,
  94944.                                      LPTLIBATTR *ppTLibAttr,
  94945.                            CLEANLOCALSTORAGE *pDummy);
  94946.  
  94947.  
  94948. void __stdcall ITypeLib_RemoteGetLibAttr_Stub(
  94949.     IRpcStubBuffer *This,
  94950.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94951.     PRPC_MESSAGE _pRpcMessage,
  94952.     DWORD *_pdwStubPhase);
  94953.  
  94954.  
  94955.                 HRESULT __stdcall ITypeLib_RemoteGetDocumentation_Proxy(
  94956.               ITypeLib * This,
  94957.                INT index,
  94958.                DWORD refPtrFlags,
  94959.                                      BSTR *pBstrName,
  94960.                                      BSTR *pBstrDocString,
  94961.                            DWORD *pdwHelpContext,
  94962.                                      BSTR *pBstrHelpFile);
  94963.  
  94964.  
  94965. void __stdcall ITypeLib_RemoteGetDocumentation_Stub(
  94966.     IRpcStubBuffer *This,
  94967.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94968.     PRPC_MESSAGE _pRpcMessage,
  94969.     DWORD *_pdwStubPhase);
  94970.  
  94971.  
  94972.                 HRESULT __stdcall ITypeLib_RemoteIsName_Proxy(
  94973.               ITypeLib * This,
  94974.                          LPOLESTR szNameBuf,
  94975.                ULONG lHashVal,
  94976.                            BOOL *pfName,
  94977.                                      BSTR *pBstrLibName);
  94978.  
  94979.  
  94980. void __stdcall ITypeLib_RemoteIsName_Stub(
  94981.     IRpcStubBuffer *This,
  94982.     IRpcChannelBuffer *_pRpcChannelBuffer,
  94983.     PRPC_MESSAGE _pRpcMessage,
  94984.     DWORD *_pdwStubPhase);
  94985.  
  94986.  
  94987.                 HRESULT __stdcall ITypeLib_RemoteFindName_Proxy(
  94988.               ITypeLib * This,
  94989.                          LPOLESTR szNameBuf,
  94990.                ULONG lHashVal,
  94991.                                                                                ITypeInfo **ppTInfo,
  94992.                                                                                MEMBERID *rgMemId,
  94993.                                  USHORT *pcFound,
  94994.                                      BSTR *pBstrLibName);
  94995.  
  94996.  
  94997. void __stdcall ITypeLib_RemoteFindName_Stub(
  94998.     IRpcStubBuffer *This,
  94999.     IRpcChannelBuffer *_pRpcChannelBuffer,
  95000.     PRPC_MESSAGE _pRpcMessage,
  95001.     DWORD *_pdwStubPhase);
  95002.  
  95003.  
  95004.                         HRESULT __stdcall ITypeLib_LocalReleaseTLibAttr_Proxy(
  95005.               ITypeLib * This);
  95006.  
  95007.  
  95008. void __stdcall ITypeLib_LocalReleaseTLibAttr_Stub(
  95009.     IRpcStubBuffer *This,
  95010.     IRpcChannelBuffer *_pRpcChannelBuffer,
  95011.     PRPC_MESSAGE _pRpcMessage,
  95012.     DWORD *_pdwStubPhase);
  95013. # 3986 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95014. #pragma endregion
  95015. #pragma region Desktop Family or OneCore Family or OneCore Family
  95016.  
  95017.  
  95018.  
  95019. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0011_v0_0_c_ifspec;
  95020. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0011_v0_0_s_ifspec;
  95021.  
  95022.  
  95023.  
  95024.  
  95025.  
  95026.  
  95027.  
  95028. typedef ITypeLib2 *LPTYPELIB2;
  95029.  
  95030.  
  95031. extern const IID IID_ITypeLib2;
  95032. # 4036 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95033.     typedef struct ITypeLib2Vtbl
  95034.     {
  95035.  
  95036.  
  95037.         HRESULT ( __stdcall *QueryInterface )(
  95038.                       ITypeLib2 * This,
  95039.                                  const IID * riid,
  95040.  
  95041.                           void **ppvObject);
  95042.  
  95043.         ULONG ( __stdcall *AddRef )(
  95044.                       ITypeLib2 * This);
  95045.  
  95046.         ULONG ( __stdcall *Release )(
  95047.                       ITypeLib2 * This);
  95048.  
  95049.                       UINT ( __stdcall *GetTypeInfoCount )(
  95050.             ITypeLib2 * This);
  95051.  
  95052.         HRESULT ( __stdcall *GetTypeInfo )(
  95053.                       ITypeLib2 * This,
  95054.                        UINT index,
  95055.                                              ITypeInfo **ppTInfo);
  95056.  
  95057.         HRESULT ( __stdcall *GetTypeInfoType )(
  95058.                       ITypeLib2 * This,
  95059.                        UINT index,
  95060.                                    TYPEKIND *pTKind);
  95061.  
  95062.         HRESULT ( __stdcall *GetTypeInfoOfGuid )(
  95063.                       ITypeLib2 * This,
  95064.                                  const GUID * guid,
  95065.                                              ITypeInfo **ppTinfo);
  95066.  
  95067.                       HRESULT ( __stdcall *GetLibAttr )(
  95068.             ITypeLib2 * This,
  95069.                         TLIBATTR **ppTLibAttr);
  95070.  
  95071.         HRESULT ( __stdcall *GetTypeComp )(
  95072.                       ITypeLib2 * This,
  95073.                                              ITypeComp **ppTComp);
  95074.  
  95075.                       HRESULT ( __stdcall *GetDocumentation )(
  95076.             ITypeLib2 * This,
  95077.                        INT index,
  95078.  
  95079.                           BSTR *pBstrName,
  95080.  
  95081.                           BSTR *pBstrDocString,
  95082.                         DWORD *pdwHelpContext,
  95083.  
  95084.                           BSTR *pBstrHelpFile);
  95085.  
  95086.                       HRESULT ( __stdcall *IsName )(
  95087.             ITypeLib2 * This,
  95088.  
  95089.                           LPOLESTR szNameBuf,
  95090.                        ULONG lHashVal,
  95091.                         BOOL *pfName);
  95092.  
  95093.                       HRESULT ( __stdcall *FindName )(
  95094.             ITypeLib2 * This,
  95095.  
  95096.                           LPOLESTR szNameBuf,
  95097.                        ULONG lHashVal,
  95098.                                             ITypeInfo **ppTInfo,
  95099.                                             MEMBERID *rgMemId,
  95100.                             USHORT *pcFound);
  95101.  
  95102.                       void ( __stdcall *ReleaseTLibAttr )(
  95103.             ITypeLib2 * This,
  95104.                        TLIBATTR *pTLibAttr);
  95105.  
  95106.         HRESULT ( __stdcall *GetCustData )(
  95107.                       ITypeLib2 * This,
  95108.                                  const GUID * guid,
  95109.                                    VARIANT *pVarVal);
  95110.  
  95111.                       HRESULT ( __stdcall *GetLibStatistics )(
  95112.             ITypeLib2 * This,
  95113.                         ULONG *pcUniqueNames,
  95114.                         ULONG *pcchUniqueNames);
  95115.  
  95116.                       HRESULT ( __stdcall *GetDocumentation2 )(
  95117.             ITypeLib2 * This,
  95118.                        INT index,
  95119.                        LCID lcid,
  95120.  
  95121.                           BSTR *pbstrHelpString,
  95122.                         DWORD *pdwHelpStringContext,
  95123.  
  95124.                           BSTR *pbstrHelpStringDll);
  95125.  
  95126.         HRESULT ( __stdcall *GetAllCustData )(
  95127.                       ITypeLib2 * This,
  95128.                                    CUSTDATA *pCustData);
  95129.  
  95130.  
  95131.     } ITypeLib2Vtbl;
  95132.  
  95133.     struct ITypeLib2
  95134.     {
  95135.                    struct ITypeLib2Vtbl *lpVtbl;
  95136.     };
  95137. # 4206 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95138.                 HRESULT __stdcall ITypeLib2_RemoteGetLibStatistics_Proxy(
  95139.               ITypeLib2 * This,
  95140.                            ULONG *pcUniqueNames,
  95141.                            ULONG *pcchUniqueNames);
  95142.  
  95143.  
  95144. void __stdcall ITypeLib2_RemoteGetLibStatistics_Stub(
  95145.     IRpcStubBuffer *This,
  95146.     IRpcChannelBuffer *_pRpcChannelBuffer,
  95147.     PRPC_MESSAGE _pRpcMessage,
  95148.     DWORD *_pdwStubPhase);
  95149.  
  95150.  
  95151.                 HRESULT __stdcall ITypeLib2_RemoteGetDocumentation2_Proxy(
  95152.               ITypeLib2 * This,
  95153.                INT index,
  95154.                LCID lcid,
  95155.                DWORD refPtrFlags,
  95156.                                      BSTR *pbstrHelpString,
  95157.                            DWORD *pdwHelpStringContext,
  95158.                                      BSTR *pbstrHelpStringDll);
  95159.  
  95160.  
  95161. void __stdcall ITypeLib2_RemoteGetDocumentation2_Stub(
  95162.     IRpcStubBuffer *This,
  95163.     IRpcChannelBuffer *_pRpcChannelBuffer,
  95164.     PRPC_MESSAGE _pRpcMessage,
  95165.     DWORD *_pdwStubPhase);
  95166. # 4246 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95167. typedef ITypeChangeEvents *LPTYPECHANGEEVENTS;
  95168.  
  95169. typedef
  95170. enum tagCHANGEKIND
  95171.     {
  95172.         CHANGEKIND_ADDMEMBER = 0,
  95173.         CHANGEKIND_DELETEMEMBER = ( CHANGEKIND_ADDMEMBER + 1 ) ,
  95174.         CHANGEKIND_SETNAMES = ( CHANGEKIND_DELETEMEMBER + 1 ) ,
  95175.         CHANGEKIND_SETDOCUMENTATION = ( CHANGEKIND_SETNAMES + 1 ) ,
  95176.         CHANGEKIND_GENERAL = ( CHANGEKIND_SETDOCUMENTATION + 1 ) ,
  95177.         CHANGEKIND_INVALIDATE = ( CHANGEKIND_GENERAL + 1 ) ,
  95178.         CHANGEKIND_CHANGEFAILED = ( CHANGEKIND_INVALIDATE + 1 ) ,
  95179.         CHANGEKIND_MAX = ( CHANGEKIND_CHANGEFAILED + 1 )
  95180.     } CHANGEKIND;
  95181.  
  95182.  
  95183. extern const IID IID_ITypeChangeEvents;
  95184. # 4288 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95185.     typedef struct ITypeChangeEventsVtbl
  95186.     {
  95187.  
  95188.  
  95189.         HRESULT ( __stdcall *QueryInterface )(
  95190.             ITypeChangeEvents * This,
  95191.                        const IID * riid,
  95192.  
  95193.                           void **ppvObject);
  95194.  
  95195.         ULONG ( __stdcall *AddRef )(
  95196.             ITypeChangeEvents * This);
  95197.  
  95198.         ULONG ( __stdcall *Release )(
  95199.             ITypeChangeEvents * This);
  95200.  
  95201.         HRESULT ( __stdcall *RequestTypeChange )(
  95202.             ITypeChangeEvents * This,
  95203.                        CHANGEKIND changeKind,
  95204.                        ITypeInfo *pTInfoBefore,
  95205.  
  95206.                        LPOLESTR pStrName,
  95207.                         INT *pfCancel);
  95208.  
  95209.         HRESULT ( __stdcall *AfterTypeChange )(
  95210.             ITypeChangeEvents * This,
  95211.                        CHANGEKIND changeKind,
  95212.                        ITypeInfo *pTInfoAfter,
  95213.  
  95214.                        LPOLESTR pStrName);
  95215.  
  95216.  
  95217.     } ITypeChangeEventsVtbl;
  95218.  
  95219.     struct ITypeChangeEvents
  95220.     {
  95221.                    struct ITypeChangeEventsVtbl *lpVtbl;
  95222.     };
  95223. # 4365 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95224. typedef IErrorInfo *LPERRORINFO;
  95225.  
  95226.  
  95227. extern const IID IID_IErrorInfo;
  95228. # 4396 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95229.     typedef struct IErrorInfoVtbl
  95230.     {
  95231.  
  95232.  
  95233.         HRESULT ( __stdcall *QueryInterface )(
  95234.                       IErrorInfo * This,
  95235.                                  const IID * riid,
  95236.  
  95237.                           void **ppvObject);
  95238.  
  95239.         ULONG ( __stdcall *AddRef )(
  95240.                       IErrorInfo * This);
  95241.  
  95242.         ULONG ( __stdcall *Release )(
  95243.                       IErrorInfo * This);
  95244.  
  95245.         HRESULT ( __stdcall *GetGUID )(
  95246.                       IErrorInfo * This,
  95247.                                    GUID *pGUID);
  95248.  
  95249.         HRESULT ( __stdcall *GetSource )(
  95250.                       IErrorInfo * This,
  95251.                                              BSTR *pBstrSource);
  95252.  
  95253.         HRESULT ( __stdcall *GetDescription )(
  95254.                       IErrorInfo * This,
  95255.                                              BSTR *pBstrDescription);
  95256.  
  95257.         HRESULT ( __stdcall *GetHelpFile )(
  95258.                       IErrorInfo * This,
  95259.                                              BSTR *pBstrHelpFile);
  95260.  
  95261.         HRESULT ( __stdcall *GetHelpContext )(
  95262.                       IErrorInfo * This,
  95263.                                    DWORD *pdwHelpContext);
  95264.  
  95265.  
  95266.     } IErrorInfoVtbl;
  95267.  
  95268.     struct IErrorInfo
  95269.     {
  95270.                    struct IErrorInfoVtbl *lpVtbl;
  95271.     };
  95272. # 4487 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95273. typedef ICreateErrorInfo *LPCREATEERRORINFO;
  95274.  
  95275.  
  95276. extern const IID IID_ICreateErrorInfo;
  95277. # 4518 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95278.     typedef struct ICreateErrorInfoVtbl
  95279.     {
  95280.  
  95281.  
  95282.         HRESULT ( __stdcall *QueryInterface )(
  95283.                       ICreateErrorInfo * This,
  95284.                                  const IID * riid,
  95285.  
  95286.                           void **ppvObject);
  95287.  
  95288.         ULONG ( __stdcall *AddRef )(
  95289.                       ICreateErrorInfo * This);
  95290.  
  95291.         ULONG ( __stdcall *Release )(
  95292.                       ICreateErrorInfo * This);
  95293.  
  95294.         HRESULT ( __stdcall *SetGUID )(
  95295.                       ICreateErrorInfo * This,
  95296.                                  const GUID * rguid);
  95297.  
  95298.         HRESULT ( __stdcall *SetSource )(
  95299.                       ICreateErrorInfo * This,
  95300.                                  LPOLESTR szSource);
  95301.  
  95302.         HRESULT ( __stdcall *SetDescription )(
  95303.                       ICreateErrorInfo * This,
  95304.                                  LPOLESTR szDescription);
  95305.  
  95306.         HRESULT ( __stdcall *SetHelpFile )(
  95307.                       ICreateErrorInfo * This,
  95308.                                  LPOLESTR szHelpFile);
  95309.  
  95310.         HRESULT ( __stdcall *SetHelpContext )(
  95311.                       ICreateErrorInfo * This,
  95312.                        DWORD dwHelpContext);
  95313.  
  95314.  
  95315.     } ICreateErrorInfoVtbl;
  95316.  
  95317.     struct ICreateErrorInfo
  95318.     {
  95319.                    struct ICreateErrorInfoVtbl *lpVtbl;
  95320.     };
  95321. # 4609 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95322. typedef ISupportErrorInfo *LPSUPPORTERRORINFO;
  95323.  
  95324.  
  95325. extern const IID IID_ISupportErrorInfo;
  95326. # 4628 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95327.     typedef struct ISupportErrorInfoVtbl
  95328.     {
  95329.  
  95330.  
  95331.         HRESULT ( __stdcall *QueryInterface )(
  95332.                       ISupportErrorInfo * This,
  95333.                                  const IID * riid,
  95334.  
  95335.                           void **ppvObject);
  95336.  
  95337.         ULONG ( __stdcall *AddRef )(
  95338.                       ISupportErrorInfo * This);
  95339.  
  95340.         ULONG ( __stdcall *Release )(
  95341.                       ISupportErrorInfo * This);
  95342.  
  95343.         HRESULT ( __stdcall *InterfaceSupportsErrorInfo )(
  95344.                       ISupportErrorInfo * This,
  95345.                                  const IID * riid);
  95346.  
  95347.  
  95348.     } ISupportErrorInfoVtbl;
  95349.  
  95350.     struct ISupportErrorInfo
  95351.     {
  95352.                    struct ISupportErrorInfoVtbl *lpVtbl;
  95353.     };
  95354. # 4692 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95355. extern const IID IID_ITypeFactory;
  95356. # 4710 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95357.     typedef struct ITypeFactoryVtbl
  95358.     {
  95359.  
  95360.  
  95361.         HRESULT ( __stdcall *QueryInterface )(
  95362.                       ITypeFactory * This,
  95363.                                  const IID * riid,
  95364.  
  95365.                           void **ppvObject);
  95366.  
  95367.         ULONG ( __stdcall *AddRef )(
  95368.                       ITypeFactory * This);
  95369.  
  95370.         ULONG ( __stdcall *Release )(
  95371.                       ITypeFactory * This);
  95372.  
  95373.         HRESULT ( __stdcall *CreateFromTypeInfo )(
  95374.                       ITypeFactory * This,
  95375.                                      ITypeInfo *pTypeInfo,
  95376.                                  const IID * riid,
  95377.                                                      IUnknown **ppv);
  95378.  
  95379.  
  95380.     } ITypeFactoryVtbl;
  95381.  
  95382.     struct ITypeFactory
  95383.     {
  95384.                    struct ITypeFactoryVtbl *lpVtbl;
  95385.     };
  95386. # 4776 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95387. extern const IID IID_ITypeMarshal;
  95388. # 4817 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95389.     typedef struct ITypeMarshalVtbl
  95390.     {
  95391.  
  95392.  
  95393.         HRESULT ( __stdcall *QueryInterface )(
  95394.             ITypeMarshal * This,
  95395.                        const IID * riid,
  95396.  
  95397.                           void **ppvObject);
  95398.  
  95399.         ULONG ( __stdcall *AddRef )(
  95400.             ITypeMarshal * This);
  95401.  
  95402.         ULONG ( __stdcall *Release )(
  95403.             ITypeMarshal * This);
  95404.  
  95405.         HRESULT ( __stdcall *Size )(
  95406.             ITypeMarshal * This,
  95407.                        PVOID pvType,
  95408.                        DWORD dwDestContext,
  95409.                        PVOID pvDestContext,
  95410.                         ULONG *pSize);
  95411.  
  95412.         HRESULT ( __stdcall *Marshal )(
  95413.             ITypeMarshal * This,
  95414.                        PVOID pvType,
  95415.                        DWORD dwDestContext,
  95416.                        PVOID pvDestContext,
  95417.                        ULONG cbBufferLength,
  95418.  
  95419.                                                                 BYTE *pBuffer,
  95420.  
  95421.                    ULONG *pcbWritten);
  95422.  
  95423.         HRESULT ( __stdcall *Unmarshal )(
  95424.             ITypeMarshal * This,
  95425.                         PVOID pvType,
  95426.                        DWORD dwFlags,
  95427.                        ULONG cbBufferLength,
  95428.  
  95429.                                         BYTE *pBuffer,
  95430.  
  95431.                    ULONG *pcbRead);
  95432.  
  95433.         HRESULT ( __stdcall *Free )(
  95434.             ITypeMarshal * This,
  95435.                        PVOID pvType);
  95436.  
  95437.  
  95438.     } ITypeMarshalVtbl;
  95439.  
  95440.     struct ITypeMarshal
  95441.     {
  95442.                    struct ITypeMarshalVtbl *lpVtbl;
  95443.     };
  95444. # 4917 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95445. typedef IRecordInfo *LPRECORDINFO;
  95446.  
  95447.  
  95448. extern const IID IID_IRecordInfo;
  95449. # 4996 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95450.     typedef struct IRecordInfoVtbl
  95451.     {
  95452.  
  95453.  
  95454.         HRESULT ( __stdcall *QueryInterface )(
  95455.             IRecordInfo * This,
  95456.                        const IID * riid,
  95457.  
  95458.                           void **ppvObject);
  95459.  
  95460.         ULONG ( __stdcall *AddRef )(
  95461.             IRecordInfo * This);
  95462.  
  95463.         ULONG ( __stdcall *Release )(
  95464.             IRecordInfo * This);
  95465.  
  95466.         HRESULT ( __stdcall *RecordInit )(
  95467.             IRecordInfo * This,
  95468.                         PVOID pvNew);
  95469.  
  95470.         HRESULT ( __stdcall *RecordClear )(
  95471.             IRecordInfo * This,
  95472.                        PVOID pvExisting);
  95473.  
  95474.         HRESULT ( __stdcall *RecordCopy )(
  95475.             IRecordInfo * This,
  95476.                        PVOID pvExisting,
  95477.                         PVOID pvNew);
  95478.  
  95479.         HRESULT ( __stdcall *GetGuid )(
  95480.             IRecordInfo * This,
  95481.                         GUID *pguid);
  95482.  
  95483.         HRESULT ( __stdcall *GetName )(
  95484.             IRecordInfo * This,
  95485.  
  95486.                                   BSTR *pbstrName);
  95487.  
  95488.         HRESULT ( __stdcall *GetSize )(
  95489.             IRecordInfo * This,
  95490.                         ULONG *pcbSize);
  95491.  
  95492.         HRESULT ( __stdcall *GetTypeInfo )(
  95493.             IRecordInfo * This,
  95494.                         ITypeInfo **ppTypeInfo);
  95495.  
  95496.         HRESULT ( __stdcall *GetField )(
  95497.             IRecordInfo * This,
  95498.                        PVOID pvData,
  95499.                        LPCOLESTR szFieldName,
  95500.                         VARIANT *pvarField);
  95501.  
  95502.         HRESULT ( __stdcall *GetFieldNoCopy )(
  95503.             IRecordInfo * This,
  95504.                        PVOID pvData,
  95505.                        LPCOLESTR szFieldName,
  95506.                         VARIANT *pvarField,
  95507.                         PVOID *ppvDataCArray);
  95508.  
  95509.         HRESULT ( __stdcall *PutField )(
  95510.             IRecordInfo * This,
  95511.                        ULONG wFlags,
  95512.                             PVOID pvData,
  95513.                        LPCOLESTR szFieldName,
  95514.                        VARIANT *pvarField);
  95515.  
  95516.         HRESULT ( __stdcall *PutFieldNoCopy )(
  95517.             IRecordInfo * This,
  95518.                        ULONG wFlags,
  95519.                             PVOID pvData,
  95520.                        LPCOLESTR szFieldName,
  95521.                        VARIANT *pvarField);
  95522.  
  95523.         HRESULT ( __stdcall *GetFieldNames )(
  95524.             IRecordInfo * This,
  95525.                             ULONG *pcNames,
  95526.  
  95527.                                                         BSTR *rgBstrNames);
  95528.  
  95529.         BOOL ( __stdcall *IsMatchingType )(
  95530.             IRecordInfo * This,
  95531.                        IRecordInfo *pRecordInfo);
  95532.  
  95533.         PVOID ( __stdcall *RecordCreate )(
  95534.             IRecordInfo * This);
  95535.  
  95536.         HRESULT ( __stdcall *RecordCreateCopy )(
  95537.             IRecordInfo * This,
  95538.                        PVOID pvSource,
  95539.                         PVOID *ppvDest);
  95540.  
  95541.         HRESULT ( __stdcall *RecordDestroy )(
  95542.             IRecordInfo * This,
  95543.                        PVOID pvRecord);
  95544.  
  95545.  
  95546.     } IRecordInfoVtbl;
  95547.  
  95548.     struct IRecordInfo
  95549.     {
  95550.                    struct IRecordInfoVtbl *lpVtbl;
  95551.     };
  95552. # 5179 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95553. typedef IErrorLog *LPERRORLOG;
  95554.  
  95555.  
  95556. extern const IID IID_IErrorLog;
  95557. # 5199 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95558.     typedef struct IErrorLogVtbl
  95559.     {
  95560.  
  95561.  
  95562.         HRESULT ( __stdcall *QueryInterface )(
  95563.                       IErrorLog * This,
  95564.                                  const IID * riid,
  95565.  
  95566.                           void **ppvObject);
  95567.  
  95568.         ULONG ( __stdcall *AddRef )(
  95569.                       IErrorLog * This);
  95570.  
  95571.         ULONG ( __stdcall *Release )(
  95572.                       IErrorLog * This);
  95573.  
  95574.         HRESULT ( __stdcall *AddError )(
  95575.                       IErrorLog * This,
  95576.                                  LPCOLESTR pszPropName,
  95577.                                  EXCEPINFO *pExcepInfo);
  95578.  
  95579.  
  95580.     } IErrorLogVtbl;
  95581.  
  95582.     struct IErrorLog
  95583.     {
  95584.                    struct IErrorLogVtbl *lpVtbl;
  95585.     };
  95586. # 5263 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95587. typedef IPropertyBag *LPPROPERTYBAG;
  95588.  
  95589.  
  95590. extern const IID IID_IPropertyBag;
  95591. # 5288 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95592.     typedef struct IPropertyBagVtbl
  95593.     {
  95594.  
  95595.  
  95596.         HRESULT ( __stdcall *QueryInterface )(
  95597.                       IPropertyBag * This,
  95598.                                  const IID * riid,
  95599.  
  95600.                           void **ppvObject);
  95601.  
  95602.         ULONG ( __stdcall *AddRef )(
  95603.                       IPropertyBag * This);
  95604.  
  95605.         ULONG ( __stdcall *Release )(
  95606.                       IPropertyBag * This);
  95607.  
  95608.                       HRESULT ( __stdcall *Read )(
  95609.             IPropertyBag * This,
  95610.                        LPCOLESTR pszPropName,
  95611.                             VARIANT *pVar,
  95612.                                IErrorLog *pErrorLog);
  95613.  
  95614.         HRESULT ( __stdcall *Write )(
  95615.                       IPropertyBag * This,
  95616.                                  LPCOLESTR pszPropName,
  95617.                                  VARIANT *pVar);
  95618.  
  95619.  
  95620.     } IPropertyBagVtbl;
  95621.  
  95622.     struct IPropertyBag
  95623.     {
  95624.                    struct IPropertyBagVtbl *lpVtbl;
  95625.     };
  95626. # 5351 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95627.                 HRESULT __stdcall IPropertyBag_RemoteRead_Proxy(
  95628.               IPropertyBag * This,
  95629.                          LPCOLESTR pszPropName,
  95630.                            VARIANT *pVar,
  95631.                                      IErrorLog *pErrorLog,
  95632.                DWORD varType,
  95633.                              IUnknown *pUnkObj);
  95634.  
  95635.  
  95636. void __stdcall IPropertyBag_RemoteRead_Stub(
  95637.     IRpcStubBuffer *This,
  95638.     IRpcChannelBuffer *_pRpcChannelBuffer,
  95639.     PRPC_MESSAGE _pRpcMessage,
  95640.     DWORD *_pdwStubPhase);
  95641. # 5378 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95642. extern const IID IID_ITypeLibRegistrationReader;
  95643. # 5394 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95644.     typedef struct ITypeLibRegistrationReaderVtbl
  95645.     {
  95646.  
  95647.  
  95648.         HRESULT ( __stdcall *QueryInterface )(
  95649.             ITypeLibRegistrationReader * This,
  95650.                        const IID * riid,
  95651.  
  95652.                           void **ppvObject);
  95653.  
  95654.         ULONG ( __stdcall *AddRef )(
  95655.             ITypeLibRegistrationReader * This);
  95656.  
  95657.         ULONG ( __stdcall *Release )(
  95658.             ITypeLibRegistrationReader * This);
  95659.  
  95660.         HRESULT ( __stdcall *EnumTypeLibRegistrations )(
  95661.             ITypeLibRegistrationReader * This,
  95662.                         IEnumUnknown **ppEnumUnknown);
  95663.  
  95664.  
  95665.     } ITypeLibRegistrationReaderVtbl;
  95666.  
  95667.     struct ITypeLibRegistrationReader
  95668.     {
  95669.                    struct ITypeLibRegistrationReaderVtbl *lpVtbl;
  95670.     };
  95671. # 5458 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95672. extern const IID IID_ITypeLibRegistration;
  95673. # 5495 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95674.     typedef struct ITypeLibRegistrationVtbl
  95675.     {
  95676.  
  95677.  
  95678.         HRESULT ( __stdcall *QueryInterface )(
  95679.             ITypeLibRegistration * This,
  95680.                        const IID * riid,
  95681.  
  95682.                           void **ppvObject);
  95683.  
  95684.         ULONG ( __stdcall *AddRef )(
  95685.             ITypeLibRegistration * This);
  95686.  
  95687.         ULONG ( __stdcall *Release )(
  95688.             ITypeLibRegistration * This);
  95689.  
  95690.         HRESULT ( __stdcall *GetGuid )(
  95691.             ITypeLibRegistration * This,
  95692.                         GUID *pGuid);
  95693.  
  95694.         HRESULT ( __stdcall *GetVersion )(
  95695.             ITypeLibRegistration * This,
  95696.                         BSTR *pVersion);
  95697.  
  95698.         HRESULT ( __stdcall *GetLcid )(
  95699.             ITypeLibRegistration * This,
  95700.                         LCID *pLcid);
  95701.  
  95702.         HRESULT ( __stdcall *GetWin32Path )(
  95703.             ITypeLibRegistration * This,
  95704.                         BSTR *pWin32Path);
  95705.  
  95706.         HRESULT ( __stdcall *GetWin64Path )(
  95707.             ITypeLibRegistration * This,
  95708.                         BSTR *pWin64Path);
  95709.  
  95710.         HRESULT ( __stdcall *GetDisplayName )(
  95711.             ITypeLibRegistration * This,
  95712.                         BSTR *pDisplayName);
  95713.  
  95714.         HRESULT ( __stdcall *GetFlags )(
  95715.             ITypeLibRegistration * This,
  95716.                         DWORD *pFlags);
  95717.  
  95718.         HRESULT ( __stdcall *GetHelpDir )(
  95719.             ITypeLibRegistration * This,
  95720.                         BSTR *pHelpDir);
  95721.  
  95722.  
  95723.     } ITypeLibRegistrationVtbl;
  95724.  
  95725.     struct ITypeLibRegistration
  95726.     {
  95727.                    struct ITypeLibRegistrationVtbl *lpVtbl;
  95728.     };
  95729. # 5604 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95730. extern const CLSID CLSID_TypeLibRegistrationReader;
  95731.  
  95732. #pragma endregion
  95733. # 5616 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  95734. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0023_v0_0_c_ifspec;
  95735. extern RPC_IF_HANDLE __MIDL_itf_oaidl_0000_0023_v0_0_s_ifspec;
  95736.  
  95737.  
  95738.  
  95739. unsigned long __stdcall BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  95740. unsigned char * __stdcall BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  95741. unsigned char * __stdcall BSTR_UserUnmarshal( unsigned long *, unsigned char *, BSTR * );
  95742. void __stdcall BSTR_UserFree( unsigned long *, BSTR * );
  95743.  
  95744. unsigned long __stdcall CLEANLOCALSTORAGE_UserSize( unsigned long *, unsigned long , CLEANLOCALSTORAGE * );
  95745. unsigned char * __stdcall CLEANLOCALSTORAGE_UserMarshal( unsigned long *, unsigned char *, CLEANLOCALSTORAGE * );
  95746. unsigned char * __stdcall CLEANLOCALSTORAGE_UserUnmarshal( unsigned long *, unsigned char *, CLEANLOCALSTORAGE * );
  95747. void __stdcall CLEANLOCALSTORAGE_UserFree( unsigned long *, CLEANLOCALSTORAGE * );
  95748.  
  95749. unsigned long __stdcall VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
  95750. unsigned char * __stdcall VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
  95751. unsigned char * __stdcall VARIANT_UserUnmarshal( unsigned long *, unsigned char *, VARIANT * );
  95752. void __stdcall VARIANT_UserFree( unsigned long *, VARIANT * );
  95753.  
  95754. unsigned long __stdcall BSTR_UserSize64( unsigned long *, unsigned long , BSTR * );
  95755. unsigned char * __stdcall BSTR_UserMarshal64( unsigned long *, unsigned char *, BSTR * );
  95756. unsigned char * __stdcall BSTR_UserUnmarshal64( unsigned long *, unsigned char *, BSTR * );
  95757. void __stdcall BSTR_UserFree64( unsigned long *, BSTR * );
  95758.  
  95759. unsigned long __stdcall CLEANLOCALSTORAGE_UserSize64( unsigned long *, unsigned long , CLEANLOCALSTORAGE * );
  95760. unsigned char * __stdcall CLEANLOCALSTORAGE_UserMarshal64( unsigned long *, unsigned char *, CLEANLOCALSTORAGE * );
  95761. unsigned char * __stdcall CLEANLOCALSTORAGE_UserUnmarshal64( unsigned long *, unsigned char *, CLEANLOCALSTORAGE * );
  95762. void __stdcall CLEANLOCALSTORAGE_UserFree64( unsigned long *, CLEANLOCALSTORAGE * );
  95763.  
  95764. unsigned long __stdcall VARIANT_UserSize64( unsigned long *, unsigned long , VARIANT * );
  95765. unsigned char * __stdcall VARIANT_UserMarshal64( unsigned long *, unsigned char *, VARIANT * );
  95766. unsigned char * __stdcall VARIANT_UserUnmarshal64( unsigned long *, unsigned char *, VARIANT * );
  95767. void __stdcall VARIANT_UserFree64( unsigned long *, VARIANT * );
  95768.  
  95769.               HRESULT __stdcall IDispatch_Invoke_Proxy(
  95770.     IDispatch * This,
  95771.  
  95772.           DISPID dispIdMember,
  95773.  
  95774.           const IID * riid,
  95775.  
  95776.           LCID lcid,
  95777.  
  95778.           WORD wFlags,
  95779.  
  95780.           DISPPARAMS *pDispParams,
  95781.  
  95782.                VARIANT *pVarResult,
  95783.  
  95784.                EXCEPINFO *pExcepInfo,
  95785.  
  95786.                UINT *puArgErr);
  95787.  
  95788.  
  95789.                 HRESULT __stdcall IDispatch_Invoke_Stub(
  95790.               IDispatch * This,
  95791.                DISPID dispIdMember,
  95792.                          const IID * riid,
  95793.                LCID lcid,
  95794.                DWORD dwFlags,
  95795.                          DISPPARAMS *pDispParams,
  95796.                            VARIANT *pVarResult,
  95797.                            EXCEPINFO *pExcepInfo,
  95798.                            UINT *pArgErr,
  95799.                UINT cVarRef,
  95800.                                                        UINT *rgVarRefIdx,
  95801.                                                                VARIANTARG *rgVarRef);
  95802.  
  95803.               HRESULT __stdcall IEnumVARIANT_Next_Proxy(
  95804.     IEnumVARIANT * This,
  95805.                ULONG celt,
  95806.                                     VARIANT *rgVar,
  95807.                 ULONG *pCeltFetched);
  95808.  
  95809.  
  95810.                 HRESULT __stdcall IEnumVARIANT_Next_Stub(
  95811.               IEnumVARIANT * This,
  95812.                ULONG celt,
  95813.                                                                                 VARIANT *rgVar,
  95814.                            ULONG *pCeltFetched);
  95815.  
  95816.               HRESULT __stdcall ITypeComp_Bind_Proxy(
  95817.     ITypeComp * This,
  95818.  
  95819.                LPOLESTR szName,
  95820.                ULONG lHashVal,
  95821.                WORD wFlags,
  95822.                 ITypeInfo **ppTInfo,
  95823.                 DESCKIND *pDescKind,
  95824.                 BINDPTR *pBindPtr);
  95825.  
  95826.  
  95827.                 HRESULT __stdcall ITypeComp_Bind_Stub(
  95828.               ITypeComp * This,
  95829.                          LPOLESTR szName,
  95830.                ULONG lHashVal,
  95831.                WORD wFlags,
  95832.                                      ITypeInfo **ppTInfo,
  95833.                            DESCKIND *pDescKind,
  95834.                                      LPFUNCDESC *ppFuncDesc,
  95835.                                      LPVARDESC *ppVarDesc,
  95836.                                      ITypeComp **ppTypeComp,
  95837.                            CLEANLOCALSTORAGE *pDummy);
  95838.  
  95839.               HRESULT __stdcall ITypeComp_BindType_Proxy(
  95840.     ITypeComp * This,
  95841.  
  95842.                LPOLESTR szName,
  95843.                ULONG lHashVal,
  95844.                 ITypeInfo **ppTInfo,
  95845.                 ITypeComp **ppTComp);
  95846.  
  95847.  
  95848.                 HRESULT __stdcall ITypeComp_BindType_Stub(
  95849.               ITypeComp * This,
  95850.                          LPOLESTR szName,
  95851.                ULONG lHashVal,
  95852.                                      ITypeInfo **ppTInfo);
  95853.  
  95854.               HRESULT __stdcall ITypeInfo_GetTypeAttr_Proxy(
  95855.     ITypeInfo * This,
  95856.                 TYPEATTR **ppTypeAttr);
  95857.  
  95858.  
  95859.                 HRESULT __stdcall ITypeInfo_GetTypeAttr_Stub(
  95860.               ITypeInfo * This,
  95861.                                      LPTYPEATTR *ppTypeAttr,
  95862.                            CLEANLOCALSTORAGE *pDummy);
  95863.  
  95864.               HRESULT __stdcall ITypeInfo_GetFuncDesc_Proxy(
  95865.     ITypeInfo * This,
  95866.                UINT index,
  95867.                 FUNCDESC **ppFuncDesc);
  95868.  
  95869.  
  95870.                 HRESULT __stdcall ITypeInfo_GetFuncDesc_Stub(
  95871.               ITypeInfo * This,
  95872.                UINT index,
  95873.                                      LPFUNCDESC *ppFuncDesc,
  95874.                            CLEANLOCALSTORAGE *pDummy);
  95875.  
  95876.               HRESULT __stdcall ITypeInfo_GetVarDesc_Proxy(
  95877.     ITypeInfo * This,
  95878.                UINT index,
  95879.                 VARDESC **ppVarDesc);
  95880.  
  95881.  
  95882.                 HRESULT __stdcall ITypeInfo_GetVarDesc_Stub(
  95883.               ITypeInfo * This,
  95884.                UINT index,
  95885.                                      LPVARDESC *ppVarDesc,
  95886.                            CLEANLOCALSTORAGE *pDummy);
  95887.  
  95888.               HRESULT __stdcall ITypeInfo_GetNames_Proxy(
  95889.     ITypeInfo * This,
  95890.                MEMBERID memid,
  95891.  
  95892.                                                  BSTR *rgBstrNames,
  95893.                UINT cMaxNames,
  95894.  
  95895.                 UINT *pcNames);
  95896.  
  95897.  
  95898.                 HRESULT __stdcall ITypeInfo_GetNames_Stub(
  95899.               ITypeInfo * This,
  95900.                MEMBERID memid,
  95901.                                                                                 BSTR *rgBstrNames,
  95902.                UINT cMaxNames,
  95903.                            UINT *pcNames);
  95904.  
  95905.               HRESULT __stdcall ITypeInfo_GetIDsOfNames_Proxy(
  95906.     ITypeInfo * This,
  95907.  
  95908.                               LPOLESTR *rgszNames,
  95909.                UINT cNames,
  95910.                          MEMBERID *pMemId);
  95911.  
  95912.  
  95913.                         HRESULT __stdcall ITypeInfo_GetIDsOfNames_Stub(
  95914.               ITypeInfo * This);
  95915.  
  95916.               HRESULT __stdcall ITypeInfo_Invoke_Proxy(
  95917.     ITypeInfo * This,
  95918.                PVOID pvInstance,
  95919.                MEMBERID memid,
  95920.                WORD wFlags,
  95921.                     DISPPARAMS *pDispParams,
  95922.                 VARIANT *pVarResult,
  95923.                 EXCEPINFO *pExcepInfo,
  95924.                 UINT *puArgErr);
  95925.  
  95926.  
  95927.                         HRESULT __stdcall ITypeInfo_Invoke_Stub(
  95928.               ITypeInfo * This);
  95929.  
  95930.               HRESULT __stdcall ITypeInfo_GetDocumentation_Proxy(
  95931.     ITypeInfo * This,
  95932.                MEMBERID memid,
  95933.  
  95934.                   BSTR *pBstrName,
  95935.  
  95936.                   BSTR *pBstrDocString,
  95937.                 DWORD *pdwHelpContext,
  95938.  
  95939.                   BSTR *pBstrHelpFile);
  95940.  
  95941.  
  95942.                 HRESULT __stdcall ITypeInfo_GetDocumentation_Stub(
  95943.               ITypeInfo * This,
  95944.                MEMBERID memid,
  95945.                DWORD refPtrFlags,
  95946.                                      BSTR *pBstrName,
  95947.                                      BSTR *pBstrDocString,
  95948.                            DWORD *pdwHelpContext,
  95949.                                      BSTR *pBstrHelpFile);
  95950.  
  95951.               HRESULT __stdcall ITypeInfo_GetDllEntry_Proxy(
  95952.     ITypeInfo * This,
  95953.                MEMBERID memid,
  95954.                INVOKEKIND invKind,
  95955.  
  95956.                   BSTR *pBstrDllName,
  95957.  
  95958.                   BSTR *pBstrName,
  95959.                 WORD *pwOrdinal);
  95960.  
  95961.  
  95962.                 HRESULT __stdcall ITypeInfo_GetDllEntry_Stub(
  95963.               ITypeInfo * This,
  95964.                MEMBERID memid,
  95965.                INVOKEKIND invKind,
  95966.                DWORD refPtrFlags,
  95967.                                      BSTR *pBstrDllName,
  95968.                                      BSTR *pBstrName,
  95969.                            WORD *pwOrdinal);
  95970.  
  95971.               HRESULT __stdcall ITypeInfo_AddressOfMember_Proxy(
  95972.     ITypeInfo * This,
  95973.                MEMBERID memid,
  95974.                INVOKEKIND invKind,
  95975.                 PVOID *ppv);
  95976.  
  95977.  
  95978.                         HRESULT __stdcall ITypeInfo_AddressOfMember_Stub(
  95979.               ITypeInfo * This);
  95980.  
  95981.               HRESULT __stdcall ITypeInfo_CreateInstance_Proxy(
  95982.     ITypeInfo * This,
  95983.                IUnknown *pUnkOuter,
  95984.                const IID * riid,
  95985.                         PVOID *ppvObj);
  95986.  
  95987.  
  95988.                 HRESULT __stdcall ITypeInfo_CreateInstance_Stub(
  95989.               ITypeInfo * This,
  95990.                          const IID * riid,
  95991.                                              IUnknown **ppvObj);
  95992.  
  95993.               HRESULT __stdcall ITypeInfo_GetContainingTypeLib_Proxy(
  95994.     ITypeInfo * This,
  95995.                 ITypeLib **ppTLib,
  95996.                 UINT *pIndex);
  95997.  
  95998.  
  95999.                 HRESULT __stdcall ITypeInfo_GetContainingTypeLib_Stub(
  96000.               ITypeInfo * This,
  96001.                                      ITypeLib **ppTLib,
  96002.                            UINT *pIndex);
  96003.  
  96004.               void __stdcall ITypeInfo_ReleaseTypeAttr_Proxy(
  96005.     ITypeInfo * This,
  96006.                TYPEATTR *pTypeAttr);
  96007.  
  96008.  
  96009.                         HRESULT __stdcall ITypeInfo_ReleaseTypeAttr_Stub(
  96010.               ITypeInfo * This);
  96011.  
  96012.               void __stdcall ITypeInfo_ReleaseFuncDesc_Proxy(
  96013.     ITypeInfo * This,
  96014.                FUNCDESC *pFuncDesc);
  96015.  
  96016.  
  96017.                         HRESULT __stdcall ITypeInfo_ReleaseFuncDesc_Stub(
  96018.               ITypeInfo * This);
  96019.  
  96020.               void __stdcall ITypeInfo_ReleaseVarDesc_Proxy(
  96021.     ITypeInfo * This,
  96022.                VARDESC *pVarDesc);
  96023.  
  96024.  
  96025.                         HRESULT __stdcall ITypeInfo_ReleaseVarDesc_Stub(
  96026.               ITypeInfo * This);
  96027.  
  96028.               HRESULT __stdcall ITypeInfo2_GetDocumentation2_Proxy(
  96029.     ITypeInfo2 * This,
  96030.                MEMBERID memid,
  96031.                LCID lcid,
  96032.  
  96033.                   BSTR *pbstrHelpString,
  96034.                 DWORD *pdwHelpStringContext,
  96035.  
  96036.                   BSTR *pbstrHelpStringDll);
  96037.  
  96038.  
  96039.                 HRESULT __stdcall ITypeInfo2_GetDocumentation2_Stub(
  96040.               ITypeInfo2 * This,
  96041.                MEMBERID memid,
  96042.                LCID lcid,
  96043.                DWORD refPtrFlags,
  96044.                                      BSTR *pbstrHelpString,
  96045.                            DWORD *pdwHelpStringContext,
  96046.                                      BSTR *pbstrHelpStringDll);
  96047.  
  96048.               UINT __stdcall ITypeLib_GetTypeInfoCount_Proxy(
  96049.     ITypeLib * This);
  96050.  
  96051.  
  96052.                 HRESULT __stdcall ITypeLib_GetTypeInfoCount_Stub(
  96053.               ITypeLib * This,
  96054.                            UINT *pcTInfo);
  96055.  
  96056.               HRESULT __stdcall ITypeLib_GetLibAttr_Proxy(
  96057.     ITypeLib * This,
  96058.                 TLIBATTR **ppTLibAttr);
  96059.  
  96060.  
  96061.                 HRESULT __stdcall ITypeLib_GetLibAttr_Stub(
  96062.               ITypeLib * This,
  96063.                                      LPTLIBATTR *ppTLibAttr,
  96064.                            CLEANLOCALSTORAGE *pDummy);
  96065.  
  96066.               HRESULT __stdcall ITypeLib_GetDocumentation_Proxy(
  96067.     ITypeLib * This,
  96068.                INT index,
  96069.  
  96070.                   BSTR *pBstrName,
  96071.  
  96072.                   BSTR *pBstrDocString,
  96073.                 DWORD *pdwHelpContext,
  96074.  
  96075.                   BSTR *pBstrHelpFile);
  96076.  
  96077.  
  96078.                 HRESULT __stdcall ITypeLib_GetDocumentation_Stub(
  96079.               ITypeLib * This,
  96080.                INT index,
  96081.                DWORD refPtrFlags,
  96082.                                      BSTR *pBstrName,
  96083.                                      BSTR *pBstrDocString,
  96084.                            DWORD *pdwHelpContext,
  96085.                                      BSTR *pBstrHelpFile);
  96086.  
  96087.               HRESULT __stdcall ITypeLib_IsName_Proxy(
  96088.     ITypeLib * This,
  96089.  
  96090.                   LPOLESTR szNameBuf,
  96091.                ULONG lHashVal,
  96092.                 BOOL *pfName);
  96093.  
  96094.  
  96095.                 HRESULT __stdcall ITypeLib_IsName_Stub(
  96096.               ITypeLib * This,
  96097.                          LPOLESTR szNameBuf,
  96098.                ULONG lHashVal,
  96099.                            BOOL *pfName,
  96100.                                      BSTR *pBstrLibName);
  96101.  
  96102.               HRESULT __stdcall ITypeLib_FindName_Proxy(
  96103.     ITypeLib * This,
  96104.  
  96105.                   LPOLESTR szNameBuf,
  96106.                ULONG lHashVal,
  96107.                                     ITypeInfo **ppTInfo,
  96108.                                     MEMBERID *rgMemId,
  96109.                     USHORT *pcFound);
  96110.  
  96111.  
  96112.                 HRESULT __stdcall ITypeLib_FindName_Stub(
  96113.               ITypeLib * This,
  96114.                          LPOLESTR szNameBuf,
  96115.                ULONG lHashVal,
  96116.                                                                                ITypeInfo **ppTInfo,
  96117.                                                                                MEMBERID *rgMemId,
  96118.                                  USHORT *pcFound,
  96119.                                      BSTR *pBstrLibName);
  96120.  
  96121.               void __stdcall ITypeLib_ReleaseTLibAttr_Proxy(
  96122.     ITypeLib * This,
  96123.                TLIBATTR *pTLibAttr);
  96124.  
  96125.  
  96126.                         HRESULT __stdcall ITypeLib_ReleaseTLibAttr_Stub(
  96127.               ITypeLib * This);
  96128.  
  96129.               HRESULT __stdcall ITypeLib2_GetLibStatistics_Proxy(
  96130.     ITypeLib2 * This,
  96131.                 ULONG *pcUniqueNames,
  96132.                 ULONG *pcchUniqueNames);
  96133.  
  96134.  
  96135.                 HRESULT __stdcall ITypeLib2_GetLibStatistics_Stub(
  96136.               ITypeLib2 * This,
  96137.                            ULONG *pcUniqueNames,
  96138.                            ULONG *pcchUniqueNames);
  96139.  
  96140.               HRESULT __stdcall ITypeLib2_GetDocumentation2_Proxy(
  96141.     ITypeLib2 * This,
  96142.                INT index,
  96143.                LCID lcid,
  96144.  
  96145.                   BSTR *pbstrHelpString,
  96146.                 DWORD *pdwHelpStringContext,
  96147.  
  96148.                   BSTR *pbstrHelpStringDll);
  96149.  
  96150.  
  96151.                 HRESULT __stdcall ITypeLib2_GetDocumentation2_Stub(
  96152.               ITypeLib2 * This,
  96153.                INT index,
  96154.                LCID lcid,
  96155.                DWORD refPtrFlags,
  96156.                                      BSTR *pbstrHelpString,
  96157.                            DWORD *pdwHelpStringContext,
  96158.                                      BSTR *pbstrHelpStringDll);
  96159.  
  96160.               HRESULT __stdcall IPropertyBag_Read_Proxy(
  96161.     IPropertyBag * This,
  96162.                LPCOLESTR pszPropName,
  96163.                     VARIANT *pVar,
  96164.                        IErrorLog *pErrorLog);
  96165.  
  96166.  
  96167.                 HRESULT __stdcall IPropertyBag_Read_Stub(
  96168.               IPropertyBag * This,
  96169.                          LPCOLESTR pszPropName,
  96170.                            VARIANT *pVar,
  96171.                                      IErrorLog *pErrorLog,
  96172.                DWORD varType,
  96173.                              IUnknown *pUnkObj);
  96174. # 6068 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  96175. #pragma option pop
  96176. # 73 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 2 3
  96177. # 102 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96178. #pragma region Application Family or OneCore Family
  96179.  
  96180.  
  96181.  
  96182.  
  96183. typedef struct tagVersionedStream
  96184.     {
  96185.     GUID guidVersion;
  96186.     IStream *pStream;
  96187.     } VERSIONEDSTREAM;
  96188.  
  96189. typedef struct tagVersionedStream *LPVERSIONEDSTREAM;
  96190. # 139 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96191. typedef struct tagPROPVARIANT PROPVARIANT;
  96192.  
  96193. typedef struct tagCAC
  96194.     {
  96195.     ULONG cElems;
  96196.                     CHAR *pElems;
  96197.     } CAC;
  96198.  
  96199. typedef struct tagCAUB
  96200.     {
  96201.     ULONG cElems;
  96202.                     UCHAR *pElems;
  96203.     } CAUB;
  96204.  
  96205. typedef struct tagCAI
  96206.     {
  96207.     ULONG cElems;
  96208.                     SHORT *pElems;
  96209.     } CAI;
  96210.  
  96211. typedef struct tagCAUI
  96212.     {
  96213.     ULONG cElems;
  96214.                     USHORT *pElems;
  96215.     } CAUI;
  96216.  
  96217. typedef struct tagCAL
  96218.     {
  96219.     ULONG cElems;
  96220.                     LONG *pElems;
  96221.     } CAL;
  96222.  
  96223. typedef struct tagCAUL
  96224.     {
  96225.     ULONG cElems;
  96226.                     ULONG *pElems;
  96227.     } CAUL;
  96228.  
  96229. typedef struct tagCAFLT
  96230.     {
  96231.     ULONG cElems;
  96232.                     FLOAT *pElems;
  96233.     } CAFLT;
  96234.  
  96235. typedef struct tagCADBL
  96236.     {
  96237.     ULONG cElems;
  96238.                     DOUBLE *pElems;
  96239.     } CADBL;
  96240.  
  96241. typedef struct tagCACY
  96242.     {
  96243.     ULONG cElems;
  96244.                     CY *pElems;
  96245.     } CACY;
  96246.  
  96247. typedef struct tagCADATE
  96248.     {
  96249.     ULONG cElems;
  96250.                     DATE *pElems;
  96251.     } CADATE;
  96252.  
  96253. typedef struct tagCABSTR
  96254.     {
  96255.     ULONG cElems;
  96256.                     BSTR *pElems;
  96257.     } CABSTR;
  96258.  
  96259. typedef struct tagCABSTRBLOB
  96260.     {
  96261.     ULONG cElems;
  96262.                     BSTRBLOB *pElems;
  96263.     } CABSTRBLOB;
  96264.  
  96265. typedef struct tagCABOOL
  96266.     {
  96267.     ULONG cElems;
  96268.                     VARIANT_BOOL *pElems;
  96269.     } CABOOL;
  96270.  
  96271. typedef struct tagCASCODE
  96272.     {
  96273.     ULONG cElems;
  96274.                     SCODE *pElems;
  96275.     } CASCODE;
  96276.  
  96277. typedef struct tagCAPROPVARIANT
  96278.     {
  96279.     ULONG cElems;
  96280.                     PROPVARIANT *pElems;
  96281.     } CAPROPVARIANT;
  96282.  
  96283. typedef struct tagCAH
  96284.     {
  96285.     ULONG cElems;
  96286.                     LARGE_INTEGER *pElems;
  96287.     } CAH;
  96288.  
  96289. typedef struct tagCAUH
  96290.     {
  96291.     ULONG cElems;
  96292.                     ULARGE_INTEGER *pElems;
  96293.     } CAUH;
  96294.  
  96295. typedef struct tagCALPSTR
  96296.     {
  96297.     ULONG cElems;
  96298.                     LPSTR *pElems;
  96299.     } CALPSTR;
  96300.  
  96301. typedef struct tagCALPWSTR
  96302.     {
  96303.     ULONG cElems;
  96304.                     LPWSTR *pElems;
  96305.     } CALPWSTR;
  96306.  
  96307. typedef struct tagCAFILETIME
  96308.     {
  96309.     ULONG cElems;
  96310.                     FILETIME *pElems;
  96311.     } CAFILETIME;
  96312.  
  96313. typedef struct tagCACLIPDATA
  96314.     {
  96315.     ULONG cElems;
  96316.                     CLIPDATA *pElems;
  96317.     } CACLIPDATA;
  96318.  
  96319. typedef struct tagCACLSID
  96320.     {
  96321.     ULONG cElems;
  96322.                     CLSID *pElems;
  96323.     } CACLSID;
  96324. # 283 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96325. typedef WORD PROPVAR_PAD1;
  96326. typedef WORD PROPVAR_PAD2;
  96327. typedef WORD PROPVAR_PAD3;
  96328. # 295 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96329. struct tagPROPVARIANT {
  96330.   union {
  96331.  
  96332. struct
  96333.     {
  96334.     VARTYPE vt;
  96335.     PROPVAR_PAD1 wReserved1;
  96336.     PROPVAR_PAD2 wReserved2;
  96337.     PROPVAR_PAD3 wReserved3;
  96338.                                           union
  96339.         {
  96340.  
  96341.                        CHAR cVal;
  96342.                        UCHAR bVal;
  96343.                        SHORT iVal;
  96344.                        USHORT uiVal;
  96345.                        LONG lVal;
  96346.                        ULONG ulVal;
  96347.                        INT intVal;
  96348.                        UINT uintVal;
  96349.                        LARGE_INTEGER hVal;
  96350.                        ULARGE_INTEGER uhVal;
  96351.                        FLOAT fltVal;
  96352.                        DOUBLE dblVal;
  96353.                        VARIANT_BOOL boolVal;
  96354.  
  96355.                        SCODE scode;
  96356.                        CY cyVal;
  96357.                        DATE date;
  96358.                        FILETIME filetime;
  96359.                        CLSID *puuid;
  96360.                        CLIPDATA *pclipdata;
  96361.                        BSTR bstrVal;
  96362.                        BSTRBLOB bstrblobVal;
  96363.                        BLOB blob;
  96364.                        LPSTR pszVal;
  96365.                        LPWSTR pwszVal;
  96366.                        IUnknown *punkVal;
  96367.                        IDispatch *pdispVal;
  96368.                        IStream *pStream;
  96369.                        IStorage *pStorage;
  96370.                        LPVERSIONEDSTREAM pVersionedStream;
  96371.                        LPSAFEARRAY parray;
  96372.                        CAC cac;
  96373.                        CAUB caub;
  96374.                        CAI cai;
  96375.                        CAUI caui;
  96376.                        CAL cal;
  96377.                        CAUL caul;
  96378.                        CAH cah;
  96379.                        CAUH cauh;
  96380.                        CAFLT caflt;
  96381.                        CADBL cadbl;
  96382.                        CABOOL cabool;
  96383.                        CASCODE cascode;
  96384.                        CACY cacy;
  96385.                        CADATE cadate;
  96386.                        CAFILETIME cafiletime;
  96387.                        CACLSID cauuid;
  96388.                        CACLIPDATA caclipdata;
  96389.                        CABSTR cabstr;
  96390.                        CABSTRBLOB cabstrblob;
  96391.                        CALPSTR calpstr;
  96392.                        CALPWSTR calpwstr;
  96393.                        CAPROPVARIANT capropvar;
  96394.                        CHAR *pcVal;
  96395.                        UCHAR *pbVal;
  96396.                        SHORT *piVal;
  96397.                        USHORT *puiVal;
  96398.                        LONG *plVal;
  96399.                        ULONG *pulVal;
  96400.                        INT *pintVal;
  96401.                        UINT *puintVal;
  96402.                        FLOAT *pfltVal;
  96403.                        DOUBLE *pdblVal;
  96404.                        VARIANT_BOOL *pboolVal;
  96405.                        DECIMAL *pdecVal;
  96406.                        SCODE *pscode;
  96407.                        CY *pcyVal;
  96408.                        DATE *pdate;
  96409.                        BSTR *pbstrVal;
  96410.                        IUnknown **ppunkVal;
  96411.                        IDispatch **ppdispVal;
  96412.                        LPSAFEARRAY *pparray;
  96413.                        PROPVARIANT *pvarVal;
  96414.         } ;
  96415.     } ;
  96416.  
  96417.     DECIMAL decVal;
  96418.   };
  96419. };
  96420. # 399 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96421. typedef struct tagPROPVARIANT * LPPROPVARIANT;
  96422. # 442 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96423. typedef struct tagPROPSPEC
  96424.     {
  96425.     ULONG ulKind;
  96426.                                           union
  96427.         {
  96428.                        PROPID propid;
  96429.                        LPOLESTR lpwstr;
  96430.  
  96431.         } ;
  96432.     } PROPSPEC;
  96433.  
  96434. typedef struct tagSTATPROPSTG
  96435.     {
  96436.     LPOLESTR lpwstrName;
  96437.     PROPID propid;
  96438.     VARTYPE vt;
  96439.     } STATPROPSTG;
  96440.  
  96441.  
  96442.  
  96443.  
  96444.  
  96445.  
  96446. typedef struct tagSTATPROPSETSTG
  96447.     {
  96448.     FMTID fmtid;
  96449.     CLSID clsid;
  96450.     DWORD grfFlags;
  96451.     FILETIME mtime;
  96452.     FILETIME ctime;
  96453.     FILETIME atime;
  96454.     DWORD dwOSVersion;
  96455.     } STATPROPSETSTG;
  96456.  
  96457.  
  96458.  
  96459. extern RPC_IF_HANDLE __MIDL_itf_propidlbase_0000_0000_v0_0_c_ifspec;
  96460. extern RPC_IF_HANDLE __MIDL_itf_propidlbase_0000_0000_v0_0_s_ifspec;
  96461. # 488 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96462. extern const IID IID_IPropertyStorage;
  96463. # 549 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96464.     typedef struct IPropertyStorageVtbl
  96465.     {
  96466.  
  96467.  
  96468.         HRESULT ( __stdcall *QueryInterface )(
  96469.                       IPropertyStorage * This,
  96470.                                  const IID * riid,
  96471.  
  96472.                           void **ppvObject);
  96473.  
  96474.         ULONG ( __stdcall *AddRef )(
  96475.                       IPropertyStorage * This);
  96476.  
  96477.         ULONG ( __stdcall *Release )(
  96478.                       IPropertyStorage * This);
  96479.  
  96480.         HRESULT ( __stdcall *ReadMultiple )(
  96481.                       IPropertyStorage * This,
  96482.                        ULONG cpspec,
  96483.                                                               const PROPSPEC rgpspec[ ],
  96484.                                                                 PROPVARIANT rgpropvar[ ]);
  96485.  
  96486.         HRESULT ( __stdcall *WriteMultiple )(
  96487.                       IPropertyStorage * This,
  96488.                        ULONG cpspec,
  96489.                                                               const PROPSPEC rgpspec[ ],
  96490.                                                               const PROPVARIANT rgpropvar[ ],
  96491.                        PROPID propidNameFirst);
  96492.  
  96493.         HRESULT ( __stdcall *DeleteMultiple )(
  96494.                       IPropertyStorage * This,
  96495.                        ULONG cpspec,
  96496.                                                               const PROPSPEC rgpspec[ ]);
  96497.  
  96498.         HRESULT ( __stdcall *ReadPropertyNames )(
  96499.                       IPropertyStorage * This,
  96500.                        ULONG cpropid,
  96501.                                                                const PROPID rgpropid[ ],
  96502.                                                                  LPOLESTR rglpwstrName[ ]);
  96503.  
  96504.         HRESULT ( __stdcall *WritePropertyNames )(
  96505.                       IPropertyStorage * This,
  96506.                        ULONG cpropid,
  96507.                                                                const PROPID rgpropid[ ],
  96508.                                                                const LPOLESTR rglpwstrName[ ]);
  96509.  
  96510.         HRESULT ( __stdcall *DeletePropertyNames )(
  96511.                       IPropertyStorage * This,
  96512.                        ULONG cpropid,
  96513.                                                                const PROPID rgpropid[ ]);
  96514.  
  96515.         HRESULT ( __stdcall *Commit )(
  96516.                       IPropertyStorage * This,
  96517.                        DWORD grfCommitFlags);
  96518.  
  96519.         HRESULT ( __stdcall *Revert )(
  96520.                       IPropertyStorage * This);
  96521.  
  96522.         HRESULT ( __stdcall *Enum )(
  96523.                       IPropertyStorage * This,
  96524.                                              IEnumSTATPROPSTG **ppenum);
  96525.  
  96526.         HRESULT ( __stdcall *SetTimes )(
  96527.                       IPropertyStorage * This,
  96528.                                  const FILETIME *pctime,
  96529.                                  const FILETIME *patime,
  96530.                                  const FILETIME *pmtime);
  96531.  
  96532.         HRESULT ( __stdcall *SetClass )(
  96533.                       IPropertyStorage * This,
  96534.                                  const IID * clsid);
  96535.  
  96536.         HRESULT ( __stdcall *Stat )(
  96537.                       IPropertyStorage * This,
  96538.                                    STATPROPSETSTG *pstatpsstg);
  96539.  
  96540.  
  96541.     } IPropertyStorageVtbl;
  96542.  
  96543.     struct IPropertyStorage
  96544.     {
  96545.                    struct IPropertyStorageVtbl *lpVtbl;
  96546.     };
  96547. # 701 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96548. typedef IPropertySetStorage *LPPROPERTYSETSTORAGE;
  96549.  
  96550.  
  96551. extern const IID IID_IPropertySetStorage;
  96552. # 735 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96553.     typedef struct IPropertySetStorageVtbl
  96554.     {
  96555.  
  96556.  
  96557.         HRESULT ( __stdcall *QueryInterface )(
  96558.                       IPropertySetStorage * This,
  96559.                                  const IID * riid,
  96560.  
  96561.                           void **ppvObject);
  96562.  
  96563.         ULONG ( __stdcall *AddRef )(
  96564.                       IPropertySetStorage * This);
  96565.  
  96566.         ULONG ( __stdcall *Release )(
  96567.                       IPropertySetStorage * This);
  96568.  
  96569.         HRESULT ( __stdcall *Create )(
  96570.                       IPropertySetStorage * This,
  96571.                                  const IID * rfmtid,
  96572.                                              const CLSID *pclsid,
  96573.                        DWORD grfFlags,
  96574.                        DWORD grfMode,
  96575.                                              IPropertyStorage **ppprstg);
  96576.  
  96577.         HRESULT ( __stdcall *Open )(
  96578.                       IPropertySetStorage * This,
  96579.                                  const IID * rfmtid,
  96580.                        DWORD grfMode,
  96581.                                              IPropertyStorage **ppprstg);
  96582.  
  96583.         HRESULT ( __stdcall *Delete )(
  96584.                       IPropertySetStorage * This,
  96585.                                  const IID * rfmtid);
  96586.  
  96587.         HRESULT ( __stdcall *Enum )(
  96588.                       IPropertySetStorage * This,
  96589.                                              IEnumSTATPROPSETSTG **ppenum);
  96590.  
  96591.  
  96592.     } IPropertySetStorageVtbl;
  96593.  
  96594.     struct IPropertySetStorage
  96595.     {
  96596.                    struct IPropertySetStorageVtbl *lpVtbl;
  96597.     };
  96598. # 825 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96599. typedef IEnumSTATPROPSTG *LPENUMSTATPROPSTG;
  96600.  
  96601.  
  96602. extern const IID IID_IEnumSTATPROPSTG;
  96603. # 856 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96604.     typedef struct IEnumSTATPROPSTGVtbl
  96605.     {
  96606.  
  96607.  
  96608.         HRESULT ( __stdcall *QueryInterface )(
  96609.                       IEnumSTATPROPSTG * This,
  96610.                                  const IID * riid,
  96611.  
  96612.                           void **ppvObject);
  96613.  
  96614.         ULONG ( __stdcall *AddRef )(
  96615.                       IEnumSTATPROPSTG * This);
  96616.  
  96617.         ULONG ( __stdcall *Release )(
  96618.                       IEnumSTATPROPSTG * This);
  96619.  
  96620.                       HRESULT ( __stdcall *Next )(
  96621.             IEnumSTATPROPSTG * This,
  96622.                        ULONG celt,
  96623.  
  96624.                                                   STATPROPSTG *rgelt,
  96625.  
  96626.                                                   ULONG *pceltFetched);
  96627.  
  96628.         HRESULT ( __stdcall *Skip )(
  96629.                       IEnumSTATPROPSTG * This,
  96630.                        ULONG celt);
  96631.  
  96632.         HRESULT ( __stdcall *Reset )(
  96633.                       IEnumSTATPROPSTG * This);
  96634.  
  96635.         HRESULT ( __stdcall *Clone )(
  96636.                       IEnumSTATPROPSTG * This,
  96637.                                              IEnumSTATPROPSTG **ppenum);
  96638.  
  96639.  
  96640.     } IEnumSTATPROPSTGVtbl;
  96641.  
  96642.     struct IEnumSTATPROPSTG
  96643.     {
  96644.                    struct IEnumSTATPROPSTGVtbl *lpVtbl;
  96645.     };
  96646. # 933 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96647.                 HRESULT __stdcall IEnumSTATPROPSTG_RemoteNext_Proxy(
  96648.               IEnumSTATPROPSTG * This,
  96649.                ULONG celt,
  96650.                                                                                 STATPROPSTG *rgelt,
  96651.                            ULONG *pceltFetched);
  96652.  
  96653.  
  96654. void __stdcall IEnumSTATPROPSTG_RemoteNext_Stub(
  96655.     IRpcStubBuffer *This,
  96656.     IRpcChannelBuffer *_pRpcChannelBuffer,
  96657.     PRPC_MESSAGE _pRpcMessage,
  96658.     DWORD *_pdwStubPhase);
  96659. # 957 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96660. typedef IEnumSTATPROPSETSTG *LPENUMSTATPROPSETSTG;
  96661.  
  96662.  
  96663. extern const IID IID_IEnumSTATPROPSETSTG;
  96664. # 988 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96665.     typedef struct IEnumSTATPROPSETSTGVtbl
  96666.     {
  96667.  
  96668.  
  96669.         HRESULT ( __stdcall *QueryInterface )(
  96670.                       IEnumSTATPROPSETSTG * This,
  96671.                                  const IID * riid,
  96672.  
  96673.                           void **ppvObject);
  96674.  
  96675.         ULONG ( __stdcall *AddRef )(
  96676.                       IEnumSTATPROPSETSTG * This);
  96677.  
  96678.         ULONG ( __stdcall *Release )(
  96679.                       IEnumSTATPROPSETSTG * This);
  96680.  
  96681.                       HRESULT ( __stdcall *Next )(
  96682.             IEnumSTATPROPSETSTG * This,
  96683.                        ULONG celt,
  96684.  
  96685.                                                   STATPROPSETSTG *rgelt,
  96686.  
  96687.                                                   ULONG *pceltFetched);
  96688.  
  96689.         HRESULT ( __stdcall *Skip )(
  96690.                       IEnumSTATPROPSETSTG * This,
  96691.                        ULONG celt);
  96692.  
  96693.         HRESULT ( __stdcall *Reset )(
  96694.                       IEnumSTATPROPSETSTG * This);
  96695.  
  96696.         HRESULT ( __stdcall *Clone )(
  96697.                       IEnumSTATPROPSETSTG * This,
  96698.                                              IEnumSTATPROPSETSTG **ppenum);
  96699.  
  96700.  
  96701.     } IEnumSTATPROPSETSTGVtbl;
  96702.  
  96703.     struct IEnumSTATPROPSETSTG
  96704.     {
  96705.                    struct IEnumSTATPROPSETSTGVtbl *lpVtbl;
  96706.     };
  96707. # 1065 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96708.                 HRESULT __stdcall IEnumSTATPROPSETSTG_RemoteNext_Proxy(
  96709.               IEnumSTATPROPSETSTG * This,
  96710.                ULONG celt,
  96711.                                                                                 STATPROPSETSTG *rgelt,
  96712.                            ULONG *pceltFetched);
  96713.  
  96714.  
  96715. void __stdcall IEnumSTATPROPSETSTG_RemoteNext_Stub(
  96716.     IRpcStubBuffer *This,
  96717.     IRpcChannelBuffer *_pRpcChannelBuffer,
  96718.     PRPC_MESSAGE _pRpcMessage,
  96719.     DWORD *_pdwStubPhase);
  96720. # 1086 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96721. typedef IPropertyStorage *LPPROPERTYSTORAGE;
  96722.  
  96723.  
  96724. #pragma endregion
  96725.  
  96726.  
  96727.  
  96728.  
  96729.  
  96730.  
  96731. #pragma warning(default: 4201)
  96732. #pragma warning(default: 4237)
  96733.  
  96734.  
  96735.  
  96736. extern RPC_IF_HANDLE __MIDL_itf_propidlbase_0000_0004_v0_0_c_ifspec;
  96737. extern RPC_IF_HANDLE __MIDL_itf_propidlbase_0000_0004_v0_0_s_ifspec;
  96738.  
  96739.  
  96740.  
  96741. unsigned long __stdcall BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  96742. unsigned char * __stdcall BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  96743. unsigned char * __stdcall BSTR_UserUnmarshal( unsigned long *, unsigned char *, BSTR * );
  96744. void __stdcall BSTR_UserFree( unsigned long *, BSTR * );
  96745.  
  96746. unsigned long __stdcall LPSAFEARRAY_UserSize( unsigned long *, unsigned long , LPSAFEARRAY * );
  96747. unsigned char * __stdcall LPSAFEARRAY_UserMarshal( unsigned long *, unsigned char *, LPSAFEARRAY * );
  96748. unsigned char * __stdcall LPSAFEARRAY_UserUnmarshal( unsigned long *, unsigned char *, LPSAFEARRAY * );
  96749. void __stdcall LPSAFEARRAY_UserFree( unsigned long *, LPSAFEARRAY * );
  96750.  
  96751. unsigned long __stdcall BSTR_UserSize64( unsigned long *, unsigned long , BSTR * );
  96752. unsigned char * __stdcall BSTR_UserMarshal64( unsigned long *, unsigned char *, BSTR * );
  96753. unsigned char * __stdcall BSTR_UserUnmarshal64( unsigned long *, unsigned char *, BSTR * );
  96754. void __stdcall BSTR_UserFree64( unsigned long *, BSTR * );
  96755.  
  96756. unsigned long __stdcall LPSAFEARRAY_UserSize64( unsigned long *, unsigned long , LPSAFEARRAY * );
  96757. unsigned char * __stdcall LPSAFEARRAY_UserMarshal64( unsigned long *, unsigned char *, LPSAFEARRAY * );
  96758. unsigned char * __stdcall LPSAFEARRAY_UserUnmarshal64( unsigned long *, unsigned char *, LPSAFEARRAY * );
  96759. void __stdcall LPSAFEARRAY_UserFree64( unsigned long *, LPSAFEARRAY * );
  96760.  
  96761.               HRESULT __stdcall IEnumSTATPROPSTG_Next_Proxy(
  96762.     IEnumSTATPROPSTG * This,
  96763.                ULONG celt,
  96764.  
  96765.                                           STATPROPSTG *rgelt,
  96766.  
  96767.                                           ULONG *pceltFetched);
  96768.  
  96769.  
  96770.                 HRESULT __stdcall IEnumSTATPROPSTG_Next_Stub(
  96771.               IEnumSTATPROPSTG * This,
  96772.                ULONG celt,
  96773.                                                                                 STATPROPSTG *rgelt,
  96774.                            ULONG *pceltFetched);
  96775.  
  96776.               HRESULT __stdcall IEnumSTATPROPSETSTG_Next_Proxy(
  96777.     IEnumSTATPROPSETSTG * This,
  96778.                ULONG celt,
  96779.  
  96780.                                           STATPROPSETSTG *rgelt,
  96781.  
  96782.                                           ULONG *pceltFetched);
  96783.  
  96784.  
  96785.                 HRESULT __stdcall IEnumSTATPROPSETSTG_Next_Stub(
  96786.               IEnumSTATPROPSETSTG * This,
  96787.                ULONG celt,
  96788.                                                                                 STATPROPSETSTG *rgelt,
  96789.                            ULONG *pceltFetched);
  96790. # 1167 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidlbase.h" 3
  96791. #pragma option pop
  96792. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\coml2api.h" 2 3
  96793.  
  96794.  
  96795. #pragma region Application Family
  96796. # 68 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\coml2api.h" 3
  96797. typedef DWORD STGFMT;
  96798. # 81 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\coml2api.h" 3
  96799. extern __declspec(dllimport) HRESULT __stdcall
  96800. StgCreateDocfile(
  96801.                                const WCHAR* pwcsName,
  96802.          DWORD grfMode,
  96803.                DWORD reserved,
  96804.              IStorage** ppstgOpen
  96805.     );
  96806.  
  96807.  
  96808.  
  96809. extern __declspec(dllimport) HRESULT __stdcall
  96810. StgCreateDocfileOnILockBytes(
  96811.          ILockBytes* plkbyt,
  96812.          DWORD grfMode,
  96813.          DWORD reserved,
  96814.              IStorage** ppstgOpen
  96815.     );
  96816.  
  96817.  
  96818.  
  96819. extern __declspec(dllimport) HRESULT __stdcall
  96820. StgOpenStorage(
  96821.                                const WCHAR* pwcsName,
  96822.              IStorage* pstgPriority,
  96823.          DWORD grfMode,
  96824.                SNB snbExclude,
  96825.          DWORD reserved,
  96826.              IStorage** ppstgOpen
  96827.     );
  96828.  
  96829.  
  96830.  
  96831. extern __declspec(dllimport) HRESULT __stdcall
  96832. StgOpenStorageOnILockBytes(
  96833.          ILockBytes* plkbyt,
  96834.              IStorage* pstgPriority,
  96835.          DWORD grfMode,
  96836.                SNB snbExclude,
  96837.                DWORD reserved,
  96838.              IStorage** ppstgOpen
  96839.     );
  96840.  
  96841.  
  96842.  
  96843. extern __declspec(dllimport) HRESULT __stdcall
  96844. StgIsStorageFile(
  96845.                            const WCHAR* pwcsName
  96846.     );
  96847.  
  96848.  
  96849.  
  96850. extern __declspec(dllimport) HRESULT __stdcall
  96851. StgIsStorageILockBytes(
  96852.          ILockBytes* plkbyt
  96853.     );
  96854.  
  96855.  
  96856.  
  96857. extern __declspec(dllimport) HRESULT __stdcall
  96858. StgSetTimes(
  96859.                            const WCHAR* lpszName,
  96860.              const FILETIME* pctime,
  96861.              const FILETIME* patime,
  96862.              const FILETIME* pmtime
  96863.     );
  96864. # 157 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\coml2api.h" 3
  96865. typedef struct tagSTGOPTIONS
  96866. {
  96867.     USHORT usVersion;
  96868.     USHORT reserved;
  96869.     ULONG ulSectorSize;
  96870.  
  96871.     const WCHAR *pwcsTemplateFile;
  96872.  
  96873. } STGOPTIONS;
  96874.  
  96875.  
  96876. extern __declspec(dllimport) HRESULT __stdcall
  96877. StgCreateStorageEx(
  96878.                                const WCHAR* pwcsName,
  96879.          DWORD grfMode,
  96880.          DWORD stgfmt,
  96881.          DWORD grfAttrs,
  96882.                 STGOPTIONS* pStgOptions,
  96883.              PSECURITY_DESCRIPTOR pSecurityDescriptor,
  96884.          const IID * riid,
  96885.              void** ppObjectOpen
  96886.     );
  96887.  
  96888.  
  96889.  
  96890. extern __declspec(dllimport) HRESULT __stdcall
  96891. StgOpenStorageEx(
  96892.                            const WCHAR* pwcsName,
  96893.          DWORD grfMode,
  96894.          DWORD stgfmt,
  96895.          DWORD grfAttrs,
  96896.                 STGOPTIONS* pStgOptions,
  96897.              PSECURITY_DESCRIPTOR pSecurityDescriptor,
  96898.          const IID * riid,
  96899.              void** ppObjectOpen
  96900.     );
  96901.  
  96902.  
  96903.  
  96904.  
  96905.  
  96906. extern __declspec(dllimport) HRESULT __stdcall
  96907. StgCreatePropStg(
  96908.          IUnknown* pUnk,
  96909.          const IID * fmtid,
  96910.          const CLSID* pclsid,
  96911.          DWORD grfFlags,
  96912.                DWORD dwReserved,
  96913.              IPropertyStorage** ppPropStg
  96914.     );
  96915.  
  96916.  
  96917.  
  96918. extern __declspec(dllimport) HRESULT __stdcall
  96919. StgOpenPropStg(
  96920.          IUnknown* pUnk,
  96921.          const IID * fmtid,
  96922.          DWORD grfFlags,
  96923.                DWORD dwReserved,
  96924.              IPropertyStorage** ppPropStg
  96925.     );
  96926.  
  96927.  
  96928.  
  96929. extern __declspec(dllimport) HRESULT __stdcall
  96930. StgCreatePropSetStg(
  96931.          IStorage* pStorage,
  96932.                DWORD dwReserved,
  96933.              IPropertySetStorage** ppPropSetStg
  96934.     );
  96935.  
  96936.  
  96937.  
  96938.  
  96939.  
  96940. extern __declspec(dllimport) HRESULT __stdcall
  96941. FmtIdToPropStgName(
  96942.          const FMTID* pfmtid,
  96943.                                            LPOLESTR oszName
  96944.     );
  96945.  
  96946.  
  96947.  
  96948. extern __declspec(dllimport) HRESULT __stdcall
  96949. PropStgNameToFmtId(
  96950.          const LPOLESTR oszName,
  96951.           FMTID* pfmtid
  96952.     );
  96953.  
  96954.  
  96955.  
  96956.  
  96957.  
  96958. extern __declspec(dllimport) HRESULT __stdcall
  96959. ReadClassStg(
  96960.          LPSTORAGE pStg,
  96961.           CLSID * pclsid
  96962.     );
  96963.  
  96964.  
  96965. extern __declspec(dllimport) HRESULT __stdcall
  96966. WriteClassStg(
  96967.          LPSTORAGE pStg,
  96968.          const IID * rclsid
  96969.     );
  96970.  
  96971.  
  96972. extern __declspec(dllimport) HRESULT __stdcall
  96973. ReadClassStm(
  96974.          LPSTREAM pStm,
  96975.           CLSID * pclsid
  96976.     );
  96977.  
  96978.  
  96979. extern __declspec(dllimport) HRESULT __stdcall
  96980. WriteClassStm(
  96981.          LPSTREAM pStm,
  96982.          const IID * rclsid
  96983.     );
  96984.  
  96985.  
  96986.  
  96987.  
  96988. extern __declspec(dllimport) HRESULT __stdcall
  96989. GetHGlobalFromILockBytes(
  96990.          LPLOCKBYTES plkbyt,
  96991.           HGLOBAL * phglobal
  96992.     );
  96993.  
  96994.  
  96995.  
  96996. extern __declspec(dllimport) HRESULT __stdcall
  96997. CreateILockBytesOnHGlobal(
  96998.              HGLOBAL hGlobal,
  96999.          BOOL fDeleteOnRelease,
  97000.              LPLOCKBYTES * pplkbyt
  97001.     );
  97002.  
  97003.  
  97004.  
  97005. extern __declspec(dllimport) HRESULT __stdcall
  97006. GetConvertStg(
  97007.          LPSTORAGE pStg
  97008.     );
  97009.  
  97010.  
  97011.  
  97012. #pragma endregion
  97013.  
  97014. #pragma option pop
  97015. # 29 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 2 3
  97016.  
  97017.  
  97018.  
  97019. typedef enum tagCOINIT
  97020. {
  97021.   COINIT_APARTMENTTHREADED = 0x2,
  97022.  
  97023.  
  97024.  
  97025.   COINIT_MULTITHREADED = COINITBASE_MULTITHREADED,
  97026.   COINIT_DISABLE_OLE1DDE = 0x4,
  97027.   COINIT_SPEED_OVER_MEMORY = 0x8,
  97028.  
  97029. } COINIT;
  97030. # 60 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 3
  97031. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 1 3
  97032. #pragma option push -b -a8 -pc -A- -w-pun
  97033. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  97034. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  97035. #pragma option push -b -a8 -pc -A- -w-pun
  97036. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  97037. #pragma option pop
  97038. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97039.  
  97040. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  97041. #pragma option push -b -a8 -pc -A- -w-pun
  97042. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  97043. #pragma option pop
  97044. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97045.  
  97046.  
  97047.  
  97048.  
  97049.  
  97050.  
  97051.  
  97052. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  97053. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97054.  
  97055. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  97056. #pragma option push -b -a8 -pc -A- -w-pun
  97057. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  97058. #pragma option pop
  97059. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97060. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  97061. #pragma option pop
  97062. # 60 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 2 3
  97063. # 72 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 3
  97064. #pragma region Desktop Partition
  97065.  
  97066.  
  97067.  
  97068.  
  97069. extern __declspec(dllimport) DWORD __stdcall CoBuildVersion( void );
  97070.  
  97071.  
  97072.  
  97073.                extern __declspec(dllimport) HRESULT __stdcall CoInitialize( LPVOID pvReserved);
  97074.  
  97075.  
  97076.                extern __declspec(dllimport) HRESULT __stdcall CoRegisterMallocSpy( LPMALLOCSPY pMallocSpy);
  97077.                extern __declspec(dllimport) HRESULT __stdcall CoRevokeMallocSpy(void);
  97078. extern __declspec(dllimport) HRESULT __stdcall CoCreateStandardMalloc( DWORD memctx, IMalloc * * ppMalloc);
  97079.  
  97080.  
  97081.  
  97082.  
  97083.                extern __declspec(dllimport) HRESULT __stdcall CoRegisterInitializeSpy( IInitializeSpy *pSpy, ULARGE_INTEGER *puliCookie);
  97084.                extern __declspec(dllimport) HRESULT __stdcall CoRevokeInitializeSpy( ULARGE_INTEGER uliCookie);
  97085.  
  97086.  
  97087.  
  97088. typedef enum tagCOMSD
  97089. {
  97090.     SD_LAUNCHPERMISSIONS = 0,
  97091.     SD_ACCESSPERMISSIONS = 1,
  97092.     SD_LAUNCHRESTRICTIONS = 2,
  97093.     SD_ACCESSRESTRICTIONS = 3
  97094.  
  97095. } COMSD;
  97096.                extern __declspec(dllimport) HRESULT __stdcall CoGetSystemSecurityPermissions(COMSD comSDType, PSECURITY_DESCRIPTOR *ppSD);
  97097.  
  97098.  
  97099.  
  97100.  
  97101.  
  97102. extern __declspec(dllimport) HINSTANCE __stdcall CoLoadLibrary( LPOLESTR lpszLibName, BOOL bAutoFree);
  97103. extern __declspec(dllimport) void __stdcall CoFreeLibrary( HINSTANCE hInst);
  97104. extern __declspec(dllimport) void __stdcall CoFreeAllLibraries(void);
  97105.  
  97106.  
  97107.  
  97108.  
  97109.  
  97110.                extern __declspec(dllimport) HRESULT __stdcall CoGetInstanceFromFile(
  97111.              COSERVERINFO * pServerInfo,
  97112.              CLSID * pClsid,
  97113.              IUnknown * punkOuter,
  97114.          DWORD dwClsCtx,
  97115.          DWORD grfMode,
  97116.                            OLECHAR * pwszName,
  97117.          DWORD dwCount,
  97118.                              MULTI_QI * pResults );
  97119.  
  97120.  
  97121.                extern __declspec(dllimport) HRESULT __stdcall CoGetInstanceFromIStorage(
  97122.              COSERVERINFO * pServerInfo,
  97123.              CLSID * pClsid,
  97124.              IUnknown * punkOuter,
  97125.          DWORD dwClsCtx,
  97126.          struct IStorage * pstg,
  97127.          DWORD dwCount,
  97128.                              MULTI_QI * pResults );
  97129.  
  97130.  
  97131.  
  97132.  
  97133.  
  97134.  
  97135.  
  97136. extern __declspec(dllimport) HRESULT __stdcall CoAllowSetForegroundWindow( IUnknown *pUnk, LPVOID lpvReserved);
  97137.  
  97138.  
  97139. extern __declspec(dllimport) HRESULT __stdcall DcomChannelSetHResult( LPVOID pvReserved, ULONG* pulReserved, HRESULT appsHR);
  97140.  
  97141.  
  97142.  
  97143.  
  97144. extern __declspec(dllimport) BOOL __stdcall CoIsOle1Class( const IID * rclsid);
  97145.                extern __declspec(dllimport) HRESULT __stdcall CLSIDFromProgIDEx ( LPCOLESTR lpszProgID, LPCLSID lpclsid);
  97146.  
  97147. extern __declspec(dllimport) BOOL __stdcall CoFileTimeToDosDateTime(
  97148.                       FILETIME * lpFileTime, LPWORD lpDosDate, LPWORD lpDosTime);
  97149. extern __declspec(dllimport) BOOL __stdcall CoDosDateTimeToFileTime(
  97150.                             WORD nDosDate, WORD nDosTime, FILETIME * lpFileTime);
  97151. extern __declspec(dllimport) HRESULT __stdcall CoFileTimeNow( FILETIME * lpFileTime );
  97152.  
  97153.                extern __declspec(dllimport) HRESULT __stdcall CoRegisterMessageFilter( LPMESSAGEFILTER lpMessageFilter,
  97154.                                                               LPMESSAGEFILTER * lplpMessageFilter );
  97155.  
  97156.  
  97157.  
  97158. extern __declspec(dllimport) HRESULT __stdcall CoRegisterChannelHook( const GUID * ExtensionUuid, IChannelHook *pChannelHook );
  97159.  
  97160.  
  97161.  
  97162.  
  97163.  
  97164.                extern __declspec(dllimport) HRESULT __stdcall CoTreatAsClass( const IID * clsidOld, const IID * clsidNew);
  97165.  
  97166.  
  97167.  
  97168.  
  97169. extern __declspec(dllimport) HRESULT __stdcall CreateDataAdviseHolder( LPDATAADVISEHOLDER * ppDAHolder);
  97170.  
  97171. extern __declspec(dllimport) HRESULT __stdcall CreateDataCache( LPUNKNOWN pUnkOuter, const IID * rclsid,
  97172.                                const IID * iid, LPVOID * ppv);
  97173.  
  97174.  
  97175.  
  97176.  
  97177.  
  97178.                extern __declspec(dllimport) HRESULT __stdcall StgOpenAsyncDocfileOnIFillLockBytes( IFillLockBytes *pflb,
  97179.                   DWORD grfMode,
  97180.                   DWORD asyncFlags,
  97181.                       IStorage** ppstgOpen);
  97182.  
  97183.                extern __declspec(dllimport) HRESULT __stdcall StgGetIFillLockBytesOnILockBytes( ILockBytes *pilb,
  97184.                       IFillLockBytes** ppflb);
  97185.  
  97186.                extern __declspec(dllimport) HRESULT __stdcall StgGetIFillLockBytesOnFile( OLECHAR const *pwcsName,
  97187.                       IFillLockBytes** ppflb);
  97188.  
  97189.                extern __declspec(dllimport) HRESULT __stdcall StgOpenLayoutDocfile( OLECHAR const *pwcsDfName,
  97190.                   DWORD grfMode,
  97191.                   DWORD reserved,
  97192.                       IStorage** ppstgOpen);
  97193.  
  97194.  
  97195. #pragma endregion
  97196.  
  97197. #pragma region Desktop Partition
  97198.  
  97199.  
  97200. extern __declspec(dllimport) HRESULT __stdcall CoInstall(
  97201.          IBindCtx * pbc,
  97202.          DWORD dwFlags,
  97203.          uCLSSPEC * pClassSpec,
  97204.          QUERYCONTEXT * pQuery,
  97205.          LPWSTR pszCodeBase);
  97206.  
  97207.  
  97208. #pragma endregion
  97209.  
  97210. #pragma region PC Application Partition
  97211.  
  97212.  
  97213.  
  97214.  
  97215.  
  97216.  
  97217.  extern __declspec(dllimport) HRESULT __stdcall BindMoniker( LPMONIKER pmk, DWORD grfOpt, const IID * iidResult, LPVOID * ppvResult);
  97218.  
  97219.                extern __declspec(dllimport) HRESULT __stdcall CoGetObject( LPCWSTR pszName, BIND_OPTS *pBindOptions, const IID * riid, void **ppv);
  97220.                extern __declspec(dllimport) HRESULT __stdcall MkParseDisplayName( LPBC pbc, LPCOLESTR szUserName,
  97221.                       ULONG * pchEaten, LPMONIKER * ppmk);
  97222.                extern __declspec(dllimport) HRESULT __stdcall MonikerRelativePathTo( LPMONIKER pmkSrc, LPMONIKER pmkDest, LPMONIKER
  97223.                    * ppmkRelPath, BOOL dwReserved);
  97224.                extern __declspec(dllimport) HRESULT __stdcall MonikerCommonPrefixWith( LPMONIKER pmkThis, LPMONIKER pmkOther,
  97225.                          LPMONIKER * ppmkCommon);
  97226.                extern __declspec(dllimport) HRESULT __stdcall CreateBindCtx( DWORD reserved, LPBC * ppbc);
  97227.                extern __declspec(dllimport) HRESULT __stdcall CreateGenericComposite( LPMONIKER pmkFirst, LPMONIKER pmkRest,
  97228.                          LPMONIKER * ppmkComposite);
  97229.                extern __declspec(dllimport) HRESULT __stdcall GetClassFile ( LPCOLESTR szFilename, CLSID * pclsid);
  97230.  
  97231.                extern __declspec(dllimport) HRESULT __stdcall CreateClassMoniker( const IID * rclsid, LPMONIKER * ppmk);
  97232.  
  97233.                extern __declspec(dllimport) HRESULT __stdcall CreateFileMoniker( LPCOLESTR lpszPathName, LPMONIKER * ppmk);
  97234.  
  97235.                extern __declspec(dllimport) HRESULT __stdcall CreateItemMoniker( LPCOLESTR lpszDelim, LPCOLESTR lpszItem,
  97236.                                    LPMONIKER * ppmk);
  97237.                extern __declspec(dllimport) HRESULT __stdcall CreateAntiMoniker( LPMONIKER * ppmk);
  97238.                extern __declspec(dllimport) HRESULT __stdcall CreatePointerMoniker( LPUNKNOWN punk, LPMONIKER * ppmk);
  97239.                extern __declspec(dllimport) HRESULT __stdcall CreateObjrefMoniker( LPUNKNOWN punk, LPMONIKER * ppmk);
  97240.  
  97241.  
  97242. #pragma endregion
  97243.  
  97244. #pragma region Desktop Partition
  97245.  
  97246.  
  97247.  extern __declspec(dllimport) HRESULT __stdcall GetRunningObjectTable( DWORD reserved, LPRUNNINGOBJECTTABLE * pprot);
  97248.  
  97249.  
  97250. #pragma endregion
  97251.  
  97252.  
  97253. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 1 3
  97254. #pragma option push -b -a8 -pc -A- -w-pun
  97255. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  97256. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  97257. #pragma option push -b -a8 -pc -A- -w-pun
  97258. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  97259. #pragma option pop
  97260. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 2 3
  97261.  
  97262. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  97263. #pragma option push -b -a8 -pc -A- -w-pun
  97264. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  97265. #pragma option pop
  97266. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 2 3
  97267.  
  97268.  
  97269.  
  97270.  
  97271.  
  97272.  
  97273.  
  97274. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  97275. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 2 3
  97276.  
  97277. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  97278. #pragma option push -b -a8 -pc -A- -w-pun
  97279. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  97280. #pragma option pop
  97281. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 2 3
  97282. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  97283. typedef struct IPersistMoniker IPersistMoniker;
  97284.  
  97285.  
  97286.  
  97287.  
  97288.  
  97289.  
  97290. typedef struct IMonikerProp IMonikerProp;
  97291.  
  97292.  
  97293.  
  97294.  
  97295.  
  97296.  
  97297. typedef struct IBindProtocol IBindProtocol;
  97298.  
  97299.  
  97300.  
  97301.  
  97302.  
  97303.  
  97304. typedef struct IBinding IBinding;
  97305.  
  97306.  
  97307.  
  97308.  
  97309.  
  97310.  
  97311. typedef struct IBindStatusCallback IBindStatusCallback;
  97312.  
  97313.  
  97314.  
  97315.  
  97316.  
  97317.  
  97318. typedef struct IBindStatusCallbackEx IBindStatusCallbackEx;
  97319.  
  97320.  
  97321.  
  97322.  
  97323.  
  97324.  
  97325. typedef struct IAuthenticate IAuthenticate;
  97326.  
  97327.  
  97328.  
  97329.  
  97330.  
  97331.  
  97332. typedef struct IAuthenticateEx IAuthenticateEx;
  97333.  
  97334.  
  97335.  
  97336.  
  97337.  
  97338.  
  97339. typedef struct IHttpNegotiate IHttpNegotiate;
  97340.  
  97341.  
  97342.  
  97343.  
  97344.  
  97345.  
  97346. typedef struct IHttpNegotiate2 IHttpNegotiate2;
  97347.  
  97348.  
  97349.  
  97350.  
  97351.  
  97352.  
  97353. typedef struct IHttpNegotiate3 IHttpNegotiate3;
  97354.  
  97355.  
  97356.  
  97357.  
  97358.  
  97359.  
  97360. typedef struct IWinInetFileStream IWinInetFileStream;
  97361.  
  97362.  
  97363.  
  97364.  
  97365.  
  97366.  
  97367. typedef struct IWindowForBindingUI IWindowForBindingUI;
  97368.  
  97369.  
  97370.  
  97371.  
  97372.  
  97373.  
  97374. typedef struct ICodeInstall ICodeInstall;
  97375.  
  97376.  
  97377.  
  97378.  
  97379.  
  97380.  
  97381. typedef struct IUri IUri;
  97382.  
  97383.  
  97384.  
  97385.  
  97386.  
  97387.  
  97388. typedef struct IUriContainer IUriContainer;
  97389.  
  97390.  
  97391.  
  97392.  
  97393.  
  97394.  
  97395. typedef struct IUriBuilder IUriBuilder;
  97396.  
  97397.  
  97398.  
  97399.  
  97400.  
  97401.  
  97402. typedef struct IUriBuilderFactory IUriBuilderFactory;
  97403.  
  97404.  
  97405.  
  97406.  
  97407.  
  97408.  
  97409. typedef struct IWinInetInfo IWinInetInfo;
  97410.  
  97411.  
  97412.  
  97413.  
  97414.  
  97415.  
  97416. typedef struct IHttpSecurity IHttpSecurity;
  97417.  
  97418.  
  97419.  
  97420.  
  97421.  
  97422.  
  97423. typedef struct IWinInetHttpInfo IWinInetHttpInfo;
  97424.  
  97425.  
  97426.  
  97427.  
  97428.  
  97429.  
  97430. typedef struct IWinInetHttpTimeouts IWinInetHttpTimeouts;
  97431.  
  97432.  
  97433.  
  97434.  
  97435.  
  97436.  
  97437. typedef struct IWinInetCacheHints IWinInetCacheHints;
  97438.  
  97439.  
  97440.  
  97441.  
  97442.  
  97443.  
  97444. typedef struct IWinInetCacheHints2 IWinInetCacheHints2;
  97445.  
  97446.  
  97447.  
  97448.  
  97449.  
  97450.  
  97451. typedef struct IBindHost IBindHost;
  97452.  
  97453.  
  97454.  
  97455.  
  97456.  
  97457.  
  97458. typedef struct IInternet IInternet;
  97459.  
  97460.  
  97461.  
  97462.  
  97463.  
  97464.  
  97465. typedef struct IInternetBindInfo IInternetBindInfo;
  97466.  
  97467.  
  97468.  
  97469.  
  97470.  
  97471.  
  97472. typedef struct IInternetBindInfoEx IInternetBindInfoEx;
  97473.  
  97474.  
  97475.  
  97476.  
  97477.  
  97478.  
  97479. typedef struct IInternetProtocolRoot IInternetProtocolRoot;
  97480.  
  97481.  
  97482.  
  97483.  
  97484.  
  97485.  
  97486. typedef struct IInternetProtocol IInternetProtocol;
  97487.  
  97488.  
  97489.  
  97490.  
  97491.  
  97492.  
  97493. typedef struct IInternetProtocolEx IInternetProtocolEx;
  97494.  
  97495.  
  97496.  
  97497.  
  97498.  
  97499.  
  97500. typedef struct IInternetProtocolSink IInternetProtocolSink;
  97501.  
  97502.  
  97503.  
  97504.  
  97505.  
  97506.  
  97507. typedef struct IInternetProtocolSinkStackable IInternetProtocolSinkStackable;
  97508.  
  97509.  
  97510.  
  97511.  
  97512.  
  97513.  
  97514. typedef struct IInternetSession IInternetSession;
  97515.  
  97516.  
  97517.  
  97518.  
  97519.  
  97520.  
  97521. typedef struct IInternetThreadSwitch IInternetThreadSwitch;
  97522.  
  97523.  
  97524.  
  97525.  
  97526.  
  97527.  
  97528. typedef struct IInternetPriority IInternetPriority;
  97529.  
  97530.  
  97531.  
  97532.  
  97533.  
  97534.  
  97535. typedef struct IInternetProtocolInfo IInternetProtocolInfo;
  97536.  
  97537.  
  97538.  
  97539.  
  97540.  
  97541.  
  97542. typedef struct IInternetSecurityMgrSite IInternetSecurityMgrSite;
  97543.  
  97544.  
  97545.  
  97546.  
  97547.  
  97548.  
  97549. typedef struct IInternetSecurityManager IInternetSecurityManager;
  97550.  
  97551.  
  97552.  
  97553.  
  97554.  
  97555.  
  97556. typedef struct IInternetSecurityManagerEx IInternetSecurityManagerEx;
  97557.  
  97558.  
  97559.  
  97560.  
  97561.  
  97562.  
  97563. typedef struct IInternetSecurityManagerEx2 IInternetSecurityManagerEx2;
  97564.  
  97565.  
  97566.  
  97567.  
  97568.  
  97569.  
  97570. typedef struct IZoneIdentifier IZoneIdentifier;
  97571.  
  97572.  
  97573.  
  97574.  
  97575.  
  97576.  
  97577. typedef struct IZoneIdentifier2 IZoneIdentifier2;
  97578.  
  97579.  
  97580.  
  97581.  
  97582.  
  97583.  
  97584. typedef struct IInternetHostSecurityManager IInternetHostSecurityManager;
  97585.  
  97586.  
  97587.  
  97588.  
  97589.  
  97590.  
  97591. typedef struct IInternetZoneManager IInternetZoneManager;
  97592.  
  97593.  
  97594.  
  97595.  
  97596.  
  97597.  
  97598. typedef struct IInternetZoneManagerEx IInternetZoneManagerEx;
  97599.  
  97600.  
  97601.  
  97602.  
  97603.  
  97604.  
  97605. typedef struct IInternetZoneManagerEx2 IInternetZoneManagerEx2;
  97606.  
  97607.  
  97608.  
  97609.  
  97610.  
  97611.  
  97612. typedef struct ISoftDistExt ISoftDistExt;
  97613.  
  97614.  
  97615.  
  97616.  
  97617.  
  97618.  
  97619. typedef struct ICatalogFileInfo ICatalogFileInfo;
  97620.  
  97621.  
  97622.  
  97623.  
  97624.  
  97625.  
  97626. typedef struct IDataFilter IDataFilter;
  97627.  
  97628.  
  97629.  
  97630.  
  97631.  
  97632.  
  97633. typedef struct IEncodingFilterFactory IEncodingFilterFactory;
  97634.  
  97635.  
  97636.  
  97637.  
  97638.  
  97639.  
  97640. typedef struct IWrappedProtocol IWrappedProtocol;
  97641.  
  97642.  
  97643.  
  97644.  
  97645.  
  97646.  
  97647. typedef struct IGetBindHandle IGetBindHandle;
  97648.  
  97649.  
  97650.  
  97651.  
  97652.  
  97653.  
  97654. typedef struct IBindCallbackRedirect IBindCallbackRedirect;
  97655.  
  97656.  
  97657.  
  97658.  
  97659.  
  97660.  
  97661. typedef struct IBindHttpSecurity IBindHttpSecurity;
  97662.  
  97663.  
  97664.  
  97665.  
  97666.  
  97667.  
  97668. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 1 3
  97669. #pragma option push -b -a8 -pc -A- -w-pun
  97670. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  97671. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  97672. #pragma option push -b -a8 -pc -A- -w-pun
  97673. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  97674. #pragma option pop
  97675. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97676.  
  97677. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  97678. #pragma option push -b -a8 -pc -A- -w-pun
  97679. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  97680. #pragma option pop
  97681. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97682.  
  97683.  
  97684.  
  97685.  
  97686.  
  97687.  
  97688.  
  97689. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  97690. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97691.  
  97692. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  97693. #pragma option push -b -a8 -pc -A- -w-pun
  97694. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  97695. #pragma option pop
  97696. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97697. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  97698. #pragma option pop
  97699. # 429 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 2 3
  97700.  
  97701. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 1 3
  97702. #pragma option push -b -a8 -pc -A- -w-pun
  97703. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  97704. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  97705. #pragma option push -b -a8 -pc -A- -w-pun
  97706. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  97707. #pragma option pop
  97708. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 2 3
  97709.  
  97710. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  97711. #pragma option push -b -a8 -pc -A- -w-pun
  97712. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  97713. #pragma option pop
  97714. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 2 3
  97715.  
  97716.  
  97717.  
  97718.  
  97719.  
  97720.  
  97721.  
  97722. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  97723. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 2 3
  97724.  
  97725. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  97726. #pragma option push -b -a8 -pc -A- -w-pun
  97727. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  97728. #pragma option pop
  97729. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 2 3
  97730. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  97731. typedef struct IOleAdviseHolder IOleAdviseHolder;
  97732.  
  97733.  
  97734.  
  97735.  
  97736.  
  97737.  
  97738. typedef struct IOleCache IOleCache;
  97739.  
  97740.  
  97741.  
  97742.  
  97743.  
  97744.  
  97745. typedef struct IOleCache2 IOleCache2;
  97746.  
  97747.  
  97748.  
  97749.  
  97750.  
  97751.  
  97752. typedef struct IOleCacheControl IOleCacheControl;
  97753.  
  97754.  
  97755.  
  97756.  
  97757.  
  97758.  
  97759. typedef struct IParseDisplayName IParseDisplayName;
  97760.  
  97761.  
  97762.  
  97763.  
  97764.  
  97765.  
  97766. typedef struct IOleContainer IOleContainer;
  97767.  
  97768.  
  97769.  
  97770.  
  97771.  
  97772.  
  97773. typedef struct IOleClientSite IOleClientSite;
  97774.  
  97775.  
  97776.  
  97777.  
  97778.  
  97779.  
  97780. typedef struct IOleObject IOleObject;
  97781.  
  97782.  
  97783.  
  97784.  
  97785.  
  97786.  
  97787. typedef struct IOleWindow IOleWindow;
  97788.  
  97789.  
  97790.  
  97791.  
  97792.  
  97793.  
  97794. typedef struct IOleLink IOleLink;
  97795.  
  97796.  
  97797.  
  97798.  
  97799.  
  97800.  
  97801. typedef struct IOleItemContainer IOleItemContainer;
  97802.  
  97803.  
  97804.  
  97805.  
  97806.  
  97807.  
  97808. typedef struct IOleInPlaceUIWindow IOleInPlaceUIWindow;
  97809.  
  97810.  
  97811.  
  97812.  
  97813.  
  97814.  
  97815. typedef struct IOleInPlaceActiveObject IOleInPlaceActiveObject;
  97816.  
  97817.  
  97818.  
  97819.  
  97820.  
  97821.  
  97822. typedef struct IOleInPlaceFrame IOleInPlaceFrame;
  97823.  
  97824.  
  97825.  
  97826.  
  97827.  
  97828.  
  97829. typedef struct IOleInPlaceObject IOleInPlaceObject;
  97830.  
  97831.  
  97832.  
  97833.  
  97834.  
  97835.  
  97836. typedef struct IOleInPlaceSite IOleInPlaceSite;
  97837.  
  97838.  
  97839.  
  97840.  
  97841.  
  97842.  
  97843. typedef struct IContinue IContinue;
  97844.  
  97845.  
  97846.  
  97847.  
  97848.  
  97849.  
  97850. typedef struct IViewObject IViewObject;
  97851.  
  97852.  
  97853.  
  97854.  
  97855.  
  97856.  
  97857. typedef struct IViewObject2 IViewObject2;
  97858.  
  97859.  
  97860.  
  97861.  
  97862.  
  97863.  
  97864. typedef struct IDropSource IDropSource;
  97865.  
  97866.  
  97867.  
  97868.  
  97869.  
  97870.  
  97871. typedef struct IDropTarget IDropTarget;
  97872.  
  97873.  
  97874.  
  97875.  
  97876.  
  97877.  
  97878. typedef struct IDropSourceNotify IDropSourceNotify;
  97879.  
  97880.  
  97881.  
  97882.  
  97883.  
  97884.  
  97885. typedef struct IEnterpriseDropTarget IEnterpriseDropTarget;
  97886.  
  97887.  
  97888.  
  97889.  
  97890.  
  97891.  
  97892. typedef struct IEnumOLEVERB IEnumOLEVERB;
  97893.  
  97894.  
  97895.  
  97896.  
  97897.  
  97898.  
  97899. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 1 3
  97900. #pragma option push -b -a8 -pc -A- -w-pun
  97901. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  97902. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  97903. #pragma option push -b -a8 -pc -A- -w-pun
  97904. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  97905. #pragma option pop
  97906. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97907.  
  97908. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  97909. #pragma option push -b -a8 -pc -A- -w-pun
  97910. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  97911. #pragma option pop
  97912. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97913.  
  97914.  
  97915.  
  97916.  
  97917.  
  97918.  
  97919.  
  97920. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  97921. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97922.  
  97923. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  97924. #pragma option push -b -a8 -pc -A- -w-pun
  97925. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  97926. #pragma option pop
  97927. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  97928. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  97929. #pragma option pop
  97930. # 212 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 2 3
  97931. # 236 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  97932. #pragma region Desktop Family or OneCore Family
  97933.  
  97934.  
  97935.  
  97936.  
  97937.  
  97938. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0000_v0_0_c_ifspec;
  97939. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0000_v0_0_s_ifspec;
  97940.  
  97941.  
  97942.  
  97943.  
  97944.  
  97945.  
  97946.  
  97947. typedef IOleAdviseHolder *LPOLEADVISEHOLDER;
  97948.  
  97949.  
  97950. extern const IID IID_IOleAdviseHolder;
  97951. # 288 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  97952.     typedef struct IOleAdviseHolderVtbl
  97953.     {
  97954.  
  97955.  
  97956.         HRESULT ( __stdcall *QueryInterface )(
  97957.             IOleAdviseHolder * This,
  97958.                        const IID * riid,
  97959.  
  97960.                           void **ppvObject);
  97961.  
  97962.         ULONG ( __stdcall *AddRef )(
  97963.             IOleAdviseHolder * This);
  97964.  
  97965.         ULONG ( __stdcall *Release )(
  97966.             IOleAdviseHolder * This);
  97967.  
  97968.         HRESULT ( __stdcall *Advise )(
  97969.             IOleAdviseHolder * This,
  97970.  
  97971.                   IAdviseSink *pAdvise,
  97972.  
  97973.                    DWORD *pdwConnection);
  97974.  
  97975.         HRESULT ( __stdcall *Unadvise )(
  97976.             IOleAdviseHolder * This,
  97977.                        DWORD dwConnection);
  97978.  
  97979.         HRESULT ( __stdcall *EnumAdvise )(
  97980.             IOleAdviseHolder * This,
  97981.  
  97982.                       IEnumSTATDATA **ppenumAdvise);
  97983.  
  97984.         HRESULT ( __stdcall *SendOnRename )(
  97985.             IOleAdviseHolder * This,
  97986.  
  97987.                   IMoniker *pmk);
  97988.  
  97989.         HRESULT ( __stdcall *SendOnSave )(
  97990.             IOleAdviseHolder * This);
  97991.  
  97992.         HRESULT ( __stdcall *SendOnClose )(
  97993.             IOleAdviseHolder * This);
  97994.  
  97995.  
  97996.     } IOleAdviseHolderVtbl;
  97997.  
  97998.     struct IOleAdviseHolder
  97999.     {
  98000.                    struct IOleAdviseHolderVtbl *lpVtbl;
  98001.     };
  98002. # 387 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98003. #pragma endregion
  98004. #pragma region Application Family or OneCore Family
  98005.  
  98006.  
  98007.  
  98008. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0001_v0_0_c_ifspec;
  98009. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0001_v0_0_s_ifspec;
  98010.  
  98011.  
  98012.  
  98013.  
  98014.  
  98015.  
  98016.  
  98017. typedef IOleCache *LPOLECACHE;
  98018.  
  98019.  
  98020. extern const IID IID_IOleCache;
  98021. # 436 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98022.     typedef struct IOleCacheVtbl
  98023.     {
  98024.  
  98025.  
  98026.         HRESULT ( __stdcall *QueryInterface )(
  98027.                       IOleCache * This,
  98028.                                  const IID * riid,
  98029.  
  98030.                           void **ppvObject);
  98031.  
  98032.         ULONG ( __stdcall *AddRef )(
  98033.                       IOleCache * This);
  98034.  
  98035.         ULONG ( __stdcall *Release )(
  98036.                       IOleCache * This);
  98037.  
  98038.         HRESULT ( __stdcall *Cache )(
  98039.                       IOleCache * This,
  98040.                                              FORMATETC *pformatetc,
  98041.                        DWORD advf,
  98042.                                    DWORD *pdwConnection);
  98043.  
  98044.         HRESULT ( __stdcall *Uncache )(
  98045.                       IOleCache * This,
  98046.                        DWORD dwConnection);
  98047.  
  98048.         HRESULT ( __stdcall *EnumCache )(
  98049.                       IOleCache * This,
  98050.                                              IEnumSTATDATA **ppenumSTATDATA);
  98051.  
  98052.         HRESULT ( __stdcall *InitCache )(
  98053.                       IOleCache * This,
  98054.                                              IDataObject *pDataObject);
  98055.  
  98056.         HRESULT ( __stdcall *SetData )(
  98057.                       IOleCache * This,
  98058.                                              FORMATETC *pformatetc,
  98059.                                              STGMEDIUM *pmedium,
  98060.                        BOOL fRelease);
  98061.  
  98062.  
  98063.     } IOleCacheVtbl;
  98064.  
  98065.     struct IOleCache
  98066.     {
  98067.                    struct IOleCacheVtbl *lpVtbl;
  98068.     };
  98069. # 531 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98070. typedef IOleCache2 *LPOLECACHE2;
  98071. # 551 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98072. typedef
  98073. enum tagDISCARDCACHE
  98074.     {
  98075.         DISCARDCACHE_SAVEIFDIRTY = 0,
  98076.         DISCARDCACHE_NOSAVE = 1
  98077.     } DISCARDCACHE;
  98078.  
  98079.  
  98080. extern const IID IID_IOleCache2;
  98081. # 583 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98082.     typedef struct IOleCache2Vtbl
  98083.     {
  98084.  
  98085.  
  98086.         HRESULT ( __stdcall *QueryInterface )(
  98087.                       IOleCache2 * This,
  98088.                                  const IID * riid,
  98089.  
  98090.                           void **ppvObject);
  98091.  
  98092.         ULONG ( __stdcall *AddRef )(
  98093.                       IOleCache2 * This);
  98094.  
  98095.         ULONG ( __stdcall *Release )(
  98096.                       IOleCache2 * This);
  98097.  
  98098.         HRESULT ( __stdcall *Cache )(
  98099.                       IOleCache2 * This,
  98100.                                              FORMATETC *pformatetc,
  98101.                        DWORD advf,
  98102.                                    DWORD *pdwConnection);
  98103.  
  98104.         HRESULT ( __stdcall *Uncache )(
  98105.                       IOleCache2 * This,
  98106.                        DWORD dwConnection);
  98107.  
  98108.         HRESULT ( __stdcall *EnumCache )(
  98109.                       IOleCache2 * This,
  98110.                                              IEnumSTATDATA **ppenumSTATDATA);
  98111.  
  98112.         HRESULT ( __stdcall *InitCache )(
  98113.                       IOleCache2 * This,
  98114.                                              IDataObject *pDataObject);
  98115.  
  98116.         HRESULT ( __stdcall *SetData )(
  98117.                       IOleCache2 * This,
  98118.                                              FORMATETC *pformatetc,
  98119.                                              STGMEDIUM *pmedium,
  98120.                        BOOL fRelease);
  98121.  
  98122.                       HRESULT ( __stdcall *UpdateCache )(
  98123.             IOleCache2 * This,
  98124.  
  98125.                   LPDATAOBJECT pDataObject,
  98126.  
  98127.                   DWORD grfUpdf,
  98128.  
  98129.                         LPVOID pReserved);
  98130.  
  98131.         HRESULT ( __stdcall *DiscardCache )(
  98132.                       IOleCache2 * This,
  98133.                        DWORD dwDiscardOptions);
  98134.  
  98135.  
  98136.     } IOleCache2Vtbl;
  98137.  
  98138.     struct IOleCache2
  98139.     {
  98140.                    struct IOleCache2Vtbl *lpVtbl;
  98141.     };
  98142. # 688 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98143.                 HRESULT __stdcall IOleCache2_RemoteUpdateCache_Proxy(
  98144.               IOleCache2 * This,
  98145.                              LPDATAOBJECT pDataObject,
  98146.                DWORD grfUpdf,
  98147.                LONG_PTR pReserved);
  98148.  
  98149.  
  98150. void __stdcall IOleCache2_RemoteUpdateCache_Stub(
  98151.     IRpcStubBuffer *This,
  98152.     IRpcChannelBuffer *_pRpcChannelBuffer,
  98153.     PRPC_MESSAGE _pRpcMessage,
  98154.     DWORD *_pdwStubPhase);
  98155. # 710 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98156. #pragma endregion
  98157. #pragma region Desktop Family or OneCore Family
  98158.  
  98159.  
  98160.  
  98161. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0003_v0_0_c_ifspec;
  98162. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0003_v0_0_s_ifspec;
  98163.  
  98164.  
  98165.  
  98166.  
  98167.  
  98168.  
  98169.  
  98170. typedef IOleCacheControl *LPOLECACHECONTROL;
  98171.  
  98172.  
  98173. extern const IID IID_IOleCacheControl;
  98174. # 745 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98175.     typedef struct IOleCacheControlVtbl
  98176.     {
  98177.  
  98178.  
  98179.         HRESULT ( __stdcall *QueryInterface )(
  98180.                       IOleCacheControl * This,
  98181.                                  const IID * riid,
  98182.  
  98183.                           void **ppvObject);
  98184.  
  98185.         ULONG ( __stdcall *AddRef )(
  98186.                       IOleCacheControl * This);
  98187.  
  98188.         ULONG ( __stdcall *Release )(
  98189.                       IOleCacheControl * This);
  98190.  
  98191.         HRESULT ( __stdcall *OnRun )(
  98192.                       IOleCacheControl * This,
  98193.                           LPDATAOBJECT pDataObject);
  98194.  
  98195.         HRESULT ( __stdcall *OnStop )(
  98196.                       IOleCacheControl * This);
  98197.  
  98198.  
  98199.     } IOleCacheControlVtbl;
  98200.  
  98201.     struct IOleCacheControl
  98202.     {
  98203.                    struct IOleCacheControlVtbl *lpVtbl;
  98204.     };
  98205. # 814 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98206. typedef IParseDisplayName *LPPARSEDISPLAYNAME;
  98207.  
  98208.  
  98209. extern const IID IID_IParseDisplayName;
  98210. # 836 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98211.     typedef struct IParseDisplayNameVtbl
  98212.     {
  98213.  
  98214.  
  98215.         HRESULT ( __stdcall *QueryInterface )(
  98216.                       IParseDisplayName * This,
  98217.                                  const IID * riid,
  98218.  
  98219.                           void **ppvObject);
  98220.  
  98221.         ULONG ( __stdcall *AddRef )(
  98222.                       IParseDisplayName * This);
  98223.  
  98224.         ULONG ( __stdcall *Release )(
  98225.                       IParseDisplayName * This);
  98226.  
  98227.         HRESULT ( __stdcall *ParseDisplayName )(
  98228.                       IParseDisplayName * This,
  98229.                                              IBindCtx *pbc,
  98230.                                  LPOLESTR pszDisplayName,
  98231.                                    ULONG *pchEaten,
  98232.                                              IMoniker **ppmkOut);
  98233.  
  98234.  
  98235.     } IParseDisplayNameVtbl;
  98236.  
  98237.     struct IParseDisplayName
  98238.     {
  98239.                    struct IParseDisplayNameVtbl *lpVtbl;
  98240.     };
  98241. # 902 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98242. typedef IOleContainer *LPOLECONTAINER;
  98243.  
  98244.  
  98245. extern const IID IID_IOleContainer;
  98246. # 925 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98247.     typedef struct IOleContainerVtbl
  98248.     {
  98249.  
  98250.  
  98251.         HRESULT ( __stdcall *QueryInterface )(
  98252.                       IOleContainer * This,
  98253.                                  const IID * riid,
  98254.  
  98255.                           void **ppvObject);
  98256.  
  98257.         ULONG ( __stdcall *AddRef )(
  98258.                       IOleContainer * This);
  98259.  
  98260.         ULONG ( __stdcall *Release )(
  98261.                       IOleContainer * This);
  98262.  
  98263.         HRESULT ( __stdcall *ParseDisplayName )(
  98264.                       IOleContainer * This,
  98265.                                              IBindCtx *pbc,
  98266.                                  LPOLESTR pszDisplayName,
  98267.                                    ULONG *pchEaten,
  98268.                                              IMoniker **ppmkOut);
  98269.  
  98270.         HRESULT ( __stdcall *EnumObjects )(
  98271.                       IOleContainer * This,
  98272.                        DWORD grfFlags,
  98273.                                              IEnumUnknown **ppenum);
  98274.  
  98275.         HRESULT ( __stdcall *LockContainer )(
  98276.                       IOleContainer * This,
  98277.                        BOOL fLock);
  98278.  
  98279.  
  98280.     } IOleContainerVtbl;
  98281.  
  98282.     struct IOleContainer
  98283.     {
  98284.                    struct IOleContainerVtbl *lpVtbl;
  98285.     };
  98286. # 1007 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98287. typedef IOleClientSite *LPOLECLIENTSITE;
  98288.  
  98289.  
  98290. extern const IID IID_IOleClientSite;
  98291. # 1040 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98292.     typedef struct IOleClientSiteVtbl
  98293.     {
  98294.  
  98295.  
  98296.         HRESULT ( __stdcall *QueryInterface )(
  98297.                       IOleClientSite * This,
  98298.                                  const IID * riid,
  98299.  
  98300.                           void **ppvObject);
  98301.  
  98302.         ULONG ( __stdcall *AddRef )(
  98303.                       IOleClientSite * This);
  98304.  
  98305.         ULONG ( __stdcall *Release )(
  98306.                       IOleClientSite * This);
  98307.  
  98308.         HRESULT ( __stdcall *SaveObject )(
  98309.                       IOleClientSite * This);
  98310.  
  98311.         HRESULT ( __stdcall *GetMoniker )(
  98312.                       IOleClientSite * This,
  98313.                        DWORD dwAssign,
  98314.                        DWORD dwWhichMoniker,
  98315.                                              IMoniker **ppmk);
  98316.  
  98317.         HRESULT ( __stdcall *GetContainer )(
  98318.                       IOleClientSite * This,
  98319.                                              IOleContainer **ppContainer);
  98320.  
  98321.         HRESULT ( __stdcall *ShowObject )(
  98322.                       IOleClientSite * This);
  98323.  
  98324.         HRESULT ( __stdcall *OnShowWindow )(
  98325.                       IOleClientSite * This,
  98326.                        BOOL fShow);
  98327.  
  98328.         HRESULT ( __stdcall *RequestNewObjectLayout )(
  98329.                       IOleClientSite * This);
  98330.  
  98331.  
  98332.     } IOleClientSiteVtbl;
  98333.  
  98334.     struct IOleClientSite
  98335.     {
  98336.                    struct IOleClientSiteVtbl *lpVtbl;
  98337.     };
  98338. # 1137 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98339. typedef IOleObject *LPOLEOBJECT;
  98340.  
  98341. typedef
  98342. enum tagOLEGETMONIKER
  98343.     {
  98344.         OLEGETMONIKER_ONLYIFTHERE = 1,
  98345.         OLEGETMONIKER_FORCEASSIGN = 2,
  98346.         OLEGETMONIKER_UNASSIGN = 3,
  98347.         OLEGETMONIKER_TEMPFORUSER = 4
  98348.     } OLEGETMONIKER;
  98349.  
  98350. typedef
  98351. enum tagOLEWHICHMK
  98352.     {
  98353.         OLEWHICHMK_CONTAINER = 1,
  98354.         OLEWHICHMK_OBJREL = 2,
  98355.         OLEWHICHMK_OBJFULL = 3
  98356.     } OLEWHICHMK;
  98357.  
  98358. typedef
  98359. enum tagUSERCLASSTYPE
  98360.     {
  98361.         USERCLASSTYPE_FULL = 1,
  98362.         USERCLASSTYPE_SHORT = 2,
  98363.         USERCLASSTYPE_APPNAME = 3
  98364.     } USERCLASSTYPE;
  98365.  
  98366. typedef
  98367. enum tagOLEMISC
  98368.     {
  98369.         OLEMISC_RECOMPOSEONRESIZE = 0x1,
  98370.         OLEMISC_ONLYICONIC = 0x2,
  98371.         OLEMISC_INSERTNOTREPLACE = 0x4,
  98372.         OLEMISC_STATIC = 0x8,
  98373.         OLEMISC_CANTLINKINSIDE = 0x10,
  98374.         OLEMISC_CANLINKBYOLE1 = 0x20,
  98375.         OLEMISC_ISLINKOBJECT = 0x40,
  98376.         OLEMISC_INSIDEOUT = 0x80,
  98377.         OLEMISC_ACTIVATEWHENVISIBLE = 0x100,
  98378.         OLEMISC_RENDERINGISDEVICEINDEPENDENT = 0x200,
  98379.         OLEMISC_INVISIBLEATRUNTIME = 0x400,
  98380.         OLEMISC_ALWAYSRUN = 0x800,
  98381.         OLEMISC_ACTSLIKEBUTTON = 0x1000,
  98382.         OLEMISC_ACTSLIKELABEL = 0x2000,
  98383.         OLEMISC_NOUIACTIVATE = 0x4000,
  98384.         OLEMISC_ALIGNABLE = 0x8000,
  98385.         OLEMISC_SIMPLEFRAME = 0x10000,
  98386.         OLEMISC_SETCLIENTSITEFIRST = 0x20000,
  98387.         OLEMISC_IMEMODE = 0x40000,
  98388.         OLEMISC_IGNOREACTIVATEWHENVISIBLE = 0x80000,
  98389.         OLEMISC_WANTSTOMENUMERGE = 0x100000,
  98390.         OLEMISC_SUPPORTSMULTILEVELUNDO = 0x200000
  98391.     } OLEMISC;
  98392.  
  98393. typedef
  98394. enum tagOLECLOSE
  98395.     {
  98396.         OLECLOSE_SAVEIFDIRTY = 0,
  98397.         OLECLOSE_NOSAVE = 1,
  98398.         OLECLOSE_PROMPTSAVE = 2
  98399.     } OLECLOSE;
  98400.  
  98401.  
  98402. extern const IID IID_IOleObject;
  98403. # 1291 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98404.     typedef struct IOleObjectVtbl
  98405.     {
  98406.  
  98407.  
  98408.         HRESULT ( __stdcall *QueryInterface )(
  98409.                       IOleObject * This,
  98410.                                  const IID * riid,
  98411.  
  98412.                           void **ppvObject);
  98413.  
  98414.         ULONG ( __stdcall *AddRef )(
  98415.                       IOleObject * This);
  98416.  
  98417.         ULONG ( __stdcall *Release )(
  98418.                       IOleObject * This);
  98419.  
  98420.         HRESULT ( __stdcall *SetClientSite )(
  98421.                       IOleObject * This,
  98422.                                              IOleClientSite *pClientSite);
  98423.  
  98424.         HRESULT ( __stdcall *GetClientSite )(
  98425.                       IOleObject * This,
  98426.                                              IOleClientSite **ppClientSite);
  98427.  
  98428.         HRESULT ( __stdcall *SetHostNames )(
  98429.                       IOleObject * This,
  98430.                                  LPCOLESTR szContainerApp,
  98431.                                              LPCOLESTR szContainerObj);
  98432.  
  98433.         HRESULT ( __stdcall *Close )(
  98434.                       IOleObject * This,
  98435.                        DWORD dwSaveOption);
  98436.  
  98437.         HRESULT ( __stdcall *SetMoniker )(
  98438.                       IOleObject * This,
  98439.                        DWORD dwWhichMoniker,
  98440.                                              IMoniker *pmk);
  98441.  
  98442.         HRESULT ( __stdcall *GetMoniker )(
  98443.                       IOleObject * This,
  98444.                        DWORD dwAssign,
  98445.                        DWORD dwWhichMoniker,
  98446.                                              IMoniker **ppmk);
  98447.  
  98448.         HRESULT ( __stdcall *InitFromData )(
  98449.                       IOleObject * This,
  98450.                                              IDataObject *pDataObject,
  98451.                        BOOL fCreation,
  98452.                        DWORD dwReserved);
  98453.  
  98454.         HRESULT ( __stdcall *GetClipboardData )(
  98455.                       IOleObject * This,
  98456.                        DWORD dwReserved,
  98457.                                              IDataObject **ppDataObject);
  98458.  
  98459.         HRESULT ( __stdcall *DoVerb )(
  98460.                       IOleObject * This,
  98461.                        LONG iVerb,
  98462.                                              LPMSG lpmsg,
  98463.                                              IOleClientSite *pActiveSite,
  98464.                        LONG lindex,
  98465.                                  HWND hwndParent,
  98466.                                              LPCRECT lprcPosRect);
  98467.  
  98468.         HRESULT ( __stdcall *EnumVerbs )(
  98469.                       IOleObject * This,
  98470.                                              IEnumOLEVERB **ppEnumOleVerb);
  98471.  
  98472.         HRESULT ( __stdcall *Update )(
  98473.                       IOleObject * This);
  98474.  
  98475.         HRESULT ( __stdcall *IsUpToDate )(
  98476.                       IOleObject * This);
  98477.  
  98478.         HRESULT ( __stdcall *GetUserClassID )(
  98479.                       IOleObject * This,
  98480.                                    CLSID *pClsid);
  98481.  
  98482.         HRESULT ( __stdcall *GetUserType )(
  98483.                       IOleObject * This,
  98484.                        DWORD dwFormOfType,
  98485.                                              LPOLESTR *pszUserType);
  98486.  
  98487.         HRESULT ( __stdcall *SetExtent )(
  98488.                       IOleObject * This,
  98489.                        DWORD dwDrawAspect,
  98490.                                  SIZEL *psizel);
  98491.  
  98492.         HRESULT ( __stdcall *GetExtent )(
  98493.                       IOleObject * This,
  98494.                        DWORD dwDrawAspect,
  98495.                                    SIZEL *psizel);
  98496.  
  98497.         HRESULT ( __stdcall *Advise )(
  98498.                       IOleObject * This,
  98499.                                              IAdviseSink *pAdvSink,
  98500.                                    DWORD *pdwConnection);
  98501.  
  98502.         HRESULT ( __stdcall *Unadvise )(
  98503.                       IOleObject * This,
  98504.                        DWORD dwConnection);
  98505.  
  98506.         HRESULT ( __stdcall *EnumAdvise )(
  98507.                       IOleObject * This,
  98508.                                              IEnumSTATDATA **ppenumAdvise);
  98509.  
  98510.         HRESULT ( __stdcall *GetMiscStatus )(
  98511.                       IOleObject * This,
  98512.                        DWORD dwAspect,
  98513.                                    DWORD *pdwStatus);
  98514.  
  98515.         HRESULT ( __stdcall *SetColorScheme )(
  98516.                       IOleObject * This,
  98517.                                  LOGPALETTE *pLogpal);
  98518.  
  98519.  
  98520.     } IOleObjectVtbl;
  98521.  
  98522.     struct IOleObject
  98523.     {
  98524.                    struct IOleObjectVtbl *lpVtbl;
  98525.     };
  98526. # 1509 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98527. typedef
  98528. enum tagOLERENDER
  98529.     {
  98530.         OLERENDER_NONE = 0,
  98531.         OLERENDER_DRAW = 1,
  98532.         OLERENDER_FORMAT = 2,
  98533.         OLERENDER_ASIS = 3
  98534.     } OLERENDER;
  98535.  
  98536. typedef OLERENDER *LPOLERENDER;
  98537.  
  98538. typedef struct tagOBJECTDESCRIPTOR
  98539.     {
  98540.     ULONG cbSize;
  98541.     CLSID clsid;
  98542.     DWORD dwDrawAspect;
  98543.     SIZEL sizel;
  98544.     POINTL pointl;
  98545.     DWORD dwStatus;
  98546.     DWORD dwFullUserTypeName;
  98547.     DWORD dwSrcOfCopy;
  98548.     } OBJECTDESCRIPTOR;
  98549.  
  98550. typedef struct tagOBJECTDESCRIPTOR *POBJECTDESCRIPTOR;
  98551.  
  98552. typedef struct tagOBJECTDESCRIPTOR *LPOBJECTDESCRIPTOR;
  98553.  
  98554. typedef struct tagOBJECTDESCRIPTOR LINKSRCDESCRIPTOR;
  98555.  
  98556. typedef struct tagOBJECTDESCRIPTOR *PLINKSRCDESCRIPTOR;
  98557.  
  98558. typedef struct tagOBJECTDESCRIPTOR *LPLINKSRCDESCRIPTOR;
  98559.  
  98560.  
  98561.  
  98562. extern RPC_IF_HANDLE IOLETypes_v0_0_c_ifspec;
  98563. extern RPC_IF_HANDLE IOLETypes_v0_0_s_ifspec;
  98564. # 1554 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98565. typedef IOleWindow *LPOLEWINDOW;
  98566.  
  98567.  
  98568. extern const IID IID_IOleWindow;
  98569. # 1576 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98570.     typedef struct IOleWindowVtbl
  98571.     {
  98572.  
  98573.  
  98574.         HRESULT ( __stdcall *QueryInterface )(
  98575.                       IOleWindow * This,
  98576.                                  const IID * riid,
  98577.  
  98578.                           void **ppvObject);
  98579.  
  98580.         ULONG ( __stdcall *AddRef )(
  98581.                       IOleWindow * This);
  98582.  
  98583.         ULONG ( __stdcall *Release )(
  98584.                       IOleWindow * This);
  98585.  
  98586.                            HRESULT ( __stdcall *GetWindow )(
  98587.                       IOleWindow * This,
  98588.                                              HWND *phwnd);
  98589.  
  98590.         HRESULT ( __stdcall *ContextSensitiveHelp )(
  98591.                       IOleWindow * This,
  98592.                        BOOL fEnterMode);
  98593.  
  98594.  
  98595.     } IOleWindowVtbl;
  98596.  
  98597.     struct IOleWindow
  98598.     {
  98599.                    struct IOleWindowVtbl *lpVtbl;
  98600.     };
  98601. # 1646 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98602. typedef IOleLink *LPOLELINK;
  98603.  
  98604. typedef
  98605. enum tagOLEUPDATE
  98606.     {
  98607.         OLEUPDATE_ALWAYS = 1,
  98608.         OLEUPDATE_ONCALL = 3
  98609.     } OLEUPDATE;
  98610.  
  98611. typedef OLEUPDATE *LPOLEUPDATE;
  98612.  
  98613. typedef OLEUPDATE *POLEUPDATE;
  98614.  
  98615. typedef
  98616. enum tagOLELINKBIND
  98617.     {
  98618.         OLELINKBIND_EVENIFCLASSDIFF = 1
  98619.     } OLELINKBIND;
  98620.  
  98621.  
  98622. extern const IID IID_IOleLink;
  98623. # 1712 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98624.     typedef struct IOleLinkVtbl
  98625.     {
  98626.  
  98627.  
  98628.         HRESULT ( __stdcall *QueryInterface )(
  98629.                       IOleLink * This,
  98630.                                  const IID * riid,
  98631.  
  98632.                           void **ppvObject);
  98633.  
  98634.         ULONG ( __stdcall *AddRef )(
  98635.                       IOleLink * This);
  98636.  
  98637.         ULONG ( __stdcall *Release )(
  98638.                       IOleLink * This);
  98639.  
  98640.         HRESULT ( __stdcall *SetUpdateOptions )(
  98641.                       IOleLink * This,
  98642.                        DWORD dwUpdateOpt);
  98643.  
  98644.         HRESULT ( __stdcall *GetUpdateOptions )(
  98645.                       IOleLink * This,
  98646.                                    DWORD *pdwUpdateOpt);
  98647.  
  98648.         HRESULT ( __stdcall *SetSourceMoniker )(
  98649.                       IOleLink * This,
  98650.                                              IMoniker *pmk,
  98651.                                  const IID * rclsid);
  98652.  
  98653.         HRESULT ( __stdcall *GetSourceMoniker )(
  98654.                       IOleLink * This,
  98655.                                              IMoniker **ppmk);
  98656.  
  98657.         HRESULT ( __stdcall *SetSourceDisplayName )(
  98658.                       IOleLink * This,
  98659.                                  LPCOLESTR pszStatusText);
  98660.  
  98661.         HRESULT ( __stdcall *GetSourceDisplayName )(
  98662.                       IOleLink * This,
  98663.                                              LPOLESTR *ppszDisplayName);
  98664.  
  98665.         HRESULT ( __stdcall *BindToSource )(
  98666.                       IOleLink * This,
  98667.                        DWORD bindflags,
  98668.                                              IBindCtx *pbc);
  98669.  
  98670.         HRESULT ( __stdcall *BindIfRunning )(
  98671.                       IOleLink * This);
  98672.  
  98673.         HRESULT ( __stdcall *GetBoundSource )(
  98674.                       IOleLink * This,
  98675.                                              IUnknown **ppunk);
  98676.  
  98677.         HRESULT ( __stdcall *UnbindSource )(
  98678.                       IOleLink * This);
  98679.  
  98680.         HRESULT ( __stdcall *Update )(
  98681.                       IOleLink * This,
  98682.                                              IBindCtx *pbc);
  98683.  
  98684.  
  98685.     } IOleLinkVtbl;
  98686.  
  98687.     struct IOleLink
  98688.     {
  98689.                    struct IOleLinkVtbl *lpVtbl;
  98690.     };
  98691. # 1845 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98692. typedef IOleItemContainer *LPOLEITEMCONTAINER;
  98693.  
  98694. typedef
  98695. enum tagBINDSPEED
  98696.     {
  98697.         BINDSPEED_INDEFINITE = 1,
  98698.         BINDSPEED_MODERATE = 2,
  98699.         BINDSPEED_IMMEDIATE = 3
  98700.     } BINDSPEED;
  98701.  
  98702. typedef
  98703. enum tagOLECONTF
  98704.     {
  98705.         OLECONTF_EMBEDDINGS = 1,
  98706.         OLECONTF_LINKS = 2,
  98707.         OLECONTF_OTHERS = 4,
  98708.         OLECONTF_ONLYUSER = 8,
  98709.         OLECONTF_ONLYIFRUNNING = 16
  98710.     } OLECONTF;
  98711.  
  98712.  
  98713. extern const IID IID_IOleItemContainer;
  98714. # 1895 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98715.     typedef struct IOleItemContainerVtbl
  98716.     {
  98717.  
  98718.  
  98719.         HRESULT ( __stdcall *QueryInterface )(
  98720.                       IOleItemContainer * This,
  98721.                                  const IID * riid,
  98722.  
  98723.                           void **ppvObject);
  98724.  
  98725.         ULONG ( __stdcall *AddRef )(
  98726.                       IOleItemContainer * This);
  98727.  
  98728.         ULONG ( __stdcall *Release )(
  98729.                       IOleItemContainer * This);
  98730.  
  98731.         HRESULT ( __stdcall *ParseDisplayName )(
  98732.                       IOleItemContainer * This,
  98733.                                              IBindCtx *pbc,
  98734.                                  LPOLESTR pszDisplayName,
  98735.                                    ULONG *pchEaten,
  98736.                                              IMoniker **ppmkOut);
  98737.  
  98738.         HRESULT ( __stdcall *EnumObjects )(
  98739.                       IOleItemContainer * This,
  98740.                        DWORD grfFlags,
  98741.                                              IEnumUnknown **ppenum);
  98742.  
  98743.         HRESULT ( __stdcall *LockContainer )(
  98744.                       IOleItemContainer * This,
  98745.                        BOOL fLock);
  98746.  
  98747.         HRESULT ( __stdcall *GetObjectA )(
  98748.                       IOleItemContainer * This,
  98749.                                  LPOLESTR pszItem,
  98750.                        DWORD dwSpeedNeeded,
  98751.                                              IBindCtx *pbc,
  98752.                                  const IID * riid,
  98753.                                                      void **ppvObject);
  98754.  
  98755.         HRESULT ( __stdcall *GetObjectStorage )(
  98756.                       IOleItemContainer * This,
  98757.                                  LPOLESTR pszItem,
  98758.                                              IBindCtx *pbc,
  98759.                                  const IID * riid,
  98760.                                                      void **ppvStorage);
  98761.  
  98762.         HRESULT ( __stdcall *IsRunning )(
  98763.                       IOleItemContainer * This,
  98764.                                  LPOLESTR pszItem);
  98765.  
  98766.  
  98767.     } IOleItemContainerVtbl;
  98768.  
  98769.     struct IOleItemContainer
  98770.     {
  98771.                    struct IOleItemContainerVtbl *lpVtbl;
  98772.     };
  98773. # 2006 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98774. typedef IOleInPlaceUIWindow *LPOLEINPLACEUIWINDOW;
  98775.  
  98776. typedef RECT BORDERWIDTHS;
  98777.  
  98778. typedef LPRECT LPBORDERWIDTHS;
  98779.  
  98780. typedef LPCRECT LPCBORDERWIDTHS;
  98781.  
  98782.  
  98783. extern const IID IID_IOleInPlaceUIWindow;
  98784. # 2041 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98785.     typedef struct IOleInPlaceUIWindowVtbl
  98786.     {
  98787.  
  98788.  
  98789.         HRESULT ( __stdcall *QueryInterface )(
  98790.                       IOleInPlaceUIWindow * This,
  98791.                                  const IID * riid,
  98792.  
  98793.                           void **ppvObject);
  98794.  
  98795.         ULONG ( __stdcall *AddRef )(
  98796.                       IOleInPlaceUIWindow * This);
  98797.  
  98798.         ULONG ( __stdcall *Release )(
  98799.                       IOleInPlaceUIWindow * This);
  98800.  
  98801.                            HRESULT ( __stdcall *GetWindow )(
  98802.                       IOleInPlaceUIWindow * This,
  98803.                                              HWND *phwnd);
  98804.  
  98805.         HRESULT ( __stdcall *ContextSensitiveHelp )(
  98806.                       IOleInPlaceUIWindow * This,
  98807.                        BOOL fEnterMode);
  98808.  
  98809.                            HRESULT ( __stdcall *GetBorder )(
  98810.                       IOleInPlaceUIWindow * This,
  98811.                                    LPRECT lprectBorder);
  98812.  
  98813.                            HRESULT ( __stdcall *RequestBorderSpace )(
  98814.                       IOleInPlaceUIWindow * This,
  98815.                                              LPCBORDERWIDTHS pborderwidths);
  98816.  
  98817.                            HRESULT ( __stdcall *SetBorderSpace )(
  98818.                       IOleInPlaceUIWindow * This,
  98819.                                              LPCBORDERWIDTHS pborderwidths);
  98820.  
  98821.         HRESULT ( __stdcall *SetActiveObject )(
  98822.                       IOleInPlaceUIWindow * This,
  98823.                                              IOleInPlaceActiveObject *pActiveObject,
  98824.                                                             LPCOLESTR pszObjName);
  98825.  
  98826.  
  98827.     } IOleInPlaceUIWindowVtbl;
  98828.  
  98829.     struct IOleInPlaceUIWindow
  98830.     {
  98831.                    struct IOleInPlaceUIWindowVtbl *lpVtbl;
  98832.     };
  98833. # 2141 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98834. typedef IOleInPlaceActiveObject *LPOLEINPLACEACTIVEOBJECT;
  98835.  
  98836.  
  98837. extern const IID IID_IOleInPlaceActiveObject;
  98838. # 2178 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98839.     typedef struct IOleInPlaceActiveObjectVtbl
  98840.     {
  98841.  
  98842.  
  98843.         HRESULT ( __stdcall *QueryInterface )(
  98844.                       IOleInPlaceActiveObject * This,
  98845.                                  const IID * riid,
  98846.  
  98847.                           void **ppvObject);
  98848.  
  98849.         ULONG ( __stdcall *AddRef )(
  98850.                       IOleInPlaceActiveObject * This);
  98851.  
  98852.         ULONG ( __stdcall *Release )(
  98853.                       IOleInPlaceActiveObject * This);
  98854.  
  98855.                            HRESULT ( __stdcall *GetWindow )(
  98856.                       IOleInPlaceActiveObject * This,
  98857.                                              HWND *phwnd);
  98858.  
  98859.         HRESULT ( __stdcall *ContextSensitiveHelp )(
  98860.                       IOleInPlaceActiveObject * This,
  98861.                        BOOL fEnterMode);
  98862.  
  98863.                       HRESULT ( __stdcall *TranslateAcceleratorA )(
  98864.             IOleInPlaceActiveObject * This,
  98865.  
  98866.                       LPMSG lpmsg);
  98867.  
  98868.                            HRESULT ( __stdcall *OnFrameWindowActivate )(
  98869.                       IOleInPlaceActiveObject * This,
  98870.                        BOOL fActivate);
  98871.  
  98872.                            HRESULT ( __stdcall *OnDocWindowActivate )(
  98873.                       IOleInPlaceActiveObject * This,
  98874.                        BOOL fActivate);
  98875.  
  98876.                       HRESULT ( __stdcall *ResizeBorder )(
  98877.             IOleInPlaceActiveObject * This,
  98878.  
  98879.                   LPCRECT prcBorder,
  98880.  
  98881.                   IOleInPlaceUIWindow *pUIWindow,
  98882.  
  98883.                   BOOL fFrameWindow);
  98884.  
  98885.         HRESULT ( __stdcall *EnableModeless )(
  98886.                       IOleInPlaceActiveObject * This,
  98887.                        BOOL fEnable);
  98888.  
  98889.  
  98890.     } IOleInPlaceActiveObjectVtbl;
  98891.  
  98892.     struct IOleInPlaceActiveObject
  98893.     {
  98894.                    struct IOleInPlaceActiveObjectVtbl *lpVtbl;
  98895.     };
  98896. # 2280 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98897.                 HRESULT __stdcall IOleInPlaceActiveObject_RemoteTranslateAccelerator_Proxy(
  98898.               IOleInPlaceActiveObject * This);
  98899.  
  98900.  
  98901. void __stdcall IOleInPlaceActiveObject_RemoteTranslateAccelerator_Stub(
  98902.     IRpcStubBuffer *This,
  98903.     IRpcChannelBuffer *_pRpcChannelBuffer,
  98904.     PRPC_MESSAGE _pRpcMessage,
  98905.     DWORD *_pdwStubPhase);
  98906.  
  98907.  
  98908.                             HRESULT __stdcall IOleInPlaceActiveObject_RemoteResizeBorder_Proxy(
  98909.               IOleInPlaceActiveObject * This,
  98910.                          LPCRECT prcBorder,
  98911.                          const IID * riid,
  98912.                                              IOleInPlaceUIWindow *pUIWindow,
  98913.                BOOL fFrameWindow);
  98914.  
  98915.  
  98916. void __stdcall IOleInPlaceActiveObject_RemoteResizeBorder_Stub(
  98917.     IRpcStubBuffer *This,
  98918.     IRpcChannelBuffer *_pRpcChannelBuffer,
  98919.     PRPC_MESSAGE _pRpcMessage,
  98920.     DWORD *_pdwStubPhase);
  98921. # 2316 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98922. typedef IOleInPlaceFrame *LPOLEINPLACEFRAME;
  98923.  
  98924. typedef struct tagOIFI
  98925.     {
  98926.     UINT cb;
  98927.     BOOL fMDIApp;
  98928.     HWND hwndFrame;
  98929.     HACCEL haccel;
  98930.     UINT cAccelEntries;
  98931.     } OLEINPLACEFRAMEINFO;
  98932.  
  98933. typedef struct tagOIFI *LPOLEINPLACEFRAMEINFO;
  98934.  
  98935. typedef struct tagOleMenuGroupWidths
  98936.     {
  98937.     LONG width[ 6 ];
  98938.     } OLEMENUGROUPWIDTHS;
  98939.  
  98940. typedef struct tagOleMenuGroupWidths *LPOLEMENUGROUPWIDTHS;
  98941.  
  98942. typedef HGLOBAL HOLEMENU;
  98943.  
  98944.  
  98945. extern const IID IID_IOleInPlaceFrame;
  98946. # 2374 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  98947.     typedef struct IOleInPlaceFrameVtbl
  98948.     {
  98949.  
  98950.  
  98951.         HRESULT ( __stdcall *QueryInterface )(
  98952.                       IOleInPlaceFrame * This,
  98953.                                  const IID * riid,
  98954.  
  98955.                           void **ppvObject);
  98956.  
  98957.         ULONG ( __stdcall *AddRef )(
  98958.                       IOleInPlaceFrame * This);
  98959.  
  98960.         ULONG ( __stdcall *Release )(
  98961.                       IOleInPlaceFrame * This);
  98962.  
  98963.                            HRESULT ( __stdcall *GetWindow )(
  98964.                       IOleInPlaceFrame * This,
  98965.                                              HWND *phwnd);
  98966.  
  98967.         HRESULT ( __stdcall *ContextSensitiveHelp )(
  98968.                       IOleInPlaceFrame * This,
  98969.                        BOOL fEnterMode);
  98970.  
  98971.                            HRESULT ( __stdcall *GetBorder )(
  98972.                       IOleInPlaceFrame * This,
  98973.                                    LPRECT lprectBorder);
  98974.  
  98975.                            HRESULT ( __stdcall *RequestBorderSpace )(
  98976.                       IOleInPlaceFrame * This,
  98977.                                              LPCBORDERWIDTHS pborderwidths);
  98978.  
  98979.                            HRESULT ( __stdcall *SetBorderSpace )(
  98980.                       IOleInPlaceFrame * This,
  98981.                                              LPCBORDERWIDTHS pborderwidths);
  98982.  
  98983.         HRESULT ( __stdcall *SetActiveObject )(
  98984.                       IOleInPlaceFrame * This,
  98985.                                              IOleInPlaceActiveObject *pActiveObject,
  98986.                                                             LPCOLESTR pszObjName);
  98987.  
  98988.         HRESULT ( __stdcall *InsertMenus )(
  98989.                       IOleInPlaceFrame * This,
  98990.                                  HMENU hmenuShared,
  98991.                                          LPOLEMENUGROUPWIDTHS lpMenuWidths);
  98992.  
  98993.                            HRESULT ( __stdcall *SetMenu )(
  98994.                       IOleInPlaceFrame * This,
  98995.                                  HMENU hmenuShared,
  98996.                                  HOLEMENU holemenu,
  98997.                                  HWND hwndActiveObject);
  98998.  
  98999.         HRESULT ( __stdcall *RemoveMenus )(
  99000.                       IOleInPlaceFrame * This,
  99001.                                  HMENU hmenuShared);
  99002.  
  99003.                            HRESULT ( __stdcall *SetStatusText )(
  99004.                       IOleInPlaceFrame * This,
  99005.                                              LPCOLESTR pszStatusText);
  99006.  
  99007.         HRESULT ( __stdcall *EnableModeless )(
  99008.                       IOleInPlaceFrame * This,
  99009.                        BOOL fEnable);
  99010.  
  99011.         HRESULT ( __stdcall *TranslateAcceleratorA )(
  99012.                       IOleInPlaceFrame * This,
  99013.                                  LPMSG lpmsg,
  99014.                        WORD wID);
  99015.  
  99016.  
  99017.     } IOleInPlaceFrameVtbl;
  99018.  
  99019.     struct IOleInPlaceFrame
  99020.     {
  99021.                    struct IOleInPlaceFrameVtbl *lpVtbl;
  99022.     };
  99023. # 2521 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99024. typedef IOleInPlaceObject *LPOLEINPLACEOBJECT;
  99025.  
  99026.  
  99027. extern const IID IID_IOleInPlaceObject;
  99028. # 2547 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99029.     typedef struct IOleInPlaceObjectVtbl
  99030.     {
  99031.  
  99032.  
  99033.         HRESULT ( __stdcall *QueryInterface )(
  99034.                       IOleInPlaceObject * This,
  99035.                                  const IID * riid,
  99036.  
  99037.                           void **ppvObject);
  99038.  
  99039.         ULONG ( __stdcall *AddRef )(
  99040.                       IOleInPlaceObject * This);
  99041.  
  99042.         ULONG ( __stdcall *Release )(
  99043.                       IOleInPlaceObject * This);
  99044.  
  99045.                            HRESULT ( __stdcall *GetWindow )(
  99046.                       IOleInPlaceObject * This,
  99047.                                              HWND *phwnd);
  99048.  
  99049.         HRESULT ( __stdcall *ContextSensitiveHelp )(
  99050.                       IOleInPlaceObject * This,
  99051.                        BOOL fEnterMode);
  99052.  
  99053.         HRESULT ( __stdcall *InPlaceDeactivate )(
  99054.                       IOleInPlaceObject * This);
  99055.  
  99056.         HRESULT ( __stdcall *UIDeactivate )(
  99057.                       IOleInPlaceObject * This);
  99058.  
  99059.                            HRESULT ( __stdcall *SetObjectRects )(
  99060.                       IOleInPlaceObject * This,
  99061.                                  LPCRECT lprcPosRect,
  99062.                                  LPCRECT lprcClipRect);
  99063.  
  99064.         HRESULT ( __stdcall *ReactivateAndUndo )(
  99065.                       IOleInPlaceObject * This);
  99066.  
  99067.  
  99068.     } IOleInPlaceObjectVtbl;
  99069.  
  99070.     struct IOleInPlaceObject
  99071.     {
  99072.                    struct IOleInPlaceObjectVtbl *lpVtbl;
  99073.     };
  99074. # 2644 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99075. typedef IOleInPlaceSite *LPOLEINPLACESITE;
  99076.  
  99077.  
  99078. extern const IID IID_IOleInPlaceSite;
  99079. # 2688 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99080.     typedef struct IOleInPlaceSiteVtbl
  99081.     {
  99082.  
  99083.  
  99084.         HRESULT ( __stdcall *QueryInterface )(
  99085.                       IOleInPlaceSite * This,
  99086.                                  const IID * riid,
  99087.  
  99088.                           void **ppvObject);
  99089.  
  99090.         ULONG ( __stdcall *AddRef )(
  99091.                       IOleInPlaceSite * This);
  99092.  
  99093.         ULONG ( __stdcall *Release )(
  99094.                       IOleInPlaceSite * This);
  99095.  
  99096.                            HRESULT ( __stdcall *GetWindow )(
  99097.                       IOleInPlaceSite * This,
  99098.                                              HWND *phwnd);
  99099.  
  99100.         HRESULT ( __stdcall *ContextSensitiveHelp )(
  99101.                       IOleInPlaceSite * This,
  99102.                        BOOL fEnterMode);
  99103.  
  99104.         HRESULT ( __stdcall *CanInPlaceActivate )(
  99105.                       IOleInPlaceSite * This);
  99106.  
  99107.         HRESULT ( __stdcall *OnInPlaceActivate )(
  99108.                       IOleInPlaceSite * This);
  99109.  
  99110.         HRESULT ( __stdcall *OnUIActivate )(
  99111.                       IOleInPlaceSite * This);
  99112.  
  99113.         HRESULT ( __stdcall *GetWindowContext )(
  99114.                       IOleInPlaceSite * This,
  99115.                                              IOleInPlaceFrame **ppFrame,
  99116.                                              IOleInPlaceUIWindow **ppDoc,
  99117.                                    LPRECT lprcPosRect,
  99118.                                    LPRECT lprcClipRect,
  99119.                                          LPOLEINPLACEFRAMEINFO lpFrameInfo);
  99120.  
  99121.         HRESULT ( __stdcall *Scroll )(
  99122.                       IOleInPlaceSite * This,
  99123.                        SIZE scrollExtant);
  99124.  
  99125.         HRESULT ( __stdcall *OnUIDeactivate )(
  99126.                       IOleInPlaceSite * This,
  99127.                        BOOL fUndoable);
  99128.  
  99129.         HRESULT ( __stdcall *OnInPlaceDeactivate )(
  99130.                       IOleInPlaceSite * This);
  99131.  
  99132.         HRESULT ( __stdcall *DiscardUndoState )(
  99133.                       IOleInPlaceSite * This);
  99134.  
  99135.         HRESULT ( __stdcall *DeactivateAndUndo )(
  99136.                       IOleInPlaceSite * This);
  99137.  
  99138.         HRESULT ( __stdcall *OnPosRectChange )(
  99139.                       IOleInPlaceSite * This,
  99140.                                  LPCRECT lprcPosRect);
  99141.  
  99142.  
  99143.     } IOleInPlaceSiteVtbl;
  99144.  
  99145.     struct IOleInPlaceSite
  99146.     {
  99147.                    struct IOleInPlaceSiteVtbl *lpVtbl;
  99148.     };
  99149. # 2828 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99150. extern const IID IID_IContinue;
  99151. # 2843 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99152.     typedef struct IContinueVtbl
  99153.     {
  99154.  
  99155.  
  99156.         HRESULT ( __stdcall *QueryInterface )(
  99157.                       IContinue * This,
  99158.                                  const IID * riid,
  99159.  
  99160.                           void **ppvObject);
  99161.  
  99162.         ULONG ( __stdcall *AddRef )(
  99163.                       IContinue * This);
  99164.  
  99165.         ULONG ( __stdcall *Release )(
  99166.                       IContinue * This);
  99167.  
  99168.         HRESULT ( __stdcall *FContinue )(
  99169.                       IContinue * This);
  99170.  
  99171.  
  99172.     } IContinueVtbl;
  99173.  
  99174.     struct IContinue
  99175.     {
  99176.                    struct IContinueVtbl *lpVtbl;
  99177.     };
  99178. # 2905 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99179. typedef IViewObject *LPVIEWOBJECT;
  99180.  
  99181.  
  99182. extern const IID IID_IViewObject;
  99183. # 2984 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99184.     typedef struct IViewObjectVtbl
  99185.     {
  99186.  
  99187.  
  99188.         HRESULT ( __stdcall *QueryInterface )(
  99189.                       IViewObject * This,
  99190.                                  const IID * riid,
  99191.  
  99192.                           void **ppvObject);
  99193.  
  99194.         ULONG ( __stdcall *AddRef )(
  99195.                       IViewObject * This);
  99196.  
  99197.         ULONG ( __stdcall *Release )(
  99198.                       IViewObject * This);
  99199.  
  99200.                       HRESULT ( __stdcall *Draw )(
  99201.             IViewObject * This,
  99202.  
  99203.                   DWORD dwDrawAspect,
  99204.  
  99205.                   LONG lindex,
  99206.  
  99207.                     void *pvAspect,
  99208.  
  99209.                       DVTARGETDEVICE *ptd,
  99210.  
  99211.                       HDC hdcTargetDev,
  99212.  
  99213.                   HDC hdcDraw,
  99214.  
  99215.                       LPCRECTL lprcBounds,
  99216.  
  99217.                       LPCRECTL lprcWBounds,
  99218.  
  99219.                       BOOL ( __stdcall *pfnContinue )(
  99220.                 ULONG_PTR dwContinue),
  99221.  
  99222.                   ULONG_PTR dwContinue);
  99223.  
  99224.                       HRESULT ( __stdcall *GetColorSet )(
  99225.             IViewObject * This,
  99226.  
  99227.                   DWORD dwDrawAspect,
  99228.  
  99229.                   LONG lindex,
  99230.  
  99231.                     void *pvAspect,
  99232.  
  99233.                       DVTARGETDEVICE *ptd,
  99234.  
  99235.                       HDC hicTargetDev,
  99236.  
  99237.                       LOGPALETTE **ppColorSet);
  99238.  
  99239.                       HRESULT ( __stdcall *Freeze )(
  99240.             IViewObject * This,
  99241.  
  99242.                   DWORD dwDrawAspect,
  99243.  
  99244.                   LONG lindex,
  99245.  
  99246.                     void *pvAspect,
  99247.  
  99248.                    DWORD *pdwFreeze);
  99249.  
  99250.         HRESULT ( __stdcall *Unfreeze )(
  99251.                       IViewObject * This,
  99252.                        DWORD dwFreeze);
  99253.  
  99254.         HRESULT ( __stdcall *SetAdvise )(
  99255.                       IViewObject * This,
  99256.                        DWORD aspects,
  99257.                        DWORD advf,
  99258.                                              IAdviseSink *pAdvSink);
  99259.  
  99260.                       HRESULT ( __stdcall *GetAdvise )(
  99261.             IViewObject * This,
  99262.  
  99263.                        DWORD *pAspects,
  99264.  
  99265.                        DWORD *pAdvf,
  99266.  
  99267.                       IAdviseSink **ppAdvSink);
  99268.  
  99269.  
  99270.     } IViewObjectVtbl;
  99271.  
  99272.     struct IViewObject
  99273.     {
  99274.                    struct IViewObjectVtbl *lpVtbl;
  99275.     };
  99276. # 3117 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99277.                 HRESULT __stdcall IViewObject_RemoteDraw_Proxy(
  99278.               IViewObject * This,
  99279.                DWORD dwDrawAspect,
  99280.                LONG lindex,
  99281.                ULONG_PTR pvAspect,
  99282.                                      DVTARGETDEVICE *ptd,
  99283.                          HDC hdcTargetDev,
  99284.                          HDC hdcDraw,
  99285.                                      LPCRECTL lprcBounds,
  99286.                                      LPCRECTL lprcWBounds,
  99287.                              IContinue *pContinue);
  99288.  
  99289.  
  99290. void __stdcall IViewObject_RemoteDraw_Stub(
  99291.     IRpcStubBuffer *This,
  99292.     IRpcChannelBuffer *_pRpcChannelBuffer,
  99293.     PRPC_MESSAGE _pRpcMessage,
  99294.     DWORD *_pdwStubPhase);
  99295.  
  99296.  
  99297.                 HRESULT __stdcall IViewObject_RemoteGetColorSet_Proxy(
  99298.               IViewObject * This,
  99299.                DWORD dwDrawAspect,
  99300.                LONG lindex,
  99301.                ULONG_PTR pvAspect,
  99302.                                      DVTARGETDEVICE *ptd,
  99303.                ULONG_PTR hicTargetDev,
  99304.                                      LOGPALETTE **ppColorSet);
  99305.  
  99306.  
  99307. void __stdcall IViewObject_RemoteGetColorSet_Stub(
  99308.     IRpcStubBuffer *This,
  99309.     IRpcChannelBuffer *_pRpcChannelBuffer,
  99310.     PRPC_MESSAGE _pRpcMessage,
  99311.     DWORD *_pdwStubPhase);
  99312.  
  99313.  
  99314.                 HRESULT __stdcall IViewObject_RemoteFreeze_Proxy(
  99315.               IViewObject * This,
  99316.                DWORD dwDrawAspect,
  99317.                LONG lindex,
  99318.                ULONG_PTR pvAspect,
  99319.                            DWORD *pdwFreeze);
  99320.  
  99321.  
  99322. void __stdcall IViewObject_RemoteFreeze_Stub(
  99323.     IRpcStubBuffer *This,
  99324.     IRpcChannelBuffer *_pRpcChannelBuffer,
  99325.     PRPC_MESSAGE _pRpcMessage,
  99326.     DWORD *_pdwStubPhase);
  99327.  
  99328.  
  99329.                 HRESULT __stdcall IViewObject_RemoteGetAdvise_Proxy(
  99330.               IViewObject * This,
  99331.                            DWORD *pAspects,
  99332.                            DWORD *pAdvf,
  99333.                                      IAdviseSink **ppAdvSink);
  99334.  
  99335.  
  99336. void __stdcall IViewObject_RemoteGetAdvise_Stub(
  99337.     IRpcStubBuffer *This,
  99338.     IRpcChannelBuffer *_pRpcChannelBuffer,
  99339.     PRPC_MESSAGE _pRpcMessage,
  99340.     DWORD *_pdwStubPhase);
  99341. # 3193 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99342. typedef IViewObject2 *LPVIEWOBJECT2;
  99343.  
  99344.  
  99345. extern const IID IID_IViewObject2;
  99346. # 3215 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99347.     typedef struct IViewObject2Vtbl
  99348.     {
  99349.  
  99350.  
  99351.         HRESULT ( __stdcall *QueryInterface )(
  99352.                       IViewObject2 * This,
  99353.                                  const IID * riid,
  99354.  
  99355.                           void **ppvObject);
  99356.  
  99357.         ULONG ( __stdcall *AddRef )(
  99358.                       IViewObject2 * This);
  99359.  
  99360.         ULONG ( __stdcall *Release )(
  99361.                       IViewObject2 * This);
  99362.  
  99363.                       HRESULT ( __stdcall *Draw )(
  99364.             IViewObject2 * This,
  99365.  
  99366.                   DWORD dwDrawAspect,
  99367.  
  99368.                   LONG lindex,
  99369.  
  99370.                     void *pvAspect,
  99371.  
  99372.                       DVTARGETDEVICE *ptd,
  99373.  
  99374.                       HDC hdcTargetDev,
  99375.  
  99376.                   HDC hdcDraw,
  99377.  
  99378.                       LPCRECTL lprcBounds,
  99379.  
  99380.                       LPCRECTL lprcWBounds,
  99381.  
  99382.                       BOOL ( __stdcall *pfnContinue )(
  99383.                 ULONG_PTR dwContinue),
  99384.  
  99385.                   ULONG_PTR dwContinue);
  99386.  
  99387.                       HRESULT ( __stdcall *GetColorSet )(
  99388.             IViewObject2 * This,
  99389.  
  99390.                   DWORD dwDrawAspect,
  99391.  
  99392.                   LONG lindex,
  99393.  
  99394.                     void *pvAspect,
  99395.  
  99396.                       DVTARGETDEVICE *ptd,
  99397.  
  99398.                       HDC hicTargetDev,
  99399.  
  99400.                       LOGPALETTE **ppColorSet);
  99401.  
  99402.                       HRESULT ( __stdcall *Freeze )(
  99403.             IViewObject2 * This,
  99404.  
  99405.                   DWORD dwDrawAspect,
  99406.  
  99407.                   LONG lindex,
  99408.  
  99409.                     void *pvAspect,
  99410.  
  99411.                    DWORD *pdwFreeze);
  99412.  
  99413.         HRESULT ( __stdcall *Unfreeze )(
  99414.                       IViewObject2 * This,
  99415.                        DWORD dwFreeze);
  99416.  
  99417.         HRESULT ( __stdcall *SetAdvise )(
  99418.                       IViewObject2 * This,
  99419.                        DWORD aspects,
  99420.                        DWORD advf,
  99421.                                              IAdviseSink *pAdvSink);
  99422.  
  99423.                       HRESULT ( __stdcall *GetAdvise )(
  99424.             IViewObject2 * This,
  99425.  
  99426.                        DWORD *pAspects,
  99427.  
  99428.                        DWORD *pAdvf,
  99429.  
  99430.                       IAdviseSink **ppAdvSink);
  99431.  
  99432.         HRESULT ( __stdcall *GetExtent )(
  99433.                       IViewObject2 * This,
  99434.                        DWORD dwDrawAspect,
  99435.                        LONG lindex,
  99436.                                              DVTARGETDEVICE *ptd,
  99437.                                    LPSIZEL lpsizel);
  99438.  
  99439.  
  99440.     } IViewObject2Vtbl;
  99441.  
  99442.     struct IViewObject2
  99443.     {
  99444.                    struct IViewObject2Vtbl *lpVtbl;
  99445.     };
  99446. # 3369 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99447. typedef IDropSource *LPDROPSOURCE;
  99448.  
  99449.  
  99450. extern const IID IID_IDropSource;
  99451. # 3395 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99452.     typedef struct IDropSourceVtbl
  99453.     {
  99454.  
  99455.  
  99456.         HRESULT ( __stdcall *QueryInterface )(
  99457.             IDropSource * This,
  99458.                        const IID * riid,
  99459.  
  99460.                           void **ppvObject);
  99461.  
  99462.         ULONG ( __stdcall *AddRef )(
  99463.             IDropSource * This);
  99464.  
  99465.         ULONG ( __stdcall *Release )(
  99466.             IDropSource * This);
  99467.  
  99468.         HRESULT ( __stdcall *QueryContinueDrag )(
  99469.             IDropSource * This,
  99470.  
  99471.                   BOOL fEscapePressed,
  99472.  
  99473.                   DWORD grfKeyState);
  99474.  
  99475.         HRESULT ( __stdcall *GiveFeedback )(
  99476.             IDropSource * This,
  99477.  
  99478.                   DWORD dwEffect);
  99479.  
  99480.  
  99481.     } IDropSourceVtbl;
  99482.  
  99483.     struct IDropSource
  99484.     {
  99485.                    struct IDropSourceVtbl *lpVtbl;
  99486.     };
  99487. # 3469 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99488. typedef IDropTarget *LPDROPTARGET;
  99489. # 3504 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99490. extern const IID IID_IDropTarget;
  99491. # 3536 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99492.     typedef struct IDropTargetVtbl
  99493.     {
  99494.  
  99495.  
  99496.         HRESULT ( __stdcall *QueryInterface )(
  99497.                       IDropTarget * This,
  99498.                                  const IID * riid,
  99499.  
  99500.                           void **ppvObject);
  99501.  
  99502.         ULONG ( __stdcall *AddRef )(
  99503.                       IDropTarget * This);
  99504.  
  99505.         ULONG ( __stdcall *Release )(
  99506.                       IDropTarget * This);
  99507.  
  99508.         HRESULT ( __stdcall *DragEnter )(
  99509.                       IDropTarget * This,
  99510.                                              IDataObject *pDataObj,
  99511.                        DWORD grfKeyState,
  99512.                        POINTL pt,
  99513.                                          DWORD *pdwEffect);
  99514.  
  99515.         HRESULT ( __stdcall *DragOver )(
  99516.                       IDropTarget * This,
  99517.                        DWORD grfKeyState,
  99518.                        POINTL pt,
  99519.                                          DWORD *pdwEffect);
  99520.  
  99521.         HRESULT ( __stdcall *DragLeave )(
  99522.                       IDropTarget * This);
  99523.  
  99524.         HRESULT ( __stdcall *Drop )(
  99525.                       IDropTarget * This,
  99526.                                              IDataObject *pDataObj,
  99527.                        DWORD grfKeyState,
  99528.                        POINTL pt,
  99529.                                          DWORD *pdwEffect);
  99530.  
  99531.  
  99532.     } IDropTargetVtbl;
  99533.  
  99534.     struct IDropTarget
  99535.     {
  99536.                    struct IDropTargetVtbl *lpVtbl;
  99537.     };
  99538. # 3628 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99539. extern const IID IID_IDropSourceNotify;
  99540. # 3647 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99541.     typedef struct IDropSourceNotifyVtbl
  99542.     {
  99543.  
  99544.  
  99545.         HRESULT ( __stdcall *QueryInterface )(
  99546.             IDropSourceNotify * This,
  99547.                        const IID * riid,
  99548.  
  99549.                           void **ppvObject);
  99550.  
  99551.         ULONG ( __stdcall *AddRef )(
  99552.             IDropSourceNotify * This);
  99553.  
  99554.         ULONG ( __stdcall *Release )(
  99555.             IDropSourceNotify * This);
  99556.  
  99557.         HRESULT ( __stdcall *DragEnterTarget )(
  99558.             IDropSourceNotify * This,
  99559.  
  99560.                   HWND hwndTarget);
  99561.  
  99562.         HRESULT ( __stdcall *DragLeaveTarget )(
  99563.             IDropSourceNotify * This);
  99564.  
  99565.  
  99566.     } IDropSourceNotifyVtbl;
  99567.  
  99568.     struct IDropSourceNotify
  99569.     {
  99570.                    struct IDropSourceNotifyVtbl *lpVtbl;
  99571.     };
  99572. # 3718 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99573. extern const IID IID_IEnterpriseDropTarget;
  99574. # 3737 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99575.     typedef struct IEnterpriseDropTargetVtbl
  99576.     {
  99577.  
  99578.  
  99579.         HRESULT ( __stdcall *QueryInterface )(
  99580.                       IEnterpriseDropTarget * This,
  99581.                                  const IID * riid,
  99582.  
  99583.                           void **ppvObject);
  99584.  
  99585.         ULONG ( __stdcall *AddRef )(
  99586.                       IEnterpriseDropTarget * This);
  99587.  
  99588.         ULONG ( __stdcall *Release )(
  99589.                       IEnterpriseDropTarget * This);
  99590.  
  99591.         HRESULT ( __stdcall *SetDropSourceEnterpriseId )(
  99592.                       IEnterpriseDropTarget * This,
  99593.                                  LPCWSTR identity);
  99594.  
  99595.         HRESULT ( __stdcall *IsEvaluatingEdpPolicy )(
  99596.                       IEnterpriseDropTarget * This,
  99597.                                            BOOL *value);
  99598.  
  99599.  
  99600.     } IEnterpriseDropTargetVtbl;
  99601.  
  99602.     struct IEnterpriseDropTarget
  99603.     {
  99604.                    struct IEnterpriseDropTargetVtbl *lpVtbl;
  99605.     };
  99606. # 3806 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99607. #pragma endregion
  99608. #pragma region Application Family or OneCore Family
  99609.  
  99610.  
  99611.  
  99612. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0024_v0_0_c_ifspec;
  99613. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0024_v0_0_s_ifspec;
  99614.  
  99615.  
  99616.  
  99617.  
  99618.  
  99619.  
  99620.  
  99621. typedef IEnumOLEVERB *LPENUMOLEVERB;
  99622.  
  99623. typedef struct tagOLEVERB
  99624.     {
  99625.     LONG lVerb;
  99626.     LPOLESTR lpszVerbName;
  99627.     DWORD fuFlags;
  99628.     DWORD grfAttribs;
  99629.     } OLEVERB;
  99630.  
  99631. typedef struct tagOLEVERB *LPOLEVERB;
  99632.  
  99633. typedef
  99634. enum tagOLEVERBATTRIB
  99635.     {
  99636.         OLEVERBATTRIB_NEVERDIRTIES = 1,
  99637.         OLEVERBATTRIB_ONCONTAINERMENU = 2
  99638.     } OLEVERBATTRIB;
  99639.  
  99640.  
  99641. extern const IID IID_IEnumOLEVERB;
  99642. # 3869 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99643.     typedef struct IEnumOLEVERBVtbl
  99644.     {
  99645.  
  99646.  
  99647.         HRESULT ( __stdcall *QueryInterface )(
  99648.                       IEnumOLEVERB * This,
  99649.                                  const IID * riid,
  99650.  
  99651.                           void **ppvObject);
  99652.  
  99653.         ULONG ( __stdcall *AddRef )(
  99654.                       IEnumOLEVERB * This);
  99655.  
  99656.         ULONG ( __stdcall *Release )(
  99657.                       IEnumOLEVERB * This);
  99658.  
  99659.                       HRESULT ( __stdcall *Next )(
  99660.             IEnumOLEVERB * This,
  99661.  
  99662.                   ULONG celt,
  99663.  
  99664.                                                   LPOLEVERB rgelt,
  99665.  
  99666.                        ULONG *pceltFetched);
  99667.  
  99668.         HRESULT ( __stdcall *Skip )(
  99669.                       IEnumOLEVERB * This,
  99670.                        ULONG celt);
  99671.  
  99672.         HRESULT ( __stdcall *Reset )(
  99673.                       IEnumOLEVERB * This);
  99674.  
  99675.         HRESULT ( __stdcall *Clone )(
  99676.                       IEnumOLEVERB * This,
  99677.                                              IEnumOLEVERB **ppenum);
  99678.  
  99679.  
  99680.     } IEnumOLEVERBVtbl;
  99681.  
  99682.     struct IEnumOLEVERB
  99683.     {
  99684.                    struct IEnumOLEVERBVtbl *lpVtbl;
  99685.     };
  99686. # 3947 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99687.                 HRESULT __stdcall IEnumOLEVERB_RemoteNext_Proxy(
  99688.               IEnumOLEVERB * This,
  99689.                ULONG celt,
  99690.                                                                                 LPOLEVERB rgelt,
  99691.                            ULONG *pceltFetched);
  99692.  
  99693.  
  99694. void __stdcall IEnumOLEVERB_RemoteNext_Stub(
  99695.     IRpcStubBuffer *This,
  99696.     IRpcChannelBuffer *_pRpcChannelBuffer,
  99697.     PRPC_MESSAGE _pRpcMessage,
  99698.     DWORD *_pdwStubPhase);
  99699. # 3969 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99700. #pragma endregion
  99701.  
  99702.  
  99703.  
  99704.  
  99705.  
  99706. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0025_v0_0_c_ifspec;
  99707. extern RPC_IF_HANDLE __MIDL_itf_oleidl_0000_0025_v0_0_s_ifspec;
  99708.  
  99709.  
  99710.  
  99711. unsigned long __stdcall CLIPFORMAT_UserSize( unsigned long *, unsigned long , CLIPFORMAT * );
  99712. unsigned char * __stdcall CLIPFORMAT_UserMarshal( unsigned long *, unsigned char *, CLIPFORMAT * );
  99713. unsigned char * __stdcall CLIPFORMAT_UserUnmarshal( unsigned long *, unsigned char *, CLIPFORMAT * );
  99714. void __stdcall CLIPFORMAT_UserFree( unsigned long *, CLIPFORMAT * );
  99715.  
  99716. unsigned long __stdcall HACCEL_UserSize( unsigned long *, unsigned long , HACCEL * );
  99717. unsigned char * __stdcall HACCEL_UserMarshal( unsigned long *, unsigned char *, HACCEL * );
  99718. unsigned char * __stdcall HACCEL_UserUnmarshal( unsigned long *, unsigned char *, HACCEL * );
  99719. void __stdcall HACCEL_UserFree( unsigned long *, HACCEL * );
  99720.  
  99721. unsigned long __stdcall HDC_UserSize( unsigned long *, unsigned long , HDC * );
  99722. unsigned char * __stdcall HDC_UserMarshal( unsigned long *, unsigned char *, HDC * );
  99723. unsigned char * __stdcall HDC_UserUnmarshal( unsigned long *, unsigned char *, HDC * );
  99724. void __stdcall HDC_UserFree( unsigned long *, HDC * );
  99725.  
  99726. unsigned long __stdcall HGLOBAL_UserSize( unsigned long *, unsigned long , HGLOBAL * );
  99727. unsigned char * __stdcall HGLOBAL_UserMarshal( unsigned long *, unsigned char *, HGLOBAL * );
  99728. unsigned char * __stdcall HGLOBAL_UserUnmarshal( unsigned long *, unsigned char *, HGLOBAL * );
  99729. void __stdcall HGLOBAL_UserFree( unsigned long *, HGLOBAL * );
  99730.  
  99731. unsigned long __stdcall HMENU_UserSize( unsigned long *, unsigned long , HMENU * );
  99732. unsigned char * __stdcall HMENU_UserMarshal( unsigned long *, unsigned char *, HMENU * );
  99733. unsigned char * __stdcall HMENU_UserUnmarshal( unsigned long *, unsigned char *, HMENU * );
  99734. void __stdcall HMENU_UserFree( unsigned long *, HMENU * );
  99735.  
  99736. unsigned long __stdcall HWND_UserSize( unsigned long *, unsigned long , HWND * );
  99737. unsigned char * __stdcall HWND_UserMarshal( unsigned long *, unsigned char *, HWND * );
  99738. unsigned char * __stdcall HWND_UserUnmarshal( unsigned long *, unsigned char *, HWND * );
  99739. void __stdcall HWND_UserFree( unsigned long *, HWND * );
  99740.  
  99741. unsigned long __stdcall STGMEDIUM_UserSize( unsigned long *, unsigned long , STGMEDIUM * );
  99742. unsigned char * __stdcall STGMEDIUM_UserMarshal( unsigned long *, unsigned char *, STGMEDIUM * );
  99743. unsigned char * __stdcall STGMEDIUM_UserUnmarshal( unsigned long *, unsigned char *, STGMEDIUM * );
  99744. void __stdcall STGMEDIUM_UserFree( unsigned long *, STGMEDIUM * );
  99745.  
  99746. unsigned long __stdcall CLIPFORMAT_UserSize64( unsigned long *, unsigned long , CLIPFORMAT * );
  99747. unsigned char * __stdcall CLIPFORMAT_UserMarshal64( unsigned long *, unsigned char *, CLIPFORMAT * );
  99748. unsigned char * __stdcall CLIPFORMAT_UserUnmarshal64( unsigned long *, unsigned char *, CLIPFORMAT * );
  99749. void __stdcall CLIPFORMAT_UserFree64( unsigned long *, CLIPFORMAT * );
  99750.  
  99751. unsigned long __stdcall HACCEL_UserSize64( unsigned long *, unsigned long , HACCEL * );
  99752. unsigned char * __stdcall HACCEL_UserMarshal64( unsigned long *, unsigned char *, HACCEL * );
  99753. unsigned char * __stdcall HACCEL_UserUnmarshal64( unsigned long *, unsigned char *, HACCEL * );
  99754. void __stdcall HACCEL_UserFree64( unsigned long *, HACCEL * );
  99755.  
  99756. unsigned long __stdcall HDC_UserSize64( unsigned long *, unsigned long , HDC * );
  99757. unsigned char * __stdcall HDC_UserMarshal64( unsigned long *, unsigned char *, HDC * );
  99758. unsigned char * __stdcall HDC_UserUnmarshal64( unsigned long *, unsigned char *, HDC * );
  99759. void __stdcall HDC_UserFree64( unsigned long *, HDC * );
  99760.  
  99761. unsigned long __stdcall HGLOBAL_UserSize64( unsigned long *, unsigned long , HGLOBAL * );
  99762. unsigned char * __stdcall HGLOBAL_UserMarshal64( unsigned long *, unsigned char *, HGLOBAL * );
  99763. unsigned char * __stdcall HGLOBAL_UserUnmarshal64( unsigned long *, unsigned char *, HGLOBAL * );
  99764. void __stdcall HGLOBAL_UserFree64( unsigned long *, HGLOBAL * );
  99765.  
  99766. unsigned long __stdcall HMENU_UserSize64( unsigned long *, unsigned long , HMENU * );
  99767. unsigned char * __stdcall HMENU_UserMarshal64( unsigned long *, unsigned char *, HMENU * );
  99768. unsigned char * __stdcall HMENU_UserUnmarshal64( unsigned long *, unsigned char *, HMENU * );
  99769. void __stdcall HMENU_UserFree64( unsigned long *, HMENU * );
  99770.  
  99771. unsigned long __stdcall HWND_UserSize64( unsigned long *, unsigned long , HWND * );
  99772. unsigned char * __stdcall HWND_UserMarshal64( unsigned long *, unsigned char *, HWND * );
  99773. unsigned char * __stdcall HWND_UserUnmarshal64( unsigned long *, unsigned char *, HWND * );
  99774. void __stdcall HWND_UserFree64( unsigned long *, HWND * );
  99775.  
  99776. unsigned long __stdcall STGMEDIUM_UserSize64( unsigned long *, unsigned long , STGMEDIUM * );
  99777. unsigned char * __stdcall STGMEDIUM_UserMarshal64( unsigned long *, unsigned char *, STGMEDIUM * );
  99778. unsigned char * __stdcall STGMEDIUM_UserUnmarshal64( unsigned long *, unsigned char *, STGMEDIUM * );
  99779. void __stdcall STGMEDIUM_UserFree64( unsigned long *, STGMEDIUM * );
  99780.  
  99781.               HRESULT __stdcall IOleCache2_UpdateCache_Proxy(
  99782.     IOleCache2 * This,
  99783.  
  99784.           LPDATAOBJECT pDataObject,
  99785.  
  99786.           DWORD grfUpdf,
  99787.  
  99788.                 LPVOID pReserved);
  99789.  
  99790.  
  99791.                 HRESULT __stdcall IOleCache2_UpdateCache_Stub(
  99792.               IOleCache2 * This,
  99793.                              LPDATAOBJECT pDataObject,
  99794.                DWORD grfUpdf,
  99795.                LONG_PTR pReserved);
  99796.  
  99797.               HRESULT __stdcall IOleInPlaceActiveObject_TranslateAccelerator_Proxy(
  99798.     IOleInPlaceActiveObject * This,
  99799.  
  99800.               LPMSG lpmsg);
  99801.  
  99802.  
  99803.                 HRESULT __stdcall IOleInPlaceActiveObject_TranslateAccelerator_Stub(
  99804.               IOleInPlaceActiveObject * This);
  99805.  
  99806.               HRESULT __stdcall IOleInPlaceActiveObject_ResizeBorder_Proxy(
  99807.     IOleInPlaceActiveObject * This,
  99808.  
  99809.           LPCRECT prcBorder,
  99810.  
  99811.           IOleInPlaceUIWindow *pUIWindow,
  99812.  
  99813.           BOOL fFrameWindow);
  99814.  
  99815.  
  99816.                             HRESULT __stdcall IOleInPlaceActiveObject_ResizeBorder_Stub(
  99817.               IOleInPlaceActiveObject * This,
  99818.                          LPCRECT prcBorder,
  99819.                          const IID * riid,
  99820.                                              IOleInPlaceUIWindow *pUIWindow,
  99821.                BOOL fFrameWindow);
  99822.  
  99823.               HRESULT __stdcall IViewObject_Draw_Proxy(
  99824.     IViewObject * This,
  99825.  
  99826.           DWORD dwDrawAspect,
  99827.  
  99828.           LONG lindex,
  99829.  
  99830.             void *pvAspect,
  99831.  
  99832.               DVTARGETDEVICE *ptd,
  99833.  
  99834.               HDC hdcTargetDev,
  99835.  
  99836.           HDC hdcDraw,
  99837.  
  99838.               LPCRECTL lprcBounds,
  99839.  
  99840.               LPCRECTL lprcWBounds,
  99841.  
  99842.               BOOL ( __stdcall *pfnContinue )(
  99843.         ULONG_PTR dwContinue),
  99844.  
  99845.           ULONG_PTR dwContinue);
  99846.  
  99847.  
  99848.                 HRESULT __stdcall IViewObject_Draw_Stub(
  99849.               IViewObject * This,
  99850.                DWORD dwDrawAspect,
  99851.                LONG lindex,
  99852.                ULONG_PTR pvAspect,
  99853.                                      DVTARGETDEVICE *ptd,
  99854.                          HDC hdcTargetDev,
  99855.                          HDC hdcDraw,
  99856.                                      LPCRECTL lprcBounds,
  99857.                                      LPCRECTL lprcWBounds,
  99858.                              IContinue *pContinue);
  99859.  
  99860.               HRESULT __stdcall IViewObject_GetColorSet_Proxy(
  99861.     IViewObject * This,
  99862.  
  99863.           DWORD dwDrawAspect,
  99864.  
  99865.           LONG lindex,
  99866.  
  99867.             void *pvAspect,
  99868.  
  99869.               DVTARGETDEVICE *ptd,
  99870.  
  99871.               HDC hicTargetDev,
  99872.  
  99873.               LOGPALETTE **ppColorSet);
  99874.  
  99875.  
  99876.                 HRESULT __stdcall IViewObject_GetColorSet_Stub(
  99877.               IViewObject * This,
  99878.                DWORD dwDrawAspect,
  99879.                LONG lindex,
  99880.                ULONG_PTR pvAspect,
  99881.                                      DVTARGETDEVICE *ptd,
  99882.                ULONG_PTR hicTargetDev,
  99883.                                      LOGPALETTE **ppColorSet);
  99884.  
  99885.               HRESULT __stdcall IViewObject_Freeze_Proxy(
  99886.     IViewObject * This,
  99887.  
  99888.           DWORD dwDrawAspect,
  99889.  
  99890.           LONG lindex,
  99891.  
  99892.             void *pvAspect,
  99893.  
  99894.            DWORD *pdwFreeze);
  99895.  
  99896.  
  99897.                 HRESULT __stdcall IViewObject_Freeze_Stub(
  99898.               IViewObject * This,
  99899.                DWORD dwDrawAspect,
  99900.                LONG lindex,
  99901.                ULONG_PTR pvAspect,
  99902.                            DWORD *pdwFreeze);
  99903.  
  99904.               HRESULT __stdcall IViewObject_GetAdvise_Proxy(
  99905.     IViewObject * This,
  99906.  
  99907.                DWORD *pAspects,
  99908.  
  99909.                DWORD *pAdvf,
  99910.  
  99911.               IAdviseSink **ppAdvSink);
  99912.  
  99913.  
  99914.                 HRESULT __stdcall IViewObject_GetAdvise_Stub(
  99915.               IViewObject * This,
  99916.                            DWORD *pAspects,
  99917.                            DWORD *pAdvf,
  99918.                                      IAdviseSink **ppAdvSink);
  99919.  
  99920.               HRESULT __stdcall IEnumOLEVERB_Next_Proxy(
  99921.     IEnumOLEVERB * This,
  99922.  
  99923.           ULONG celt,
  99924.  
  99925.                                           LPOLEVERB rgelt,
  99926.  
  99927.                ULONG *pceltFetched);
  99928.  
  99929.  
  99930.                 HRESULT __stdcall IEnumOLEVERB_Next_Stub(
  99931.               IEnumOLEVERB * This,
  99932.                ULONG celt,
  99933.                                                                                 LPOLEVERB rgelt,
  99934.                            ULONG *pceltFetched);
  99935. # 4216 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oleidl.h" 3
  99936. #pragma option pop
  99937. # 430 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 2 3
  99938.  
  99939. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 1 3
  99940. #pragma option push -b -a8 -pc -A- -w-pun
  99941. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 3
  99942. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  99943. #pragma option push -b -a8 -pc -A- -w-pun
  99944. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  99945. #pragma option pop
  99946. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 2 3
  99947.  
  99948. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  99949. #pragma option push -b -a8 -pc -A- -w-pun
  99950. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  99951. #pragma option pop
  99952. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 2 3
  99953.  
  99954.  
  99955.  
  99956.  
  99957.  
  99958.  
  99959.  
  99960. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  99961. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 2 3
  99962.  
  99963. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  99964. #pragma option push -b -a8 -pc -A- -w-pun
  99965. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  99966. #pragma option pop
  99967. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 2 3
  99968. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 3
  99969. typedef struct IServiceProvider IServiceProvider;
  99970.  
  99971.  
  99972.  
  99973.  
  99974.  
  99975.  
  99976. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 1 3
  99977. #pragma option push -b -a8 -pc -A- -w-pun
  99978. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  99979. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  99980. #pragma option push -b -a8 -pc -A- -w-pun
  99981. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  99982. #pragma option pop
  99983. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  99984.  
  99985. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  99986. #pragma option push -b -a8 -pc -A- -w-pun
  99987. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  99988. #pragma option pop
  99989. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  99990.  
  99991.  
  99992.  
  99993.  
  99994.  
  99995.  
  99996.  
  99997. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  99998. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  99999.  
  100000. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  100001. #pragma option push -b -a8 -pc -A- -w-pun
  100002. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  100003. #pragma option pop
  100004. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  100005. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  100006. #pragma option pop
  100007. # 51 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 2 3
  100008. # 73 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 3
  100009. #pragma comment(lib,"uuid.lib")
  100010.  
  100011.  
  100012.  
  100013.  
  100014.  
  100015.  
  100016. #pragma region Desktop Family
  100017.  
  100018.  
  100019.  
  100020.  
  100021. extern RPC_IF_HANDLE __MIDL_itf_servprov_0000_0000_v0_0_c_ifspec;
  100022. extern RPC_IF_HANDLE __MIDL_itf_servprov_0000_0000_v0_0_s_ifspec;
  100023.  
  100024.  
  100025.  
  100026.  
  100027.  
  100028.  
  100029.  
  100030. typedef IServiceProvider *LPSERVICEPROVIDER;
  100031. # 131 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 3
  100032. extern const IID IID_IServiceProvider;
  100033. # 152 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 3
  100034.     typedef struct IServiceProviderVtbl
  100035.     {
  100036.  
  100037.  
  100038.         HRESULT ( __stdcall *QueryInterface )(
  100039.                       IServiceProvider * This,
  100040.                                  const IID * riid,
  100041.  
  100042.                           void **ppvObject);
  100043.  
  100044.         ULONG ( __stdcall *AddRef )(
  100045.                       IServiceProvider * This);
  100046.  
  100047.         ULONG ( __stdcall *Release )(
  100048.                       IServiceProvider * This);
  100049.  
  100050.                       HRESULT ( __stdcall *QueryService )(
  100051.             IServiceProvider * This,
  100052.  
  100053.                   const GUID * guidService,
  100054.  
  100055.                   const IID * riid,
  100056.  
  100057.                       void **ppvObject);
  100058.  
  100059.  
  100060.     } IServiceProviderVtbl;
  100061.  
  100062.     struct IServiceProvider
  100063.     {
  100064.                    struct IServiceProviderVtbl *lpVtbl;
  100065.     };
  100066. # 210 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 3
  100067.                 HRESULT __stdcall IServiceProvider_RemoteQueryService_Proxy(
  100068.               IServiceProvider * This,
  100069.                          const GUID * guidService,
  100070.                          const IID * riid,
  100071.                                              IUnknown **ppvObject);
  100072.  
  100073.  
  100074. void __stdcall IServiceProvider_RemoteQueryService_Stub(
  100075.     IRpcStubBuffer *This,
  100076.     IRpcChannelBuffer *_pRpcChannelBuffer,
  100077.     PRPC_MESSAGE _pRpcMessage,
  100078.     DWORD *_pdwStubPhase);
  100079. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 3
  100080. #pragma endregion
  100081.  
  100082.  
  100083. extern RPC_IF_HANDLE __MIDL_itf_servprov_0000_0001_v0_0_c_ifspec;
  100084. extern RPC_IF_HANDLE __MIDL_itf_servprov_0000_0001_v0_0_s_ifspec;
  100085.  
  100086.  
  100087.  
  100088.               HRESULT __stdcall IServiceProvider_QueryService_Proxy(
  100089.     IServiceProvider * This,
  100090.  
  100091.           const GUID * guidService,
  100092.  
  100093.           const IID * riid,
  100094.  
  100095.               void **ppvObject);
  100096.  
  100097.  
  100098.                 HRESULT __stdcall IServiceProvider_QueryService_Stub(
  100099.               IServiceProvider * This,
  100100.                          const GUID * guidService,
  100101.                          const IID * riid,
  100102.                                              IUnknown **ppvObject);
  100103. # 268 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/servprov.h" 3
  100104. #pragma option pop
  100105. # 431 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 2 3
  100106.  
  100107. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 1 3
  100108. #pragma option push -b -a8 -pc -A- -w-pun
  100109. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100110. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  100111. #pragma option push -b -a8 -pc -A- -w-pun
  100112. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  100113. #pragma option pop
  100114. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 2 3
  100115.  
  100116. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  100117. #pragma option push -b -a8 -pc -A- -w-pun
  100118. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  100119. #pragma option pop
  100120. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 2 3
  100121. # 41 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100122. typedef struct IXMLDOMImplementation IXMLDOMImplementation;
  100123.  
  100124.  
  100125.  
  100126.  
  100127.  
  100128.  
  100129. typedef struct IXMLDOMNode IXMLDOMNode;
  100130.  
  100131.  
  100132.  
  100133.  
  100134.  
  100135.  
  100136. typedef struct IXMLDOMDocumentFragment IXMLDOMDocumentFragment;
  100137.  
  100138.  
  100139.  
  100140.  
  100141.  
  100142.  
  100143. typedef struct IXMLDOMDocument IXMLDOMDocument;
  100144.  
  100145.  
  100146.  
  100147.  
  100148.  
  100149.  
  100150. typedef struct IXMLDOMNodeList IXMLDOMNodeList;
  100151.  
  100152.  
  100153.  
  100154.  
  100155.  
  100156.  
  100157. typedef struct IXMLDOMNamedNodeMap IXMLDOMNamedNodeMap;
  100158.  
  100159.  
  100160.  
  100161.  
  100162.  
  100163.  
  100164. typedef struct IXMLDOMCharacterData IXMLDOMCharacterData;
  100165.  
  100166.  
  100167.  
  100168.  
  100169.  
  100170.  
  100171. typedef struct IXMLDOMAttribute IXMLDOMAttribute;
  100172.  
  100173.  
  100174.  
  100175.  
  100176.  
  100177.  
  100178. typedef struct IXMLDOMElement IXMLDOMElement;
  100179.  
  100180.  
  100181.  
  100182.  
  100183.  
  100184.  
  100185. typedef struct IXMLDOMText IXMLDOMText;
  100186.  
  100187.  
  100188.  
  100189.  
  100190.  
  100191.  
  100192. typedef struct IXMLDOMComment IXMLDOMComment;
  100193.  
  100194.  
  100195.  
  100196.  
  100197.  
  100198.  
  100199. typedef struct IXMLDOMProcessingInstruction IXMLDOMProcessingInstruction;
  100200.  
  100201.  
  100202.  
  100203.  
  100204.  
  100205.  
  100206. typedef struct IXMLDOMCDATASection IXMLDOMCDATASection;
  100207.  
  100208.  
  100209.  
  100210.  
  100211.  
  100212.  
  100213. typedef struct IXMLDOMDocumentType IXMLDOMDocumentType;
  100214.  
  100215.  
  100216.  
  100217.  
  100218.  
  100219.  
  100220. typedef struct IXMLDOMNotation IXMLDOMNotation;
  100221.  
  100222.  
  100223.  
  100224.  
  100225.  
  100226.  
  100227. typedef struct IXMLDOMEntity IXMLDOMEntity;
  100228.  
  100229.  
  100230.  
  100231.  
  100232.  
  100233.  
  100234. typedef struct IXMLDOMEntityReference IXMLDOMEntityReference;
  100235.  
  100236.  
  100237.  
  100238.  
  100239.  
  100240.  
  100241. typedef struct IXMLDOMParseError IXMLDOMParseError;
  100242.  
  100243.  
  100244.  
  100245.  
  100246.  
  100247.  
  100248. typedef struct IXTLRuntime IXTLRuntime;
  100249.  
  100250.  
  100251.  
  100252.  
  100253.  
  100254.  
  100255. typedef struct XMLDOMDocumentEvents XMLDOMDocumentEvents;
  100256. # 185 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100257. typedef struct DOMDocument DOMDocument;
  100258. # 197 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100259. typedef struct DOMFreeThreadedDocument DOMFreeThreadedDocument;
  100260.  
  100261.  
  100262.  
  100263.  
  100264.  
  100265.  
  100266.  
  100267. typedef struct IXMLHttpRequest IXMLHttpRequest;
  100268. # 216 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100269. typedef struct XMLHTTPRequest XMLHTTPRequest;
  100270.  
  100271.  
  100272.  
  100273.  
  100274.  
  100275.  
  100276.  
  100277. typedef struct IXMLDSOControl IXMLDSOControl;
  100278. # 235 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100279. typedef struct XMLDSOControl XMLDSOControl;
  100280.  
  100281.  
  100282.  
  100283.  
  100284.  
  100285.  
  100286.  
  100287. typedef struct IXMLElementCollection IXMLElementCollection;
  100288.  
  100289.  
  100290.  
  100291.  
  100292.  
  100293.  
  100294. typedef struct IXMLDocument IXMLDocument;
  100295.  
  100296.  
  100297.  
  100298.  
  100299.  
  100300.  
  100301. typedef struct IXMLDocument2 IXMLDocument2;
  100302.  
  100303.  
  100304.  
  100305.  
  100306.  
  100307.  
  100308. typedef struct IXMLElement IXMLElement;
  100309.  
  100310.  
  100311.  
  100312.  
  100313.  
  100314.  
  100315. typedef struct IXMLElement2 IXMLElement2;
  100316.  
  100317.  
  100318.  
  100319.  
  100320.  
  100321.  
  100322. typedef struct IXMLAttribute IXMLAttribute;
  100323.  
  100324.  
  100325.  
  100326.  
  100327.  
  100328.  
  100329. typedef struct IXMLError IXMLError;
  100330. # 296 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100331. typedef struct XMLDocument XMLDocument;
  100332.  
  100333.  
  100334.  
  100335.  
  100336.  
  100337.  
  100338.  
  100339. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 1 3
  100340. #pragma option push -b -a8 -pc -A- -w-pun
  100341. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 3
  100342. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  100343. #pragma option push -b -a8 -pc -A- -w-pun
  100344. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  100345. #pragma option pop
  100346. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 2 3
  100347.  
  100348. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  100349. #pragma option push -b -a8 -pc -A- -w-pun
  100350. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  100351. #pragma option pop
  100352. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 2 3
  100353.  
  100354.  
  100355.  
  100356.  
  100357.  
  100358.  
  100359.  
  100360. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  100361. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 2 3
  100362.  
  100363. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  100364. #pragma option push -b -a8 -pc -A- -w-pun
  100365. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  100366. #pragma option pop
  100367. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 2 3
  100368. # 599 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/unknwn.h" 3
  100369. #pragma option pop
  100370. # 303 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 2 3
  100371.  
  100372. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 1 3
  100373. #pragma option push -b -a8 -pc -A- -w-pun
  100374. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  100375. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  100376. #pragma option push -b -a8 -pc -A- -w-pun
  100377. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  100378. #pragma option pop
  100379. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  100380.  
  100381. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  100382. #pragma option push -b -a8 -pc -A- -w-pun
  100383. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  100384. #pragma option pop
  100385. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  100386.  
  100387.  
  100388.  
  100389.  
  100390.  
  100391.  
  100392.  
  100393. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  100394. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  100395.  
  100396. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  100397. #pragma option push -b -a8 -pc -A- -w-pun
  100398. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  100399. #pragma option pop
  100400. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  100401. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  100402. #pragma option pop
  100403. # 304 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 2 3
  100404.  
  100405. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 1 3
  100406. #pragma option push -b -a8 -pc -A- -w-pun
  100407. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  100408. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  100409. #pragma option push -b -a8 -pc -A- -w-pun
  100410. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  100411. #pragma option pop
  100412. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  100413.  
  100414. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  100415. #pragma option push -b -a8 -pc -A- -w-pun
  100416. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  100417. #pragma option pop
  100418. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  100419.  
  100420.  
  100421.  
  100422.  
  100423.  
  100424.  
  100425.  
  100426. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  100427. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  100428.  
  100429. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  100430. #pragma option push -b -a8 -pc -A- -w-pun
  100431. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  100432. #pragma option pop
  100433. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  100434. # 6068 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  100435. #pragma option pop
  100436. # 305 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 2 3
  100437. # 321 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100438. #pragma warning(push)
  100439. #pragma warning(disable: 4001)
  100440.  
  100441. #pragma warning(push)
  100442. #pragma warning(disable: 4001)
  100443.  
  100444. #pragma warning(pop)
  100445. #pragma warning(pop)
  100446. #pragma region Desktop Family
  100447. #pragma endregion
  100448.  
  100449.  
  100450.  
  100451.  
  100452.  
  100453. #pragma region Desktop Family
  100454.  
  100455. typedef struct _xml_error
  100456.     {
  100457.     unsigned int _nLine;
  100458.     BSTR _pchBuf;
  100459.     unsigned int _cchBuf;
  100460.     unsigned int _ich;
  100461.     BSTR _pszFound;
  100462.     BSTR _pszExpected;
  100463.     DWORD _reserved1;
  100464.     DWORD _reserved2;
  100465.     } XML_ERROR;
  100466.  
  100467.  
  100468.  
  100469. extern RPC_IF_HANDLE __MIDL_itf_msxml_0000_0000_v0_0_c_ifspec;
  100470. extern RPC_IF_HANDLE __MIDL_itf_msxml_0000_0000_v0_0_s_ifspec;
  100471. # 367 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100472. #pragma region Desktop Family
  100473. #pragma endregion
  100474. # 388 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100475. typedef
  100476. enum tagDOMNodeType
  100477.     {
  100478.         NODE_INVALID = 0,
  100479.         NODE_ELEMENT = ( NODE_INVALID + 1 ) ,
  100480.         NODE_ATTRIBUTE = ( NODE_ELEMENT + 1 ) ,
  100481.         NODE_TEXT = ( NODE_ATTRIBUTE + 1 ) ,
  100482.         NODE_CDATA_SECTION = ( NODE_TEXT + 1 ) ,
  100483.         NODE_ENTITY_REFERENCE = ( NODE_CDATA_SECTION + 1 ) ,
  100484.         NODE_ENTITY = ( NODE_ENTITY_REFERENCE + 1 ) ,
  100485.         NODE_PROCESSING_INSTRUCTION = ( NODE_ENTITY + 1 ) ,
  100486.         NODE_COMMENT = ( NODE_PROCESSING_INSTRUCTION + 1 ) ,
  100487.         NODE_DOCUMENT = ( NODE_COMMENT + 1 ) ,
  100488.         NODE_DOCUMENT_TYPE = ( NODE_DOCUMENT + 1 ) ,
  100489.         NODE_DOCUMENT_FRAGMENT = ( NODE_DOCUMENT_TYPE + 1 ) ,
  100490.         NODE_NOTATION = ( NODE_DOCUMENT_FRAGMENT + 1 )
  100491.     } DOMNodeType;
  100492.  
  100493.  
  100494.  
  100495.  
  100496.  
  100497.  
  100498.  
  100499. #pragma region Desktop Family
  100500. #pragma endregion
  100501. # 423 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100502. typedef
  100503. enum tagXMLEMEM_TYPE
  100504.     {
  100505.         XMLELEMTYPE_ELEMENT = 0,
  100506.         XMLELEMTYPE_TEXT = ( XMLELEMTYPE_ELEMENT + 1 ) ,
  100507.         XMLELEMTYPE_COMMENT = ( XMLELEMTYPE_TEXT + 1 ) ,
  100508.         XMLELEMTYPE_DOCUMENT = ( XMLELEMTYPE_COMMENT + 1 ) ,
  100509.         XMLELEMTYPE_DTD = ( XMLELEMTYPE_DOCUMENT + 1 ) ,
  100510.         XMLELEMTYPE_PI = ( XMLELEMTYPE_DTD + 1 ) ,
  100511.         XMLELEMTYPE_OTHER = ( XMLELEMTYPE_PI + 1 )
  100512.     } XMLELEM_TYPE;
  100513.  
  100514.  
  100515. extern const IID LIBID_MSXML;
  100516. # 445 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100517. extern const IID IID_IXMLDOMImplementation;
  100518. # 463 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100519.     typedef struct IXMLDOMImplementationVtbl
  100520.     {
  100521.  
  100522.  
  100523.         HRESULT ( __stdcall *QueryInterface )(
  100524.             IXMLDOMImplementation * This,
  100525.                        const IID * riid,
  100526.  
  100527.                           void **ppvObject);
  100528.  
  100529.         ULONG ( __stdcall *AddRef )(
  100530.             IXMLDOMImplementation * This);
  100531.  
  100532.         ULONG ( __stdcall *Release )(
  100533.             IXMLDOMImplementation * This);
  100534.  
  100535.         HRESULT ( __stdcall *GetTypeInfoCount )(
  100536.             IXMLDOMImplementation * This,
  100537.                         UINT *pctinfo);
  100538.  
  100539.         HRESULT ( __stdcall *GetTypeInfo )(
  100540.             IXMLDOMImplementation * This,
  100541.                        UINT iTInfo,
  100542.                        LCID lcid,
  100543.                         ITypeInfo **ppTInfo);
  100544.  
  100545.         HRESULT ( __stdcall *GetIDsOfNames )(
  100546.             IXMLDOMImplementation * This,
  100547.                        const IID * riid,
  100548.                                 LPOLESTR *rgszNames,
  100549.                               UINT cNames,
  100550.                        LCID lcid,
  100551.                                  DISPID *rgDispId);
  100552.  
  100553.                       HRESULT ( __stdcall *Invoke )(
  100554.             IXMLDOMImplementation * This,
  100555.  
  100556.                   DISPID dispIdMember,
  100557.  
  100558.                   const IID * riid,
  100559.  
  100560.                   LCID lcid,
  100561.  
  100562.                   WORD wFlags,
  100563.  
  100564.                   DISPPARAMS *pDispParams,
  100565.  
  100566.                        VARIANT *pVarResult,
  100567.  
  100568.                        EXCEPINFO *pExcepInfo,
  100569.  
  100570.                        UINT *puArgErr);
  100571.  
  100572.                    HRESULT ( __stdcall *hasFeature )(
  100573.             IXMLDOMImplementation * This,
  100574.                        BSTR feature,
  100575.                        BSTR version,
  100576.                                 VARIANT_BOOL *hasFeature);
  100577.  
  100578.  
  100579.     } IXMLDOMImplementationVtbl;
  100580.  
  100581.     struct IXMLDOMImplementation
  100582.     {
  100583.                    struct IXMLDOMImplementationVtbl *lpVtbl;
  100584.     };
  100585. # 579 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100586. extern const IID IID_IXMLDOMNode;
  100587. # 711 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100588.     typedef struct IXMLDOMNodeVtbl
  100589.     {
  100590.  
  100591.  
  100592.         HRESULT ( __stdcall *QueryInterface )(
  100593.             IXMLDOMNode * This,
  100594.                        const IID * riid,
  100595.  
  100596.                           void **ppvObject);
  100597.  
  100598.         ULONG ( __stdcall *AddRef )(
  100599.             IXMLDOMNode * This);
  100600.  
  100601.         ULONG ( __stdcall *Release )(
  100602.             IXMLDOMNode * This);
  100603.  
  100604.         HRESULT ( __stdcall *GetTypeInfoCount )(
  100605.             IXMLDOMNode * This,
  100606.                         UINT *pctinfo);
  100607.  
  100608.         HRESULT ( __stdcall *GetTypeInfo )(
  100609.             IXMLDOMNode * This,
  100610.                        UINT iTInfo,
  100611.                        LCID lcid,
  100612.                         ITypeInfo **ppTInfo);
  100613.  
  100614.         HRESULT ( __stdcall *GetIDsOfNames )(
  100615.             IXMLDOMNode * This,
  100616.                        const IID * riid,
  100617.                                 LPOLESTR *rgszNames,
  100618.                               UINT cNames,
  100619.                        LCID lcid,
  100620.                                  DISPID *rgDispId);
  100621.  
  100622.                       HRESULT ( __stdcall *Invoke )(
  100623.             IXMLDOMNode * This,
  100624.  
  100625.                   DISPID dispIdMember,
  100626.  
  100627.                   const IID * riid,
  100628.  
  100629.                   LCID lcid,
  100630.  
  100631.                   WORD wFlags,
  100632.  
  100633.                   DISPPARAMS *pDispParams,
  100634.  
  100635.                        VARIANT *pVarResult,
  100636.  
  100637.                        EXCEPINFO *pExcepInfo,
  100638.  
  100639.                        UINT *puArgErr);
  100640.  
  100641.                                         HRESULT ( __stdcall *get_nodeName )(
  100642.             IXMLDOMNode * This,
  100643.                                 BSTR *name);
  100644.  
  100645.                                         HRESULT ( __stdcall *get_nodeValue )(
  100646.             IXMLDOMNode * This,
  100647.                                 VARIANT *value);
  100648.  
  100649.                                         HRESULT ( __stdcall *put_nodeValue )(
  100650.             IXMLDOMNode * This,
  100651.                        VARIANT value);
  100652.  
  100653.                                         HRESULT ( __stdcall *get_nodeType )(
  100654.             IXMLDOMNode * This,
  100655.                                 DOMNodeType *type);
  100656.  
  100657.                                         HRESULT ( __stdcall *get_parentNode )(
  100658.             IXMLDOMNode * This,
  100659.                                 IXMLDOMNode **parent);
  100660.  
  100661.                                         HRESULT ( __stdcall *get_childNodes )(
  100662.             IXMLDOMNode * This,
  100663.                                 IXMLDOMNodeList **childList);
  100664.  
  100665.                                         HRESULT ( __stdcall *get_firstChild )(
  100666.             IXMLDOMNode * This,
  100667.                                 IXMLDOMNode **firstChild);
  100668.  
  100669.                                         HRESULT ( __stdcall *get_lastChild )(
  100670.             IXMLDOMNode * This,
  100671.                                 IXMLDOMNode **lastChild);
  100672.  
  100673.                                         HRESULT ( __stdcall *get_previousSibling )(
  100674.             IXMLDOMNode * This,
  100675.                                 IXMLDOMNode **previousSibling);
  100676.  
  100677.                                         HRESULT ( __stdcall *get_nextSibling )(
  100678.             IXMLDOMNode * This,
  100679.                                 IXMLDOMNode **nextSibling);
  100680.  
  100681.                                         HRESULT ( __stdcall *get_attributes )(
  100682.             IXMLDOMNode * This,
  100683.                                 IXMLDOMNamedNodeMap **attributeMap);
  100684.  
  100685.                                HRESULT ( __stdcall *insertBefore )(
  100686.             IXMLDOMNode * This,
  100687.                        IXMLDOMNode *newChild,
  100688.                        VARIANT refChild,
  100689.                                 IXMLDOMNode **outNewChild);
  100690.  
  100691.                                HRESULT ( __stdcall *replaceChild )(
  100692.             IXMLDOMNode * This,
  100693.                        IXMLDOMNode *newChild,
  100694.                        IXMLDOMNode *oldChild,
  100695.                                 IXMLDOMNode **outOldChild);
  100696.  
  100697.                                HRESULT ( __stdcall *removeChild )(
  100698.             IXMLDOMNode * This,
  100699.                        IXMLDOMNode *childNode,
  100700.                                 IXMLDOMNode **oldChild);
  100701.  
  100702.                                HRESULT ( __stdcall *appendChild )(
  100703.             IXMLDOMNode * This,
  100704.                        IXMLDOMNode *newChild,
  100705.                                 IXMLDOMNode **outNewChild);
  100706.  
  100707.                                HRESULT ( __stdcall *hasChildNodes )(
  100708.             IXMLDOMNode * This,
  100709.                                 VARIANT_BOOL *hasChild);
  100710.  
  100711.                                         HRESULT ( __stdcall *get_ownerDocument )(
  100712.             IXMLDOMNode * This,
  100713.                                 IXMLDOMDocument **XMLDOMDocument);
  100714.  
  100715.                                HRESULT ( __stdcall *cloneNode )(
  100716.             IXMLDOMNode * This,
  100717.                        VARIANT_BOOL deep,
  100718.                                 IXMLDOMNode **cloneRoot);
  100719.  
  100720.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  100721.             IXMLDOMNode * This,
  100722.                                 BSTR *nodeType);
  100723.  
  100724.                                         HRESULT ( __stdcall *get_text )(
  100725.             IXMLDOMNode * This,
  100726.                                 BSTR *text);
  100727.  
  100728.                                         HRESULT ( __stdcall *put_text )(
  100729.             IXMLDOMNode * This,
  100730.                        BSTR text);
  100731.  
  100732.                                         HRESULT ( __stdcall *get_specified )(
  100733.             IXMLDOMNode * This,
  100734.                                 VARIANT_BOOL *isSpecified);
  100735.  
  100736.                                         HRESULT ( __stdcall *get_definition )(
  100737.             IXMLDOMNode * This,
  100738.                                 IXMLDOMNode **definitionNode);
  100739.  
  100740.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  100741.             IXMLDOMNode * This,
  100742.                                 VARIANT *typedValue);
  100743.  
  100744.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  100745.             IXMLDOMNode * This,
  100746.                        VARIANT typedValue);
  100747.  
  100748.                                         HRESULT ( __stdcall *get_dataType )(
  100749.             IXMLDOMNode * This,
  100750.                                 VARIANT *dataTypeName);
  100751.  
  100752.                                         HRESULT ( __stdcall *put_dataType )(
  100753.             IXMLDOMNode * This,
  100754.                        BSTR dataTypeName);
  100755.  
  100756.                                         HRESULT ( __stdcall *get_xml )(
  100757.             IXMLDOMNode * This,
  100758.                                 BSTR *xmlString);
  100759.  
  100760.                                HRESULT ( __stdcall *transformNode )(
  100761.             IXMLDOMNode * This,
  100762.                        IXMLDOMNode *stylesheet,
  100763.                                 BSTR *xmlString);
  100764.  
  100765.                                HRESULT ( __stdcall *selectNodes )(
  100766.             IXMLDOMNode * This,
  100767.                        BSTR queryString,
  100768.                                 IXMLDOMNodeList **resultList);
  100769.  
  100770.                                HRESULT ( __stdcall *selectSingleNode )(
  100771.             IXMLDOMNode * This,
  100772.                        BSTR queryString,
  100773.                                 IXMLDOMNode **resultNode);
  100774.  
  100775.                                         HRESULT ( __stdcall *get_parsed )(
  100776.             IXMLDOMNode * This,
  100777.                                 VARIANT_BOOL *isParsed);
  100778.  
  100779.                                         HRESULT ( __stdcall *get_namespaceURI )(
  100780.             IXMLDOMNode * This,
  100781.                                 BSTR *namespaceURI);
  100782.  
  100783.                                         HRESULT ( __stdcall *get_prefix )(
  100784.             IXMLDOMNode * This,
  100785.                                 BSTR *prefixString);
  100786.  
  100787.                                         HRESULT ( __stdcall *get_baseName )(
  100788.             IXMLDOMNode * This,
  100789.                                 BSTR *nameString);
  100790.  
  100791.                                HRESULT ( __stdcall *transformNodeToObject )(
  100792.             IXMLDOMNode * This,
  100793.                        IXMLDOMNode *stylesheet,
  100794.                        VARIANT outputObject);
  100795.  
  100796.  
  100797.     } IXMLDOMNodeVtbl;
  100798.  
  100799.     struct IXMLDOMNode
  100800.     {
  100801.                    struct IXMLDOMNodeVtbl *lpVtbl;
  100802.     };
  100803. # 1081 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100804. extern const IID IID_IXMLDOMDocumentFragment;
  100805. # 1094 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  100806.     typedef struct IXMLDOMDocumentFragmentVtbl
  100807.     {
  100808.  
  100809.  
  100810.         HRESULT ( __stdcall *QueryInterface )(
  100811.             IXMLDOMDocumentFragment * This,
  100812.                        const IID * riid,
  100813.  
  100814.                           void **ppvObject);
  100815.  
  100816.         ULONG ( __stdcall *AddRef )(
  100817.             IXMLDOMDocumentFragment * This);
  100818.  
  100819.         ULONG ( __stdcall *Release )(
  100820.             IXMLDOMDocumentFragment * This);
  100821.  
  100822.         HRESULT ( __stdcall *GetTypeInfoCount )(
  100823.             IXMLDOMDocumentFragment * This,
  100824.                         UINT *pctinfo);
  100825.  
  100826.         HRESULT ( __stdcall *GetTypeInfo )(
  100827.             IXMLDOMDocumentFragment * This,
  100828.                        UINT iTInfo,
  100829.                        LCID lcid,
  100830.                         ITypeInfo **ppTInfo);
  100831.  
  100832.         HRESULT ( __stdcall *GetIDsOfNames )(
  100833.             IXMLDOMDocumentFragment * This,
  100834.                        const IID * riid,
  100835.                                 LPOLESTR *rgszNames,
  100836.                               UINT cNames,
  100837.                        LCID lcid,
  100838.                                  DISPID *rgDispId);
  100839.  
  100840.                       HRESULT ( __stdcall *Invoke )(
  100841.             IXMLDOMDocumentFragment * This,
  100842.  
  100843.                   DISPID dispIdMember,
  100844.  
  100845.                   const IID * riid,
  100846.  
  100847.                   LCID lcid,
  100848.  
  100849.                   WORD wFlags,
  100850.  
  100851.                   DISPPARAMS *pDispParams,
  100852.  
  100853.                        VARIANT *pVarResult,
  100854.  
  100855.                        EXCEPINFO *pExcepInfo,
  100856.  
  100857.                        UINT *puArgErr);
  100858.  
  100859.                                         HRESULT ( __stdcall *get_nodeName )(
  100860.             IXMLDOMDocumentFragment * This,
  100861.                                 BSTR *name);
  100862.  
  100863.                                         HRESULT ( __stdcall *get_nodeValue )(
  100864.             IXMLDOMDocumentFragment * This,
  100865.                                 VARIANT *value);
  100866.  
  100867.                                         HRESULT ( __stdcall *put_nodeValue )(
  100868.             IXMLDOMDocumentFragment * This,
  100869.                        VARIANT value);
  100870.  
  100871.                                         HRESULT ( __stdcall *get_nodeType )(
  100872.             IXMLDOMDocumentFragment * This,
  100873.                                 DOMNodeType *type);
  100874.  
  100875.                                         HRESULT ( __stdcall *get_parentNode )(
  100876.             IXMLDOMDocumentFragment * This,
  100877.                                 IXMLDOMNode **parent);
  100878.  
  100879.                                         HRESULT ( __stdcall *get_childNodes )(
  100880.             IXMLDOMDocumentFragment * This,
  100881.                                 IXMLDOMNodeList **childList);
  100882.  
  100883.                                         HRESULT ( __stdcall *get_firstChild )(
  100884.             IXMLDOMDocumentFragment * This,
  100885.                                 IXMLDOMNode **firstChild);
  100886.  
  100887.                                         HRESULT ( __stdcall *get_lastChild )(
  100888.             IXMLDOMDocumentFragment * This,
  100889.                                 IXMLDOMNode **lastChild);
  100890.  
  100891.                                         HRESULT ( __stdcall *get_previousSibling )(
  100892.             IXMLDOMDocumentFragment * This,
  100893.                                 IXMLDOMNode **previousSibling);
  100894.  
  100895.                                         HRESULT ( __stdcall *get_nextSibling )(
  100896.             IXMLDOMDocumentFragment * This,
  100897.                                 IXMLDOMNode **nextSibling);
  100898.  
  100899.                                         HRESULT ( __stdcall *get_attributes )(
  100900.             IXMLDOMDocumentFragment * This,
  100901.                                 IXMLDOMNamedNodeMap **attributeMap);
  100902.  
  100903.                                HRESULT ( __stdcall *insertBefore )(
  100904.             IXMLDOMDocumentFragment * This,
  100905.                        IXMLDOMNode *newChild,
  100906.                        VARIANT refChild,
  100907.                                 IXMLDOMNode **outNewChild);
  100908.  
  100909.                                HRESULT ( __stdcall *replaceChild )(
  100910.             IXMLDOMDocumentFragment * This,
  100911.                        IXMLDOMNode *newChild,
  100912.                        IXMLDOMNode *oldChild,
  100913.                                 IXMLDOMNode **outOldChild);
  100914.  
  100915.                                HRESULT ( __stdcall *removeChild )(
  100916.             IXMLDOMDocumentFragment * This,
  100917.                        IXMLDOMNode *childNode,
  100918.                                 IXMLDOMNode **oldChild);
  100919.  
  100920.                                HRESULT ( __stdcall *appendChild )(
  100921.             IXMLDOMDocumentFragment * This,
  100922.                        IXMLDOMNode *newChild,
  100923.                                 IXMLDOMNode **outNewChild);
  100924.  
  100925.                                HRESULT ( __stdcall *hasChildNodes )(
  100926.             IXMLDOMDocumentFragment * This,
  100927.                                 VARIANT_BOOL *hasChild);
  100928.  
  100929.                                         HRESULT ( __stdcall *get_ownerDocument )(
  100930.             IXMLDOMDocumentFragment * This,
  100931.                                 IXMLDOMDocument **XMLDOMDocument);
  100932.  
  100933.                                HRESULT ( __stdcall *cloneNode )(
  100934.             IXMLDOMDocumentFragment * This,
  100935.                        VARIANT_BOOL deep,
  100936.                                 IXMLDOMNode **cloneRoot);
  100937.  
  100938.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  100939.             IXMLDOMDocumentFragment * This,
  100940.                                 BSTR *nodeType);
  100941.  
  100942.                                         HRESULT ( __stdcall *get_text )(
  100943.             IXMLDOMDocumentFragment * This,
  100944.                                 BSTR *text);
  100945.  
  100946.                                         HRESULT ( __stdcall *put_text )(
  100947.             IXMLDOMDocumentFragment * This,
  100948.                        BSTR text);
  100949.  
  100950.                                         HRESULT ( __stdcall *get_specified )(
  100951.             IXMLDOMDocumentFragment * This,
  100952.                                 VARIANT_BOOL *isSpecified);
  100953.  
  100954.                                         HRESULT ( __stdcall *get_definition )(
  100955.             IXMLDOMDocumentFragment * This,
  100956.                                 IXMLDOMNode **definitionNode);
  100957.  
  100958.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  100959.             IXMLDOMDocumentFragment * This,
  100960.                                 VARIANT *typedValue);
  100961.  
  100962.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  100963.             IXMLDOMDocumentFragment * This,
  100964.                        VARIANT typedValue);
  100965.  
  100966.                                         HRESULT ( __stdcall *get_dataType )(
  100967.             IXMLDOMDocumentFragment * This,
  100968.                                 VARIANT *dataTypeName);
  100969.  
  100970.                                         HRESULT ( __stdcall *put_dataType )(
  100971.             IXMLDOMDocumentFragment * This,
  100972.                        BSTR dataTypeName);
  100973.  
  100974.                                         HRESULT ( __stdcall *get_xml )(
  100975.             IXMLDOMDocumentFragment * This,
  100976.                                 BSTR *xmlString);
  100977.  
  100978.                                HRESULT ( __stdcall *transformNode )(
  100979.             IXMLDOMDocumentFragment * This,
  100980.                        IXMLDOMNode *stylesheet,
  100981.                                 BSTR *xmlString);
  100982.  
  100983.                                HRESULT ( __stdcall *selectNodes )(
  100984.             IXMLDOMDocumentFragment * This,
  100985.                        BSTR queryString,
  100986.                                 IXMLDOMNodeList **resultList);
  100987.  
  100988.                                HRESULT ( __stdcall *selectSingleNode )(
  100989.             IXMLDOMDocumentFragment * This,
  100990.                        BSTR queryString,
  100991.                                 IXMLDOMNode **resultNode);
  100992.  
  100993.                                         HRESULT ( __stdcall *get_parsed )(
  100994.             IXMLDOMDocumentFragment * This,
  100995.                                 VARIANT_BOOL *isParsed);
  100996.  
  100997.                                         HRESULT ( __stdcall *get_namespaceURI )(
  100998.             IXMLDOMDocumentFragment * This,
  100999.                                 BSTR *namespaceURI);
  101000.  
  101001.                                         HRESULT ( __stdcall *get_prefix )(
  101002.             IXMLDOMDocumentFragment * This,
  101003.                                 BSTR *prefixString);
  101004.  
  101005.                                         HRESULT ( __stdcall *get_baseName )(
  101006.             IXMLDOMDocumentFragment * This,
  101007.                                 BSTR *nameString);
  101008.  
  101009.                                HRESULT ( __stdcall *transformNodeToObject )(
  101010.             IXMLDOMDocumentFragment * This,
  101011.                        IXMLDOMNode *stylesheet,
  101012.                        VARIANT outputObject);
  101013.  
  101014.  
  101015.     } IXMLDOMDocumentFragmentVtbl;
  101016.  
  101017.     struct IXMLDOMDocumentFragment
  101018.     {
  101019.                    struct IXMLDOMDocumentFragmentVtbl *lpVtbl;
  101020.     };
  101021. # 1465 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101022. extern const IID IID_IXMLDOMDocument;
  101023. # 1591 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101024.     typedef struct IXMLDOMDocumentVtbl
  101025.     {
  101026.  
  101027.  
  101028.         HRESULT ( __stdcall *QueryInterface )(
  101029.             IXMLDOMDocument * This,
  101030.                        const IID * riid,
  101031.  
  101032.                           void **ppvObject);
  101033.  
  101034.         ULONG ( __stdcall *AddRef )(
  101035.             IXMLDOMDocument * This);
  101036.  
  101037.         ULONG ( __stdcall *Release )(
  101038.             IXMLDOMDocument * This);
  101039.  
  101040.         HRESULT ( __stdcall *GetTypeInfoCount )(
  101041.             IXMLDOMDocument * This,
  101042.                         UINT *pctinfo);
  101043.  
  101044.         HRESULT ( __stdcall *GetTypeInfo )(
  101045.             IXMLDOMDocument * This,
  101046.                        UINT iTInfo,
  101047.                        LCID lcid,
  101048.                         ITypeInfo **ppTInfo);
  101049.  
  101050.         HRESULT ( __stdcall *GetIDsOfNames )(
  101051.             IXMLDOMDocument * This,
  101052.                        const IID * riid,
  101053.                                 LPOLESTR *rgszNames,
  101054.                               UINT cNames,
  101055.                        LCID lcid,
  101056.                                  DISPID *rgDispId);
  101057.  
  101058.                       HRESULT ( __stdcall *Invoke )(
  101059.             IXMLDOMDocument * This,
  101060.  
  101061.                   DISPID dispIdMember,
  101062.  
  101063.                   const IID * riid,
  101064.  
  101065.                   LCID lcid,
  101066.  
  101067.                   WORD wFlags,
  101068.  
  101069.                   DISPPARAMS *pDispParams,
  101070.  
  101071.                        VARIANT *pVarResult,
  101072.  
  101073.                        EXCEPINFO *pExcepInfo,
  101074.  
  101075.                        UINT *puArgErr);
  101076.  
  101077.                                         HRESULT ( __stdcall *get_nodeName )(
  101078.             IXMLDOMDocument * This,
  101079.                                 BSTR *name);
  101080.  
  101081.                                         HRESULT ( __stdcall *get_nodeValue )(
  101082.             IXMLDOMDocument * This,
  101083.                                 VARIANT *value);
  101084.  
  101085.                                         HRESULT ( __stdcall *put_nodeValue )(
  101086.             IXMLDOMDocument * This,
  101087.                        VARIANT value);
  101088.  
  101089.                                         HRESULT ( __stdcall *get_nodeType )(
  101090.             IXMLDOMDocument * This,
  101091.                                 DOMNodeType *type);
  101092.  
  101093.                                         HRESULT ( __stdcall *get_parentNode )(
  101094.             IXMLDOMDocument * This,
  101095.                                 IXMLDOMNode **parent);
  101096.  
  101097.                                         HRESULT ( __stdcall *get_childNodes )(
  101098.             IXMLDOMDocument * This,
  101099.                                 IXMLDOMNodeList **childList);
  101100.  
  101101.                                         HRESULT ( __stdcall *get_firstChild )(
  101102.             IXMLDOMDocument * This,
  101103.                                 IXMLDOMNode **firstChild);
  101104.  
  101105.                                         HRESULT ( __stdcall *get_lastChild )(
  101106.             IXMLDOMDocument * This,
  101107.                                 IXMLDOMNode **lastChild);
  101108.  
  101109.                                         HRESULT ( __stdcall *get_previousSibling )(
  101110.             IXMLDOMDocument * This,
  101111.                                 IXMLDOMNode **previousSibling);
  101112.  
  101113.                                         HRESULT ( __stdcall *get_nextSibling )(
  101114.             IXMLDOMDocument * This,
  101115.                                 IXMLDOMNode **nextSibling);
  101116.  
  101117.                                         HRESULT ( __stdcall *get_attributes )(
  101118.             IXMLDOMDocument * This,
  101119.                                 IXMLDOMNamedNodeMap **attributeMap);
  101120.  
  101121.                                HRESULT ( __stdcall *insertBefore )(
  101122.             IXMLDOMDocument * This,
  101123.                        IXMLDOMNode *newChild,
  101124.                        VARIANT refChild,
  101125.                                 IXMLDOMNode **outNewChild);
  101126.  
  101127.                                HRESULT ( __stdcall *replaceChild )(
  101128.             IXMLDOMDocument * This,
  101129.                        IXMLDOMNode *newChild,
  101130.                        IXMLDOMNode *oldChild,
  101131.                                 IXMLDOMNode **outOldChild);
  101132.  
  101133.                                HRESULT ( __stdcall *removeChild )(
  101134.             IXMLDOMDocument * This,
  101135.                        IXMLDOMNode *childNode,
  101136.                                 IXMLDOMNode **oldChild);
  101137.  
  101138.                                HRESULT ( __stdcall *appendChild )(
  101139.             IXMLDOMDocument * This,
  101140.                        IXMLDOMNode *newChild,
  101141.                                 IXMLDOMNode **outNewChild);
  101142.  
  101143.                                HRESULT ( __stdcall *hasChildNodes )(
  101144.             IXMLDOMDocument * This,
  101145.                                 VARIANT_BOOL *hasChild);
  101146.  
  101147.                                         HRESULT ( __stdcall *get_ownerDocument )(
  101148.             IXMLDOMDocument * This,
  101149.                                 IXMLDOMDocument **XMLDOMDocument);
  101150.  
  101151.                                HRESULT ( __stdcall *cloneNode )(
  101152.             IXMLDOMDocument * This,
  101153.                        VARIANT_BOOL deep,
  101154.                                 IXMLDOMNode **cloneRoot);
  101155.  
  101156.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  101157.             IXMLDOMDocument * This,
  101158.                                 BSTR *nodeType);
  101159.  
  101160.                                         HRESULT ( __stdcall *get_text )(
  101161.             IXMLDOMDocument * This,
  101162.                                 BSTR *text);
  101163.  
  101164.                                         HRESULT ( __stdcall *put_text )(
  101165.             IXMLDOMDocument * This,
  101166.                        BSTR text);
  101167.  
  101168.                                         HRESULT ( __stdcall *get_specified )(
  101169.             IXMLDOMDocument * This,
  101170.                                 VARIANT_BOOL *isSpecified);
  101171.  
  101172.                                         HRESULT ( __stdcall *get_definition )(
  101173.             IXMLDOMDocument * This,
  101174.                                 IXMLDOMNode **definitionNode);
  101175.  
  101176.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  101177.             IXMLDOMDocument * This,
  101178.                                 VARIANT *typedValue);
  101179.  
  101180.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  101181.             IXMLDOMDocument * This,
  101182.                        VARIANT typedValue);
  101183.  
  101184.                                         HRESULT ( __stdcall *get_dataType )(
  101185.             IXMLDOMDocument * This,
  101186.                                 VARIANT *dataTypeName);
  101187.  
  101188.                                         HRESULT ( __stdcall *put_dataType )(
  101189.             IXMLDOMDocument * This,
  101190.                        BSTR dataTypeName);
  101191.  
  101192.                                         HRESULT ( __stdcall *get_xml )(
  101193.             IXMLDOMDocument * This,
  101194.                                 BSTR *xmlString);
  101195.  
  101196.                                HRESULT ( __stdcall *transformNode )(
  101197.             IXMLDOMDocument * This,
  101198.                        IXMLDOMNode *stylesheet,
  101199.                                 BSTR *xmlString);
  101200.  
  101201.                                HRESULT ( __stdcall *selectNodes )(
  101202.             IXMLDOMDocument * This,
  101203.                        BSTR queryString,
  101204.                                 IXMLDOMNodeList **resultList);
  101205.  
  101206.                                HRESULT ( __stdcall *selectSingleNode )(
  101207.             IXMLDOMDocument * This,
  101208.                        BSTR queryString,
  101209.                                 IXMLDOMNode **resultNode);
  101210.  
  101211.                                         HRESULT ( __stdcall *get_parsed )(
  101212.             IXMLDOMDocument * This,
  101213.                                 VARIANT_BOOL *isParsed);
  101214.  
  101215.                                         HRESULT ( __stdcall *get_namespaceURI )(
  101216.             IXMLDOMDocument * This,
  101217.                                 BSTR *namespaceURI);
  101218.  
  101219.                                         HRESULT ( __stdcall *get_prefix )(
  101220.             IXMLDOMDocument * This,
  101221.                                 BSTR *prefixString);
  101222.  
  101223.                                         HRESULT ( __stdcall *get_baseName )(
  101224.             IXMLDOMDocument * This,
  101225.                                 BSTR *nameString);
  101226.  
  101227.                                HRESULT ( __stdcall *transformNodeToObject )(
  101228.             IXMLDOMDocument * This,
  101229.                        IXMLDOMNode *stylesheet,
  101230.                        VARIANT outputObject);
  101231.  
  101232.                                         HRESULT ( __stdcall *get_doctype )(
  101233.             IXMLDOMDocument * This,
  101234.                                 IXMLDOMDocumentType **documentType);
  101235.  
  101236.                                         HRESULT ( __stdcall *get_implementation )(
  101237.             IXMLDOMDocument * This,
  101238.                                 IXMLDOMImplementation **impl);
  101239.  
  101240.                                         HRESULT ( __stdcall *get_documentElement )(
  101241.             IXMLDOMDocument * This,
  101242.                                 IXMLDOMElement **DOMElement);
  101243.  
  101244.                                            HRESULT ( __stdcall *putref_documentElement )(
  101245.             IXMLDOMDocument * This,
  101246.                        IXMLDOMElement *DOMElement);
  101247.  
  101248.                                HRESULT ( __stdcall *createElement )(
  101249.             IXMLDOMDocument * This,
  101250.                        BSTR tagName,
  101251.                                 IXMLDOMElement **element);
  101252.  
  101253.                                HRESULT ( __stdcall *createDocumentFragment )(
  101254.             IXMLDOMDocument * This,
  101255.                                 IXMLDOMDocumentFragment **docFrag);
  101256.  
  101257.                                HRESULT ( __stdcall *createTextNode )(
  101258.             IXMLDOMDocument * This,
  101259.                        BSTR data,
  101260.                                 IXMLDOMText **text);
  101261.  
  101262.                                HRESULT ( __stdcall *createComment )(
  101263.             IXMLDOMDocument * This,
  101264.                        BSTR data,
  101265.                                 IXMLDOMComment **comment);
  101266.  
  101267.                                HRESULT ( __stdcall *createCDATASection )(
  101268.             IXMLDOMDocument * This,
  101269.                        BSTR data,
  101270.                                 IXMLDOMCDATASection **cdata);
  101271.  
  101272.                                HRESULT ( __stdcall *createProcessingInstruction )(
  101273.             IXMLDOMDocument * This,
  101274.                        BSTR target,
  101275.                        BSTR data,
  101276.                                 IXMLDOMProcessingInstruction **pi);
  101277.  
  101278.                                HRESULT ( __stdcall *createAttribute )(
  101279.             IXMLDOMDocument * This,
  101280.                        BSTR name,
  101281.                                 IXMLDOMAttribute **attribute);
  101282.  
  101283.                                HRESULT ( __stdcall *createEntityReference )(
  101284.             IXMLDOMDocument * This,
  101285.                        BSTR name,
  101286.                                 IXMLDOMEntityReference **entityRef);
  101287.  
  101288.                                HRESULT ( __stdcall *getElementsByTagName )(
  101289.             IXMLDOMDocument * This,
  101290.                        BSTR tagName,
  101291.                                 IXMLDOMNodeList **resultList);
  101292.  
  101293.                                HRESULT ( __stdcall *createNode )(
  101294.             IXMLDOMDocument * This,
  101295.                        VARIANT Type,
  101296.                        BSTR name,
  101297.                        BSTR namespaceURI,
  101298.                                 IXMLDOMNode **node);
  101299.  
  101300.                                HRESULT ( __stdcall *nodeFromID )(
  101301.             IXMLDOMDocument * This,
  101302.                        BSTR idString,
  101303.                                 IXMLDOMNode **node);
  101304.  
  101305.                                HRESULT ( __stdcall *load )(
  101306.             IXMLDOMDocument * This,
  101307.                        VARIANT xmlSource,
  101308.                                 VARIANT_BOOL *isSuccessful);
  101309.  
  101310.                                         HRESULT ( __stdcall *get_readyState )(
  101311.             IXMLDOMDocument * This,
  101312.                                 long *value);
  101313.  
  101314.                                         HRESULT ( __stdcall *get_parseError )(
  101315.             IXMLDOMDocument * This,
  101316.                                 IXMLDOMParseError **errorObj);
  101317.  
  101318.                                         HRESULT ( __stdcall *get_url )(
  101319.             IXMLDOMDocument * This,
  101320.                                 BSTR *urlString);
  101321.  
  101322.                                         HRESULT ( __stdcall *get_async )(
  101323.             IXMLDOMDocument * This,
  101324.                                 VARIANT_BOOL *isAsync);
  101325.  
  101326.                                         HRESULT ( __stdcall *put_async )(
  101327.             IXMLDOMDocument * This,
  101328.                        VARIANT_BOOL isAsync);
  101329.  
  101330.                                HRESULT ( __stdcall *abort )(
  101331.             IXMLDOMDocument * This);
  101332.  
  101333.                                HRESULT ( __stdcall *loadXML )(
  101334.             IXMLDOMDocument * This,
  101335.                        BSTR bstrXML,
  101336.                                 VARIANT_BOOL *isSuccessful);
  101337.  
  101338.                                HRESULT ( __stdcall *save )(
  101339.             IXMLDOMDocument * This,
  101340.                        VARIANT destination);
  101341.  
  101342.                                         HRESULT ( __stdcall *get_validateOnParse )(
  101343.             IXMLDOMDocument * This,
  101344.                                 VARIANT_BOOL *isValidating);
  101345.  
  101346.                                         HRESULT ( __stdcall *put_validateOnParse )(
  101347.             IXMLDOMDocument * This,
  101348.                        VARIANT_BOOL isValidating);
  101349.  
  101350.                                         HRESULT ( __stdcall *get_resolveExternals )(
  101351.             IXMLDOMDocument * This,
  101352.                                 VARIANT_BOOL *isResolving);
  101353.  
  101354.                                         HRESULT ( __stdcall *put_resolveExternals )(
  101355.             IXMLDOMDocument * This,
  101356.                        VARIANT_BOOL isResolving);
  101357.  
  101358.                                         HRESULT ( __stdcall *get_preserveWhiteSpace )(
  101359.             IXMLDOMDocument * This,
  101360.                                 VARIANT_BOOL *isPreserving);
  101361.  
  101362.                                         HRESULT ( __stdcall *put_preserveWhiteSpace )(
  101363.             IXMLDOMDocument * This,
  101364.                        VARIANT_BOOL isPreserving);
  101365.  
  101366.                                         HRESULT ( __stdcall *put_onreadystatechange )(
  101367.             IXMLDOMDocument * This,
  101368.                        VARIANT readystatechangeSink);
  101369.  
  101370.                                         HRESULT ( __stdcall *put_ondataavailable )(
  101371.             IXMLDOMDocument * This,
  101372.                        VARIANT ondataavailableSink);
  101373.  
  101374.                                         HRESULT ( __stdcall *put_ontransformnode )(
  101375.             IXMLDOMDocument * This,
  101376.                        VARIANT ontransformnodeSink);
  101377.  
  101378.  
  101379.     } IXMLDOMDocumentVtbl;
  101380.  
  101381.     struct IXMLDOMDocument
  101382.     {
  101383.                    struct IXMLDOMDocumentVtbl *lpVtbl;
  101384.     };
  101385. # 2207 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101386. extern const IID IID_IXMLDOMNodeList;
  101387. # 2235 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101388.     typedef struct IXMLDOMNodeListVtbl
  101389.     {
  101390.  
  101391.  
  101392.         HRESULT ( __stdcall *QueryInterface )(
  101393.             IXMLDOMNodeList * This,
  101394.                        const IID * riid,
  101395.  
  101396.                           void **ppvObject);
  101397.  
  101398.         ULONG ( __stdcall *AddRef )(
  101399.             IXMLDOMNodeList * This);
  101400.  
  101401.         ULONG ( __stdcall *Release )(
  101402.             IXMLDOMNodeList * This);
  101403.  
  101404.         HRESULT ( __stdcall *GetTypeInfoCount )(
  101405.             IXMLDOMNodeList * This,
  101406.                         UINT *pctinfo);
  101407.  
  101408.         HRESULT ( __stdcall *GetTypeInfo )(
  101409.             IXMLDOMNodeList * This,
  101410.                        UINT iTInfo,
  101411.                        LCID lcid,
  101412.                         ITypeInfo **ppTInfo);
  101413.  
  101414.         HRESULT ( __stdcall *GetIDsOfNames )(
  101415.             IXMLDOMNodeList * This,
  101416.                        const IID * riid,
  101417.                                 LPOLESTR *rgszNames,
  101418.                               UINT cNames,
  101419.                        LCID lcid,
  101420.                                  DISPID *rgDispId);
  101421.  
  101422.                       HRESULT ( __stdcall *Invoke )(
  101423.             IXMLDOMNodeList * This,
  101424.  
  101425.                   DISPID dispIdMember,
  101426.  
  101427.                   const IID * riid,
  101428.  
  101429.                   LCID lcid,
  101430.  
  101431.                   WORD wFlags,
  101432.  
  101433.                   DISPPARAMS *pDispParams,
  101434.  
  101435.                        VARIANT *pVarResult,
  101436.  
  101437.                        EXCEPINFO *pExcepInfo,
  101438.  
  101439.                        UINT *puArgErr);
  101440.  
  101441.                                         HRESULT ( __stdcall *get_item )(
  101442.             IXMLDOMNodeList * This,
  101443.                        long index,
  101444.                                 IXMLDOMNode **listItem);
  101445.  
  101446.                                         HRESULT ( __stdcall *get_length )(
  101447.             IXMLDOMNodeList * This,
  101448.                                 long *listLength);
  101449.  
  101450.                                HRESULT ( __stdcall *nextNode )(
  101451.             IXMLDOMNodeList * This,
  101452.                                 IXMLDOMNode **nextItem);
  101453.  
  101454.                                HRESULT ( __stdcall *reset )(
  101455.             IXMLDOMNodeList * This);
  101456.  
  101457.                                                 HRESULT ( __stdcall *get__newEnum )(
  101458.             IXMLDOMNodeList * This,
  101459.                                 IUnknown **ppUnk);
  101460.  
  101461.  
  101462.     } IXMLDOMNodeListVtbl;
  101463.  
  101464.     struct IXMLDOMNodeList
  101465.     {
  101466.                    struct IXMLDOMNodeListVtbl *lpVtbl;
  101467.     };
  101468. # 2377 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101469. extern const IID IID_IXMLDOMNamedNodeMap;
  101470. # 2427 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101471.     typedef struct IXMLDOMNamedNodeMapVtbl
  101472.     {
  101473.  
  101474.  
  101475.         HRESULT ( __stdcall *QueryInterface )(
  101476.             IXMLDOMNamedNodeMap * This,
  101477.                        const IID * riid,
  101478.  
  101479.                           void **ppvObject);
  101480.  
  101481.         ULONG ( __stdcall *AddRef )(
  101482.             IXMLDOMNamedNodeMap * This);
  101483.  
  101484.         ULONG ( __stdcall *Release )(
  101485.             IXMLDOMNamedNodeMap * This);
  101486.  
  101487.         HRESULT ( __stdcall *GetTypeInfoCount )(
  101488.             IXMLDOMNamedNodeMap * This,
  101489.                         UINT *pctinfo);
  101490.  
  101491.         HRESULT ( __stdcall *GetTypeInfo )(
  101492.             IXMLDOMNamedNodeMap * This,
  101493.                        UINT iTInfo,
  101494.                        LCID lcid,
  101495.                         ITypeInfo **ppTInfo);
  101496.  
  101497.         HRESULT ( __stdcall *GetIDsOfNames )(
  101498.             IXMLDOMNamedNodeMap * This,
  101499.                        const IID * riid,
  101500.                                 LPOLESTR *rgszNames,
  101501.                               UINT cNames,
  101502.                        LCID lcid,
  101503.                                  DISPID *rgDispId);
  101504.  
  101505.                       HRESULT ( __stdcall *Invoke )(
  101506.             IXMLDOMNamedNodeMap * This,
  101507.  
  101508.                   DISPID dispIdMember,
  101509.  
  101510.                   const IID * riid,
  101511.  
  101512.                   LCID lcid,
  101513.  
  101514.                   WORD wFlags,
  101515.  
  101516.                   DISPPARAMS *pDispParams,
  101517.  
  101518.                        VARIANT *pVarResult,
  101519.  
  101520.                        EXCEPINFO *pExcepInfo,
  101521.  
  101522.                        UINT *puArgErr);
  101523.  
  101524.                                HRESULT ( __stdcall *getNamedItem )(
  101525.             IXMLDOMNamedNodeMap * This,
  101526.                        BSTR name,
  101527.                                 IXMLDOMNode **namedItem);
  101528.  
  101529.                                HRESULT ( __stdcall *setNamedItem )(
  101530.             IXMLDOMNamedNodeMap * This,
  101531.                        IXMLDOMNode *newItem,
  101532.                                 IXMLDOMNode **nameItem);
  101533.  
  101534.                                HRESULT ( __stdcall *removeNamedItem )(
  101535.             IXMLDOMNamedNodeMap * This,
  101536.                        BSTR name,
  101537.                                 IXMLDOMNode **namedItem);
  101538.  
  101539.                                         HRESULT ( __stdcall *get_item )(
  101540.             IXMLDOMNamedNodeMap * This,
  101541.                        long index,
  101542.                                 IXMLDOMNode **listItem);
  101543.  
  101544.                                         HRESULT ( __stdcall *get_length )(
  101545.             IXMLDOMNamedNodeMap * This,
  101546.                                 long *listLength);
  101547.  
  101548.                                HRESULT ( __stdcall *getQualifiedItem )(
  101549.             IXMLDOMNamedNodeMap * This,
  101550.                        BSTR baseName,
  101551.                        BSTR namespaceURI,
  101552.                                 IXMLDOMNode **qualifiedItem);
  101553.  
  101554.                                HRESULT ( __stdcall *removeQualifiedItem )(
  101555.             IXMLDOMNamedNodeMap * This,
  101556.                        BSTR baseName,
  101557.                        BSTR namespaceURI,
  101558.                                 IXMLDOMNode **qualifiedItem);
  101559.  
  101560.                                HRESULT ( __stdcall *nextNode )(
  101561.             IXMLDOMNamedNodeMap * This,
  101562.                                 IXMLDOMNode **nextItem);
  101563.  
  101564.                                HRESULT ( __stdcall *reset )(
  101565.             IXMLDOMNamedNodeMap * This);
  101566.  
  101567.                                                 HRESULT ( __stdcall *get__newEnum )(
  101568.             IXMLDOMNamedNodeMap * This,
  101569.                                 IUnknown **ppUnk);
  101570.  
  101571.  
  101572.     } IXMLDOMNamedNodeMapVtbl;
  101573.  
  101574.     struct IXMLDOMNamedNodeMap
  101575.     {
  101576.                    struct IXMLDOMNamedNodeMapVtbl *lpVtbl;
  101577.     };
  101578. # 2611 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101579. extern const IID IID_IXMLDOMCharacterData;
  101580. # 2654 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101581.     typedef struct IXMLDOMCharacterDataVtbl
  101582.     {
  101583.  
  101584.  
  101585.         HRESULT ( __stdcall *QueryInterface )(
  101586.             IXMLDOMCharacterData * This,
  101587.                        const IID * riid,
  101588.  
  101589.                           void **ppvObject);
  101590.  
  101591.         ULONG ( __stdcall *AddRef )(
  101592.             IXMLDOMCharacterData * This);
  101593.  
  101594.         ULONG ( __stdcall *Release )(
  101595.             IXMLDOMCharacterData * This);
  101596.  
  101597.         HRESULT ( __stdcall *GetTypeInfoCount )(
  101598.             IXMLDOMCharacterData * This,
  101599.                         UINT *pctinfo);
  101600.  
  101601.         HRESULT ( __stdcall *GetTypeInfo )(
  101602.             IXMLDOMCharacterData * This,
  101603.                        UINT iTInfo,
  101604.                        LCID lcid,
  101605.                         ITypeInfo **ppTInfo);
  101606.  
  101607.         HRESULT ( __stdcall *GetIDsOfNames )(
  101608.             IXMLDOMCharacterData * This,
  101609.                        const IID * riid,
  101610.                                 LPOLESTR *rgszNames,
  101611.                               UINT cNames,
  101612.                        LCID lcid,
  101613.                                  DISPID *rgDispId);
  101614.  
  101615.                       HRESULT ( __stdcall *Invoke )(
  101616.             IXMLDOMCharacterData * This,
  101617.  
  101618.                   DISPID dispIdMember,
  101619.  
  101620.                   const IID * riid,
  101621.  
  101622.                   LCID lcid,
  101623.  
  101624.                   WORD wFlags,
  101625.  
  101626.                   DISPPARAMS *pDispParams,
  101627.  
  101628.                        VARIANT *pVarResult,
  101629.  
  101630.                        EXCEPINFO *pExcepInfo,
  101631.  
  101632.                        UINT *puArgErr);
  101633.  
  101634.                                         HRESULT ( __stdcall *get_nodeName )(
  101635.             IXMLDOMCharacterData * This,
  101636.                                 BSTR *name);
  101637.  
  101638.                                         HRESULT ( __stdcall *get_nodeValue )(
  101639.             IXMLDOMCharacterData * This,
  101640.                                 VARIANT *value);
  101641.  
  101642.                                         HRESULT ( __stdcall *put_nodeValue )(
  101643.             IXMLDOMCharacterData * This,
  101644.                        VARIANT value);
  101645.  
  101646.                                         HRESULT ( __stdcall *get_nodeType )(
  101647.             IXMLDOMCharacterData * This,
  101648.                                 DOMNodeType *type);
  101649.  
  101650.                                         HRESULT ( __stdcall *get_parentNode )(
  101651.             IXMLDOMCharacterData * This,
  101652.                                 IXMLDOMNode **parent);
  101653.  
  101654.                                         HRESULT ( __stdcall *get_childNodes )(
  101655.             IXMLDOMCharacterData * This,
  101656.                                 IXMLDOMNodeList **childList);
  101657.  
  101658.                                         HRESULT ( __stdcall *get_firstChild )(
  101659.             IXMLDOMCharacterData * This,
  101660.                                 IXMLDOMNode **firstChild);
  101661.  
  101662.                                         HRESULT ( __stdcall *get_lastChild )(
  101663.             IXMLDOMCharacterData * This,
  101664.                                 IXMLDOMNode **lastChild);
  101665.  
  101666.                                         HRESULT ( __stdcall *get_previousSibling )(
  101667.             IXMLDOMCharacterData * This,
  101668.                                 IXMLDOMNode **previousSibling);
  101669.  
  101670.                                         HRESULT ( __stdcall *get_nextSibling )(
  101671.             IXMLDOMCharacterData * This,
  101672.                                 IXMLDOMNode **nextSibling);
  101673.  
  101674.                                         HRESULT ( __stdcall *get_attributes )(
  101675.             IXMLDOMCharacterData * This,
  101676.                                 IXMLDOMNamedNodeMap **attributeMap);
  101677.  
  101678.                                HRESULT ( __stdcall *insertBefore )(
  101679.             IXMLDOMCharacterData * This,
  101680.                        IXMLDOMNode *newChild,
  101681.                        VARIANT refChild,
  101682.                                 IXMLDOMNode **outNewChild);
  101683.  
  101684.                                HRESULT ( __stdcall *replaceChild )(
  101685.             IXMLDOMCharacterData * This,
  101686.                        IXMLDOMNode *newChild,
  101687.                        IXMLDOMNode *oldChild,
  101688.                                 IXMLDOMNode **outOldChild);
  101689.  
  101690.                                HRESULT ( __stdcall *removeChild )(
  101691.             IXMLDOMCharacterData * This,
  101692.                        IXMLDOMNode *childNode,
  101693.                                 IXMLDOMNode **oldChild);
  101694.  
  101695.                                HRESULT ( __stdcall *appendChild )(
  101696.             IXMLDOMCharacterData * This,
  101697.                        IXMLDOMNode *newChild,
  101698.                                 IXMLDOMNode **outNewChild);
  101699.  
  101700.                                HRESULT ( __stdcall *hasChildNodes )(
  101701.             IXMLDOMCharacterData * This,
  101702.                                 VARIANT_BOOL *hasChild);
  101703.  
  101704.                                         HRESULT ( __stdcall *get_ownerDocument )(
  101705.             IXMLDOMCharacterData * This,
  101706.                                 IXMLDOMDocument **XMLDOMDocument);
  101707.  
  101708.                                HRESULT ( __stdcall *cloneNode )(
  101709.             IXMLDOMCharacterData * This,
  101710.                        VARIANT_BOOL deep,
  101711.                                 IXMLDOMNode **cloneRoot);
  101712.  
  101713.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  101714.             IXMLDOMCharacterData * This,
  101715.                                 BSTR *nodeType);
  101716.  
  101717.                                         HRESULT ( __stdcall *get_text )(
  101718.             IXMLDOMCharacterData * This,
  101719.                                 BSTR *text);
  101720.  
  101721.                                         HRESULT ( __stdcall *put_text )(
  101722.             IXMLDOMCharacterData * This,
  101723.                        BSTR text);
  101724.  
  101725.                                         HRESULT ( __stdcall *get_specified )(
  101726.             IXMLDOMCharacterData * This,
  101727.                                 VARIANT_BOOL *isSpecified);
  101728.  
  101729.                                         HRESULT ( __stdcall *get_definition )(
  101730.             IXMLDOMCharacterData * This,
  101731.                                 IXMLDOMNode **definitionNode);
  101732.  
  101733.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  101734.             IXMLDOMCharacterData * This,
  101735.                                 VARIANT *typedValue);
  101736.  
  101737.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  101738.             IXMLDOMCharacterData * This,
  101739.                        VARIANT typedValue);
  101740.  
  101741.                                         HRESULT ( __stdcall *get_dataType )(
  101742.             IXMLDOMCharacterData * This,
  101743.                                 VARIANT *dataTypeName);
  101744.  
  101745.                                         HRESULT ( __stdcall *put_dataType )(
  101746.             IXMLDOMCharacterData * This,
  101747.                        BSTR dataTypeName);
  101748.  
  101749.                                         HRESULT ( __stdcall *get_xml )(
  101750.             IXMLDOMCharacterData * This,
  101751.                                 BSTR *xmlString);
  101752.  
  101753.                                HRESULT ( __stdcall *transformNode )(
  101754.             IXMLDOMCharacterData * This,
  101755.                        IXMLDOMNode *stylesheet,
  101756.                                 BSTR *xmlString);
  101757.  
  101758.                                HRESULT ( __stdcall *selectNodes )(
  101759.             IXMLDOMCharacterData * This,
  101760.                        BSTR queryString,
  101761.                                 IXMLDOMNodeList **resultList);
  101762.  
  101763.                                HRESULT ( __stdcall *selectSingleNode )(
  101764.             IXMLDOMCharacterData * This,
  101765.                        BSTR queryString,
  101766.                                 IXMLDOMNode **resultNode);
  101767.  
  101768.                                         HRESULT ( __stdcall *get_parsed )(
  101769.             IXMLDOMCharacterData * This,
  101770.                                 VARIANT_BOOL *isParsed);
  101771.  
  101772.                                         HRESULT ( __stdcall *get_namespaceURI )(
  101773.             IXMLDOMCharacterData * This,
  101774.                                 BSTR *namespaceURI);
  101775.  
  101776.                                         HRESULT ( __stdcall *get_prefix )(
  101777.             IXMLDOMCharacterData * This,
  101778.                                 BSTR *prefixString);
  101779.  
  101780.                                         HRESULT ( __stdcall *get_baseName )(
  101781.             IXMLDOMCharacterData * This,
  101782.                                 BSTR *nameString);
  101783.  
  101784.                                HRESULT ( __stdcall *transformNodeToObject )(
  101785.             IXMLDOMCharacterData * This,
  101786.                        IXMLDOMNode *stylesheet,
  101787.                        VARIANT outputObject);
  101788.  
  101789.                                         HRESULT ( __stdcall *get_data )(
  101790.             IXMLDOMCharacterData * This,
  101791.                                 BSTR *data);
  101792.  
  101793.                                         HRESULT ( __stdcall *put_data )(
  101794.             IXMLDOMCharacterData * This,
  101795.                        BSTR data);
  101796.  
  101797.                                         HRESULT ( __stdcall *get_length )(
  101798.             IXMLDOMCharacterData * This,
  101799.                                 long *dataLength);
  101800.  
  101801.                                HRESULT ( __stdcall *substringData )(
  101802.             IXMLDOMCharacterData * This,
  101803.                        long offset,
  101804.                        long count,
  101805.                                 BSTR *data);
  101806.  
  101807.                                HRESULT ( __stdcall *appendData )(
  101808.             IXMLDOMCharacterData * This,
  101809.                        BSTR data);
  101810.  
  101811.                                HRESULT ( __stdcall *insertData )(
  101812.             IXMLDOMCharacterData * This,
  101813.                        long offset,
  101814.                        BSTR data);
  101815.  
  101816.                                HRESULT ( __stdcall *deleteData )(
  101817.             IXMLDOMCharacterData * This,
  101818.                        long offset,
  101819.                        long count);
  101820.  
  101821.                                HRESULT ( __stdcall *replaceData )(
  101822.             IXMLDOMCharacterData * This,
  101823.                        long offset,
  101824.                        long count,
  101825.                        BSTR data);
  101826.  
  101827.  
  101828.     } IXMLDOMCharacterDataVtbl;
  101829.  
  101830.     struct IXMLDOMCharacterData
  101831.     {
  101832.                    struct IXMLDOMCharacterDataVtbl *lpVtbl;
  101833.     };
  101834. # 3087 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101835. extern const IID IID_IXMLDOMAttribute;
  101836. # 3109 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  101837.     typedef struct IXMLDOMAttributeVtbl
  101838.     {
  101839.  
  101840.  
  101841.         HRESULT ( __stdcall *QueryInterface )(
  101842.             IXMLDOMAttribute * This,
  101843.                        const IID * riid,
  101844.  
  101845.                           void **ppvObject);
  101846.  
  101847.         ULONG ( __stdcall *AddRef )(
  101848.             IXMLDOMAttribute * This);
  101849.  
  101850.         ULONG ( __stdcall *Release )(
  101851.             IXMLDOMAttribute * This);
  101852.  
  101853.         HRESULT ( __stdcall *GetTypeInfoCount )(
  101854.             IXMLDOMAttribute * This,
  101855.                         UINT *pctinfo);
  101856.  
  101857.         HRESULT ( __stdcall *GetTypeInfo )(
  101858.             IXMLDOMAttribute * This,
  101859.                        UINT iTInfo,
  101860.                        LCID lcid,
  101861.                         ITypeInfo **ppTInfo);
  101862.  
  101863.         HRESULT ( __stdcall *GetIDsOfNames )(
  101864.             IXMLDOMAttribute * This,
  101865.                        const IID * riid,
  101866.                                 LPOLESTR *rgszNames,
  101867.                               UINT cNames,
  101868.                        LCID lcid,
  101869.                                  DISPID *rgDispId);
  101870.  
  101871.                       HRESULT ( __stdcall *Invoke )(
  101872.             IXMLDOMAttribute * This,
  101873.  
  101874.                   DISPID dispIdMember,
  101875.  
  101876.                   const IID * riid,
  101877.  
  101878.                   LCID lcid,
  101879.  
  101880.                   WORD wFlags,
  101881.  
  101882.                   DISPPARAMS *pDispParams,
  101883.  
  101884.                        VARIANT *pVarResult,
  101885.  
  101886.                        EXCEPINFO *pExcepInfo,
  101887.  
  101888.                        UINT *puArgErr);
  101889.  
  101890.                                         HRESULT ( __stdcall *get_nodeName )(
  101891.             IXMLDOMAttribute * This,
  101892.                                 BSTR *name);
  101893.  
  101894.                                         HRESULT ( __stdcall *get_nodeValue )(
  101895.             IXMLDOMAttribute * This,
  101896.                                 VARIANT *value);
  101897.  
  101898.                                         HRESULT ( __stdcall *put_nodeValue )(
  101899.             IXMLDOMAttribute * This,
  101900.                        VARIANT value);
  101901.  
  101902.                                         HRESULT ( __stdcall *get_nodeType )(
  101903.             IXMLDOMAttribute * This,
  101904.                                 DOMNodeType *type);
  101905.  
  101906.                                         HRESULT ( __stdcall *get_parentNode )(
  101907.             IXMLDOMAttribute * This,
  101908.                                 IXMLDOMNode **parent);
  101909.  
  101910.                                         HRESULT ( __stdcall *get_childNodes )(
  101911.             IXMLDOMAttribute * This,
  101912.                                 IXMLDOMNodeList **childList);
  101913.  
  101914.                                         HRESULT ( __stdcall *get_firstChild )(
  101915.             IXMLDOMAttribute * This,
  101916.                                 IXMLDOMNode **firstChild);
  101917.  
  101918.                                         HRESULT ( __stdcall *get_lastChild )(
  101919.             IXMLDOMAttribute * This,
  101920.                                 IXMLDOMNode **lastChild);
  101921.  
  101922.                                         HRESULT ( __stdcall *get_previousSibling )(
  101923.             IXMLDOMAttribute * This,
  101924.                                 IXMLDOMNode **previousSibling);
  101925.  
  101926.                                         HRESULT ( __stdcall *get_nextSibling )(
  101927.             IXMLDOMAttribute * This,
  101928.                                 IXMLDOMNode **nextSibling);
  101929.  
  101930.                                         HRESULT ( __stdcall *get_attributes )(
  101931.             IXMLDOMAttribute * This,
  101932.                                 IXMLDOMNamedNodeMap **attributeMap);
  101933.  
  101934.                                HRESULT ( __stdcall *insertBefore )(
  101935.             IXMLDOMAttribute * This,
  101936.                        IXMLDOMNode *newChild,
  101937.                        VARIANT refChild,
  101938.                                 IXMLDOMNode **outNewChild);
  101939.  
  101940.                                HRESULT ( __stdcall *replaceChild )(
  101941.             IXMLDOMAttribute * This,
  101942.                        IXMLDOMNode *newChild,
  101943.                        IXMLDOMNode *oldChild,
  101944.                                 IXMLDOMNode **outOldChild);
  101945.  
  101946.                                HRESULT ( __stdcall *removeChild )(
  101947.             IXMLDOMAttribute * This,
  101948.                        IXMLDOMNode *childNode,
  101949.                                 IXMLDOMNode **oldChild);
  101950.  
  101951.                                HRESULT ( __stdcall *appendChild )(
  101952.             IXMLDOMAttribute * This,
  101953.                        IXMLDOMNode *newChild,
  101954.                                 IXMLDOMNode **outNewChild);
  101955.  
  101956.                                HRESULT ( __stdcall *hasChildNodes )(
  101957.             IXMLDOMAttribute * This,
  101958.                                 VARIANT_BOOL *hasChild);
  101959.  
  101960.                                         HRESULT ( __stdcall *get_ownerDocument )(
  101961.             IXMLDOMAttribute * This,
  101962.                                 IXMLDOMDocument **XMLDOMDocument);
  101963.  
  101964.                                HRESULT ( __stdcall *cloneNode )(
  101965.             IXMLDOMAttribute * This,
  101966.                        VARIANT_BOOL deep,
  101967.                                 IXMLDOMNode **cloneRoot);
  101968.  
  101969.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  101970.             IXMLDOMAttribute * This,
  101971.                                 BSTR *nodeType);
  101972.  
  101973.                                         HRESULT ( __stdcall *get_text )(
  101974.             IXMLDOMAttribute * This,
  101975.                                 BSTR *text);
  101976.  
  101977.                                         HRESULT ( __stdcall *put_text )(
  101978.             IXMLDOMAttribute * This,
  101979.                        BSTR text);
  101980.  
  101981.                                         HRESULT ( __stdcall *get_specified )(
  101982.             IXMLDOMAttribute * This,
  101983.                                 VARIANT_BOOL *isSpecified);
  101984.  
  101985.                                         HRESULT ( __stdcall *get_definition )(
  101986.             IXMLDOMAttribute * This,
  101987.                                 IXMLDOMNode **definitionNode);
  101988.  
  101989.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  101990.             IXMLDOMAttribute * This,
  101991.                                 VARIANT *typedValue);
  101992.  
  101993.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  101994.             IXMLDOMAttribute * This,
  101995.                        VARIANT typedValue);
  101996.  
  101997.                                         HRESULT ( __stdcall *get_dataType )(
  101998.             IXMLDOMAttribute * This,
  101999.                                 VARIANT *dataTypeName);
  102000.  
  102001.                                         HRESULT ( __stdcall *put_dataType )(
  102002.             IXMLDOMAttribute * This,
  102003.                        BSTR dataTypeName);
  102004.  
  102005.                                         HRESULT ( __stdcall *get_xml )(
  102006.             IXMLDOMAttribute * This,
  102007.                                 BSTR *xmlString);
  102008.  
  102009.                                HRESULT ( __stdcall *transformNode )(
  102010.             IXMLDOMAttribute * This,
  102011.                        IXMLDOMNode *stylesheet,
  102012.                                 BSTR *xmlString);
  102013.  
  102014.                                HRESULT ( __stdcall *selectNodes )(
  102015.             IXMLDOMAttribute * This,
  102016.                        BSTR queryString,
  102017.                                 IXMLDOMNodeList **resultList);
  102018.  
  102019.                                HRESULT ( __stdcall *selectSingleNode )(
  102020.             IXMLDOMAttribute * This,
  102021.                        BSTR queryString,
  102022.                                 IXMLDOMNode **resultNode);
  102023.  
  102024.                                         HRESULT ( __stdcall *get_parsed )(
  102025.             IXMLDOMAttribute * This,
  102026.                                 VARIANT_BOOL *isParsed);
  102027.  
  102028.                                         HRESULT ( __stdcall *get_namespaceURI )(
  102029.             IXMLDOMAttribute * This,
  102030.                                 BSTR *namespaceURI);
  102031.  
  102032.                                         HRESULT ( __stdcall *get_prefix )(
  102033.             IXMLDOMAttribute * This,
  102034.                                 BSTR *prefixString);
  102035.  
  102036.                                         HRESULT ( __stdcall *get_baseName )(
  102037.             IXMLDOMAttribute * This,
  102038.                                 BSTR *nameString);
  102039.  
  102040.                                HRESULT ( __stdcall *transformNodeToObject )(
  102041.             IXMLDOMAttribute * This,
  102042.                        IXMLDOMNode *stylesheet,
  102043.                        VARIANT outputObject);
  102044.  
  102045.                                         HRESULT ( __stdcall *get_name )(
  102046.             IXMLDOMAttribute * This,
  102047.                                 BSTR *attributeName);
  102048.  
  102049.                                         HRESULT ( __stdcall *get_value )(
  102050.             IXMLDOMAttribute * This,
  102051.                                 VARIANT *attributeValue);
  102052.  
  102053.                                         HRESULT ( __stdcall *put_value )(
  102054.             IXMLDOMAttribute * This,
  102055.                        VARIANT attributeValue);
  102056.  
  102057.  
  102058.     } IXMLDOMAttributeVtbl;
  102059.  
  102060.     struct IXMLDOMAttribute
  102061.     {
  102062.                    struct IXMLDOMAttributeVtbl *lpVtbl;
  102063.     };
  102064. # 3501 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  102065. extern const IID IID_IXMLDOMElement;
  102066. # 3546 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  102067.     typedef struct IXMLDOMElementVtbl
  102068.     {
  102069.  
  102070.  
  102071.         HRESULT ( __stdcall *QueryInterface )(
  102072.             IXMLDOMElement * This,
  102073.                        const IID * riid,
  102074.  
  102075.                           void **ppvObject);
  102076.  
  102077.         ULONG ( __stdcall *AddRef )(
  102078.             IXMLDOMElement * This);
  102079.  
  102080.         ULONG ( __stdcall *Release )(
  102081.             IXMLDOMElement * This);
  102082.  
  102083.         HRESULT ( __stdcall *GetTypeInfoCount )(
  102084.             IXMLDOMElement * This,
  102085.                         UINT *pctinfo);
  102086.  
  102087.         HRESULT ( __stdcall *GetTypeInfo )(
  102088.             IXMLDOMElement * This,
  102089.                        UINT iTInfo,
  102090.                        LCID lcid,
  102091.                         ITypeInfo **ppTInfo);
  102092.  
  102093.         HRESULT ( __stdcall *GetIDsOfNames )(
  102094.             IXMLDOMElement * This,
  102095.                        const IID * riid,
  102096.                                 LPOLESTR *rgszNames,
  102097.                               UINT cNames,
  102098.                        LCID lcid,
  102099.                                  DISPID *rgDispId);
  102100.  
  102101.                       HRESULT ( __stdcall *Invoke )(
  102102.             IXMLDOMElement * This,
  102103.  
  102104.                   DISPID dispIdMember,
  102105.  
  102106.                   const IID * riid,
  102107.  
  102108.                   LCID lcid,
  102109.  
  102110.                   WORD wFlags,
  102111.  
  102112.                   DISPPARAMS *pDispParams,
  102113.  
  102114.                        VARIANT *pVarResult,
  102115.  
  102116.                        EXCEPINFO *pExcepInfo,
  102117.  
  102118.                        UINT *puArgErr);
  102119.  
  102120.                                         HRESULT ( __stdcall *get_nodeName )(
  102121.             IXMLDOMElement * This,
  102122.                                 BSTR *name);
  102123.  
  102124.                                         HRESULT ( __stdcall *get_nodeValue )(
  102125.             IXMLDOMElement * This,
  102126.                                 VARIANT *value);
  102127.  
  102128.                                         HRESULT ( __stdcall *put_nodeValue )(
  102129.             IXMLDOMElement * This,
  102130.                        VARIANT value);
  102131.  
  102132.                                         HRESULT ( __stdcall *get_nodeType )(
  102133.             IXMLDOMElement * This,
  102134.                                 DOMNodeType *type);
  102135.  
  102136.                                         HRESULT ( __stdcall *get_parentNode )(
  102137.             IXMLDOMElement * This,
  102138.                                 IXMLDOMNode **parent);
  102139.  
  102140.                                         HRESULT ( __stdcall *get_childNodes )(
  102141.             IXMLDOMElement * This,
  102142.                                 IXMLDOMNodeList **childList);
  102143.  
  102144.                                         HRESULT ( __stdcall *get_firstChild )(
  102145.             IXMLDOMElement * This,
  102146.                                 IXMLDOMNode **firstChild);
  102147.  
  102148.                                         HRESULT ( __stdcall *get_lastChild )(
  102149.             IXMLDOMElement * This,
  102150.                                 IXMLDOMNode **lastChild);
  102151.  
  102152.                                         HRESULT ( __stdcall *get_previousSibling )(
  102153.             IXMLDOMElement * This,
  102154.                                 IXMLDOMNode **previousSibling);
  102155.  
  102156.                                         HRESULT ( __stdcall *get_nextSibling )(
  102157.             IXMLDOMElement * This,
  102158.                                 IXMLDOMNode **nextSibling);
  102159.  
  102160.                                         HRESULT ( __stdcall *get_attributes )(
  102161.             IXMLDOMElement * This,
  102162.                                 IXMLDOMNamedNodeMap **attributeMap);
  102163.  
  102164.                                HRESULT ( __stdcall *insertBefore )(
  102165.             IXMLDOMElement * This,
  102166.                        IXMLDOMNode *newChild,
  102167.                        VARIANT refChild,
  102168.                                 IXMLDOMNode **outNewChild);
  102169.  
  102170.                                HRESULT ( __stdcall *replaceChild )(
  102171.             IXMLDOMElement * This,
  102172.                        IXMLDOMNode *newChild,
  102173.                        IXMLDOMNode *oldChild,
  102174.                                 IXMLDOMNode **outOldChild);
  102175.  
  102176.                                HRESULT ( __stdcall *removeChild )(
  102177.             IXMLDOMElement * This,
  102178.                        IXMLDOMNode *childNode,
  102179.                                 IXMLDOMNode **oldChild);
  102180.  
  102181.                                HRESULT ( __stdcall *appendChild )(
  102182.             IXMLDOMElement * This,
  102183.                        IXMLDOMNode *newChild,
  102184.                                 IXMLDOMNode **outNewChild);
  102185.  
  102186.                                HRESULT ( __stdcall *hasChildNodes )(
  102187.             IXMLDOMElement * This,
  102188.                                 VARIANT_BOOL *hasChild);
  102189.  
  102190.                                         HRESULT ( __stdcall *get_ownerDocument )(
  102191.             IXMLDOMElement * This,
  102192.                                 IXMLDOMDocument **XMLDOMDocument);
  102193.  
  102194.                                HRESULT ( __stdcall *cloneNode )(
  102195.             IXMLDOMElement * This,
  102196.                        VARIANT_BOOL deep,
  102197.                                 IXMLDOMNode **cloneRoot);
  102198.  
  102199.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  102200.             IXMLDOMElement * This,
  102201.                                 BSTR *nodeType);
  102202.  
  102203.                                         HRESULT ( __stdcall *get_text )(
  102204.             IXMLDOMElement * This,
  102205.                                 BSTR *text);
  102206.  
  102207.                                         HRESULT ( __stdcall *put_text )(
  102208.             IXMLDOMElement * This,
  102209.                        BSTR text);
  102210.  
  102211.                                         HRESULT ( __stdcall *get_specified )(
  102212.             IXMLDOMElement * This,
  102213.                                 VARIANT_BOOL *isSpecified);
  102214.  
  102215.                                         HRESULT ( __stdcall *get_definition )(
  102216.             IXMLDOMElement * This,
  102217.                                 IXMLDOMNode **definitionNode);
  102218.  
  102219.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  102220.             IXMLDOMElement * This,
  102221.                                 VARIANT *typedValue);
  102222.  
  102223.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  102224.             IXMLDOMElement * This,
  102225.                        VARIANT typedValue);
  102226.  
  102227.                                         HRESULT ( __stdcall *get_dataType )(
  102228.             IXMLDOMElement * This,
  102229.                                 VARIANT *dataTypeName);
  102230.  
  102231.                                         HRESULT ( __stdcall *put_dataType )(
  102232.             IXMLDOMElement * This,
  102233.                        BSTR dataTypeName);
  102234.  
  102235.                                         HRESULT ( __stdcall *get_xml )(
  102236.             IXMLDOMElement * This,
  102237.                                 BSTR *xmlString);
  102238.  
  102239.                                HRESULT ( __stdcall *transformNode )(
  102240.             IXMLDOMElement * This,
  102241.                        IXMLDOMNode *stylesheet,
  102242.                                 BSTR *xmlString);
  102243.  
  102244.                                HRESULT ( __stdcall *selectNodes )(
  102245.             IXMLDOMElement * This,
  102246.                        BSTR queryString,
  102247.                                 IXMLDOMNodeList **resultList);
  102248.  
  102249.                                HRESULT ( __stdcall *selectSingleNode )(
  102250.             IXMLDOMElement * This,
  102251.                        BSTR queryString,
  102252.                                 IXMLDOMNode **resultNode);
  102253.  
  102254.                                         HRESULT ( __stdcall *get_parsed )(
  102255.             IXMLDOMElement * This,
  102256.                                 VARIANT_BOOL *isParsed);
  102257.  
  102258.                                         HRESULT ( __stdcall *get_namespaceURI )(
  102259.             IXMLDOMElement * This,
  102260.                                 BSTR *namespaceURI);
  102261.  
  102262.                                         HRESULT ( __stdcall *get_prefix )(
  102263.             IXMLDOMElement * This,
  102264.                                 BSTR *prefixString);
  102265.  
  102266.                                         HRESULT ( __stdcall *get_baseName )(
  102267.             IXMLDOMElement * This,
  102268.                                 BSTR *nameString);
  102269.  
  102270.                                HRESULT ( __stdcall *transformNodeToObject )(
  102271.             IXMLDOMElement * This,
  102272.                        IXMLDOMNode *stylesheet,
  102273.                        VARIANT outputObject);
  102274.  
  102275.                                         HRESULT ( __stdcall *get_tagName )(
  102276.             IXMLDOMElement * This,
  102277.                                 BSTR *tagName);
  102278.  
  102279.                                HRESULT ( __stdcall *getAttribute )(
  102280.             IXMLDOMElement * This,
  102281.                        BSTR name,
  102282.                                 VARIANT *value);
  102283.  
  102284.                                HRESULT ( __stdcall *setAttribute )(
  102285.             IXMLDOMElement * This,
  102286.                        BSTR name,
  102287.                        VARIANT value);
  102288.  
  102289.                                HRESULT ( __stdcall *removeAttribute )(
  102290.             IXMLDOMElement * This,
  102291.                        BSTR name);
  102292.  
  102293.                                HRESULT ( __stdcall *getAttributeNode )(
  102294.             IXMLDOMElement * This,
  102295.                        BSTR name,
  102296.                                 IXMLDOMAttribute **attributeNode);
  102297.  
  102298.                                HRESULT ( __stdcall *setAttributeNode )(
  102299.             IXMLDOMElement * This,
  102300.                        IXMLDOMAttribute *DOMAttribute,
  102301.                                 IXMLDOMAttribute **attributeNode);
  102302.  
  102303.                                HRESULT ( __stdcall *removeAttributeNode )(
  102304.             IXMLDOMElement * This,
  102305.                        IXMLDOMAttribute *DOMAttribute,
  102306.                                 IXMLDOMAttribute **attributeNode);
  102307.  
  102308.                                HRESULT ( __stdcall *getElementsByTagName )(
  102309.             IXMLDOMElement * This,
  102310.                        BSTR tagName,
  102311.                                 IXMLDOMNodeList **resultList);
  102312.  
  102313.                                HRESULT ( __stdcall *normalize )(
  102314.             IXMLDOMElement * This);
  102315.  
  102316.  
  102317.     } IXMLDOMElementVtbl;
  102318.  
  102319.     struct IXMLDOMElement
  102320.     {
  102321.                    struct IXMLDOMElementVtbl *lpVtbl;
  102322.     };
  102323. # 3985 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  102324. extern const IID IID_IXMLDOMText;
  102325. # 4002 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  102326.     typedef struct IXMLDOMTextVtbl
  102327.     {
  102328.  
  102329.  
  102330.         HRESULT ( __stdcall *QueryInterface )(
  102331.             IXMLDOMText * This,
  102332.                        const IID * riid,
  102333.  
  102334.                           void **ppvObject);
  102335.  
  102336.         ULONG ( __stdcall *AddRef )(
  102337.             IXMLDOMText * This);
  102338.  
  102339.         ULONG ( __stdcall *Release )(
  102340.             IXMLDOMText * This);
  102341.  
  102342.         HRESULT ( __stdcall *GetTypeInfoCount )(
  102343.             IXMLDOMText * This,
  102344.                         UINT *pctinfo);
  102345.  
  102346.         HRESULT ( __stdcall *GetTypeInfo )(
  102347.             IXMLDOMText * This,
  102348.                        UINT iTInfo,
  102349.                        LCID lcid,
  102350.                         ITypeInfo **ppTInfo);
  102351.  
  102352.         HRESULT ( __stdcall *GetIDsOfNames )(
  102353.             IXMLDOMText * This,
  102354.                        const IID * riid,
  102355.                                 LPOLESTR *rgszNames,
  102356.                               UINT cNames,
  102357.                        LCID lcid,
  102358.                                  DISPID *rgDispId);
  102359.  
  102360.                       HRESULT ( __stdcall *Invoke )(
  102361.             IXMLDOMText * This,
  102362.  
  102363.                   DISPID dispIdMember,
  102364.  
  102365.                   const IID * riid,
  102366.  
  102367.                   LCID lcid,
  102368.  
  102369.                   WORD wFlags,
  102370.  
  102371.                   DISPPARAMS *pDispParams,
  102372.  
  102373.                        VARIANT *pVarResult,
  102374.  
  102375.                        EXCEPINFO *pExcepInfo,
  102376.  
  102377.                        UINT *puArgErr);
  102378.  
  102379.                                         HRESULT ( __stdcall *get_nodeName )(
  102380.             IXMLDOMText * This,
  102381.                                 BSTR *name);
  102382.  
  102383.                                         HRESULT ( __stdcall *get_nodeValue )(
  102384.             IXMLDOMText * This,
  102385.                                 VARIANT *value);
  102386.  
  102387.                                         HRESULT ( __stdcall *put_nodeValue )(
  102388.             IXMLDOMText * This,
  102389.                        VARIANT value);
  102390.  
  102391.                                         HRESULT ( __stdcall *get_nodeType )(
  102392.             IXMLDOMText * This,
  102393.                                 DOMNodeType *type);
  102394.  
  102395.                                         HRESULT ( __stdcall *get_parentNode )(
  102396.             IXMLDOMText * This,
  102397.                                 IXMLDOMNode **parent);
  102398.  
  102399.                                         HRESULT ( __stdcall *get_childNodes )(
  102400.             IXMLDOMText * This,
  102401.                                 IXMLDOMNodeList **childList);
  102402.  
  102403.                                         HRESULT ( __stdcall *get_firstChild )(
  102404.             IXMLDOMText * This,
  102405.                                 IXMLDOMNode **firstChild);
  102406.  
  102407.                                         HRESULT ( __stdcall *get_lastChild )(
  102408.             IXMLDOMText * This,
  102409.                                 IXMLDOMNode **lastChild);
  102410.  
  102411.                                         HRESULT ( __stdcall *get_previousSibling )(
  102412.             IXMLDOMText * This,
  102413.                                 IXMLDOMNode **previousSibling);
  102414.  
  102415.                                         HRESULT ( __stdcall *get_nextSibling )(
  102416.             IXMLDOMText * This,
  102417.                                 IXMLDOMNode **nextSibling);
  102418.  
  102419.                                         HRESULT ( __stdcall *get_attributes )(
  102420.             IXMLDOMText * This,
  102421.                                 IXMLDOMNamedNodeMap **attributeMap);
  102422.  
  102423.                                HRESULT ( __stdcall *insertBefore )(
  102424.             IXMLDOMText * This,
  102425.                        IXMLDOMNode *newChild,
  102426.                        VARIANT refChild,
  102427.                                 IXMLDOMNode **outNewChild);
  102428.  
  102429.                                HRESULT ( __stdcall *replaceChild )(
  102430.             IXMLDOMText * This,
  102431.                        IXMLDOMNode *newChild,
  102432.                        IXMLDOMNode *oldChild,
  102433.                                 IXMLDOMNode **outOldChild);
  102434.  
  102435.                                HRESULT ( __stdcall *removeChild )(
  102436.             IXMLDOMText * This,
  102437.                        IXMLDOMNode *childNode,
  102438.                                 IXMLDOMNode **oldChild);
  102439.  
  102440.                                HRESULT ( __stdcall *appendChild )(
  102441.             IXMLDOMText * This,
  102442.                        IXMLDOMNode *newChild,
  102443.                                 IXMLDOMNode **outNewChild);
  102444.  
  102445.                                HRESULT ( __stdcall *hasChildNodes )(
  102446.             IXMLDOMText * This,
  102447.                                 VARIANT_BOOL *hasChild);
  102448.  
  102449.                                         HRESULT ( __stdcall *get_ownerDocument )(
  102450.             IXMLDOMText * This,
  102451.                                 IXMLDOMDocument **XMLDOMDocument);
  102452.  
  102453.                                HRESULT ( __stdcall *cloneNode )(
  102454.             IXMLDOMText * This,
  102455.                        VARIANT_BOOL deep,
  102456.                                 IXMLDOMNode **cloneRoot);
  102457.  
  102458.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  102459.             IXMLDOMText * This,
  102460.                                 BSTR *nodeType);
  102461.  
  102462.                                         HRESULT ( __stdcall *get_text )(
  102463.             IXMLDOMText * This,
  102464.                                 BSTR *text);
  102465.  
  102466.                                         HRESULT ( __stdcall *put_text )(
  102467.             IXMLDOMText * This,
  102468.                        BSTR text);
  102469.  
  102470.                                         HRESULT ( __stdcall *get_specified )(
  102471.             IXMLDOMText * This,
  102472.                                 VARIANT_BOOL *isSpecified);
  102473.  
  102474.                                         HRESULT ( __stdcall *get_definition )(
  102475.             IXMLDOMText * This,
  102476.                                 IXMLDOMNode **definitionNode);
  102477.  
  102478.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  102479.             IXMLDOMText * This,
  102480.                                 VARIANT *typedValue);
  102481.  
  102482.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  102483.             IXMLDOMText * This,
  102484.                        VARIANT typedValue);
  102485.  
  102486.                                         HRESULT ( __stdcall *get_dataType )(
  102487.             IXMLDOMText * This,
  102488.                                 VARIANT *dataTypeName);
  102489.  
  102490.                                         HRESULT ( __stdcall *put_dataType )(
  102491.             IXMLDOMText * This,
  102492.                        BSTR dataTypeName);
  102493.  
  102494.                                         HRESULT ( __stdcall *get_xml )(
  102495.             IXMLDOMText * This,
  102496.                                 BSTR *xmlString);
  102497.  
  102498.                                HRESULT ( __stdcall *transformNode )(
  102499.             IXMLDOMText * This,
  102500.                        IXMLDOMNode *stylesheet,
  102501.                                 BSTR *xmlString);
  102502.  
  102503.                                HRESULT ( __stdcall *selectNodes )(
  102504.             IXMLDOMText * This,
  102505.                        BSTR queryString,
  102506.                                 IXMLDOMNodeList **resultList);
  102507.  
  102508.                                HRESULT ( __stdcall *selectSingleNode )(
  102509.             IXMLDOMText * This,
  102510.                        BSTR queryString,
  102511.                                 IXMLDOMNode **resultNode);
  102512.  
  102513.                                         HRESULT ( __stdcall *get_parsed )(
  102514.             IXMLDOMText * This,
  102515.                                 VARIANT_BOOL *isParsed);
  102516.  
  102517.                                         HRESULT ( __stdcall *get_namespaceURI )(
  102518.             IXMLDOMText * This,
  102519.                                 BSTR *namespaceURI);
  102520.  
  102521.                                         HRESULT ( __stdcall *get_prefix )(
  102522.             IXMLDOMText * This,
  102523.                                 BSTR *prefixString);
  102524.  
  102525.                                         HRESULT ( __stdcall *get_baseName )(
  102526.             IXMLDOMText * This,
  102527.                                 BSTR *nameString);
  102528.  
  102529.                                HRESULT ( __stdcall *transformNodeToObject )(
  102530.             IXMLDOMText * This,
  102531.                        IXMLDOMNode *stylesheet,
  102532.                        VARIANT outputObject);
  102533.  
  102534.                                         HRESULT ( __stdcall *get_data )(
  102535.             IXMLDOMText * This,
  102536.                                 BSTR *data);
  102537.  
  102538.                                         HRESULT ( __stdcall *put_data )(
  102539.             IXMLDOMText * This,
  102540.                        BSTR data);
  102541.  
  102542.                                         HRESULT ( __stdcall *get_length )(
  102543.             IXMLDOMText * This,
  102544.                                 long *dataLength);
  102545.  
  102546.                                HRESULT ( __stdcall *substringData )(
  102547.             IXMLDOMText * This,
  102548.                        long offset,
  102549.                        long count,
  102550.                                 BSTR *data);
  102551.  
  102552.                                HRESULT ( __stdcall *appendData )(
  102553.             IXMLDOMText * This,
  102554.                        BSTR data);
  102555.  
  102556.                                HRESULT ( __stdcall *insertData )(
  102557.             IXMLDOMText * This,
  102558.                        long offset,
  102559.                        BSTR data);
  102560.  
  102561.                                HRESULT ( __stdcall *deleteData )(
  102562.             IXMLDOMText * This,
  102563.                        long offset,
  102564.                        long count);
  102565.  
  102566.                                HRESULT ( __stdcall *replaceData )(
  102567.             IXMLDOMText * This,
  102568.                        long offset,
  102569.                        long count,
  102570.                        BSTR data);
  102571.  
  102572.                                HRESULT ( __stdcall *splitText )(
  102573.             IXMLDOMText * This,
  102574.                        long offset,
  102575.                                 IXMLDOMText **rightHandTextNode);
  102576.  
  102577.  
  102578.     } IXMLDOMTextVtbl;
  102579.  
  102580.     struct IXMLDOMText
  102581.     {
  102582.                    struct IXMLDOMTextVtbl *lpVtbl;
  102583.     };
  102584. # 4444 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  102585. extern const IID IID_IXMLDOMComment;
  102586. # 4457 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  102587.     typedef struct IXMLDOMCommentVtbl
  102588.     {
  102589.  
  102590.  
  102591.         HRESULT ( __stdcall *QueryInterface )(
  102592.             IXMLDOMComment * This,
  102593.                        const IID * riid,
  102594.  
  102595.                           void **ppvObject);
  102596.  
  102597.         ULONG ( __stdcall *AddRef )(
  102598.             IXMLDOMComment * This);
  102599.  
  102600.         ULONG ( __stdcall *Release )(
  102601.             IXMLDOMComment * This);
  102602.  
  102603.         HRESULT ( __stdcall *GetTypeInfoCount )(
  102604.             IXMLDOMComment * This,
  102605.                         UINT *pctinfo);
  102606.  
  102607.         HRESULT ( __stdcall *GetTypeInfo )(
  102608.             IXMLDOMComment * This,
  102609.                        UINT iTInfo,
  102610.                        LCID lcid,
  102611.                         ITypeInfo **ppTInfo);
  102612.  
  102613.         HRESULT ( __stdcall *GetIDsOfNames )(
  102614.             IXMLDOMComment * This,
  102615.                        const IID * riid,
  102616.                                 LPOLESTR *rgszNames,
  102617.                               UINT cNames,
  102618.                        LCID lcid,
  102619.                                  DISPID *rgDispId);
  102620.  
  102621.                       HRESULT ( __stdcall *Invoke )(
  102622.             IXMLDOMComment * This,
  102623.  
  102624.                   DISPID dispIdMember,
  102625.  
  102626.                   const IID * riid,
  102627.  
  102628.                   LCID lcid,
  102629.  
  102630.                   WORD wFlags,
  102631.  
  102632.                   DISPPARAMS *pDispParams,
  102633.  
  102634.                        VARIANT *pVarResult,
  102635.  
  102636.                        EXCEPINFO *pExcepInfo,
  102637.  
  102638.                        UINT *puArgErr);
  102639.  
  102640.                                         HRESULT ( __stdcall *get_nodeName )(
  102641.             IXMLDOMComment * This,
  102642.                                 BSTR *name);
  102643.  
  102644.                                         HRESULT ( __stdcall *get_nodeValue )(
  102645.             IXMLDOMComment * This,
  102646.                                 VARIANT *value);
  102647.  
  102648.                                         HRESULT ( __stdcall *put_nodeValue )(
  102649.             IXMLDOMComment * This,
  102650.                        VARIANT value);
  102651.  
  102652.                                         HRESULT ( __stdcall *get_nodeType )(
  102653.             IXMLDOMComment * This,
  102654.                                 DOMNodeType *type);
  102655.  
  102656.                                         HRESULT ( __stdcall *get_parentNode )(
  102657.             IXMLDOMComment * This,
  102658.                                 IXMLDOMNode **parent);
  102659.  
  102660.                                         HRESULT ( __stdcall *get_childNodes )(
  102661.             IXMLDOMComment * This,
  102662.                                 IXMLDOMNodeList **childList);
  102663.  
  102664.                                         HRESULT ( __stdcall *get_firstChild )(
  102665.             IXMLDOMComment * This,
  102666.                                 IXMLDOMNode **firstChild);
  102667.  
  102668.                                         HRESULT ( __stdcall *get_lastChild )(
  102669.             IXMLDOMComment * This,
  102670.                                 IXMLDOMNode **lastChild);
  102671.  
  102672.                                         HRESULT ( __stdcall *get_previousSibling )(
  102673.             IXMLDOMComment * This,
  102674.                                 IXMLDOMNode **previousSibling);
  102675.  
  102676.                                         HRESULT ( __stdcall *get_nextSibling )(
  102677.             IXMLDOMComment * This,
  102678.                                 IXMLDOMNode **nextSibling);
  102679.  
  102680.                                         HRESULT ( __stdcall *get_attributes )(
  102681.             IXMLDOMComment * This,
  102682.                                 IXMLDOMNamedNodeMap **attributeMap);
  102683.  
  102684.                                HRESULT ( __stdcall *insertBefore )(
  102685.             IXMLDOMComment * This,
  102686.                        IXMLDOMNode *newChild,
  102687.                        VARIANT refChild,
  102688.                                 IXMLDOMNode **outNewChild);
  102689.  
  102690.                                HRESULT ( __stdcall *replaceChild )(
  102691.             IXMLDOMComment * This,
  102692.                        IXMLDOMNode *newChild,
  102693.                        IXMLDOMNode *oldChild,
  102694.                                 IXMLDOMNode **outOldChild);
  102695.  
  102696.                                HRESULT ( __stdcall *removeChild )(
  102697.             IXMLDOMComment * This,
  102698.                        IXMLDOMNode *childNode,
  102699.                                 IXMLDOMNode **oldChild);
  102700.  
  102701.                                HRESULT ( __stdcall *appendChild )(
  102702.             IXMLDOMComment * This,
  102703.                        IXMLDOMNode *newChild,
  102704.                                 IXMLDOMNode **outNewChild);
  102705.  
  102706.                                HRESULT ( __stdcall *hasChildNodes )(
  102707.             IXMLDOMComment * This,
  102708.                                 VARIANT_BOOL *hasChild);
  102709.  
  102710.                                         HRESULT ( __stdcall *get_ownerDocument )(
  102711.             IXMLDOMComment * This,
  102712.                                 IXMLDOMDocument **XMLDOMDocument);
  102713.  
  102714.                                HRESULT ( __stdcall *cloneNode )(
  102715.             IXMLDOMComment * This,
  102716.                        VARIANT_BOOL deep,
  102717.                                 IXMLDOMNode **cloneRoot);
  102718.  
  102719.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  102720.             IXMLDOMComment * This,
  102721.                                 BSTR *nodeType);
  102722.  
  102723.                                         HRESULT ( __stdcall *get_text )(
  102724.             IXMLDOMComment * This,
  102725.                                 BSTR *text);
  102726.  
  102727.                                         HRESULT ( __stdcall *put_text )(
  102728.             IXMLDOMComment * This,
  102729.                        BSTR text);
  102730.  
  102731.                                         HRESULT ( __stdcall *get_specified )(
  102732.             IXMLDOMComment * This,
  102733.                                 VARIANT_BOOL *isSpecified);
  102734.  
  102735.                                         HRESULT ( __stdcall *get_definition )(
  102736.             IXMLDOMComment * This,
  102737.                                 IXMLDOMNode **definitionNode);
  102738.  
  102739.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  102740.             IXMLDOMComment * This,
  102741.                                 VARIANT *typedValue);
  102742.  
  102743.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  102744.             IXMLDOMComment * This,
  102745.                        VARIANT typedValue);
  102746.  
  102747.                                         HRESULT ( __stdcall *get_dataType )(
  102748.             IXMLDOMComment * This,
  102749.                                 VARIANT *dataTypeName);
  102750.  
  102751.                                         HRESULT ( __stdcall *put_dataType )(
  102752.             IXMLDOMComment * This,
  102753.                        BSTR dataTypeName);
  102754.  
  102755.                                         HRESULT ( __stdcall *get_xml )(
  102756.             IXMLDOMComment * This,
  102757.                                 BSTR *xmlString);
  102758.  
  102759.                                HRESULT ( __stdcall *transformNode )(
  102760.             IXMLDOMComment * This,
  102761.                        IXMLDOMNode *stylesheet,
  102762.                                 BSTR *xmlString);
  102763.  
  102764.                                HRESULT ( __stdcall *selectNodes )(
  102765.             IXMLDOMComment * This,
  102766.                        BSTR queryString,
  102767.                                 IXMLDOMNodeList **resultList);
  102768.  
  102769.                                HRESULT ( __stdcall *selectSingleNode )(
  102770.             IXMLDOMComment * This,
  102771.                        BSTR queryString,
  102772.                                 IXMLDOMNode **resultNode);
  102773.  
  102774.                                         HRESULT ( __stdcall *get_parsed )(
  102775.             IXMLDOMComment * This,
  102776.                                 VARIANT_BOOL *isParsed);
  102777.  
  102778.                                         HRESULT ( __stdcall *get_namespaceURI )(
  102779.             IXMLDOMComment * This,
  102780.                                 BSTR *namespaceURI);
  102781.  
  102782.                                         HRESULT ( __stdcall *get_prefix )(
  102783.             IXMLDOMComment * This,
  102784.                                 BSTR *prefixString);
  102785.  
  102786.                                         HRESULT ( __stdcall *get_baseName )(
  102787.             IXMLDOMComment * This,
  102788.                                 BSTR *nameString);
  102789.  
  102790.                                HRESULT ( __stdcall *transformNodeToObject )(
  102791.             IXMLDOMComment * This,
  102792.                        IXMLDOMNode *stylesheet,
  102793.                        VARIANT outputObject);
  102794.  
  102795.                                         HRESULT ( __stdcall *get_data )(
  102796.             IXMLDOMComment * This,
  102797.                                 BSTR *data);
  102798.  
  102799.                                         HRESULT ( __stdcall *put_data )(
  102800.             IXMLDOMComment * This,
  102801.                        BSTR data);
  102802.  
  102803.                                         HRESULT ( __stdcall *get_length )(
  102804.             IXMLDOMComment * This,
  102805.                                 long *dataLength);
  102806.  
  102807.                                HRESULT ( __stdcall *substringData )(
  102808.             IXMLDOMComment * This,
  102809.                        long offset,
  102810.                        long count,
  102811.                                 BSTR *data);
  102812.  
  102813.                                HRESULT ( __stdcall *appendData )(
  102814.             IXMLDOMComment * This,
  102815.                        BSTR data);
  102816.  
  102817.                                HRESULT ( __stdcall *insertData )(
  102818.             IXMLDOMComment * This,
  102819.                        long offset,
  102820.                        BSTR data);
  102821.  
  102822.                                HRESULT ( __stdcall *deleteData )(
  102823.             IXMLDOMComment * This,
  102824.                        long offset,
  102825.                        long count);
  102826.  
  102827.                                HRESULT ( __stdcall *replaceData )(
  102828.             IXMLDOMComment * This,
  102829.                        long offset,
  102830.                        long count,
  102831.                        BSTR data);
  102832.  
  102833.  
  102834.     } IXMLDOMCommentVtbl;
  102835.  
  102836.     struct IXMLDOMComment
  102837.     {
  102838.                    struct IXMLDOMCommentVtbl *lpVtbl;
  102839.     };
  102840. # 4891 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  102841. extern const IID IID_IXMLDOMProcessingInstruction;
  102842. # 4913 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  102843.     typedef struct IXMLDOMProcessingInstructionVtbl
  102844.     {
  102845.  
  102846.  
  102847.         HRESULT ( __stdcall *QueryInterface )(
  102848.             IXMLDOMProcessingInstruction * This,
  102849.                        const IID * riid,
  102850.  
  102851.                           void **ppvObject);
  102852.  
  102853.         ULONG ( __stdcall *AddRef )(
  102854.             IXMLDOMProcessingInstruction * This);
  102855.  
  102856.         ULONG ( __stdcall *Release )(
  102857.             IXMLDOMProcessingInstruction * This);
  102858.  
  102859.         HRESULT ( __stdcall *GetTypeInfoCount )(
  102860.             IXMLDOMProcessingInstruction * This,
  102861.                         UINT *pctinfo);
  102862.  
  102863.         HRESULT ( __stdcall *GetTypeInfo )(
  102864.             IXMLDOMProcessingInstruction * This,
  102865.                        UINT iTInfo,
  102866.                        LCID lcid,
  102867.                         ITypeInfo **ppTInfo);
  102868.  
  102869.         HRESULT ( __stdcall *GetIDsOfNames )(
  102870.             IXMLDOMProcessingInstruction * This,
  102871.                        const IID * riid,
  102872.                                 LPOLESTR *rgszNames,
  102873.                               UINT cNames,
  102874.                        LCID lcid,
  102875.                                  DISPID *rgDispId);
  102876.  
  102877.                       HRESULT ( __stdcall *Invoke )(
  102878.             IXMLDOMProcessingInstruction * This,
  102879.  
  102880.                   DISPID dispIdMember,
  102881.  
  102882.                   const IID * riid,
  102883.  
  102884.                   LCID lcid,
  102885.  
  102886.                   WORD wFlags,
  102887.  
  102888.                   DISPPARAMS *pDispParams,
  102889.  
  102890.                        VARIANT *pVarResult,
  102891.  
  102892.                        EXCEPINFO *pExcepInfo,
  102893.  
  102894.                        UINT *puArgErr);
  102895.  
  102896.                                         HRESULT ( __stdcall *get_nodeName )(
  102897.             IXMLDOMProcessingInstruction * This,
  102898.                                 BSTR *name);
  102899.  
  102900.                                         HRESULT ( __stdcall *get_nodeValue )(
  102901.             IXMLDOMProcessingInstruction * This,
  102902.                                 VARIANT *value);
  102903.  
  102904.                                         HRESULT ( __stdcall *put_nodeValue )(
  102905.             IXMLDOMProcessingInstruction * This,
  102906.                        VARIANT value);
  102907.  
  102908.                                         HRESULT ( __stdcall *get_nodeType )(
  102909.             IXMLDOMProcessingInstruction * This,
  102910.                                 DOMNodeType *type);
  102911.  
  102912.                                         HRESULT ( __stdcall *get_parentNode )(
  102913.             IXMLDOMProcessingInstruction * This,
  102914.                                 IXMLDOMNode **parent);
  102915.  
  102916.                                         HRESULT ( __stdcall *get_childNodes )(
  102917.             IXMLDOMProcessingInstruction * This,
  102918.                                 IXMLDOMNodeList **childList);
  102919.  
  102920.                                         HRESULT ( __stdcall *get_firstChild )(
  102921.             IXMLDOMProcessingInstruction * This,
  102922.                                 IXMLDOMNode **firstChild);
  102923.  
  102924.                                         HRESULT ( __stdcall *get_lastChild )(
  102925.             IXMLDOMProcessingInstruction * This,
  102926.                                 IXMLDOMNode **lastChild);
  102927.  
  102928.                                         HRESULT ( __stdcall *get_previousSibling )(
  102929.             IXMLDOMProcessingInstruction * This,
  102930.                                 IXMLDOMNode **previousSibling);
  102931.  
  102932.                                         HRESULT ( __stdcall *get_nextSibling )(
  102933.             IXMLDOMProcessingInstruction * This,
  102934.                                 IXMLDOMNode **nextSibling);
  102935.  
  102936.                                         HRESULT ( __stdcall *get_attributes )(
  102937.             IXMLDOMProcessingInstruction * This,
  102938.                                 IXMLDOMNamedNodeMap **attributeMap);
  102939.  
  102940.                                HRESULT ( __stdcall *insertBefore )(
  102941.             IXMLDOMProcessingInstruction * This,
  102942.                        IXMLDOMNode *newChild,
  102943.                        VARIANT refChild,
  102944.                                 IXMLDOMNode **outNewChild);
  102945.  
  102946.                                HRESULT ( __stdcall *replaceChild )(
  102947.             IXMLDOMProcessingInstruction * This,
  102948.                        IXMLDOMNode *newChild,
  102949.                        IXMLDOMNode *oldChild,
  102950.                                 IXMLDOMNode **outOldChild);
  102951.  
  102952.                                HRESULT ( __stdcall *removeChild )(
  102953.             IXMLDOMProcessingInstruction * This,
  102954.                        IXMLDOMNode *childNode,
  102955.                                 IXMLDOMNode **oldChild);
  102956.  
  102957.                                HRESULT ( __stdcall *appendChild )(
  102958.             IXMLDOMProcessingInstruction * This,
  102959.                        IXMLDOMNode *newChild,
  102960.                                 IXMLDOMNode **outNewChild);
  102961.  
  102962.                                HRESULT ( __stdcall *hasChildNodes )(
  102963.             IXMLDOMProcessingInstruction * This,
  102964.                                 VARIANT_BOOL *hasChild);
  102965.  
  102966.                                         HRESULT ( __stdcall *get_ownerDocument )(
  102967.             IXMLDOMProcessingInstruction * This,
  102968.                                 IXMLDOMDocument **XMLDOMDocument);
  102969.  
  102970.                                HRESULT ( __stdcall *cloneNode )(
  102971.             IXMLDOMProcessingInstruction * This,
  102972.                        VARIANT_BOOL deep,
  102973.                                 IXMLDOMNode **cloneRoot);
  102974.  
  102975.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  102976.             IXMLDOMProcessingInstruction * This,
  102977.                                 BSTR *nodeType);
  102978.  
  102979.                                         HRESULT ( __stdcall *get_text )(
  102980.             IXMLDOMProcessingInstruction * This,
  102981.                                 BSTR *text);
  102982.  
  102983.                                         HRESULT ( __stdcall *put_text )(
  102984.             IXMLDOMProcessingInstruction * This,
  102985.                        BSTR text);
  102986.  
  102987.                                         HRESULT ( __stdcall *get_specified )(
  102988.             IXMLDOMProcessingInstruction * This,
  102989.                                 VARIANT_BOOL *isSpecified);
  102990.  
  102991.                                         HRESULT ( __stdcall *get_definition )(
  102992.             IXMLDOMProcessingInstruction * This,
  102993.                                 IXMLDOMNode **definitionNode);
  102994.  
  102995.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  102996.             IXMLDOMProcessingInstruction * This,
  102997.                                 VARIANT *typedValue);
  102998.  
  102999.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  103000.             IXMLDOMProcessingInstruction * This,
  103001.                        VARIANT typedValue);
  103002.  
  103003.                                         HRESULT ( __stdcall *get_dataType )(
  103004.             IXMLDOMProcessingInstruction * This,
  103005.                                 VARIANT *dataTypeName);
  103006.  
  103007.                                         HRESULT ( __stdcall *put_dataType )(
  103008.             IXMLDOMProcessingInstruction * This,
  103009.                        BSTR dataTypeName);
  103010.  
  103011.                                         HRESULT ( __stdcall *get_xml )(
  103012.             IXMLDOMProcessingInstruction * This,
  103013.                                 BSTR *xmlString);
  103014.  
  103015.                                HRESULT ( __stdcall *transformNode )(
  103016.             IXMLDOMProcessingInstruction * This,
  103017.                        IXMLDOMNode *stylesheet,
  103018.                                 BSTR *xmlString);
  103019.  
  103020.                                HRESULT ( __stdcall *selectNodes )(
  103021.             IXMLDOMProcessingInstruction * This,
  103022.                        BSTR queryString,
  103023.                                 IXMLDOMNodeList **resultList);
  103024.  
  103025.                                HRESULT ( __stdcall *selectSingleNode )(
  103026.             IXMLDOMProcessingInstruction * This,
  103027.                        BSTR queryString,
  103028.                                 IXMLDOMNode **resultNode);
  103029.  
  103030.                                         HRESULT ( __stdcall *get_parsed )(
  103031.             IXMLDOMProcessingInstruction * This,
  103032.                                 VARIANT_BOOL *isParsed);
  103033.  
  103034.                                         HRESULT ( __stdcall *get_namespaceURI )(
  103035.             IXMLDOMProcessingInstruction * This,
  103036.                                 BSTR *namespaceURI);
  103037.  
  103038.                                         HRESULT ( __stdcall *get_prefix )(
  103039.             IXMLDOMProcessingInstruction * This,
  103040.                                 BSTR *prefixString);
  103041.  
  103042.                                         HRESULT ( __stdcall *get_baseName )(
  103043.             IXMLDOMProcessingInstruction * This,
  103044.                                 BSTR *nameString);
  103045.  
  103046.                                HRESULT ( __stdcall *transformNodeToObject )(
  103047.             IXMLDOMProcessingInstruction * This,
  103048.                        IXMLDOMNode *stylesheet,
  103049.                        VARIANT outputObject);
  103050.  
  103051.                                         HRESULT ( __stdcall *get_target )(
  103052.             IXMLDOMProcessingInstruction * This,
  103053.                                 BSTR *name);
  103054.  
  103055.                                         HRESULT ( __stdcall *get_data )(
  103056.             IXMLDOMProcessingInstruction * This,
  103057.                                 BSTR *value);
  103058.  
  103059.                                         HRESULT ( __stdcall *put_data )(
  103060.             IXMLDOMProcessingInstruction * This,
  103061.                        BSTR value);
  103062.  
  103063.  
  103064.     } IXMLDOMProcessingInstructionVtbl;
  103065.  
  103066.     struct IXMLDOMProcessingInstruction
  103067.     {
  103068.                    struct IXMLDOMProcessingInstructionVtbl *lpVtbl;
  103069.     };
  103070. # 5305 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  103071. extern const IID IID_IXMLDOMCDATASection;
  103072. # 5318 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  103073.     typedef struct IXMLDOMCDATASectionVtbl
  103074.     {
  103075.  
  103076.  
  103077.         HRESULT ( __stdcall *QueryInterface )(
  103078.             IXMLDOMCDATASection * This,
  103079.                        const IID * riid,
  103080.  
  103081.                           void **ppvObject);
  103082.  
  103083.         ULONG ( __stdcall *AddRef )(
  103084.             IXMLDOMCDATASection * This);
  103085.  
  103086.         ULONG ( __stdcall *Release )(
  103087.             IXMLDOMCDATASection * This);
  103088.  
  103089.         HRESULT ( __stdcall *GetTypeInfoCount )(
  103090.             IXMLDOMCDATASection * This,
  103091.                         UINT *pctinfo);
  103092.  
  103093.         HRESULT ( __stdcall *GetTypeInfo )(
  103094.             IXMLDOMCDATASection * This,
  103095.                        UINT iTInfo,
  103096.                        LCID lcid,
  103097.                         ITypeInfo **ppTInfo);
  103098.  
  103099.         HRESULT ( __stdcall *GetIDsOfNames )(
  103100.             IXMLDOMCDATASection * This,
  103101.                        const IID * riid,
  103102.                                 LPOLESTR *rgszNames,
  103103.                               UINT cNames,
  103104.                        LCID lcid,
  103105.                                  DISPID *rgDispId);
  103106.  
  103107.                       HRESULT ( __stdcall *Invoke )(
  103108.             IXMLDOMCDATASection * This,
  103109.  
  103110.                   DISPID dispIdMember,
  103111.  
  103112.                   const IID * riid,
  103113.  
  103114.                   LCID lcid,
  103115.  
  103116.                   WORD wFlags,
  103117.  
  103118.                   DISPPARAMS *pDispParams,
  103119.  
  103120.                        VARIANT *pVarResult,
  103121.  
  103122.                        EXCEPINFO *pExcepInfo,
  103123.  
  103124.                        UINT *puArgErr);
  103125.  
  103126.                                         HRESULT ( __stdcall *get_nodeName )(
  103127.             IXMLDOMCDATASection * This,
  103128.                                 BSTR *name);
  103129.  
  103130.                                         HRESULT ( __stdcall *get_nodeValue )(
  103131.             IXMLDOMCDATASection * This,
  103132.                                 VARIANT *value);
  103133.  
  103134.                                         HRESULT ( __stdcall *put_nodeValue )(
  103135.             IXMLDOMCDATASection * This,
  103136.                        VARIANT value);
  103137.  
  103138.                                         HRESULT ( __stdcall *get_nodeType )(
  103139.             IXMLDOMCDATASection * This,
  103140.                                 DOMNodeType *type);
  103141.  
  103142.                                         HRESULT ( __stdcall *get_parentNode )(
  103143.             IXMLDOMCDATASection * This,
  103144.                                 IXMLDOMNode **parent);
  103145.  
  103146.                                         HRESULT ( __stdcall *get_childNodes )(
  103147.             IXMLDOMCDATASection * This,
  103148.                                 IXMLDOMNodeList **childList);
  103149.  
  103150.                                         HRESULT ( __stdcall *get_firstChild )(
  103151.             IXMLDOMCDATASection * This,
  103152.                                 IXMLDOMNode **firstChild);
  103153.  
  103154.                                         HRESULT ( __stdcall *get_lastChild )(
  103155.             IXMLDOMCDATASection * This,
  103156.                                 IXMLDOMNode **lastChild);
  103157.  
  103158.                                         HRESULT ( __stdcall *get_previousSibling )(
  103159.             IXMLDOMCDATASection * This,
  103160.                                 IXMLDOMNode **previousSibling);
  103161.  
  103162.                                         HRESULT ( __stdcall *get_nextSibling )(
  103163.             IXMLDOMCDATASection * This,
  103164.                                 IXMLDOMNode **nextSibling);
  103165.  
  103166.                                         HRESULT ( __stdcall *get_attributes )(
  103167.             IXMLDOMCDATASection * This,
  103168.                                 IXMLDOMNamedNodeMap **attributeMap);
  103169.  
  103170.                                HRESULT ( __stdcall *insertBefore )(
  103171.             IXMLDOMCDATASection * This,
  103172.                        IXMLDOMNode *newChild,
  103173.                        VARIANT refChild,
  103174.                                 IXMLDOMNode **outNewChild);
  103175.  
  103176.                                HRESULT ( __stdcall *replaceChild )(
  103177.             IXMLDOMCDATASection * This,
  103178.                        IXMLDOMNode *newChild,
  103179.                        IXMLDOMNode *oldChild,
  103180.                                 IXMLDOMNode **outOldChild);
  103181.  
  103182.                                HRESULT ( __stdcall *removeChild )(
  103183.             IXMLDOMCDATASection * This,
  103184.                        IXMLDOMNode *childNode,
  103185.                                 IXMLDOMNode **oldChild);
  103186.  
  103187.                                HRESULT ( __stdcall *appendChild )(
  103188.             IXMLDOMCDATASection * This,
  103189.                        IXMLDOMNode *newChild,
  103190.                                 IXMLDOMNode **outNewChild);
  103191.  
  103192.                                HRESULT ( __stdcall *hasChildNodes )(
  103193.             IXMLDOMCDATASection * This,
  103194.                                 VARIANT_BOOL *hasChild);
  103195.  
  103196.                                         HRESULT ( __stdcall *get_ownerDocument )(
  103197.             IXMLDOMCDATASection * This,
  103198.                                 IXMLDOMDocument **XMLDOMDocument);
  103199.  
  103200.                                HRESULT ( __stdcall *cloneNode )(
  103201.             IXMLDOMCDATASection * This,
  103202.                        VARIANT_BOOL deep,
  103203.                                 IXMLDOMNode **cloneRoot);
  103204.  
  103205.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  103206.             IXMLDOMCDATASection * This,
  103207.                                 BSTR *nodeType);
  103208.  
  103209.                                         HRESULT ( __stdcall *get_text )(
  103210.             IXMLDOMCDATASection * This,
  103211.                                 BSTR *text);
  103212.  
  103213.                                         HRESULT ( __stdcall *put_text )(
  103214.             IXMLDOMCDATASection * This,
  103215.                        BSTR text);
  103216.  
  103217.                                         HRESULT ( __stdcall *get_specified )(
  103218.             IXMLDOMCDATASection * This,
  103219.                                 VARIANT_BOOL *isSpecified);
  103220.  
  103221.                                         HRESULT ( __stdcall *get_definition )(
  103222.             IXMLDOMCDATASection * This,
  103223.                                 IXMLDOMNode **definitionNode);
  103224.  
  103225.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  103226.             IXMLDOMCDATASection * This,
  103227.                                 VARIANT *typedValue);
  103228.  
  103229.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  103230.             IXMLDOMCDATASection * This,
  103231.                        VARIANT typedValue);
  103232.  
  103233.                                         HRESULT ( __stdcall *get_dataType )(
  103234.             IXMLDOMCDATASection * This,
  103235.                                 VARIANT *dataTypeName);
  103236.  
  103237.                                         HRESULT ( __stdcall *put_dataType )(
  103238.             IXMLDOMCDATASection * This,
  103239.                        BSTR dataTypeName);
  103240.  
  103241.                                         HRESULT ( __stdcall *get_xml )(
  103242.             IXMLDOMCDATASection * This,
  103243.                                 BSTR *xmlString);
  103244.  
  103245.                                HRESULT ( __stdcall *transformNode )(
  103246.             IXMLDOMCDATASection * This,
  103247.                        IXMLDOMNode *stylesheet,
  103248.                                 BSTR *xmlString);
  103249.  
  103250.                                HRESULT ( __stdcall *selectNodes )(
  103251.             IXMLDOMCDATASection * This,
  103252.                        BSTR queryString,
  103253.                                 IXMLDOMNodeList **resultList);
  103254.  
  103255.                                HRESULT ( __stdcall *selectSingleNode )(
  103256.             IXMLDOMCDATASection * This,
  103257.                        BSTR queryString,
  103258.                                 IXMLDOMNode **resultNode);
  103259.  
  103260.                                         HRESULT ( __stdcall *get_parsed )(
  103261.             IXMLDOMCDATASection * This,
  103262.                                 VARIANT_BOOL *isParsed);
  103263.  
  103264.                                         HRESULT ( __stdcall *get_namespaceURI )(
  103265.             IXMLDOMCDATASection * This,
  103266.                                 BSTR *namespaceURI);
  103267.  
  103268.                                         HRESULT ( __stdcall *get_prefix )(
  103269.             IXMLDOMCDATASection * This,
  103270.                                 BSTR *prefixString);
  103271.  
  103272.                                         HRESULT ( __stdcall *get_baseName )(
  103273.             IXMLDOMCDATASection * This,
  103274.                                 BSTR *nameString);
  103275.  
  103276.                                HRESULT ( __stdcall *transformNodeToObject )(
  103277.             IXMLDOMCDATASection * This,
  103278.                        IXMLDOMNode *stylesheet,
  103279.                        VARIANT outputObject);
  103280.  
  103281.                                         HRESULT ( __stdcall *get_data )(
  103282.             IXMLDOMCDATASection * This,
  103283.                                 BSTR *data);
  103284.  
  103285.                                         HRESULT ( __stdcall *put_data )(
  103286.             IXMLDOMCDATASection * This,
  103287.                        BSTR data);
  103288.  
  103289.                                         HRESULT ( __stdcall *get_length )(
  103290.             IXMLDOMCDATASection * This,
  103291.                                 long *dataLength);
  103292.  
  103293.                                HRESULT ( __stdcall *substringData )(
  103294.             IXMLDOMCDATASection * This,
  103295.                        long offset,
  103296.                        long count,
  103297.                                 BSTR *data);
  103298.  
  103299.                                HRESULT ( __stdcall *appendData )(
  103300.             IXMLDOMCDATASection * This,
  103301.                        BSTR data);
  103302.  
  103303.                                HRESULT ( __stdcall *insertData )(
  103304.             IXMLDOMCDATASection * This,
  103305.                        long offset,
  103306.                        BSTR data);
  103307.  
  103308.                                HRESULT ( __stdcall *deleteData )(
  103309.             IXMLDOMCDATASection * This,
  103310.                        long offset,
  103311.                        long count);
  103312.  
  103313.                                HRESULT ( __stdcall *replaceData )(
  103314.             IXMLDOMCDATASection * This,
  103315.                        long offset,
  103316.                        long count,
  103317.                        BSTR data);
  103318.  
  103319.                                HRESULT ( __stdcall *splitText )(
  103320.             IXMLDOMCDATASection * This,
  103321.                        long offset,
  103322.                                 IXMLDOMText **rightHandTextNode);
  103323.  
  103324.  
  103325.     } IXMLDOMCDATASectionVtbl;
  103326.  
  103327.     struct IXMLDOMCDATASection
  103328.     {
  103329.                    struct IXMLDOMCDATASectionVtbl *lpVtbl;
  103330.     };
  103331. # 5761 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  103332. extern const IID IID_IXMLDOMDocumentType;
  103333. # 5783 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  103334.     typedef struct IXMLDOMDocumentTypeVtbl
  103335.     {
  103336.  
  103337.  
  103338.         HRESULT ( __stdcall *QueryInterface )(
  103339.             IXMLDOMDocumentType * This,
  103340.                        const IID * riid,
  103341.  
  103342.                           void **ppvObject);
  103343.  
  103344.         ULONG ( __stdcall *AddRef )(
  103345.             IXMLDOMDocumentType * This);
  103346.  
  103347.         ULONG ( __stdcall *Release )(
  103348.             IXMLDOMDocumentType * This);
  103349.  
  103350.         HRESULT ( __stdcall *GetTypeInfoCount )(
  103351.             IXMLDOMDocumentType * This,
  103352.                         UINT *pctinfo);
  103353.  
  103354.         HRESULT ( __stdcall *GetTypeInfo )(
  103355.             IXMLDOMDocumentType * This,
  103356.                        UINT iTInfo,
  103357.                        LCID lcid,
  103358.                         ITypeInfo **ppTInfo);
  103359.  
  103360.         HRESULT ( __stdcall *GetIDsOfNames )(
  103361.             IXMLDOMDocumentType * This,
  103362.                        const IID * riid,
  103363.                                 LPOLESTR *rgszNames,
  103364.                               UINT cNames,
  103365.                        LCID lcid,
  103366.                                  DISPID *rgDispId);
  103367.  
  103368.                       HRESULT ( __stdcall *Invoke )(
  103369.             IXMLDOMDocumentType * This,
  103370.  
  103371.                   DISPID dispIdMember,
  103372.  
  103373.                   const IID * riid,
  103374.  
  103375.                   LCID lcid,
  103376.  
  103377.                   WORD wFlags,
  103378.  
  103379.                   DISPPARAMS *pDispParams,
  103380.  
  103381.                        VARIANT *pVarResult,
  103382.  
  103383.                        EXCEPINFO *pExcepInfo,
  103384.  
  103385.                        UINT *puArgErr);
  103386.  
  103387.                                         HRESULT ( __stdcall *get_nodeName )(
  103388.             IXMLDOMDocumentType * This,
  103389.                                 BSTR *name);
  103390.  
  103391.                                         HRESULT ( __stdcall *get_nodeValue )(
  103392.             IXMLDOMDocumentType * This,
  103393.                                 VARIANT *value);
  103394.  
  103395.                                         HRESULT ( __stdcall *put_nodeValue )(
  103396.             IXMLDOMDocumentType * This,
  103397.                        VARIANT value);
  103398.  
  103399.                                         HRESULT ( __stdcall *get_nodeType )(
  103400.             IXMLDOMDocumentType * This,
  103401.                                 DOMNodeType *type);
  103402.  
  103403.                                         HRESULT ( __stdcall *get_parentNode )(
  103404.             IXMLDOMDocumentType * This,
  103405.                                 IXMLDOMNode **parent);
  103406.  
  103407.                                         HRESULT ( __stdcall *get_childNodes )(
  103408.             IXMLDOMDocumentType * This,
  103409.                                 IXMLDOMNodeList **childList);
  103410.  
  103411.                                         HRESULT ( __stdcall *get_firstChild )(
  103412.             IXMLDOMDocumentType * This,
  103413.                                 IXMLDOMNode **firstChild);
  103414.  
  103415.                                         HRESULT ( __stdcall *get_lastChild )(
  103416.             IXMLDOMDocumentType * This,
  103417.                                 IXMLDOMNode **lastChild);
  103418.  
  103419.                                         HRESULT ( __stdcall *get_previousSibling )(
  103420.             IXMLDOMDocumentType * This,
  103421.                                 IXMLDOMNode **previousSibling);
  103422.  
  103423.                                         HRESULT ( __stdcall *get_nextSibling )(
  103424.             IXMLDOMDocumentType * This,
  103425.                                 IXMLDOMNode **nextSibling);
  103426.  
  103427.                                         HRESULT ( __stdcall *get_attributes )(
  103428.             IXMLDOMDocumentType * This,
  103429.                                 IXMLDOMNamedNodeMap **attributeMap);
  103430.  
  103431.                                HRESULT ( __stdcall *insertBefore )(
  103432.             IXMLDOMDocumentType * This,
  103433.                        IXMLDOMNode *newChild,
  103434.                        VARIANT refChild,
  103435.                                 IXMLDOMNode **outNewChild);
  103436.  
  103437.                                HRESULT ( __stdcall *replaceChild )(
  103438.             IXMLDOMDocumentType * This,
  103439.                        IXMLDOMNode *newChild,
  103440.                        IXMLDOMNode *oldChild,
  103441.                                 IXMLDOMNode **outOldChild);
  103442.  
  103443.                                HRESULT ( __stdcall *removeChild )(
  103444.             IXMLDOMDocumentType * This,
  103445.                        IXMLDOMNode *childNode,
  103446.                                 IXMLDOMNode **oldChild);
  103447.  
  103448.                                HRESULT ( __stdcall *appendChild )(
  103449.             IXMLDOMDocumentType * This,
  103450.                        IXMLDOMNode *newChild,
  103451.                                 IXMLDOMNode **outNewChild);
  103452.  
  103453.                                HRESULT ( __stdcall *hasChildNodes )(
  103454.             IXMLDOMDocumentType * This,
  103455.                                 VARIANT_BOOL *hasChild);
  103456.  
  103457.                                         HRESULT ( __stdcall *get_ownerDocument )(
  103458.             IXMLDOMDocumentType * This,
  103459.                                 IXMLDOMDocument **XMLDOMDocument);
  103460.  
  103461.                                HRESULT ( __stdcall *cloneNode )(
  103462.             IXMLDOMDocumentType * This,
  103463.                        VARIANT_BOOL deep,
  103464.                                 IXMLDOMNode **cloneRoot);
  103465.  
  103466.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  103467.             IXMLDOMDocumentType * This,
  103468.                                 BSTR *nodeType);
  103469.  
  103470.                                         HRESULT ( __stdcall *get_text )(
  103471.             IXMLDOMDocumentType * This,
  103472.                                 BSTR *text);
  103473.  
  103474.                                         HRESULT ( __stdcall *put_text )(
  103475.             IXMLDOMDocumentType * This,
  103476.                        BSTR text);
  103477.  
  103478.                                         HRESULT ( __stdcall *get_specified )(
  103479.             IXMLDOMDocumentType * This,
  103480.                                 VARIANT_BOOL *isSpecified);
  103481.  
  103482.                                         HRESULT ( __stdcall *get_definition )(
  103483.             IXMLDOMDocumentType * This,
  103484.                                 IXMLDOMNode **definitionNode);
  103485.  
  103486.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  103487.             IXMLDOMDocumentType * This,
  103488.                                 VARIANT *typedValue);
  103489.  
  103490.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  103491.             IXMLDOMDocumentType * This,
  103492.                        VARIANT typedValue);
  103493.  
  103494.                                         HRESULT ( __stdcall *get_dataType )(
  103495.             IXMLDOMDocumentType * This,
  103496.                                 VARIANT *dataTypeName);
  103497.  
  103498.                                         HRESULT ( __stdcall *put_dataType )(
  103499.             IXMLDOMDocumentType * This,
  103500.                        BSTR dataTypeName);
  103501.  
  103502.                                         HRESULT ( __stdcall *get_xml )(
  103503.             IXMLDOMDocumentType * This,
  103504.                                 BSTR *xmlString);
  103505.  
  103506.                                HRESULT ( __stdcall *transformNode )(
  103507.             IXMLDOMDocumentType * This,
  103508.                        IXMLDOMNode *stylesheet,
  103509.                                 BSTR *xmlString);
  103510.  
  103511.                                HRESULT ( __stdcall *selectNodes )(
  103512.             IXMLDOMDocumentType * This,
  103513.                        BSTR queryString,
  103514.                                 IXMLDOMNodeList **resultList);
  103515.  
  103516.                                HRESULT ( __stdcall *selectSingleNode )(
  103517.             IXMLDOMDocumentType * This,
  103518.                        BSTR queryString,
  103519.                                 IXMLDOMNode **resultNode);
  103520.  
  103521.                                         HRESULT ( __stdcall *get_parsed )(
  103522.             IXMLDOMDocumentType * This,
  103523.                                 VARIANT_BOOL *isParsed);
  103524.  
  103525.                                         HRESULT ( __stdcall *get_namespaceURI )(
  103526.             IXMLDOMDocumentType * This,
  103527.                                 BSTR *namespaceURI);
  103528.  
  103529.                                         HRESULT ( __stdcall *get_prefix )(
  103530.             IXMLDOMDocumentType * This,
  103531.                                 BSTR *prefixString);
  103532.  
  103533.                                         HRESULT ( __stdcall *get_baseName )(
  103534.             IXMLDOMDocumentType * This,
  103535.                                 BSTR *nameString);
  103536.  
  103537.                                HRESULT ( __stdcall *transformNodeToObject )(
  103538.             IXMLDOMDocumentType * This,
  103539.                        IXMLDOMNode *stylesheet,
  103540.                        VARIANT outputObject);
  103541.  
  103542.                                         HRESULT ( __stdcall *get_name )(
  103543.             IXMLDOMDocumentType * This,
  103544.                                 BSTR *rootName);
  103545.  
  103546.                                         HRESULT ( __stdcall *get_entities )(
  103547.             IXMLDOMDocumentType * This,
  103548.                                 IXMLDOMNamedNodeMap **entityMap);
  103549.  
  103550.                                         HRESULT ( __stdcall *get_notations )(
  103551.             IXMLDOMDocumentType * This,
  103552.                                 IXMLDOMNamedNodeMap **notationMap);
  103553.  
  103554.  
  103555.     } IXMLDOMDocumentTypeVtbl;
  103556.  
  103557.     struct IXMLDOMDocumentType
  103558.     {
  103559.                    struct IXMLDOMDocumentTypeVtbl *lpVtbl;
  103560.     };
  103561. # 6175 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  103562. extern const IID IID_IXMLDOMNotation;
  103563. # 6194 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  103564.     typedef struct IXMLDOMNotationVtbl
  103565.     {
  103566.  
  103567.  
  103568.         HRESULT ( __stdcall *QueryInterface )(
  103569.             IXMLDOMNotation * This,
  103570.                        const IID * riid,
  103571.  
  103572.                           void **ppvObject);
  103573.  
  103574.         ULONG ( __stdcall *AddRef )(
  103575.             IXMLDOMNotation * This);
  103576.  
  103577.         ULONG ( __stdcall *Release )(
  103578.             IXMLDOMNotation * This);
  103579.  
  103580.         HRESULT ( __stdcall *GetTypeInfoCount )(
  103581.             IXMLDOMNotation * This,
  103582.                         UINT *pctinfo);
  103583.  
  103584.         HRESULT ( __stdcall *GetTypeInfo )(
  103585.             IXMLDOMNotation * This,
  103586.                        UINT iTInfo,
  103587.                        LCID lcid,
  103588.                         ITypeInfo **ppTInfo);
  103589.  
  103590.         HRESULT ( __stdcall *GetIDsOfNames )(
  103591.             IXMLDOMNotation * This,
  103592.                        const IID * riid,
  103593.                                 LPOLESTR *rgszNames,
  103594.                               UINT cNames,
  103595.                        LCID lcid,
  103596.                                  DISPID *rgDispId);
  103597.  
  103598.                       HRESULT ( __stdcall *Invoke )(
  103599.             IXMLDOMNotation * This,
  103600.  
  103601.                   DISPID dispIdMember,
  103602.  
  103603.                   const IID * riid,
  103604.  
  103605.                   LCID lcid,
  103606.  
  103607.                   WORD wFlags,
  103608.  
  103609.                   DISPPARAMS *pDispParams,
  103610.  
  103611.                        VARIANT *pVarResult,
  103612.  
  103613.                        EXCEPINFO *pExcepInfo,
  103614.  
  103615.                        UINT *puArgErr);
  103616.  
  103617.                                         HRESULT ( __stdcall *get_nodeName )(
  103618.             IXMLDOMNotation * This,
  103619.                                 BSTR *name);
  103620.  
  103621.                                         HRESULT ( __stdcall *get_nodeValue )(
  103622.             IXMLDOMNotation * This,
  103623.                                 VARIANT *value);
  103624.  
  103625.                                         HRESULT ( __stdcall *put_nodeValue )(
  103626.             IXMLDOMNotation * This,
  103627.                        VARIANT value);
  103628.  
  103629.                                         HRESULT ( __stdcall *get_nodeType )(
  103630.             IXMLDOMNotation * This,
  103631.                                 DOMNodeType *type);
  103632.  
  103633.                                         HRESULT ( __stdcall *get_parentNode )(
  103634.             IXMLDOMNotation * This,
  103635.                                 IXMLDOMNode **parent);
  103636.  
  103637.                                         HRESULT ( __stdcall *get_childNodes )(
  103638.             IXMLDOMNotation * This,
  103639.                                 IXMLDOMNodeList **childList);
  103640.  
  103641.                                         HRESULT ( __stdcall *get_firstChild )(
  103642.             IXMLDOMNotation * This,
  103643.                                 IXMLDOMNode **firstChild);
  103644.  
  103645.                                         HRESULT ( __stdcall *get_lastChild )(
  103646.             IXMLDOMNotation * This,
  103647.                                 IXMLDOMNode **lastChild);
  103648.  
  103649.                                         HRESULT ( __stdcall *get_previousSibling )(
  103650.             IXMLDOMNotation * This,
  103651.                                 IXMLDOMNode **previousSibling);
  103652.  
  103653.                                         HRESULT ( __stdcall *get_nextSibling )(
  103654.             IXMLDOMNotation * This,
  103655.                                 IXMLDOMNode **nextSibling);
  103656.  
  103657.                                         HRESULT ( __stdcall *get_attributes )(
  103658.             IXMLDOMNotation * This,
  103659.                                 IXMLDOMNamedNodeMap **attributeMap);
  103660.  
  103661.                                HRESULT ( __stdcall *insertBefore )(
  103662.             IXMLDOMNotation * This,
  103663.                        IXMLDOMNode *newChild,
  103664.                        VARIANT refChild,
  103665.                                 IXMLDOMNode **outNewChild);
  103666.  
  103667.                                HRESULT ( __stdcall *replaceChild )(
  103668.             IXMLDOMNotation * This,
  103669.                        IXMLDOMNode *newChild,
  103670.                        IXMLDOMNode *oldChild,
  103671.                                 IXMLDOMNode **outOldChild);
  103672.  
  103673.                                HRESULT ( __stdcall *removeChild )(
  103674.             IXMLDOMNotation * This,
  103675.                        IXMLDOMNode *childNode,
  103676.                                 IXMLDOMNode **oldChild);
  103677.  
  103678.                                HRESULT ( __stdcall *appendChild )(
  103679.             IXMLDOMNotation * This,
  103680.                        IXMLDOMNode *newChild,
  103681.                                 IXMLDOMNode **outNewChild);
  103682.  
  103683.                                HRESULT ( __stdcall *hasChildNodes )(
  103684.             IXMLDOMNotation * This,
  103685.                                 VARIANT_BOOL *hasChild);
  103686.  
  103687.                                         HRESULT ( __stdcall *get_ownerDocument )(
  103688.             IXMLDOMNotation * This,
  103689.                                 IXMLDOMDocument **XMLDOMDocument);
  103690.  
  103691.                                HRESULT ( __stdcall *cloneNode )(
  103692.             IXMLDOMNotation * This,
  103693.                        VARIANT_BOOL deep,
  103694.                                 IXMLDOMNode **cloneRoot);
  103695.  
  103696.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  103697.             IXMLDOMNotation * This,
  103698.                                 BSTR *nodeType);
  103699.  
  103700.                                         HRESULT ( __stdcall *get_text )(
  103701.             IXMLDOMNotation * This,
  103702.                                 BSTR *text);
  103703.  
  103704.                                         HRESULT ( __stdcall *put_text )(
  103705.             IXMLDOMNotation * This,
  103706.                        BSTR text);
  103707.  
  103708.                                         HRESULT ( __stdcall *get_specified )(
  103709.             IXMLDOMNotation * This,
  103710.                                 VARIANT_BOOL *isSpecified);
  103711.  
  103712.                                         HRESULT ( __stdcall *get_definition )(
  103713.             IXMLDOMNotation * This,
  103714.                                 IXMLDOMNode **definitionNode);
  103715.  
  103716.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  103717.             IXMLDOMNotation * This,
  103718.                                 VARIANT *typedValue);
  103719.  
  103720.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  103721.             IXMLDOMNotation * This,
  103722.                        VARIANT typedValue);
  103723.  
  103724.                                         HRESULT ( __stdcall *get_dataType )(
  103725.             IXMLDOMNotation * This,
  103726.                                 VARIANT *dataTypeName);
  103727.  
  103728.                                         HRESULT ( __stdcall *put_dataType )(
  103729.             IXMLDOMNotation * This,
  103730.                        BSTR dataTypeName);
  103731.  
  103732.                                         HRESULT ( __stdcall *get_xml )(
  103733.             IXMLDOMNotation * This,
  103734.                                 BSTR *xmlString);
  103735.  
  103736.                                HRESULT ( __stdcall *transformNode )(
  103737.             IXMLDOMNotation * This,
  103738.                        IXMLDOMNode *stylesheet,
  103739.                                 BSTR *xmlString);
  103740.  
  103741.                                HRESULT ( __stdcall *selectNodes )(
  103742.             IXMLDOMNotation * This,
  103743.                        BSTR queryString,
  103744.                                 IXMLDOMNodeList **resultList);
  103745.  
  103746.                                HRESULT ( __stdcall *selectSingleNode )(
  103747.             IXMLDOMNotation * This,
  103748.                        BSTR queryString,
  103749.                                 IXMLDOMNode **resultNode);
  103750.  
  103751.                                         HRESULT ( __stdcall *get_parsed )(
  103752.             IXMLDOMNotation * This,
  103753.                                 VARIANT_BOOL *isParsed);
  103754.  
  103755.                                         HRESULT ( __stdcall *get_namespaceURI )(
  103756.             IXMLDOMNotation * This,
  103757.                                 BSTR *namespaceURI);
  103758.  
  103759.                                         HRESULT ( __stdcall *get_prefix )(
  103760.             IXMLDOMNotation * This,
  103761.                                 BSTR *prefixString);
  103762.  
  103763.                                         HRESULT ( __stdcall *get_baseName )(
  103764.             IXMLDOMNotation * This,
  103765.                                 BSTR *nameString);
  103766.  
  103767.                                HRESULT ( __stdcall *transformNodeToObject )(
  103768.             IXMLDOMNotation * This,
  103769.                        IXMLDOMNode *stylesheet,
  103770.                        VARIANT outputObject);
  103771.  
  103772.                                         HRESULT ( __stdcall *get_publicId )(
  103773.             IXMLDOMNotation * This,
  103774.                                 VARIANT *publicID);
  103775.  
  103776.                                         HRESULT ( __stdcall *get_systemId )(
  103777.             IXMLDOMNotation * This,
  103778.                                 VARIANT *systemID);
  103779.  
  103780.  
  103781.     } IXMLDOMNotationVtbl;
  103782.  
  103783.     struct IXMLDOMNotation
  103784.     {
  103785.                    struct IXMLDOMNotationVtbl *lpVtbl;
  103786.     };
  103787. # 6579 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  103788. extern const IID IID_IXMLDOMEntity;
  103789. # 6601 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  103790.     typedef struct IXMLDOMEntityVtbl
  103791.     {
  103792.  
  103793.  
  103794.         HRESULT ( __stdcall *QueryInterface )(
  103795.             IXMLDOMEntity * This,
  103796.                        const IID * riid,
  103797.  
  103798.                           void **ppvObject);
  103799.  
  103800.         ULONG ( __stdcall *AddRef )(
  103801.             IXMLDOMEntity * This);
  103802.  
  103803.         ULONG ( __stdcall *Release )(
  103804.             IXMLDOMEntity * This);
  103805.  
  103806.         HRESULT ( __stdcall *GetTypeInfoCount )(
  103807.             IXMLDOMEntity * This,
  103808.                         UINT *pctinfo);
  103809.  
  103810.         HRESULT ( __stdcall *GetTypeInfo )(
  103811.             IXMLDOMEntity * This,
  103812.                        UINT iTInfo,
  103813.                        LCID lcid,
  103814.                         ITypeInfo **ppTInfo);
  103815.  
  103816.         HRESULT ( __stdcall *GetIDsOfNames )(
  103817.             IXMLDOMEntity * This,
  103818.                        const IID * riid,
  103819.                                 LPOLESTR *rgszNames,
  103820.                               UINT cNames,
  103821.                        LCID lcid,
  103822.                                  DISPID *rgDispId);
  103823.  
  103824.                       HRESULT ( __stdcall *Invoke )(
  103825.             IXMLDOMEntity * This,
  103826.  
  103827.                   DISPID dispIdMember,
  103828.  
  103829.                   const IID * riid,
  103830.  
  103831.                   LCID lcid,
  103832.  
  103833.                   WORD wFlags,
  103834.  
  103835.                   DISPPARAMS *pDispParams,
  103836.  
  103837.                        VARIANT *pVarResult,
  103838.  
  103839.                        EXCEPINFO *pExcepInfo,
  103840.  
  103841.                        UINT *puArgErr);
  103842.  
  103843.                                         HRESULT ( __stdcall *get_nodeName )(
  103844.             IXMLDOMEntity * This,
  103845.                                 BSTR *name);
  103846.  
  103847.                                         HRESULT ( __stdcall *get_nodeValue )(
  103848.             IXMLDOMEntity * This,
  103849.                                 VARIANT *value);
  103850.  
  103851.                                         HRESULT ( __stdcall *put_nodeValue )(
  103852.             IXMLDOMEntity * This,
  103853.                        VARIANT value);
  103854.  
  103855.                                         HRESULT ( __stdcall *get_nodeType )(
  103856.             IXMLDOMEntity * This,
  103857.                                 DOMNodeType *type);
  103858.  
  103859.                                         HRESULT ( __stdcall *get_parentNode )(
  103860.             IXMLDOMEntity * This,
  103861.                                 IXMLDOMNode **parent);
  103862.  
  103863.                                         HRESULT ( __stdcall *get_childNodes )(
  103864.             IXMLDOMEntity * This,
  103865.                                 IXMLDOMNodeList **childList);
  103866.  
  103867.                                         HRESULT ( __stdcall *get_firstChild )(
  103868.             IXMLDOMEntity * This,
  103869.                                 IXMLDOMNode **firstChild);
  103870.  
  103871.                                         HRESULT ( __stdcall *get_lastChild )(
  103872.             IXMLDOMEntity * This,
  103873.                                 IXMLDOMNode **lastChild);
  103874.  
  103875.                                         HRESULT ( __stdcall *get_previousSibling )(
  103876.             IXMLDOMEntity * This,
  103877.                                 IXMLDOMNode **previousSibling);
  103878.  
  103879.                                         HRESULT ( __stdcall *get_nextSibling )(
  103880.             IXMLDOMEntity * This,
  103881.                                 IXMLDOMNode **nextSibling);
  103882.  
  103883.                                         HRESULT ( __stdcall *get_attributes )(
  103884.             IXMLDOMEntity * This,
  103885.                                 IXMLDOMNamedNodeMap **attributeMap);
  103886.  
  103887.                                HRESULT ( __stdcall *insertBefore )(
  103888.             IXMLDOMEntity * This,
  103889.                        IXMLDOMNode *newChild,
  103890.                        VARIANT refChild,
  103891.                                 IXMLDOMNode **outNewChild);
  103892.  
  103893.                                HRESULT ( __stdcall *replaceChild )(
  103894.             IXMLDOMEntity * This,
  103895.                        IXMLDOMNode *newChild,
  103896.                        IXMLDOMNode *oldChild,
  103897.                                 IXMLDOMNode **outOldChild);
  103898.  
  103899.                                HRESULT ( __stdcall *removeChild )(
  103900.             IXMLDOMEntity * This,
  103901.                        IXMLDOMNode *childNode,
  103902.                                 IXMLDOMNode **oldChild);
  103903.  
  103904.                                HRESULT ( __stdcall *appendChild )(
  103905.             IXMLDOMEntity * This,
  103906.                        IXMLDOMNode *newChild,
  103907.                                 IXMLDOMNode **outNewChild);
  103908.  
  103909.                                HRESULT ( __stdcall *hasChildNodes )(
  103910.             IXMLDOMEntity * This,
  103911.                                 VARIANT_BOOL *hasChild);
  103912.  
  103913.                                         HRESULT ( __stdcall *get_ownerDocument )(
  103914.             IXMLDOMEntity * This,
  103915.                                 IXMLDOMDocument **XMLDOMDocument);
  103916.  
  103917.                                HRESULT ( __stdcall *cloneNode )(
  103918.             IXMLDOMEntity * This,
  103919.                        VARIANT_BOOL deep,
  103920.                                 IXMLDOMNode **cloneRoot);
  103921.  
  103922.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  103923.             IXMLDOMEntity * This,
  103924.                                 BSTR *nodeType);
  103925.  
  103926.                                         HRESULT ( __stdcall *get_text )(
  103927.             IXMLDOMEntity * This,
  103928.                                 BSTR *text);
  103929.  
  103930.                                         HRESULT ( __stdcall *put_text )(
  103931.             IXMLDOMEntity * This,
  103932.                        BSTR text);
  103933.  
  103934.                                         HRESULT ( __stdcall *get_specified )(
  103935.             IXMLDOMEntity * This,
  103936.                                 VARIANT_BOOL *isSpecified);
  103937.  
  103938.                                         HRESULT ( __stdcall *get_definition )(
  103939.             IXMLDOMEntity * This,
  103940.                                 IXMLDOMNode **definitionNode);
  103941.  
  103942.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  103943.             IXMLDOMEntity * This,
  103944.                                 VARIANT *typedValue);
  103945.  
  103946.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  103947.             IXMLDOMEntity * This,
  103948.                        VARIANT typedValue);
  103949.  
  103950.                                         HRESULT ( __stdcall *get_dataType )(
  103951.             IXMLDOMEntity * This,
  103952.                                 VARIANT *dataTypeName);
  103953.  
  103954.                                         HRESULT ( __stdcall *put_dataType )(
  103955.             IXMLDOMEntity * This,
  103956.                        BSTR dataTypeName);
  103957.  
  103958.                                         HRESULT ( __stdcall *get_xml )(
  103959.             IXMLDOMEntity * This,
  103960.                                 BSTR *xmlString);
  103961.  
  103962.                                HRESULT ( __stdcall *transformNode )(
  103963.             IXMLDOMEntity * This,
  103964.                        IXMLDOMNode *stylesheet,
  103965.                                 BSTR *xmlString);
  103966.  
  103967.                                HRESULT ( __stdcall *selectNodes )(
  103968.             IXMLDOMEntity * This,
  103969.                        BSTR queryString,
  103970.                                 IXMLDOMNodeList **resultList);
  103971.  
  103972.                                HRESULT ( __stdcall *selectSingleNode )(
  103973.             IXMLDOMEntity * This,
  103974.                        BSTR queryString,
  103975.                                 IXMLDOMNode **resultNode);
  103976.  
  103977.                                         HRESULT ( __stdcall *get_parsed )(
  103978.             IXMLDOMEntity * This,
  103979.                                 VARIANT_BOOL *isParsed);
  103980.  
  103981.                                         HRESULT ( __stdcall *get_namespaceURI )(
  103982.             IXMLDOMEntity * This,
  103983.                                 BSTR *namespaceURI);
  103984.  
  103985.                                         HRESULT ( __stdcall *get_prefix )(
  103986.             IXMLDOMEntity * This,
  103987.                                 BSTR *prefixString);
  103988.  
  103989.                                         HRESULT ( __stdcall *get_baseName )(
  103990.             IXMLDOMEntity * This,
  103991.                                 BSTR *nameString);
  103992.  
  103993.                                HRESULT ( __stdcall *transformNodeToObject )(
  103994.             IXMLDOMEntity * This,
  103995.                        IXMLDOMNode *stylesheet,
  103996.                        VARIANT outputObject);
  103997.  
  103998.                                         HRESULT ( __stdcall *get_publicId )(
  103999.             IXMLDOMEntity * This,
  104000.                                 VARIANT *publicID);
  104001.  
  104002.                                         HRESULT ( __stdcall *get_systemId )(
  104003.             IXMLDOMEntity * This,
  104004.                                 VARIANT *systemID);
  104005.  
  104006.                                         HRESULT ( __stdcall *get_notationName )(
  104007.             IXMLDOMEntity * This,
  104008.                                 BSTR *name);
  104009.  
  104010.  
  104011.     } IXMLDOMEntityVtbl;
  104012.  
  104013.     struct IXMLDOMEntity
  104014.     {
  104015.                    struct IXMLDOMEntityVtbl *lpVtbl;
  104016.     };
  104017. # 6993 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104018. extern const IID IID_IXMLDOMEntityReference;
  104019. # 7006 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104020.     typedef struct IXMLDOMEntityReferenceVtbl
  104021.     {
  104022.  
  104023.  
  104024.         HRESULT ( __stdcall *QueryInterface )(
  104025.             IXMLDOMEntityReference * This,
  104026.                        const IID * riid,
  104027.  
  104028.                           void **ppvObject);
  104029.  
  104030.         ULONG ( __stdcall *AddRef )(
  104031.             IXMLDOMEntityReference * This);
  104032.  
  104033.         ULONG ( __stdcall *Release )(
  104034.             IXMLDOMEntityReference * This);
  104035.  
  104036.         HRESULT ( __stdcall *GetTypeInfoCount )(
  104037.             IXMLDOMEntityReference * This,
  104038.                         UINT *pctinfo);
  104039.  
  104040.         HRESULT ( __stdcall *GetTypeInfo )(
  104041.             IXMLDOMEntityReference * This,
  104042.                        UINT iTInfo,
  104043.                        LCID lcid,
  104044.                         ITypeInfo **ppTInfo);
  104045.  
  104046.         HRESULT ( __stdcall *GetIDsOfNames )(
  104047.             IXMLDOMEntityReference * This,
  104048.                        const IID * riid,
  104049.                                 LPOLESTR *rgszNames,
  104050.                               UINT cNames,
  104051.                        LCID lcid,
  104052.                                  DISPID *rgDispId);
  104053.  
  104054.                       HRESULT ( __stdcall *Invoke )(
  104055.             IXMLDOMEntityReference * This,
  104056.  
  104057.                   DISPID dispIdMember,
  104058.  
  104059.                   const IID * riid,
  104060.  
  104061.                   LCID lcid,
  104062.  
  104063.                   WORD wFlags,
  104064.  
  104065.                   DISPPARAMS *pDispParams,
  104066.  
  104067.                        VARIANT *pVarResult,
  104068.  
  104069.                        EXCEPINFO *pExcepInfo,
  104070.  
  104071.                        UINT *puArgErr);
  104072.  
  104073.                                         HRESULT ( __stdcall *get_nodeName )(
  104074.             IXMLDOMEntityReference * This,
  104075.                                 BSTR *name);
  104076.  
  104077.                                         HRESULT ( __stdcall *get_nodeValue )(
  104078.             IXMLDOMEntityReference * This,
  104079.                                 VARIANT *value);
  104080.  
  104081.                                         HRESULT ( __stdcall *put_nodeValue )(
  104082.             IXMLDOMEntityReference * This,
  104083.                        VARIANT value);
  104084.  
  104085.                                         HRESULT ( __stdcall *get_nodeType )(
  104086.             IXMLDOMEntityReference * This,
  104087.                                 DOMNodeType *type);
  104088.  
  104089.                                         HRESULT ( __stdcall *get_parentNode )(
  104090.             IXMLDOMEntityReference * This,
  104091.                                 IXMLDOMNode **parent);
  104092.  
  104093.                                         HRESULT ( __stdcall *get_childNodes )(
  104094.             IXMLDOMEntityReference * This,
  104095.                                 IXMLDOMNodeList **childList);
  104096.  
  104097.                                         HRESULT ( __stdcall *get_firstChild )(
  104098.             IXMLDOMEntityReference * This,
  104099.                                 IXMLDOMNode **firstChild);
  104100.  
  104101.                                         HRESULT ( __stdcall *get_lastChild )(
  104102.             IXMLDOMEntityReference * This,
  104103.                                 IXMLDOMNode **lastChild);
  104104.  
  104105.                                         HRESULT ( __stdcall *get_previousSibling )(
  104106.             IXMLDOMEntityReference * This,
  104107.                                 IXMLDOMNode **previousSibling);
  104108.  
  104109.                                         HRESULT ( __stdcall *get_nextSibling )(
  104110.             IXMLDOMEntityReference * This,
  104111.                                 IXMLDOMNode **nextSibling);
  104112.  
  104113.                                         HRESULT ( __stdcall *get_attributes )(
  104114.             IXMLDOMEntityReference * This,
  104115.                                 IXMLDOMNamedNodeMap **attributeMap);
  104116.  
  104117.                                HRESULT ( __stdcall *insertBefore )(
  104118.             IXMLDOMEntityReference * This,
  104119.                        IXMLDOMNode *newChild,
  104120.                        VARIANT refChild,
  104121.                                 IXMLDOMNode **outNewChild);
  104122.  
  104123.                                HRESULT ( __stdcall *replaceChild )(
  104124.             IXMLDOMEntityReference * This,
  104125.                        IXMLDOMNode *newChild,
  104126.                        IXMLDOMNode *oldChild,
  104127.                                 IXMLDOMNode **outOldChild);
  104128.  
  104129.                                HRESULT ( __stdcall *removeChild )(
  104130.             IXMLDOMEntityReference * This,
  104131.                        IXMLDOMNode *childNode,
  104132.                                 IXMLDOMNode **oldChild);
  104133.  
  104134.                                HRESULT ( __stdcall *appendChild )(
  104135.             IXMLDOMEntityReference * This,
  104136.                        IXMLDOMNode *newChild,
  104137.                                 IXMLDOMNode **outNewChild);
  104138.  
  104139.                                HRESULT ( __stdcall *hasChildNodes )(
  104140.             IXMLDOMEntityReference * This,
  104141.                                 VARIANT_BOOL *hasChild);
  104142.  
  104143.                                         HRESULT ( __stdcall *get_ownerDocument )(
  104144.             IXMLDOMEntityReference * This,
  104145.                                 IXMLDOMDocument **XMLDOMDocument);
  104146.  
  104147.                                HRESULT ( __stdcall *cloneNode )(
  104148.             IXMLDOMEntityReference * This,
  104149.                        VARIANT_BOOL deep,
  104150.                                 IXMLDOMNode **cloneRoot);
  104151.  
  104152.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  104153.             IXMLDOMEntityReference * This,
  104154.                                 BSTR *nodeType);
  104155.  
  104156.                                         HRESULT ( __stdcall *get_text )(
  104157.             IXMLDOMEntityReference * This,
  104158.                                 BSTR *text);
  104159.  
  104160.                                         HRESULT ( __stdcall *put_text )(
  104161.             IXMLDOMEntityReference * This,
  104162.                        BSTR text);
  104163.  
  104164.                                         HRESULT ( __stdcall *get_specified )(
  104165.             IXMLDOMEntityReference * This,
  104166.                                 VARIANT_BOOL *isSpecified);
  104167.  
  104168.                                         HRESULT ( __stdcall *get_definition )(
  104169.             IXMLDOMEntityReference * This,
  104170.                                 IXMLDOMNode **definitionNode);
  104171.  
  104172.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  104173.             IXMLDOMEntityReference * This,
  104174.                                 VARIANT *typedValue);
  104175.  
  104176.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  104177.             IXMLDOMEntityReference * This,
  104178.                        VARIANT typedValue);
  104179.  
  104180.                                         HRESULT ( __stdcall *get_dataType )(
  104181.             IXMLDOMEntityReference * This,
  104182.                                 VARIANT *dataTypeName);
  104183.  
  104184.                                         HRESULT ( __stdcall *put_dataType )(
  104185.             IXMLDOMEntityReference * This,
  104186.                        BSTR dataTypeName);
  104187.  
  104188.                                         HRESULT ( __stdcall *get_xml )(
  104189.             IXMLDOMEntityReference * This,
  104190.                                 BSTR *xmlString);
  104191.  
  104192.                                HRESULT ( __stdcall *transformNode )(
  104193.             IXMLDOMEntityReference * This,
  104194.                        IXMLDOMNode *stylesheet,
  104195.                                 BSTR *xmlString);
  104196.  
  104197.                                HRESULT ( __stdcall *selectNodes )(
  104198.             IXMLDOMEntityReference * This,
  104199.                        BSTR queryString,
  104200.                                 IXMLDOMNodeList **resultList);
  104201.  
  104202.                                HRESULT ( __stdcall *selectSingleNode )(
  104203.             IXMLDOMEntityReference * This,
  104204.                        BSTR queryString,
  104205.                                 IXMLDOMNode **resultNode);
  104206.  
  104207.                                         HRESULT ( __stdcall *get_parsed )(
  104208.             IXMLDOMEntityReference * This,
  104209.                                 VARIANT_BOOL *isParsed);
  104210.  
  104211.                                         HRESULT ( __stdcall *get_namespaceURI )(
  104212.             IXMLDOMEntityReference * This,
  104213.                                 BSTR *namespaceURI);
  104214.  
  104215.                                         HRESULT ( __stdcall *get_prefix )(
  104216.             IXMLDOMEntityReference * This,
  104217.                                 BSTR *prefixString);
  104218.  
  104219.                                         HRESULT ( __stdcall *get_baseName )(
  104220.             IXMLDOMEntityReference * This,
  104221.                                 BSTR *nameString);
  104222.  
  104223.                                HRESULT ( __stdcall *transformNodeToObject )(
  104224.             IXMLDOMEntityReference * This,
  104225.                        IXMLDOMNode *stylesheet,
  104226.                        VARIANT outputObject);
  104227.  
  104228.  
  104229.     } IXMLDOMEntityReferenceVtbl;
  104230.  
  104231.     struct IXMLDOMEntityReference
  104232.     {
  104233.                    struct IXMLDOMEntityReferenceVtbl *lpVtbl;
  104234.     };
  104235. # 7377 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104236. extern const IID IID_IXMLDOMParseError;
  104237. # 7411 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104238.     typedef struct IXMLDOMParseErrorVtbl
  104239.     {
  104240.  
  104241.  
  104242.         HRESULT ( __stdcall *QueryInterface )(
  104243.             IXMLDOMParseError * This,
  104244.                        const IID * riid,
  104245.  
  104246.                           void **ppvObject);
  104247.  
  104248.         ULONG ( __stdcall *AddRef )(
  104249.             IXMLDOMParseError * This);
  104250.  
  104251.         ULONG ( __stdcall *Release )(
  104252.             IXMLDOMParseError * This);
  104253.  
  104254.         HRESULT ( __stdcall *GetTypeInfoCount )(
  104255.             IXMLDOMParseError * This,
  104256.                         UINT *pctinfo);
  104257.  
  104258.         HRESULT ( __stdcall *GetTypeInfo )(
  104259.             IXMLDOMParseError * This,
  104260.                        UINT iTInfo,
  104261.                        LCID lcid,
  104262.                         ITypeInfo **ppTInfo);
  104263.  
  104264.         HRESULT ( __stdcall *GetIDsOfNames )(
  104265.             IXMLDOMParseError * This,
  104266.                        const IID * riid,
  104267.                                 LPOLESTR *rgszNames,
  104268.                               UINT cNames,
  104269.                        LCID lcid,
  104270.                                  DISPID *rgDispId);
  104271.  
  104272.                       HRESULT ( __stdcall *Invoke )(
  104273.             IXMLDOMParseError * This,
  104274.  
  104275.                   DISPID dispIdMember,
  104276.  
  104277.                   const IID * riid,
  104278.  
  104279.                   LCID lcid,
  104280.  
  104281.                   WORD wFlags,
  104282.  
  104283.                   DISPPARAMS *pDispParams,
  104284.  
  104285.                        VARIANT *pVarResult,
  104286.  
  104287.                        EXCEPINFO *pExcepInfo,
  104288.  
  104289.                        UINT *puArgErr);
  104290.  
  104291.                                         HRESULT ( __stdcall *get_errorCode )(
  104292.             IXMLDOMParseError * This,
  104293.                                 long *errorCode);
  104294.  
  104295.                                         HRESULT ( __stdcall *get_url )(
  104296.             IXMLDOMParseError * This,
  104297.                                 BSTR *urlString);
  104298.  
  104299.                                         HRESULT ( __stdcall *get_reason )(
  104300.             IXMLDOMParseError * This,
  104301.                                 BSTR *reasonString);
  104302.  
  104303.                                         HRESULT ( __stdcall *get_srcText )(
  104304.             IXMLDOMParseError * This,
  104305.                                 BSTR *sourceString);
  104306.  
  104307.                                         HRESULT ( __stdcall *get_line )(
  104308.             IXMLDOMParseError * This,
  104309.                                 long *lineNumber);
  104310.  
  104311.                                         HRESULT ( __stdcall *get_linepos )(
  104312.             IXMLDOMParseError * This,
  104313.                                 long *linePosition);
  104314.  
  104315.                                         HRESULT ( __stdcall *get_filepos )(
  104316.             IXMLDOMParseError * This,
  104317.                                 long *filePosition);
  104318.  
  104319.  
  104320.     } IXMLDOMParseErrorVtbl;
  104321.  
  104322.     struct IXMLDOMParseError
  104323.     {
  104324.                    struct IXMLDOMParseErrorVtbl *lpVtbl;
  104325.     };
  104326. # 7567 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104327. extern const IID IID_IXTLRuntime;
  104328. # 7623 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104329.     typedef struct IXTLRuntimeVtbl
  104330.     {
  104331.  
  104332.  
  104333.         HRESULT ( __stdcall *QueryInterface )(
  104334.             IXTLRuntime * This,
  104335.                        const IID * riid,
  104336.  
  104337.                           void **ppvObject);
  104338.  
  104339.         ULONG ( __stdcall *AddRef )(
  104340.             IXTLRuntime * This);
  104341.  
  104342.         ULONG ( __stdcall *Release )(
  104343.             IXTLRuntime * This);
  104344.  
  104345.         HRESULT ( __stdcall *GetTypeInfoCount )(
  104346.             IXTLRuntime * This,
  104347.                         UINT *pctinfo);
  104348.  
  104349.         HRESULT ( __stdcall *GetTypeInfo )(
  104350.             IXTLRuntime * This,
  104351.                        UINT iTInfo,
  104352.                        LCID lcid,
  104353.                         ITypeInfo **ppTInfo);
  104354.  
  104355.         HRESULT ( __stdcall *GetIDsOfNames )(
  104356.             IXTLRuntime * This,
  104357.                        const IID * riid,
  104358.                                 LPOLESTR *rgszNames,
  104359.                               UINT cNames,
  104360.                        LCID lcid,
  104361.                                  DISPID *rgDispId);
  104362.  
  104363.                       HRESULT ( __stdcall *Invoke )(
  104364.             IXTLRuntime * This,
  104365.  
  104366.                   DISPID dispIdMember,
  104367.  
  104368.                   const IID * riid,
  104369.  
  104370.                   LCID lcid,
  104371.  
  104372.                   WORD wFlags,
  104373.  
  104374.                   DISPPARAMS *pDispParams,
  104375.  
  104376.                        VARIANT *pVarResult,
  104377.  
  104378.                        EXCEPINFO *pExcepInfo,
  104379.  
  104380.                        UINT *puArgErr);
  104381.  
  104382.                                         HRESULT ( __stdcall *get_nodeName )(
  104383.             IXTLRuntime * This,
  104384.                                 BSTR *name);
  104385.  
  104386.                                         HRESULT ( __stdcall *get_nodeValue )(
  104387.             IXTLRuntime * This,
  104388.                                 VARIANT *value);
  104389.  
  104390.                                         HRESULT ( __stdcall *put_nodeValue )(
  104391.             IXTLRuntime * This,
  104392.                        VARIANT value);
  104393.  
  104394.                                         HRESULT ( __stdcall *get_nodeType )(
  104395.             IXTLRuntime * This,
  104396.                                 DOMNodeType *type);
  104397.  
  104398.                                         HRESULT ( __stdcall *get_parentNode )(
  104399.             IXTLRuntime * This,
  104400.                                 IXMLDOMNode **parent);
  104401.  
  104402.                                         HRESULT ( __stdcall *get_childNodes )(
  104403.             IXTLRuntime * This,
  104404.                                 IXMLDOMNodeList **childList);
  104405.  
  104406.                                         HRESULT ( __stdcall *get_firstChild )(
  104407.             IXTLRuntime * This,
  104408.                                 IXMLDOMNode **firstChild);
  104409.  
  104410.                                         HRESULT ( __stdcall *get_lastChild )(
  104411.             IXTLRuntime * This,
  104412.                                 IXMLDOMNode **lastChild);
  104413.  
  104414.                                         HRESULT ( __stdcall *get_previousSibling )(
  104415.             IXTLRuntime * This,
  104416.                                 IXMLDOMNode **previousSibling);
  104417.  
  104418.                                         HRESULT ( __stdcall *get_nextSibling )(
  104419.             IXTLRuntime * This,
  104420.                                 IXMLDOMNode **nextSibling);
  104421.  
  104422.                                         HRESULT ( __stdcall *get_attributes )(
  104423.             IXTLRuntime * This,
  104424.                                 IXMLDOMNamedNodeMap **attributeMap);
  104425.  
  104426.                                HRESULT ( __stdcall *insertBefore )(
  104427.             IXTLRuntime * This,
  104428.                        IXMLDOMNode *newChild,
  104429.                        VARIANT refChild,
  104430.                                 IXMLDOMNode **outNewChild);
  104431.  
  104432.                                HRESULT ( __stdcall *replaceChild )(
  104433.             IXTLRuntime * This,
  104434.                        IXMLDOMNode *newChild,
  104435.                        IXMLDOMNode *oldChild,
  104436.                                 IXMLDOMNode **outOldChild);
  104437.  
  104438.                                HRESULT ( __stdcall *removeChild )(
  104439.             IXTLRuntime * This,
  104440.                        IXMLDOMNode *childNode,
  104441.                                 IXMLDOMNode **oldChild);
  104442.  
  104443.                                HRESULT ( __stdcall *appendChild )(
  104444.             IXTLRuntime * This,
  104445.                        IXMLDOMNode *newChild,
  104446.                                 IXMLDOMNode **outNewChild);
  104447.  
  104448.                                HRESULT ( __stdcall *hasChildNodes )(
  104449.             IXTLRuntime * This,
  104450.                                 VARIANT_BOOL *hasChild);
  104451.  
  104452.                                         HRESULT ( __stdcall *get_ownerDocument )(
  104453.             IXTLRuntime * This,
  104454.                                 IXMLDOMDocument **XMLDOMDocument);
  104455.  
  104456.                                HRESULT ( __stdcall *cloneNode )(
  104457.             IXTLRuntime * This,
  104458.                        VARIANT_BOOL deep,
  104459.                                 IXMLDOMNode **cloneRoot);
  104460.  
  104461.                                         HRESULT ( __stdcall *get_nodeTypeString )(
  104462.             IXTLRuntime * This,
  104463.                                 BSTR *nodeType);
  104464.  
  104465.                                         HRESULT ( __stdcall *get_text )(
  104466.             IXTLRuntime * This,
  104467.                                 BSTR *text);
  104468.  
  104469.                                         HRESULT ( __stdcall *put_text )(
  104470.             IXTLRuntime * This,
  104471.                        BSTR text);
  104472.  
  104473.                                         HRESULT ( __stdcall *get_specified )(
  104474.             IXTLRuntime * This,
  104475.                                 VARIANT_BOOL *isSpecified);
  104476.  
  104477.                                         HRESULT ( __stdcall *get_definition )(
  104478.             IXTLRuntime * This,
  104479.                                 IXMLDOMNode **definitionNode);
  104480.  
  104481.                                         HRESULT ( __stdcall *get_nodeTypedValue )(
  104482.             IXTLRuntime * This,
  104483.                                 VARIANT *typedValue);
  104484.  
  104485.                                         HRESULT ( __stdcall *put_nodeTypedValue )(
  104486.             IXTLRuntime * This,
  104487.                        VARIANT typedValue);
  104488.  
  104489.                                         HRESULT ( __stdcall *get_dataType )(
  104490.             IXTLRuntime * This,
  104491.                                 VARIANT *dataTypeName);
  104492.  
  104493.                                         HRESULT ( __stdcall *put_dataType )(
  104494.             IXTLRuntime * This,
  104495.                        BSTR dataTypeName);
  104496.  
  104497.                                         HRESULT ( __stdcall *get_xml )(
  104498.             IXTLRuntime * This,
  104499.                                 BSTR *xmlString);
  104500.  
  104501.                                HRESULT ( __stdcall *transformNode )(
  104502.             IXTLRuntime * This,
  104503.                        IXMLDOMNode *stylesheet,
  104504.                                 BSTR *xmlString);
  104505.  
  104506.                                HRESULT ( __stdcall *selectNodes )(
  104507.             IXTLRuntime * This,
  104508.                        BSTR queryString,
  104509.                                 IXMLDOMNodeList **resultList);
  104510.  
  104511.                                HRESULT ( __stdcall *selectSingleNode )(
  104512.             IXTLRuntime * This,
  104513.                        BSTR queryString,
  104514.                                 IXMLDOMNode **resultNode);
  104515.  
  104516.                                         HRESULT ( __stdcall *get_parsed )(
  104517.             IXTLRuntime * This,
  104518.                                 VARIANT_BOOL *isParsed);
  104519.  
  104520.                                         HRESULT ( __stdcall *get_namespaceURI )(
  104521.             IXTLRuntime * This,
  104522.                                 BSTR *namespaceURI);
  104523.  
  104524.                                         HRESULT ( __stdcall *get_prefix )(
  104525.             IXTLRuntime * This,
  104526.                                 BSTR *prefixString);
  104527.  
  104528.                                         HRESULT ( __stdcall *get_baseName )(
  104529.             IXTLRuntime * This,
  104530.                                 BSTR *nameString);
  104531.  
  104532.                                HRESULT ( __stdcall *transformNodeToObject )(
  104533.             IXTLRuntime * This,
  104534.                        IXMLDOMNode *stylesheet,
  104535.                        VARIANT outputObject);
  104536.  
  104537.                                HRESULT ( __stdcall *uniqueID )(
  104538.             IXTLRuntime * This,
  104539.                        IXMLDOMNode *pNode,
  104540.                                 long *pID);
  104541.  
  104542.                                HRESULT ( __stdcall *depth )(
  104543.             IXTLRuntime * This,
  104544.                        IXMLDOMNode *pNode,
  104545.                                 long *pDepth);
  104546.  
  104547.                                HRESULT ( __stdcall *childNumber )(
  104548.             IXTLRuntime * This,
  104549.                        IXMLDOMNode *pNode,
  104550.                                 long *pNumber);
  104551.  
  104552.                                HRESULT ( __stdcall *ancestorChildNumber )(
  104553.             IXTLRuntime * This,
  104554.                        BSTR bstrNodeName,
  104555.                        IXMLDOMNode *pNode,
  104556.                                 long *pNumber);
  104557.  
  104558.                                HRESULT ( __stdcall *absoluteChildNumber )(
  104559.             IXTLRuntime * This,
  104560.                        IXMLDOMNode *pNode,
  104561.                                 long *pNumber);
  104562.  
  104563.                                HRESULT ( __stdcall *formatIndex )(
  104564.             IXTLRuntime * This,
  104565.                        long lIndex,
  104566.                        BSTR bstrFormat,
  104567.                                 BSTR *pbstrFormattedString);
  104568.  
  104569.                                HRESULT ( __stdcall *formatNumber )(
  104570.             IXTLRuntime * This,
  104571.                        double dblNumber,
  104572.                        BSTR bstrFormat,
  104573.                                 BSTR *pbstrFormattedString);
  104574.  
  104575.                                HRESULT ( __stdcall *formatDate )(
  104576.             IXTLRuntime * This,
  104577.                        VARIANT varDate,
  104578.                        BSTR bstrFormat,
  104579.                                  VARIANT varDestLocale,
  104580.                                 BSTR *pbstrFormattedString);
  104581.  
  104582.                                HRESULT ( __stdcall *formatTime )(
  104583.             IXTLRuntime * This,
  104584.                        VARIANT varTime,
  104585.                        BSTR bstrFormat,
  104586.                                  VARIANT varDestLocale,
  104587.                                 BSTR *pbstrFormattedString);
  104588.  
  104589.  
  104590.     } IXTLRuntimeVtbl;
  104591.  
  104592.     struct IXTLRuntime
  104593.     {
  104594.                    struct IXTLRuntimeVtbl *lpVtbl;
  104595.     };
  104596. # 8073 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104597. extern const IID DIID_XMLDOMDocumentEvents;
  104598. # 8084 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104599.     typedef struct XMLDOMDocumentEventsVtbl
  104600.     {
  104601.  
  104602.  
  104603.         HRESULT ( __stdcall *QueryInterface )(
  104604.                       XMLDOMDocumentEvents * This,
  104605.                                  const IID * riid,
  104606.  
  104607.                           void **ppvObject);
  104608.  
  104609.         ULONG ( __stdcall *AddRef )(
  104610.                       XMLDOMDocumentEvents * This);
  104611.  
  104612.         ULONG ( __stdcall *Release )(
  104613.                       XMLDOMDocumentEvents * This);
  104614.  
  104615.         HRESULT ( __stdcall *GetTypeInfoCount )(
  104616.                       XMLDOMDocumentEvents * This,
  104617.                                    UINT *pctinfo);
  104618.  
  104619.         HRESULT ( __stdcall *GetTypeInfo )(
  104620.                       XMLDOMDocumentEvents * This,
  104621.                        UINT iTInfo,
  104622.                        LCID lcid,
  104623.                                              ITypeInfo **ppTInfo);
  104624.  
  104625.         HRESULT ( __stdcall *GetIDsOfNames )(
  104626.                       XMLDOMDocumentEvents * This,
  104627.                                  const IID * riid,
  104628.                                                               LPOLESTR *rgszNames,
  104629.                                                        UINT cNames,
  104630.                        LCID lcid,
  104631.                                                                 DISPID *rgDispId);
  104632.  
  104633.                       HRESULT ( __stdcall *Invoke )(
  104634.             XMLDOMDocumentEvents * This,
  104635.  
  104636.                   DISPID dispIdMember,
  104637.  
  104638.                   const IID * riid,
  104639.  
  104640.                   LCID lcid,
  104641.  
  104642.                   WORD wFlags,
  104643.  
  104644.                   DISPPARAMS *pDispParams,
  104645.  
  104646.                        VARIANT *pVarResult,
  104647.  
  104648.                        EXCEPINFO *pExcepInfo,
  104649.  
  104650.                        UINT *puArgErr);
  104651.  
  104652.  
  104653.     } XMLDOMDocumentEventsVtbl;
  104654.  
  104655.     struct XMLDOMDocumentEvents
  104656.     {
  104657.                    struct XMLDOMDocumentEventsVtbl *lpVtbl;
  104658.     };
  104659. # 8181 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104660. extern const CLSID CLSID_DOMDocument;
  104661.  
  104662.  
  104663.  
  104664.  
  104665.  
  104666.  
  104667.  
  104668. extern const CLSID CLSID_DOMFreeThreadedDocument;
  104669. # 8204 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104670. extern const IID IID_IXMLHttpRequest;
  104671. # 8264 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104672.     typedef struct IXMLHttpRequestVtbl
  104673.     {
  104674.  
  104675.  
  104676.         HRESULT ( __stdcall *QueryInterface )(
  104677.                       IXMLHttpRequest * This,
  104678.                                  const IID * riid,
  104679.  
  104680.                           void **ppvObject);
  104681.  
  104682.         ULONG ( __stdcall *AddRef )(
  104683.                       IXMLHttpRequest * This);
  104684.  
  104685.         ULONG ( __stdcall *Release )(
  104686.                       IXMLHttpRequest * This);
  104687.  
  104688.         HRESULT ( __stdcall *GetTypeInfoCount )(
  104689.                       IXMLHttpRequest * This,
  104690.                                    UINT *pctinfo);
  104691.  
  104692.         HRESULT ( __stdcall *GetTypeInfo )(
  104693.                       IXMLHttpRequest * This,
  104694.                        UINT iTInfo,
  104695.                        LCID lcid,
  104696.                                              ITypeInfo **ppTInfo);
  104697.  
  104698.         HRESULT ( __stdcall *GetIDsOfNames )(
  104699.                       IXMLHttpRequest * This,
  104700.                                  const IID * riid,
  104701.                                                               LPOLESTR *rgszNames,
  104702.                                                        UINT cNames,
  104703.                        LCID lcid,
  104704.                                                                 DISPID *rgDispId);
  104705.  
  104706.                       HRESULT ( __stdcall *Invoke )(
  104707.             IXMLHttpRequest * This,
  104708.  
  104709.                   DISPID dispIdMember,
  104710.  
  104711.                   const IID * riid,
  104712.  
  104713.                   LCID lcid,
  104714.  
  104715.                   WORD wFlags,
  104716.  
  104717.                   DISPPARAMS *pDispParams,
  104718.  
  104719.                        VARIANT *pVarResult,
  104720.  
  104721.                        EXCEPINFO *pExcepInfo,
  104722.  
  104723.                        UINT *puArgErr);
  104724.  
  104725.                                HRESULT ( __stdcall *open )(
  104726.                       IXMLHttpRequest * This,
  104727.                                  BSTR bstrMethod,
  104728.                                  BSTR bstrUrl,
  104729.                                  VARIANT varAsync,
  104730.                                  VARIANT bstrUser,
  104731.                                  VARIANT bstrPassword);
  104732.  
  104733.                                HRESULT ( __stdcall *setRequestHeader )(
  104734.                       IXMLHttpRequest * This,
  104735.                                  BSTR bstrHeader,
  104736.                                  BSTR bstrValue);
  104737.  
  104738.                                HRESULT ( __stdcall *getResponseHeader )(
  104739.                       IXMLHttpRequest * This,
  104740.                                  BSTR bstrHeader,
  104741.                                                      BSTR *pbstrValue);
  104742.  
  104743.                                HRESULT ( __stdcall *getAllResponseHeaders )(
  104744.                       IXMLHttpRequest * This,
  104745.                                                      BSTR *pbstrHeaders);
  104746.  
  104747.                                HRESULT ( __stdcall *send )(
  104748.                       IXMLHttpRequest * This,
  104749.                                  VARIANT varBody);
  104750.  
  104751.                                HRESULT ( __stdcall *abort )(
  104752.                       IXMLHttpRequest * This);
  104753.  
  104754.                                         HRESULT ( __stdcall *get_status )(
  104755.                       IXMLHttpRequest * This,
  104756.                                            long *plStatus);
  104757.  
  104758.                                         HRESULT ( __stdcall *get_statusText )(
  104759.                       IXMLHttpRequest * This,
  104760.                                                      BSTR *pbstrStatus);
  104761.  
  104762.                                         HRESULT ( __stdcall *get_responseXML )(
  104763.                       IXMLHttpRequest * This,
  104764.                                                      IDispatch **ppBody);
  104765.  
  104766.                                         HRESULT ( __stdcall *get_responseText )(
  104767.                       IXMLHttpRequest * This,
  104768.                                                      BSTR *pbstrBody);
  104769.  
  104770.                                         HRESULT ( __stdcall *get_responseBody )(
  104771.                       IXMLHttpRequest * This,
  104772.                                            VARIANT *pvarBody);
  104773.  
  104774.                                         HRESULT ( __stdcall *get_responseStream )(
  104775.                       IXMLHttpRequest * This,
  104776.                                            VARIANT *pvarBody);
  104777.  
  104778.                                         HRESULT ( __stdcall *get_readyState )(
  104779.                       IXMLHttpRequest * This,
  104780.                                            long *plState);
  104781.  
  104782.                                         HRESULT ( __stdcall *put_onreadystatechange )(
  104783.                       IXMLHttpRequest * This,
  104784.                                      IDispatch *pReadyStateSink);
  104785.  
  104786.  
  104787.     } IXMLHttpRequestVtbl;
  104788.  
  104789.     struct IXMLHttpRequest
  104790.     {
  104791.                    struct IXMLHttpRequestVtbl *lpVtbl;
  104792.     };
  104793. # 8467 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104794. extern const CLSID CLSID_XMLHTTPRequest;
  104795. # 8482 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104796. extern const IID IID_IXMLDSOControl;
  104797. # 8510 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104798.     typedef struct IXMLDSOControlVtbl
  104799.     {
  104800.  
  104801.  
  104802.         HRESULT ( __stdcall *QueryInterface )(
  104803.             IXMLDSOControl * This,
  104804.                        const IID * riid,
  104805.  
  104806.                           void **ppvObject);
  104807.  
  104808.         ULONG ( __stdcall *AddRef )(
  104809.             IXMLDSOControl * This);
  104810.  
  104811.         ULONG ( __stdcall *Release )(
  104812.             IXMLDSOControl * This);
  104813.  
  104814.         HRESULT ( __stdcall *GetTypeInfoCount )(
  104815.             IXMLDSOControl * This,
  104816.                         UINT *pctinfo);
  104817.  
  104818.         HRESULT ( __stdcall *GetTypeInfo )(
  104819.             IXMLDSOControl * This,
  104820.                        UINT iTInfo,
  104821.                        LCID lcid,
  104822.                         ITypeInfo **ppTInfo);
  104823.  
  104824.         HRESULT ( __stdcall *GetIDsOfNames )(
  104825.             IXMLDSOControl * This,
  104826.                        const IID * riid,
  104827.                                 LPOLESTR *rgszNames,
  104828.                               UINT cNames,
  104829.                        LCID lcid,
  104830.                                  DISPID *rgDispId);
  104831.  
  104832.                       HRESULT ( __stdcall *Invoke )(
  104833.             IXMLDSOControl * This,
  104834.  
  104835.                   DISPID dispIdMember,
  104836.  
  104837.                   const IID * riid,
  104838.  
  104839.                   LCID lcid,
  104840.  
  104841.                   WORD wFlags,
  104842.  
  104843.                   DISPPARAMS *pDispParams,
  104844.  
  104845.                        VARIANT *pVarResult,
  104846.  
  104847.                        EXCEPINFO *pExcepInfo,
  104848.  
  104849.                        UINT *puArgErr);
  104850.  
  104851.                             HRESULT ( __stdcall *get_XMLDocument )(
  104852.             IXMLDSOControl * This,
  104853.                                 IXMLDOMDocument **ppDoc);
  104854.  
  104855.                             HRESULT ( __stdcall *put_XMLDocument )(
  104856.             IXMLDSOControl * This,
  104857.                        IXMLDOMDocument *ppDoc);
  104858.  
  104859.                             HRESULT ( __stdcall *get_JavaDSOCompatible )(
  104860.             IXMLDSOControl * This,
  104861.                                 BOOL *fJavaDSOCompatible);
  104862.  
  104863.                             HRESULT ( __stdcall *put_JavaDSOCompatible )(
  104864.             IXMLDSOControl * This,
  104865.                        BOOL fJavaDSOCompatible);
  104866.  
  104867.                             HRESULT ( __stdcall *get_readyState )(
  104868.             IXMLDSOControl * This,
  104869.                                 long *state);
  104870.  
  104871.  
  104872.     } IXMLDSOControlVtbl;
  104873.  
  104874.     struct IXMLDSOControl
  104875.     {
  104876.                    struct IXMLDSOControlVtbl *lpVtbl;
  104877.     };
  104878. # 8645 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104879. extern const CLSID CLSID_XMLDSOControl;
  104880. # 8660 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104881. extern const IID IID_IXMLElementCollection;
  104882. # 8687 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104883.     typedef struct IXMLElementCollectionVtbl
  104884.     {
  104885.  
  104886.  
  104887.         HRESULT ( __stdcall *QueryInterface )(
  104888.             IXMLElementCollection * This,
  104889.                        const IID * riid,
  104890.  
  104891.                           void **ppvObject);
  104892.  
  104893.         ULONG ( __stdcall *AddRef )(
  104894.             IXMLElementCollection * This);
  104895.  
  104896.         ULONG ( __stdcall *Release )(
  104897.             IXMLElementCollection * This);
  104898.  
  104899.         HRESULT ( __stdcall *GetTypeInfoCount )(
  104900.             IXMLElementCollection * This,
  104901.                         UINT *pctinfo);
  104902.  
  104903.         HRESULT ( __stdcall *GetTypeInfo )(
  104904.             IXMLElementCollection * This,
  104905.                        UINT iTInfo,
  104906.                        LCID lcid,
  104907.                         ITypeInfo **ppTInfo);
  104908.  
  104909.         HRESULT ( __stdcall *GetIDsOfNames )(
  104910.             IXMLElementCollection * This,
  104911.                        const IID * riid,
  104912.                                 LPOLESTR *rgszNames,
  104913.                               UINT cNames,
  104914.                        LCID lcid,
  104915.                                  DISPID *rgDispId);
  104916.  
  104917.                       HRESULT ( __stdcall *Invoke )(
  104918.             IXMLElementCollection * This,
  104919.  
  104920.                   DISPID dispIdMember,
  104921.  
  104922.                   const IID * riid,
  104923.  
  104924.                   LCID lcid,
  104925.  
  104926.                   WORD wFlags,
  104927.  
  104928.                   DISPPARAMS *pDispParams,
  104929.  
  104930.                        VARIANT *pVarResult,
  104931.  
  104932.                        EXCEPINFO *pExcepInfo,
  104933.  
  104934.                        UINT *puArgErr);
  104935.  
  104936.                                                 HRESULT ( __stdcall *put_length )(
  104937.             IXMLElementCollection * This,
  104938.                        long v);
  104939.  
  104940.                                         HRESULT ( __stdcall *get_length )(
  104941.             IXMLElementCollection * This,
  104942.                                 long *p);
  104943.  
  104944.                                                 HRESULT ( __stdcall *get__newEnum )(
  104945.             IXMLElementCollection * This,
  104946.                                 IUnknown **ppUnk);
  104947.  
  104948.                                HRESULT ( __stdcall *item )(
  104949.             IXMLElementCollection * This,
  104950.                                  VARIANT var1,
  104951.                                  VARIANT var2,
  104952.                                 IDispatch **ppDisp);
  104953.  
  104954.  
  104955.     } IXMLElementCollectionVtbl;
  104956.  
  104957.     struct IXMLElementCollection
  104958.     {
  104959.                    struct IXMLElementCollectionVtbl *lpVtbl;
  104960.     };
  104961. # 8824 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104962. extern const IID IID_IXMLDocument;
  104963. # 8881 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  104964.     typedef struct IXMLDocumentVtbl
  104965.     {
  104966.  
  104967.  
  104968.         HRESULT ( __stdcall *QueryInterface )(
  104969.             IXMLDocument * This,
  104970.                        const IID * riid,
  104971.  
  104972.                           void **ppvObject);
  104973.  
  104974.         ULONG ( __stdcall *AddRef )(
  104975.             IXMLDocument * This);
  104976.  
  104977.         ULONG ( __stdcall *Release )(
  104978.             IXMLDocument * This);
  104979.  
  104980.         HRESULT ( __stdcall *GetTypeInfoCount )(
  104981.             IXMLDocument * This,
  104982.                         UINT *pctinfo);
  104983.  
  104984.         HRESULT ( __stdcall *GetTypeInfo )(
  104985.             IXMLDocument * This,
  104986.                        UINT iTInfo,
  104987.                        LCID lcid,
  104988.                         ITypeInfo **ppTInfo);
  104989.  
  104990.         HRESULT ( __stdcall *GetIDsOfNames )(
  104991.             IXMLDocument * This,
  104992.                        const IID * riid,
  104993.                                 LPOLESTR *rgszNames,
  104994.                               UINT cNames,
  104995.                        LCID lcid,
  104996.                                  DISPID *rgDispId);
  104997.  
  104998.                       HRESULT ( __stdcall *Invoke )(
  104999.             IXMLDocument * This,
  105000.  
  105001.                   DISPID dispIdMember,
  105002.  
  105003.                   const IID * riid,
  105004.  
  105005.                   LCID lcid,
  105006.  
  105007.                   WORD wFlags,
  105008.  
  105009.                   DISPPARAMS *pDispParams,
  105010.  
  105011.                        VARIANT *pVarResult,
  105012.  
  105013.                        EXCEPINFO *pExcepInfo,
  105014.  
  105015.                        UINT *puArgErr);
  105016.  
  105017.                                         HRESULT ( __stdcall *get_root )(
  105018.             IXMLDocument * This,
  105019.                                 IXMLElement **p);
  105020.  
  105021.                                                 HRESULT ( __stdcall *get_fileSize )(
  105022.             IXMLDocument * This,
  105023.                                 BSTR *p);
  105024.  
  105025.                                                 HRESULT ( __stdcall *get_fileModifiedDate )(
  105026.             IXMLDocument * This,
  105027.                                 BSTR *p);
  105028.  
  105029.                                                 HRESULT ( __stdcall *get_fileUpdatedDate )(
  105030.             IXMLDocument * This,
  105031.                                 BSTR *p);
  105032.  
  105033.                                         HRESULT ( __stdcall *get_URL )(
  105034.             IXMLDocument * This,
  105035.                                 BSTR *p);
  105036.  
  105037.                                         HRESULT ( __stdcall *put_URL )(
  105038.             IXMLDocument * This,
  105039.                        BSTR p);
  105040.  
  105041.                                                 HRESULT ( __stdcall *get_mimeType )(
  105042.             IXMLDocument * This,
  105043.                                 BSTR *p);
  105044.  
  105045.                                         HRESULT ( __stdcall *get_readyState )(
  105046.             IXMLDocument * This,
  105047.                                 long *pl);
  105048.  
  105049.                                         HRESULT ( __stdcall *get_charset )(
  105050.             IXMLDocument * This,
  105051.                                 BSTR *p);
  105052.  
  105053.                                         HRESULT ( __stdcall *put_charset )(
  105054.             IXMLDocument * This,
  105055.                        BSTR p);
  105056.  
  105057.                                         HRESULT ( __stdcall *get_version )(
  105058.             IXMLDocument * This,
  105059.                                 BSTR *p);
  105060.  
  105061.                                         HRESULT ( __stdcall *get_doctype )(
  105062.             IXMLDocument * This,
  105063.                                 BSTR *p);
  105064.  
  105065.                                                 HRESULT ( __stdcall *get_dtdURL )(
  105066.             IXMLDocument * This,
  105067.                                 BSTR *p);
  105068.  
  105069.                                HRESULT ( __stdcall *createElement )(
  105070.             IXMLDocument * This,
  105071.                        VARIANT vType,
  105072.                                  VARIANT var1,
  105073.                                 IXMLElement **ppElem);
  105074.  
  105075.  
  105076.     } IXMLDocumentVtbl;
  105077.  
  105078.     struct IXMLDocument
  105079.     {
  105080.                    struct IXMLDocumentVtbl *lpVtbl;
  105081.     };
  105082. # 9088 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105083. extern const IID IID_IXMLDocument2;
  105084. # 9151 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105085.     typedef struct IXMLDocument2Vtbl
  105086.     {
  105087.  
  105088.  
  105089.         HRESULT ( __stdcall *QueryInterface )(
  105090.             IXMLDocument2 * This,
  105091.                        const IID * riid,
  105092.  
  105093.                           void **ppvObject);
  105094.  
  105095.         ULONG ( __stdcall *AddRef )(
  105096.             IXMLDocument2 * This);
  105097.  
  105098.         ULONG ( __stdcall *Release )(
  105099.             IXMLDocument2 * This);
  105100.  
  105101.         HRESULT ( __stdcall *GetTypeInfoCount )(
  105102.             IXMLDocument2 * This,
  105103.                         UINT *pctinfo);
  105104.  
  105105.         HRESULT ( __stdcall *GetTypeInfo )(
  105106.             IXMLDocument2 * This,
  105107.                        UINT iTInfo,
  105108.                        LCID lcid,
  105109.                         ITypeInfo **ppTInfo);
  105110.  
  105111.         HRESULT ( __stdcall *GetIDsOfNames )(
  105112.             IXMLDocument2 * This,
  105113.                        const IID * riid,
  105114.                                 LPOLESTR *rgszNames,
  105115.                               UINT cNames,
  105116.                        LCID lcid,
  105117.                                  DISPID *rgDispId);
  105118.  
  105119.                       HRESULT ( __stdcall *Invoke )(
  105120.             IXMLDocument2 * This,
  105121.  
  105122.                   DISPID dispIdMember,
  105123.  
  105124.                   const IID * riid,
  105125.  
  105126.                   LCID lcid,
  105127.  
  105128.                   WORD wFlags,
  105129.  
  105130.                   DISPPARAMS *pDispParams,
  105131.  
  105132.                        VARIANT *pVarResult,
  105133.  
  105134.                        EXCEPINFO *pExcepInfo,
  105135.  
  105136.                        UINT *puArgErr);
  105137.  
  105138.                                         HRESULT ( __stdcall *get_root )(
  105139.             IXMLDocument2 * This,
  105140.                                 IXMLElement2 **p);
  105141.  
  105142.                                                 HRESULT ( __stdcall *get_fileSize )(
  105143.             IXMLDocument2 * This,
  105144.                                 BSTR *p);
  105145.  
  105146.                                                 HRESULT ( __stdcall *get_fileModifiedDate )(
  105147.             IXMLDocument2 * This,
  105148.                                 BSTR *p);
  105149.  
  105150.                                                 HRESULT ( __stdcall *get_fileUpdatedDate )(
  105151.             IXMLDocument2 * This,
  105152.                                 BSTR *p);
  105153.  
  105154.                                         HRESULT ( __stdcall *get_URL )(
  105155.             IXMLDocument2 * This,
  105156.                                 BSTR *p);
  105157.  
  105158.                                         HRESULT ( __stdcall *put_URL )(
  105159.             IXMLDocument2 * This,
  105160.                        BSTR p);
  105161.  
  105162.                                                 HRESULT ( __stdcall *get_mimeType )(
  105163.             IXMLDocument2 * This,
  105164.                                 BSTR *p);
  105165.  
  105166.                                         HRESULT ( __stdcall *get_readyState )(
  105167.             IXMLDocument2 * This,
  105168.                                 long *pl);
  105169.  
  105170.                                         HRESULT ( __stdcall *get_charset )(
  105171.             IXMLDocument2 * This,
  105172.                                 BSTR *p);
  105173.  
  105174.                                         HRESULT ( __stdcall *put_charset )(
  105175.             IXMLDocument2 * This,
  105176.                        BSTR p);
  105177.  
  105178.                                         HRESULT ( __stdcall *get_version )(
  105179.             IXMLDocument2 * This,
  105180.                                 BSTR *p);
  105181.  
  105182.                                         HRESULT ( __stdcall *get_doctype )(
  105183.             IXMLDocument2 * This,
  105184.                                 BSTR *p);
  105185.  
  105186.                                                 HRESULT ( __stdcall *get_dtdURL )(
  105187.             IXMLDocument2 * This,
  105188.                                 BSTR *p);
  105189.  
  105190.                                HRESULT ( __stdcall *createElement )(
  105191.             IXMLDocument2 * This,
  105192.                        VARIANT vType,
  105193.                                  VARIANT var1,
  105194.                                 IXMLElement2 **ppElem);
  105195.  
  105196.                                         HRESULT ( __stdcall *get_async )(
  105197.             IXMLDocument2 * This,
  105198.                                 VARIANT_BOOL *pf);
  105199.  
  105200.                                         HRESULT ( __stdcall *put_async )(
  105201.             IXMLDocument2 * This,
  105202.                        VARIANT_BOOL f);
  105203.  
  105204.  
  105205.     } IXMLDocument2Vtbl;
  105206.  
  105207.     struct IXMLDocument2
  105208.     {
  105209.                    struct IXMLDocument2Vtbl *lpVtbl;
  105210.     };
  105211. # 9372 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105212. extern const IID IID_IXMLElement;
  105213. # 9425 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105214.     typedef struct IXMLElementVtbl
  105215.     {
  105216.  
  105217.  
  105218.         HRESULT ( __stdcall *QueryInterface )(
  105219.             IXMLElement * This,
  105220.                        const IID * riid,
  105221.  
  105222.                           void **ppvObject);
  105223.  
  105224.         ULONG ( __stdcall *AddRef )(
  105225.             IXMLElement * This);
  105226.  
  105227.         ULONG ( __stdcall *Release )(
  105228.             IXMLElement * This);
  105229.  
  105230.         HRESULT ( __stdcall *GetTypeInfoCount )(
  105231.             IXMLElement * This,
  105232.                         UINT *pctinfo);
  105233.  
  105234.         HRESULT ( __stdcall *GetTypeInfo )(
  105235.             IXMLElement * This,
  105236.                        UINT iTInfo,
  105237.                        LCID lcid,
  105238.                         ITypeInfo **ppTInfo);
  105239.  
  105240.         HRESULT ( __stdcall *GetIDsOfNames )(
  105241.             IXMLElement * This,
  105242.                        const IID * riid,
  105243.                                 LPOLESTR *rgszNames,
  105244.                               UINT cNames,
  105245.                        LCID lcid,
  105246.                                  DISPID *rgDispId);
  105247.  
  105248.                       HRESULT ( __stdcall *Invoke )(
  105249.             IXMLElement * This,
  105250.  
  105251.                   DISPID dispIdMember,
  105252.  
  105253.                   const IID * riid,
  105254.  
  105255.                   LCID lcid,
  105256.  
  105257.                   WORD wFlags,
  105258.  
  105259.                   DISPPARAMS *pDispParams,
  105260.  
  105261.                        VARIANT *pVarResult,
  105262.  
  105263.                        EXCEPINFO *pExcepInfo,
  105264.  
  105265.                        UINT *puArgErr);
  105266.  
  105267.                                         HRESULT ( __stdcall *get_tagName )(
  105268.             IXMLElement * This,
  105269.                                 BSTR *p);
  105270.  
  105271.                                         HRESULT ( __stdcall *put_tagName )(
  105272.             IXMLElement * This,
  105273.                        BSTR p);
  105274.  
  105275.                                         HRESULT ( __stdcall *get_parent )(
  105276.             IXMLElement * This,
  105277.                                 IXMLElement **ppParent);
  105278.  
  105279.                                HRESULT ( __stdcall *setAttribute )(
  105280.             IXMLElement * This,
  105281.                        BSTR strPropertyName,
  105282.                        VARIANT PropertyValue);
  105283.  
  105284.                                HRESULT ( __stdcall *getAttribute )(
  105285.             IXMLElement * This,
  105286.                        BSTR strPropertyName,
  105287.                                 VARIANT *PropertyValue);
  105288.  
  105289.                                HRESULT ( __stdcall *removeAttribute )(
  105290.             IXMLElement * This,
  105291.                        BSTR strPropertyName);
  105292.  
  105293.                                         HRESULT ( __stdcall *get_children )(
  105294.             IXMLElement * This,
  105295.                                 IXMLElementCollection **pp);
  105296.  
  105297.                                         HRESULT ( __stdcall *get_type )(
  105298.             IXMLElement * This,
  105299.                                 long *plType);
  105300.  
  105301.                                         HRESULT ( __stdcall *get_text )(
  105302.             IXMLElement * This,
  105303.                                 BSTR *p);
  105304.  
  105305.                                         HRESULT ( __stdcall *put_text )(
  105306.             IXMLElement * This,
  105307.                        BSTR p);
  105308.  
  105309.                                HRESULT ( __stdcall *addChild )(
  105310.             IXMLElement * This,
  105311.                        IXMLElement *pChildElem,
  105312.             long lIndex,
  105313.             long lReserved);
  105314.  
  105315.                                HRESULT ( __stdcall *removeChild )(
  105316.             IXMLElement * This,
  105317.                        IXMLElement *pChildElem);
  105318.  
  105319.  
  105320.     } IXMLElementVtbl;
  105321.  
  105322.     struct IXMLElement
  105323.     {
  105324.                    struct IXMLElementVtbl *lpVtbl;
  105325.     };
  105326. # 9620 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105327. extern const IID IID_IXMLElement2;
  105328. # 9676 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105329.     typedef struct IXMLElement2Vtbl
  105330.     {
  105331.  
  105332.  
  105333.         HRESULT ( __stdcall *QueryInterface )(
  105334.             IXMLElement2 * This,
  105335.                        const IID * riid,
  105336.  
  105337.                           void **ppvObject);
  105338.  
  105339.         ULONG ( __stdcall *AddRef )(
  105340.             IXMLElement2 * This);
  105341.  
  105342.         ULONG ( __stdcall *Release )(
  105343.             IXMLElement2 * This);
  105344.  
  105345.         HRESULT ( __stdcall *GetTypeInfoCount )(
  105346.             IXMLElement2 * This,
  105347.                         UINT *pctinfo);
  105348.  
  105349.         HRESULT ( __stdcall *GetTypeInfo )(
  105350.             IXMLElement2 * This,
  105351.                        UINT iTInfo,
  105352.                        LCID lcid,
  105353.                         ITypeInfo **ppTInfo);
  105354.  
  105355.         HRESULT ( __stdcall *GetIDsOfNames )(
  105356.             IXMLElement2 * This,
  105357.                        const IID * riid,
  105358.                                 LPOLESTR *rgszNames,
  105359.                               UINT cNames,
  105360.                        LCID lcid,
  105361.                                  DISPID *rgDispId);
  105362.  
  105363.                       HRESULT ( __stdcall *Invoke )(
  105364.             IXMLElement2 * This,
  105365.  
  105366.                   DISPID dispIdMember,
  105367.  
  105368.                   const IID * riid,
  105369.  
  105370.                   LCID lcid,
  105371.  
  105372.                   WORD wFlags,
  105373.  
  105374.                   DISPPARAMS *pDispParams,
  105375.  
  105376.                        VARIANT *pVarResult,
  105377.  
  105378.                        EXCEPINFO *pExcepInfo,
  105379.  
  105380.                        UINT *puArgErr);
  105381.  
  105382.                                         HRESULT ( __stdcall *get_tagName )(
  105383.             IXMLElement2 * This,
  105384.                                 BSTR *p);
  105385.  
  105386.                                         HRESULT ( __stdcall *put_tagName )(
  105387.             IXMLElement2 * This,
  105388.                        BSTR p);
  105389.  
  105390.                                         HRESULT ( __stdcall *get_parent )(
  105391.             IXMLElement2 * This,
  105392.                                 IXMLElement2 **ppParent);
  105393.  
  105394.                                HRESULT ( __stdcall *setAttribute )(
  105395.             IXMLElement2 * This,
  105396.                        BSTR strPropertyName,
  105397.                        VARIANT PropertyValue);
  105398.  
  105399.                                HRESULT ( __stdcall *getAttribute )(
  105400.             IXMLElement2 * This,
  105401.                        BSTR strPropertyName,
  105402.                                 VARIANT *PropertyValue);
  105403.  
  105404.                                HRESULT ( __stdcall *removeAttribute )(
  105405.             IXMLElement2 * This,
  105406.                        BSTR strPropertyName);
  105407.  
  105408.                                         HRESULT ( __stdcall *get_children )(
  105409.             IXMLElement2 * This,
  105410.                                 IXMLElementCollection **pp);
  105411.  
  105412.                                         HRESULT ( __stdcall *get_type )(
  105413.             IXMLElement2 * This,
  105414.                                 long *plType);
  105415.  
  105416.                                         HRESULT ( __stdcall *get_text )(
  105417.             IXMLElement2 * This,
  105418.                                 BSTR *p);
  105419.  
  105420.                                         HRESULT ( __stdcall *put_text )(
  105421.             IXMLElement2 * This,
  105422.                        BSTR p);
  105423.  
  105424.                                HRESULT ( __stdcall *addChild )(
  105425.             IXMLElement2 * This,
  105426.                        IXMLElement2 *pChildElem,
  105427.             long lIndex,
  105428.             long lReserved);
  105429.  
  105430.                                HRESULT ( __stdcall *removeChild )(
  105431.             IXMLElement2 * This,
  105432.                        IXMLElement2 *pChildElem);
  105433.  
  105434.                                         HRESULT ( __stdcall *get_attributes )(
  105435.             IXMLElement2 * This,
  105436.                                 IXMLElementCollection **pp);
  105437.  
  105438.  
  105439.     } IXMLElement2Vtbl;
  105440.  
  105441.     struct IXMLElement2
  105442.     {
  105443.                    struct IXMLElement2Vtbl *lpVtbl;
  105444.     };
  105445. # 9878 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105446. extern const IID IID_IXMLAttribute;
  105447. # 9897 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105448.     typedef struct IXMLAttributeVtbl
  105449.     {
  105450.  
  105451.  
  105452.         HRESULT ( __stdcall *QueryInterface )(
  105453.             IXMLAttribute * This,
  105454.                        const IID * riid,
  105455.  
  105456.                           void **ppvObject);
  105457.  
  105458.         ULONG ( __stdcall *AddRef )(
  105459.             IXMLAttribute * This);
  105460.  
  105461.         ULONG ( __stdcall *Release )(
  105462.             IXMLAttribute * This);
  105463.  
  105464.         HRESULT ( __stdcall *GetTypeInfoCount )(
  105465.             IXMLAttribute * This,
  105466.                         UINT *pctinfo);
  105467.  
  105468.         HRESULT ( __stdcall *GetTypeInfo )(
  105469.             IXMLAttribute * This,
  105470.                        UINT iTInfo,
  105471.                        LCID lcid,
  105472.                         ITypeInfo **ppTInfo);
  105473.  
  105474.         HRESULT ( __stdcall *GetIDsOfNames )(
  105475.             IXMLAttribute * This,
  105476.                        const IID * riid,
  105477.                                 LPOLESTR *rgszNames,
  105478.                               UINT cNames,
  105479.                        LCID lcid,
  105480.                                  DISPID *rgDispId);
  105481.  
  105482.                       HRESULT ( __stdcall *Invoke )(
  105483.             IXMLAttribute * This,
  105484.  
  105485.                   DISPID dispIdMember,
  105486.  
  105487.                   const IID * riid,
  105488.  
  105489.                   LCID lcid,
  105490.  
  105491.                   WORD wFlags,
  105492.  
  105493.                   DISPPARAMS *pDispParams,
  105494.  
  105495.                        VARIANT *pVarResult,
  105496.  
  105497.                        EXCEPINFO *pExcepInfo,
  105498.  
  105499.                        UINT *puArgErr);
  105500.  
  105501.                                         HRESULT ( __stdcall *get_name )(
  105502.             IXMLAttribute * This,
  105503.                                 BSTR *n);
  105504.  
  105505.                                         HRESULT ( __stdcall *get_value )(
  105506.             IXMLAttribute * This,
  105507.                                 BSTR *v);
  105508.  
  105509.  
  105510.     } IXMLAttributeVtbl;
  105511.  
  105512.     struct IXMLAttribute
  105513.     {
  105514.                    struct IXMLAttributeVtbl *lpVtbl;
  105515.     };
  105516. # 10018 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105517. extern const IID IID_IXMLError;
  105518. # 10034 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105519.     typedef struct IXMLErrorVtbl
  105520.     {
  105521.  
  105522.  
  105523.         HRESULT ( __stdcall *QueryInterface )(
  105524.             IXMLError * This,
  105525.                        const IID * riid,
  105526.  
  105527.                           void **ppvObject);
  105528.  
  105529.         ULONG ( __stdcall *AddRef )(
  105530.             IXMLError * This);
  105531.  
  105532.         ULONG ( __stdcall *Release )(
  105533.             IXMLError * This);
  105534.  
  105535.         HRESULT ( __stdcall *GetErrorInfo )(
  105536.             IXMLError * This,
  105537.             XML_ERROR *pErrorReturn);
  105538.  
  105539.  
  105540.     } IXMLErrorVtbl;
  105541.  
  105542.     struct IXMLError
  105543.     {
  105544.                    struct IXMLErrorVtbl *lpVtbl;
  105545.     };
  105546. # 10091 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105547. extern const CLSID CLSID_XMLDocument;
  105548. # 10104 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105549. #pragma endregion
  105550.  
  105551.  
  105552.  
  105553.  
  105554.  
  105555. extern RPC_IF_HANDLE __MIDL_itf_msxml_0000_0001_v0_0_c_ifspec;
  105556. extern RPC_IF_HANDLE __MIDL_itf_msxml_0000_0001_v0_0_s_ifspec;
  105557. # 10124 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/msxml.h" 3
  105558. #pragma option pop
  105559. # 432 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 2 3
  105560. # 454 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105561. #pragma comment(lib,"uuid.lib")
  105562. # 468 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105563. #pragma region Desktop Family
  105564. # 485 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105565. extern const IID CLSID_SBS_StdURLMoniker;
  105566. extern const IID CLSID_SBS_HttpProtocol;
  105567. extern const IID CLSID_SBS_FtpProtocol;
  105568. extern const IID CLSID_SBS_GopherProtocol;
  105569. extern const IID CLSID_SBS_HttpSProtocol;
  105570. extern const IID CLSID_SBS_FileProtocol;
  105571. extern const IID CLSID_SBS_MkProtocol;
  105572. extern const IID CLSID_SBS_UrlMkBindCtx;
  105573. extern const IID CLSID_SBS_SoftDistExt;
  105574. extern const IID CLSID_SBS_CdlProtocol;
  105575. extern const IID CLSID_SBS_ClassInstallFilter;
  105576. extern const IID CLSID_SBS_InternetSecurityManager;
  105577. extern const IID CLSID_SBS_InternetZoneManager;
  105578.  
  105579.  
  105580.  
  105581.  
  105582.  
  105583.  
  105584.  
  105585. extern const IID IID_IAsyncMoniker;
  105586. extern const IID CLSID_StdURLMoniker;
  105587. extern const IID CLSID_HttpProtocol;
  105588. extern const IID CLSID_FtpProtocol;
  105589. extern const IID CLSID_GopherProtocol;
  105590. extern const IID CLSID_HttpSProtocol;
  105591. extern const IID CLSID_FileProtocol;
  105592. extern const IID CLSID_ResProtocol;
  105593. extern const IID CLSID_AboutProtocol;
  105594. extern const IID CLSID_JSProtocol;
  105595. extern const IID CLSID_MailtoProtocol;
  105596. extern const IID CLSID_IE4_PROTOCOLS;
  105597. extern const IID CLSID_MkProtocol;
  105598. extern const IID CLSID_StdURLProtocol;
  105599. extern const IID CLSID_TBAuthProtocol;
  105600. extern const IID CLSID_UrlMkBindCtx;
  105601. extern const IID CLSID_CdlProtocol;
  105602. extern const IID CLSID_ClassInstallFilter;
  105603. extern const IID IID_IAsyncBindCtx;
  105604. # 532 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105605. extern HRESULT __stdcall CreateURLMoniker( LPMONIKER pMkCtx, LPCWSTR szURL, LPMONIKER * ppmk);
  105606. extern HRESULT __stdcall CreateURLMonikerEx( LPMONIKER pMkCtx, LPCWSTR szURL, LPMONIKER * ppmk, DWORD dwFlags);
  105607. extern HRESULT __stdcall GetClassURL( LPCWSTR szURL, CLSID *pClsID);
  105608. extern HRESULT __stdcall CreateAsyncBindCtx(DWORD reserved, IBindStatusCallback *pBSCb,
  105609.                                          IEnumFORMATETC *pEFetc, IBindCtx **ppBC);
  105610.  
  105611. extern HRESULT __stdcall CreateURLMonikerEx2( LPMONIKER pMkCtx, IUri* pUri, LPMONIKER * ppmk, DWORD dwFlags);
  105612.  
  105613. extern HRESULT __stdcall CreateAsyncBindCtxEx( IBindCtx *pbc, DWORD dwOptions, IBindStatusCallback *pBSCb, IEnumFORMATETC *pEnum,
  105614.                                      IBindCtx **ppBC, DWORD reserved);
  105615. extern HRESULT __stdcall MkParseDisplayNameEx( IBindCtx *pbc, LPCWSTR szDisplayName, ULONG *pchEaten,
  105616.                                          LPMONIKER *ppmk);
  105617. extern HRESULT __stdcall RegisterBindStatusCallback( LPBC pBC, IBindStatusCallback *pBSCb,
  105618.                                          IBindStatusCallback** ppBSCBPrev, DWORD dwReserved);
  105619. extern HRESULT __stdcall RevokeBindStatusCallback( LPBC pBC, IBindStatusCallback *pBSCb);
  105620. extern HRESULT __stdcall GetClassFileOrMime( LPBC pBC, LPCWSTR szFilename, LPVOID pBuffer, DWORD cbSize, LPCWSTR szMime, DWORD dwReserved, CLSID *pclsid);
  105621. extern HRESULT __stdcall IsValidURL( LPBC pBC, LPCWSTR szURL, DWORD dwReserved);
  105622. extern HRESULT __stdcall CoGetClassObjectFromURL( const IID * rCLASSID,
  105623.                  LPCWSTR szCODE, DWORD dwFileVersionMS,
  105624.             DWORD dwFileVersionLS, LPCWSTR szTYPE,
  105625.                  LPBINDCTX pBindCtx, DWORD dwClsContext,
  105626.                        LPVOID pvReserved, const IID * riid, LPVOID * ppv);
  105627. extern HRESULT __stdcall IEInstallScope( LPDWORD pdwScope);
  105628. extern HRESULT __stdcall FaultInIEFeature( HWND hWnd,
  105629.                  uCLSSPEC *pClassSpec,
  105630.                         QUERYCONTEXT *pQuery, DWORD dwFlags);
  105631. extern HRESULT __stdcall GetComponentIDFromCLSSPEC( uCLSSPEC *pClassspec,
  105632.                      LPSTR * ppszComponentID);
  105633. # 570 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105634. extern HRESULT __stdcall IsAsyncMoniker( IMoniker* pmk);
  105635. extern HRESULT __stdcall CreateURLBinding(LPCWSTR lpszUrl, IBindCtx *pbc, IBinding **ppBdg);
  105636.  
  105637. extern HRESULT __stdcall RegisterMediaTypes( UINT ctypes, const LPCSTR* rgszTypes, CLIPFORMAT* rgcfTypes);
  105638. extern HRESULT __stdcall FindMediaType( LPCSTR rgszTypes, CLIPFORMAT* rgcfTypes);
  105639. extern HRESULT __stdcall CreateFormatEnumerator( UINT cfmtetc, FORMATETC* rgfmtetc, IEnumFORMATETC** ppenumfmtetc);
  105640. extern HRESULT __stdcall RegisterFormatEnumerator( LPBC pBC, IEnumFORMATETC *pEFetc, DWORD reserved);
  105641. extern HRESULT __stdcall RevokeFormatEnumerator( LPBC pBC, IEnumFORMATETC *pEFetc);
  105642. extern HRESULT __stdcall RegisterMediaTypeClass( LPBC pBC, UINT ctypes, const LPCSTR* rgszTypes, CLSID *rgclsID, DWORD reserved);
  105643. extern HRESULT __stdcall FindMediaTypeClass( LPBC pBC, LPCSTR szType, CLSID *pclsID, DWORD reserved);
  105644.  
  105645. #pragma endregion
  105646. #pragma region Application Family
  105647.  
  105648. extern HRESULT __stdcall UrlMkSetSessionOption(DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD dwReserved);
  105649. extern HRESULT __stdcall UrlMkGetSessionOption(DWORD dwOption, LPVOID pBuffer, DWORD dwBufferLength, DWORD *pdwBufferLengthOut, DWORD dwReserved);
  105650.  
  105651. #pragma endregion
  105652. #pragma region Desktop Family
  105653.  
  105654. extern HRESULT __stdcall FindMimeFromData(
  105655.                                  LPBC pBC,
  105656.                                  LPCWSTR pwzUrl,
  105657.                                  LPVOID pBuffer,
  105658.                                  DWORD cbSize,
  105659.                                  LPCWSTR pwzMimeProposed,
  105660.                                  DWORD dwMimeFlags,
  105661.                                  LPWSTR *ppwzMimeOut,
  105662.                                  DWORD dwReserved);
  105663. # 610 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105664. extern HRESULT __stdcall ObtainUserAgentString(
  105665.                                          DWORD dwOption,
  105666.                                          LPSTR pszUAOut,
  105667.                                          DWORD *cbSize);
  105668. extern HRESULT __stdcall CompareSecurityIds( BYTE* pbSecurityId1, DWORD dwLen1, BYTE* pbSecurityId2, DWORD dwLen2, DWORD dwReserved);
  105669. extern HRESULT __stdcall CompatFlagsFromClsid( CLSID *pclsid, LPDWORD pdwCompatFlags, LPDWORD pdwMiscStatusFlags);
  105670.  
  105671.  
  105672.  
  105673.  
  105674. typedef enum IEObjectType
  105675. {
  105676.     IE_EPM_OBJECT_EVENT,
  105677.     IE_EPM_OBJECT_MUTEX,
  105678.     IE_EPM_OBJECT_SEMAPHORE,
  105679.     IE_EPM_OBJECT_SHARED_MEMORY,
  105680.     IE_EPM_OBJECT_WAITABLE_TIMER,
  105681.     IE_EPM_OBJECT_FILE,
  105682.     IE_EPM_OBJECT_NAMED_PIPE,
  105683.     IE_EPM_OBJECT_REGISTRY,
  105684. } IEObjectType;
  105685.  
  105686. extern HRESULT __stdcall SetAccessForIEAppContainer(
  105687.          HANDLE hObject,
  105688.          IEObjectType ieObjectType,
  105689.          DWORD dwAccessMask
  105690.     );
  105691. # 650 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105692. #pragma endregion
  105693. #pragma region Application Family
  105694. # 774 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105695. #pragma endregion
  105696. #pragma region Desktop Family
  105697.  
  105698.  
  105699.  
  105700.  
  105701.  
  105702. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0000_v0_0_c_ifspec;
  105703. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0000_v0_0_s_ifspec;
  105704.  
  105705.  
  105706.  
  105707.  
  105708.  
  105709.  
  105710.  
  105711. typedef IPersistMoniker *LPPERSISTMONIKER;
  105712.  
  105713.  
  105714. extern const IID IID_IPersistMoniker;
  105715. # 829 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105716.     typedef struct IPersistMonikerVtbl
  105717.     {
  105718.  
  105719.  
  105720.         HRESULT ( __stdcall *QueryInterface )(
  105721.                       IPersistMoniker * This,
  105722.                                  const IID * riid,
  105723.  
  105724.                           void **ppvObject);
  105725.  
  105726.         ULONG ( __stdcall *AddRef )(
  105727.                       IPersistMoniker * This);
  105728.  
  105729.         ULONG ( __stdcall *Release )(
  105730.                       IPersistMoniker * This);
  105731.  
  105732.         HRESULT ( __stdcall *GetClassID )(
  105733.                       IPersistMoniker * This,
  105734.                                    CLSID *pClassID);
  105735.  
  105736.         HRESULT ( __stdcall *IsDirty )(
  105737.                       IPersistMoniker * This);
  105738.  
  105739.         HRESULT ( __stdcall *Load )(
  105740.                       IPersistMoniker * This,
  105741.                        BOOL fFullyAvailable,
  105742.                                      IMoniker *pimkName,
  105743.                                      LPBC pibc,
  105744.                        DWORD grfMode);
  105745.  
  105746.         HRESULT ( __stdcall *Save )(
  105747.                       IPersistMoniker * This,
  105748.                                      IMoniker *pimkName,
  105749.                                      LPBC pbc,
  105750.                        BOOL fRemember);
  105751.  
  105752.         HRESULT ( __stdcall *SaveCompleted )(
  105753.                       IPersistMoniker * This,
  105754.                                      IMoniker *pimkName,
  105755.                                      LPBC pibc);
  105756.  
  105757.         HRESULT ( __stdcall *GetCurMoniker )(
  105758.                       IPersistMoniker * This,
  105759.                                              IMoniker **ppimkName);
  105760.  
  105761.  
  105762.     } IPersistMonikerVtbl;
  105763.  
  105764.     struct IPersistMoniker
  105765.     {
  105766.                    struct IPersistMonikerVtbl *lpVtbl;
  105767.     };
  105768. # 934 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105769. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0001_v0_0_c_ifspec;
  105770. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0001_v0_0_s_ifspec;
  105771.  
  105772.  
  105773.  
  105774.  
  105775.  
  105776.  
  105777.  
  105778. typedef IMonikerProp *LPMONIKERPROP;
  105779.  
  105780. typedef
  105781. enum __MIDL_IMonikerProp_0001
  105782.     {
  105783.         MIMETYPEPROP = 0,
  105784.         USE_SRC_URL = 0x1,
  105785.         CLASSIDPROP = 0x2,
  105786.         TRUSTEDDOWNLOADPROP = 0x3,
  105787.         POPUPLEVELPROP = 0x4
  105788.     } MONIKERPROPERTY;
  105789.  
  105790.  
  105791. extern const IID IID_IMonikerProp;
  105792. # 973 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105793.     typedef struct IMonikerPropVtbl
  105794.     {
  105795.  
  105796.  
  105797.         HRESULT ( __stdcall *QueryInterface )(
  105798.                       IMonikerProp * This,
  105799.                                  const IID * riid,
  105800.  
  105801.                           void **ppvObject);
  105802.  
  105803.         ULONG ( __stdcall *AddRef )(
  105804.                       IMonikerProp * This);
  105805.  
  105806.         ULONG ( __stdcall *Release )(
  105807.                       IMonikerProp * This);
  105808.  
  105809.         HRESULT ( __stdcall *PutProperty )(
  105810.                       IMonikerProp * This,
  105811.                        MONIKERPROPERTY mkp,
  105812.                                  LPCWSTR val);
  105813.  
  105814.  
  105815.     } IMonikerPropVtbl;
  105816.  
  105817.     struct IMonikerProp
  105818.     {
  105819.                    struct IMonikerPropVtbl *lpVtbl;
  105820.     };
  105821. # 1039 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105822. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0002_v0_0_c_ifspec;
  105823. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0002_v0_0_s_ifspec;
  105824.  
  105825.  
  105826.  
  105827.  
  105828.  
  105829.  
  105830.  
  105831. typedef IBindProtocol *LPBINDPROTOCOL;
  105832.  
  105833.  
  105834. extern const IID IID_IBindProtocol;
  105835. # 1069 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105836.     typedef struct IBindProtocolVtbl
  105837.     {
  105838.  
  105839.  
  105840.         HRESULT ( __stdcall *QueryInterface )(
  105841.             IBindProtocol * This,
  105842.                        const IID * riid,
  105843.  
  105844.                           void **ppvObject);
  105845.  
  105846.         ULONG ( __stdcall *AddRef )(
  105847.             IBindProtocol * This);
  105848.  
  105849.         ULONG ( __stdcall *Release )(
  105850.             IBindProtocol * This);
  105851.  
  105852.         HRESULT ( __stdcall *CreateBinding )(
  105853.             IBindProtocol * This,
  105854.                        LPCWSTR szUrl,
  105855.                        IBindCtx *pbc,
  105856.                         IBinding **ppb);
  105857.  
  105858.  
  105859.     } IBindProtocolVtbl;
  105860.  
  105861.     struct IBindProtocol
  105862.     {
  105863.                    struct IBindProtocolVtbl *lpVtbl;
  105864.     };
  105865. # 1136 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105866. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0003_v0_0_c_ifspec;
  105867. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0003_v0_0_s_ifspec;
  105868.  
  105869.  
  105870.  
  105871.  
  105872.  
  105873.  
  105874.  
  105875. typedef IBinding *LPBINDING;
  105876.  
  105877.  
  105878. extern const IID IID_IBinding;
  105879. # 1180 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105880.     typedef struct IBindingVtbl
  105881.     {
  105882.  
  105883.  
  105884.         HRESULT ( __stdcall *QueryInterface )(
  105885.                       IBinding * This,
  105886.                                  const IID * riid,
  105887.  
  105888.                           void **ppvObject);
  105889.  
  105890.         ULONG ( __stdcall *AddRef )(
  105891.                       IBinding * This);
  105892.  
  105893.         ULONG ( __stdcall *Release )(
  105894.                       IBinding * This);
  105895.  
  105896.         HRESULT ( __stdcall *Abort )(
  105897.                       IBinding * This);
  105898.  
  105899.         HRESULT ( __stdcall *Suspend )(
  105900.                       IBinding * This);
  105901.  
  105902.         HRESULT ( __stdcall *Resume )(
  105903.                       IBinding * This);
  105904.  
  105905.         HRESULT ( __stdcall *SetPriority )(
  105906.                       IBinding * This,
  105907.                        LONG nPriority);
  105908.  
  105909.         HRESULT ( __stdcall *GetPriority )(
  105910.                       IBinding * This,
  105911.                                    LONG *pnPriority);
  105912.  
  105913.                       HRESULT ( __stdcall *GetBindResult )(
  105914.             IBinding * This,
  105915.                         CLSID *pclsidProtocol,
  105916.                         DWORD *pdwResult,
  105917.  
  105918.                         LPOLESTR *pszResult,
  105919.                             DWORD *pdwReserved);
  105920.  
  105921.  
  105922.     } IBindingVtbl;
  105923.  
  105924.     struct IBinding
  105925.     {
  105926.                    struct IBindingVtbl *lpVtbl;
  105927.     };
  105928. # 1269 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105929.                 HRESULT __stdcall IBinding_RemoteGetBindResult_Proxy(
  105930.               IBinding * This,
  105931.                            CLSID *pclsidProtocol,
  105932.                            DWORD *pdwResult,
  105933.                                      LPOLESTR *pszResult,
  105934.                DWORD dwReserved);
  105935.  
  105936.  
  105937. void __stdcall IBinding_RemoteGetBindResult_Stub(
  105938.     IRpcStubBuffer *This,
  105939.     IRpcChannelBuffer *_pRpcChannelBuffer,
  105940.     PRPC_MESSAGE _pRpcMessage,
  105941.     DWORD *_pdwStubPhase);
  105942. # 1293 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  105943. #pragma endregion
  105944. #pragma region Application Family
  105945.  
  105946.  
  105947.  
  105948.  
  105949.  
  105950. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0004_v0_0_c_ifspec;
  105951. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0004_v0_0_s_ifspec;
  105952.  
  105953.  
  105954.  
  105955.  
  105956.  
  105957.  
  105958.  
  105959. typedef IBindStatusCallback *LPBINDSTATUSCALLBACK;
  105960.  
  105961. typedef
  105962. enum __MIDL_IBindStatusCallback_0001
  105963.     {
  105964.         BINDVERB_GET = 0,
  105965.         BINDVERB_POST = 0x1,
  105966.         BINDVERB_PUT = 0x2,
  105967.         BINDVERB_CUSTOM = 0x3,
  105968.         BINDVERB_RESERVED1 = 0x4
  105969.     } BINDVERB;
  105970.  
  105971. typedef
  105972. enum __MIDL_IBindStatusCallback_0002
  105973.     {
  105974.         BINDINFOF_URLENCODESTGMEDDATA = 0x1,
  105975.         BINDINFOF_URLENCODEDEXTRAINFO = 0x2
  105976.     } BINDINFOF;
  105977.  
  105978. typedef
  105979. enum __MIDL_IBindStatusCallback_0003
  105980.     {
  105981.         BINDF_ASYNCHRONOUS = 0x1,
  105982.         BINDF_ASYNCSTORAGE = 0x2,
  105983.         BINDF_NOPROGRESSIVERENDERING = 0x4,
  105984.         BINDF_OFFLINEOPERATION = 0x8,
  105985.         BINDF_GETNEWESTVERSION = 0x10,
  105986.         BINDF_NOWRITECACHE = 0x20,
  105987.         BINDF_NEEDFILE = 0x40,
  105988.         BINDF_PULLDATA = 0x80,
  105989.         BINDF_IGNORESECURITYPROBLEM = 0x100,
  105990.         BINDF_RESYNCHRONIZE = 0x200,
  105991.         BINDF_HYPERLINK = 0x400,
  105992.         BINDF_NO_UI = 0x800,
  105993.         BINDF_SILENTOPERATION = 0x1000,
  105994.         BINDF_PRAGMA_NO_CACHE = 0x2000,
  105995.         BINDF_GETCLASSOBJECT = 0x4000,
  105996.         BINDF_RESERVED_1 = 0x8000,
  105997.         BINDF_FREE_THREADED = 0x10000,
  105998.         BINDF_DIRECT_READ = 0x20000,
  105999.         BINDF_FORMS_SUBMIT = 0x40000,
  106000.         BINDF_GETFROMCACHE_IF_NET_FAIL = 0x80000,
  106001.         BINDF_FROMURLMON = 0x100000,
  106002.         BINDF_FWD_BACK = 0x200000,
  106003.         BINDF_PREFERDEFAULTHANDLER = 0x400000,
  106004.         BINDF_ENFORCERESTRICTED = 0x800000,
  106005.         BINDF_RESERVED_2 = 0x80000000,
  106006.         BINDF_RESERVED_3 = 0x1000000,
  106007.         BINDF_RESERVED_4 = 0x2000000,
  106008.         BINDF_RESERVED_5 = 0x4000000,
  106009.         BINDF_RESERVED_6 = 0x8000000,
  106010.         BINDF_RESERVED_7 = 0x40000000,
  106011.         BINDF_RESERVED_8 = 0x20000000
  106012.     } BINDF;
  106013.  
  106014. typedef
  106015. enum __MIDL_IBindStatusCallback_0004
  106016.     {
  106017.         URL_ENCODING_NONE = 0,
  106018.         URL_ENCODING_ENABLE_UTF8 = 0x10000000,
  106019.         URL_ENCODING_DISABLE_UTF8 = 0x20000000
  106020.     } URL_ENCODING;
  106021.  
  106022. typedef struct _tagBINDINFO
  106023.     {
  106024.     ULONG cbSize;
  106025.     LPWSTR szExtraInfo;
  106026.     STGMEDIUM stgmedData;
  106027.     DWORD grfBindInfoF;
  106028.     DWORD dwBindVerb;
  106029.     LPWSTR szCustomVerb;
  106030.     DWORD cbstgmedData;
  106031.     DWORD dwOptions;
  106032.     DWORD dwOptionsFlags;
  106033.     DWORD dwCodePage;
  106034.     SECURITY_ATTRIBUTES securityAttributes;
  106035.     IID iid;
  106036.     IUnknown *pUnk;
  106037.     DWORD dwReserved;
  106038.     } BINDINFO;
  106039.  
  106040. typedef struct _REMSECURITY_ATTRIBUTES
  106041.     {
  106042.     DWORD nLength;
  106043.     DWORD lpSecurityDescriptor;
  106044.     BOOL bInheritHandle;
  106045.     } REMSECURITY_ATTRIBUTES;
  106046.  
  106047. typedef struct _REMSECURITY_ATTRIBUTES *PREMSECURITY_ATTRIBUTES;
  106048.  
  106049. typedef struct _REMSECURITY_ATTRIBUTES *LPREMSECURITY_ATTRIBUTES;
  106050.  
  106051. typedef struct _tagRemBINDINFO
  106052.     {
  106053.     ULONG cbSize;
  106054.     LPWSTR szExtraInfo;
  106055.     DWORD grfBindInfoF;
  106056.     DWORD dwBindVerb;
  106057.     LPWSTR szCustomVerb;
  106058.     DWORD cbstgmedData;
  106059.     DWORD dwOptions;
  106060.     DWORD dwOptionsFlags;
  106061.     DWORD dwCodePage;
  106062.     REMSECURITY_ATTRIBUTES securityAttributes;
  106063.     IID iid;
  106064.     IUnknown *pUnk;
  106065.     DWORD dwReserved;
  106066.     } RemBINDINFO;
  106067.  
  106068. typedef struct tagRemFORMATETC
  106069.     {
  106070.     DWORD cfFormat;
  106071.     DWORD ptd;
  106072.     DWORD dwAspect;
  106073.     LONG lindex;
  106074.     DWORD tymed;
  106075.     } RemFORMATETC;
  106076.  
  106077. typedef struct tagRemFORMATETC *LPREMFORMATETC;
  106078.  
  106079. typedef
  106080. enum __MIDL_IBindStatusCallback_0005
  106081.     {
  106082.         BINDINFO_OPTIONS_WININETFLAG = 0x10000,
  106083.         BINDINFO_OPTIONS_ENABLE_UTF8 = 0x20000,
  106084.         BINDINFO_OPTIONS_DISABLE_UTF8 = 0x40000,
  106085.         BINDINFO_OPTIONS_USE_IE_ENCODING = 0x80000,
  106086.         BINDINFO_OPTIONS_BINDTOOBJECT = 0x100000,
  106087.         BINDINFO_OPTIONS_SECURITYOPTOUT = 0x200000,
  106088.         BINDINFO_OPTIONS_IGNOREMIMETEXTPLAIN = 0x400000,
  106089.         BINDINFO_OPTIONS_USEBINDSTRINGCREDS = 0x800000,
  106090.         BINDINFO_OPTIONS_IGNOREHTTPHTTPSREDIRECTS = 0x1000000,
  106091.         BINDINFO_OPTIONS_IGNORE_SSLERRORS_ONCE = 0x2000000,
  106092.         BINDINFO_WPC_DOWNLOADBLOCKED = 0x8000000,
  106093.         BINDINFO_WPC_LOGGING_ENABLED = 0x10000000,
  106094.         BINDINFO_OPTIONS_ALLOWCONNECTDATA = 0x20000000,
  106095.         BINDINFO_OPTIONS_DISABLEAUTOREDIRECTS = 0x40000000,
  106096.         BINDINFO_OPTIONS_SHDOCVW_NAVIGATE = ( int )0x80000000
  106097.     } BINDINFO_OPTIONS;
  106098.  
  106099. typedef
  106100. enum __MIDL_IBindStatusCallback_0006
  106101.     {
  106102.         BSCF_FIRSTDATANOTIFICATION = 0x1,
  106103.         BSCF_INTERMEDIATEDATANOTIFICATION = 0x2,
  106104.         BSCF_LASTDATANOTIFICATION = 0x4,
  106105.         BSCF_DATAFULLYAVAILABLE = 0x8,
  106106.         BSCF_AVAILABLEDATASIZEUNKNOWN = 0x10,
  106107.         BSCF_SKIPDRAINDATAFORFILEURLS = 0x20,
  106108.         BSCF_64BITLENGTHDOWNLOAD = 0x40
  106109.     } BSCF;
  106110.  
  106111. typedef
  106112. enum tagBINDSTATUS
  106113.     {
  106114.         BINDSTATUS_FINDINGRESOURCE = 1,
  106115.         BINDSTATUS_CONNECTING = ( BINDSTATUS_FINDINGRESOURCE + 1 ) ,
  106116.         BINDSTATUS_REDIRECTING = ( BINDSTATUS_CONNECTING + 1 ) ,
  106117.         BINDSTATUS_BEGINDOWNLOADDATA = ( BINDSTATUS_REDIRECTING + 1 ) ,
  106118.         BINDSTATUS_DOWNLOADINGDATA = ( BINDSTATUS_BEGINDOWNLOADDATA + 1 ) ,
  106119.         BINDSTATUS_ENDDOWNLOADDATA = ( BINDSTATUS_DOWNLOADINGDATA + 1 ) ,
  106120.         BINDSTATUS_BEGINDOWNLOADCOMPONENTS = ( BINDSTATUS_ENDDOWNLOADDATA + 1 ) ,
  106121.         BINDSTATUS_INSTALLINGCOMPONENTS = ( BINDSTATUS_BEGINDOWNLOADCOMPONENTS + 1 ) ,
  106122.         BINDSTATUS_ENDDOWNLOADCOMPONENTS = ( BINDSTATUS_INSTALLINGCOMPONENTS + 1 ) ,
  106123.         BINDSTATUS_USINGCACHEDCOPY = ( BINDSTATUS_ENDDOWNLOADCOMPONENTS + 1 ) ,
  106124.         BINDSTATUS_SENDINGREQUEST = ( BINDSTATUS_USINGCACHEDCOPY + 1 ) ,
  106125.         BINDSTATUS_CLASSIDAVAILABLE = ( BINDSTATUS_SENDINGREQUEST + 1 ) ,
  106126.         BINDSTATUS_MIMETYPEAVAILABLE = ( BINDSTATUS_CLASSIDAVAILABLE + 1 ) ,
  106127.         BINDSTATUS_CACHEFILENAMEAVAILABLE = ( BINDSTATUS_MIMETYPEAVAILABLE + 1 ) ,
  106128.         BINDSTATUS_BEGINSYNCOPERATION = ( BINDSTATUS_CACHEFILENAMEAVAILABLE + 1 ) ,
  106129.         BINDSTATUS_ENDSYNCOPERATION = ( BINDSTATUS_BEGINSYNCOPERATION + 1 ) ,
  106130.         BINDSTATUS_BEGINUPLOADDATA = ( BINDSTATUS_ENDSYNCOPERATION + 1 ) ,
  106131.         BINDSTATUS_UPLOADINGDATA = ( BINDSTATUS_BEGINUPLOADDATA + 1 ) ,
  106132.         BINDSTATUS_ENDUPLOADDATA = ( BINDSTATUS_UPLOADINGDATA + 1 ) ,
  106133.         BINDSTATUS_PROTOCOLCLASSID = ( BINDSTATUS_ENDUPLOADDATA + 1 ) ,
  106134.         BINDSTATUS_ENCODING = ( BINDSTATUS_PROTOCOLCLASSID + 1 ) ,
  106135.         BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE = ( BINDSTATUS_ENCODING + 1 ) ,
  106136.         BINDSTATUS_CLASSINSTALLLOCATION = ( BINDSTATUS_VERIFIEDMIMETYPEAVAILABLE + 1 ) ,
  106137.         BINDSTATUS_DECODING = ( BINDSTATUS_CLASSINSTALLLOCATION + 1 ) ,
  106138.         BINDSTATUS_LOADINGMIMEHANDLER = ( BINDSTATUS_DECODING + 1 ) ,
  106139.         BINDSTATUS_CONTENTDISPOSITIONATTACH = ( BINDSTATUS_LOADINGMIMEHANDLER + 1 ) ,
  106140.         BINDSTATUS_FILTERREPORTMIMETYPE = ( BINDSTATUS_CONTENTDISPOSITIONATTACH + 1 ) ,
  106141.         BINDSTATUS_CLSIDCANINSTANTIATE = ( BINDSTATUS_FILTERREPORTMIMETYPE + 1 ) ,
  106142.         BINDSTATUS_IUNKNOWNAVAILABLE = ( BINDSTATUS_CLSIDCANINSTANTIATE + 1 ) ,
  106143.         BINDSTATUS_DIRECTBIND = ( BINDSTATUS_IUNKNOWNAVAILABLE + 1 ) ,
  106144.         BINDSTATUS_RAWMIMETYPE = ( BINDSTATUS_DIRECTBIND + 1 ) ,
  106145.         BINDSTATUS_PROXYDETECTING = ( BINDSTATUS_RAWMIMETYPE + 1 ) ,
  106146.         BINDSTATUS_ACCEPTRANGES = ( BINDSTATUS_PROXYDETECTING + 1 ) ,
  106147.         BINDSTATUS_COOKIE_SENT = ( BINDSTATUS_ACCEPTRANGES + 1 ) ,
  106148.         BINDSTATUS_COMPACT_POLICY_RECEIVED = ( BINDSTATUS_COOKIE_SENT + 1 ) ,
  106149.         BINDSTATUS_COOKIE_SUPPRESSED = ( BINDSTATUS_COMPACT_POLICY_RECEIVED + 1 ) ,
  106150.         BINDSTATUS_COOKIE_STATE_UNKNOWN = ( BINDSTATUS_COOKIE_SUPPRESSED + 1 ) ,
  106151.         BINDSTATUS_COOKIE_STATE_ACCEPT = ( BINDSTATUS_COOKIE_STATE_UNKNOWN + 1 ) ,
  106152.         BINDSTATUS_COOKIE_STATE_REJECT = ( BINDSTATUS_COOKIE_STATE_ACCEPT + 1 ) ,
  106153.         BINDSTATUS_COOKIE_STATE_PROMPT = ( BINDSTATUS_COOKIE_STATE_REJECT + 1 ) ,
  106154.         BINDSTATUS_COOKIE_STATE_LEASH = ( BINDSTATUS_COOKIE_STATE_PROMPT + 1 ) ,
  106155.         BINDSTATUS_COOKIE_STATE_DOWNGRADE = ( BINDSTATUS_COOKIE_STATE_LEASH + 1 ) ,
  106156.         BINDSTATUS_POLICY_HREF = ( BINDSTATUS_COOKIE_STATE_DOWNGRADE + 1 ) ,
  106157.         BINDSTATUS_P3P_HEADER = ( BINDSTATUS_POLICY_HREF + 1 ) ,
  106158.         BINDSTATUS_SESSION_COOKIE_RECEIVED = ( BINDSTATUS_P3P_HEADER + 1 ) ,
  106159.         BINDSTATUS_PERSISTENT_COOKIE_RECEIVED = ( BINDSTATUS_SESSION_COOKIE_RECEIVED + 1 ) ,
  106160.         BINDSTATUS_SESSION_COOKIES_ALLOWED = ( BINDSTATUS_PERSISTENT_COOKIE_RECEIVED + 1 ) ,
  106161.         BINDSTATUS_CACHECONTROL = ( BINDSTATUS_SESSION_COOKIES_ALLOWED + 1 ) ,
  106162.         BINDSTATUS_CONTENTDISPOSITIONFILENAME = ( BINDSTATUS_CACHECONTROL + 1 ) ,
  106163.         BINDSTATUS_MIMETEXTPLAINMISMATCH = ( BINDSTATUS_CONTENTDISPOSITIONFILENAME + 1 ) ,
  106164.         BINDSTATUS_PUBLISHERAVAILABLE = ( BINDSTATUS_MIMETEXTPLAINMISMATCH + 1 ) ,
  106165.         BINDSTATUS_DISPLAYNAMEAVAILABLE = ( BINDSTATUS_PUBLISHERAVAILABLE + 1 ) ,
  106166.         BINDSTATUS_SSLUX_NAVBLOCKED = ( BINDSTATUS_DISPLAYNAMEAVAILABLE + 1 ) ,
  106167.         BINDSTATUS_SERVER_MIMETYPEAVAILABLE = ( BINDSTATUS_SSLUX_NAVBLOCKED + 1 ) ,
  106168.         BINDSTATUS_SNIFFED_CLASSIDAVAILABLE = ( BINDSTATUS_SERVER_MIMETYPEAVAILABLE + 1 ) ,
  106169.         BINDSTATUS_64BIT_PROGRESS = ( BINDSTATUS_SNIFFED_CLASSIDAVAILABLE + 1 ) ,
  106170.         BINDSTATUS_LAST = BINDSTATUS_64BIT_PROGRESS,
  106171.         BINDSTATUS_RESERVED_0 = ( BINDSTATUS_LAST + 1 ) ,
  106172.         BINDSTATUS_RESERVED_1 = ( BINDSTATUS_RESERVED_0 + 1 ) ,
  106173.         BINDSTATUS_RESERVED_2 = ( BINDSTATUS_RESERVED_1 + 1 ) ,
  106174.         BINDSTATUS_RESERVED_3 = ( BINDSTATUS_RESERVED_2 + 1 ) ,
  106175.         BINDSTATUS_RESERVED_4 = ( BINDSTATUS_RESERVED_3 + 1 ) ,
  106176.         BINDSTATUS_RESERVED_5 = ( BINDSTATUS_RESERVED_4 + 1 ) ,
  106177.         BINDSTATUS_RESERVED_6 = ( BINDSTATUS_RESERVED_5 + 1 ) ,
  106178.         BINDSTATUS_RESERVED_7 = ( BINDSTATUS_RESERVED_6 + 1 ) ,
  106179.         BINDSTATUS_RESERVED_8 = ( BINDSTATUS_RESERVED_7 + 1 ) ,
  106180.         BINDSTATUS_RESERVED_9 = ( BINDSTATUS_RESERVED_8 + 1 ) ,
  106181.         BINDSTATUS_RESERVED_A = ( BINDSTATUS_RESERVED_9 + 1 ) ,
  106182.         BINDSTATUS_RESERVED_B = ( BINDSTATUS_RESERVED_A + 1 ) ,
  106183.         BINDSTATUS_RESERVED_C = ( BINDSTATUS_RESERVED_B + 1 ) ,
  106184.         BINDSTATUS_RESERVED_D = ( BINDSTATUS_RESERVED_C + 1 ) ,
  106185.         BINDSTATUS_RESERVED_E = ( BINDSTATUS_RESERVED_D + 1 ) ,
  106186.         BINDSTATUS_RESERVED_F = ( BINDSTATUS_RESERVED_E + 1 ) ,
  106187.         BINDSTATUS_RESERVED_10 = ( BINDSTATUS_RESERVED_F + 1 ) ,
  106188.         BINDSTATUS_RESERVED_11 = ( BINDSTATUS_RESERVED_10 + 1 ) ,
  106189.         BINDSTATUS_RESERVED_12 = ( BINDSTATUS_RESERVED_11 + 1 ) ,
  106190.         BINDSTATUS_RESERVED_13 = ( BINDSTATUS_RESERVED_12 + 1 ) ,
  106191.         BINDSTATUS_LAST_PRIVATE = BINDSTATUS_RESERVED_13
  106192.     } BINDSTATUS;
  106193.  
  106194.  
  106195. extern const IID IID_IBindStatusCallback;
  106196. # 1592 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106197.     typedef struct IBindStatusCallbackVtbl
  106198.     {
  106199.  
  106200.  
  106201.         HRESULT ( __stdcall *QueryInterface )(
  106202.                       IBindStatusCallback * This,
  106203.                                  const IID * riid,
  106204.  
  106205.                           void **ppvObject);
  106206.  
  106207.         ULONG ( __stdcall *AddRef )(
  106208.                       IBindStatusCallback * This);
  106209.  
  106210.         ULONG ( __stdcall *Release )(
  106211.                       IBindStatusCallback * This);
  106212.  
  106213.         HRESULT ( __stdcall *OnStartBinding )(
  106214.                       IBindStatusCallback * This,
  106215.                        DWORD dwReserved,
  106216.                                      IBinding *pib);
  106217.  
  106218.         HRESULT ( __stdcall *GetPriority )(
  106219.                       IBindStatusCallback * This,
  106220.                                    LONG *pnPriority);
  106221.  
  106222.         HRESULT ( __stdcall *OnLowResource )(
  106223.                       IBindStatusCallback * This,
  106224.                        DWORD reserved);
  106225.  
  106226.         HRESULT ( __stdcall *OnProgress )(
  106227.                       IBindStatusCallback * This,
  106228.                        ULONG ulProgress,
  106229.                        ULONG ulProgressMax,
  106230.                        ULONG ulStatusCode,
  106231.                                              LPCWSTR szStatusText);
  106232.  
  106233.         HRESULT ( __stdcall *OnStopBinding )(
  106234.                       IBindStatusCallback * This,
  106235.                        HRESULT hresult,
  106236.                                              LPCWSTR szError);
  106237.  
  106238.                       HRESULT ( __stdcall *GetBindInfo )(
  106239.             IBindStatusCallback * This,
  106240.                         DWORD *grfBINDF,
  106241.                                     BINDINFO *pbindinfo);
  106242.  
  106243.                       HRESULT ( __stdcall *OnDataAvailable )(
  106244.             IBindStatusCallback * This,
  106245.                        DWORD grfBSCF,
  106246.                        DWORD dwSize,
  106247.                        FORMATETC *pformatetc,
  106248.                        STGMEDIUM *pstgmed);
  106249.  
  106250.         HRESULT ( __stdcall *OnObjectAvailable )(
  106251.                       IBindStatusCallback * This,
  106252.                                  const IID * riid,
  106253.                                              IUnknown *punk);
  106254.  
  106255.  
  106256.     } IBindStatusCallbackVtbl;
  106257.  
  106258.     struct IBindStatusCallback
  106259.     {
  106260.                    struct IBindStatusCallbackVtbl *lpVtbl;
  106261.     };
  106262. # 1704 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106263.                 HRESULT __stdcall IBindStatusCallback_RemoteGetBindInfo_Proxy(
  106264.               IBindStatusCallback * This,
  106265.                            DWORD *grfBINDF,
  106266.                                              RemBINDINFO *pbindinfo,
  106267.                                              RemSTGMEDIUM *pstgmed);
  106268.  
  106269.  
  106270. void __stdcall IBindStatusCallback_RemoteGetBindInfo_Stub(
  106271.     IRpcStubBuffer *This,
  106272.     IRpcChannelBuffer *_pRpcChannelBuffer,
  106273.     PRPC_MESSAGE _pRpcMessage,
  106274.     DWORD *_pdwStubPhase);
  106275.  
  106276.  
  106277.                 HRESULT __stdcall IBindStatusCallback_RemoteOnDataAvailable_Proxy(
  106278.               IBindStatusCallback * This,
  106279.                DWORD grfBSCF,
  106280.                DWORD dwSize,
  106281.                          RemFORMATETC *pformatetc,
  106282.                          RemSTGMEDIUM *pstgmed);
  106283.  
  106284.  
  106285. void __stdcall IBindStatusCallback_RemoteOnDataAvailable_Stub(
  106286.     IRpcStubBuffer *This,
  106287.     IRpcChannelBuffer *_pRpcChannelBuffer,
  106288.     PRPC_MESSAGE _pRpcMessage,
  106289.     DWORD *_pdwStubPhase);
  106290. # 1742 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106291. #pragma endregion
  106292. #pragma region Desktop Family
  106293.  
  106294.  
  106295.  
  106296.  
  106297.  
  106298. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0005_v0_0_c_ifspec;
  106299. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0005_v0_0_s_ifspec;
  106300.  
  106301.  
  106302.  
  106303.  
  106304.  
  106305.  
  106306.  
  106307. typedef IBindStatusCallbackEx *LPBINDSTATUSCALLBACKEX;
  106308.  
  106309. typedef
  106310. enum __MIDL_IBindStatusCallbackEx_0001
  106311.     {
  106312.         BINDF2_DISABLEBASICOVERHTTP = 0x1,
  106313.         BINDF2_DISABLEAUTOCOOKIEHANDLING = 0x2,
  106314.         BINDF2_READ_DATA_GREATER_THAN_4GB = 0x4,
  106315.         BINDF2_DISABLE_HTTP_REDIRECT_XSECURITYID = 0x8,
  106316.         BINDF2_SETDOWNLOADMODE = 0x20,
  106317.         BINDF2_DISABLE_HTTP_REDIRECT_CACHING = 0x40,
  106318.         BINDF2_KEEP_CALLBACK_MODULE_LOADED = 0x80,
  106319.         BINDF2_ALLOW_PROXY_CRED_PROMPT = 0x100,
  106320.         BINDF2_RESERVED_17 = 0x200,
  106321.         BINDF2_RESERVED_16 = 0x400,
  106322.         BINDF2_RESERVED_15 = 0x800,
  106323.         BINDF2_RESERVED_14 = 0x1000,
  106324.         BINDF2_RESERVED_13 = 0x2000,
  106325.         BINDF2_RESERVED_12 = 0x4000,
  106326.         BINDF2_RESERVED_11 = 0x8000,
  106327.         BINDF2_RESERVED_10 = 0x10000,
  106328.         BINDF2_RESERVED_F = 0x20000,
  106329.         BINDF2_RESERVED_E = 0x40000,
  106330.         BINDF2_RESERVED_D = 0x80000,
  106331.         BINDF2_RESERVED_C = 0x100000,
  106332.         BINDF2_RESERVED_B = 0x200000,
  106333.         BINDF2_RESERVED_A = 0x400000,
  106334.         BINDF2_RESERVED_9 = 0x800000,
  106335.         BINDF2_RESERVED_8 = 0x1000000,
  106336.         BINDF2_RESERVED_7 = 0x2000000,
  106337.         BINDF2_RESERVED_6 = 0x4000000,
  106338.         BINDF2_RESERVED_5 = 0x8000000,
  106339.         BINDF2_RESERVED_4 = 0x10000000,
  106340.         BINDF2_RESERVED_3 = 0x20000000,
  106341.         BINDF2_RESERVED_2 = 0x40000000,
  106342.         BINDF2_RESERVED_1 = 0x80000000
  106343.     } BINDF2;
  106344.  
  106345.  
  106346. extern const IID IID_IBindStatusCallbackEx;
  106347. # 1816 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106348.     typedef struct IBindStatusCallbackExVtbl
  106349.     {
  106350.  
  106351.  
  106352.         HRESULT ( __stdcall *QueryInterface )(
  106353.                       IBindStatusCallbackEx * This,
  106354.                                  const IID * riid,
  106355.  
  106356.                           void **ppvObject);
  106357.  
  106358.         ULONG ( __stdcall *AddRef )(
  106359.                       IBindStatusCallbackEx * This);
  106360.  
  106361.         ULONG ( __stdcall *Release )(
  106362.                       IBindStatusCallbackEx * This);
  106363.  
  106364.         HRESULT ( __stdcall *OnStartBinding )(
  106365.                       IBindStatusCallbackEx * This,
  106366.                        DWORD dwReserved,
  106367.                                      IBinding *pib);
  106368.  
  106369.         HRESULT ( __stdcall *GetPriority )(
  106370.                       IBindStatusCallbackEx * This,
  106371.                                    LONG *pnPriority);
  106372.  
  106373.         HRESULT ( __stdcall *OnLowResource )(
  106374.                       IBindStatusCallbackEx * This,
  106375.                        DWORD reserved);
  106376.  
  106377.         HRESULT ( __stdcall *OnProgress )(
  106378.                       IBindStatusCallbackEx * This,
  106379.                        ULONG ulProgress,
  106380.                        ULONG ulProgressMax,
  106381.                        ULONG ulStatusCode,
  106382.                                              LPCWSTR szStatusText);
  106383.  
  106384.         HRESULT ( __stdcall *OnStopBinding )(
  106385.                       IBindStatusCallbackEx * This,
  106386.                        HRESULT hresult,
  106387.                                              LPCWSTR szError);
  106388.  
  106389.                       HRESULT ( __stdcall *GetBindInfo )(
  106390.             IBindStatusCallbackEx * This,
  106391.                         DWORD *grfBINDF,
  106392.                                     BINDINFO *pbindinfo);
  106393.  
  106394.                       HRESULT ( __stdcall *OnDataAvailable )(
  106395.             IBindStatusCallbackEx * This,
  106396.                        DWORD grfBSCF,
  106397.                        DWORD dwSize,
  106398.                        FORMATETC *pformatetc,
  106399.                        STGMEDIUM *pstgmed);
  106400.  
  106401.         HRESULT ( __stdcall *OnObjectAvailable )(
  106402.                       IBindStatusCallbackEx * This,
  106403.                                  const IID * riid,
  106404.                                              IUnknown *punk);
  106405.  
  106406.                       HRESULT ( __stdcall *GetBindInfoEx )(
  106407.             IBindStatusCallbackEx * This,
  106408.                         DWORD *grfBINDF,
  106409.                                     BINDINFO *pbindinfo,
  106410.                         DWORD *grfBINDF2,
  106411.                         DWORD *pdwReserved);
  106412.  
  106413.  
  106414.     } IBindStatusCallbackExVtbl;
  106415.  
  106416.     struct IBindStatusCallbackEx
  106417.     {
  106418.                    struct IBindStatusCallbackExVtbl *lpVtbl;
  106419.     };
  106420. # 1939 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106421.                 HRESULT __stdcall IBindStatusCallbackEx_RemoteGetBindInfoEx_Proxy(
  106422.               IBindStatusCallbackEx * This,
  106423.                            DWORD *grfBINDF,
  106424.                                              RemBINDINFO *pbindinfo,
  106425.                                              RemSTGMEDIUM *pstgmed,
  106426.                            DWORD *grfBINDF2,
  106427.                            DWORD *pdwReserved);
  106428.  
  106429.  
  106430. void __stdcall IBindStatusCallbackEx_RemoteGetBindInfoEx_Stub(
  106431.     IRpcStubBuffer *This,
  106432.     IRpcChannelBuffer *_pRpcChannelBuffer,
  106433.     PRPC_MESSAGE _pRpcMessage,
  106434.     DWORD *_pdwStubPhase);
  106435. # 1967 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106436. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0006_v0_0_c_ifspec;
  106437. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0006_v0_0_s_ifspec;
  106438.  
  106439.  
  106440.  
  106441.  
  106442.  
  106443.  
  106444.  
  106445. typedef IAuthenticate *LPAUTHENTICATION;
  106446.  
  106447.  
  106448. extern const IID IID_IAuthenticate;
  106449. # 1997 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106450.     typedef struct IAuthenticateVtbl
  106451.     {
  106452.  
  106453.  
  106454.         HRESULT ( __stdcall *QueryInterface )(
  106455.                       IAuthenticate * This,
  106456.                                  const IID * riid,
  106457.  
  106458.                           void **ppvObject);
  106459.  
  106460.         ULONG ( __stdcall *AddRef )(
  106461.                       IAuthenticate * This);
  106462.  
  106463.         ULONG ( __stdcall *Release )(
  106464.                       IAuthenticate * This);
  106465.  
  106466.         HRESULT ( __stdcall *Authenticate )(
  106467.                       IAuthenticate * This,
  106468.                                              HWND *phwnd,
  106469.                                              LPWSTR *pszUsername,
  106470.                                              LPWSTR *pszPassword);
  106471.  
  106472.  
  106473.     } IAuthenticateVtbl;
  106474.  
  106475.     struct IAuthenticate
  106476.     {
  106477.                    struct IAuthenticateVtbl *lpVtbl;
  106478.     };
  106479. # 2064 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106480. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0007_v0_0_c_ifspec;
  106481. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0007_v0_0_s_ifspec;
  106482.  
  106483.  
  106484.  
  106485.  
  106486.  
  106487.  
  106488.  
  106489. typedef IAuthenticateEx *LPAUTHENTICATIONEX;
  106490.  
  106491. typedef
  106492. enum __MIDL_IAuthenticateEx_0001
  106493.     {
  106494.         AUTHENTICATEF_PROXY = 0x1,
  106495.         AUTHENTICATEF_BASIC = 0x2,
  106496.         AUTHENTICATEF_HTTP = 0x4
  106497.     } AUTHENTICATEF;
  106498.  
  106499. typedef struct _tagAUTHENTICATEINFO
  106500.     {
  106501.     DWORD dwFlags;
  106502.     DWORD dwReserved;
  106503.     } AUTHENTICATEINFO;
  106504.  
  106505.  
  106506. extern const IID IID_IAuthenticateEx;
  106507. # 2109 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106508.     typedef struct IAuthenticateExVtbl
  106509.     {
  106510.  
  106511.  
  106512.         HRESULT ( __stdcall *QueryInterface )(
  106513.                       IAuthenticateEx * This,
  106514.                                  const IID * riid,
  106515.  
  106516.                           void **ppvObject);
  106517.  
  106518.         ULONG ( __stdcall *AddRef )(
  106519.                       IAuthenticateEx * This);
  106520.  
  106521.         ULONG ( __stdcall *Release )(
  106522.                       IAuthenticateEx * This);
  106523.  
  106524.         HRESULT ( __stdcall *Authenticate )(
  106525.                       IAuthenticateEx * This,
  106526.                                              HWND *phwnd,
  106527.                                              LPWSTR *pszUsername,
  106528.                                              LPWSTR *pszPassword);
  106529.  
  106530.         HRESULT ( __stdcall *AuthenticateEx )(
  106531.                       IAuthenticateEx * This,
  106532.                                              HWND *phwnd,
  106533.                                              LPWSTR *pszUsername,
  106534.                                              LPWSTR *pszPassword,
  106535.                                  AUTHENTICATEINFO *pauthinfo);
  106536.  
  106537.  
  106538.     } IAuthenticateExVtbl;
  106539.  
  106540.     struct IAuthenticateEx
  106541.     {
  106542.                    struct IAuthenticateExVtbl *lpVtbl;
  106543.     };
  106544. # 2187 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106545. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0008_v0_0_c_ifspec;
  106546. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0008_v0_0_s_ifspec;
  106547.  
  106548.  
  106549.  
  106550.  
  106551.  
  106552.  
  106553.  
  106554. typedef IHttpNegotiate *LPHTTPNEGOTIATE;
  106555.  
  106556.  
  106557. extern const IID IID_IHttpNegotiate;
  106558. # 2224 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106559.     typedef struct IHttpNegotiateVtbl
  106560.     {
  106561.  
  106562.  
  106563.         HRESULT ( __stdcall *QueryInterface )(
  106564.                       IHttpNegotiate * This,
  106565.                                  const IID * riid,
  106566.  
  106567.                           void **ppvObject);
  106568.  
  106569.         ULONG ( __stdcall *AddRef )(
  106570.                       IHttpNegotiate * This);
  106571.  
  106572.         ULONG ( __stdcall *Release )(
  106573.                       IHttpNegotiate * This);
  106574.  
  106575.         HRESULT ( __stdcall *BeginningTransaction )(
  106576.                       IHttpNegotiate * This,
  106577.                                  LPCWSTR szURL,
  106578.                                              LPCWSTR szHeaders,
  106579.                        DWORD dwReserved,
  106580.                                              LPWSTR *pszAdditionalHeaders);
  106581.  
  106582.         HRESULT ( __stdcall *OnResponse )(
  106583.                       IHttpNegotiate * This,
  106584.                        DWORD dwResponseCode,
  106585.                                              LPCWSTR szResponseHeaders,
  106586.                                              LPCWSTR szRequestHeaders,
  106587.                                              LPWSTR *pszAdditionalRequestHeaders);
  106588.  
  106589.  
  106590.     } IHttpNegotiateVtbl;
  106591.  
  106592.     struct IHttpNegotiate
  106593.     {
  106594.                    struct IHttpNegotiateVtbl *lpVtbl;
  106595.     };
  106596. # 2302 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106597. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0009_v0_0_c_ifspec;
  106598. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0009_v0_0_s_ifspec;
  106599.  
  106600.  
  106601.  
  106602.  
  106603.  
  106604.  
  106605.  
  106606. typedef IHttpNegotiate2 *LPHTTPNEGOTIATE2;
  106607.  
  106608.  
  106609. extern const IID IID_IHttpNegotiate2;
  106610. # 2332 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106611.     typedef struct IHttpNegotiate2Vtbl
  106612.     {
  106613.  
  106614.  
  106615.         HRESULT ( __stdcall *QueryInterface )(
  106616.                       IHttpNegotiate2 * This,
  106617.                                  const IID * riid,
  106618.  
  106619.                           void **ppvObject);
  106620.  
  106621.         ULONG ( __stdcall *AddRef )(
  106622.                       IHttpNegotiate2 * This);
  106623.  
  106624.         ULONG ( __stdcall *Release )(
  106625.                       IHttpNegotiate2 * This);
  106626.  
  106627.         HRESULT ( __stdcall *BeginningTransaction )(
  106628.                       IHttpNegotiate2 * This,
  106629.                                  LPCWSTR szURL,
  106630.                                              LPCWSTR szHeaders,
  106631.                        DWORD dwReserved,
  106632.                                              LPWSTR *pszAdditionalHeaders);
  106633.  
  106634.         HRESULT ( __stdcall *OnResponse )(
  106635.                       IHttpNegotiate2 * This,
  106636.                        DWORD dwResponseCode,
  106637.                                              LPCWSTR szResponseHeaders,
  106638.                                              LPCWSTR szRequestHeaders,
  106639.                                              LPWSTR *pszAdditionalRequestHeaders);
  106640.  
  106641.         HRESULT ( __stdcall *GetRootSecurityId )(
  106642.                       IHttpNegotiate2 * This,
  106643.                                                                         BYTE *pbSecurityId,
  106644.                                          DWORD *pcbSecurityId,
  106645.                        DWORD_PTR dwReserved);
  106646.  
  106647.  
  106648.     } IHttpNegotiate2Vtbl;
  106649.  
  106650.     struct IHttpNegotiate2
  106651.     {
  106652.                    struct IHttpNegotiate2Vtbl *lpVtbl;
  106653.     };
  106654. # 2420 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106655. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0010_v0_0_c_ifspec;
  106656. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0010_v0_0_s_ifspec;
  106657.  
  106658.  
  106659.  
  106660.  
  106661.  
  106662.  
  106663.  
  106664. typedef IHttpNegotiate3 *LPHTTPNEGOTIATE3;
  106665.  
  106666.  
  106667. extern const IID IID_IHttpNegotiate3;
  106668. # 2449 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106669.     typedef struct IHttpNegotiate3Vtbl
  106670.     {
  106671.  
  106672.  
  106673.         HRESULT ( __stdcall *QueryInterface )(
  106674.                       IHttpNegotiate3 * This,
  106675.                                  const IID * riid,
  106676.  
  106677.                           void **ppvObject);
  106678.  
  106679.         ULONG ( __stdcall *AddRef )(
  106680.                       IHttpNegotiate3 * This);
  106681.  
  106682.         ULONG ( __stdcall *Release )(
  106683.                       IHttpNegotiate3 * This);
  106684.  
  106685.         HRESULT ( __stdcall *BeginningTransaction )(
  106686.                       IHttpNegotiate3 * This,
  106687.                                  LPCWSTR szURL,
  106688.                                              LPCWSTR szHeaders,
  106689.                        DWORD dwReserved,
  106690.                                              LPWSTR *pszAdditionalHeaders);
  106691.  
  106692.         HRESULT ( __stdcall *OnResponse )(
  106693.                       IHttpNegotiate3 * This,
  106694.                        DWORD dwResponseCode,
  106695.                                              LPCWSTR szResponseHeaders,
  106696.                                              LPCWSTR szRequestHeaders,
  106697.                                              LPWSTR *pszAdditionalRequestHeaders);
  106698.  
  106699.         HRESULT ( __stdcall *GetRootSecurityId )(
  106700.                       IHttpNegotiate3 * This,
  106701.                                                                         BYTE *pbSecurityId,
  106702.                                          DWORD *pcbSecurityId,
  106703.                        DWORD_PTR dwReserved);
  106704.  
  106705.         HRESULT ( __stdcall *GetSerializedClientCertContext )(
  106706.                       IHttpNegotiate3 * This,
  106707.                                                                                      BYTE **ppbCert,
  106708.                                    DWORD *pcbCert);
  106709.  
  106710.  
  106711.     } IHttpNegotiate3Vtbl;
  106712.  
  106713.     struct IHttpNegotiate3
  106714.     {
  106715.                    struct IHttpNegotiate3Vtbl *lpVtbl;
  106716.     };
  106717. # 2546 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106718. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0011_v0_0_c_ifspec;
  106719. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0011_v0_0_s_ifspec;
  106720.  
  106721.  
  106722.  
  106723.  
  106724.  
  106725.  
  106726.  
  106727. typedef IWinInetFileStream *LPWININETFILESTREAM;
  106728.  
  106729.  
  106730. extern const IID IID_IWinInetFileStream;
  106731. # 2578 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106732.     typedef struct IWinInetFileStreamVtbl
  106733.     {
  106734.  
  106735.  
  106736.         HRESULT ( __stdcall *QueryInterface )(
  106737.                       IWinInetFileStream * This,
  106738.                                  const IID * riid,
  106739.  
  106740.                           void **ppvObject);
  106741.  
  106742.         ULONG ( __stdcall *AddRef )(
  106743.                       IWinInetFileStream * This);
  106744.  
  106745.         ULONG ( __stdcall *Release )(
  106746.                       IWinInetFileStream * This);
  106747.  
  106748.         HRESULT ( __stdcall *SetHandleForUnlock )(
  106749.                       IWinInetFileStream * This,
  106750.                        DWORD_PTR hWinInetLockHandle,
  106751.                        DWORD_PTR dwReserved);
  106752.  
  106753.         HRESULT ( __stdcall *SetDeleteFile )(
  106754.                       IWinInetFileStream * This,
  106755.                        DWORD_PTR dwReserved);
  106756.  
  106757.  
  106758.     } IWinInetFileStreamVtbl;
  106759.  
  106760.     struct IWinInetFileStream
  106761.     {
  106762.                    struct IWinInetFileStreamVtbl *lpVtbl;
  106763.     };
  106764. # 2651 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106765. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0012_v0_0_c_ifspec;
  106766. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0012_v0_0_s_ifspec;
  106767.  
  106768.  
  106769.  
  106770.  
  106771.  
  106772.  
  106773.  
  106774. typedef IWindowForBindingUI *LPWINDOWFORBINDINGUI;
  106775.  
  106776.  
  106777. extern const IID IID_IWindowForBindingUI;
  106778. # 2680 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106779.     typedef struct IWindowForBindingUIVtbl
  106780.     {
  106781.  
  106782.  
  106783.         HRESULT ( __stdcall *QueryInterface )(
  106784.             IWindowForBindingUI * This,
  106785.                        const IID * riid,
  106786.  
  106787.                           void **ppvObject);
  106788.  
  106789.         ULONG ( __stdcall *AddRef )(
  106790.             IWindowForBindingUI * This);
  106791.  
  106792.         ULONG ( __stdcall *Release )(
  106793.             IWindowForBindingUI * This);
  106794.  
  106795.         HRESULT ( __stdcall *GetWindow )(
  106796.             IWindowForBindingUI * This,
  106797.                        const GUID * rguidReason,
  106798.                         HWND *phwnd);
  106799.  
  106800.  
  106801.     } IWindowForBindingUIVtbl;
  106802.  
  106803.     struct IWindowForBindingUI
  106804.     {
  106805.                    struct IWindowForBindingUIVtbl *lpVtbl;
  106806.     };
  106807. # 2746 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106808. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0013_v0_0_c_ifspec;
  106809. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0013_v0_0_s_ifspec;
  106810.  
  106811.  
  106812.  
  106813.  
  106814.  
  106815.  
  106816.  
  106817. typedef ICodeInstall *LPCODEINSTALL;
  106818.  
  106819. typedef
  106820. enum __MIDL_ICodeInstall_0001
  106821.     {
  106822.         CIP_DISK_FULL = 0,
  106823.         CIP_ACCESS_DENIED = ( CIP_DISK_FULL + 1 ) ,
  106824.         CIP_NEWER_VERSION_EXISTS = ( CIP_ACCESS_DENIED + 1 ) ,
  106825.         CIP_OLDER_VERSION_EXISTS = ( CIP_NEWER_VERSION_EXISTS + 1 ) ,
  106826.         CIP_NAME_CONFLICT = ( CIP_OLDER_VERSION_EXISTS + 1 ) ,
  106827.         CIP_TRUST_VERIFICATION_COMPONENT_MISSING = ( CIP_NAME_CONFLICT + 1 ) ,
  106828.         CIP_EXE_SELF_REGISTERATION_TIMEOUT = ( CIP_TRUST_VERIFICATION_COMPONENT_MISSING + 1 ) ,
  106829.         CIP_UNSAFE_TO_ABORT = ( CIP_EXE_SELF_REGISTERATION_TIMEOUT + 1 ) ,
  106830.         CIP_NEED_REBOOT = ( CIP_UNSAFE_TO_ABORT + 1 ) ,
  106831.         CIP_NEED_REBOOT_UI_PERMISSION = ( CIP_NEED_REBOOT + 1 )
  106832.     } CIP_STATUS;
  106833.  
  106834.  
  106835. extern const IID IID_ICodeInstall;
  106836. # 2792 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106837.     typedef struct ICodeInstallVtbl
  106838.     {
  106839.  
  106840.  
  106841.         HRESULT ( __stdcall *QueryInterface )(
  106842.             ICodeInstall * This,
  106843.                        const IID * riid,
  106844.  
  106845.                           void **ppvObject);
  106846.  
  106847.         ULONG ( __stdcall *AddRef )(
  106848.             ICodeInstall * This);
  106849.  
  106850.         ULONG ( __stdcall *Release )(
  106851.             ICodeInstall * This);
  106852.  
  106853.         HRESULT ( __stdcall *GetWindow )(
  106854.             ICodeInstall * This,
  106855.                        const GUID * rguidReason,
  106856.                         HWND *phwnd);
  106857.  
  106858.         HRESULT ( __stdcall *OnCodeInstallProblem )(
  106859.             ICodeInstall * This,
  106860.                        ULONG ulStatusCode,
  106861.                                LPCWSTR szDestination,
  106862.                                LPCWSTR szSource,
  106863.                        DWORD dwReserved);
  106864.  
  106865.  
  106866.     } ICodeInstallVtbl;
  106867.  
  106868.     struct ICodeInstall
  106869.     {
  106870.                    struct ICodeInstallVtbl *lpVtbl;
  106871.     };
  106872. # 2866 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106873. #pragma endregion
  106874.  
  106875.  
  106876.  
  106877. #pragma region Application Family
  106878.  
  106879.  
  106880.  
  106881. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0014_v0_0_c_ifspec;
  106882. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0014_v0_0_s_ifspec;
  106883.  
  106884.  
  106885.  
  106886.  
  106887.  
  106888.  
  106889.  
  106890. typedef
  106891. enum __MIDL_IUri_0001
  106892.     {
  106893.         Uri_PROPERTY_ABSOLUTE_URI = 0,
  106894.         Uri_PROPERTY_STRING_START = Uri_PROPERTY_ABSOLUTE_URI,
  106895.         Uri_PROPERTY_AUTHORITY = 1,
  106896.         Uri_PROPERTY_DISPLAY_URI = 2,
  106897.         Uri_PROPERTY_DOMAIN = 3,
  106898.         Uri_PROPERTY_EXTENSION = 4,
  106899.         Uri_PROPERTY_FRAGMENT = 5,
  106900.         Uri_PROPERTY_HOST = 6,
  106901.         Uri_PROPERTY_PASSWORD = 7,
  106902.         Uri_PROPERTY_PATH = 8,
  106903.         Uri_PROPERTY_PATH_AND_QUERY = 9,
  106904.         Uri_PROPERTY_QUERY = 10,
  106905.         Uri_PROPERTY_RAW_URI = 11,
  106906.         Uri_PROPERTY_SCHEME_NAME = 12,
  106907.         Uri_PROPERTY_USER_INFO = 13,
  106908.         Uri_PROPERTY_USER_NAME = 14,
  106909.         Uri_PROPERTY_STRING_LAST = Uri_PROPERTY_USER_NAME,
  106910.         Uri_PROPERTY_HOST_TYPE = 15,
  106911.         Uri_PROPERTY_DWORD_START = Uri_PROPERTY_HOST_TYPE,
  106912.         Uri_PROPERTY_PORT = 16,
  106913.         Uri_PROPERTY_SCHEME = 17,
  106914.         Uri_PROPERTY_ZONE = 18,
  106915.         Uri_PROPERTY_DWORD_LAST = Uri_PROPERTY_ZONE
  106916.     } Uri_PROPERTY;
  106917.  
  106918. typedef
  106919. enum __MIDL_IUri_0002
  106920.     {
  106921.         Uri_HOST_UNKNOWN = 0,
  106922.         Uri_HOST_DNS = ( Uri_HOST_UNKNOWN + 1 ) ,
  106923.         Uri_HOST_IPV4 = ( Uri_HOST_DNS + 1 ) ,
  106924.         Uri_HOST_IPV6 = ( Uri_HOST_IPV4 + 1 ) ,
  106925.         Uri_HOST_IDN = ( Uri_HOST_IPV6 + 1 )
  106926.     } Uri_HOST_TYPE;
  106927.  
  106928.  
  106929. extern const IID IID_IUri;
  106930. # 3018 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  106931.     typedef struct IUriVtbl
  106932.     {
  106933.  
  106934.  
  106935.         HRESULT ( __stdcall *QueryInterface )(
  106936.                       IUri * This,
  106937.                                  const IID * riid,
  106938.  
  106939.                           void **ppvObject);
  106940.  
  106941.         ULONG ( __stdcall *AddRef )(
  106942.                       IUri * This);
  106943.  
  106944.         ULONG ( __stdcall *Release )(
  106945.                       IUri * This);
  106946.  
  106947.                            HRESULT ( __stdcall *GetPropertyBSTR )(
  106948.                       IUri * This,
  106949.                               Uri_PROPERTY uriProp,
  106950.                                              BSTR *pbstrProperty,
  106951.                        DWORD dwFlags);
  106952.  
  106953.                            HRESULT ( __stdcall *GetPropertyLength )(
  106954.                       IUri * This,
  106955.                               Uri_PROPERTY uriProp,
  106956.                                    DWORD *pcchProperty,
  106957.                        DWORD dwFlags);
  106958.  
  106959.                            HRESULT ( __stdcall *GetPropertyDWORD )(
  106960.                       IUri * This,
  106961.                               Uri_PROPERTY uriProp,
  106962.                                    DWORD *pdwProperty,
  106963.                        DWORD dwFlags);
  106964.  
  106965.                            HRESULT ( __stdcall *HasProperty )(
  106966.                       IUri * This,
  106967.                               Uri_PROPERTY uriProp,
  106968.                                    BOOL *pfHasProperty);
  106969.  
  106970.                            HRESULT ( __stdcall *GetAbsoluteUri )(
  106971.                       IUri * This,
  106972.                                              BSTR *pbstrAbsoluteUri);
  106973.  
  106974.                            HRESULT ( __stdcall *GetAuthority )(
  106975.                       IUri * This,
  106976.                                              BSTR *pbstrAuthority);
  106977.  
  106978.                            HRESULT ( __stdcall *GetDisplayUri )(
  106979.                       IUri * This,
  106980.                                              BSTR *pbstrDisplayString);
  106981.  
  106982.                            HRESULT ( __stdcall *GetDomain )(
  106983.                       IUri * This,
  106984.                                              BSTR *pbstrDomain);
  106985.  
  106986.                            HRESULT ( __stdcall *GetExtension )(
  106987.                       IUri * This,
  106988.                                              BSTR *pbstrExtension);
  106989.  
  106990.                            HRESULT ( __stdcall *GetFragment )(
  106991.                       IUri * This,
  106992.                                              BSTR *pbstrFragment);
  106993.  
  106994.                            HRESULT ( __stdcall *GetHost )(
  106995.                       IUri * This,
  106996.                                              BSTR *pbstrHost);
  106997.  
  106998.                            HRESULT ( __stdcall *GetPassword )(
  106999.                       IUri * This,
  107000.                                              BSTR *pbstrPassword);
  107001.  
  107002.                            HRESULT ( __stdcall *GetPath )(
  107003.                       IUri * This,
  107004.                                              BSTR *pbstrPath);
  107005.  
  107006.                            HRESULT ( __stdcall *GetPathAndQuery )(
  107007.                       IUri * This,
  107008.                                              BSTR *pbstrPathAndQuery);
  107009.  
  107010.                            HRESULT ( __stdcall *GetQuery )(
  107011.                       IUri * This,
  107012.                                              BSTR *pbstrQuery);
  107013.  
  107014.                            HRESULT ( __stdcall *GetRawUri )(
  107015.                       IUri * This,
  107016.                                              BSTR *pbstrRawUri);
  107017.  
  107018.                            HRESULT ( __stdcall *GetSchemeName )(
  107019.                       IUri * This,
  107020.                                              BSTR *pbstrSchemeName);
  107021.  
  107022.                            HRESULT ( __stdcall *GetUserInfo )(
  107023.                       IUri * This,
  107024.                                              BSTR *pbstrUserInfo);
  107025.  
  107026.                            HRESULT ( __stdcall *GetUserNameA )(
  107027.                       IUri * This,
  107028.                                              BSTR *pbstrUserName);
  107029.  
  107030.                            HRESULT ( __stdcall *GetHostType )(
  107031.                       IUri * This,
  107032.                                    DWORD *pdwHostType);
  107033.  
  107034.                            HRESULT ( __stdcall *GetPort )(
  107035.                       IUri * This,
  107036.                                    DWORD *pdwPort);
  107037.  
  107038.                            HRESULT ( __stdcall *GetScheme )(
  107039.                       IUri * This,
  107040.                                    DWORD *pdwScheme);
  107041.  
  107042.                            HRESULT ( __stdcall *GetZone )(
  107043.                       IUri * This,
  107044.                                    DWORD *pdwZone);
  107045.  
  107046.                            HRESULT ( __stdcall *GetProperties )(
  107047.                       IUri * This,
  107048.                                    LPDWORD pdwFlags);
  107049.  
  107050.                            HRESULT ( __stdcall *IsEqual )(
  107051.                       IUri * This,
  107052.                                      IUri *pUri,
  107053.                                    BOOL *pfEqual);
  107054.  
  107055.  
  107056.     } IUriVtbl;
  107057.  
  107058.     struct IUri
  107059.     {
  107060.                    struct IUriVtbl *lpVtbl;
  107061.     };
  107062. # 3254 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107063. extern HRESULT __stdcall CreateUri( LPCWSTR pwzURI,
  107064.                       DWORD dwFlags,
  107065.                             DWORD_PTR dwReserved,
  107066.                           IUri** ppURI);
  107067.  
  107068. extern HRESULT __stdcall CreateUriWithFragment(
  107069.                       LPCWSTR pwzURI,
  107070.                           LPCWSTR pwzFragment,
  107071.                       DWORD dwFlags,
  107072.                             DWORD_PTR dwReserved,
  107073.                           IUri** ppURI);
  107074.  
  107075.  
  107076. #pragma endregion
  107077. #pragma region Desktop Family
  107078.  
  107079.  
  107080. extern HRESULT __stdcall CreateUriFromMultiByteString(
  107081.                LPCSTR pszANSIInputUri,
  107082.                DWORD dwEncodingFlags,
  107083.                DWORD dwCodePage,
  107084.                DWORD dwCreateFlags,
  107085.                DWORD_PTR dwReserved,
  107086.                IUri** ppUri);
  107087.  
  107088.  
  107089. #pragma endregion
  107090. #pragma region Application Family
  107091. # 3348 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107092. #pragma endregion
  107093.  
  107094. #pragma region Desktop Family
  107095.  
  107096.  
  107097.  
  107098. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0015_v0_0_c_ifspec;
  107099. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0015_v0_0_s_ifspec;
  107100. # 3364 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107101. extern const IID IID_IUriContainer;
  107102. # 3380 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107103.     typedef struct IUriContainerVtbl
  107104.     {
  107105.  
  107106.  
  107107.         HRESULT ( __stdcall *QueryInterface )(
  107108.             IUriContainer * This,
  107109.                        const IID * riid,
  107110.  
  107111.                           void **ppvObject);
  107112.  
  107113.         ULONG ( __stdcall *AddRef )(
  107114.             IUriContainer * This);
  107115.  
  107116.         ULONG ( __stdcall *Release )(
  107117.             IUriContainer * This);
  107118.  
  107119.                            HRESULT ( __stdcall *GetIUri )(
  107120.             IUriContainer * This,
  107121.                         IUri **ppIUri);
  107122.  
  107123.  
  107124.     } IUriContainerVtbl;
  107125.  
  107126.     struct IUriContainer
  107127.     {
  107128.                    struct IUriContainerVtbl *lpVtbl;
  107129.     };
  107130. # 3444 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107131. extern const IID IID_IUriBuilder;
  107132. # 3573 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107133.     typedef struct IUriBuilderVtbl
  107134.     {
  107135.  
  107136.  
  107137.         HRESULT ( __stdcall *QueryInterface )(
  107138.             IUriBuilder * This,
  107139.                        const IID * riid,
  107140.  
  107141.                           void **ppvObject);
  107142.  
  107143.         ULONG ( __stdcall *AddRef )(
  107144.             IUriBuilder * This);
  107145.  
  107146.         ULONG ( __stdcall *Release )(
  107147.             IUriBuilder * This);
  107148.  
  107149.                            HRESULT ( __stdcall *CreateUriSimple )(
  107150.             IUriBuilder * This,
  107151.                        DWORD dwAllowEncodingPropertyMask,
  107152.                        DWORD_PTR dwReserved,
  107153.  
  107154.                       IUri **ppIUri);
  107155.  
  107156.                            HRESULT ( __stdcall *CreateUri )(
  107157.             IUriBuilder * This,
  107158.                        DWORD dwCreateFlags,
  107159.                        DWORD dwAllowEncodingPropertyMask,
  107160.                        DWORD_PTR dwReserved,
  107161.  
  107162.                       IUri **ppIUri);
  107163.  
  107164.                            HRESULT ( __stdcall *CreateUriWithFlags )(
  107165.             IUriBuilder * This,
  107166.                        DWORD dwCreateFlags,
  107167.                        DWORD dwUriBuilderFlags,
  107168.                        DWORD dwAllowEncodingPropertyMask,
  107169.                        DWORD_PTR dwReserved,
  107170.  
  107171.                       IUri **ppIUri);
  107172.  
  107173.                            HRESULT ( __stdcall *GetIUri )(
  107174.             IUriBuilder * This,
  107175.  
  107176.                                        IUri **ppIUri);
  107177.  
  107178.                            HRESULT ( __stdcall *SetIUri )(
  107179.             IUriBuilder * This,
  107180.  
  107181.                       IUri *pIUri);
  107182.  
  107183.                            HRESULT ( __stdcall *GetFragment )(
  107184.             IUriBuilder * This,
  107185.  
  107186.                    DWORD *pcchFragment,
  107187.  
  107188.                                        LPCWSTR *ppwzFragment);
  107189.  
  107190.                            HRESULT ( __stdcall *GetHost )(
  107191.             IUriBuilder * This,
  107192.  
  107193.                    DWORD *pcchHost,
  107194.  
  107195.                                        LPCWSTR *ppwzHost);
  107196.  
  107197.                            HRESULT ( __stdcall *GetPassword )(
  107198.             IUriBuilder * This,
  107199.  
  107200.                    DWORD *pcchPassword,
  107201.  
  107202.                                        LPCWSTR *ppwzPassword);
  107203.  
  107204.                            HRESULT ( __stdcall *GetPath )(
  107205.             IUriBuilder * This,
  107206.  
  107207.                    DWORD *pcchPath,
  107208.  
  107209.                                        LPCWSTR *ppwzPath);
  107210.  
  107211.                            HRESULT ( __stdcall *GetPort )(
  107212.             IUriBuilder * This,
  107213.  
  107214.                    BOOL *pfHasPort,
  107215.  
  107216.                    DWORD *pdwPort);
  107217.  
  107218.                            HRESULT ( __stdcall *GetQuery )(
  107219.             IUriBuilder * This,
  107220.  
  107221.                    DWORD *pcchQuery,
  107222.  
  107223.                                        LPCWSTR *ppwzQuery);
  107224.  
  107225.                            HRESULT ( __stdcall *GetSchemeName )(
  107226.             IUriBuilder * This,
  107227.  
  107228.                    DWORD *pcchSchemeName,
  107229.  
  107230.                                        LPCWSTR *ppwzSchemeName);
  107231.  
  107232.                            HRESULT ( __stdcall *GetUserNameA )(
  107233.             IUriBuilder * This,
  107234.  
  107235.                    DWORD *pcchUserName,
  107236.  
  107237.                                        LPCWSTR *ppwzUserName);
  107238.  
  107239.                            HRESULT ( __stdcall *SetFragment )(
  107240.             IUriBuilder * This,
  107241.  
  107242.                       LPCWSTR pwzNewValue);
  107243.  
  107244.                            HRESULT ( __stdcall *SetHost )(
  107245.             IUriBuilder * This,
  107246.  
  107247.                   LPCWSTR pwzNewValue);
  107248.  
  107249.                            HRESULT ( __stdcall *SetPassword )(
  107250.             IUriBuilder * This,
  107251.  
  107252.                       LPCWSTR pwzNewValue);
  107253.  
  107254.                            HRESULT ( __stdcall *SetPath )(
  107255.             IUriBuilder * This,
  107256.  
  107257.                       LPCWSTR pwzNewValue);
  107258.  
  107259.                            HRESULT ( __stdcall *SetPortA )(
  107260.             IUriBuilder * This,
  107261.                        BOOL fHasPort,
  107262.                        DWORD dwNewValue);
  107263.  
  107264.                            HRESULT ( __stdcall *SetQuery )(
  107265.             IUriBuilder * This,
  107266.  
  107267.                       LPCWSTR pwzNewValue);
  107268.  
  107269.                            HRESULT ( __stdcall *SetSchemeName )(
  107270.             IUriBuilder * This,
  107271.  
  107272.                   LPCWSTR pwzNewValue);
  107273.  
  107274.                            HRESULT ( __stdcall *SetUserName )(
  107275.             IUriBuilder * This,
  107276.  
  107277.                       LPCWSTR pwzNewValue);
  107278.  
  107279.                            HRESULT ( __stdcall *RemoveProperties )(
  107280.             IUriBuilder * This,
  107281.                        DWORD dwPropertyMask);
  107282.  
  107283.                            HRESULT ( __stdcall *HasBeenModified )(
  107284.             IUriBuilder * This,
  107285.  
  107286.                    BOOL *pfModified);
  107287.  
  107288.  
  107289.     } IUriBuilderVtbl;
  107290.  
  107291.     struct IUriBuilder
  107292.     {
  107293.                    struct IUriBuilderVtbl *lpVtbl;
  107294.     };
  107295. # 3838 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107296. extern const IID IID_IUriBuilderFactory;
  107297. # 3867 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107298.     typedef struct IUriBuilderFactoryVtbl
  107299.     {
  107300.  
  107301.  
  107302.         HRESULT ( __stdcall *QueryInterface )(
  107303.             IUriBuilderFactory * This,
  107304.                        const IID * riid,
  107305.  
  107306.                           void **ppvObject);
  107307.  
  107308.         ULONG ( __stdcall *AddRef )(
  107309.             IUriBuilderFactory * This);
  107310.  
  107311.         ULONG ( __stdcall *Release )(
  107312.             IUriBuilderFactory * This);
  107313.  
  107314.                            HRESULT ( __stdcall *CreateIUriBuilder )(
  107315.             IUriBuilderFactory * This,
  107316.  
  107317.                   DWORD dwFlags,
  107318.  
  107319.                   DWORD_PTR dwReserved,
  107320.  
  107321.                    IUriBuilder **ppIUriBuilder);
  107322.  
  107323.                            HRESULT ( __stdcall *CreateInitializedIUriBuilder )(
  107324.             IUriBuilderFactory * This,
  107325.  
  107326.                   DWORD dwFlags,
  107327.  
  107328.                   DWORD_PTR dwReserved,
  107329.  
  107330.                    IUriBuilder **ppIUriBuilder);
  107331.  
  107332.  
  107333.     } IUriBuilderFactoryVtbl;
  107334.  
  107335.     struct IUriBuilderFactory
  107336.     {
  107337.                    struct IUriBuilderFactoryVtbl *lpVtbl;
  107338.     };
  107339. # 3944 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107340. extern HRESULT __stdcall CreateIUriBuilder(
  107341.                  IUri *pIUri,
  107342.                  DWORD dwFlags,
  107343.                  DWORD_PTR dwReserved,
  107344.                  IUriBuilder **ppIUriBuilder
  107345.     );
  107346.  
  107347. #pragma endregion
  107348.  
  107349. #pragma region Desktop Family
  107350.  
  107351.  
  107352.  
  107353.  
  107354.  
  107355. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0018_v0_0_c_ifspec;
  107356. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0018_v0_0_s_ifspec;
  107357.  
  107358.  
  107359.  
  107360.  
  107361.  
  107362.  
  107363.  
  107364. typedef IWinInetInfo *LPWININETINFO;
  107365.  
  107366.  
  107367. extern const IID IID_IWinInetInfo;
  107368. # 3989 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107369.     typedef struct IWinInetInfoVtbl
  107370.     {
  107371.  
  107372.  
  107373.         HRESULT ( __stdcall *QueryInterface )(
  107374.                       IWinInetInfo * This,
  107375.                                  const IID * riid,
  107376.  
  107377.                           void **ppvObject);
  107378.  
  107379.         ULONG ( __stdcall *AddRef )(
  107380.                       IWinInetInfo * This);
  107381.  
  107382.         ULONG ( __stdcall *Release )(
  107383.                       IWinInetInfo * This);
  107384.  
  107385.                       HRESULT ( __stdcall *QueryOption )(
  107386.             IWinInetInfo * This,
  107387.                        DWORD dwOption,
  107388.                                      LPVOID pBuffer,
  107389.                             DWORD *pcbBuf);
  107390.  
  107391.  
  107392.     } IWinInetInfoVtbl;
  107393.  
  107394.     struct IWinInetInfo
  107395.     {
  107396.                    struct IWinInetInfoVtbl *lpVtbl;
  107397.     };
  107398. # 4044 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107399.                 HRESULT __stdcall IWinInetInfo_RemoteQueryOption_Proxy(
  107400.               IWinInetInfo * This,
  107401.                DWORD dwOption,
  107402.                                                                BYTE *pBuffer,
  107403.                                  DWORD *pcbBuf);
  107404.  
  107405.  
  107406. void __stdcall IWinInetInfo_RemoteQueryOption_Stub(
  107407.     IRpcStubBuffer *This,
  107408.     IRpcChannelBuffer *_pRpcChannelBuffer,
  107409.     PRPC_MESSAGE _pRpcMessage,
  107410.     DWORD *_pdwStubPhase);
  107411. # 4071 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107412. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0019_v0_0_c_ifspec;
  107413. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0019_v0_0_s_ifspec;
  107414.  
  107415.  
  107416.  
  107417.  
  107418.  
  107419.  
  107420.  
  107421. typedef IHttpSecurity *LPHTTPSECURITY;
  107422.  
  107423.  
  107424. extern const IID IID_IHttpSecurity;
  107425. # 4099 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107426.     typedef struct IHttpSecurityVtbl
  107427.     {
  107428.  
  107429.  
  107430.         HRESULT ( __stdcall *QueryInterface )(
  107431.             IHttpSecurity * This,
  107432.                        const IID * riid,
  107433.  
  107434.                           void **ppvObject);
  107435.  
  107436.         ULONG ( __stdcall *AddRef )(
  107437.             IHttpSecurity * This);
  107438.  
  107439.         ULONG ( __stdcall *Release )(
  107440.             IHttpSecurity * This);
  107441.  
  107442.         HRESULT ( __stdcall *GetWindow )(
  107443.             IHttpSecurity * This,
  107444.                        const GUID * rguidReason,
  107445.                         HWND *phwnd);
  107446.  
  107447.         HRESULT ( __stdcall *OnSecurityProblem )(
  107448.             IHttpSecurity * This,
  107449.                        DWORD dwProblem);
  107450.  
  107451.  
  107452.     } IHttpSecurityVtbl;
  107453.  
  107454.     struct IHttpSecurity
  107455.     {
  107456.                    struct IHttpSecurityVtbl *lpVtbl;
  107457.     };
  107458. # 4173 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107459. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0020_v0_0_c_ifspec;
  107460. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0020_v0_0_s_ifspec;
  107461.  
  107462.  
  107463.  
  107464.  
  107465.  
  107466.  
  107467.  
  107468. typedef IWinInetHttpInfo *LPWININETHTTPINFO;
  107469.  
  107470.  
  107471. extern const IID IID_IWinInetHttpInfo;
  107472. # 4205 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107473.     typedef struct IWinInetHttpInfoVtbl
  107474.     {
  107475.  
  107476.  
  107477.         HRESULT ( __stdcall *QueryInterface )(
  107478.                       IWinInetHttpInfo * This,
  107479.                                  const IID * riid,
  107480.  
  107481.                           void **ppvObject);
  107482.  
  107483.         ULONG ( __stdcall *AddRef )(
  107484.                       IWinInetHttpInfo * This);
  107485.  
  107486.         ULONG ( __stdcall *Release )(
  107487.                       IWinInetHttpInfo * This);
  107488.  
  107489.                       HRESULT ( __stdcall *QueryOption )(
  107490.             IWinInetHttpInfo * This,
  107491.                        DWORD dwOption,
  107492.                                      LPVOID pBuffer,
  107493.                             DWORD *pcbBuf);
  107494.  
  107495.                       HRESULT ( __stdcall *QueryInfo )(
  107496.             IWinInetHttpInfo * This,
  107497.                        DWORD dwOption,
  107498.                                      LPVOID pBuffer,
  107499.                             DWORD *pcbBuf,
  107500.                             DWORD *pdwFlags,
  107501.                             DWORD *pdwReserved);
  107502.  
  107503.  
  107504.     } IWinInetHttpInfoVtbl;
  107505.  
  107506.     struct IWinInetHttpInfo
  107507.     {
  107508.                    struct IWinInetHttpInfoVtbl *lpVtbl;
  107509.     };
  107510. # 4272 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107511.                 HRESULT __stdcall IWinInetHttpInfo_RemoteQueryInfo_Proxy(
  107512.               IWinInetHttpInfo * This,
  107513.                DWORD dwOption,
  107514.                                                                BYTE *pBuffer,
  107515.                                  DWORD *pcbBuf,
  107516.                                  DWORD *pdwFlags,
  107517.                                  DWORD *pdwReserved);
  107518.  
  107519.  
  107520. void __stdcall IWinInetHttpInfo_RemoteQueryInfo_Stub(
  107521.     IRpcStubBuffer *This,
  107522.     IRpcChannelBuffer *_pRpcChannelBuffer,
  107523.     PRPC_MESSAGE _pRpcMessage,
  107524.     DWORD *_pdwStubPhase);
  107525. # 4300 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107526. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0021_v0_0_c_ifspec;
  107527. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0021_v0_0_s_ifspec;
  107528. # 4310 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107529. extern const IID IID_IWinInetHttpTimeouts;
  107530. # 4331 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107531.     typedef struct IWinInetHttpTimeoutsVtbl
  107532.     {
  107533.  
  107534.  
  107535.         HRESULT ( __stdcall *QueryInterface )(
  107536.             IWinInetHttpTimeouts * This,
  107537.                        const IID * riid,
  107538.  
  107539.                           void **ppvObject);
  107540.  
  107541.         ULONG ( __stdcall *AddRef )(
  107542.             IWinInetHttpTimeouts * This);
  107543.  
  107544.         ULONG ( __stdcall *Release )(
  107545.             IWinInetHttpTimeouts * This);
  107546.  
  107547.                            HRESULT ( __stdcall *GetRequestTimeouts )(
  107548.             IWinInetHttpTimeouts * This,
  107549.  
  107550.                    DWORD *pdwConnectTimeout,
  107551.  
  107552.                    DWORD *pdwSendTimeout,
  107553.  
  107554.                    DWORD *pdwReceiveTimeout);
  107555.  
  107556.  
  107557.     } IWinInetHttpTimeoutsVtbl;
  107558.  
  107559.     struct IWinInetHttpTimeouts
  107560.     {
  107561.                    struct IWinInetHttpTimeoutsVtbl *lpVtbl;
  107562.     };
  107563. # 4402 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107564. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0022_v0_0_c_ifspec;
  107565. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0022_v0_0_s_ifspec;
  107566.  
  107567.  
  107568.  
  107569.  
  107570.  
  107571.  
  107572.  
  107573. typedef IWinInetCacheHints *LPWININETCACHEHINTS;
  107574.  
  107575.  
  107576. extern const IID IID_IWinInetCacheHints;
  107577. # 4434 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107578.     typedef struct IWinInetCacheHintsVtbl
  107579.     {
  107580.  
  107581.  
  107582.         HRESULT ( __stdcall *QueryInterface )(
  107583.             IWinInetCacheHints * This,
  107584.                        const IID * riid,
  107585.  
  107586.                           void **ppvObject);
  107587.  
  107588.         ULONG ( __stdcall *AddRef )(
  107589.             IWinInetCacheHints * This);
  107590.  
  107591.         ULONG ( __stdcall *Release )(
  107592.             IWinInetCacheHints * This);
  107593.  
  107594.         HRESULT ( __stdcall *SetCacheExtension )(
  107595.             IWinInetCacheHints * This,
  107596.                        LPCWSTR pwzExt,
  107597.                                      LPVOID pszCacheFile,
  107598.                             DWORD *pcbCacheFile,
  107599.                             DWORD *pdwWinInetError,
  107600.                             DWORD *pdwReserved);
  107601.  
  107602.  
  107603.     } IWinInetCacheHintsVtbl;
  107604.  
  107605.     struct IWinInetCacheHints
  107606.     {
  107607.                    struct IWinInetCacheHintsVtbl *lpVtbl;
  107608.     };
  107609. # 4505 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107610. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0023_v0_0_c_ifspec;
  107611. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0023_v0_0_s_ifspec;
  107612.  
  107613.  
  107614.  
  107615.  
  107616.  
  107617.  
  107618.  
  107619. typedef IWinInetCacheHints2 *LPWININETCACHEHINTS2;
  107620.  
  107621.  
  107622. extern const IID IID_IWinInetCacheHints2;
  107623. # 4538 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107624.     typedef struct IWinInetCacheHints2Vtbl
  107625.     {
  107626.  
  107627.  
  107628.         HRESULT ( __stdcall *QueryInterface )(
  107629.             IWinInetCacheHints2 * This,
  107630.                        const IID * riid,
  107631.  
  107632.                           void **ppvObject);
  107633.  
  107634.         ULONG ( __stdcall *AddRef )(
  107635.             IWinInetCacheHints2 * This);
  107636.  
  107637.         ULONG ( __stdcall *Release )(
  107638.             IWinInetCacheHints2 * This);
  107639.  
  107640.         HRESULT ( __stdcall *SetCacheExtension )(
  107641.             IWinInetCacheHints2 * This,
  107642.                        LPCWSTR pwzExt,
  107643.                                      LPVOID pszCacheFile,
  107644.                             DWORD *pcbCacheFile,
  107645.                             DWORD *pdwWinInetError,
  107646.                             DWORD *pdwReserved);
  107647.  
  107648.         HRESULT ( __stdcall *SetCacheExtension2 )(
  107649.             IWinInetCacheHints2 * This,
  107650.                        LPCWSTR pwzExt,
  107651.  
  107652.                                                WCHAR *pwzCacheFile,
  107653.                             DWORD *pcchCacheFile,
  107654.                         DWORD *pdwWinInetError,
  107655.                         DWORD *pdwReserved);
  107656.  
  107657.  
  107658.     } IWinInetCacheHints2Vtbl;
  107659.  
  107660.     struct IWinInetCacheHints2
  107661.     {
  107662.                    struct IWinInetCacheHints2Vtbl *lpVtbl;
  107663.     };
  107664. # 4621 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107665. extern const GUID SID_BindHost;
  107666.  
  107667.  
  107668. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0024_v0_0_c_ifspec;
  107669. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0024_v0_0_s_ifspec;
  107670.  
  107671.  
  107672.  
  107673.  
  107674.  
  107675.  
  107676.  
  107677. typedef IBindHost *LPBINDHOST;
  107678.  
  107679.  
  107680. extern const IID IID_IBindHost;
  107681. # 4669 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107682.     typedef struct IBindHostVtbl
  107683.     {
  107684.  
  107685.  
  107686.         HRESULT ( __stdcall *QueryInterface )(
  107687.                       IBindHost * This,
  107688.                                  const IID * riid,
  107689.  
  107690.                           void **ppvObject);
  107691.  
  107692.         ULONG ( __stdcall *AddRef )(
  107693.                       IBindHost * This);
  107694.  
  107695.         ULONG ( __stdcall *Release )(
  107696.                       IBindHost * This);
  107697.  
  107698.         HRESULT ( __stdcall *CreateMoniker )(
  107699.                       IBindHost * This,
  107700.                                  LPOLESTR szName,
  107701.                                      IBindCtx *pBC,
  107702.                                              IMoniker **ppmk,
  107703.                        DWORD dwReserved);
  107704.  
  107705.                       HRESULT ( __stdcall *MonikerBindToStorage )(
  107706.             IBindHost * This,
  107707.                        IMoniker *pMk,
  107708.                        IBindCtx *pBC,
  107709.                        IBindStatusCallback *pBSC,
  107710.                        const IID * riid,
  107711.                         void **ppvObj);
  107712.  
  107713.                       HRESULT ( __stdcall *MonikerBindToObject )(
  107714.             IBindHost * This,
  107715.                        IMoniker *pMk,
  107716.                        IBindCtx *pBC,
  107717.                        IBindStatusCallback *pBSC,
  107718.                        const IID * riid,
  107719.                         void **ppvObj);
  107720.  
  107721.  
  107722.     } IBindHostVtbl;
  107723.  
  107724.     struct IBindHost
  107725.     {
  107726.                    struct IBindHostVtbl *lpVtbl;
  107727.     };
  107728. # 4747 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107729.                 HRESULT __stdcall IBindHost_RemoteMonikerBindToStorage_Proxy(
  107730.               IBindHost * This,
  107731.                                      IMoniker *pMk,
  107732.                                      IBindCtx *pBC,
  107733.                                      IBindStatusCallback *pBSC,
  107734.                          const IID * riid,
  107735.                                              IUnknown **ppvObj);
  107736.  
  107737.  
  107738. void __stdcall IBindHost_RemoteMonikerBindToStorage_Stub(
  107739.     IRpcStubBuffer *This,
  107740.     IRpcChannelBuffer *_pRpcChannelBuffer,
  107741.     PRPC_MESSAGE _pRpcMessage,
  107742.     DWORD *_pdwStubPhase);
  107743.  
  107744.  
  107745.                 HRESULT __stdcall IBindHost_RemoteMonikerBindToObject_Proxy(
  107746.               IBindHost * This,
  107747.                                      IMoniker *pMk,
  107748.                                      IBindCtx *pBC,
  107749.                                      IBindStatusCallback *pBSC,
  107750.                          const IID * riid,
  107751.                                              IUnknown **ppvObj);
  107752.  
  107753.  
  107754. void __stdcall IBindHost_RemoteMonikerBindToObject_Stub(
  107755.     IRpcStubBuffer *This,
  107756.     IRpcChannelBuffer *_pRpcChannelBuffer,
  107757.     PRPC_MESSAGE _pRpcMessage,
  107758.     DWORD *_pdwStubPhase);
  107759. # 4795 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107760. struct IBindStatusCallback;
  107761. extern HRESULT __stdcall HlinkSimpleNavigateToString(
  107762.              LPCWSTR szTarget,
  107763.              LPCWSTR szLocation,
  107764.              LPCWSTR szTargetFrameName,
  107765.              IUnknown *pUnk,
  107766.              IBindCtx *pbc,
  107767.              IBindStatusCallback *,
  107768.                DWORD grfHLNF,
  107769.                DWORD dwReserved
  107770. );
  107771.  
  107772. extern HRESULT __stdcall HlinkSimpleNavigateToMoniker(
  107773.              IMoniker *pmkTarget,
  107774.              LPCWSTR szLocation,
  107775.              LPCWSTR szTargetFrameName,
  107776.              IUnknown *pUnk,
  107777.              IBindCtx *pbc,
  107778.              IBindStatusCallback *,
  107779.                DWORD grfHLNF,
  107780.                DWORD dwReserved
  107781. );
  107782.  
  107783. extern HRESULT __stdcall URLOpenStreamA( LPUNKNOWN, LPCSTR,DWORD, LPBINDSTATUSCALLBACK);
  107784. extern HRESULT __stdcall URLOpenStreamW( LPUNKNOWN, LPCWSTR,DWORD, LPBINDSTATUSCALLBACK);
  107785. extern HRESULT __stdcall URLOpenPullStreamA( LPUNKNOWN, LPCSTR,DWORD, LPBINDSTATUSCALLBACK);
  107786. extern HRESULT __stdcall URLOpenPullStreamW( LPUNKNOWN, LPCWSTR,DWORD, LPBINDSTATUSCALLBACK);
  107787. extern HRESULT __stdcall URLDownloadToFileA( LPUNKNOWN, LPCSTR, LPCSTR,DWORD, LPBINDSTATUSCALLBACK);
  107788. extern HRESULT __stdcall URLDownloadToFileW( LPUNKNOWN, LPCWSTR, LPCWSTR,DWORD, LPBINDSTATUSCALLBACK);
  107789. extern HRESULT __stdcall URLDownloadToCacheFileA( LPUNKNOWN, LPCSTR, LPSTR, DWORD cchFileName, DWORD, LPBINDSTATUSCALLBACK);
  107790. extern HRESULT __stdcall URLDownloadToCacheFileW( LPUNKNOWN, LPCWSTR, LPWSTR, DWORD cchFileName, DWORD, LPBINDSTATUSCALLBACK);
  107791. extern HRESULT __stdcall URLOpenBlockingStreamA( LPUNKNOWN, LPCSTR, LPSTREAM*,DWORD, LPBINDSTATUSCALLBACK);
  107792. extern HRESULT __stdcall URLOpenBlockingStreamW( LPUNKNOWN, LPCWSTR, LPSTREAM*,DWORD, LPBINDSTATUSCALLBACK);
  107793. # 4844 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107794. extern HRESULT __stdcall HlinkGoBack( IUnknown *pUnk);
  107795. extern HRESULT __stdcall HlinkGoForward( IUnknown *pUnk);
  107796. extern HRESULT __stdcall HlinkNavigateString( IUnknown *pUnk, LPCWSTR szTarget);
  107797. extern HRESULT __stdcall HlinkNavigateMoniker( IUnknown *pUnk, IMoniker *pmkTarget);
  107798. # 4864 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107799. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0025_v0_0_c_ifspec;
  107800. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0025_v0_0_s_ifspec;
  107801.  
  107802.  
  107803.  
  107804.  
  107805.  
  107806.  
  107807.  
  107808. typedef IInternet *LPIINTERNET;
  107809.  
  107810.  
  107811. extern const IID IID_IInternet;
  107812. # 4889 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107813.     typedef struct IInternetVtbl
  107814.     {
  107815.  
  107816.  
  107817.         HRESULT ( __stdcall *QueryInterface )(
  107818.             IInternet * This,
  107819.                        const IID * riid,
  107820.  
  107821.                           void **ppvObject);
  107822.  
  107823.         ULONG ( __stdcall *AddRef )(
  107824.             IInternet * This);
  107825.  
  107826.         ULONG ( __stdcall *Release )(
  107827.             IInternet * This);
  107828.  
  107829.  
  107830.     } IInternetVtbl;
  107831.  
  107832.     struct IInternet
  107833.     {
  107834.                    struct IInternetVtbl *lpVtbl;
  107835.     };
  107836. # 4947 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107837. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0026_v0_0_c_ifspec;
  107838. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0026_v0_0_s_ifspec;
  107839.  
  107840.  
  107841.  
  107842.  
  107843.  
  107844.  
  107845.  
  107846. typedef IInternetBindInfo *LPIINTERNETBINDINFO;
  107847.  
  107848. typedef
  107849. enum tagBINDSTRING
  107850.     {
  107851.         BINDSTRING_HEADERS = 1,
  107852.         BINDSTRING_ACCEPT_MIMES = ( BINDSTRING_HEADERS + 1 ) ,
  107853.         BINDSTRING_EXTRA_URL = ( BINDSTRING_ACCEPT_MIMES + 1 ) ,
  107854.         BINDSTRING_LANGUAGE = ( BINDSTRING_EXTRA_URL + 1 ) ,
  107855.         BINDSTRING_USERNAME = ( BINDSTRING_LANGUAGE + 1 ) ,
  107856.         BINDSTRING_PASSWORD = ( BINDSTRING_USERNAME + 1 ) ,
  107857.         BINDSTRING_UA_PIXELS = ( BINDSTRING_PASSWORD + 1 ) ,
  107858.         BINDSTRING_UA_COLOR = ( BINDSTRING_UA_PIXELS + 1 ) ,
  107859.         BINDSTRING_OS = ( BINDSTRING_UA_COLOR + 1 ) ,
  107860.         BINDSTRING_USER_AGENT = ( BINDSTRING_OS + 1 ) ,
  107861.         BINDSTRING_ACCEPT_ENCODINGS = ( BINDSTRING_USER_AGENT + 1 ) ,
  107862.         BINDSTRING_POST_COOKIE = ( BINDSTRING_ACCEPT_ENCODINGS + 1 ) ,
  107863.         BINDSTRING_POST_DATA_MIME = ( BINDSTRING_POST_COOKIE + 1 ) ,
  107864.         BINDSTRING_URL = ( BINDSTRING_POST_DATA_MIME + 1 ) ,
  107865.         BINDSTRING_IID = ( BINDSTRING_URL + 1 ) ,
  107866.         BINDSTRING_FLAG_BIND_TO_OBJECT = ( BINDSTRING_IID + 1 ) ,
  107867.         BINDSTRING_PTR_BIND_CONTEXT = ( BINDSTRING_FLAG_BIND_TO_OBJECT + 1 ) ,
  107868.         BINDSTRING_XDR_ORIGIN = ( BINDSTRING_PTR_BIND_CONTEXT + 1 ) ,
  107869.         BINDSTRING_DOWNLOADPATH = ( BINDSTRING_XDR_ORIGIN + 1 ) ,
  107870.         BINDSTRING_ROOTDOC_URL = ( BINDSTRING_DOWNLOADPATH + 1 ) ,
  107871.         BINDSTRING_INITIAL_FILENAME = ( BINDSTRING_ROOTDOC_URL + 1 ) ,
  107872.         BINDSTRING_PROXY_USERNAME = ( BINDSTRING_INITIAL_FILENAME + 1 ) ,
  107873.         BINDSTRING_PROXY_PASSWORD = ( BINDSTRING_PROXY_USERNAME + 1 ) ,
  107874.         BINDSTRING_ENTERPRISE_ID = ( BINDSTRING_PROXY_PASSWORD + 1 ) ,
  107875.         BINDSTRING_DOC_URL = ( BINDSTRING_ENTERPRISE_ID + 1 )
  107876.     } BINDSTRING;
  107877.  
  107878.  
  107879. extern const IID IID_IInternetBindInfo;
  107880. # 5013 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107881.     typedef struct IInternetBindInfoVtbl
  107882.     {
  107883.  
  107884.  
  107885.         HRESULT ( __stdcall *QueryInterface )(
  107886.             IInternetBindInfo * This,
  107887.                        const IID * riid,
  107888.  
  107889.                           void **ppvObject);
  107890.  
  107891.         ULONG ( __stdcall *AddRef )(
  107892.             IInternetBindInfo * This);
  107893.  
  107894.         ULONG ( __stdcall *Release )(
  107895.             IInternetBindInfo * This);
  107896.  
  107897.         HRESULT ( __stdcall *GetBindInfo )(
  107898.             IInternetBindInfo * This,
  107899.                         DWORD *grfBINDF,
  107900.                                     BINDINFO *pbindinfo);
  107901.  
  107902.         HRESULT ( __stdcall *GetBindString )(
  107903.             IInternetBindInfo * This,
  107904.                        ULONG ulStringType,
  107905.  
  107906.                         LPOLESTR *ppwzStr,
  107907.                        ULONG cEl,
  107908.                             ULONG *pcElFetched);
  107909.  
  107910.  
  107911.     } IInternetBindInfoVtbl;
  107912.  
  107913.     struct IInternetBindInfo
  107914.     {
  107915.                    struct IInternetBindInfoVtbl *lpVtbl;
  107916.     };
  107917. # 5090 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107918. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0027_v0_0_c_ifspec;
  107919. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0027_v0_0_s_ifspec;
  107920.  
  107921.  
  107922.  
  107923.  
  107924.  
  107925.  
  107926.  
  107927. typedef IInternetBindInfoEx *LPIINTERNETBINDINFOEX;
  107928.  
  107929.  
  107930. extern const IID IID_IInternetBindInfoEx;
  107931. # 5121 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107932.     typedef struct IInternetBindInfoExVtbl
  107933.     {
  107934.  
  107935.  
  107936.         HRESULT ( __stdcall *QueryInterface )(
  107937.             IInternetBindInfoEx * This,
  107938.                        const IID * riid,
  107939.  
  107940.                           void **ppvObject);
  107941.  
  107942.         ULONG ( __stdcall *AddRef )(
  107943.             IInternetBindInfoEx * This);
  107944.  
  107945.         ULONG ( __stdcall *Release )(
  107946.             IInternetBindInfoEx * This);
  107947.  
  107948.         HRESULT ( __stdcall *GetBindInfo )(
  107949.             IInternetBindInfoEx * This,
  107950.                         DWORD *grfBINDF,
  107951.                                     BINDINFO *pbindinfo);
  107952.  
  107953.         HRESULT ( __stdcall *GetBindString )(
  107954.             IInternetBindInfoEx * This,
  107955.                        ULONG ulStringType,
  107956.  
  107957.                         LPOLESTR *ppwzStr,
  107958.                        ULONG cEl,
  107959.                             ULONG *pcElFetched);
  107960.  
  107961.         HRESULT ( __stdcall *GetBindInfoEx )(
  107962.             IInternetBindInfoEx * This,
  107963.                         DWORD *grfBINDF,
  107964.                                     BINDINFO *pbindinfo,
  107965.                         DWORD *grfBINDF2,
  107966.                         DWORD *pdwReserved);
  107967.  
  107968.  
  107969.     } IInternetBindInfoExVtbl;
  107970.  
  107971.     struct IInternetBindInfoEx
  107972.     {
  107973.                    struct IInternetBindInfoExVtbl *lpVtbl;
  107974.     };
  107975. # 5209 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  107976. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0028_v0_0_c_ifspec;
  107977. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0028_v0_0_s_ifspec;
  107978.  
  107979.  
  107980.  
  107981.  
  107982.  
  107983.  
  107984.  
  107985. typedef IInternetProtocolRoot *LPIINTERNETPROTOCOLROOT;
  107986.  
  107987. typedef
  107988. enum _tagPI_FLAGS
  107989.     {
  107990.         PI_PARSE_URL = 0x1,
  107991.         PI_FILTER_MODE = 0x2,
  107992.         PI_FORCE_ASYNC = 0x4,
  107993.         PI_USE_WORKERTHREAD = 0x8,
  107994.         PI_MIMEVERIFICATION = 0x10,
  107995.         PI_CLSIDLOOKUP = 0x20,
  107996.         PI_DATAPROGRESS = 0x40,
  107997.         PI_SYNCHRONOUS = 0x80,
  107998.         PI_APARTMENTTHREADED = 0x100,
  107999.         PI_CLASSINSTALL = 0x200,
  108000.         PI_PASSONBINDCTX = 0x2000,
  108001.         PI_NOMIMEHANDLER = 0x8000,
  108002.         PI_LOADAPPDIRECT = 0x4000,
  108003.         PD_FORCE_SWITCH = 0x10000,
  108004.         PI_PREFERDEFAULTHANDLER = 0x20000
  108005.     } PI_FLAGS;
  108006.  
  108007. typedef struct _tagPROTOCOLDATA
  108008.     {
  108009.     DWORD grfFlags;
  108010.     DWORD dwState;
  108011.     LPVOID pData;
  108012.     ULONG cbData;
  108013.     } PROTOCOLDATA;
  108014.  
  108015. typedef struct _tagStartParam
  108016.     {
  108017.     IID iid;
  108018.     IBindCtx *pIBindCtx;
  108019.     IUnknown *pItf;
  108020.     } StartParam;
  108021.  
  108022.  
  108023. extern const IID IID_IInternetProtocolRoot;
  108024. # 5290 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108025.     typedef struct IInternetProtocolRootVtbl
  108026.     {
  108027.  
  108028.  
  108029.         HRESULT ( __stdcall *QueryInterface )(
  108030.             IInternetProtocolRoot * This,
  108031.                        const IID * riid,
  108032.  
  108033.                           void **ppvObject);
  108034.  
  108035.         ULONG ( __stdcall *AddRef )(
  108036.             IInternetProtocolRoot * This);
  108037.  
  108038.         ULONG ( __stdcall *Release )(
  108039.             IInternetProtocolRoot * This);
  108040.  
  108041.         HRESULT ( __stdcall *Start )(
  108042.             IInternetProtocolRoot * This,
  108043.                        LPCWSTR szUrl,
  108044.                        IInternetProtocolSink *pOIProtSink,
  108045.                        IInternetBindInfo *pOIBindInfo,
  108046.                        DWORD grfPI,
  108047.                        HANDLE_PTR dwReserved);
  108048.  
  108049.         HRESULT ( __stdcall *Continue )(
  108050.             IInternetProtocolRoot * This,
  108051.                        PROTOCOLDATA *pProtocolData);
  108052.  
  108053.         HRESULT ( __stdcall *Abort )(
  108054.             IInternetProtocolRoot * This,
  108055.                        HRESULT hrReason,
  108056.                        DWORD dwOptions);
  108057.  
  108058.         HRESULT ( __stdcall *Terminate )(
  108059.             IInternetProtocolRoot * This,
  108060.                        DWORD dwOptions);
  108061.  
  108062.         HRESULT ( __stdcall *Suspend )(
  108063.             IInternetProtocolRoot * This);
  108064.  
  108065.         HRESULT ( __stdcall *Resume )(
  108066.             IInternetProtocolRoot * This);
  108067.  
  108068.  
  108069.     } IInternetProtocolRootVtbl;
  108070.  
  108071.     struct IInternetProtocolRoot
  108072.     {
  108073.                    struct IInternetProtocolRootVtbl *lpVtbl;
  108074.     };
  108075. # 5393 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108076. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0029_v0_0_c_ifspec;
  108077. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0029_v0_0_s_ifspec;
  108078.  
  108079.  
  108080.  
  108081.  
  108082.  
  108083.  
  108084.  
  108085. typedef IInternetProtocol *LPIINTERNETPROTOCOL;
  108086.  
  108087.  
  108088. extern const IID IID_IInternetProtocol;
  108089. # 5433 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108090.     typedef struct IInternetProtocolVtbl
  108091.     {
  108092.  
  108093.  
  108094.         HRESULT ( __stdcall *QueryInterface )(
  108095.             IInternetProtocol * This,
  108096.                        const IID * riid,
  108097.  
  108098.                           void **ppvObject);
  108099.  
  108100.         ULONG ( __stdcall *AddRef )(
  108101.             IInternetProtocol * This);
  108102.  
  108103.         ULONG ( __stdcall *Release )(
  108104.             IInternetProtocol * This);
  108105.  
  108106.         HRESULT ( __stdcall *Start )(
  108107.             IInternetProtocol * This,
  108108.                        LPCWSTR szUrl,
  108109.                        IInternetProtocolSink *pOIProtSink,
  108110.                        IInternetBindInfo *pOIBindInfo,
  108111.                        DWORD grfPI,
  108112.                        HANDLE_PTR dwReserved);
  108113.  
  108114.         HRESULT ( __stdcall *Continue )(
  108115.             IInternetProtocol * This,
  108116.                        PROTOCOLDATA *pProtocolData);
  108117.  
  108118.         HRESULT ( __stdcall *Abort )(
  108119.             IInternetProtocol * This,
  108120.                        HRESULT hrReason,
  108121.                        DWORD dwOptions);
  108122.  
  108123.         HRESULT ( __stdcall *Terminate )(
  108124.             IInternetProtocol * This,
  108125.                        DWORD dwOptions);
  108126.  
  108127.         HRESULT ( __stdcall *Suspend )(
  108128.             IInternetProtocol * This);
  108129.  
  108130.         HRESULT ( __stdcall *Resume )(
  108131.             IInternetProtocol * This);
  108132.  
  108133.         HRESULT ( __stdcall *Read )(
  108134.             IInternetProtocol * This,
  108135.                                                 void *pv,
  108136.                        ULONG cb,
  108137.                         ULONG *pcbRead);
  108138.  
  108139.         HRESULT ( __stdcall *Seek )(
  108140.             IInternetProtocol * This,
  108141.                        LARGE_INTEGER dlibMove,
  108142.                        DWORD dwOrigin,
  108143.                         ULARGE_INTEGER *plibNewPosition);
  108144.  
  108145.         HRESULT ( __stdcall *LockRequest )(
  108146.             IInternetProtocol * This,
  108147.                        DWORD dwOptions);
  108148.  
  108149.         HRESULT ( __stdcall *UnlockRequest )(
  108150.             IInternetProtocol * This);
  108151.  
  108152.  
  108153.     } IInternetProtocolVtbl;
  108154.  
  108155.     struct IInternetProtocol
  108156.     {
  108157.                    struct IInternetProtocolVtbl *lpVtbl;
  108158.     };
  108159. # 5569 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108160. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0030_v0_0_c_ifspec;
  108161. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0030_v0_0_s_ifspec;
  108162. # 5579 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108163. extern const IID IID_IInternetProtocolEx;
  108164. # 5599 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108165.     typedef struct IInternetProtocolExVtbl
  108166.     {
  108167.  
  108168.  
  108169.         HRESULT ( __stdcall *QueryInterface )(
  108170.             IInternetProtocolEx * This,
  108171.                        const IID * riid,
  108172.  
  108173.                           void **ppvObject);
  108174.  
  108175.         ULONG ( __stdcall *AddRef )(
  108176.             IInternetProtocolEx * This);
  108177.  
  108178.         ULONG ( __stdcall *Release )(
  108179.             IInternetProtocolEx * This);
  108180.  
  108181.         HRESULT ( __stdcall *Start )(
  108182.             IInternetProtocolEx * This,
  108183.                        LPCWSTR szUrl,
  108184.                        IInternetProtocolSink *pOIProtSink,
  108185.                        IInternetBindInfo *pOIBindInfo,
  108186.                        DWORD grfPI,
  108187.                        HANDLE_PTR dwReserved);
  108188.  
  108189.         HRESULT ( __stdcall *Continue )(
  108190.             IInternetProtocolEx * This,
  108191.                        PROTOCOLDATA *pProtocolData);
  108192.  
  108193.         HRESULT ( __stdcall *Abort )(
  108194.             IInternetProtocolEx * This,
  108195.                        HRESULT hrReason,
  108196.                        DWORD dwOptions);
  108197.  
  108198.         HRESULT ( __stdcall *Terminate )(
  108199.             IInternetProtocolEx * This,
  108200.                        DWORD dwOptions);
  108201.  
  108202.         HRESULT ( __stdcall *Suspend )(
  108203.             IInternetProtocolEx * This);
  108204.  
  108205.         HRESULT ( __stdcall *Resume )(
  108206.             IInternetProtocolEx * This);
  108207.  
  108208.         HRESULT ( __stdcall *Read )(
  108209.             IInternetProtocolEx * This,
  108210.                                                 void *pv,
  108211.                        ULONG cb,
  108212.                         ULONG *pcbRead);
  108213.  
  108214.         HRESULT ( __stdcall *Seek )(
  108215.             IInternetProtocolEx * This,
  108216.                        LARGE_INTEGER dlibMove,
  108217.                        DWORD dwOrigin,
  108218.                         ULARGE_INTEGER *plibNewPosition);
  108219.  
  108220.         HRESULT ( __stdcall *LockRequest )(
  108221.             IInternetProtocolEx * This,
  108222.                        DWORD dwOptions);
  108223.  
  108224.         HRESULT ( __stdcall *UnlockRequest )(
  108225.             IInternetProtocolEx * This);
  108226.  
  108227.         HRESULT ( __stdcall *StartEx )(
  108228.             IInternetProtocolEx * This,
  108229.                        IUri *pUri,
  108230.                        IInternetProtocolSink *pOIProtSink,
  108231.                        IInternetBindInfo *pOIBindInfo,
  108232.                        DWORD grfPI,
  108233.                        HANDLE_PTR dwReserved);
  108234.  
  108235.  
  108236.     } IInternetProtocolExVtbl;
  108237.  
  108238.     struct IInternetProtocolEx
  108239.     {
  108240.                    struct IInternetProtocolExVtbl *lpVtbl;
  108241.     };
  108242. # 5747 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108243. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0031_v0_0_c_ifspec;
  108244. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0031_v0_0_s_ifspec;
  108245.  
  108246.  
  108247.  
  108248.  
  108249.  
  108250.  
  108251.  
  108252. typedef IInternetProtocolSink *LPIINTERNETPROTOCOLSINK;
  108253.  
  108254.  
  108255. extern const IID IID_IInternetProtocolSink;
  108256. # 5789 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108257.     typedef struct IInternetProtocolSinkVtbl
  108258.     {
  108259.  
  108260.  
  108261.         HRESULT ( __stdcall *QueryInterface )(
  108262.             IInternetProtocolSink * This,
  108263.                        const IID * riid,
  108264.  
  108265.                           void **ppvObject);
  108266.  
  108267.         ULONG ( __stdcall *AddRef )(
  108268.             IInternetProtocolSink * This);
  108269.  
  108270.         ULONG ( __stdcall *Release )(
  108271.             IInternetProtocolSink * This);
  108272.  
  108273.         HRESULT ( __stdcall *Switch )(
  108274.             IInternetProtocolSink * This,
  108275.                        PROTOCOLDATA *pProtocolData);
  108276.  
  108277.         HRESULT ( __stdcall *ReportProgress )(
  108278.             IInternetProtocolSink * This,
  108279.                        ULONG ulStatusCode,
  108280.                        LPCWSTR szStatusText);
  108281.  
  108282.         HRESULT ( __stdcall *ReportData )(
  108283.             IInternetProtocolSink * This,
  108284.                        DWORD grfBSCF,
  108285.                        ULONG ulProgress,
  108286.                        ULONG ulProgressMax);
  108287.  
  108288.         HRESULT ( __stdcall *ReportResult )(
  108289.             IInternetProtocolSink * This,
  108290.                        HRESULT hrResult,
  108291.                        DWORD dwError,
  108292.                        LPCWSTR szResult);
  108293.  
  108294.  
  108295.     } IInternetProtocolSinkVtbl;
  108296.  
  108297.     struct IInternetProtocolSink
  108298.     {
  108299.                    struct IInternetProtocolSinkVtbl *lpVtbl;
  108300.     };
  108301. # 5880 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108302. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0032_v0_0_c_ifspec;
  108303. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0032_v0_0_s_ifspec;
  108304.  
  108305.  
  108306.  
  108307.  
  108308.  
  108309.  
  108310.  
  108311. typedef IInternetProtocolSinkStackable *LPIINTERNETPROTOCOLSINKStackable;
  108312.  
  108313.  
  108314. extern const IID IID_IInternetProtocolSinkStackable;
  108315. # 5912 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108316.     typedef struct IInternetProtocolSinkStackableVtbl
  108317.     {
  108318.  
  108319.  
  108320.         HRESULT ( __stdcall *QueryInterface )(
  108321.             IInternetProtocolSinkStackable * This,
  108322.                        const IID * riid,
  108323.  
  108324.                           void **ppvObject);
  108325.  
  108326.         ULONG ( __stdcall *AddRef )(
  108327.             IInternetProtocolSinkStackable * This);
  108328.  
  108329.         ULONG ( __stdcall *Release )(
  108330.             IInternetProtocolSinkStackable * This);
  108331.  
  108332.         HRESULT ( __stdcall *SwitchSink )(
  108333.             IInternetProtocolSinkStackable * This,
  108334.                        IInternetProtocolSink *pOIProtSink);
  108335.  
  108336.         HRESULT ( __stdcall *CommitSwitch )(
  108337.             IInternetProtocolSinkStackable * This);
  108338.  
  108339.         HRESULT ( __stdcall *RollbackSwitch )(
  108340.             IInternetProtocolSinkStackable * This);
  108341.  
  108342.  
  108343.     } IInternetProtocolSinkStackableVtbl;
  108344.  
  108345.     struct IInternetProtocolSinkStackable
  108346.     {
  108347.                    struct IInternetProtocolSinkStackableVtbl *lpVtbl;
  108348.     };
  108349. # 5989 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108350. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0033_v0_0_c_ifspec;
  108351. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0033_v0_0_s_ifspec;
  108352.  
  108353.  
  108354.  
  108355.  
  108356.  
  108357.  
  108358.  
  108359. typedef IInternetSession *LPIINTERNETSESSION;
  108360.  
  108361. typedef
  108362. enum _tagOIBDG_FLAGS
  108363.     {
  108364.         OIBDG_APARTMENTTHREADED = 0x100,
  108365.         OIBDG_DATAONLY = 0x1000
  108366.     } OIBDG_FLAGS;
  108367.  
  108368.  
  108369. extern const IID IID_IInternetSession;
  108370. # 6062 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108371.     typedef struct IInternetSessionVtbl
  108372.     {
  108373.  
  108374.  
  108375.         HRESULT ( __stdcall *QueryInterface )(
  108376.             IInternetSession * This,
  108377.                        const IID * riid,
  108378.  
  108379.                           void **ppvObject);
  108380.  
  108381.         ULONG ( __stdcall *AddRef )(
  108382.             IInternetSession * This);
  108383.  
  108384.         ULONG ( __stdcall *Release )(
  108385.             IInternetSession * This);
  108386.  
  108387.         HRESULT ( __stdcall *RegisterNameSpace )(
  108388.             IInternetSession * This,
  108389.                        IClassFactory *pCF,
  108390.                        const IID * rclsid,
  108391.                        LPCWSTR pwzProtocol,
  108392.                        ULONG cPatterns,
  108393.                        const LPCWSTR *ppwzPatterns,
  108394.                        DWORD dwReserved);
  108395.  
  108396.         HRESULT ( __stdcall *UnregisterNameSpace )(
  108397.             IInternetSession * This,
  108398.                        IClassFactory *pCF,
  108399.                        LPCWSTR pszProtocol);
  108400.  
  108401.         HRESULT ( __stdcall *RegisterMimeFilter )(
  108402.             IInternetSession * This,
  108403.                        IClassFactory *pCF,
  108404.                        const IID * rclsid,
  108405.                        LPCWSTR pwzType);
  108406.  
  108407.         HRESULT ( __stdcall *UnregisterMimeFilter )(
  108408.             IInternetSession * This,
  108409.                        IClassFactory *pCF,
  108410.                        LPCWSTR pwzType);
  108411.  
  108412.         HRESULT ( __stdcall *CreateBinding )(
  108413.             IInternetSession * This,
  108414.                        LPBC pBC,
  108415.                        LPCWSTR szUrl,
  108416.                        IUnknown *pUnkOuter,
  108417.                                 IUnknown **ppUnk,
  108418.                                 IInternetProtocol **ppOInetProt,
  108419.                        DWORD dwOption);
  108420.  
  108421.         HRESULT ( __stdcall *SetSessionOption )(
  108422.             IInternetSession * This,
  108423.                        DWORD dwOption,
  108424.                        LPVOID pBuffer,
  108425.                        DWORD dwBufferLength,
  108426.                        DWORD dwReserved);
  108427.  
  108428.         HRESULT ( __stdcall *GetSessionOption )(
  108429.             IInternetSession * This,
  108430.                        DWORD dwOption,
  108431.                             LPVOID pBuffer,
  108432.                             DWORD *pdwBufferLength,
  108433.                        DWORD dwReserved);
  108434.  
  108435.  
  108436.     } IInternetSessionVtbl;
  108437.  
  108438.     struct IInternetSession
  108439.     {
  108440.                    struct IInternetSessionVtbl *lpVtbl;
  108441.     };
  108442. # 6189 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108443. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0034_v0_0_c_ifspec;
  108444. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0034_v0_0_s_ifspec;
  108445.  
  108446.  
  108447.  
  108448.  
  108449.  
  108450.  
  108451.  
  108452. typedef IInternetThreadSwitch *LPIINTERNETTHREADSWITCH;
  108453.  
  108454.  
  108455. extern const IID IID_IInternetThreadSwitch;
  108456. # 6218 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108457.     typedef struct IInternetThreadSwitchVtbl
  108458.     {
  108459.  
  108460.  
  108461.         HRESULT ( __stdcall *QueryInterface )(
  108462.             IInternetThreadSwitch * This,
  108463.                        const IID * riid,
  108464.  
  108465.                           void **ppvObject);
  108466.  
  108467.         ULONG ( __stdcall *AddRef )(
  108468.             IInternetThreadSwitch * This);
  108469.  
  108470.         ULONG ( __stdcall *Release )(
  108471.             IInternetThreadSwitch * This);
  108472.  
  108473.         HRESULT ( __stdcall *Prepare )(
  108474.             IInternetThreadSwitch * This);
  108475.  
  108476.         HRESULT ( __stdcall *Continue )(
  108477.             IInternetThreadSwitch * This);
  108478.  
  108479.  
  108480.     } IInternetThreadSwitchVtbl;
  108481.  
  108482.     struct IInternetThreadSwitch
  108483.     {
  108484.                    struct IInternetThreadSwitchVtbl *lpVtbl;
  108485.     };
  108486. # 6288 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108487. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0035_v0_0_c_ifspec;
  108488. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0035_v0_0_s_ifspec;
  108489.  
  108490.  
  108491.  
  108492.  
  108493.  
  108494.  
  108495.  
  108496. typedef IInternetPriority *LPIINTERNETPRIORITY;
  108497.  
  108498.  
  108499. extern const IID IID_IInternetPriority;
  108500. # 6319 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108501.     typedef struct IInternetPriorityVtbl
  108502.     {
  108503.  
  108504.  
  108505.         HRESULT ( __stdcall *QueryInterface )(
  108506.             IInternetPriority * This,
  108507.                        const IID * riid,
  108508.  
  108509.                           void **ppvObject);
  108510.  
  108511.         ULONG ( __stdcall *AddRef )(
  108512.             IInternetPriority * This);
  108513.  
  108514.         ULONG ( __stdcall *Release )(
  108515.             IInternetPriority * This);
  108516.  
  108517.         HRESULT ( __stdcall *SetPriority )(
  108518.             IInternetPriority * This,
  108519.                        LONG nPriority);
  108520.  
  108521.         HRESULT ( __stdcall *GetPriority )(
  108522.             IInternetPriority * This,
  108523.                         LONG *pnPriority);
  108524.  
  108525.  
  108526.     } IInternetPriorityVtbl;
  108527.  
  108528.     struct IInternetPriority
  108529.     {
  108530.                    struct IInternetPriorityVtbl *lpVtbl;
  108531.     };
  108532. # 6391 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108533. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0036_v0_0_c_ifspec;
  108534. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0036_v0_0_s_ifspec;
  108535.  
  108536.  
  108537.  
  108538.  
  108539.  
  108540.  
  108541.  
  108542. typedef IInternetProtocolInfo *LPIINTERNETPROTOCOLINFO;
  108543.  
  108544. typedef
  108545. enum _tagPARSEACTION
  108546.     {
  108547.         PARSE_CANONICALIZE = 1,
  108548.         PARSE_FRIENDLY = ( PARSE_CANONICALIZE + 1 ) ,
  108549.         PARSE_SECURITY_URL = ( PARSE_FRIENDLY + 1 ) ,
  108550.         PARSE_ROOTDOCUMENT = ( PARSE_SECURITY_URL + 1 ) ,
  108551.         PARSE_DOCUMENT = ( PARSE_ROOTDOCUMENT + 1 ) ,
  108552.         PARSE_ANCHOR = ( PARSE_DOCUMENT + 1 ) ,
  108553.         PARSE_ENCODE_IS_UNESCAPE = ( PARSE_ANCHOR + 1 ) ,
  108554.         PARSE_DECODE_IS_ESCAPE = ( PARSE_ENCODE_IS_UNESCAPE + 1 ) ,
  108555.         PARSE_PATH_FROM_URL = ( PARSE_DECODE_IS_ESCAPE + 1 ) ,
  108556.         PARSE_URL_FROM_PATH = ( PARSE_PATH_FROM_URL + 1 ) ,
  108557.         PARSE_MIME = ( PARSE_URL_FROM_PATH + 1 ) ,
  108558.         PARSE_SERVER = ( PARSE_MIME + 1 ) ,
  108559.         PARSE_SCHEMA = ( PARSE_SERVER + 1 ) ,
  108560.         PARSE_SITE = ( PARSE_SCHEMA + 1 ) ,
  108561.         PARSE_DOMAIN = ( PARSE_SITE + 1 ) ,
  108562.         PARSE_LOCATION = ( PARSE_DOMAIN + 1 ) ,
  108563.         PARSE_SECURITY_DOMAIN = ( PARSE_LOCATION + 1 ) ,
  108564.         PARSE_ESCAPE = ( PARSE_SECURITY_DOMAIN + 1 ) ,
  108565.         PARSE_UNESCAPE = ( PARSE_ESCAPE + 1 )
  108566.     } PARSEACTION;
  108567.  
  108568. typedef
  108569. enum _tagPSUACTION
  108570.     {
  108571.         PSU_DEFAULT = 1,
  108572.         PSU_SECURITY_URL_ONLY = ( PSU_DEFAULT + 1 )
  108573.     } PSUACTION;
  108574.  
  108575. typedef
  108576. enum _tagQUERYOPTION
  108577.     {
  108578.         QUERY_EXPIRATION_DATE = 1,
  108579.         QUERY_TIME_OF_LAST_CHANGE = ( QUERY_EXPIRATION_DATE + 1 ) ,
  108580.         QUERY_CONTENT_ENCODING = ( QUERY_TIME_OF_LAST_CHANGE + 1 ) ,
  108581.         QUERY_CONTENT_TYPE = ( QUERY_CONTENT_ENCODING + 1 ) ,
  108582.         QUERY_REFRESH = ( QUERY_CONTENT_TYPE + 1 ) ,
  108583.         QUERY_RECOMBINE = ( QUERY_REFRESH + 1 ) ,
  108584.         QUERY_CAN_NAVIGATE = ( QUERY_RECOMBINE + 1 ) ,
  108585.         QUERY_USES_NETWORK = ( QUERY_CAN_NAVIGATE + 1 ) ,
  108586.         QUERY_IS_CACHED = ( QUERY_USES_NETWORK + 1 ) ,
  108587.         QUERY_IS_INSTALLEDENTRY = ( QUERY_IS_CACHED + 1 ) ,
  108588.         QUERY_IS_CACHED_OR_MAPPED = ( QUERY_IS_INSTALLEDENTRY + 1 ) ,
  108589.         QUERY_USES_CACHE = ( QUERY_IS_CACHED_OR_MAPPED + 1 ) ,
  108590.         QUERY_IS_SECURE = ( QUERY_USES_CACHE + 1 ) ,
  108591.         QUERY_IS_SAFE = ( QUERY_IS_SECURE + 1 ) ,
  108592.         QUERY_USES_HISTORYFOLDER = ( QUERY_IS_SAFE + 1 ) ,
  108593.         QUERY_IS_CACHED_AND_USABLE_OFFLINE = ( QUERY_USES_HISTORYFOLDER + 1 )
  108594.     } QUERYOPTION;
  108595.  
  108596.  
  108597. extern const IID IID_IInternetProtocolInfo;
  108598. # 6502 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108599.     typedef struct IInternetProtocolInfoVtbl
  108600.     {
  108601.  
  108602.  
  108603.         HRESULT ( __stdcall *QueryInterface )(
  108604.             IInternetProtocolInfo * This,
  108605.                        const IID * riid,
  108606.  
  108607.                           void **ppvObject);
  108608.  
  108609.         ULONG ( __stdcall *AddRef )(
  108610.             IInternetProtocolInfo * This);
  108611.  
  108612.         ULONG ( __stdcall *Release )(
  108613.             IInternetProtocolInfo * This);
  108614.  
  108615.         HRESULT ( __stdcall *ParseUrl )(
  108616.             IInternetProtocolInfo * This,
  108617.                        LPCWSTR pwzUrl,
  108618.                        PARSEACTION ParseAction,
  108619.                        DWORD dwParseFlags,
  108620.  
  108621.                         LPWSTR pwzResult,
  108622.                        DWORD cchResult,
  108623.                         DWORD *pcchResult,
  108624.                        DWORD dwReserved);
  108625.  
  108626.         HRESULT ( __stdcall *CombineUrl )(
  108627.             IInternetProtocolInfo * This,
  108628.                        LPCWSTR pwzBaseUrl,
  108629.                        LPCWSTR pwzRelativeUrl,
  108630.                        DWORD dwCombineFlags,
  108631.  
  108632.                        LPWSTR pwzResult,
  108633.                        DWORD cchResult,
  108634.                         DWORD *pcchResult,
  108635.                        DWORD dwReserved);
  108636.  
  108637.         HRESULT ( __stdcall *CompareUrl )(
  108638.             IInternetProtocolInfo * This,
  108639.                        LPCWSTR pwzUrl1,
  108640.                        LPCWSTR pwzUrl2,
  108641.                        DWORD dwCompareFlags);
  108642.  
  108643.         HRESULT ( __stdcall *QueryInfo )(
  108644.             IInternetProtocolInfo * This,
  108645.                        LPCWSTR pwzUrl,
  108646.                        QUERYOPTION OueryOption,
  108647.                        DWORD dwQueryFlags,
  108648.                                      LPVOID pBuffer,
  108649.                        DWORD cbBuffer,
  108650.                             DWORD *pcbBuf,
  108651.                        DWORD dwReserved);
  108652.  
  108653.  
  108654.     } IInternetProtocolInfoVtbl;
  108655.  
  108656.     struct IInternetProtocolInfo
  108657.     {
  108658.                    struct IInternetProtocolInfoVtbl *lpVtbl;
  108659.     };
  108660. # 6654 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108661. extern HRESULT __stdcall CoInternetParseUrl(
  108662.                                              LPCWSTR pwzUrl,
  108663.                                              PARSEACTION ParseAction,
  108664.                                              DWORD dwFlags,
  108665.                                              LPWSTR pszResult,
  108666.                                              DWORD cchResult,
  108667.                                              DWORD *pcchResult,
  108668.                                              DWORD dwReserved
  108669.     );
  108670.  
  108671. extern HRESULT __stdcall CoInternetParseIUri(
  108672.                                              IUri *pIUri,
  108673.                                              PARSEACTION ParseAction,
  108674.                                              DWORD dwFlags,
  108675.                                              LPWSTR pwzResult,
  108676.                                              DWORD cchResult,
  108677.                                              DWORD *pcchResult,
  108678.                                              DWORD_PTR dwReserved
  108679.     );
  108680.  
  108681. extern HRESULT __stdcall CoInternetCombineUrl(
  108682.                                              LPCWSTR pwzBaseUrl,
  108683.                                              LPCWSTR pwzRelativeUrl,
  108684.                                              DWORD dwCombineFlags,
  108685.                                              LPWSTR pszResult,
  108686.                                              DWORD cchResult,
  108687.                                              DWORD *pcchResult,
  108688.                                              DWORD dwReserved
  108689.     );
  108690.  
  108691. extern HRESULT __stdcall CoInternetCombineUrlEx(
  108692.                  IUri *pBaseUri,
  108693.                  LPCWSTR pwzRelativeUrl,
  108694.                  DWORD dwCombineFlags,
  108695.                  IUri **ppCombinedUri,
  108696.                  DWORD_PTR dwReserved
  108697.     );
  108698. extern HRESULT __stdcall CoInternetCombineIUri (
  108699.                  IUri *pBaseUri,
  108700.                  IUri *pRelativeUri,
  108701.                  DWORD dwCombineFlags,
  108702.                  IUri **ppCombinedUri,
  108703.                  DWORD_PTR dwReserved
  108704.     );
  108705.  
  108706. extern HRESULT __stdcall CoInternetCompareUrl(
  108707.     LPCWSTR pwzUrl1,
  108708.     LPCWSTR pwzUrl2,
  108709.     DWORD dwFlags
  108710.     );
  108711. extern HRESULT __stdcall CoInternetGetProtocolFlags(
  108712.              LPCWSTR pwzUrl,
  108713.              DWORD *pdwFlags,
  108714.              DWORD dwReserved
  108715.     );
  108716. extern HRESULT __stdcall CoInternetQueryInfo(
  108717.                                                  LPCWSTR pwzUrl,
  108718.                                                  QUERYOPTION QueryOptions,
  108719.                                                  DWORD dwQueryFlags,
  108720.                                                  LPVOID pvBuffer,
  108721.                                                  DWORD cbBuffer,
  108722.                                                  DWORD *pcbBuffer,
  108723.                                                  DWORD dwReserved
  108724.     );
  108725. extern HRESULT __stdcall CoInternetGetSession(
  108726.                  DWORD dwSessionMode,
  108727.                  IInternetSession **ppIInternetSession,
  108728.                  DWORD dwReserved
  108729.     );
  108730. extern HRESULT __stdcall CoInternetGetSecurityUrl(
  108731.                  LPCWSTR pwszUrl,
  108732.                  LPWSTR *ppwszSecUrl,
  108733.                  PSUACTION psuAction,
  108734.                  DWORD dwReserved
  108735.     );
  108736. extern HRESULT __stdcall AsyncInstallDistributionUnit(
  108737.          LPCWSTR szDistUnit,
  108738.              LPCWSTR szTYPE,
  108739.              LPCWSTR szExt,
  108740.     DWORD dwFileVersionMS,
  108741.     DWORD dwFileVersionLS,
  108742.              LPCWSTR szURL,
  108743.          IBindCtx *pbc,
  108744.                LPVOID pvReserved,
  108745.     DWORD flags
  108746.     );
  108747.  
  108748. extern HRESULT __stdcall CoInternetGetSecurityUrlEx(
  108749.                  IUri *pUri,
  108750.                  IUri **ppSecUri,
  108751.                  PSUACTION psuAction,
  108752.                  DWORD_PTR dwReserved
  108753.     );
  108754.  
  108755.  
  108756.  
  108757.  
  108758. typedef
  108759. enum _tagINTERNETFEATURELIST
  108760.     {
  108761.         FEATURE_OBJECT_CACHING = 0,
  108762.         FEATURE_ZONE_ELEVATION = ( FEATURE_OBJECT_CACHING + 1 ) ,
  108763.         FEATURE_MIME_HANDLING = ( FEATURE_ZONE_ELEVATION + 1 ) ,
  108764.         FEATURE_MIME_SNIFFING = ( FEATURE_MIME_HANDLING + 1 ) ,
  108765.         FEATURE_WINDOW_RESTRICTIONS = ( FEATURE_MIME_SNIFFING + 1 ) ,
  108766.         FEATURE_WEBOC_POPUPMANAGEMENT = ( FEATURE_WINDOW_RESTRICTIONS + 1 ) ,
  108767.         FEATURE_BEHAVIORS = ( FEATURE_WEBOC_POPUPMANAGEMENT + 1 ) ,
  108768.         FEATURE_DISABLE_MK_PROTOCOL = ( FEATURE_BEHAVIORS + 1 ) ,
  108769.         FEATURE_LOCALMACHINE_LOCKDOWN = ( FEATURE_DISABLE_MK_PROTOCOL + 1 ) ,
  108770.         FEATURE_SECURITYBAND = ( FEATURE_LOCALMACHINE_LOCKDOWN + 1 ) ,
  108771.         FEATURE_RESTRICT_ACTIVEXINSTALL = ( FEATURE_SECURITYBAND + 1 ) ,
  108772.         FEATURE_VALIDATE_NAVIGATE_URL = ( FEATURE_RESTRICT_ACTIVEXINSTALL + 1 ) ,
  108773.         FEATURE_RESTRICT_FILEDOWNLOAD = ( FEATURE_VALIDATE_NAVIGATE_URL + 1 ) ,
  108774.         FEATURE_ADDON_MANAGEMENT = ( FEATURE_RESTRICT_FILEDOWNLOAD + 1 ) ,
  108775.         FEATURE_PROTOCOL_LOCKDOWN = ( FEATURE_ADDON_MANAGEMENT + 1 ) ,
  108776.         FEATURE_HTTP_USERNAME_PASSWORD_DISABLE = ( FEATURE_PROTOCOL_LOCKDOWN + 1 ) ,
  108777.         FEATURE_SAFE_BINDTOOBJECT = ( FEATURE_HTTP_USERNAME_PASSWORD_DISABLE + 1 ) ,
  108778.         FEATURE_UNC_SAVEDFILECHECK = ( FEATURE_SAFE_BINDTOOBJECT + 1 ) ,
  108779.         FEATURE_GET_URL_DOM_FILEPATH_UNENCODED = ( FEATURE_UNC_SAVEDFILECHECK + 1 ) ,
  108780.         FEATURE_TABBED_BROWSING = ( FEATURE_GET_URL_DOM_FILEPATH_UNENCODED + 1 ) ,
  108781.         FEATURE_SSLUX = ( FEATURE_TABBED_BROWSING + 1 ) ,
  108782.         FEATURE_DISABLE_NAVIGATION_SOUNDS = ( FEATURE_SSLUX + 1 ) ,
  108783.         FEATURE_DISABLE_LEGACY_COMPRESSION = ( FEATURE_DISABLE_NAVIGATION_SOUNDS + 1 ) ,
  108784.         FEATURE_FORCE_ADDR_AND_STATUS = ( FEATURE_DISABLE_LEGACY_COMPRESSION + 1 ) ,
  108785.         FEATURE_XMLHTTP = ( FEATURE_FORCE_ADDR_AND_STATUS + 1 ) ,
  108786.         FEATURE_DISABLE_TELNET_PROTOCOL = ( FEATURE_XMLHTTP + 1 ) ,
  108787.         FEATURE_FEEDS = ( FEATURE_DISABLE_TELNET_PROTOCOL + 1 ) ,
  108788.         FEATURE_BLOCK_INPUT_PROMPTS = ( FEATURE_FEEDS + 1 ) ,
  108789.         FEATURE_ENTRY_COUNT = ( FEATURE_BLOCK_INPUT_PROMPTS + 1 )
  108790.     } INTERNETFEATURELIST;
  108791. # 6811 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108792. extern HRESULT __stdcall CoInternetSetFeatureEnabled(
  108793.     INTERNETFEATURELIST FeatureEntry,
  108794.     DWORD dwFlags,
  108795.     BOOL fEnable
  108796.     );
  108797. extern HRESULT __stdcall CoInternetIsFeatureEnabled(
  108798.     INTERNETFEATURELIST FeatureEntry,
  108799.     DWORD dwFlags
  108800.     );
  108801. extern HRESULT __stdcall CoInternetIsFeatureEnabledForUrl(
  108802.     INTERNETFEATURELIST FeatureEntry,
  108803.     DWORD dwFlags,
  108804.              LPCWSTR szURL,
  108805.              IInternetSecurityManager *pSecMgr
  108806.     );
  108807. extern HRESULT __stdcall CoInternetIsFeatureEnabledForIUri(
  108808.     INTERNETFEATURELIST FeatureEntry,
  108809.     DWORD dwFlags,
  108810.              IUri * pIUri,
  108811.              IInternetSecurityManagerEx2 *pSecMgr
  108812.     );
  108813. extern HRESULT __stdcall CoInternetIsFeatureZoneElevationEnabled(
  108814.              LPCWSTR szFromURL,
  108815.          LPCWSTR szToURL,
  108816.              IInternetSecurityManager *pSecMgr,
  108817.     DWORD dwFlags
  108818.     );
  108819.  
  108820.  
  108821. extern HRESULT __stdcall CopyStgMedium( const STGMEDIUM * pcstgmedSrc,
  108822.                                 STGMEDIUM * pstgmedDest);
  108823. extern HRESULT __stdcall CopyBindInfo( const BINDINFO * pcbiSrc,
  108824.                                BINDINFO * pbiDest );
  108825. extern void __stdcall ReleaseBindInfo( BINDINFO * pbindinfo );
  108826. # 6867 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108827. extern PWSTR __stdcall IEGetUserPrivateNamespaceName(void);
  108828.  
  108829.  
  108830.  
  108831. extern HRESULT __stdcall CoInternetCreateSecurityManager( IServiceProvider *pSP, IInternetSecurityManager **ppSM, DWORD dwReserved);
  108832.  
  108833. extern HRESULT __stdcall CoInternetCreateZoneManager( IServiceProvider *pSP, IInternetZoneManager **ppZM, DWORD dwReserved);
  108834.  
  108835.  
  108836.  
  108837. extern const IID CLSID_InternetSecurityManager;
  108838. extern const IID CLSID_InternetZoneManager;
  108839.  
  108840. extern const IID CLSID_PersistentZoneIdentifier;
  108841. # 6899 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108842. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0037_v0_0_c_ifspec;
  108843. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0037_v0_0_s_ifspec;
  108844. # 6909 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108845. extern const IID IID_IInternetSecurityMgrSite;
  108846. # 6928 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108847.     typedef struct IInternetSecurityMgrSiteVtbl
  108848.     {
  108849.  
  108850.  
  108851.         HRESULT ( __stdcall *QueryInterface )(
  108852.             IInternetSecurityMgrSite * This,
  108853.                        const IID * riid,
  108854.  
  108855.                           void **ppvObject);
  108856.  
  108857.         ULONG ( __stdcall *AddRef )(
  108858.             IInternetSecurityMgrSite * This);
  108859.  
  108860.         ULONG ( __stdcall *Release )(
  108861.             IInternetSecurityMgrSite * This);
  108862.  
  108863.         HRESULT ( __stdcall *GetWindow )(
  108864.             IInternetSecurityMgrSite * This,
  108865.                         HWND *phwnd);
  108866.  
  108867.         HRESULT ( __stdcall *EnableModeless )(
  108868.             IInternetSecurityMgrSite * This,
  108869.                        BOOL fEnable);
  108870.  
  108871.  
  108872.     } IInternetSecurityMgrSiteVtbl;
  108873.  
  108874.     struct IInternetSecurityMgrSite
  108875.     {
  108876.                    struct IInternetSecurityMgrSiteVtbl *lpVtbl;
  108877.     };
  108878. # 7000 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108879. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0038_v0_0_c_ifspec;
  108880. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0038_v0_0_s_ifspec;
  108881. # 7023 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108882. typedef
  108883. enum __MIDL_IInternetSecurityManager_0001
  108884.     {
  108885.         PUAF_DEFAULT = 0,
  108886.         PUAF_NOUI = 0x1,
  108887.         PUAF_ISFILE = 0x2,
  108888.         PUAF_WARN_IF_DENIED = 0x4,
  108889.         PUAF_FORCEUI_FOREGROUND = 0x8,
  108890.         PUAF_CHECK_TIFS = 0x10,
  108891.         PUAF_DONTCHECKBOXINDIALOG = 0x20,
  108892.         PUAF_TRUSTED = 0x40,
  108893.         PUAF_ACCEPT_WILDCARD_SCHEME = 0x80,
  108894.         PUAF_ENFORCERESTRICTED = 0x100,
  108895.         PUAF_NOSAVEDFILECHECK = 0x200,
  108896.         PUAF_REQUIRESAVEDFILECHECK = 0x400,
  108897.         PUAF_DONT_USE_CACHE = 0x1000,
  108898.         PUAF_RESERVED1 = 0x2000,
  108899.         PUAF_RESERVED2 = 0x4000,
  108900.         PUAF_LMZ_UNLOCKED = 0x10000,
  108901.         PUAF_LMZ_LOCKED = 0x20000,
  108902.         PUAF_DEFAULTZONEPOL = 0x40000,
  108903.         PUAF_NPL_USE_LOCKED_IF_RESTRICTED = 0x80000,
  108904.         PUAF_NOUIIFLOCKED = 0x100000,
  108905.         PUAF_DRAGPROTOCOLCHECK = 0x200000
  108906.     } PUAF;
  108907.  
  108908. typedef
  108909. enum __MIDL_IInternetSecurityManager_0002
  108910.     {
  108911.         PUAFOUT_DEFAULT = 0,
  108912.         PUAFOUT_ISLOCKZONEPOLICY = 0x1
  108913.     } PUAFOUT;
  108914. # 7074 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108915. typedef
  108916. enum __MIDL_IInternetSecurityManager_0003
  108917.     {
  108918.         SZM_CREATE = 0,
  108919.         SZM_DELETE = 0x1
  108920.     } SZM_FLAGS;
  108921. # 7096 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108922. extern const IID IID_IInternetSecurityManager;
  108923. # 7159 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  108924.     typedef struct IInternetSecurityManagerVtbl
  108925.     {
  108926.  
  108927.  
  108928.         HRESULT ( __stdcall *QueryInterface )(
  108929.                       IInternetSecurityManager * This,
  108930.                                  const IID * riid,
  108931.  
  108932.                           void **ppvObject);
  108933.  
  108934.         ULONG ( __stdcall *AddRef )(
  108935.                       IInternetSecurityManager * This);
  108936.  
  108937.         ULONG ( __stdcall *Release )(
  108938.                       IInternetSecurityManager * This);
  108939.  
  108940.         HRESULT ( __stdcall *SetSecuritySite )(
  108941.                       IInternetSecurityManager * This,
  108942.                                              IInternetSecurityMgrSite *pSite);
  108943.  
  108944.         HRESULT ( __stdcall *GetSecuritySite )(
  108945.                       IInternetSecurityManager * This,
  108946.                                              IInternetSecurityMgrSite **ppSite);
  108947.  
  108948.         HRESULT ( __stdcall *MapUrlToZone )(
  108949.                       IInternetSecurityManager * This,
  108950.                                  LPCWSTR pwszUrl,
  108951.                                    DWORD *pdwZone,
  108952.                        DWORD dwFlags);
  108953.  
  108954.         HRESULT ( __stdcall *GetSecurityId )(
  108955.                       IInternetSecurityManager * This,
  108956.  
  108957.                   LPCWSTR pwszUrl,
  108958.  
  108959.                                                                          BYTE *pbSecurityId,
  108960.  
  108961.                                                                                                                       DWORD *pcbSecurityId,
  108962.  
  108963.                   DWORD_PTR dwReserved);
  108964.  
  108965.         HRESULT ( __stdcall *ProcessUrlAction )(
  108966.                       IInternetSecurityManager * This,
  108967.                                  LPCWSTR pwszUrl,
  108968.                        DWORD dwAction,
  108969.                                                                   BYTE *pPolicy,
  108970.                        DWORD cbPolicy,
  108971.                                              BYTE *pContext,
  108972.                        DWORD cbContext,
  108973.                        DWORD dwFlags,
  108974.                        DWORD dwReserved);
  108975.  
  108976.         HRESULT ( __stdcall *QueryCustomPolicy )(
  108977.                       IInternetSecurityManager * This,
  108978.                                  LPCWSTR pwszUrl,
  108979.                                  const GUID * guidKey,
  108980.                                                                                        BYTE **ppPolicy,
  108981.                                    DWORD *pcbPolicy,
  108982.                                  BYTE *pContext,
  108983.                        DWORD cbContext,
  108984.                        DWORD dwReserved);
  108985.  
  108986.         HRESULT ( __stdcall *SetZoneMapping )(
  108987.                       IInternetSecurityManager * This,
  108988.                        DWORD dwZone,
  108989.                                  LPCWSTR lpszPattern,
  108990.                        DWORD dwFlags);
  108991.  
  108992.         HRESULT ( __stdcall *GetZoneMappings )(
  108993.                       IInternetSecurityManager * This,
  108994.                        DWORD dwZone,
  108995.                                              IEnumString **ppenumString,
  108996.                        DWORD dwFlags);
  108997.  
  108998.  
  108999.     } IInternetSecurityManagerVtbl;
  109000.  
  109001.     struct IInternetSecurityManager
  109002.     {
  109003.                    struct IInternetSecurityManagerVtbl *lpVtbl;
  109004.     };
  109005. # 7300 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109006. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0039_v0_0_c_ifspec;
  109007. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0039_v0_0_s_ifspec;
  109008. # 7316 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109009. extern const IID IID_IInternetSecurityManagerEx;
  109010. # 7340 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109011.     typedef struct IInternetSecurityManagerExVtbl
  109012.     {
  109013.  
  109014.  
  109015.         HRESULT ( __stdcall *QueryInterface )(
  109016.                       IInternetSecurityManagerEx * This,
  109017.                                  const IID * riid,
  109018.  
  109019.                           void **ppvObject);
  109020.  
  109021.         ULONG ( __stdcall *AddRef )(
  109022.                       IInternetSecurityManagerEx * This);
  109023.  
  109024.         ULONG ( __stdcall *Release )(
  109025.                       IInternetSecurityManagerEx * This);
  109026.  
  109027.         HRESULT ( __stdcall *SetSecuritySite )(
  109028.                       IInternetSecurityManagerEx * This,
  109029.                                              IInternetSecurityMgrSite *pSite);
  109030.  
  109031.         HRESULT ( __stdcall *GetSecuritySite )(
  109032.                       IInternetSecurityManagerEx * This,
  109033.                                              IInternetSecurityMgrSite **ppSite);
  109034.  
  109035.         HRESULT ( __stdcall *MapUrlToZone )(
  109036.                       IInternetSecurityManagerEx * This,
  109037.                                  LPCWSTR pwszUrl,
  109038.                                    DWORD *pdwZone,
  109039.                        DWORD dwFlags);
  109040.  
  109041.         HRESULT ( __stdcall *GetSecurityId )(
  109042.                       IInternetSecurityManagerEx * This,
  109043.  
  109044.                   LPCWSTR pwszUrl,
  109045.  
  109046.                                                                          BYTE *pbSecurityId,
  109047.  
  109048.                                                                                                                       DWORD *pcbSecurityId,
  109049.  
  109050.                   DWORD_PTR dwReserved);
  109051.  
  109052.         HRESULT ( __stdcall *ProcessUrlAction )(
  109053.                       IInternetSecurityManagerEx * This,
  109054.                                  LPCWSTR pwszUrl,
  109055.                        DWORD dwAction,
  109056.                                                                   BYTE *pPolicy,
  109057.                        DWORD cbPolicy,
  109058.                                              BYTE *pContext,
  109059.                        DWORD cbContext,
  109060.                        DWORD dwFlags,
  109061.                        DWORD dwReserved);
  109062.  
  109063.         HRESULT ( __stdcall *QueryCustomPolicy )(
  109064.                       IInternetSecurityManagerEx * This,
  109065.                                  LPCWSTR pwszUrl,
  109066.                                  const GUID * guidKey,
  109067.                                                                                        BYTE **ppPolicy,
  109068.                                    DWORD *pcbPolicy,
  109069.                                  BYTE *pContext,
  109070.                        DWORD cbContext,
  109071.                        DWORD dwReserved);
  109072.  
  109073.         HRESULT ( __stdcall *SetZoneMapping )(
  109074.                       IInternetSecurityManagerEx * This,
  109075.                        DWORD dwZone,
  109076.                                  LPCWSTR lpszPattern,
  109077.                        DWORD dwFlags);
  109078.  
  109079.         HRESULT ( __stdcall *GetZoneMappings )(
  109080.                       IInternetSecurityManagerEx * This,
  109081.                        DWORD dwZone,
  109082.                                              IEnumString **ppenumString,
  109083.                        DWORD dwFlags);
  109084.  
  109085.         HRESULT ( __stdcall *ProcessUrlActionEx )(
  109086.                       IInternetSecurityManagerEx * This,
  109087.                                  LPCWSTR pwszUrl,
  109088.                        DWORD dwAction,
  109089.                                                                   BYTE *pPolicy,
  109090.                        DWORD cbPolicy,
  109091.                                  BYTE *pContext,
  109092.                        DWORD cbContext,
  109093.                        DWORD dwFlags,
  109094.                        DWORD dwReserved,
  109095.                                    DWORD *pdwOutFlags);
  109096.  
  109097.  
  109098.     } IInternetSecurityManagerExVtbl;
  109099.  
  109100.     struct IInternetSecurityManagerEx
  109101.     {
  109102.                    struct IInternetSecurityManagerExVtbl *lpVtbl;
  109103.     };
  109104. # 7498 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109105. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0040_v0_0_c_ifspec;
  109106. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0040_v0_0_s_ifspec;
  109107. # 7511 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109108. extern const IID IID_IInternetSecurityManagerEx2;
  109109. # 7566 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109110.     typedef struct IInternetSecurityManagerEx2Vtbl
  109111.     {
  109112.  
  109113.  
  109114.         HRESULT ( __stdcall *QueryInterface )(
  109115.                       IInternetSecurityManagerEx2 * This,
  109116.                                  const IID * riid,
  109117.  
  109118.                           void **ppvObject);
  109119.  
  109120.         ULONG ( __stdcall *AddRef )(
  109121.                       IInternetSecurityManagerEx2 * This);
  109122.  
  109123.         ULONG ( __stdcall *Release )(
  109124.                       IInternetSecurityManagerEx2 * This);
  109125.  
  109126.         HRESULT ( __stdcall *SetSecuritySite )(
  109127.                       IInternetSecurityManagerEx2 * This,
  109128.                                              IInternetSecurityMgrSite *pSite);
  109129.  
  109130.         HRESULT ( __stdcall *GetSecuritySite )(
  109131.                       IInternetSecurityManagerEx2 * This,
  109132.                                              IInternetSecurityMgrSite **ppSite);
  109133.  
  109134.         HRESULT ( __stdcall *MapUrlToZone )(
  109135.                       IInternetSecurityManagerEx2 * This,
  109136.                                  LPCWSTR pwszUrl,
  109137.                                    DWORD *pdwZone,
  109138.                        DWORD dwFlags);
  109139.  
  109140.         HRESULT ( __stdcall *GetSecurityId )(
  109141.                       IInternetSecurityManagerEx2 * This,
  109142.  
  109143.                   LPCWSTR pwszUrl,
  109144.  
  109145.                                                                          BYTE *pbSecurityId,
  109146.  
  109147.                                                                                                                       DWORD *pcbSecurityId,
  109148.  
  109149.                   DWORD_PTR dwReserved);
  109150.  
  109151.         HRESULT ( __stdcall *ProcessUrlAction )(
  109152.                       IInternetSecurityManagerEx2 * This,
  109153.                                  LPCWSTR pwszUrl,
  109154.                        DWORD dwAction,
  109155.                                                                   BYTE *pPolicy,
  109156.                        DWORD cbPolicy,
  109157.                                              BYTE *pContext,
  109158.                        DWORD cbContext,
  109159.                        DWORD dwFlags,
  109160.                        DWORD dwReserved);
  109161.  
  109162.         HRESULT ( __stdcall *QueryCustomPolicy )(
  109163.                       IInternetSecurityManagerEx2 * This,
  109164.                                  LPCWSTR pwszUrl,
  109165.                                  const GUID * guidKey,
  109166.                                                                                        BYTE **ppPolicy,
  109167.                                    DWORD *pcbPolicy,
  109168.                                  BYTE *pContext,
  109169.                        DWORD cbContext,
  109170.                        DWORD dwReserved);
  109171.  
  109172.         HRESULT ( __stdcall *SetZoneMapping )(
  109173.                       IInternetSecurityManagerEx2 * This,
  109174.                        DWORD dwZone,
  109175.                                  LPCWSTR lpszPattern,
  109176.                        DWORD dwFlags);
  109177.  
  109178.         HRESULT ( __stdcall *GetZoneMappings )(
  109179.                       IInternetSecurityManagerEx2 * This,
  109180.                        DWORD dwZone,
  109181.                                              IEnumString **ppenumString,
  109182.                        DWORD dwFlags);
  109183.  
  109184.         HRESULT ( __stdcall *ProcessUrlActionEx )(
  109185.                       IInternetSecurityManagerEx2 * This,
  109186.                                  LPCWSTR pwszUrl,
  109187.                        DWORD dwAction,
  109188.                                                                   BYTE *pPolicy,
  109189.                        DWORD cbPolicy,
  109190.                                  BYTE *pContext,
  109191.                        DWORD cbContext,
  109192.                        DWORD dwFlags,
  109193.                        DWORD dwReserved,
  109194.                                    DWORD *pdwOutFlags);
  109195.  
  109196.         HRESULT ( __stdcall *MapUrlToZoneEx2 )(
  109197.                       IInternetSecurityManagerEx2 * This,
  109198.  
  109199.                   IUri *pUri,
  109200.                                    DWORD *pdwZone,
  109201.                        DWORD dwFlags,
  109202.  
  109203.                           LPWSTR *ppwszMappedUrl,
  109204.  
  109205.                        DWORD *pdwOutFlags);
  109206.  
  109207.         HRESULT ( __stdcall *ProcessUrlActionEx2 )(
  109208.                       IInternetSecurityManagerEx2 * This,
  109209.  
  109210.                   IUri *pUri,
  109211.                        DWORD dwAction,
  109212.                                                                   BYTE *pPolicy,
  109213.                        DWORD cbPolicy,
  109214.                                              BYTE *pContext,
  109215.                        DWORD cbContext,
  109216.                        DWORD dwFlags,
  109217.                        DWORD_PTR dwReserved,
  109218.                                    DWORD *pdwOutFlags);
  109219.  
  109220.         HRESULT ( __stdcall *GetSecurityIdEx2 )(
  109221.                       IInternetSecurityManagerEx2 * This,
  109222.  
  109223.                   IUri *pUri,
  109224.  
  109225.                                                                          BYTE *pbSecurityId,
  109226.  
  109227.                                                                                                                       DWORD *pcbSecurityId,
  109228.  
  109229.                   DWORD_PTR dwReserved);
  109230.  
  109231.         HRESULT ( __stdcall *QueryCustomPolicyEx2 )(
  109232.                       IInternetSecurityManagerEx2 * This,
  109233.  
  109234.                   IUri *pUri,
  109235.                                  const GUID * guidKey,
  109236.                                                                                        BYTE **ppPolicy,
  109237.                                    DWORD *pcbPolicy,
  109238.                                  BYTE *pContext,
  109239.                        DWORD cbContext,
  109240.                        DWORD_PTR dwReserved);
  109241.  
  109242.  
  109243.     } IInternetSecurityManagerEx2Vtbl;
  109244.  
  109245.     struct IInternetSecurityManagerEx2
  109246.     {
  109247.                    struct IInternetSecurityManagerEx2Vtbl *lpVtbl;
  109248.     };
  109249. # 7781 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109250. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0041_v0_0_c_ifspec;
  109251. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0041_v0_0_s_ifspec;
  109252. # 7791 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109253. extern const IID IID_IZoneIdentifier;
  109254. # 7812 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109255.     typedef struct IZoneIdentifierVtbl
  109256.     {
  109257.  
  109258.  
  109259.         HRESULT ( __stdcall *QueryInterface )(
  109260.                       IZoneIdentifier * This,
  109261.                                  const IID * riid,
  109262.  
  109263.                           void **ppvObject);
  109264.  
  109265.         ULONG ( __stdcall *AddRef )(
  109266.                       IZoneIdentifier * This);
  109267.  
  109268.         ULONG ( __stdcall *Release )(
  109269.                       IZoneIdentifier * This);
  109270.  
  109271.         HRESULT ( __stdcall *GetId )(
  109272.                       IZoneIdentifier * This,
  109273.                                    DWORD *pdwZone);
  109274.  
  109275.         HRESULT ( __stdcall *SetId )(
  109276.                       IZoneIdentifier * This,
  109277.                        DWORD dwZone);
  109278.  
  109279.         HRESULT ( __stdcall *Remove )(
  109280.                       IZoneIdentifier * This);
  109281.  
  109282.  
  109283.     } IZoneIdentifierVtbl;
  109284.  
  109285.     struct IZoneIdentifier
  109286.     {
  109287.                    struct IZoneIdentifierVtbl *lpVtbl;
  109288.     };
  109289. # 7889 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109290. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0042_v0_0_c_ifspec;
  109291. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0042_v0_0_s_ifspec;
  109292. # 7899 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109293. extern const IID IID_IZoneIdentifier2;
  109294. # 7928 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109295.     typedef struct IZoneIdentifier2Vtbl
  109296.     {
  109297.  
  109298.  
  109299.         HRESULT ( __stdcall *QueryInterface )(
  109300.                       IZoneIdentifier2 * This,
  109301.                                  const IID * riid,
  109302.  
  109303.                           void **ppvObject);
  109304.  
  109305.         ULONG ( __stdcall *AddRef )(
  109306.                       IZoneIdentifier2 * This);
  109307.  
  109308.         ULONG ( __stdcall *Release )(
  109309.                       IZoneIdentifier2 * This);
  109310.  
  109311.         HRESULT ( __stdcall *GetId )(
  109312.                       IZoneIdentifier2 * This,
  109313.                                    DWORD *pdwZone);
  109314.  
  109315.         HRESULT ( __stdcall *SetId )(
  109316.                       IZoneIdentifier2 * This,
  109317.                        DWORD dwZone);
  109318.  
  109319.         HRESULT ( __stdcall *Remove )(
  109320.                       IZoneIdentifier2 * This);
  109321.  
  109322.         HRESULT ( __stdcall *GetLastWriterPackageFamilyName )(
  109323.                       IZoneIdentifier2 * This,
  109324.                                              LPWSTR *packageFamilyName);
  109325.  
  109326.         HRESULT ( __stdcall *SetLastWriterPackageFamilyName )(
  109327.                       IZoneIdentifier2 * This,
  109328.                                  LPCWSTR packageFamilyName);
  109329.  
  109330.         HRESULT ( __stdcall *RemoveLastWriterPackageFamilyName )(
  109331.                       IZoneIdentifier2 * This);
  109332.  
  109333.         HRESULT ( __stdcall *GetAppZoneId )(
  109334.                       IZoneIdentifier2 * This,
  109335.                                    DWORD *zone);
  109336.  
  109337.         HRESULT ( __stdcall *SetAppZoneId )(
  109338.                       IZoneIdentifier2 * This,
  109339.                        DWORD zone);
  109340.  
  109341.         HRESULT ( __stdcall *RemoveAppZoneId )(
  109342.                       IZoneIdentifier2 * This);
  109343.  
  109344.  
  109345.     } IZoneIdentifier2Vtbl;
  109346.  
  109347.     struct IZoneIdentifier2
  109348.     {
  109349.                    struct IZoneIdentifier2Vtbl *lpVtbl;
  109350.     };
  109351. # 8050 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109352. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0043_v0_0_c_ifspec;
  109353. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0043_v0_0_s_ifspec;
  109354. # 8061 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109355. extern const IID IID_IInternetHostSecurityManager;
  109356. # 8103 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109357.     typedef struct IInternetHostSecurityManagerVtbl
  109358.     {
  109359.  
  109360.  
  109361.         HRESULT ( __stdcall *QueryInterface )(
  109362.             IInternetHostSecurityManager * This,
  109363.                        const IID * riid,
  109364.  
  109365.                           void **ppvObject);
  109366.  
  109367.         ULONG ( __stdcall *AddRef )(
  109368.             IInternetHostSecurityManager * This);
  109369.  
  109370.         ULONG ( __stdcall *Release )(
  109371.             IInternetHostSecurityManager * This);
  109372.  
  109373.         HRESULT ( __stdcall *GetSecurityId )(
  109374.             IInternetHostSecurityManager * This,
  109375.  
  109376.                                           BYTE *pbSecurityId,
  109377.  
  109378.                                                                                                                  DWORD *pcbSecurityId,
  109379.                        DWORD_PTR dwReserved);
  109380.  
  109381.         HRESULT ( __stdcall *ProcessUrlAction )(
  109382.             IInternetHostSecurityManager * This,
  109383.                        DWORD dwAction,
  109384.  
  109385.                                         BYTE *pPolicy,
  109386.                        DWORD cbPolicy,
  109387.  
  109388.                                        BYTE *pContext,
  109389.                        DWORD cbContext,
  109390.                        DWORD dwFlags,
  109391.                        DWORD dwReserved);
  109392.  
  109393.         HRESULT ( __stdcall *QueryCustomPolicy )(
  109394.             IInternetHostSecurityManager * This,
  109395.                        const GUID * guidKey,
  109396.  
  109397.                                                               BYTE **ppPolicy,
  109398.  
  109399.                    DWORD *pcbPolicy,
  109400.  
  109401.                                    BYTE *pContext,
  109402.                        DWORD cbContext,
  109403.                        DWORD dwReserved);
  109404.  
  109405.  
  109406.     } IInternetHostSecurityManagerVtbl;
  109407.  
  109408.     struct IInternetHostSecurityManager
  109409.     {
  109410.                    struct IInternetHostSecurityManagerVtbl *lpVtbl;
  109411.     };
  109412. # 8461 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109413. extern const GUID GUID_CUSTOM_LOCALMACHINEZONEUNLOCKED;
  109414.  
  109415.  
  109416.  
  109417.  
  109418.  
  109419. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0044_v0_0_c_ifspec;
  109420. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0044_v0_0_s_ifspec;
  109421.  
  109422.  
  109423.  
  109424.  
  109425.  
  109426.  
  109427.  
  109428. typedef IInternetZoneManager *LPURLZONEMANAGER;
  109429.  
  109430. typedef
  109431. enum tagURLZONE
  109432.     {
  109433.         URLZONE_INVALID = -1,
  109434.         URLZONE_PREDEFINED_MIN = 0,
  109435.         URLZONE_LOCAL_MACHINE = 0,
  109436.         URLZONE_INTRANET = ( URLZONE_LOCAL_MACHINE + 1 ) ,
  109437.         URLZONE_TRUSTED = ( URLZONE_INTRANET + 1 ) ,
  109438.         URLZONE_INTERNET = ( URLZONE_TRUSTED + 1 ) ,
  109439.         URLZONE_UNTRUSTED = ( URLZONE_INTERNET + 1 ) ,
  109440.         URLZONE_PREDEFINED_MAX = 999,
  109441.         URLZONE_USER_MIN = 1000,
  109442.         URLZONE_USER_MAX = 10000
  109443.     } URLZONE;
  109444.  
  109445.  
  109446.  
  109447. typedef
  109448. enum tagURLTEMPLATE
  109449.     {
  109450.         URLTEMPLATE_CUSTOM = 0,
  109451.         URLTEMPLATE_PREDEFINED_MIN = 0x10000,
  109452.         URLTEMPLATE_LOW = 0x10000,
  109453.         URLTEMPLATE_MEDLOW = 0x10500,
  109454.         URLTEMPLATE_MEDIUM = 0x11000,
  109455.         URLTEMPLATE_MEDHIGH = 0x11500,
  109456.         URLTEMPLATE_HIGH = 0x12000,
  109457.         URLTEMPLATE_PREDEFINED_MAX = 0x20000
  109458.     } URLTEMPLATE;
  109459.  
  109460.  
  109461. enum __MIDL_IInternetZoneManager_0001
  109462.     {
  109463.         MAX_ZONE_PATH = 260,
  109464.         MAX_ZONE_DESCRIPTION = 200
  109465.     } ;
  109466. typedef
  109467. enum __MIDL_IInternetZoneManager_0002
  109468.     {
  109469.         ZAFLAGS_CUSTOM_EDIT = 0x1,
  109470.         ZAFLAGS_ADD_SITES = 0x2,
  109471.         ZAFLAGS_REQUIRE_VERIFICATION = 0x4,
  109472.         ZAFLAGS_INCLUDE_PROXY_OVERRIDE = 0x8,
  109473.         ZAFLAGS_INCLUDE_INTRANET_SITES = 0x10,
  109474.         ZAFLAGS_NO_UI = 0x20,
  109475.         ZAFLAGS_SUPPORTS_VERIFICATION = 0x40,
  109476.         ZAFLAGS_UNC_AS_INTRANET = 0x80,
  109477.         ZAFLAGS_DETECT_INTRANET = 0x100,
  109478.         ZAFLAGS_USE_LOCKED_ZONES = 0x10000,
  109479.         ZAFLAGS_VERIFY_TEMPLATE_SETTINGS = 0x20000,
  109480.         ZAFLAGS_NO_CACHE = 0x40000
  109481.     } ZAFLAGS;
  109482.  
  109483. typedef struct _ZONEATTRIBUTES
  109484.     {
  109485.     ULONG cbSize;
  109486.     WCHAR szDisplayName[ 260 ];
  109487.     WCHAR szDescription[ 200 ];
  109488.     WCHAR szIconPath[ 260 ];
  109489.     DWORD dwTemplateMinLevel;
  109490.     DWORD dwTemplateRecommended;
  109491.     DWORD dwTemplateCurrentLevel;
  109492.     DWORD dwFlags;
  109493.     } ZONEATTRIBUTES;
  109494.  
  109495. typedef struct _ZONEATTRIBUTES *LPZONEATTRIBUTES;
  109496. # 8561 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109497. typedef
  109498. enum _URLZONEREG
  109499.     {
  109500.         URLZONEREG_DEFAULT = 0,
  109501.         URLZONEREG_HKLM = ( URLZONEREG_DEFAULT + 1 ) ,
  109502.         URLZONEREG_HKCU = ( URLZONEREG_HKLM + 1 )
  109503.     } URLZONEREG;
  109504. # 8600 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109505. extern const IID IID_IInternetZoneManager;
  109506. # 8687 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109507.     typedef struct IInternetZoneManagerVtbl
  109508.     {
  109509.  
  109510.  
  109511.         HRESULT ( __stdcall *QueryInterface )(
  109512.             IInternetZoneManager * This,
  109513.                        const IID * riid,
  109514.  
  109515.                           void **ppvObject);
  109516.  
  109517.         ULONG ( __stdcall *AddRef )(
  109518.             IInternetZoneManager * This);
  109519.  
  109520.         ULONG ( __stdcall *Release )(
  109521.             IInternetZoneManager * This);
  109522.  
  109523.         HRESULT ( __stdcall *GetZoneAttributes )(
  109524.             IInternetZoneManager * This,
  109525.                        DWORD dwZone,
  109526.  
  109527.                      ZONEATTRIBUTES *pZoneAttributes);
  109528.  
  109529.         HRESULT ( __stdcall *SetZoneAttributes )(
  109530.             IInternetZoneManager * This,
  109531.                        DWORD dwZone,
  109532.  
  109533.                   ZONEATTRIBUTES *pZoneAttributes);
  109534.  
  109535.         HRESULT ( __stdcall *GetZoneCustomPolicy )(
  109536.             IInternetZoneManager * This,
  109537.                        DWORD dwZone,
  109538.                        const GUID * guidKey,
  109539.  
  109540.                                                 BYTE **ppPolicy,
  109541.  
  109542.                    DWORD *pcbPolicy,
  109543.                        URLZONEREG urlZoneReg);
  109544.  
  109545.         HRESULT ( __stdcall *SetZoneCustomPolicy )(
  109546.             IInternetZoneManager * This,
  109547.                        DWORD dwZone,
  109548.                        const GUID * guidKey,
  109549.  
  109550.                                   BYTE *pPolicy,
  109551.                        DWORD cbPolicy,
  109552.                        URLZONEREG urlZoneReg);
  109553.  
  109554.         HRESULT ( __stdcall *GetZoneActionPolicy )(
  109555.             IInternetZoneManager * This,
  109556.                        DWORD dwZone,
  109557.                        DWORD dwAction,
  109558.  
  109559.                                     BYTE *pPolicy,
  109560.                        DWORD cbPolicy,
  109561.                        URLZONEREG urlZoneReg);
  109562.  
  109563.         HRESULT ( __stdcall *SetZoneActionPolicy )(
  109564.             IInternetZoneManager * This,
  109565.                        DWORD dwZone,
  109566.                        DWORD dwAction,
  109567.  
  109568.                                   BYTE *pPolicy,
  109569.                        DWORD cbPolicy,
  109570.                        URLZONEREG urlZoneReg);
  109571.  
  109572.         HRESULT ( __stdcall *PromptAction )(
  109573.             IInternetZoneManager * This,
  109574.                        DWORD dwAction,
  109575.                        HWND hwndParent,
  109576.                        LPCWSTR pwszUrl,
  109577.                        LPCWSTR pwszText,
  109578.                        DWORD dwPromptFlags);
  109579.  
  109580.         HRESULT ( __stdcall *LogAction )(
  109581.             IInternetZoneManager * This,
  109582.                        DWORD dwAction,
  109583.                        LPCWSTR pwszUrl,
  109584.                        LPCWSTR pwszText,
  109585.                        DWORD dwLogFlags);
  109586.  
  109587.         HRESULT ( __stdcall *CreateZoneEnumerator )(
  109588.             IInternetZoneManager * This,
  109589.                         DWORD *pdwEnum,
  109590.                         DWORD *pdwCount,
  109591.                        DWORD dwFlags);
  109592.  
  109593.         HRESULT ( __stdcall *GetZoneAt )(
  109594.             IInternetZoneManager * This,
  109595.                        DWORD dwEnum,
  109596.                        DWORD dwIndex,
  109597.                         DWORD *pdwZone);
  109598.  
  109599.         HRESULT ( __stdcall *DestroyZoneEnumerator )(
  109600.             IInternetZoneManager * This,
  109601.                        DWORD dwEnum);
  109602.  
  109603.         HRESULT ( __stdcall *CopyTemplatePoliciesToZone )(
  109604.             IInternetZoneManager * This,
  109605.                        DWORD dwTemplate,
  109606.                        DWORD dwZone,
  109607.                        DWORD dwReserved);
  109608.  
  109609.  
  109610.     } IInternetZoneManagerVtbl;
  109611.  
  109612.     struct IInternetZoneManager
  109613.     {
  109614.                    struct IInternetZoneManagerVtbl *lpVtbl;
  109615.     };
  109616. # 8868 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109617. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0045_v0_0_c_ifspec;
  109618. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0045_v0_0_s_ifspec;
  109619. # 8886 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109620. extern const IID IID_IInternetZoneManagerEx;
  109621. # 8917 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109622.     typedef struct IInternetZoneManagerExVtbl
  109623.     {
  109624.  
  109625.  
  109626.         HRESULT ( __stdcall *QueryInterface )(
  109627.             IInternetZoneManagerEx * This,
  109628.                        const IID * riid,
  109629.  
  109630.                           void **ppvObject);
  109631.  
  109632.         ULONG ( __stdcall *AddRef )(
  109633.             IInternetZoneManagerEx * This);
  109634.  
  109635.         ULONG ( __stdcall *Release )(
  109636.             IInternetZoneManagerEx * This);
  109637.  
  109638.         HRESULT ( __stdcall *GetZoneAttributes )(
  109639.             IInternetZoneManagerEx * This,
  109640.                        DWORD dwZone,
  109641.  
  109642.                      ZONEATTRIBUTES *pZoneAttributes);
  109643.  
  109644.         HRESULT ( __stdcall *SetZoneAttributes )(
  109645.             IInternetZoneManagerEx * This,
  109646.                        DWORD dwZone,
  109647.  
  109648.                   ZONEATTRIBUTES *pZoneAttributes);
  109649.  
  109650.         HRESULT ( __stdcall *GetZoneCustomPolicy )(
  109651.             IInternetZoneManagerEx * This,
  109652.                        DWORD dwZone,
  109653.                        const GUID * guidKey,
  109654.  
  109655.                                                 BYTE **ppPolicy,
  109656.  
  109657.                    DWORD *pcbPolicy,
  109658.                        URLZONEREG urlZoneReg);
  109659.  
  109660.         HRESULT ( __stdcall *SetZoneCustomPolicy )(
  109661.             IInternetZoneManagerEx * This,
  109662.                        DWORD dwZone,
  109663.                        const GUID * guidKey,
  109664.  
  109665.                                   BYTE *pPolicy,
  109666.                        DWORD cbPolicy,
  109667.                        URLZONEREG urlZoneReg);
  109668.  
  109669.         HRESULT ( __stdcall *GetZoneActionPolicy )(
  109670.             IInternetZoneManagerEx * This,
  109671.                        DWORD dwZone,
  109672.                        DWORD dwAction,
  109673.  
  109674.                                     BYTE *pPolicy,
  109675.                        DWORD cbPolicy,
  109676.                        URLZONEREG urlZoneReg);
  109677.  
  109678.         HRESULT ( __stdcall *SetZoneActionPolicy )(
  109679.             IInternetZoneManagerEx * This,
  109680.                        DWORD dwZone,
  109681.                        DWORD dwAction,
  109682.  
  109683.                                   BYTE *pPolicy,
  109684.                        DWORD cbPolicy,
  109685.                        URLZONEREG urlZoneReg);
  109686.  
  109687.         HRESULT ( __stdcall *PromptAction )(
  109688.             IInternetZoneManagerEx * This,
  109689.                        DWORD dwAction,
  109690.                        HWND hwndParent,
  109691.                        LPCWSTR pwszUrl,
  109692.                        LPCWSTR pwszText,
  109693.                        DWORD dwPromptFlags);
  109694.  
  109695.         HRESULT ( __stdcall *LogAction )(
  109696.             IInternetZoneManagerEx * This,
  109697.                        DWORD dwAction,
  109698.                        LPCWSTR pwszUrl,
  109699.                        LPCWSTR pwszText,
  109700.                        DWORD dwLogFlags);
  109701.  
  109702.         HRESULT ( __stdcall *CreateZoneEnumerator )(
  109703.             IInternetZoneManagerEx * This,
  109704.                         DWORD *pdwEnum,
  109705.                         DWORD *pdwCount,
  109706.                        DWORD dwFlags);
  109707.  
  109708.         HRESULT ( __stdcall *GetZoneAt )(
  109709.             IInternetZoneManagerEx * This,
  109710.                        DWORD dwEnum,
  109711.                        DWORD dwIndex,
  109712.                         DWORD *pdwZone);
  109713.  
  109714.         HRESULT ( __stdcall *DestroyZoneEnumerator )(
  109715.             IInternetZoneManagerEx * This,
  109716.                        DWORD dwEnum);
  109717.  
  109718.         HRESULT ( __stdcall *CopyTemplatePoliciesToZone )(
  109719.             IInternetZoneManagerEx * This,
  109720.                        DWORD dwTemplate,
  109721.                        DWORD dwZone,
  109722.                        DWORD dwReserved);
  109723.  
  109724.         HRESULT ( __stdcall *GetZoneActionPolicyEx )(
  109725.             IInternetZoneManagerEx * This,
  109726.                        DWORD dwZone,
  109727.                        DWORD dwAction,
  109728.  
  109729.                                     BYTE *pPolicy,
  109730.                        DWORD cbPolicy,
  109731.                        URLZONEREG urlZoneReg,
  109732.                        DWORD dwFlags);
  109733.  
  109734.         HRESULT ( __stdcall *SetZoneActionPolicyEx )(
  109735.             IInternetZoneManagerEx * This,
  109736.                        DWORD dwZone,
  109737.                        DWORD dwAction,
  109738.  
  109739.                                   BYTE *pPolicy,
  109740.                        DWORD cbPolicy,
  109741.                        URLZONEREG urlZoneReg,
  109742.                        DWORD dwFlags);
  109743.  
  109744.  
  109745.     } IInternetZoneManagerExVtbl;
  109746.  
  109747.     struct IInternetZoneManagerEx
  109748.     {
  109749.                    struct IInternetZoneManagerExVtbl *lpVtbl;
  109750.     };
  109751. # 9128 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109752. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0046_v0_0_c_ifspec;
  109753. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0046_v0_0_s_ifspec;
  109754. # 9141 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109755. extern const IID IID_IInternetZoneManagerEx2;
  109756. # 9173 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109757.     typedef struct IInternetZoneManagerEx2Vtbl
  109758.     {
  109759.  
  109760.  
  109761.         HRESULT ( __stdcall *QueryInterface )(
  109762.             IInternetZoneManagerEx2 * This,
  109763.                        const IID * riid,
  109764.  
  109765.                           void **ppvObject);
  109766.  
  109767.         ULONG ( __stdcall *AddRef )(
  109768.             IInternetZoneManagerEx2 * This);
  109769.  
  109770.         ULONG ( __stdcall *Release )(
  109771.             IInternetZoneManagerEx2 * This);
  109772.  
  109773.         HRESULT ( __stdcall *GetZoneAttributes )(
  109774.             IInternetZoneManagerEx2 * This,
  109775.                        DWORD dwZone,
  109776.  
  109777.                      ZONEATTRIBUTES *pZoneAttributes);
  109778.  
  109779.         HRESULT ( __stdcall *SetZoneAttributes )(
  109780.             IInternetZoneManagerEx2 * This,
  109781.                        DWORD dwZone,
  109782.  
  109783.                   ZONEATTRIBUTES *pZoneAttributes);
  109784.  
  109785.         HRESULT ( __stdcall *GetZoneCustomPolicy )(
  109786.             IInternetZoneManagerEx2 * This,
  109787.                        DWORD dwZone,
  109788.                        const GUID * guidKey,
  109789.  
  109790.                                                 BYTE **ppPolicy,
  109791.  
  109792.                    DWORD *pcbPolicy,
  109793.                        URLZONEREG urlZoneReg);
  109794.  
  109795.         HRESULT ( __stdcall *SetZoneCustomPolicy )(
  109796.             IInternetZoneManagerEx2 * This,
  109797.                        DWORD dwZone,
  109798.                        const GUID * guidKey,
  109799.  
  109800.                                   BYTE *pPolicy,
  109801.                        DWORD cbPolicy,
  109802.                        URLZONEREG urlZoneReg);
  109803.  
  109804.         HRESULT ( __stdcall *GetZoneActionPolicy )(
  109805.             IInternetZoneManagerEx2 * This,
  109806.                        DWORD dwZone,
  109807.                        DWORD dwAction,
  109808.  
  109809.                                     BYTE *pPolicy,
  109810.                        DWORD cbPolicy,
  109811.                        URLZONEREG urlZoneReg);
  109812.  
  109813.         HRESULT ( __stdcall *SetZoneActionPolicy )(
  109814.             IInternetZoneManagerEx2 * This,
  109815.                        DWORD dwZone,
  109816.                        DWORD dwAction,
  109817.  
  109818.                                   BYTE *pPolicy,
  109819.                        DWORD cbPolicy,
  109820.                        URLZONEREG urlZoneReg);
  109821.  
  109822.         HRESULT ( __stdcall *PromptAction )(
  109823.             IInternetZoneManagerEx2 * This,
  109824.                        DWORD dwAction,
  109825.                        HWND hwndParent,
  109826.                        LPCWSTR pwszUrl,
  109827.                        LPCWSTR pwszText,
  109828.                        DWORD dwPromptFlags);
  109829.  
  109830.         HRESULT ( __stdcall *LogAction )(
  109831.             IInternetZoneManagerEx2 * This,
  109832.                        DWORD dwAction,
  109833.                        LPCWSTR pwszUrl,
  109834.                        LPCWSTR pwszText,
  109835.                        DWORD dwLogFlags);
  109836.  
  109837.         HRESULT ( __stdcall *CreateZoneEnumerator )(
  109838.             IInternetZoneManagerEx2 * This,
  109839.                         DWORD *pdwEnum,
  109840.                         DWORD *pdwCount,
  109841.                        DWORD dwFlags);
  109842.  
  109843.         HRESULT ( __stdcall *GetZoneAt )(
  109844.             IInternetZoneManagerEx2 * This,
  109845.                        DWORD dwEnum,
  109846.                        DWORD dwIndex,
  109847.                         DWORD *pdwZone);
  109848.  
  109849.         HRESULT ( __stdcall *DestroyZoneEnumerator )(
  109850.             IInternetZoneManagerEx2 * This,
  109851.                        DWORD dwEnum);
  109852.  
  109853.         HRESULT ( __stdcall *CopyTemplatePoliciesToZone )(
  109854.             IInternetZoneManagerEx2 * This,
  109855.                        DWORD dwTemplate,
  109856.                        DWORD dwZone,
  109857.                        DWORD dwReserved);
  109858.  
  109859.         HRESULT ( __stdcall *GetZoneActionPolicyEx )(
  109860.             IInternetZoneManagerEx2 * This,
  109861.                        DWORD dwZone,
  109862.                        DWORD dwAction,
  109863.  
  109864.                                     BYTE *pPolicy,
  109865.                        DWORD cbPolicy,
  109866.                        URLZONEREG urlZoneReg,
  109867.                        DWORD dwFlags);
  109868.  
  109869.         HRESULT ( __stdcall *SetZoneActionPolicyEx )(
  109870.             IInternetZoneManagerEx2 * This,
  109871.                        DWORD dwZone,
  109872.                        DWORD dwAction,
  109873.  
  109874.                                   BYTE *pPolicy,
  109875.                        DWORD cbPolicy,
  109876.                        URLZONEREG urlZoneReg,
  109877.                        DWORD dwFlags);
  109878.  
  109879.         HRESULT ( __stdcall *GetZoneAttributesEx )(
  109880.             IInternetZoneManagerEx2 * This,
  109881.                        DWORD dwZone,
  109882.                                     ZONEATTRIBUTES *pZoneAttributes,
  109883.                        DWORD dwFlags);
  109884.  
  109885.         HRESULT ( __stdcall *GetZoneSecurityState )(
  109886.             IInternetZoneManagerEx2 * This,
  109887.                        DWORD dwZoneIndex,
  109888.                        BOOL fRespectPolicy,
  109889.                             LPDWORD pdwState,
  109890.                             BOOL *pfPolicyEncountered);
  109891.  
  109892.         HRESULT ( __stdcall *GetIESecurityState )(
  109893.             IInternetZoneManagerEx2 * This,
  109894.                        BOOL fRespectPolicy,
  109895.                             LPDWORD pdwState,
  109896.                             BOOL *pfPolicyEncountered,
  109897.                        BOOL fNoCache);
  109898.  
  109899.         HRESULT ( __stdcall *FixUnsecureSettings )(
  109900.             IInternetZoneManagerEx2 * This);
  109901.  
  109902.  
  109903.     } IInternetZoneManagerEx2Vtbl;
  109904.  
  109905.     struct IInternetZoneManagerEx2
  109906.     {
  109907.                    struct IInternetZoneManagerEx2Vtbl *lpVtbl;
  109908.     };
  109909. # 9413 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109910. extern const IID CLSID_SoftDistExt;
  109911. # 9428 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109912. typedef struct _tagCODEBASEHOLD
  109913.     {
  109914.     ULONG cbSize;
  109915.     LPWSTR szDistUnit;
  109916.     LPWSTR szCodeBase;
  109917.     DWORD dwVersionMS;
  109918.     DWORD dwVersionLS;
  109919.     DWORD dwStyle;
  109920.     } CODEBASEHOLD;
  109921.  
  109922. typedef struct _tagCODEBASEHOLD *LPCODEBASEHOLD;
  109923.  
  109924. typedef struct _tagSOFTDISTINFO
  109925.     {
  109926.     ULONG cbSize;
  109927.     DWORD dwFlags;
  109928.     DWORD dwAdState;
  109929.     LPWSTR szTitle;
  109930.     LPWSTR szAbstract;
  109931.     LPWSTR szHREF;
  109932.     DWORD dwInstalledVersionMS;
  109933.     DWORD dwInstalledVersionLS;
  109934.     DWORD dwUpdateVersionMS;
  109935.     DWORD dwUpdateVersionLS;
  109936.     DWORD dwAdvertisedVersionMS;
  109937.     DWORD dwAdvertisedVersionLS;
  109938.     DWORD dwReserved;
  109939.     } SOFTDISTINFO;
  109940.  
  109941. typedef struct _tagSOFTDISTINFO *LPSOFTDISTINFO;
  109942.  
  109943.  
  109944.  
  109945. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0047_v0_0_c_ifspec;
  109946. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0047_v0_0_s_ifspec;
  109947. # 9471 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109948. extern const IID IID_ISoftDistExt;
  109949. # 9505 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109950.     typedef struct ISoftDistExtVtbl
  109951.     {
  109952.  
  109953.  
  109954.         HRESULT ( __stdcall *QueryInterface )(
  109955.             ISoftDistExt * This,
  109956.                        const IID * riid,
  109957.  
  109958.                           void **ppvObject);
  109959.  
  109960.         ULONG ( __stdcall *AddRef )(
  109961.             ISoftDistExt * This);
  109962.  
  109963.         ULONG ( __stdcall *Release )(
  109964.             ISoftDistExt * This);
  109965.  
  109966.         HRESULT ( __stdcall *ProcessSoftDist )(
  109967.             ISoftDistExt * This,
  109968.                        LPCWSTR szCDFURL,
  109969.                        IXMLElement *pSoftDistElement,
  109970.                             LPSOFTDISTINFO lpsdi);
  109971.  
  109972.         HRESULT ( __stdcall *GetFirstCodeBase )(
  109973.             ISoftDistExt * This,
  109974.  
  109975.                        LPWSTR *szCodeBase,
  109976.                        LPDWORD dwMaxSize);
  109977.  
  109978.         HRESULT ( __stdcall *GetNextCodeBase )(
  109979.             ISoftDistExt * This,
  109980.  
  109981.                        LPWSTR *szCodeBase,
  109982.                        LPDWORD dwMaxSize);
  109983.  
  109984.         HRESULT ( __stdcall *AsyncInstallDistributionUnit )(
  109985.             ISoftDistExt * This,
  109986.                        IBindCtx *pbc,
  109987.                        LPVOID pvReserved,
  109988.                        DWORD flags,
  109989.                        LPCODEBASEHOLD lpcbh);
  109990.  
  109991.  
  109992.     } ISoftDistExtVtbl;
  109993.  
  109994.     struct ISoftDistExt
  109995.     {
  109996.                    struct ISoftDistExtVtbl *lpVtbl;
  109997.     };
  109998. # 9595 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  109999. extern HRESULT __stdcall GetSoftwareUpdateInfo( LPCWSTR szDistUnit, LPSOFTDISTINFO psdi );
  110000. extern HRESULT __stdcall SetSoftwareUpdateAdvertisementState( LPCWSTR szDistUnit, DWORD dwAdState, DWORD dwAdvertisedVersionMS, DWORD dwAdvertisedVersionLS );
  110001.  
  110002.  
  110003.  
  110004.  
  110005.  
  110006. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0048_v0_0_c_ifspec;
  110007. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0048_v0_0_s_ifspec;
  110008.  
  110009.  
  110010.  
  110011.  
  110012.  
  110013.  
  110014.  
  110015. typedef ICatalogFileInfo *LPCATALOGFILEINFO;
  110016.  
  110017.  
  110018. extern const IID IID_ICatalogFileInfo;
  110019. # 9634 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110020.     typedef struct ICatalogFileInfoVtbl
  110021.     {
  110022.  
  110023.  
  110024.         HRESULT ( __stdcall *QueryInterface )(
  110025.             ICatalogFileInfo * This,
  110026.                        const IID * riid,
  110027.  
  110028.                           void **ppvObject);
  110029.  
  110030.         ULONG ( __stdcall *AddRef )(
  110031.             ICatalogFileInfo * This);
  110032.  
  110033.         ULONG ( __stdcall *Release )(
  110034.             ICatalogFileInfo * This);
  110035.  
  110036.         HRESULT ( __stdcall *GetCatalogFile )(
  110037.             ICatalogFileInfo * This,
  110038.  
  110039.                         LPSTR *ppszCatalogFile);
  110040.  
  110041.         HRESULT ( __stdcall *GetJavaTrust )(
  110042.             ICatalogFileInfo * This,
  110043.                         void **ppJavaTrust);
  110044.  
  110045.  
  110046.     } ICatalogFileInfoVtbl;
  110047.  
  110048.     struct ICatalogFileInfo
  110049.     {
  110050.                    struct ICatalogFileInfoVtbl *lpVtbl;
  110051.     };
  110052. # 9707 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110053. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0049_v0_0_c_ifspec;
  110054. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0049_v0_0_s_ifspec;
  110055.  
  110056.  
  110057.  
  110058.  
  110059.  
  110060.  
  110061.  
  110062. typedef IDataFilter *LPDATAFILTER;
  110063.  
  110064.  
  110065. extern const IID IID_IDataFilter;
  110066. # 9757 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110067.     typedef struct IDataFilterVtbl
  110068.     {
  110069.  
  110070.  
  110071.         HRESULT ( __stdcall *QueryInterface )(
  110072.                       IDataFilter * This,
  110073.                                  const IID * riid,
  110074.  
  110075.                           void **ppvObject);
  110076.  
  110077.         ULONG ( __stdcall *AddRef )(
  110078.                       IDataFilter * This);
  110079.  
  110080.         ULONG ( __stdcall *Release )(
  110081.                       IDataFilter * This);
  110082.  
  110083.         HRESULT ( __stdcall *DoEncode )(
  110084.                       IDataFilter * This,
  110085.                        DWORD dwFlags,
  110086.                        LONG lInBufferSize,
  110087.                                                                      BYTE *pbInBuffer,
  110088.                        LONG lOutBufferSize,
  110089.                                                                         BYTE *pbOutBuffer,
  110090.                        LONG lInBytesAvailable,
  110091.                                    LONG *plInBytesRead,
  110092.                                    LONG *plOutBytesWritten,
  110093.                        DWORD dwReserved);
  110094.  
  110095.         HRESULT ( __stdcall *DoDecode )(
  110096.                       IDataFilter * This,
  110097.                        DWORD dwFlags,
  110098.                        LONG lInBufferSize,
  110099.                                                                      BYTE *pbInBuffer,
  110100.                        LONG lOutBufferSize,
  110101.                                                                         BYTE *pbOutBuffer,
  110102.                        LONG lInBytesAvailable,
  110103.                                    LONG *plInBytesRead,
  110104.                                    LONG *plOutBytesWritten,
  110105.                        DWORD dwReserved);
  110106.  
  110107.         HRESULT ( __stdcall *SetEncodingLevel )(
  110108.                       IDataFilter * This,
  110109.                        DWORD dwEncLevel);
  110110.  
  110111.  
  110112.     } IDataFilterVtbl;
  110113.  
  110114.     struct IDataFilter
  110115.     {
  110116.                    struct IDataFilterVtbl *lpVtbl;
  110117.     };
  110118. # 9850 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110119. typedef struct _tagPROTOCOLFILTERDATA
  110120.     {
  110121.     DWORD cbSize;
  110122.     IInternetProtocolSink *pProtocolSink;
  110123.     IInternetProtocol *pProtocol;
  110124.     IUnknown *pUnk;
  110125.     DWORD dwFilterFlags;
  110126.     } PROTOCOLFILTERDATA;
  110127.  
  110128.  
  110129.  
  110130. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0050_v0_0_c_ifspec;
  110131. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0050_v0_0_s_ifspec;
  110132.  
  110133.  
  110134.  
  110135.  
  110136.  
  110137.  
  110138.  
  110139. typedef IEncodingFilterFactory *LPENCODINGFILTERFACTORY;
  110140.  
  110141. typedef struct _tagDATAINFO
  110142.     {
  110143.     ULONG ulTotalSize;
  110144.     ULONG ulavrPacketSize;
  110145.     ULONG ulConnectSpeed;
  110146.     ULONG ulProcessorSpeed;
  110147.     } DATAINFO;
  110148.  
  110149.  
  110150. extern const IID IID_IEncodingFilterFactory;
  110151. # 9905 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110152.     typedef struct IEncodingFilterFactoryVtbl
  110153.     {
  110154.  
  110155.  
  110156.         HRESULT ( __stdcall *QueryInterface )(
  110157.             IEncodingFilterFactory * This,
  110158.                        const IID * riid,
  110159.  
  110160.                           void **ppvObject);
  110161.  
  110162.         ULONG ( __stdcall *AddRef )(
  110163.             IEncodingFilterFactory * This);
  110164.  
  110165.         ULONG ( __stdcall *Release )(
  110166.             IEncodingFilterFactory * This);
  110167.  
  110168.         HRESULT ( __stdcall *FindBestFilter )(
  110169.             IEncodingFilterFactory * This,
  110170.                        LPCWSTR pwzCodeIn,
  110171.                        LPCWSTR pwzCodeOut,
  110172.                        DATAINFO info,
  110173.                         IDataFilter **ppDF);
  110174.  
  110175.         HRESULT ( __stdcall *GetDefaultFilter )(
  110176.             IEncodingFilterFactory * This,
  110177.                        LPCWSTR pwzCodeIn,
  110178.                        LPCWSTR pwzCodeOut,
  110179.                         IDataFilter **ppDF);
  110180.  
  110181.  
  110182.     } IEncodingFilterFactoryVtbl;
  110183.  
  110184.     struct IEncodingFilterFactory
  110185.     {
  110186.                    struct IEncodingFilterFactoryVtbl *lpVtbl;
  110187.     };
  110188. # 9981 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110189. BOOL __stdcall IsLoggingEnabledA( LPCSTR pszUrl);
  110190. BOOL __stdcall IsLoggingEnabledW( LPCWSTR pwszUrl);
  110191.  
  110192.  
  110193.  
  110194.  
  110195.  
  110196. typedef struct _tagHIT_LOGGING_INFO
  110197.     {
  110198.     DWORD dwStructSize;
  110199.     LPSTR lpszLoggedUrlName;
  110200.     SYSTEMTIME StartTime;
  110201.     SYSTEMTIME EndTime;
  110202.     LPSTR lpszExtendedInfo;
  110203.     } HIT_LOGGING_INFO;
  110204.  
  110205. typedef struct _tagHIT_LOGGING_INFO *LPHIT_LOGGING_INFO;
  110206.  
  110207. BOOL __stdcall WriteHitLogging( LPHIT_LOGGING_INFO lpLogginginfo);
  110208.  
  110209. struct CONFIRMSAFETY
  110210.     {
  110211.     CLSID clsid;
  110212.     IUnknown *pUnk;
  110213.     DWORD dwFlags;
  110214.     } ;
  110215. extern const GUID GUID_CUSTOM_CONFIRMOBJECTSAFETY;
  110216.  
  110217.  
  110218.  
  110219.  
  110220.  
  110221. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0051_v0_0_c_ifspec;
  110222. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0051_v0_0_s_ifspec;
  110223.  
  110224.  
  110225.  
  110226.  
  110227.  
  110228.  
  110229.  
  110230. typedef IWrappedProtocol *LPIWRAPPEDPROTOCOL;
  110231.  
  110232.  
  110233. extern const IID IID_IWrappedProtocol;
  110234. # 10042 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110235.     typedef struct IWrappedProtocolVtbl
  110236.     {
  110237.  
  110238.  
  110239.         HRESULT ( __stdcall *QueryInterface )(
  110240.             IWrappedProtocol * This,
  110241.                        const IID * riid,
  110242.  
  110243.                           void **ppvObject);
  110244.  
  110245.         ULONG ( __stdcall *AddRef )(
  110246.             IWrappedProtocol * This);
  110247.  
  110248.         ULONG ( __stdcall *Release )(
  110249.             IWrappedProtocol * This);
  110250.  
  110251.         HRESULT ( __stdcall *GetWrapperCode )(
  110252.             IWrappedProtocol * This,
  110253.                         LONG *pnCode,
  110254.                        DWORD_PTR dwReserved);
  110255.  
  110256.  
  110257.     } IWrappedProtocolVtbl;
  110258.  
  110259.     struct IWrappedProtocol
  110260.     {
  110261.                    struct IWrappedProtocolVtbl *lpVtbl;
  110262.     };
  110263. # 10108 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110264. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0052_v0_0_c_ifspec;
  110265. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0052_v0_0_s_ifspec;
  110266.  
  110267.  
  110268.  
  110269.  
  110270.  
  110271.  
  110272.  
  110273. typedef IGetBindHandle *LPGETBINDHANDLE;
  110274.  
  110275. typedef
  110276. enum __MIDL_IGetBindHandle_0001
  110277.     {
  110278.         BINDHANDLETYPES_APPCACHE = 0,
  110279.         BINDHANDLETYPES_DEPENDENCY = 0x1,
  110280.         BINDHANDLETYPES_COUNT = ( BINDHANDLETYPES_DEPENDENCY + 1 )
  110281.     } BINDHANDLETYPES;
  110282.  
  110283.  
  110284. extern const IID IID_IGetBindHandle;
  110285. # 10145 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110286.     typedef struct IGetBindHandleVtbl
  110287.     {
  110288.  
  110289.  
  110290.         HRESULT ( __stdcall *QueryInterface )(
  110291.             IGetBindHandle * This,
  110292.                        const IID * riid,
  110293.  
  110294.                           void **ppvObject);
  110295.  
  110296.         ULONG ( __stdcall *AddRef )(
  110297.             IGetBindHandle * This);
  110298.  
  110299.         ULONG ( __stdcall *Release )(
  110300.             IGetBindHandle * This);
  110301.  
  110302.         HRESULT ( __stdcall *GetBindHandle )(
  110303.             IGetBindHandle * This,
  110304.                        BINDHANDLETYPES enumRequestedHandle,
  110305.                         HANDLE *pRetHandle);
  110306.  
  110307.  
  110308.     } IGetBindHandleVtbl;
  110309.  
  110310.     struct IGetBindHandle
  110311.     {
  110312.                    struct IGetBindHandleVtbl *lpVtbl;
  110313.     };
  110314. # 10209 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110315. typedef struct _tagPROTOCOL_ARGUMENT
  110316.     {
  110317.     LPCWSTR szMethod;
  110318.     LPCWSTR szTargetUrl;
  110319.     } PROTOCOL_ARGUMENT;
  110320.  
  110321. typedef struct _tagPROTOCOL_ARGUMENT *LPPROTOCOL_ARGUMENT;
  110322.  
  110323.  
  110324.  
  110325.  
  110326.  
  110327.  
  110328. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0053_v0_0_c_ifspec;
  110329. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0053_v0_0_s_ifspec;
  110330.  
  110331.  
  110332.  
  110333.  
  110334.  
  110335.  
  110336.  
  110337. typedef IBindCallbackRedirect *LPBINDCALLBACKREDIRECT;
  110338.  
  110339.  
  110340. extern const IID IID_IBindCallbackRedirect;
  110341. # 10251 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110342.     typedef struct IBindCallbackRedirectVtbl
  110343.     {
  110344.  
  110345.  
  110346.         HRESULT ( __stdcall *QueryInterface )(
  110347.             IBindCallbackRedirect * This,
  110348.                        const IID * riid,
  110349.  
  110350.                           void **ppvObject);
  110351.  
  110352.         ULONG ( __stdcall *AddRef )(
  110353.             IBindCallbackRedirect * This);
  110354.  
  110355.         ULONG ( __stdcall *Release )(
  110356.             IBindCallbackRedirect * This);
  110357.  
  110358.         HRESULT ( __stdcall *Redirect )(
  110359.             IBindCallbackRedirect * This,
  110360.                        LPCWSTR lpcUrl,
  110361.                         VARIANT_BOOL *vbCancel);
  110362.  
  110363.  
  110364.     } IBindCallbackRedirectVtbl;
  110365.  
  110366.     struct IBindCallbackRedirect
  110367.     {
  110368.                    struct IBindCallbackRedirectVtbl *lpVtbl;
  110369.     };
  110370. # 10317 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110371. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0054_v0_0_c_ifspec;
  110372. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0054_v0_0_s_ifspec;
  110373. # 10327 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110374. extern const IID IID_IBindHttpSecurity;
  110375. # 10343 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110376.     typedef struct IBindHttpSecurityVtbl
  110377.     {
  110378.  
  110379.  
  110380.         HRESULT ( __stdcall *QueryInterface )(
  110381.                       IBindHttpSecurity * This,
  110382.                                  const IID * riid,
  110383.  
  110384.                           void **ppvObject);
  110385.  
  110386.         ULONG ( __stdcall *AddRef )(
  110387.                       IBindHttpSecurity * This);
  110388.  
  110389.         ULONG ( __stdcall *Release )(
  110390.                       IBindHttpSecurity * This);
  110391.  
  110392.         HRESULT ( __stdcall *GetIgnoreCertMask )(
  110393.                       IBindHttpSecurity * This,
  110394.                                         DWORD *pdwIgnoreCertMask);
  110395.  
  110396.  
  110397.     } IBindHttpSecurityVtbl;
  110398.  
  110399.     struct IBindHttpSecurity
  110400.     {
  110401.                    struct IBindHttpSecurityVtbl *lpVtbl;
  110402.     };
  110403. # 10405 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110404. #pragma endregion
  110405.  
  110406.  
  110407.  
  110408.  
  110409.  
  110410. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0055_v0_0_c_ifspec;
  110411. extern RPC_IF_HANDLE __MIDL_itf_urlmon_0000_0055_v0_0_s_ifspec;
  110412.  
  110413.  
  110414.  
  110415. unsigned long __stdcall BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  110416. unsigned char * __stdcall BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  110417. unsigned char * __stdcall BSTR_UserUnmarshal( unsigned long *, unsigned char *, BSTR * );
  110418. void __stdcall BSTR_UserFree( unsigned long *, BSTR * );
  110419.  
  110420. unsigned long __stdcall HWND_UserSize( unsigned long *, unsigned long , HWND * );
  110421. unsigned char * __stdcall HWND_UserMarshal( unsigned long *, unsigned char *, HWND * );
  110422. unsigned char * __stdcall HWND_UserUnmarshal( unsigned long *, unsigned char *, HWND * );
  110423. void __stdcall HWND_UserFree( unsigned long *, HWND * );
  110424.  
  110425. unsigned long __stdcall BSTR_UserSize64( unsigned long *, unsigned long , BSTR * );
  110426. unsigned char * __stdcall BSTR_UserMarshal64( unsigned long *, unsigned char *, BSTR * );
  110427. unsigned char * __stdcall BSTR_UserUnmarshal64( unsigned long *, unsigned char *, BSTR * );
  110428. void __stdcall BSTR_UserFree64( unsigned long *, BSTR * );
  110429.  
  110430. unsigned long __stdcall HWND_UserSize64( unsigned long *, unsigned long , HWND * );
  110431. unsigned char * __stdcall HWND_UserMarshal64( unsigned long *, unsigned char *, HWND * );
  110432. unsigned char * __stdcall HWND_UserUnmarshal64( unsigned long *, unsigned char *, HWND * );
  110433. void __stdcall HWND_UserFree64( unsigned long *, HWND * );
  110434.  
  110435.               HRESULT __stdcall IBinding_GetBindResult_Proxy(
  110436.     IBinding * This,
  110437.                 CLSID *pclsidProtocol,
  110438.                 DWORD *pdwResult,
  110439.  
  110440.                 LPOLESTR *pszResult,
  110441.                     DWORD *pdwReserved);
  110442.  
  110443.  
  110444.                 HRESULT __stdcall IBinding_GetBindResult_Stub(
  110445.               IBinding * This,
  110446.                            CLSID *pclsidProtocol,
  110447.                            DWORD *pdwResult,
  110448.                                      LPOLESTR *pszResult,
  110449.                DWORD dwReserved);
  110450.  
  110451.               HRESULT __stdcall IBindStatusCallback_GetBindInfo_Proxy(
  110452.     IBindStatusCallback * This,
  110453.                 DWORD *grfBINDF,
  110454.                             BINDINFO *pbindinfo);
  110455.  
  110456.  
  110457.                 HRESULT __stdcall IBindStatusCallback_GetBindInfo_Stub(
  110458.               IBindStatusCallback * This,
  110459.                            DWORD *grfBINDF,
  110460.                                              RemBINDINFO *pbindinfo,
  110461.                                              RemSTGMEDIUM *pstgmed);
  110462.  
  110463.               HRESULT __stdcall IBindStatusCallback_OnDataAvailable_Proxy(
  110464.     IBindStatusCallback * This,
  110465.                DWORD grfBSCF,
  110466.                DWORD dwSize,
  110467.                FORMATETC *pformatetc,
  110468.                STGMEDIUM *pstgmed);
  110469.  
  110470.  
  110471.                 HRESULT __stdcall IBindStatusCallback_OnDataAvailable_Stub(
  110472.               IBindStatusCallback * This,
  110473.                DWORD grfBSCF,
  110474.                DWORD dwSize,
  110475.                          RemFORMATETC *pformatetc,
  110476.                          RemSTGMEDIUM *pstgmed);
  110477.  
  110478.               HRESULT __stdcall IBindStatusCallbackEx_GetBindInfoEx_Proxy(
  110479.     IBindStatusCallbackEx * This,
  110480.                 DWORD *grfBINDF,
  110481.                             BINDINFO *pbindinfo,
  110482.                 DWORD *grfBINDF2,
  110483.                 DWORD *pdwReserved);
  110484.  
  110485.  
  110486.                 HRESULT __stdcall IBindStatusCallbackEx_GetBindInfoEx_Stub(
  110487.               IBindStatusCallbackEx * This,
  110488.                            DWORD *grfBINDF,
  110489.                                              RemBINDINFO *pbindinfo,
  110490.                                              RemSTGMEDIUM *pstgmed,
  110491.                            DWORD *grfBINDF2,
  110492.                            DWORD *pdwReserved);
  110493.  
  110494.               HRESULT __stdcall IWinInetInfo_QueryOption_Proxy(
  110495.     IWinInetInfo * This,
  110496.                DWORD dwOption,
  110497.                              LPVOID pBuffer,
  110498.                     DWORD *pcbBuf);
  110499.  
  110500.  
  110501.                 HRESULT __stdcall IWinInetInfo_QueryOption_Stub(
  110502.               IWinInetInfo * This,
  110503.                DWORD dwOption,
  110504.                                                                BYTE *pBuffer,
  110505.                                  DWORD *pcbBuf);
  110506.  
  110507.               HRESULT __stdcall IWinInetHttpInfo_QueryInfo_Proxy(
  110508.     IWinInetHttpInfo * This,
  110509.                DWORD dwOption,
  110510.                              LPVOID pBuffer,
  110511.                     DWORD *pcbBuf,
  110512.                     DWORD *pdwFlags,
  110513.                     DWORD *pdwReserved);
  110514.  
  110515.  
  110516.                 HRESULT __stdcall IWinInetHttpInfo_QueryInfo_Stub(
  110517.               IWinInetHttpInfo * This,
  110518.                DWORD dwOption,
  110519.                                                                BYTE *pBuffer,
  110520.                                  DWORD *pcbBuf,
  110521.                                  DWORD *pdwFlags,
  110522.                                  DWORD *pdwReserved);
  110523.  
  110524.               HRESULT __stdcall IBindHost_MonikerBindToStorage_Proxy(
  110525.     IBindHost * This,
  110526.                IMoniker *pMk,
  110527.                IBindCtx *pBC,
  110528.                IBindStatusCallback *pBSC,
  110529.                const IID * riid,
  110530.                 void **ppvObj);
  110531.  
  110532.  
  110533.                 HRESULT __stdcall IBindHost_MonikerBindToStorage_Stub(
  110534.               IBindHost * This,
  110535.                                      IMoniker *pMk,
  110536.                                      IBindCtx *pBC,
  110537.                                      IBindStatusCallback *pBSC,
  110538.                          const IID * riid,
  110539.                                              IUnknown **ppvObj);
  110540.  
  110541.               HRESULT __stdcall IBindHost_MonikerBindToObject_Proxy(
  110542.     IBindHost * This,
  110543.                IMoniker *pMk,
  110544.                IBindCtx *pBC,
  110545.                IBindStatusCallback *pBSC,
  110546.                const IID * riid,
  110547.                 void **ppvObj);
  110548.  
  110549.  
  110550.                 HRESULT __stdcall IBindHost_MonikerBindToObject_Stub(
  110551.               IBindHost * This,
  110552.                                      IMoniker *pMk,
  110553.                                      IBindCtx *pBC,
  110554.                                      IBindStatusCallback *pBSC,
  110555.                          const IID * riid,
  110556.                                              IUnknown **ppvObj);
  110557. # 10570 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\urlmon.h" 3
  110558. #pragma option pop
  110559. # 260 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 2 3
  110560.  
  110561. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 1 3
  110562. #pragma option push -b -a8 -pc -A- -w-pun
  110563. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 3
  110564. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  110565. #pragma option push -b -a8 -pc -A- -w-pun
  110566. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  110567. #pragma option pop
  110568. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 2 3
  110569.  
  110570. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  110571. #pragma option push -b -a8 -pc -A- -w-pun
  110572. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  110573. #pragma option pop
  110574. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 2 3
  110575.  
  110576.  
  110577.  
  110578.  
  110579.  
  110580.  
  110581.  
  110582. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  110583. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 2 3
  110584.  
  110585. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  110586. #pragma option push -b -a8 -pc -A- -w-pun
  110587. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  110588. #pragma option pop
  110589. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 2 3
  110590. # 72 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 3
  110591. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 1 3
  110592. #pragma option push -b -a8 -pc -A- -w-pun
  110593. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  110594. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  110595. #pragma option push -b -a8 -pc -A- -w-pun
  110596. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  110597. #pragma option pop
  110598. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  110599.  
  110600. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  110601. #pragma option push -b -a8 -pc -A- -w-pun
  110602. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  110603. #pragma option pop
  110604. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  110605.  
  110606.  
  110607.  
  110608.  
  110609.  
  110610.  
  110611.  
  110612. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  110613. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  110614.  
  110615. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  110616. #pragma option push -b -a8 -pc -A- -w-pun
  110617. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  110618. #pragma option pop
  110619. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 2 3
  110620. # 15166 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/objidl.h" 3
  110621. #pragma option pop
  110622. # 72 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 2 3
  110623.  
  110624. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 1 3
  110625. #pragma option push -b -a8 -pc -A- -w-pun
  110626. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  110627. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  110628. #pragma option push -b -a8 -pc -A- -w-pun
  110629. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  110630. #pragma option pop
  110631. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  110632.  
  110633. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  110634. #pragma option push -b -a8 -pc -A- -w-pun
  110635. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  110636. #pragma option pop
  110637. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  110638.  
  110639.  
  110640.  
  110641.  
  110642.  
  110643.  
  110644.  
  110645. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  110646. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  110647.  
  110648. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  110649. #pragma option push -b -a8 -pc -A- -w-pun
  110650. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  110651. #pragma option pop
  110652. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 2 3
  110653. # 6068 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/oaidl.h" 3
  110654. #pragma option pop
  110655. # 73 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 2 3
  110656. # 1094 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 3
  110657. #pragma region Desktop Family or OneCore Family
  110658. # 1155 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 3
  110659. enum PIDMSI_STATUS_VALUE
  110660.     {
  110661.         PIDMSI_STATUS_NORMAL = 0,
  110662.         PIDMSI_STATUS_NEW = ( PIDMSI_STATUS_NORMAL + 1 ) ,
  110663.         PIDMSI_STATUS_PRELIM = ( PIDMSI_STATUS_NEW + 1 ) ,
  110664.         PIDMSI_STATUS_DRAFT = ( PIDMSI_STATUS_PRELIM + 1 ) ,
  110665.         PIDMSI_STATUS_INPROGRESS = ( PIDMSI_STATUS_DRAFT + 1 ) ,
  110666.         PIDMSI_STATUS_EDIT = ( PIDMSI_STATUS_INPROGRESS + 1 ) ,
  110667.         PIDMSI_STATUS_REVIEW = ( PIDMSI_STATUS_EDIT + 1 ) ,
  110668.         PIDMSI_STATUS_PROOF = ( PIDMSI_STATUS_REVIEW + 1 ) ,
  110669.         PIDMSI_STATUS_FINAL = ( PIDMSI_STATUS_PROOF + 1 ) ,
  110670.         PIDMSI_STATUS_OTHER = 0x7fff
  110671.     } ;
  110672.  
  110673. #pragma endregion
  110674. #pragma region Application Family or OneCore Family
  110675.  
  110676.  extern __declspec(dllimport) HRESULT __stdcall PropVariantCopy(
  110677.                   PROPVARIANT* pvarDest,
  110678.                  const PROPVARIANT * pvarSrc);
  110679.  
  110680. extern __declspec(dllimport) HRESULT __stdcall PropVariantClear( PROPVARIANT* pvar);
  110681.  
  110682. extern __declspec(dllimport) HRESULT __stdcall FreePropVariantArray(
  110683.                  ULONG cVariants,
  110684.                                        PROPVARIANT* rgvars);
  110685. # 1205 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 3
  110686. #pragma endregion
  110687.  
  110688. #pragma region Desktop Family
  110689.  
  110690.  
  110691.  
  110692.  
  110693. typedef struct tagSERIALIZEDPROPERTYVALUE
  110694. {
  110695.     DWORD dwType;
  110696.     BYTE rgb[1];
  110697. } SERIALIZEDPROPERTYVALUE;
  110698.  
  110699.  
  110700. extern
  110701.  
  110702. SERIALIZEDPROPERTYVALUE* __stdcall
  110703. StgConvertVariantToProperty(
  110704.                  const PROPVARIANT* pvar,
  110705.                  USHORT CodePage,
  110706.                                          SERIALIZEDPROPERTYVALUE* pprop,
  110707.                     ULONG* pcb,
  110708.                  PROPID pid,
  110709.                        BOOLEAN fReserved,
  110710.                         ULONG* pcIndirect);
  110711. # 1245 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 3
  110712. #pragma endregion
  110713.  
  110714.  
  110715.  
  110716.  
  110717. #pragma warning(default: 4201)
  110718. #pragma warning(default: 4237)
  110719.  
  110720.  
  110721.  
  110722. extern RPC_IF_HANDLE __MIDL_itf_propidl_0000_0004_v0_0_c_ifspec;
  110723. extern RPC_IF_HANDLE __MIDL_itf_propidl_0000_0004_v0_0_s_ifspec;
  110724.  
  110725.  
  110726.  
  110727. unsigned long __stdcall BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  110728. unsigned char * __stdcall BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  110729. unsigned char * __stdcall BSTR_UserUnmarshal( unsigned long *, unsigned char *, BSTR * );
  110730. void __stdcall BSTR_UserFree( unsigned long *, BSTR * );
  110731.  
  110732. unsigned long __stdcall LPSAFEARRAY_UserSize( unsigned long *, unsigned long , LPSAFEARRAY * );
  110733. unsigned char * __stdcall LPSAFEARRAY_UserMarshal( unsigned long *, unsigned char *, LPSAFEARRAY * );
  110734. unsigned char * __stdcall LPSAFEARRAY_UserUnmarshal( unsigned long *, unsigned char *, LPSAFEARRAY * );
  110735. void __stdcall LPSAFEARRAY_UserFree( unsigned long *, LPSAFEARRAY * );
  110736.  
  110737. unsigned long __stdcall BSTR_UserSize64( unsigned long *, unsigned long , BSTR * );
  110738. unsigned char * __stdcall BSTR_UserMarshal64( unsigned long *, unsigned char *, BSTR * );
  110739. unsigned char * __stdcall BSTR_UserUnmarshal64( unsigned long *, unsigned char *, BSTR * );
  110740. void __stdcall BSTR_UserFree64( unsigned long *, BSTR * );
  110741.  
  110742. unsigned long __stdcall LPSAFEARRAY_UserSize64( unsigned long *, unsigned long , LPSAFEARRAY * );
  110743. unsigned char * __stdcall LPSAFEARRAY_UserMarshal64( unsigned long *, unsigned char *, LPSAFEARRAY * );
  110744. unsigned char * __stdcall LPSAFEARRAY_UserUnmarshal64( unsigned long *, unsigned char *, LPSAFEARRAY * );
  110745. void __stdcall LPSAFEARRAY_UserFree64( unsigned long *, LPSAFEARRAY * );
  110746.  
  110747.               HRESULT __stdcall IEnumSTATPROPSTG_Next_Proxy(
  110748.     IEnumSTATPROPSTG * This,
  110749.                ULONG celt,
  110750.  
  110751.                                           STATPROPSTG *rgelt,
  110752.  
  110753.                                           ULONG *pceltFetched);
  110754.  
  110755.  
  110756.                 HRESULT __stdcall IEnumSTATPROPSTG_Next_Stub(
  110757.               IEnumSTATPROPSTG * This,
  110758.                ULONG celt,
  110759.                                                                                 STATPROPSTG *rgelt,
  110760.                            ULONG *pceltFetched);
  110761.  
  110762.               HRESULT __stdcall IEnumSTATPROPSETSTG_Next_Proxy(
  110763.     IEnumSTATPROPSETSTG * This,
  110764.                ULONG celt,
  110765.  
  110766.                                           STATPROPSETSTG *rgelt,
  110767.  
  110768.                                           ULONG *pceltFetched);
  110769.  
  110770.  
  110771.                 HRESULT __stdcall IEnumSTATPROPSETSTG_Next_Stub(
  110772.               IEnumSTATPROPSETSTG * This,
  110773.                ULONG celt,
  110774.                                                                                 STATPROPSETSTG *rgelt,
  110775.                            ULONG *pceltFetched);
  110776. # 1321 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\propidl.h" 3
  110777. #pragma option pop
  110778. # 261 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 2 3
  110779.  
  110780.  
  110781. #pragma region Desktop Partition
  110782.  
  110783.  
  110784.  
  110785.  
  110786.  
  110787. extern __declspec(dllimport) HRESULT __stdcall CreateStdProgressIndicator( HWND hwndParent,
  110788.                                         LPCOLESTR pszTitle,
  110789.                                         IBindStatusCallback * pIbscCaller,
  110790.                                             IBindStatusCallback ** ppIbsc);
  110791.  
  110792.  
  110793. #pragma endregion
  110794.  
  110795.  
  110796.  
  110797.  
  110798. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  110799. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  110800. #pragma warning(disable: 4103)
  110801.  
  110802. #pragma pack(pop)
  110803. # 279 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\objbase.h" 2 3
  110804.  
  110805.  
  110806.  
  110807.  
  110808. #pragma option pop
  110809. # 38 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 2 3
  110810.  
  110811. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 1 3
  110812. #pragma option push -b -a8 -pc -A- -w-pun
  110813. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  110814. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 1 3
  110815. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack8.h" 3
  110816. #pragma warning(disable: 4103)
  110817.  
  110818. #pragma pack(push,8)
  110819. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 2 3
  110820. # 43 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  110821. extern const IID IID_StdOle;
  110822. # 66 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  110823. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oaidl.h" 1 3
  110824. #pragma option push -b -a8 -pc -A- -w-pun
  110825. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oaidl.h" 3
  110826. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  110827. #pragma option push -b -a8 -pc -A- -w-pun
  110828. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  110829. #pragma option pop
  110830. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oaidl.h" 2 3
  110831.  
  110832. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  110833. #pragma option push -b -a8 -pc -A- -w-pun
  110834. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  110835. #pragma option pop
  110836. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oaidl.h" 2 3
  110837.  
  110838.  
  110839.  
  110840.  
  110841.  
  110842.  
  110843.  
  110844. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  110845. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oaidl.h" 2 3
  110846.  
  110847. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  110848. #pragma option push -b -a8 -pc -A- -w-pun
  110849. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  110850. #pragma option pop
  110851. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oaidl.h" 2 3
  110852. # 6068 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oaidl.h" 3
  110853. #pragma option pop
  110854. # 66 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 2 3
  110855.  
  110856.  
  110857.  
  110858.  
  110859.  
  110860.  
  110861. #pragma region Application Family or OneCore Family
  110862.  
  110863.  
  110864. extern __declspec(dllimport) BSTR __stdcall SysAllocString( const OLECHAR * psz);
  110865. extern __declspec(dllimport) INT __stdcall SysReAllocString( BSTR* pbstr, const OLECHAR* psz);
  110866. extern __declspec(dllimport) BSTR __stdcall SysAllocStringLen( const OLECHAR * strIn, UINT ui);
  110867.                extern __declspec(dllimport) INT __stdcall SysReAllocStringLen( BSTR* pbstr, const OLECHAR* psz, unsigned int len);
  110868. extern __declspec(dllimport) HRESULT __stdcall SysAddRefString( BSTR bstrString);
  110869. extern __declspec(dllimport) void __stdcall SysReleaseString( BSTR bstrString);
  110870. extern __declspec(dllimport) void __stdcall SysFreeString( BSTR bstrString);
  110871. extern __declspec(dllimport) UINT __stdcall SysStringLen( BSTR pbstr);
  110872.  
  110873.  
  110874. extern __declspec(dllimport) UINT __stdcall SysStringByteLen( BSTR bstr);
  110875. extern __declspec(dllimport) BSTR __stdcall SysAllocStringByteLen( LPCSTR psz, UINT len);
  110876.  
  110877.  
  110878.  
  110879.  
  110880. #pragma endregion
  110881.  
  110882.  
  110883.  
  110884.  
  110885.  
  110886. #pragma region Desktop Family or OneCore Family
  110887.  
  110888.  
  110889. extern __declspec(dllimport) INT __stdcall DosDateTimeToVariantTime( USHORT wDosDate, USHORT wDosTime, DOUBLE * pvtime);
  110890.  
  110891. extern __declspec(dllimport) INT __stdcall VariantTimeToDosDateTime( DOUBLE vtime, USHORT * pwDosDate, USHORT * pwDosTime);
  110892.  
  110893.  
  110894. #pragma endregion
  110895.  
  110896.  
  110897.  
  110898. #pragma region Application Family or OneCore Family
  110899.  
  110900.  
  110901. extern __declspec(dllimport) INT __stdcall SystemTimeToVariantTime( LPSYSTEMTIME lpSystemTime, DOUBLE *pvtime);
  110902. extern __declspec(dllimport) INT __stdcall VariantTimeToSystemTime( DOUBLE vtime, LPSYSTEMTIME lpSystemTime);
  110903.  
  110904.  
  110905. #pragma endregion
  110906.  
  110907.  
  110908.  
  110909.  
  110910.  
  110911.  
  110912.  
  110913.  
  110914. #pragma region Application Family or OneCore Family
  110915.  
  110916.  
  110917. extern __declspec(dllimport) HRESULT __stdcall SafeArrayAllocDescriptor( UINT cDims, SAFEARRAY ** ppsaOut);
  110918. extern __declspec(dllimport) HRESULT __stdcall SafeArrayAllocDescriptorEx( VARTYPE vt, UINT cDims, SAFEARRAY ** ppsaOut);
  110919. extern __declspec(dllimport) HRESULT __stdcall SafeArrayAllocData( SAFEARRAY * psa);
  110920. extern __declspec(dllimport) SAFEARRAY * __stdcall SafeArrayCreate( VARTYPE vt, UINT cDims, SAFEARRAYBOUND * rgsabound);
  110921. extern __declspec(dllimport) SAFEARRAY * __stdcall SafeArrayCreateEx( VARTYPE vt, UINT cDims, SAFEARRAYBOUND * rgsabound, PVOID pvExtra);
  110922.  
  110923. extern __declspec(dllimport) HRESULT __stdcall SafeArrayCopyData( SAFEARRAY *psaSource, SAFEARRAY *psaTarget);
  110924. extern __declspec(dllimport) void __stdcall SafeArrayReleaseDescriptor( SAFEARRAY * psa);
  110925. extern __declspec(dllimport) HRESULT __stdcall SafeArrayDestroyDescriptor( SAFEARRAY * psa);
  110926. extern __declspec(dllimport) void __stdcall SafeArrayReleaseData( PVOID pData);
  110927. extern __declspec(dllimport) HRESULT __stdcall SafeArrayDestroyData( SAFEARRAY * psa);
  110928. extern __declspec(dllimport) HRESULT __stdcall SafeArrayAddRef( SAFEARRAY * psa, PVOID *ppDataToRelease);
  110929. extern __declspec(dllimport) HRESULT __stdcall SafeArrayDestroy( SAFEARRAY * psa);
  110930. extern __declspec(dllimport) HRESULT __stdcall SafeArrayRedim( SAFEARRAY * psa, SAFEARRAYBOUND * psaboundNew);
  110931. extern __declspec(dllimport) UINT __stdcall SafeArrayGetDim( SAFEARRAY * psa);
  110932. extern __declspec(dllimport) UINT __stdcall SafeArrayGetElemsize( SAFEARRAY * psa);
  110933. extern __declspec(dllimport) HRESULT __stdcall SafeArrayGetUBound( SAFEARRAY * psa, UINT nDim, LONG * plUbound);
  110934. extern __declspec(dllimport) HRESULT __stdcall SafeArrayGetLBound( SAFEARRAY * psa, UINT nDim, LONG * plLbound);
  110935. extern __declspec(dllimport) HRESULT __stdcall SafeArrayLock( SAFEARRAY * psa);
  110936. extern __declspec(dllimport) HRESULT __stdcall SafeArrayUnlock( SAFEARRAY * psa);
  110937. extern __declspec(dllimport) HRESULT __stdcall SafeArrayAccessData( SAFEARRAY * psa, void ** ppvData);
  110938. extern __declspec(dllimport) HRESULT __stdcall SafeArrayUnaccessData( SAFEARRAY * psa);
  110939. extern __declspec(dllimport) HRESULT __stdcall SafeArrayGetElement( SAFEARRAY * psa, LONG * rgIndices, void * pv);
  110940.  
  110941. extern __declspec(dllimport) HRESULT __stdcall SafeArrayPutElement( SAFEARRAY * psa, LONG * rgIndices, void * pv);
  110942.  
  110943. extern __declspec(dllimport) HRESULT __stdcall SafeArrayCopy( SAFEARRAY * psa, SAFEARRAY ** ppsaOut);
  110944. extern __declspec(dllimport) HRESULT __stdcall SafeArrayPtrOfIndex( SAFEARRAY * psa, LONG * rgIndices, void ** ppvData);
  110945. extern __declspec(dllimport) HRESULT __stdcall SafeArraySetRecordInfo( SAFEARRAY * psa, IRecordInfo * prinfo);
  110946. extern __declspec(dllimport) HRESULT __stdcall SafeArrayGetRecordInfo( SAFEARRAY * psa, IRecordInfo ** prinfo);
  110947. extern __declspec(dllimport) HRESULT __stdcall SafeArraySetIID( SAFEARRAY * psa, const GUID * guid);
  110948. extern __declspec(dllimport) HRESULT __stdcall SafeArrayGetIID( SAFEARRAY * psa, GUID * pguid);
  110949. extern __declspec(dllimport) HRESULT __stdcall SafeArrayGetVartype( SAFEARRAY * psa, VARTYPE * pvt);
  110950. extern __declspec(dllimport) SAFEARRAY * __stdcall SafeArrayCreateVector( VARTYPE vt, LONG lLbound, ULONG cElements);
  110951. extern __declspec(dllimport) SAFEARRAY * __stdcall SafeArrayCreateVectorEx( VARTYPE vt, LONG lLbound, ULONG cElements, PVOID pvExtra);
  110952.  
  110953.  
  110954. #pragma endregion
  110955.  
  110956.  
  110957.  
  110958.  
  110959.  
  110960.  
  110961. #pragma region Application Family or OneCore Family
  110962.  
  110963.  
  110964. extern __declspec(dllimport) void __stdcall VariantInit( VARIANTARG * pvarg);
  110965. extern __declspec(dllimport) HRESULT __stdcall VariantClear( VARIANTARG * pvarg);
  110966.  
  110967. extern __declspec(dllimport) HRESULT __stdcall VariantCopy( VARIANTARG * pvargDest, const VARIANTARG * pvargSrc);
  110968.  
  110969. extern __declspec(dllimport) HRESULT __stdcall VariantCopyInd( VARIANT * pvarDest, const VARIANTARG * pvargSrc);
  110970.  
  110971. extern __declspec(dllimport) HRESULT __stdcall VariantChangeType( VARIANTARG * pvargDest,
  110972.                     const VARIANTARG * pvarSrc, USHORT wFlags, VARTYPE vt);
  110973.  
  110974. extern __declspec(dllimport) HRESULT __stdcall VariantChangeTypeEx( VARIANTARG * pvargDest,
  110975.                     const VARIANTARG * pvarSrc, LCID lcid, USHORT wFlags, VARTYPE vt);
  110976.  
  110977.  
  110978. #pragma endregion
  110979. # 210 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  110980. #pragma region Desktop Family or OneCore Family
  110981.  
  110982.  
  110983.  
  110984. extern __declspec(dllimport) HRESULT __stdcall VectorFromBstr ( BSTR bstr, SAFEARRAY ** ppsa);
  110985.  
  110986. extern __declspec(dllimport) HRESULT __stdcall BstrFromVector ( SAFEARRAY *psa, BSTR *pbstr);
  110987.  
  110988.  
  110989. #pragma endregion
  110990. # 289 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  110991. #pragma region Application Family or OneCore Family
  110992.  
  110993.  
  110994. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromI2(SHORT sIn, BYTE * pbOut);
  110995. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromI4(LONG lIn, BYTE * pbOut);
  110996. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromI8(LONG64 i64In, BYTE * pbOut);
  110997. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromR4(FLOAT fltIn, BYTE * pbOut);
  110998. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromR8(DOUBLE dblIn, BYTE * pbOut);
  110999. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromCy(CY cyIn, BYTE * pbOut);
  111000. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromDate(DATE dateIn, BYTE * pbOut);
  111001. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, BYTE * pbOut);
  111002. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromDisp(IDispatch * pdispIn, LCID lcid, BYTE * pbOut);
  111003. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromBool(VARIANT_BOOL boolIn, BYTE * pbOut);
  111004. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromI1(CHAR cIn, BYTE *pbOut);
  111005. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromUI2(USHORT uiIn, BYTE *pbOut);
  111006. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromUI4(ULONG ulIn, BYTE *pbOut);
  111007. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromUI8(ULONG64 ui64In, BYTE * pbOut);
  111008. extern __declspec(dllimport) HRESULT __stdcall VarUI1FromDec( const DECIMAL *pdecIn, BYTE *pbOut);
  111009.  
  111010. extern __declspec(dllimport) HRESULT __stdcall VarI2FromUI1(BYTE bIn, SHORT * psOut);
  111011. extern __declspec(dllimport) HRESULT __stdcall VarI2FromI4(LONG lIn, SHORT * psOut);
  111012. extern __declspec(dllimport) HRESULT __stdcall VarI2FromI8(LONG64 i64In, SHORT * psOut);
  111013. extern __declspec(dllimport) HRESULT __stdcall VarI2FromR4(FLOAT fltIn, SHORT * psOut);
  111014. extern __declspec(dllimport) HRESULT __stdcall VarI2FromR8(DOUBLE dblIn, SHORT * psOut);
  111015. extern __declspec(dllimport) HRESULT __stdcall VarI2FromCy(CY cyIn, SHORT * psOut);
  111016. extern __declspec(dllimport) HRESULT __stdcall VarI2FromDate(DATE dateIn, SHORT * psOut);
  111017. extern __declspec(dllimport) HRESULT __stdcall VarI2FromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, SHORT * psOut);
  111018. extern __declspec(dllimport) HRESULT __stdcall VarI2FromDisp(IDispatch * pdispIn, LCID lcid, SHORT * psOut);
  111019. extern __declspec(dllimport) HRESULT __stdcall VarI2FromBool(VARIANT_BOOL boolIn, SHORT * psOut);
  111020. extern __declspec(dllimport) HRESULT __stdcall VarI2FromI1(CHAR cIn, SHORT *psOut);
  111021. extern __declspec(dllimport) HRESULT __stdcall VarI2FromUI2(USHORT uiIn, SHORT *psOut);
  111022. extern __declspec(dllimport) HRESULT __stdcall VarI2FromUI4(ULONG ulIn, SHORT *psOut);
  111023. extern __declspec(dllimport) HRESULT __stdcall VarI2FromUI8(ULONG64 ui64In, SHORT * psOut);
  111024. extern __declspec(dllimport) HRESULT __stdcall VarI2FromDec( const DECIMAL *pdecIn, SHORT *psOut);
  111025.  
  111026. extern __declspec(dllimport) HRESULT __stdcall VarI4FromUI1(BYTE bIn, LONG * plOut);
  111027. extern __declspec(dllimport) HRESULT __stdcall VarI4FromI2(SHORT sIn, LONG * plOut);
  111028. extern __declspec(dllimport) HRESULT __stdcall VarI4FromI8(LONG64 i64In, LONG * plOut);
  111029. extern __declspec(dllimport) HRESULT __stdcall VarI4FromR4(FLOAT fltIn, LONG * plOut);
  111030. extern __declspec(dllimport) HRESULT __stdcall VarI4FromR8(DOUBLE dblIn, LONG * plOut);
  111031. extern __declspec(dllimport) HRESULT __stdcall VarI4FromCy(CY cyIn, LONG * plOut);
  111032. extern __declspec(dllimport) HRESULT __stdcall VarI4FromDate(DATE dateIn, LONG * plOut);
  111033. extern __declspec(dllimport) HRESULT __stdcall VarI4FromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, LONG * plOut);
  111034. extern __declspec(dllimport) HRESULT __stdcall VarI4FromDisp(IDispatch * pdispIn, LCID lcid, LONG * plOut);
  111035. extern __declspec(dllimport) HRESULT __stdcall VarI4FromBool(VARIANT_BOOL boolIn, LONG * plOut);
  111036. extern __declspec(dllimport) HRESULT __stdcall VarI4FromI1(CHAR cIn, LONG *plOut);
  111037. extern __declspec(dllimport) HRESULT __stdcall VarI4FromUI2(USHORT uiIn, LONG *plOut);
  111038. extern __declspec(dllimport) HRESULT __stdcall VarI4FromUI4(ULONG ulIn, LONG *plOut);
  111039. extern __declspec(dllimport) HRESULT __stdcall VarI4FromUI8(ULONG64 ui64In, LONG * plOut);
  111040. extern __declspec(dllimport) HRESULT __stdcall VarI4FromDec( const DECIMAL *pdecIn, LONG *plOut);
  111041.  
  111042.  
  111043.  
  111044. extern __declspec(dllimport) HRESULT __stdcall VarI8FromUI1(BYTE bIn, LONG64 * pi64Out);
  111045. extern __declspec(dllimport) HRESULT __stdcall VarI8FromI2(SHORT sIn, LONG64 * pi64Out);
  111046. extern __declspec(dllimport) HRESULT __stdcall VarI8FromR4(FLOAT fltIn, LONG64 * pi64Out);
  111047. extern __declspec(dllimport) HRESULT __stdcall VarI8FromR8(DOUBLE dblIn, LONG64 * pi64Out);
  111048. extern __declspec(dllimport) HRESULT __stdcall VarI8FromCy( CY cyIn, LONG64 * pi64Out);
  111049. extern __declspec(dllimport) HRESULT __stdcall VarI8FromDate(DATE dateIn, LONG64 * pi64Out);
  111050. extern __declspec(dllimport) HRESULT __stdcall VarI8FromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, LONG64 * pi64Out);
  111051. extern __declspec(dllimport) HRESULT __stdcall VarI8FromDisp(IDispatch * pdispIn, LCID lcid, LONG64 * pi64Out);
  111052. extern __declspec(dllimport) HRESULT __stdcall VarI8FromBool(VARIANT_BOOL boolIn, LONG64 * pi64Out);
  111053. extern __declspec(dllimport) HRESULT __stdcall VarI8FromI1(CHAR cIn, LONG64 * pi64Out);
  111054. extern __declspec(dllimport) HRESULT __stdcall VarI8FromUI2(USHORT uiIn, LONG64 * pi64Out);
  111055. extern __declspec(dllimport) HRESULT __stdcall VarI8FromUI4(ULONG ulIn, LONG64 * pi64Out);
  111056. extern __declspec(dllimport) HRESULT __stdcall VarI8FromUI8(ULONG64 ui64In, LONG64 * pi64Out);
  111057. extern __declspec(dllimport) HRESULT __stdcall VarI8FromDec( const DECIMAL *pdecIn, LONG64 * pi64Out);
  111058.  
  111059.  
  111060.  
  111061.  
  111062.  
  111063. extern __declspec(dllimport) HRESULT __stdcall VarR4FromUI1(BYTE bIn, FLOAT * pfltOut);
  111064. extern __declspec(dllimport) HRESULT __stdcall VarR4FromI2(SHORT sIn, FLOAT * pfltOut);
  111065. extern __declspec(dllimport) HRESULT __stdcall VarR4FromI4(LONG lIn, FLOAT * pfltOut);
  111066. extern __declspec(dllimport) HRESULT __stdcall VarR4FromI8(LONG64 i64In, FLOAT * pfltOut);
  111067. extern __declspec(dllimport) HRESULT __stdcall VarR4FromR8(DOUBLE dblIn, FLOAT * pfltOut);
  111068. extern __declspec(dllimport) HRESULT __stdcall VarR4FromCy(CY cyIn, FLOAT * pfltOut);
  111069. extern __declspec(dllimport) HRESULT __stdcall VarR4FromDate(DATE dateIn, FLOAT * pfltOut);
  111070. extern __declspec(dllimport) HRESULT __stdcall VarR4FromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, FLOAT *pfltOut);
  111071. extern __declspec(dllimport) HRESULT __stdcall VarR4FromDisp(IDispatch * pdispIn, LCID lcid, FLOAT * pfltOut);
  111072. extern __declspec(dllimport) HRESULT __stdcall VarR4FromBool(VARIANT_BOOL boolIn, FLOAT * pfltOut);
  111073. extern __declspec(dllimport) HRESULT __stdcall VarR4FromI1(CHAR cIn, FLOAT *pfltOut);
  111074. extern __declspec(dllimport) HRESULT __stdcall VarR4FromUI2(USHORT uiIn, FLOAT *pfltOut);
  111075. extern __declspec(dllimport) HRESULT __stdcall VarR4FromUI4(ULONG ulIn, FLOAT *pfltOut);
  111076. extern __declspec(dllimport) HRESULT __stdcall VarR4FromUI8(ULONG64 ui64In, FLOAT * pfltOut);
  111077. extern __declspec(dllimport) HRESULT __stdcall VarR4FromDec( const DECIMAL *pdecIn, FLOAT *pfltOut);
  111078.  
  111079. extern __declspec(dllimport) HRESULT __stdcall VarR8FromUI1(BYTE bIn, DOUBLE * pdblOut);
  111080. extern __declspec(dllimport) HRESULT __stdcall VarR8FromI2(SHORT sIn, DOUBLE * pdblOut);
  111081. extern __declspec(dllimport) HRESULT __stdcall VarR8FromI4(LONG lIn, DOUBLE * pdblOut);
  111082. extern __declspec(dllimport) HRESULT __stdcall VarR8FromI8(LONG64 i64In, DOUBLE * pdblOut);
  111083. extern __declspec(dllimport) HRESULT __stdcall VarR8FromR4(FLOAT fltIn, DOUBLE * pdblOut);
  111084. extern __declspec(dllimport) HRESULT __stdcall VarR8FromCy(CY cyIn, DOUBLE * pdblOut);
  111085. extern __declspec(dllimport) HRESULT __stdcall VarR8FromDate(DATE dateIn, DOUBLE * pdblOut);
  111086. extern __declspec(dllimport) HRESULT __stdcall VarR8FromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, DOUBLE *pdblOut);
  111087. extern __declspec(dllimport) HRESULT __stdcall VarR8FromDisp(IDispatch * pdispIn, LCID lcid, DOUBLE * pdblOut);
  111088. extern __declspec(dllimport) HRESULT __stdcall VarR8FromBool(VARIANT_BOOL boolIn, DOUBLE * pdblOut);
  111089. extern __declspec(dllimport) HRESULT __stdcall VarR8FromI1(CHAR cIn, DOUBLE *pdblOut);
  111090. extern __declspec(dllimport) HRESULT __stdcall VarR8FromUI2(USHORT uiIn, DOUBLE *pdblOut);
  111091. extern __declspec(dllimport) HRESULT __stdcall VarR8FromUI4(ULONG ulIn, DOUBLE *pdblOut);
  111092. extern __declspec(dllimport) HRESULT __stdcall VarR8FromUI8(ULONG64 ui64In, DOUBLE * pdblOut);
  111093. extern __declspec(dllimport) HRESULT __stdcall VarR8FromDec( const DECIMAL *pdecIn, DOUBLE *pdblOut);
  111094.  
  111095. extern __declspec(dllimport) HRESULT __stdcall VarDateFromUI1(BYTE bIn, DATE * pdateOut);
  111096. extern __declspec(dllimport) HRESULT __stdcall VarDateFromI2(SHORT sIn, DATE * pdateOut);
  111097. extern __declspec(dllimport) HRESULT __stdcall VarDateFromI4(LONG lIn, DATE * pdateOut);
  111098. extern __declspec(dllimport) HRESULT __stdcall VarDateFromI8(LONG64 i64In, DATE * pdateOut);
  111099. extern __declspec(dllimport) HRESULT __stdcall VarDateFromR4(FLOAT fltIn, DATE * pdateOut);
  111100. extern __declspec(dllimport) HRESULT __stdcall VarDateFromR8(DOUBLE dblIn, DATE * pdateOut);
  111101. extern __declspec(dllimport) HRESULT __stdcall VarDateFromCy(CY cyIn, DATE * pdateOut);
  111102. extern __declspec(dllimport) HRESULT __stdcall VarDateFromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, DATE *pdateOut);
  111103. extern __declspec(dllimport) HRESULT __stdcall VarDateFromDisp(IDispatch * pdispIn, LCID lcid, DATE * pdateOut);
  111104. extern __declspec(dllimport) HRESULT __stdcall VarDateFromBool(VARIANT_BOOL boolIn, DATE * pdateOut);
  111105. extern __declspec(dllimport) HRESULT __stdcall VarDateFromI1(CHAR cIn, DATE *pdateOut);
  111106. extern __declspec(dllimport) HRESULT __stdcall VarDateFromUI2(USHORT uiIn, DATE *pdateOut);
  111107. extern __declspec(dllimport) HRESULT __stdcall VarDateFromUI4(ULONG ulIn, DATE *pdateOut);
  111108. extern __declspec(dllimport) HRESULT __stdcall VarDateFromUI8(ULONG64 ui64In, DATE * pdateOut);
  111109. extern __declspec(dllimport) HRESULT __stdcall VarDateFromDec( const DECIMAL *pdecIn, DATE *pdateOut);
  111110.  
  111111. extern __declspec(dllimport) HRESULT __stdcall VarCyFromUI1(BYTE bIn, CY * pcyOut);
  111112. extern __declspec(dllimport) HRESULT __stdcall VarCyFromI2(SHORT sIn, CY * pcyOut);
  111113. extern __declspec(dllimport) HRESULT __stdcall VarCyFromI4(LONG lIn, CY * pcyOut);
  111114. extern __declspec(dllimport) HRESULT __stdcall VarCyFromI8(LONG64 i64In, CY * pcyOut);
  111115. extern __declspec(dllimport) HRESULT __stdcall VarCyFromR4(FLOAT fltIn, CY * pcyOut);
  111116. extern __declspec(dllimport) HRESULT __stdcall VarCyFromR8(DOUBLE dblIn, CY * pcyOut);
  111117. extern __declspec(dllimport) HRESULT __stdcall VarCyFromDate(DATE dateIn, CY * pcyOut);
  111118. extern __declspec(dllimport) HRESULT __stdcall VarCyFromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, CY * pcyOut);
  111119. extern __declspec(dllimport) HRESULT __stdcall VarCyFromDisp( IDispatch * pdispIn, LCID lcid, CY * pcyOut);
  111120. extern __declspec(dllimport) HRESULT __stdcall VarCyFromBool(VARIANT_BOOL boolIn, CY * pcyOut);
  111121. extern __declspec(dllimport) HRESULT __stdcall VarCyFromI1(CHAR cIn, CY *pcyOut);
  111122. extern __declspec(dllimport) HRESULT __stdcall VarCyFromUI2(USHORT uiIn, CY *pcyOut);
  111123. extern __declspec(dllimport) HRESULT __stdcall VarCyFromUI4(ULONG ulIn, CY *pcyOut);
  111124. extern __declspec(dllimport) HRESULT __stdcall VarCyFromUI8(ULONG64 ui64In, CY * pcyOut);
  111125. extern __declspec(dllimport) HRESULT __stdcall VarCyFromDec( const DECIMAL *pdecIn, CY *pcyOut);
  111126.  
  111127. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromUI1(BYTE bVal, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111128. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromI2(SHORT iVal, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111129. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromI4(LONG lIn, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111130. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromI8(LONG64 i64In, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111131. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromR4(FLOAT fltIn, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111132. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromR8(DOUBLE dblIn, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111133. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromCy(CY cyIn, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111134. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromDate( DATE dateIn, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111135. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromDisp(IDispatch * pdispIn, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111136. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromBool(VARIANT_BOOL boolIn, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111137. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromI1(CHAR cIn, LCID lcid, ULONG dwFlags, BSTR *pbstrOut);
  111138. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromUI2(USHORT uiIn, LCID lcid, ULONG dwFlags, BSTR *pbstrOut);
  111139. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromUI4(ULONG ulIn, LCID lcid, ULONG dwFlags, BSTR *pbstrOut);
  111140. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromUI8(ULONG64 ui64In, LCID lcid, ULONG dwFlags, BSTR * pbstrOut);
  111141. extern __declspec(dllimport) HRESULT __stdcall VarBstrFromDec( const DECIMAL *pdecIn, LCID lcid, ULONG dwFlags, BSTR *pbstrOut);
  111142.  
  111143. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromUI1(BYTE bIn, VARIANT_BOOL * pboolOut);
  111144.                extern __declspec(dllimport) HRESULT __stdcall VarBoolFromI2( SHORT sIn, VARIANT_BOOL * pboolOut);
  111145. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromI4(LONG lIn, VARIANT_BOOL * pboolOut);
  111146. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromI8(LONG64 i64In, VARIANT_BOOL * pboolOut);
  111147. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromR4(FLOAT fltIn, VARIANT_BOOL * pboolOut);
  111148. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromR8(DOUBLE dblIn, VARIANT_BOOL * pboolOut);
  111149. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromDate(DATE dateIn, VARIANT_BOOL * pboolOut);
  111150. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromCy(CY cyIn, VARIANT_BOOL * pboolOut);
  111151. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, VARIANT_BOOL * pboolOut);
  111152. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromDisp(IDispatch * pdispIn, LCID lcid, VARIANT_BOOL * pboolOut);
  111153. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromI1(CHAR cIn, VARIANT_BOOL *pboolOut);
  111154. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromUI2(USHORT uiIn, VARIANT_BOOL *pboolOut);
  111155. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromUI4(ULONG ulIn, VARIANT_BOOL *pboolOut);
  111156. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromUI8(ULONG64 i64In, VARIANT_BOOL * pboolOut);
  111157. extern __declspec(dllimport) HRESULT __stdcall VarBoolFromDec( const DECIMAL *pdecIn, VARIANT_BOOL *pboolOut);
  111158.  
  111159. extern __declspec(dllimport) HRESULT __stdcall
  111160. VarI1FromUI1(
  111161.          BYTE bIn,
  111162.           CHAR *pcOut
  111163.     );
  111164.  
  111165. extern __declspec(dllimport) HRESULT __stdcall
  111166. VarI1FromI2(
  111167.          SHORT uiIn,
  111168.           CHAR *pcOut
  111169.     );
  111170.  
  111171. extern __declspec(dllimport) HRESULT __stdcall
  111172. VarI1FromI4(
  111173.          LONG lIn,
  111174.           CHAR *pcOut
  111175.     );
  111176.  
  111177. extern __declspec(dllimport) HRESULT __stdcall
  111178. VarI1FromI8(
  111179.          LONG64 i64In,
  111180.           CHAR *pcOut
  111181.     );
  111182.  
  111183. extern __declspec(dllimport) HRESULT __stdcall
  111184. VarI1FromR4(
  111185.          FLOAT fltIn,
  111186.           CHAR *pcOut
  111187.     );
  111188.  
  111189. extern __declspec(dllimport) HRESULT __stdcall
  111190. VarI1FromR8(
  111191.          DOUBLE dblIn,
  111192.           CHAR *pcOut
  111193.     );
  111194.  
  111195. extern __declspec(dllimport) HRESULT __stdcall
  111196. VarI1FromDate(
  111197.          DATE dateIn,
  111198.           CHAR *pcOut
  111199.     );
  111200.  
  111201. extern __declspec(dllimport) HRESULT __stdcall
  111202. VarI1FromCy(
  111203.          CY cyIn,
  111204.           CHAR *pcOut
  111205.     );
  111206.  
  111207. extern __declspec(dllimport) HRESULT __stdcall
  111208. VarI1FromStr(
  111209.          LPCOLESTR strIn,
  111210.          LCID lcid,
  111211.          ULONG dwFlags,
  111212.           CHAR *pcOut
  111213.     );
  111214.  
  111215. extern __declspec(dllimport) HRESULT __stdcall
  111216. VarI1FromDisp(
  111217.          IDispatch *pdispIn,
  111218.          LCID lcid,
  111219.           CHAR *pcOut
  111220.     );
  111221.  
  111222. extern __declspec(dllimport) HRESULT __stdcall
  111223. VarI1FromBool(
  111224.          VARIANT_BOOL boolIn,
  111225.           CHAR *pcOut
  111226.     );
  111227.  
  111228. extern __declspec(dllimport) HRESULT __stdcall
  111229. VarI1FromUI2(
  111230.          USHORT uiIn,
  111231.           CHAR *pcOut
  111232.     );
  111233.  
  111234. extern __declspec(dllimport) HRESULT __stdcall
  111235. VarI1FromUI4(
  111236.          ULONG ulIn,
  111237.           CHAR *pcOut
  111238.     );
  111239.  
  111240. extern __declspec(dllimport) HRESULT __stdcall
  111241. VarI1FromUI8(
  111242.          ULONG64 i64In,
  111243.           CHAR *pcOut
  111244.     );
  111245.  
  111246. extern __declspec(dllimport) HRESULT __stdcall
  111247. VarI1FromDec(
  111248.          const DECIMAL *pdecIn,
  111249.           CHAR *pcOut
  111250.     );
  111251.  
  111252. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromUI1(BYTE bIn, USHORT *puiOut);
  111253. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromI2(SHORT uiIn, USHORT *puiOut);
  111254. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromI4(LONG lIn, USHORT *puiOut);
  111255. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromI8(LONG64 i64In, USHORT *puiOut);
  111256. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromR4(FLOAT fltIn, USHORT *puiOut);
  111257. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromR8(DOUBLE dblIn, USHORT *puiOut);
  111258. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromDate(DATE dateIn, USHORT *puiOut);
  111259. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromCy(CY cyIn, USHORT *puiOut);
  111260. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, USHORT *puiOut);
  111261. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromDisp( IDispatch *pdispIn, LCID lcid, USHORT *puiOut);
  111262. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromBool(VARIANT_BOOL boolIn, USHORT *puiOut);
  111263. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromI1(CHAR cIn, USHORT *puiOut);
  111264. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromUI4(ULONG ulIn, USHORT *puiOut);
  111265. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromUI8(ULONG64 i64In, USHORT *puiOut);
  111266. extern __declspec(dllimport) HRESULT __stdcall VarUI2FromDec( const DECIMAL *pdecIn, USHORT *puiOut);
  111267.  
  111268. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromUI1(BYTE bIn, ULONG *pulOut);
  111269. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromI2( SHORT uiIn, ULONG *pulOut);
  111270. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromI4(LONG lIn, ULONG *pulOut);
  111271. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromI8(LONG64 i64In, ULONG *plOut);
  111272. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromR4(FLOAT fltIn, ULONG *pulOut);
  111273. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromR8(DOUBLE dblIn, ULONG *pulOut);
  111274. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromDate(DATE dateIn, ULONG *pulOut);
  111275. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromCy(CY cyIn, ULONG *pulOut);
  111276. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, ULONG *pulOut);
  111277. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromDisp( IDispatch *pdispIn, LCID lcid, ULONG *pulOut);
  111278. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromBool(VARIANT_BOOL boolIn, ULONG *pulOut);
  111279. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromI1(CHAR cIn, ULONG *pulOut);
  111280. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromUI2(USHORT uiIn, ULONG *pulOut);
  111281. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromUI8(ULONG64 ui64In, ULONG *plOut);
  111282. extern __declspec(dllimport) HRESULT __stdcall VarUI4FromDec( const DECIMAL *pdecIn, ULONG *pulOut);
  111283.  
  111284.  
  111285.  
  111286. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromUI1(BYTE bIn, ULONG64 * pi64Out);
  111287. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromI2(SHORT sIn, ULONG64 * pi64Out);
  111288.  
  111289.  
  111290. #pragma endregion
  111291.  
  111292. #pragma region Desktop Family
  111293.  
  111294.  
  111295. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromI4(LONG lIn, ULONG64 * pi64Out);
  111296.  
  111297.  
  111298. #pragma endregion
  111299.  
  111300. #pragma region Application Family or OneCore Family
  111301.  
  111302.  
  111303. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromI8(LONG64 ui64In, ULONG64 * pi64Out);
  111304. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromR4(FLOAT fltIn, ULONG64 * pi64Out);
  111305. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromR8(DOUBLE dblIn, ULONG64 * pi64Out);
  111306. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromCy(CY cyIn, ULONG64 * pi64Out);
  111307. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromDate(DATE dateIn, ULONG64 * pi64Out);
  111308. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, ULONG64 * pi64Out);
  111309. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromDisp( IDispatch * pdispIn, LCID lcid, ULONG64 * pi64Out);
  111310. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromBool(VARIANT_BOOL boolIn, ULONG64 * pi64Out);
  111311. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromI1(CHAR cIn, ULONG64 * pi64Out);
  111312. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromUI2(USHORT uiIn, ULONG64 * pi64Out);
  111313. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromUI4(ULONG ulIn, ULONG64 * pi64Out);
  111314. extern __declspec(dllimport) HRESULT __stdcall VarUI8FromDec( const DECIMAL *pdecIn, ULONG64 * pi64Out);
  111315.  
  111316.  
  111317.  
  111318.  
  111319.  
  111320.  
  111321. extern __declspec(dllimport) HRESULT __stdcall VarDecFromUI1( BYTE bIn, DECIMAL *pdecOut);
  111322. extern __declspec(dllimport) HRESULT __stdcall VarDecFromI2( SHORT uiIn, DECIMAL *pdecOut);
  111323. extern __declspec(dllimport) HRESULT __stdcall VarDecFromI4( LONG lIn, DECIMAL *pdecOut);
  111324. extern __declspec(dllimport) HRESULT __stdcall VarDecFromI8(LONG64 i64In, DECIMAL *pdecOut);
  111325. extern __declspec(dllimport) HRESULT __stdcall VarDecFromR4( FLOAT fltIn, DECIMAL *pdecOut);
  111326. extern __declspec(dllimport) HRESULT __stdcall VarDecFromR8( DOUBLE dblIn, DECIMAL *pdecOut);
  111327. extern __declspec(dllimport) HRESULT __stdcall VarDecFromDate( DATE dateIn, DECIMAL *pdecOut);
  111328. extern __declspec(dllimport) HRESULT __stdcall VarDecFromCy( CY cyIn, DECIMAL *pdecOut);
  111329. extern __declspec(dllimport) HRESULT __stdcall VarDecFromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags, DECIMAL *pdecOut);
  111330. extern __declspec(dllimport) HRESULT __stdcall VarDecFromDisp( IDispatch *pdispIn, LCID lcid, DECIMAL *pdecOut);
  111331. extern __declspec(dllimport) HRESULT __stdcall VarDecFromBool( VARIANT_BOOL boolIn, DECIMAL *pdecOut);
  111332. extern __declspec(dllimport) HRESULT __stdcall VarDecFromI1( CHAR cIn, DECIMAL *pdecOut);
  111333. extern __declspec(dllimport) HRESULT __stdcall VarDecFromUI2( USHORT uiIn, DECIMAL *pdecOut);
  111334. extern __declspec(dllimport) HRESULT __stdcall VarDecFromUI4( ULONG ulIn, DECIMAL *pdecOut);
  111335. extern __declspec(dllimport) HRESULT __stdcall VarDecFromUI8(ULONG64 ui64In, DECIMAL *pdecOut);
  111336.  
  111337.  
  111338. #pragma endregion
  111339.  
  111340.  
  111341.  
  111342.  
  111343.  
  111344. #pragma region Application Family or OneCore Family
  111345.  
  111346.  
  111347. extern __declspec(dllimport) HRESULT __stdcall VarI4FromI8(LONG64 i64In, LONG *plOut);
  111348. extern __declspec(dllimport) HRESULT __stdcall VarI4FromUI8(ULONG64 ui64In, LONG *plOut);
  111349.  
  111350.  
  111351. #pragma endregion
  111352. # 660 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111353. #pragma region Desktop Family
  111354.  
  111355.  
  111356.  
  111357.  
  111358.  
  111359. #pragma endregion
  111360. # 736 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111361. typedef struct {
  111362.     INT cDig;
  111363.     ULONG dwInFlags;
  111364.     ULONG dwOutFlags;
  111365.     INT cchUsed;
  111366.     INT nBaseShift;
  111367.     INT nPwr10;
  111368. } NUMPARSE;
  111369. # 783 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111370. #pragma region Application Family or OneCore Family
  111371.  
  111372.  
  111373.  
  111374. extern __declspec(dllimport) HRESULT __stdcall VarParseNumFromStr( LPCOLESTR strIn, LCID lcid, ULONG dwFlags,
  111375.                     NUMPARSE * pnumprs, BYTE * rgbDig);
  111376.  
  111377.  
  111378. extern __declspec(dllimport) HRESULT __stdcall VarNumFromParseNum( NUMPARSE * pnumprs, BYTE * rgbDig,
  111379.                  ULONG dwVtBits, VARIANT * pvar);
  111380.  
  111381.  
  111382. #pragma endregion
  111383.  
  111384.  
  111385.  
  111386.  
  111387.  
  111388. #pragma region Application Family or OneCore Family
  111389.  
  111390.  
  111391. extern HRESULT __stdcall VarAdd( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111392. extern HRESULT __stdcall VarAnd( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111393. extern HRESULT __stdcall VarCat( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111394. extern HRESULT __stdcall VarDiv( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111395. extern HRESULT __stdcall VarEqv( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111396. extern HRESULT __stdcall VarIdiv( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111397. extern HRESULT __stdcall VarImp( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111398. extern HRESULT __stdcall VarMod( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111399. extern HRESULT __stdcall VarMul( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111400. extern HRESULT __stdcall VarOr( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111401. extern HRESULT __stdcall VarPow( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111402. extern HRESULT __stdcall VarSub( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111403. extern HRESULT __stdcall VarXor( LPVARIANT pvarLeft, LPVARIANT pvarRight, LPVARIANT pvarResult);
  111404.  
  111405. extern HRESULT __stdcall VarAbs( LPVARIANT pvarIn, LPVARIANT pvarResult);
  111406. extern HRESULT __stdcall VarFix( LPVARIANT pvarIn, LPVARIANT pvarResult);
  111407. extern HRESULT __stdcall VarInt( LPVARIANT pvarIn, LPVARIANT pvarResult);
  111408. extern HRESULT __stdcall VarNeg( LPVARIANT pvarIn, LPVARIANT pvarResult);
  111409. extern HRESULT __stdcall VarNot( LPVARIANT pvarIn, LPVARIANT pvarResult);
  111410.  
  111411. extern HRESULT __stdcall VarRound( LPVARIANT pvarIn, int cDecimals, LPVARIANT pvarResult);
  111412.  
  111413.  
  111414. extern HRESULT __stdcall VarCmp( LPVARIANT pvarLeft, LPVARIANT pvarRight, LCID lcid, ULONG dwFlags);
  111415.  
  111416.  
  111417. #pragma endregion
  111418. # 858 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111419. #pragma region Application Family or OneCore Family
  111420.  
  111421.  
  111422. extern HRESULT __stdcall VarDecAdd( LPDECIMAL pdecLeft, LPDECIMAL pdecRight, LPDECIMAL pdecResult);
  111423. extern HRESULT __stdcall VarDecDiv( LPDECIMAL pdecLeft, LPDECIMAL pdecRight, LPDECIMAL pdecResult);
  111424. extern HRESULT __stdcall VarDecMul( LPDECIMAL pdecLeft, LPDECIMAL pdecRight, LPDECIMAL pdecResult);
  111425. extern HRESULT __stdcall VarDecSub( LPDECIMAL pdecLeft, LPDECIMAL pdecRight, LPDECIMAL pdecResult);
  111426.  
  111427. extern HRESULT __stdcall VarDecAbs( LPDECIMAL pdecIn, LPDECIMAL pdecResult);
  111428. extern HRESULT __stdcall VarDecFix( LPDECIMAL pdecIn, LPDECIMAL pdecResult);
  111429. extern HRESULT __stdcall VarDecInt( LPDECIMAL pdecIn, LPDECIMAL pdecResult);
  111430. extern HRESULT __stdcall VarDecNeg( LPDECIMAL pdecIn, LPDECIMAL pdecResult);
  111431.  
  111432. extern HRESULT __stdcall VarDecRound( LPDECIMAL pdecIn, int cDecimals, LPDECIMAL pdecResult);
  111433.  
  111434. extern HRESULT __stdcall VarDecCmp( LPDECIMAL pdecLeft, LPDECIMAL pdecRight);
  111435. extern HRESULT __stdcall VarDecCmpR8( LPDECIMAL pdecLeft, double dblRight);
  111436.  
  111437.  
  111438.  
  111439.  
  111440. extern HRESULT __stdcall VarCyAdd( CY cyLeft, CY cyRight, LPCY pcyResult);
  111441. extern HRESULT __stdcall VarCyMul( CY cyLeft, CY cyRight, LPCY pcyResult);
  111442. extern HRESULT __stdcall VarCyMulI4( CY cyLeft, LONG lRight, LPCY pcyResult);
  111443. extern HRESULT __stdcall VarCyMulI8( CY cyLeft, LONG64 lRight, LPCY pcyResult);
  111444. extern HRESULT __stdcall VarCySub( CY cyLeft, CY cyRight, LPCY pcyResult);
  111445.  
  111446. extern HRESULT __stdcall VarCyAbs( CY cyIn, LPCY pcyResult);
  111447. extern HRESULT __stdcall VarCyFix( CY cyIn, LPCY pcyResult);
  111448. extern HRESULT __stdcall VarCyInt( CY cyIn, LPCY pcyResult);
  111449. extern HRESULT __stdcall VarCyNeg( CY cyIn, LPCY pcyResult);
  111450.  
  111451. extern HRESULT __stdcall VarCyRound( CY cyIn, int cDecimals, LPCY pcyResult);
  111452.  
  111453. extern HRESULT __stdcall VarCyCmp( CY cyLeft, CY cyRight);
  111454. extern HRESULT __stdcall VarCyCmpR8( CY cyLeft, double dblRight);
  111455.  
  111456.  
  111457.  
  111458.  
  111459. extern HRESULT __stdcall VarBstrCat( BSTR bstrLeft, BSTR bstrRight, LPBSTR pbstrResult);
  111460. extern HRESULT __stdcall VarBstrCmp( BSTR bstrLeft, BSTR bstrRight, LCID lcid, ULONG dwFlags);
  111461. extern HRESULT __stdcall VarR8Pow( double dblLeft, double dblRight, double *pdblResult);
  111462. extern HRESULT __stdcall VarR4CmpR8( float fltLeft, double dblRight);
  111463. extern HRESULT __stdcall VarR8Round( double dblIn, int cDecimals, double *pdblResult);
  111464.  
  111465.  
  111466. #pragma endregion
  111467. # 931 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111468. typedef struct {
  111469.     SYSTEMTIME st;
  111470.     USHORT wDayOfYear;
  111471. } UDATE;
  111472.  
  111473.  
  111474.  
  111475.  
  111476.  
  111477.  
  111478. #pragma region Application Family or OneCore Family
  111479.  
  111480.  
  111481.  
  111482. extern __declspec(dllimport) HRESULT __stdcall VarDateFromUdate( UDATE *pudateIn, ULONG dwFlags, DATE *pdateOut);
  111483. extern __declspec(dllimport) HRESULT __stdcall VarDateFromUdateEx( UDATE *pudateIn, LCID lcid, ULONG dwFlags, DATE *pdateOut);
  111484.  
  111485. extern __declspec(dllimport) HRESULT __stdcall VarUdateFromDate( DATE dateIn, ULONG dwFlags, UDATE *pudateOut);
  111486.  
  111487.  
  111488. #pragma endregion
  111489.  
  111490. #pragma region Desktop Family or OneCore Family
  111491.  
  111492.  
  111493.  
  111494.  
  111495.  
  111496.  
  111497. extern __declspec(dllimport) HRESULT __stdcall GetAltMonthNames(LCID lcid, LPOLESTR * * prgp);
  111498.  
  111499.  
  111500.  
  111501.  
  111502.  
  111503.  
  111504. #pragma endregion
  111505.  
  111506. #pragma region Application Family or OneCore Family
  111507.  
  111508.  
  111509. extern __declspec(dllimport) HRESULT __stdcall VarFormat(
  111510.       LPVARIANT pvarIn,
  111511.           LPOLESTR pstrFormat,
  111512.  int iFirstDay,
  111513.  int iFirstWeek,
  111514.  ULONG dwFlags,
  111515.        BSTR *pbstrOut
  111516.  );
  111517.  
  111518. extern __declspec(dllimport) HRESULT __stdcall VarFormatDateTime(
  111519.       LPVARIANT pvarIn,
  111520.  int iNamedFormat,
  111521.  ULONG dwFlags,
  111522.        BSTR *pbstrOut
  111523.  );
  111524.  
  111525. extern __declspec(dllimport) HRESULT __stdcall VarFormatNumber(
  111526.       LPVARIANT pvarIn,
  111527.  int iNumDig,
  111528.  int iIncLead,
  111529.  int iUseParens,
  111530.  int iGroup,
  111531.  ULONG dwFlags,
  111532.        BSTR *pbstrOut
  111533.  );
  111534.  
  111535. extern __declspec(dllimport) HRESULT __stdcall VarFormatPercent(
  111536.       LPVARIANT pvarIn,
  111537.  int iNumDig,
  111538.  int iIncLead,
  111539.  int iUseParens,
  111540.  int iGroup,
  111541.  ULONG dwFlags,
  111542.        BSTR *pbstrOut
  111543.  );
  111544.  
  111545. extern __declspec(dllimport) HRESULT __stdcall VarFormatCurrency(
  111546.       LPVARIANT pvarIn,
  111547.  int iNumDig,
  111548.  int iIncLead,
  111549.  int iUseParens,
  111550.  int iGroup,
  111551.  ULONG dwFlags,
  111552.        BSTR *pbstrOut
  111553.  );
  111554.  
  111555. extern __declspec(dllimport) HRESULT __stdcall VarWeekdayName(
  111556.  int iWeekday,
  111557.  int fAbbrev,
  111558.  int iFirstDay,
  111559.  ULONG dwFlags,
  111560.        BSTR *pbstrOut
  111561.  );
  111562.  
  111563. extern __declspec(dllimport) HRESULT __stdcall VarMonthName(
  111564.  int iMonth,
  111565.  int fAbbrev,
  111566.  ULONG dwFlags,
  111567.        BSTR *pbstrOut
  111568.  );
  111569.  
  111570. extern __declspec(dllimport) HRESULT __stdcall VarFormatFromTokens(
  111571.       LPVARIANT pvarIn,
  111572.           LPOLESTR pstrFormat,
  111573.                                                              LPBYTE pbTokCur,
  111574.  ULONG dwFlags,
  111575.        BSTR *pbstrOut,
  111576.  LCID lcid
  111577.  );
  111578.  
  111579. extern __declspec(dllimport) HRESULT __stdcall VarTokenizeFormatString(
  111580.           LPOLESTR pstrFormat,
  111581.                         LPBYTE rgbTok,
  111582.  int cbTok,
  111583.  int iFirstDay,
  111584.  int iFirstWeek,
  111585.  LCID lcid,
  111586.           int *pcbActual
  111587.  );
  111588.  
  111589.  
  111590. #pragma endregion
  111591.  
  111592. #pragma region Desktop Family or OneCore Family
  111593.  
  111594.  
  111595.  
  111596.  
  111597.  
  111598.  
  111599. typedef ITypeLib *LPTYPELIB;
  111600.  
  111601.  
  111602.  
  111603.  
  111604.  
  111605.  
  111606.  
  111607. typedef LONG DISPID;
  111608. typedef DISPID MEMBERID;
  111609.  
  111610.  
  111611.  
  111612.  
  111613.  
  111614. #pragma endregion
  111615.  
  111616. #pragma region Application Family or OneCore Family
  111617. # 1089 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111618. #pragma endregion
  111619.  
  111620. #pragma region Desktop Family or OneCore Family
  111621.  
  111622.  
  111623. typedef ITypeInfo *LPTYPEINFO;
  111624.  
  111625.  
  111626.  
  111627.  
  111628.  
  111629.  
  111630. typedef ITypeComp *LPTYPECOMP;
  111631.  
  111632.  
  111633.  
  111634.  
  111635.  
  111636.  
  111637. typedef ICreateTypeLib * LPCREATETYPELIB;
  111638.  
  111639. typedef ICreateTypeInfo * LPCREATETYPEINFO;
  111640. # 1120 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111641. extern __declspec(dllimport) ULONG __stdcall LHashValOfNameSysA(SYSKIND syskind, LCID lcid,
  111642.             LPCSTR szName);
  111643.  
  111644.  
  111645.  
  111646. extern __declspec(dllimport) ULONG __stdcall
  111647. LHashValOfNameSys(SYSKIND syskind, LCID lcid, const OLECHAR * szName);
  111648. # 1139 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111649. extern __declspec(dllimport) HRESULT __stdcall LoadTypeLib( LPCOLESTR szFile, ITypeLib ** pptlib);
  111650.  
  111651.  
  111652.  
  111653. typedef enum tagREGKIND
  111654. {
  111655.     REGKIND_DEFAULT,
  111656.     REGKIND_REGISTER,
  111657.     REGKIND_NONE
  111658. } REGKIND;
  111659. # 1158 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111660. extern __declspec(dllimport) HRESULT __stdcall LoadTypeLibEx(LPCOLESTR szFile, REGKIND regkind,
  111661.             ITypeLib ** pptlib);
  111662.  
  111663.  
  111664.  
  111665.  
  111666. extern __declspec(dllimport) HRESULT __stdcall LoadRegTypeLib(const GUID * rguid, WORD wVerMajor, WORD wVerMinor,
  111667.             LCID lcid, ITypeLib ** pptlib);
  111668.  
  111669.  
  111670.  
  111671. extern __declspec(dllimport) HRESULT __stdcall QueryPathOfRegTypeLib(const GUID * guid, USHORT wMaj, USHORT wMin,
  111672.             LCID lcid, LPBSTR lpbstrPathName);
  111673.  
  111674.  
  111675.  
  111676.  
  111677. extern __declspec(dllimport) HRESULT __stdcall RegisterTypeLib(ITypeLib * ptlib, LPCOLESTR szFullPath,
  111678.                      LPCOLESTR szHelpDir);
  111679.  
  111680.  
  111681.  
  111682.  
  111683.  
  111684. extern __declspec(dllimport) HRESULT __stdcall UnRegisterTypeLib(const GUID * libID, WORD wVerMajor,
  111685.             WORD wVerMinor, LCID lcid, SYSKIND syskind);
  111686.  
  111687.  
  111688.  
  111689. extern __declspec(dllimport) HRESULT __stdcall RegisterTypeLibForUser(ITypeLib *ptlib, OLECHAR *szFullPath,
  111690.             OLECHAR *szHelpDir);
  111691.  
  111692.  
  111693.  
  111694. extern __declspec(dllimport) HRESULT __stdcall UnRegisterTypeLibForUser(
  111695.     const GUID * libID,
  111696.     WORD wMajorVerNum,
  111697.     WORD wMinorVerNum,
  111698.     LCID lcid,
  111699.     SYSKIND syskind);
  111700.  
  111701.  
  111702. extern __declspec(dllimport) HRESULT __stdcall CreateTypeLib(SYSKIND syskind, LPCOLESTR szFile,
  111703.             ICreateTypeLib ** ppctlib);
  111704.  
  111705.  
  111706. extern __declspec(dllimport) HRESULT __stdcall CreateTypeLib2(SYSKIND syskind, LPCOLESTR szFile,
  111707.             ICreateTypeLib2 **ppctlib);
  111708.  
  111709.  
  111710.  
  111711.  
  111712.  
  111713.  
  111714. typedef IDispatch *LPDISPATCH;
  111715.  
  111716. typedef struct tagPARAMDATA {
  111717.     OLECHAR * szName;
  111718.     VARTYPE vt;
  111719. } PARAMDATA, * LPPARAMDATA;
  111720.  
  111721. typedef struct tagMETHODDATA {
  111722.     OLECHAR * szName;
  111723.     PARAMDATA * ppdata;
  111724.     DISPID dispid;
  111725.     UINT iMeth;
  111726.     CALLCONV cc;
  111727.     UINT cArgs;
  111728.     WORD wFlags;
  111729.     VARTYPE vtReturn;
  111730. } METHODDATA, * LPMETHODDATA;
  111731.  
  111732. typedef struct tagINTERFACEDATA {
  111733.     METHODDATA * pmethdata;
  111734.     UINT cMembers;
  111735. } INTERFACEDATA, * LPINTERFACEDATA;
  111736.  
  111737.  
  111738.  
  111739.  
  111740.  
  111741.  
  111742.  
  111743. extern __declspec(dllimport) HRESULT __stdcall DispGetParam(
  111744.       DISPPARAMS * pdispparams,
  111745.  UINT position,
  111746.  VARTYPE vtTarg,
  111747.        VARIANT * pvarResult,
  111748.            UINT * puArgErr
  111749.  );
  111750.  
  111751.  
  111752.  
  111753.                extern __declspec(dllimport) HRESULT __stdcall DispGetIDsOfNames(ITypeInfo * ptinfo, LPOLESTR* rgszNames,
  111754.             UINT cNames, DISPID * rgdispid);
  111755.  
  111756.  
  111757.  
  111758.  
  111759.  
  111760.  
  111761. #pragma endregion
  111762.  
  111763. #pragma region Application Family or OneCore Family
  111764.  
  111765.  
  111766. extern __declspec(dllimport) HRESULT __stdcall DispInvoke(void * _this, ITypeInfo * ptinfo, DISPID dispidMember,
  111767.             WORD wFlags, DISPPARAMS * pparams, VARIANT * pvarResult,
  111768.             EXCEPINFO * pexcepinfo, UINT * puArgErr);
  111769.  
  111770.  
  111771. #pragma endregion
  111772.  
  111773. #pragma region Desktop Family or OneCore Family
  111774.  
  111775.  
  111776.  
  111777.  
  111778.  
  111779. extern __declspec(dllimport) HRESULT __stdcall CreateDispTypeInfo(INTERFACEDATA * pidata, LCID lcid,
  111780.             ITypeInfo ** pptinfo);
  111781.  
  111782.  
  111783.  
  111784.  
  111785.  
  111786. extern __declspec(dllimport) HRESULT __stdcall CreateStdDispatch(IUnknown * punkOuter, void * pvThis,
  111787.             ITypeInfo * ptinfo, IUnknown ** ppunkStdDisp);
  111788.  
  111789.  
  111790.  
  111791.  
  111792. extern __declspec(dllimport) HRESULT __stdcall DispCallFunc(void * pvInstance, ULONG_PTR oVft, CALLCONV cc,
  111793.             VARTYPE vtReturn, UINT cActuals, VARTYPE * prgvt,
  111794.             VARIANTARG ** prgpvarg, VARIANT * pvargResult);
  111795. # 1304 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111796. extern __declspec(dllimport) HRESULT __stdcall RegisterActiveObject(IUnknown * punk, const IID * rclsid,
  111797.             DWORD dwFlags, DWORD * pdwRegister);
  111798.  
  111799. extern __declspec(dllimport) HRESULT __stdcall RevokeActiveObject(DWORD dwRegister, void * pvReserved);
  111800.  
  111801. extern __declspec(dllimport) HRESULT __stdcall GetActiveObject(const IID * rclsid, void * pvReserved,
  111802.             IUnknown ** ppunk);
  111803.  
  111804.  
  111805.  
  111806.  
  111807.  
  111808. extern __declspec(dllimport) HRESULT __stdcall SetErrorInfo( ULONG dwReserved, IErrorInfo * perrinfo);
  111809.  
  111810. extern __declspec(dllimport) HRESULT __stdcall GetErrorInfo( ULONG dwReserved, IErrorInfo ** pperrinfo);
  111811.  
  111812. extern __declspec(dllimport) HRESULT __stdcall CreateErrorInfo( ICreateErrorInfo ** pperrinfo);
  111813.  
  111814.  
  111815.  
  111816.  
  111817.  
  111818. extern __declspec(dllimport) HRESULT __stdcall GetRecordInfoFromTypeInfo(ITypeInfo * pTypeInfo,
  111819.             IRecordInfo ** ppRecInfo);
  111820.  
  111821. extern __declspec(dllimport) HRESULT __stdcall GetRecordInfoFromGuids(const GUID * rGuidTypeLib,
  111822.             ULONG uVerMajor, ULONG uVerMinor, LCID lcid,
  111823.             const GUID * rGuidTypeInfo, IRecordInfo ** ppRecInfo);
  111824.  
  111825.  
  111826.  
  111827.  
  111828.  
  111829. extern __declspec(dllimport) ULONG __stdcall OaBuildVersion(void);
  111830.  
  111831. extern __declspec(dllimport) void __stdcall ClearCustData(LPCUSTDATA pCustData);
  111832.  
  111833.  
  111834. extern __declspec(dllimport) void __stdcall OaEnablePerUserTLibRegistration(void);
  111835.  
  111836.  
  111837.  
  111838. #pragma endregion
  111839. # 1429 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 3
  111840. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  111841. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  111842. #pragma warning(disable: 4103)
  111843.  
  111844. #pragma pack(pop)
  111845. # 1429 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleauto.h" 2 3
  111846.  
  111847.  
  111848.  
  111849.  
  111850.  
  111851.  
  111852.  
  111853.  
  111854. #pragma option pop
  111855. # 39 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 2 3
  111856. # 72 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  111857. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleidl.h" 1 3
  111858. #pragma option push -b -a8 -pc -A- -w-pun
  111859. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleidl.h" 3
  111860. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  111861. #pragma option push -b -a8 -pc -A- -w-pun
  111862. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  111863. #pragma option pop
  111864. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleidl.h" 2 3
  111865.  
  111866. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  111867. #pragma option push -b -a8 -pc -A- -w-pun
  111868. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  111869. #pragma option pop
  111870. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleidl.h" 2 3
  111871.  
  111872.  
  111873.  
  111874.  
  111875.  
  111876.  
  111877.  
  111878. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  111879. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleidl.h" 2 3
  111880.  
  111881. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  111882. #pragma option push -b -a8 -pc -A- -w-pun
  111883. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  111884. #pragma option pop
  111885. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleidl.h" 2 3
  111886. # 4216 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\oleidl.h" 3
  111887. #pragma option pop
  111888. # 72 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 2 3
  111889.  
  111890.  
  111891.  
  111892. #pragma region Desktop Family
  111893. # 88 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  111894. extern __declspec(dllimport) HRESULT __stdcall CreateDataAdviseHolder( LPDATAADVISEHOLDER * ppDAHolder);
  111895.  
  111896.  
  111897.  
  111898.  
  111899. extern __declspec(dllimport) DWORD __stdcall OleBuildVersion( void );
  111900.  
  111901.                extern __declspec(dllimport) HRESULT __stdcall WriteFmtUserTypeStg ( LPSTORAGE pstg, CLIPFORMAT cf, LPOLESTR lpszUserType);
  111902. extern __declspec(dllimport) HRESULT __stdcall ReadFmtUserTypeStg ( LPSTORAGE pstg, CLIPFORMAT * pcf, LPOLESTR * lplpszUserType);
  111903.  
  111904.  
  111905.  
  111906.  
  111907.                extern __declspec(dllimport) HRESULT __stdcall OleInitialize( LPVOID pvReserved);
  111908. extern __declspec(dllimport) void __stdcall OleUninitialize(void);
  111909.  
  111910.  
  111911.  
  111912.  
  111913.  
  111914. extern __declspec(dllimport) HRESULT __stdcall OleQueryLinkFromData( LPDATAOBJECT pSrcDataObject);
  111915. extern __declspec(dllimport) HRESULT __stdcall OleQueryCreateFromData( LPDATAOBJECT pSrcDataObject);
  111916.  
  111917.  
  111918.  
  111919.  
  111920. extern __declspec(dllimport) HRESULT __stdcall OleCreate( const IID * rclsid, const IID * riid, DWORD renderopt,
  111921.                    LPFORMATETC pFormatEtc, LPOLECLIENTSITE pClientSite,
  111922.                    LPSTORAGE pStg, LPVOID * ppvObj);
  111923.  
  111924.  
  111925. extern __declspec(dllimport) HRESULT __stdcall OleCreateEx( const IID * rclsid, const IID * riid, DWORD dwFlags,
  111926.                    DWORD renderopt, ULONG cFormats, DWORD* rgAdvf,
  111927.                    LPFORMATETC rgFormatEtc, IAdviseSink * lpAdviseSink,
  111928.                     DWORD * rgdwConnection, LPOLECLIENTSITE pClientSite,
  111929.                    LPSTORAGE pStg, LPVOID * ppvObj);
  111930.  
  111931. extern __declspec(dllimport) HRESULT __stdcall OleCreateFromData( LPDATAOBJECT pSrcDataObj, const IID * riid,
  111932.                    DWORD renderopt, LPFORMATETC pFormatEtc,
  111933.                    LPOLECLIENTSITE pClientSite, LPSTORAGE pStg,
  111934.                     LPVOID * ppvObj);
  111935.  
  111936.  
  111937. extern __declspec(dllimport) HRESULT __stdcall OleCreateFromDataEx( LPDATAOBJECT pSrcDataObj, const IID * riid,
  111938.                    DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD* rgAdvf,
  111939.                    LPFORMATETC rgFormatEtc, IAdviseSink * lpAdviseSink,
  111940.                     DWORD * rgdwConnection, LPOLECLIENTSITE pClientSite,
  111941.                    LPSTORAGE pStg, LPVOID * ppvObj);
  111942.  
  111943. extern __declspec(dllimport) HRESULT __stdcall OleCreateLinkFromData( LPDATAOBJECT pSrcDataObj, const IID * riid,
  111944.                    DWORD renderopt, LPFORMATETC pFormatEtc,
  111945.                    LPOLECLIENTSITE pClientSite, LPSTORAGE pStg,
  111946.                     LPVOID * ppvObj);
  111947.  
  111948.  
  111949. extern __declspec(dllimport) HRESULT __stdcall OleCreateLinkFromDataEx( LPDATAOBJECT pSrcDataObj, const IID * riid,
  111950.                    DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD* rgAdvf,
  111951.                    LPFORMATETC rgFormatEtc, IAdviseSink * lpAdviseSink,
  111952.                        DWORD * rgdwConnection, LPOLECLIENTSITE pClientSite,
  111953.                    LPSTORAGE pStg, LPVOID * ppvObj);
  111954.  
  111955. extern __declspec(dllimport) HRESULT __stdcall OleCreateStaticFromData( LPDATAOBJECT pSrcDataObj, const IID * iid,
  111956.                    DWORD renderopt, LPFORMATETC pFormatEtc,
  111957.                    LPOLECLIENTSITE pClientSite, LPSTORAGE pStg,
  111958.                     LPVOID * ppvObj);
  111959.  
  111960.  
  111961. extern __declspec(dllimport) HRESULT __stdcall OleCreateLink( LPMONIKER pmkLinkSrc, const IID * riid,
  111962.                DWORD renderopt, LPFORMATETC lpFormatEtc,
  111963.                LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID * ppvObj);
  111964.  
  111965. extern __declspec(dllimport) HRESULT __stdcall OleCreateLinkEx( LPMONIKER pmkLinkSrc, const IID * riid,
  111966.                DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD* rgAdvf,
  111967.                LPFORMATETC rgFormatEtc, IAdviseSink * lpAdviseSink,
  111968.                 DWORD * rgdwConnection, LPOLECLIENTSITE pClientSite,
  111969.                LPSTORAGE pStg, LPVOID * ppvObj);
  111970.  
  111971. extern __declspec(dllimport) HRESULT __stdcall OleCreateLinkToFile( LPCOLESTR lpszFileName, const IID * riid,
  111972.                DWORD renderopt, LPFORMATETC lpFormatEtc,
  111973.                LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID * ppvObj);
  111974.  
  111975. extern __declspec(dllimport) HRESULT __stdcall OleCreateLinkToFileEx( LPCOLESTR lpszFileName, const IID * riid,
  111976.                DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD* rgAdvf,
  111977.                LPFORMATETC rgFormatEtc, IAdviseSink * lpAdviseSink,
  111978.                 DWORD * rgdwConnection, LPOLECLIENTSITE pClientSite,
  111979.                LPSTORAGE pStg, LPVOID * ppvObj);
  111980.  
  111981. extern __declspec(dllimport) HRESULT __stdcall OleCreateFromFile( const IID * rclsid, LPCOLESTR lpszFileName, const IID * riid,
  111982.                DWORD renderopt, LPFORMATETC lpFormatEtc,
  111983.                LPOLECLIENTSITE pClientSite, LPSTORAGE pStg, LPVOID * ppvObj);
  111984.  
  111985.  
  111986. extern __declspec(dllimport) HRESULT __stdcall OleCreateFromFileEx( const IID * rclsid, LPCOLESTR lpszFileName, const IID * riid,
  111987.                DWORD dwFlags, DWORD renderopt, ULONG cFormats, DWORD* rgAdvf,
  111988.                LPFORMATETC rgFormatEtc, IAdviseSink * lpAdviseSink,
  111989.                 DWORD * rgdwConnection, LPOLECLIENTSITE pClientSite,
  111990.                LPSTORAGE pStg, LPVOID * ppvObj);
  111991.  
  111992. extern __declspec(dllimport) HRESULT __stdcall OleLoad( LPSTORAGE pStg, const IID * riid, LPOLECLIENTSITE pClientSite,
  111993.                 LPVOID * ppvObj);
  111994.  
  111995. extern __declspec(dllimport) HRESULT __stdcall OleSave( LPPERSISTSTORAGE pPS, LPSTORAGE pStg, BOOL fSameAsLoad);
  111996.  
  111997. extern __declspec(dllimport) HRESULT __stdcall OleLoadFromStream( LPSTREAM pStm, const IID * iidInterface, LPVOID * ppvObj);
  111998. extern __declspec(dllimport) HRESULT __stdcall OleSaveToStream( LPPERSISTSTREAM pPStm, LPSTREAM pStm );
  111999.  
  112000.  
  112001. extern __declspec(dllimport) HRESULT __stdcall OleSetContainedObject( LPUNKNOWN pUnknown, BOOL fContained);
  112002. extern __declspec(dllimport) HRESULT __stdcall OleNoteObjectVisible( LPUNKNOWN pUnknown, BOOL fVisible);
  112003.  
  112004.  
  112005.  
  112006.  
  112007. extern __declspec(dllimport) HRESULT __stdcall RegisterDragDrop( HWND hwnd, LPDROPTARGET pDropTarget);
  112008. extern __declspec(dllimport) HRESULT __stdcall RevokeDragDrop( HWND hwnd);
  112009. extern __declspec(dllimport) HRESULT __stdcall DoDragDrop( LPDATAOBJECT pDataObj, LPDROPSOURCE pDropSource,
  112010.                DWORD dwOKEffects, LPDWORD pdwEffect);
  112011.  
  112012.  
  112013.  
  112014. extern __declspec(dllimport) HRESULT __stdcall OleSetClipboard( LPDATAOBJECT pDataObj);
  112015. extern __declspec(dllimport) HRESULT __stdcall OleGetClipboard( LPDATAOBJECT * ppDataObj);
  112016.  
  112017. extern __declspec(dllimport) HRESULT __stdcall OleGetClipboardWithEnterpriseInfo( IDataObject** dataObject,
  112018.                                           PWSTR* dataEnterpriseId,
  112019.                                           PWSTR* sourceDescription,
  112020.                                           PWSTR* targetDescription,
  112021.                                           PWSTR* dataDescription);
  112022.  
  112023. extern __declspec(dllimport) HRESULT __stdcall OleFlushClipboard(void);
  112024. extern __declspec(dllimport) HRESULT __stdcall OleIsCurrentClipboard( LPDATAOBJECT pDataObj);
  112025.  
  112026.  
  112027.  
  112028. extern __declspec(dllimport) HOLEMENU __stdcall OleCreateMenuDescriptor ( HMENU hmenuCombined,
  112029.                                    LPOLEMENUGROUPWIDTHS lpMenuWidths);
  112030. extern __declspec(dllimport) HRESULT __stdcall OleSetMenuDescriptor ( HOLEMENU holemenu, HWND hwndFrame,
  112031.                                    HWND hwndActiveObject,
  112032.                                    LPOLEINPLACEFRAME lpFrame,
  112033.                                    LPOLEINPLACEACTIVEOBJECT lpActiveObj);
  112034. extern __declspec(dllimport) HRESULT __stdcall OleDestroyMenuDescriptor ( HOLEMENU holemenu);
  112035.  
  112036. extern __declspec(dllimport) HRESULT __stdcall OleTranslateAccelerator ( LPOLEINPLACEFRAME lpFrame,
  112037.                                LPOLEINPLACEFRAMEINFO lpFrameInfo, LPMSG lpmsg);
  112038.  
  112039.  
  112040.  
  112041.  
  112042. extern __declspec(dllimport) HANDLE __stdcall OleDuplicateData ( HANDLE hSrc, CLIPFORMAT cfFormat,
  112043.                            UINT uiFlags);
  112044.  
  112045.  
  112046.  
  112047. extern __declspec(dllimport) HRESULT __stdcall OleDraw ( LPUNKNOWN pUnknown, DWORD dwAspect, HDC hdcDraw,
  112048.                        LPCRECT lprcBounds);
  112049.  
  112050.                extern __declspec(dllimport) HRESULT __stdcall OleRun( LPUNKNOWN pUnknown);
  112051. extern __declspec(dllimport) BOOL __stdcall OleIsRunning( LPOLEOBJECT pObject);
  112052. extern __declspec(dllimport) HRESULT __stdcall OleLockRunning( LPUNKNOWN pUnknown, BOOL fLock, BOOL fLastUnlockCloses);
  112053.  
  112054. extern __declspec(dllimport) void __stdcall ReleaseStgMedium( LPSTGMEDIUM);
  112055.  
  112056. extern __declspec(dllimport) HRESULT __stdcall CreateOleAdviseHolder( LPOLEADVISEHOLDER * ppOAHolder);
  112057.  
  112058. extern __declspec(dllimport) HRESULT __stdcall OleCreateDefaultHandler( const IID * clsid, LPUNKNOWN pUnkOuter,
  112059.                        const IID * riid, LPVOID * lplpObj);
  112060.  
  112061. extern __declspec(dllimport) HRESULT __stdcall OleCreateEmbeddingHelper( const IID * clsid, LPUNKNOWN pUnkOuter,
  112062.                        DWORD flags, LPCLASSFACTORY pCF,
  112063.                        const IID * riid, LPVOID * lplpObj);
  112064.  
  112065. extern __declspec(dllimport) BOOL __stdcall IsAccelerator( HACCEL hAccel, int cAccelEntries, LPMSG lpMsg,
  112066.                                             WORD * lpwCmd);
  112067.  
  112068.  
  112069. extern __declspec(dllimport) HGLOBAL __stdcall OleGetIconOfFile( LPOLESTR lpszPath, BOOL fUseFileAsLabel);
  112070.  
  112071. extern __declspec(dllimport) HGLOBAL __stdcall OleGetIconOfClass( const IID * rclsid, LPOLESTR lpszLabel,
  112072.                                            BOOL fUseTypeAsLabel);
  112073.  
  112074. extern __declspec(dllimport) HGLOBAL __stdcall OleMetafilePictFromIconAndLabel( HICON hIcon, LPOLESTR lpszLabel,
  112075.                                              LPOLESTR lpszSourceFile, UINT iIconIndex);
  112076.  
  112077.  
  112078.  
  112079.  
  112080.  
  112081.                extern __declspec(dllimport) HRESULT __stdcall OleRegGetUserType ( const IID * clsid, DWORD dwFormOfType,
  112082.                                                  LPOLESTR * pszUserType);
  112083.  
  112084. extern __declspec(dllimport) HRESULT __stdcall OleRegGetMiscStatus ( const IID * clsid, DWORD dwAspect,
  112085.                                             DWORD * pdwStatus);
  112086.  
  112087. extern __declspec(dllimport) HRESULT __stdcall OleRegEnumFormatEtc( const IID * clsid, DWORD dwDirection,
  112088.                                        LPENUMFORMATETC * ppenum);
  112089.  
  112090. extern __declspec(dllimport) HRESULT __stdcall OleRegEnumVerbs ( const IID * clsid, LPENUMOLEVERB * ppenum);
  112091.  
  112092.  
  112093.  
  112094.  
  112095.  
  112096.  
  112097. typedef struct _OLESTREAM * LPOLESTREAM;
  112098.  
  112099. typedef struct _OLESTREAMVTBL
  112100. {
  112101.     DWORD (__stdcall* Get)(LPOLESTREAM, void *, DWORD);
  112102.     DWORD (__stdcall* Put)(LPOLESTREAM, const void *, DWORD);
  112103. } OLESTREAMVTBL;
  112104. typedef OLESTREAMVTBL * LPOLESTREAMVTBL;
  112105.  
  112106. typedef struct _OLESTREAM
  112107. {
  112108.     LPOLESTREAMVTBL lpstbl;
  112109. } OLESTREAM;
  112110.  
  112111.  
  112112. extern __declspec(dllimport) HRESULT __stdcall OleConvertOLESTREAMToIStorage
  112113.     ( LPOLESTREAM lpolestream,
  112114.         LPSTORAGE pstg,
  112115.        const DVTARGETDEVICE * ptd);
  112116.  
  112117. extern __declspec(dllimport) HRESULT __stdcall OleConvertIStorageToOLESTREAM
  112118.     ( LPSTORAGE pstg,
  112119.         LPOLESTREAM lpolestream);
  112120.  
  112121.  
  112122.  
  112123.  
  112124. extern __declspec(dllimport) HRESULT __stdcall OleDoAutoConvert( LPSTORAGE pStg, LPCLSID pClsidNew);
  112125. extern __declspec(dllimport) HRESULT __stdcall OleGetAutoConvert( const IID * clsidOld, LPCLSID pClsidNew);
  112126. extern __declspec(dllimport) HRESULT __stdcall OleSetAutoConvert( const IID * clsidOld, const IID * clsidNew);
  112127.  
  112128. extern __declspec(dllimport) HRESULT __stdcall SetConvertStg( LPSTORAGE pStg, BOOL fConvert);
  112129.  
  112130.  
  112131. extern __declspec(dllimport) HRESULT __stdcall OleConvertIStorageToOLESTREAMEx
  112132.     ( LPSTORAGE pstg,
  112133.  
  112134.         CLIPFORMAT cfFormat,
  112135.         LONG lWidth,
  112136.         LONG lHeight,
  112137.         DWORD dwSize,
  112138.         LPSTGMEDIUM pmedium,
  112139.          LPOLESTREAM polestm);
  112140.  
  112141. extern __declspec(dllimport) HRESULT __stdcall OleConvertOLESTREAMToIStorageEx
  112142.     ( LPOLESTREAM polestm,
  112143.          LPSTORAGE pstg,
  112144.  
  112145.          CLIPFORMAT * pcfFormat,
  112146.          LONG * plwWidth,
  112147.          LONG * plHeight,
  112148.          DWORD * pdwSize,
  112149.          LPSTGMEDIUM pmedium);
  112150.  
  112151.  
  112152. #pragma endregion
  112153.  
  112154.  
  112155.  
  112156. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  112157. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  112158. #pragma warning(disable: 4103)
  112159.  
  112160. #pragma pack(pop)
  112161. # 349 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 2 3
  112162. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  112163. #pragma option pop
  112164. # 263 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 2 3
  112165.  
  112166.  
  112167.  
  112168. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 1 3
  112169. #pragma option push -b -a8 -pc -A- -w-pun
  112170. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112171. extern const GUID IID_IPrintDialogCallback;
  112172.  
  112173.  
  112174.  
  112175.  
  112176.  
  112177.  
  112178. extern const GUID IID_IPrintDialogServices;
  112179. # 47 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112180. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 1 3
  112181. #pragma option push -b -a8 -pc -A- -w-pun
  112182. # 918 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\prsht.h" 3
  112183. #pragma option pop
  112184. # 47 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 2 3
  112185.  
  112186.  
  112187.  
  112188. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 1 3
  112189. # 24 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\pshpack1.h" 3
  112190. #pragma warning(disable: 4103)
  112191.  
  112192. #pragma pack(push,1)
  112193. # 50 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 2 3
  112194.  
  112195.  
  112196.  
  112197.  
  112198.  
  112199.  
  112200.  
  112201. #pragma region Desktop Family
  112202. # 105 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112203. typedef UINT_PTR (__stdcall *LPOFNHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
  112204. # 121 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112205. typedef struct tagOFN_NT4A {
  112206.    DWORD lStructSize;
  112207.    HWND hwndOwner;
  112208.    HINSTANCE hInstance;
  112209.    LPCSTR lpstrFilter;
  112210.    LPSTR lpstrCustomFilter;
  112211.    DWORD nMaxCustFilter;
  112212.    DWORD nFilterIndex;
  112213.    LPSTR lpstrFile;
  112214.    DWORD nMaxFile;
  112215.    LPSTR lpstrFileTitle;
  112216.    DWORD nMaxFileTitle;
  112217.    LPCSTR lpstrInitialDir;
  112218.    LPCSTR lpstrTitle;
  112219.    DWORD Flags;
  112220.    WORD nFileOffset;
  112221.    WORD nFileExtension;
  112222.    LPCSTR lpstrDefExt;
  112223.    LPARAM lCustData;
  112224.    LPOFNHOOKPROC lpfnHook;
  112225.    LPCSTR lpTemplateName;
  112226. } OPENFILENAME_NT4A, *LPOPENFILENAME_NT4A;
  112227. typedef struct tagOFN_NT4W {
  112228.    DWORD lStructSize;
  112229.    HWND hwndOwner;
  112230.    HINSTANCE hInstance;
  112231.    LPCWSTR lpstrFilter;
  112232.    LPWSTR lpstrCustomFilter;
  112233.    DWORD nMaxCustFilter;
  112234.    DWORD nFilterIndex;
  112235.    LPWSTR lpstrFile;
  112236.    DWORD nMaxFile;
  112237.    LPWSTR lpstrFileTitle;
  112238.    DWORD nMaxFileTitle;
  112239.    LPCWSTR lpstrInitialDir;
  112240.    LPCWSTR lpstrTitle;
  112241.    DWORD Flags;
  112242.    WORD nFileOffset;
  112243.    WORD nFileExtension;
  112244.    LPCWSTR lpstrDefExt;
  112245.    LPARAM lCustData;
  112246.    LPOFNHOOKPROC lpfnHook;
  112247.    LPCWSTR lpTemplateName;
  112248. } OPENFILENAME_NT4W, *LPOPENFILENAME_NT4W;
  112249.  
  112250.  
  112251.  
  112252.  
  112253. typedef OPENFILENAME_NT4A OPENFILENAME_NT4;
  112254. typedef LPOPENFILENAME_NT4A LPOPENFILENAME_NT4;
  112255.  
  112256.  
  112257. typedef struct tagOFNA {
  112258.    DWORD lStructSize;
  112259.    HWND hwndOwner;
  112260.    HINSTANCE hInstance;
  112261.    LPCSTR lpstrFilter;
  112262.    LPSTR lpstrCustomFilter;
  112263.    DWORD nMaxCustFilter;
  112264.    DWORD nFilterIndex;
  112265.    LPSTR lpstrFile;
  112266.    DWORD nMaxFile;
  112267.    LPSTR lpstrFileTitle;
  112268.    DWORD nMaxFileTitle;
  112269.    LPCSTR lpstrInitialDir;
  112270.    LPCSTR lpstrTitle;
  112271.    DWORD Flags;
  112272.    WORD nFileOffset;
  112273.    WORD nFileExtension;
  112274.    LPCSTR lpstrDefExt;
  112275.    LPARAM lCustData;
  112276.    LPOFNHOOKPROC lpfnHook;
  112277.    LPCSTR lpTemplateName;
  112278.  
  112279.  
  112280.  
  112281.  
  112282.  
  112283.    void * pvReserved;
  112284.    DWORD dwReserved;
  112285.    DWORD FlagsEx;
  112286.  
  112287. } OPENFILENAMEA, *LPOPENFILENAMEA;
  112288. typedef struct tagOFNW {
  112289.    DWORD lStructSize;
  112290.    HWND hwndOwner;
  112291.    HINSTANCE hInstance;
  112292.    LPCWSTR lpstrFilter;
  112293.    LPWSTR lpstrCustomFilter;
  112294.    DWORD nMaxCustFilter;
  112295.    DWORD nFilterIndex;
  112296.    LPWSTR lpstrFile;
  112297.    DWORD nMaxFile;
  112298.    LPWSTR lpstrFileTitle;
  112299.    DWORD nMaxFileTitle;
  112300.    LPCWSTR lpstrInitialDir;
  112301.    LPCWSTR lpstrTitle;
  112302.    DWORD Flags;
  112303.    WORD nFileOffset;
  112304.    WORD nFileExtension;
  112305.    LPCWSTR lpstrDefExt;
  112306.    LPARAM lCustData;
  112307.    LPOFNHOOKPROC lpfnHook;
  112308.    LPCWSTR lpTemplateName;
  112309.  
  112310.  
  112311.  
  112312.  
  112313.  
  112314.    void * pvReserved;
  112315.    DWORD dwReserved;
  112316.    DWORD FlagsEx;
  112317.  
  112318. } OPENFILENAMEW, *LPOPENFILENAMEW;
  112319.  
  112320.  
  112321.  
  112322.  
  112323. typedef OPENFILENAMEA OPENFILENAME;
  112324. typedef LPOPENFILENAMEA LPOPENFILENAME;
  112325. # 254 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112326. __declspec(dllimport) BOOL __stdcall GetOpenFileNameA(LPOPENFILENAMEA);
  112327. __declspec(dllimport) BOOL __stdcall GetOpenFileNameW(LPOPENFILENAMEW);
  112328.  
  112329.  
  112330.  
  112331.  
  112332.  
  112333. __declspec(dllimport) BOOL __stdcall GetSaveFileNameA(LPOPENFILENAMEA);
  112334. __declspec(dllimport) BOOL __stdcall GetSaveFileNameW(LPOPENFILENAMEW);
  112335.  
  112336.  
  112337.  
  112338.  
  112339.  
  112340.  
  112341.  
  112342. __declspec(dllimport) short __stdcall GetFileTitleA(LPCSTR, LPSTR Buf, WORD cchSize);
  112343. __declspec(dllimport) short __stdcall GetFileTitleW(LPCWSTR, LPWSTR Buf, WORD cchSize);
  112344. # 330 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112345. typedef UINT_PTR (__stdcall *LPCCHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
  112346.  
  112347.  
  112348.  
  112349. typedef struct _OFNOTIFYA
  112350. {
  112351.         NMHDR hdr;
  112352.         LPOPENFILENAMEA lpOFN;
  112353.         LPSTR pszFile;
  112354. } OFNOTIFYA, *LPOFNOTIFYA;
  112355.  
  112356. typedef struct _OFNOTIFYW
  112357. {
  112358.         NMHDR hdr;
  112359.         LPOPENFILENAMEW lpOFN;
  112360.         LPWSTR pszFile;
  112361. } OFNOTIFYW, *LPOFNOTIFYW;
  112362.  
  112363.  
  112364.  
  112365.  
  112366. typedef OFNOTIFYA OFNOTIFY;
  112367. typedef LPOFNOTIFYA LPOFNOTIFY;
  112368.  
  112369.  
  112370.  
  112371.  
  112372. typedef struct _OFNOTIFYEXA
  112373. {
  112374.         NMHDR hdr;
  112375.         LPOPENFILENAMEA lpOFN;
  112376.         LPVOID psf;
  112377.         LPVOID pidl;
  112378. } OFNOTIFYEXA, *LPOFNOTIFYEXA;
  112379.  
  112380. typedef struct _OFNOTIFYEXW
  112381. {
  112382.         NMHDR hdr;
  112383.         LPOPENFILENAMEW lpOFN;
  112384.         LPVOID psf;
  112385.         LPVOID pidl;
  112386. } OFNOTIFYEXW, *LPOFNOTIFYEXW;
  112387.  
  112388.  
  112389.  
  112390.  
  112391. typedef OFNOTIFYEXA OFNOTIFYEX;
  112392. typedef LPOFNOTIFYEXA LPOFNOTIFYEX;
  112393. # 474 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112394. typedef struct tagCHOOSECOLORA {
  112395.    DWORD lStructSize;
  112396.    HWND hwndOwner;
  112397.    HWND hInstance;
  112398.    COLORREF rgbResult;
  112399.    COLORREF* lpCustColors;
  112400.    DWORD Flags;
  112401.    LPARAM lCustData;
  112402.    LPCCHOOKPROC lpfnHook;
  112403.    LPCSTR lpTemplateName;
  112404. } CHOOSECOLORA, *LPCHOOSECOLORA;
  112405. typedef struct tagCHOOSECOLORW {
  112406.    DWORD lStructSize;
  112407.    HWND hwndOwner;
  112408.    HWND hInstance;
  112409.    COLORREF rgbResult;
  112410.    COLORREF* lpCustColors;
  112411.    DWORD Flags;
  112412.    LPARAM lCustData;
  112413.    LPCCHOOKPROC lpfnHook;
  112414.    LPCWSTR lpTemplateName;
  112415. } CHOOSECOLORW, *LPCHOOSECOLORW;
  112416.  
  112417.  
  112418.  
  112419.  
  112420. typedef CHOOSECOLORA CHOOSECOLOR;
  112421. typedef LPCHOOSECOLORA LPCHOOSECOLOR;
  112422. # 537 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112423. __declspec(dllimport) BOOL __stdcall ChooseColorA(LPCHOOSECOLORA);
  112424. __declspec(dllimport) BOOL __stdcall ChooseColorW(LPCHOOSECOLORW);
  112425. # 557 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112426. typedef UINT_PTR (__stdcall *LPFRHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
  112427.  
  112428. typedef struct tagFINDREPLACEA {
  112429.    DWORD lStructSize;
  112430.    HWND hwndOwner;
  112431.    HINSTANCE hInstance;
  112432.  
  112433.    DWORD Flags;
  112434.    LPSTR lpstrFindWhat;
  112435.    LPSTR lpstrReplaceWith;
  112436.    WORD wFindWhatLen;
  112437.    WORD wReplaceWithLen;
  112438.    LPARAM lCustData;
  112439.    LPFRHOOKPROC lpfnHook;
  112440.    LPCSTR lpTemplateName;
  112441. } FINDREPLACEA, *LPFINDREPLACEA;
  112442. typedef struct tagFINDREPLACEW {
  112443.    DWORD lStructSize;
  112444.    HWND hwndOwner;
  112445.    HINSTANCE hInstance;
  112446.  
  112447.    DWORD Flags;
  112448.    LPWSTR lpstrFindWhat;
  112449.    LPWSTR lpstrReplaceWith;
  112450.    WORD wFindWhatLen;
  112451.    WORD wReplaceWithLen;
  112452.    LPARAM lCustData;
  112453.    LPFRHOOKPROC lpfnHook;
  112454.    LPCWSTR lpTemplateName;
  112455. } FINDREPLACEW, *LPFINDREPLACEW;
  112456.  
  112457.  
  112458.  
  112459.  
  112460. typedef FINDREPLACEA FINDREPLACE;
  112461. typedef LPFINDREPLACEA LPFINDREPLACE;
  112462. # 619 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112463. __declspec(dllimport) HWND __stdcall FindTextA(LPFINDREPLACEA);
  112464. __declspec(dllimport) HWND __stdcall FindTextW(LPFINDREPLACEW);
  112465.  
  112466.  
  112467.  
  112468.  
  112469.  
  112470.  
  112471. __declspec(dllimport) HWND __stdcall ReplaceTextA(LPFINDREPLACEA);
  112472. __declspec(dllimport) HWND __stdcall ReplaceTextW(LPFINDREPLACEW);
  112473. # 664 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112474. typedef UINT_PTR (__stdcall *LPCFHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
  112475.  
  112476. typedef struct tagCHOOSEFONTA {
  112477.    DWORD lStructSize;
  112478.    HWND hwndOwner;
  112479.    HDC hDC;
  112480.    LPLOGFONTA lpLogFont;
  112481.    INT iPointSize;
  112482.    DWORD Flags;
  112483.    COLORREF rgbColors;
  112484.    LPARAM lCustData;
  112485.    LPCFHOOKPROC lpfnHook;
  112486.    LPCSTR lpTemplateName;
  112487.    HINSTANCE hInstance;
  112488.  
  112489.    LPSTR lpszStyle;
  112490.  
  112491.    WORD nFontType;
  112492.  
  112493.  
  112494.    WORD ___MISSING_ALIGNMENT__;
  112495.    INT nSizeMin;
  112496.    INT nSizeMax;
  112497.  
  112498. } CHOOSEFONTA;
  112499. typedef struct tagCHOOSEFONTW {
  112500.    DWORD lStructSize;
  112501.    HWND hwndOwner;
  112502.    HDC hDC;
  112503.    LPLOGFONTW lpLogFont;
  112504.    INT iPointSize;
  112505.    DWORD Flags;
  112506.    COLORREF rgbColors;
  112507.    LPARAM lCustData;
  112508.    LPCFHOOKPROC lpfnHook;
  112509.    LPCWSTR lpTemplateName;
  112510.    HINSTANCE hInstance;
  112511.  
  112512.    LPWSTR lpszStyle;
  112513.  
  112514.    WORD nFontType;
  112515.  
  112516.  
  112517.    WORD ___MISSING_ALIGNMENT__;
  112518.    INT nSizeMin;
  112519.    INT nSizeMax;
  112520.  
  112521. } CHOOSEFONTW;
  112522.  
  112523.  
  112524.  
  112525. typedef CHOOSEFONTA CHOOSEFONT;
  112526.  
  112527. typedef CHOOSEFONTA *LPCHOOSEFONTA;
  112528. typedef CHOOSEFONTW *LPCHOOSEFONTW;
  112529.  
  112530.  
  112531.  
  112532. typedef LPCHOOSEFONTA LPCHOOSEFONT;
  112533.  
  112534. typedef const CHOOSEFONTA *PCCHOOSEFONTA;
  112535. typedef const CHOOSEFONTW *PCCHOOSEFONTW;
  112536.  
  112537.  
  112538.  
  112539.  
  112540. typedef CHOOSEFONTA CHOOSEFONT;
  112541. typedef PCCHOOSEFONTA PCCHOOSEFONT;
  112542.  
  112543.  
  112544. __declspec(dllimport) BOOL __stdcall ChooseFontA(LPCHOOSEFONTA);
  112545. __declspec(dllimport) BOOL __stdcall ChooseFontW(LPCHOOSEFONTW);
  112546. # 852 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112547. typedef UINT_PTR (__stdcall *LPPRINTHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
  112548. typedef UINT_PTR (__stdcall *LPSETUPHOOKPROC) (HWND, UINT, WPARAM, LPARAM);
  112549.  
  112550. typedef struct tagPDA {
  112551.    DWORD lStructSize;
  112552.    HWND hwndOwner;
  112553.    HGLOBAL hDevMode;
  112554.    HGLOBAL hDevNames;
  112555.    HDC hDC;
  112556.    DWORD Flags;
  112557.    WORD nFromPage;
  112558.    WORD nToPage;
  112559.    WORD nMinPage;
  112560.    WORD nMaxPage;
  112561.    WORD nCopies;
  112562.    HINSTANCE hInstance;
  112563.    LPARAM lCustData;
  112564.    LPPRINTHOOKPROC lpfnPrintHook;
  112565.    LPSETUPHOOKPROC lpfnSetupHook;
  112566.    LPCSTR lpPrintTemplateName;
  112567.    LPCSTR lpSetupTemplateName;
  112568.    HGLOBAL hPrintTemplate;
  112569.    HGLOBAL hSetupTemplate;
  112570. } PRINTDLGA, *LPPRINTDLGA;
  112571. typedef struct tagPDW {
  112572.    DWORD lStructSize;
  112573.    HWND hwndOwner;
  112574.    HGLOBAL hDevMode;
  112575.    HGLOBAL hDevNames;
  112576.    HDC hDC;
  112577.    DWORD Flags;
  112578.    WORD nFromPage;
  112579.    WORD nToPage;
  112580.    WORD nMinPage;
  112581.    WORD nMaxPage;
  112582.    WORD nCopies;
  112583.    HINSTANCE hInstance;
  112584.    LPARAM lCustData;
  112585.    LPPRINTHOOKPROC lpfnPrintHook;
  112586.    LPSETUPHOOKPROC lpfnSetupHook;
  112587.    LPCWSTR lpPrintTemplateName;
  112588.    LPCWSTR lpSetupTemplateName;
  112589.    HGLOBAL hPrintTemplate;
  112590.    HGLOBAL hSetupTemplate;
  112591. } PRINTDLGW, *LPPRINTDLGW;
  112592.  
  112593.  
  112594.  
  112595.  
  112596. typedef PRINTDLGA PRINTDLG;
  112597. typedef LPPRINTDLGA LPPRINTDLG;
  112598.  
  112599.  
  112600. __declspec(dllimport) BOOL __stdcall PrintDlgA( LPPRINTDLGA pPD);
  112601. __declspec(dllimport) BOOL __stdcall PrintDlgW( LPPRINTDLGW pPD);
  112602. # 950 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112603. typedef struct IPrintDialogCallback { struct IPrintDialogCallbackVtbl * lpVtbl; } IPrintDialogCallback; typedef struct IPrintDialogCallbackVtbl IPrintDialogCallbackVtbl; struct IPrintDialogCallbackVtbl
  112604. {
  112605.  
  112606.     HRESULT (__stdcall * QueryInterface) (IPrintDialogCallback * This, const IID * riid, void **ppvObj) ;
  112607.     ULONG (__stdcall * AddRef) (IPrintDialogCallback * This) ;
  112608.     ULONG (__stdcall * Release)(IPrintDialogCallback * This) ;
  112609.  
  112610.  
  112611.     HRESULT (__stdcall * InitDone) (IPrintDialogCallback * This) ;
  112612.     HRESULT (__stdcall * SelectionChange) (IPrintDialogCallback * This) ;
  112613.     HRESULT (__stdcall * HandleMessage) (IPrintDialogCallback * This, HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM lParam, LRESULT *pResult) ;
  112614. };
  112615. # 982 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112616. typedef struct IPrintDialogServices { struct IPrintDialogServicesVtbl * lpVtbl; } IPrintDialogServices; typedef struct IPrintDialogServicesVtbl IPrintDialogServicesVtbl; struct IPrintDialogServicesVtbl
  112617. {
  112618.  
  112619.     HRESULT (__stdcall * QueryInterface) (IPrintDialogServices * This, const IID * riid, void **ppvObj) ;
  112620.     ULONG (__stdcall * AddRef) (IPrintDialogServices * This) ;
  112621.     ULONG (__stdcall * Release)(IPrintDialogServices * This) ;
  112622.  
  112623.  
  112624.     HRESULT (__stdcall * GetCurrentDevMode) (IPrintDialogServices * This, LPDEVMODE pDevMode, UINT *pcbSize) ;
  112625.     HRESULT (__stdcall * GetCurrentPrinterName) (IPrintDialogServices * This, LPWSTR pPrinterName, UINT *pcchSize) ;
  112626.     HRESULT (__stdcall * GetCurrentPortName) (IPrintDialogServices * This, LPWSTR pPortName, UINT *pcchSize) ;
  112627. };
  112628.  
  112629.  
  112630.  
  112631.  
  112632.  
  112633. typedef struct tagPRINTPAGERANGE {
  112634.    DWORD nFromPage;
  112635.    DWORD nToPage;
  112636. } PRINTPAGERANGE;
  112637. typedef PRINTPAGERANGE *LPPRINTPAGERANGE;
  112638. typedef const PRINTPAGERANGE *PCPRINTPAGERANGE;
  112639.  
  112640.  
  112641.  
  112642.  
  112643.  
  112644. typedef struct tagPDEXA {
  112645.    DWORD lStructSize;
  112646.    HWND hwndOwner;
  112647.    HGLOBAL hDevMode;
  112648.    HGLOBAL hDevNames;
  112649.    HDC hDC;
  112650.    DWORD Flags;
  112651.    DWORD Flags2;
  112652.    DWORD ExclusionFlags;
  112653.    DWORD nPageRanges;
  112654.    DWORD nMaxPageRanges;
  112655.    LPPRINTPAGERANGE lpPageRanges;
  112656.    DWORD nMinPage;
  112657.    DWORD nMaxPage;
  112658.    DWORD nCopies;
  112659.    HINSTANCE hInstance;
  112660.    LPCSTR lpPrintTemplateName;
  112661.    LPUNKNOWN lpCallback;
  112662.    DWORD nPropertyPages;
  112663.    HPROPSHEETPAGE *lphPropertyPages;
  112664.    DWORD nStartPage;
  112665.    DWORD dwResultAction;
  112666. } PRINTDLGEXA, *LPPRINTDLGEXA;
  112667.  
  112668.  
  112669.  
  112670. typedef struct tagPDEXW {
  112671.    DWORD lStructSize;
  112672.    HWND hwndOwner;
  112673.    HGLOBAL hDevMode;
  112674.    HGLOBAL hDevNames;
  112675.    HDC hDC;
  112676.    DWORD Flags;
  112677.    DWORD Flags2;
  112678.    DWORD ExclusionFlags;
  112679.    DWORD nPageRanges;
  112680.    DWORD nMaxPageRanges;
  112681.    LPPRINTPAGERANGE lpPageRanges;
  112682.    DWORD nMinPage;
  112683.    DWORD nMaxPage;
  112684.    DWORD nCopies;
  112685.    HINSTANCE hInstance;
  112686.    LPCWSTR lpPrintTemplateName;
  112687.    LPUNKNOWN lpCallback;
  112688.    DWORD nPropertyPages;
  112689.    HPROPSHEETPAGE *lphPropertyPages;
  112690.    DWORD nStartPage;
  112691.    DWORD dwResultAction;
  112692. } PRINTDLGEXW, *LPPRINTDLGEXW;
  112693.  
  112694.  
  112695.  
  112696.  
  112697. typedef PRINTDLGEXA PRINTDLGEX;
  112698. typedef LPPRINTDLGEXA LPPRINTDLGEX;
  112699.  
  112700.  
  112701.  
  112702.  
  112703. __declspec(dllimport) HRESULT __stdcall PrintDlgExA( LPPRINTDLGEXA pPD);
  112704. __declspec(dllimport) HRESULT __stdcall PrintDlgExW( LPPRINTDLGEXW pPD);
  112705. # 1142 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112706. typedef struct tagDEVNAMES {
  112707.    WORD wDriverOffset;
  112708.    WORD wDeviceOffset;
  112709.    WORD wOutputOffset;
  112710.    WORD wDefault;
  112711. } DEVNAMES;
  112712. typedef DEVNAMES *LPDEVNAMES;
  112713. typedef const DEVNAMES *PCDEVNAMES;
  112714.  
  112715.  
  112716.  
  112717.  
  112718. __declspec(dllimport) DWORD __stdcall CommDlgExtendedError(void);
  112719. # 1165 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112720. typedef UINT_PTR (__stdcall* LPPAGEPAINTHOOK)( HWND, UINT, WPARAM, LPARAM );
  112721. typedef UINT_PTR (__stdcall* LPPAGESETUPHOOK)( HWND, UINT, WPARAM, LPARAM );
  112722.  
  112723. typedef struct tagPSDA
  112724. {
  112725.     DWORD lStructSize;
  112726.     HWND hwndOwner;
  112727.     HGLOBAL hDevMode;
  112728.     HGLOBAL hDevNames;
  112729.     DWORD Flags;
  112730.     POINT ptPaperSize;
  112731.     RECT rtMinMargin;
  112732.     RECT rtMargin;
  112733.     HINSTANCE hInstance;
  112734.     LPARAM lCustData;
  112735.     LPPAGESETUPHOOK lpfnPageSetupHook;
  112736.     LPPAGEPAINTHOOK lpfnPagePaintHook;
  112737.     LPCSTR lpPageSetupTemplateName;
  112738.     HGLOBAL hPageSetupTemplate;
  112739. } PAGESETUPDLGA, * LPPAGESETUPDLGA;
  112740. typedef struct tagPSDW
  112741. {
  112742.     DWORD lStructSize;
  112743.     HWND hwndOwner;
  112744.     HGLOBAL hDevMode;
  112745.     HGLOBAL hDevNames;
  112746.     DWORD Flags;
  112747.     POINT ptPaperSize;
  112748.     RECT rtMinMargin;
  112749.     RECT rtMargin;
  112750.     HINSTANCE hInstance;
  112751.     LPARAM lCustData;
  112752.     LPPAGESETUPHOOK lpfnPageSetupHook;
  112753.     LPPAGEPAINTHOOK lpfnPagePaintHook;
  112754.     LPCWSTR lpPageSetupTemplateName;
  112755.     HGLOBAL hPageSetupTemplate;
  112756. } PAGESETUPDLGW, * LPPAGESETUPDLGW;
  112757.  
  112758.  
  112759.  
  112760.  
  112761. typedef PAGESETUPDLGA PAGESETUPDLG;
  112762. typedef LPPAGESETUPDLGA LPPAGESETUPDLG;
  112763.  
  112764.  
  112765. __declspec(dllimport) BOOL __stdcall PageSetupDlgA( LPPAGESETUPDLGA );
  112766. __declspec(dllimport) BOOL __stdcall PageSetupDlgW( LPPAGESETUPDLGW );
  112767. # 1242 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112768. #pragma endregion
  112769. # 1257 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 3
  112770. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 1 3
  112771. # 27 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\poppack.h" 3
  112772. #pragma warning(disable: 4103)
  112773.  
  112774. #pragma pack(pop)
  112775. # 1257 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\commdlg.h" 2 3
  112776.  
  112777.  
  112778.  
  112779.  
  112780.  
  112781.  
  112782.  
  112783.  
  112784. #pragma option pop
  112785. # 266 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 2 3
  112786.  
  112787.  
  112788.  
  112789.  
  112790. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\stralign.h" 1 3
  112791. #pragma option push -b -a8 -pc -A- -w-pun
  112792. # 69 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\stralign.h" 3
  112793. #pragma region Desktop Family
  112794. # 106 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\stralign.h" 3
  112795. __inline
  112796. PUWSTR
  112797. static
  112798.  
  112799. ua_wcscpy(
  112800.                                                        PUWSTR Destination,
  112801.          PCUWSTR Source
  112802.     )
  112803. {
  112804. #pragma warning(push)
  112805. #pragma warning(disable: 4995)
  112806. #pragma warning(disable: 4996)
  112807.  
  112808.  
  112809.  
  112810.  return wcscpy(Destination, Source);
  112811. #pragma warning(pop)
  112812. }
  112813. # 686 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\stralign.h" 3
  112814. #pragma endregion
  112815. # 701 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\stralign.h" 3
  112816. #pragma option pop
  112817. # 270 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 2 3
  112818.  
  112819.  
  112820.  
  112821.  
  112822.  
  112823.  
  112824.  
  112825.  
  112826. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  112827. #pragma option push -b -a8 -pc -A- -w-pun
  112828. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  112829. #pragma option pop
  112830. # 278 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 2 3
  112831.  
  112832.  
  112833.  
  112834.  
  112835.  
  112836. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 1 3
  112837. # 19 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112838. #pragma option push -b -a8 -pc -A- -w-pun
  112839. # 45 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112840. #pragma region Desktop Family or OneCore Family
  112841. # 364 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112842. extern const GUID NETWORK_MANAGER_FIRST_IP_ADDRESS_ARRIVAL_GUID;
  112843.  
  112844.  
  112845.  
  112846.  
  112847.  
  112848.  
  112849.  
  112850. extern const GUID NETWORK_MANAGER_LAST_IP_ADDRESS_REMOVAL_GUID;
  112851. # 383 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112852. extern const GUID DOMAIN_JOIN_GUID;
  112853.  
  112854.  
  112855.  
  112856.  
  112857.  
  112858.  
  112859.  
  112860. extern const GUID DOMAIN_LEAVE_GUID;
  112861. # 403 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112862. extern const GUID FIREWALL_PORT_OPEN_GUID;
  112863.  
  112864.  
  112865.  
  112866.  
  112867.  
  112868.  
  112869.  
  112870. extern const GUID FIREWALL_PORT_CLOSE_GUID;
  112871. # 423 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112872. extern const GUID MACHINE_POLICY_PRESENT_GUID;
  112873.  
  112874.  
  112875.  
  112876.  
  112877.  
  112878.  
  112879.  
  112880. extern const GUID USER_POLICY_PRESENT_GUID;
  112881. # 443 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112882. extern const GUID RPC_INTERFACE_EVENT_GUID;
  112883.  
  112884.  
  112885.  
  112886.  
  112887.  
  112888.  
  112889.  
  112890. extern const GUID NAMED_PIPE_EVENT_GUID;
  112891. # 462 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112892. extern const GUID CUSTOM_SYSTEM_STATE_CHANGE_EVENT_GUID;
  112893. # 473 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112894. typedef struct
  112895. {
  112896.     DWORD Data[2];
  112897. } SERVICE_TRIGGER_CUSTOM_STATE_ID;
  112898.  
  112899. typedef struct _SERVICE_CUSTOM_SYSTEM_STATE_CHANGE_DATA_ITEM {
  112900.     union {
  112901.         SERVICE_TRIGGER_CUSTOM_STATE_ID CustomStateId;
  112902.         struct {
  112903.             DWORD DataOffset;
  112904.             BYTE Data[1];
  112905.         } s;
  112906.     } u;
  112907. } SERVICE_CUSTOM_SYSTEM_STATE_CHANGE_DATA_ITEM, *LPSERVICE_CUSTOM_SYSTEM_STATE_CHANGE_DATA_ITEM;
  112908. # 503 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  112909. typedef struct _SERVICE_DESCRIPTIONA {
  112910.     LPSTR lpDescription;
  112911. } SERVICE_DESCRIPTIONA, *LPSERVICE_DESCRIPTIONA;
  112912.  
  112913.  
  112914.  
  112915. typedef struct _SERVICE_DESCRIPTIONW {
  112916.     LPWSTR lpDescription;
  112917. } SERVICE_DESCRIPTIONW, *LPSERVICE_DESCRIPTIONW;
  112918.  
  112919.  
  112920.  
  112921.  
  112922. typedef SERVICE_DESCRIPTIONA SERVICE_DESCRIPTION;
  112923. typedef LPSERVICE_DESCRIPTIONA LPSERVICE_DESCRIPTION;
  112924.  
  112925.  
  112926.  
  112927.  
  112928.  
  112929. typedef enum _SC_ACTION_TYPE {
  112930.         SC_ACTION_NONE = 0,
  112931.         SC_ACTION_RESTART = 1,
  112932.         SC_ACTION_REBOOT = 2,
  112933.         SC_ACTION_RUN_COMMAND = 3,
  112934.         SC_ACTION_OWN_RESTART = 4
  112935. } SC_ACTION_TYPE;
  112936.  
  112937. typedef struct _SC_ACTION {
  112938.     SC_ACTION_TYPE Type;
  112939.     DWORD Delay;
  112940. } SC_ACTION, *LPSC_ACTION;
  112941.  
  112942. typedef struct _SERVICE_FAILURE_ACTIONSA {
  112943.     DWORD dwResetPeriod;
  112944.     LPSTR lpRebootMsg;
  112945.     LPSTR lpCommand;
  112946.  
  112947.  
  112948.  
  112949.     DWORD cActions;
  112950.  
  112951.  
  112952.  
  112953.     SC_ACTION * lpsaActions;
  112954. } SERVICE_FAILURE_ACTIONSA, *LPSERVICE_FAILURE_ACTIONSA;
  112955. typedef struct _SERVICE_FAILURE_ACTIONSW {
  112956.     DWORD dwResetPeriod;
  112957.     LPWSTR lpRebootMsg;
  112958.     LPWSTR lpCommand;
  112959.  
  112960.  
  112961.  
  112962.     DWORD cActions;
  112963.  
  112964.  
  112965.  
  112966.     SC_ACTION * lpsaActions;
  112967. } SERVICE_FAILURE_ACTIONSW, *LPSERVICE_FAILURE_ACTIONSW;
  112968.  
  112969.  
  112970.  
  112971.  
  112972. typedef SERVICE_FAILURE_ACTIONSA SERVICE_FAILURE_ACTIONS;
  112973. typedef LPSERVICE_FAILURE_ACTIONSA LPSERVICE_FAILURE_ACTIONS;
  112974.  
  112975.  
  112976.  
  112977.  
  112978.  
  112979. typedef struct _SERVICE_DELAYED_AUTO_START_INFO {
  112980.     BOOL fDelayedAutostart;
  112981. } SERVICE_DELAYED_AUTO_START_INFO, *LPSERVICE_DELAYED_AUTO_START_INFO;
  112982.  
  112983.  
  112984.  
  112985.  
  112986. typedef struct _SERVICE_FAILURE_ACTIONS_FLAG {
  112987.     BOOL fFailureActionsOnNonCrashFailures;
  112988. } SERVICE_FAILURE_ACTIONS_FLAG, *LPSERVICE_FAILURE_ACTIONS_FLAG;
  112989.  
  112990.  
  112991.  
  112992.  
  112993. typedef struct _SERVICE_SID_INFO {
  112994.     DWORD dwServiceSidType;
  112995. } SERVICE_SID_INFO, *LPSERVICE_SID_INFO;
  112996.  
  112997.  
  112998.  
  112999.  
  113000. typedef struct _SERVICE_REQUIRED_PRIVILEGES_INFOA {
  113001.     LPSTR pmszRequiredPrivileges;
  113002. } SERVICE_REQUIRED_PRIVILEGES_INFOA, *LPSERVICE_REQUIRED_PRIVILEGES_INFOA;
  113003.  
  113004.  
  113005.  
  113006. typedef struct _SERVICE_REQUIRED_PRIVILEGES_INFOW {
  113007.     LPWSTR pmszRequiredPrivileges;
  113008. } SERVICE_REQUIRED_PRIVILEGES_INFOW, *LPSERVICE_REQUIRED_PRIVILEGES_INFOW;
  113009.  
  113010.  
  113011.  
  113012.  
  113013. typedef SERVICE_REQUIRED_PRIVILEGES_INFOA SERVICE_REQUIRED_PRIVILEGES_INFO;
  113014. typedef LPSERVICE_REQUIRED_PRIVILEGES_INFOA LPSERVICE_REQUIRED_PRIVILEGES_INFO;
  113015.  
  113016.  
  113017.  
  113018.  
  113019.  
  113020. typedef struct _SERVICE_PRESHUTDOWN_INFO {
  113021.     DWORD dwPreshutdownTimeout;
  113022. } SERVICE_PRESHUTDOWN_INFO, *LPSERVICE_PRESHUTDOWN_INFO;
  113023.  
  113024.  
  113025.  
  113026.  
  113027. typedef struct _SERVICE_TRIGGER_SPECIFIC_DATA_ITEM
  113028. {
  113029.     DWORD dwDataType;
  113030.  
  113031.  
  113032.  
  113033.     DWORD cbData;
  113034.  
  113035.  
  113036.  
  113037.     PBYTE pData;
  113038. } SERVICE_TRIGGER_SPECIFIC_DATA_ITEM, *PSERVICE_TRIGGER_SPECIFIC_DATA_ITEM;
  113039.  
  113040.  
  113041.  
  113042.  
  113043. typedef struct _SERVICE_TRIGGER
  113044. {
  113045.     DWORD dwTriggerType;
  113046.     DWORD dwAction;
  113047.     GUID * pTriggerSubtype;
  113048.  
  113049.  
  113050.  
  113051.  
  113052.  
  113053.  
  113054.     DWORD cDataItems;
  113055.  
  113056.  
  113057.  
  113058.     PSERVICE_TRIGGER_SPECIFIC_DATA_ITEM pDataItems;
  113059. } SERVICE_TRIGGER, *PSERVICE_TRIGGER;
  113060.  
  113061.  
  113062.  
  113063.  
  113064. typedef struct _SERVICE_TRIGGER_INFO {
  113065.  
  113066.  
  113067.  
  113068.     DWORD cTriggers;
  113069.  
  113070.  
  113071.  
  113072.     PSERVICE_TRIGGER pTriggers;
  113073.     PBYTE pReserved;
  113074. } SERVICE_TRIGGER_INFO, *PSERVICE_TRIGGER_INFO;
  113075.  
  113076.  
  113077.  
  113078.  
  113079.  
  113080.  
  113081. typedef struct _SERVICE_PREFERRED_NODE_INFO {
  113082.     USHORT usPreferredNode;
  113083.     BOOLEAN fDelete;
  113084. } SERVICE_PREFERRED_NODE_INFO, *LPSERVICE_PREFERRED_NODE_INFO;
  113085.  
  113086.  
  113087.  
  113088.  
  113089. typedef struct _SERVICE_TIMECHANGE_INFO {
  113090.     LARGE_INTEGER liNewTime;
  113091.     LARGE_INTEGER liOldTime;
  113092. } SERVICE_TIMECHANGE_INFO, *PSERVICE_TIMECHANGE_INFO;
  113093.  
  113094.  
  113095.  
  113096.  
  113097. typedef struct _SERVICE_LAUNCH_PROTECTED_INFO {
  113098.     DWORD dwLaunchProtected;
  113099. } SERVICE_LAUNCH_PROTECTED_INFO, *PSERVICE_LAUNCH_PROTECTED_INFO;
  113100.  
  113101.  
  113102.  
  113103.  
  113104.  
  113105. struct SC_HANDLE__{int unused;}; typedef struct SC_HANDLE__ *SC_HANDLE;
  113106. typedef SC_HANDLE *LPSC_HANDLE;
  113107.  
  113108. struct SERVICE_STATUS_HANDLE__{int unused;}; typedef struct SERVICE_STATUS_HANDLE__ *SERVICE_STATUS_HANDLE;
  113109.  
  113110.  
  113111.  
  113112.  
  113113.  
  113114. typedef enum _SC_STATUS_TYPE {
  113115.     SC_STATUS_PROCESS_INFO = 0
  113116. } SC_STATUS_TYPE;
  113117.  
  113118.  
  113119.  
  113120.  
  113121. typedef enum _SC_ENUM_TYPE {
  113122.     SC_ENUM_PROCESS_INFO = 0
  113123. } SC_ENUM_TYPE;
  113124.  
  113125.  
  113126.  
  113127.  
  113128.  
  113129.  
  113130. typedef struct _SERVICE_STATUS {
  113131.     DWORD dwServiceType;
  113132.     DWORD dwCurrentState;
  113133.     DWORD dwControlsAccepted;
  113134.     DWORD dwWin32ExitCode;
  113135.     DWORD dwServiceSpecificExitCode;
  113136.     DWORD dwCheckPoint;
  113137.     DWORD dwWaitHint;
  113138. } SERVICE_STATUS, *LPSERVICE_STATUS;
  113139.  
  113140. typedef struct _SERVICE_STATUS_PROCESS {
  113141.     DWORD dwServiceType;
  113142.     DWORD dwCurrentState;
  113143.     DWORD dwControlsAccepted;
  113144.     DWORD dwWin32ExitCode;
  113145.     DWORD dwServiceSpecificExitCode;
  113146.     DWORD dwCheckPoint;
  113147.     DWORD dwWaitHint;
  113148.     DWORD dwProcessId;
  113149.     DWORD dwServiceFlags;
  113150. } SERVICE_STATUS_PROCESS, *LPSERVICE_STATUS_PROCESS;
  113151.  
  113152.  
  113153.  
  113154.  
  113155.  
  113156.  
  113157. typedef struct _ENUM_SERVICE_STATUSA {
  113158.     LPSTR lpServiceName;
  113159.     LPSTR lpDisplayName;
  113160.     SERVICE_STATUS ServiceStatus;
  113161. } ENUM_SERVICE_STATUSA, *LPENUM_SERVICE_STATUSA;
  113162. typedef struct _ENUM_SERVICE_STATUSW {
  113163.     LPWSTR lpServiceName;
  113164.     LPWSTR lpDisplayName;
  113165.     SERVICE_STATUS ServiceStatus;
  113166. } ENUM_SERVICE_STATUSW, *LPENUM_SERVICE_STATUSW;
  113167.  
  113168.  
  113169.  
  113170.  
  113171. typedef ENUM_SERVICE_STATUSA ENUM_SERVICE_STATUS;
  113172. typedef LPENUM_SERVICE_STATUSA LPENUM_SERVICE_STATUS;
  113173.  
  113174.  
  113175. typedef struct _ENUM_SERVICE_STATUS_PROCESSA {
  113176.     LPSTR lpServiceName;
  113177.     LPSTR lpDisplayName;
  113178.     SERVICE_STATUS_PROCESS ServiceStatusProcess;
  113179. } ENUM_SERVICE_STATUS_PROCESSA, *LPENUM_SERVICE_STATUS_PROCESSA;
  113180. typedef struct _ENUM_SERVICE_STATUS_PROCESSW {
  113181.     LPWSTR lpServiceName;
  113182.     LPWSTR lpDisplayName;
  113183.     SERVICE_STATUS_PROCESS ServiceStatusProcess;
  113184. } ENUM_SERVICE_STATUS_PROCESSW, *LPENUM_SERVICE_STATUS_PROCESSW;
  113185.  
  113186.  
  113187.  
  113188.  
  113189. typedef ENUM_SERVICE_STATUS_PROCESSA ENUM_SERVICE_STATUS_PROCESS;
  113190. typedef LPENUM_SERVICE_STATUS_PROCESSA LPENUM_SERVICE_STATUS_PROCESS;
  113191.  
  113192.  
  113193.  
  113194.  
  113195.  
  113196.  
  113197. typedef LPVOID SC_LOCK;
  113198.  
  113199. typedef struct _QUERY_SERVICE_LOCK_STATUSA {
  113200.     DWORD fIsLocked;
  113201.     LPSTR lpLockOwner;
  113202.     DWORD dwLockDuration;
  113203. } QUERY_SERVICE_LOCK_STATUSA, *LPQUERY_SERVICE_LOCK_STATUSA;
  113204. typedef struct _QUERY_SERVICE_LOCK_STATUSW {
  113205.     DWORD fIsLocked;
  113206.     LPWSTR lpLockOwner;
  113207.     DWORD dwLockDuration;
  113208. } QUERY_SERVICE_LOCK_STATUSW, *LPQUERY_SERVICE_LOCK_STATUSW;
  113209.  
  113210.  
  113211.  
  113212.  
  113213. typedef QUERY_SERVICE_LOCK_STATUSA QUERY_SERVICE_LOCK_STATUS;
  113214. typedef LPQUERY_SERVICE_LOCK_STATUSA LPQUERY_SERVICE_LOCK_STATUS;
  113215. # 817 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  113216. typedef struct _QUERY_SERVICE_CONFIGA {
  113217.     DWORD dwServiceType;
  113218.     DWORD dwStartType;
  113219.     DWORD dwErrorControl;
  113220.     LPSTR lpBinaryPathName;
  113221.     LPSTR lpLoadOrderGroup;
  113222.     DWORD dwTagId;
  113223.     LPSTR lpDependencies;
  113224.     LPSTR lpServiceStartName;
  113225.     LPSTR lpDisplayName;
  113226. } QUERY_SERVICE_CONFIGA, *LPQUERY_SERVICE_CONFIGA;
  113227. typedef struct _QUERY_SERVICE_CONFIGW {
  113228.     DWORD dwServiceType;
  113229.     DWORD dwStartType;
  113230.     DWORD dwErrorControl;
  113231.     LPWSTR lpBinaryPathName;
  113232.     LPWSTR lpLoadOrderGroup;
  113233.     DWORD dwTagId;
  113234.     LPWSTR lpDependencies;
  113235.     LPWSTR lpServiceStartName;
  113236.     LPWSTR lpDisplayName;
  113237. } QUERY_SERVICE_CONFIGW, *LPQUERY_SERVICE_CONFIGW;
  113238.  
  113239.  
  113240.  
  113241.  
  113242. typedef QUERY_SERVICE_CONFIGA QUERY_SERVICE_CONFIG;
  113243. typedef LPQUERY_SERVICE_CONFIGA LPQUERY_SERVICE_CONFIG;
  113244. # 853 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  113245. typedef void __stdcall SERVICE_MAIN_FUNCTIONW (
  113246.     DWORD dwNumServicesArgs,
  113247.     LPWSTR *lpServiceArgVectors
  113248.     );
  113249.  
  113250. typedef void __stdcall SERVICE_MAIN_FUNCTIONA (
  113251.     DWORD dwNumServicesArgs,
  113252.     LPTSTR *lpServiceArgVectors
  113253.     );
  113254.  
  113255.  
  113256.  
  113257.  
  113258.  
  113259.  
  113260.  
  113261. typedef void (__stdcall *LPSERVICE_MAIN_FUNCTIONW)(
  113262.     DWORD dwNumServicesArgs,
  113263.     LPWSTR *lpServiceArgVectors
  113264.     );
  113265.  
  113266. typedef void (__stdcall *LPSERVICE_MAIN_FUNCTIONA)(
  113267.     DWORD dwNumServicesArgs,
  113268.     LPSTR *lpServiceArgVectors
  113269.     );
  113270. # 890 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  113271. typedef struct _SERVICE_TABLE_ENTRYA {
  113272.     LPSTR lpServiceName;
  113273.     LPSERVICE_MAIN_FUNCTIONA lpServiceProc;
  113274. }SERVICE_TABLE_ENTRYA, *LPSERVICE_TABLE_ENTRYA;
  113275. typedef struct _SERVICE_TABLE_ENTRYW {
  113276.     LPWSTR lpServiceName;
  113277.     LPSERVICE_MAIN_FUNCTIONW lpServiceProc;
  113278. }SERVICE_TABLE_ENTRYW, *LPSERVICE_TABLE_ENTRYW;
  113279.  
  113280.  
  113281.  
  113282.  
  113283. typedef SERVICE_TABLE_ENTRYA SERVICE_TABLE_ENTRY;
  113284. typedef LPSERVICE_TABLE_ENTRYA LPSERVICE_TABLE_ENTRY;
  113285.  
  113286.  
  113287.  
  113288.  
  113289.  
  113290.  
  113291. typedef void __stdcall HANDLER_FUNCTION (
  113292.     DWORD dwControl
  113293.     );
  113294.  
  113295. typedef DWORD __stdcall HANDLER_FUNCTION_EX (
  113296.     DWORD dwControl,
  113297.     DWORD dwEventType,
  113298.     LPVOID lpEventData,
  113299.     LPVOID lpContext
  113300.     );
  113301.  
  113302. typedef void (__stdcall *LPHANDLER_FUNCTION)(
  113303.     DWORD dwControl
  113304.     );
  113305.  
  113306. typedef DWORD (__stdcall *LPHANDLER_FUNCTION_EX)(
  113307.     DWORD dwControl,
  113308.     DWORD dwEventType,
  113309.     LPVOID lpEventData,
  113310.     LPVOID lpContext
  113311.     );
  113312.  
  113313.  
  113314.  
  113315.  
  113316. typedef
  113317. void
  113318. ( __stdcall * PFN_SC_NOTIFY_CALLBACK ) (
  113319.          PVOID pParameter
  113320.     );
  113321.  
  113322.  
  113323.  
  113324.  
  113325. typedef struct _SERVICE_NOTIFY_1 {
  113326.     DWORD dwVersion;
  113327.     PFN_SC_NOTIFY_CALLBACK pfnNotifyCallback;
  113328.     PVOID pContext;
  113329.     DWORD dwNotificationStatus;
  113330.     SERVICE_STATUS_PROCESS ServiceStatus;
  113331. } SERVICE_NOTIFY_1, *PSERVICE_NOTIFY_1;
  113332.  
  113333. typedef struct _SERVICE_NOTIFY_2A {
  113334.     DWORD dwVersion;
  113335.     PFN_SC_NOTIFY_CALLBACK pfnNotifyCallback;
  113336.     PVOID pContext;
  113337.     DWORD dwNotificationStatus;
  113338.     SERVICE_STATUS_PROCESS ServiceStatus;
  113339.     DWORD dwNotificationTriggered;
  113340.     LPSTR pszServiceNames;
  113341. } SERVICE_NOTIFY_2A, *PSERVICE_NOTIFY_2A;
  113342. typedef struct _SERVICE_NOTIFY_2W {
  113343.     DWORD dwVersion;
  113344.     PFN_SC_NOTIFY_CALLBACK pfnNotifyCallback;
  113345.     PVOID pContext;
  113346.     DWORD dwNotificationStatus;
  113347.     SERVICE_STATUS_PROCESS ServiceStatus;
  113348.     DWORD dwNotificationTriggered;
  113349.     LPWSTR pszServiceNames;
  113350. } SERVICE_NOTIFY_2W, *PSERVICE_NOTIFY_2W;
  113351.  
  113352.  
  113353.  
  113354.  
  113355. typedef SERVICE_NOTIFY_2A SERVICE_NOTIFY_2;
  113356. typedef PSERVICE_NOTIFY_2A PSERVICE_NOTIFY_2;
  113357.  
  113358.  
  113359. typedef SERVICE_NOTIFY_2A SERVICE_NOTIFYA, *PSERVICE_NOTIFYA;
  113360. typedef SERVICE_NOTIFY_2W SERVICE_NOTIFYW, *PSERVICE_NOTIFYW;
  113361.  
  113362.  
  113363.  
  113364.  
  113365. typedef SERVICE_NOTIFYA SERVICE_NOTIFY;
  113366. typedef PSERVICE_NOTIFYA PSERVICE_NOTIFY;
  113367.  
  113368.  
  113369.  
  113370.  
  113371.  
  113372. typedef struct _SERVICE_CONTROL_STATUS_REASON_PARAMSA {
  113373.     DWORD dwReason;
  113374.     LPSTR pszComment;
  113375.     SERVICE_STATUS_PROCESS ServiceStatus;
  113376. } SERVICE_CONTROL_STATUS_REASON_PARAMSA, *PSERVICE_CONTROL_STATUS_REASON_PARAMSA;
  113377.  
  113378.  
  113379.  
  113380. typedef struct _SERVICE_CONTROL_STATUS_REASON_PARAMSW {
  113381.     DWORD dwReason;
  113382.     LPWSTR pszComment;
  113383.     SERVICE_STATUS_PROCESS ServiceStatus;
  113384. } SERVICE_CONTROL_STATUS_REASON_PARAMSW, *PSERVICE_CONTROL_STATUS_REASON_PARAMSW;
  113385.  
  113386.  
  113387.  
  113388.  
  113389. typedef SERVICE_CONTROL_STATUS_REASON_PARAMSA SERVICE_CONTROL_STATUS_REASON_PARAMS;
  113390. typedef PSERVICE_CONTROL_STATUS_REASON_PARAMSA PSERVICE_CONTROL_STATUS_REASON_PARAMS;
  113391.  
  113392.  
  113393.  
  113394.  
  113395.  
  113396. typedef struct _SERVICE_START_REASON {
  113397.     DWORD dwReason;
  113398. } SERVICE_START_REASON, *PSERVICE_START_REASON;
  113399.  
  113400.  
  113401.  
  113402.  
  113403.  
  113404. __declspec(dllimport)
  113405. BOOL
  113406. __stdcall
  113407. ChangeServiceConfigA(
  113408.                 SC_HANDLE hService,
  113409.                 DWORD dwServiceType,
  113410.                 DWORD dwStartType,
  113411.                 DWORD dwErrorControl,
  113412.                 LPCSTR lpBinaryPathName,
  113413.                 LPCSTR lpLoadOrderGroup,
  113414.                 LPDWORD lpdwTagId,
  113415.                 LPCSTR lpDependencies,
  113416.                 LPCSTR lpServiceStartName,
  113417.                 LPCSTR lpPassword,
  113418.                 LPCSTR lpDisplayName
  113419.     );
  113420. __declspec(dllimport)
  113421. BOOL
  113422. __stdcall
  113423. ChangeServiceConfigW(
  113424.                 SC_HANDLE hService,
  113425.                 DWORD dwServiceType,
  113426.                 DWORD dwStartType,
  113427.                 DWORD dwErrorControl,
  113428.                 LPCWSTR lpBinaryPathName,
  113429.                 LPCWSTR lpLoadOrderGroup,
  113430.                 LPDWORD lpdwTagId,
  113431.                 LPCWSTR lpDependencies,
  113432.                 LPCWSTR lpServiceStartName,
  113433.                 LPCWSTR lpPassword,
  113434.                 LPCWSTR lpDisplayName
  113435.     );
  113436.  
  113437.  
  113438.  
  113439.  
  113440.  
  113441.  
  113442. __declspec(dllimport)
  113443. BOOL
  113444. __stdcall
  113445. ChangeServiceConfig2A(
  113446.                 SC_HANDLE hService,
  113447.                 DWORD dwInfoLevel,
  113448.                 LPVOID lpInfo
  113449.     );
  113450. __declspec(dllimport)
  113451. BOOL
  113452. __stdcall
  113453. ChangeServiceConfig2W(
  113454.                 SC_HANDLE hService,
  113455.                 DWORD dwInfoLevel,
  113456.                 LPVOID lpInfo
  113457.     );
  113458.  
  113459.  
  113460.  
  113461.  
  113462.  
  113463.  
  113464. __declspec(dllimport)
  113465. BOOL
  113466. __stdcall
  113467. CloseServiceHandle(
  113468.                 SC_HANDLE hSCObject
  113469.     );
  113470.  
  113471. __declspec(dllimport)
  113472. BOOL
  113473. __stdcall
  113474. ControlService(
  113475.                 SC_HANDLE hService,
  113476.                 DWORD dwControl,
  113477.                 LPSERVICE_STATUS lpServiceStatus
  113478.     );
  113479.  
  113480.  
  113481. __declspec(dllimport)
  113482. SC_HANDLE
  113483. __stdcall
  113484. CreateServiceA(
  113485.                 SC_HANDLE hSCManager,
  113486.                 LPCSTR lpServiceName,
  113487.                 LPCSTR lpDisplayName,
  113488.                 DWORD dwDesiredAccess,
  113489.                 DWORD dwServiceType,
  113490.                 DWORD dwStartType,
  113491.                 DWORD dwErrorControl,
  113492.                 LPCSTR lpBinaryPathName,
  113493.                 LPCSTR lpLoadOrderGroup,
  113494.                 LPDWORD lpdwTagId,
  113495.                 LPCSTR lpDependencies,
  113496.                 LPCSTR lpServiceStartName,
  113497.                 LPCSTR lpPassword
  113498.     );
  113499.  
  113500. __declspec(dllimport)
  113501. SC_HANDLE
  113502. __stdcall
  113503. CreateServiceW(
  113504.                 SC_HANDLE hSCManager,
  113505.                 LPCWSTR lpServiceName,
  113506.                 LPCWSTR lpDisplayName,
  113507.                 DWORD dwDesiredAccess,
  113508.                 DWORD dwServiceType,
  113509.                 DWORD dwStartType,
  113510.                 DWORD dwErrorControl,
  113511.                 LPCWSTR lpBinaryPathName,
  113512.                 LPCWSTR lpLoadOrderGroup,
  113513.                 LPDWORD lpdwTagId,
  113514.                 LPCWSTR lpDependencies,
  113515.                 LPCWSTR lpServiceStartName,
  113516.                 LPCWSTR lpPassword
  113517.     );
  113518.  
  113519.  
  113520.  
  113521.  
  113522.  
  113523.  
  113524. __declspec(dllimport)
  113525. BOOL
  113526. __stdcall
  113527. DeleteService(
  113528.                 SC_HANDLE hService
  113529.     );
  113530.  
  113531.  
  113532. __declspec(dllimport)
  113533. BOOL
  113534. __stdcall
  113535. EnumDependentServicesA(
  113536.                     SC_HANDLE hService,
  113537.                     DWORD dwServiceState,
  113538.  
  113539.                     LPENUM_SERVICE_STATUSA lpServices,
  113540.                     DWORD cbBufSize,
  113541.                     LPDWORD pcbBytesNeeded,
  113542.                     LPDWORD lpServicesReturned
  113543.     );
  113544.  
  113545. __declspec(dllimport)
  113546. BOOL
  113547. __stdcall
  113548. EnumDependentServicesW(
  113549.                     SC_HANDLE hService,
  113550.                     DWORD dwServiceState,
  113551.  
  113552.                     LPENUM_SERVICE_STATUSW lpServices,
  113553.                     DWORD cbBufSize,
  113554.                     LPDWORD pcbBytesNeeded,
  113555.                     LPDWORD lpServicesReturned
  113556.     );
  113557.  
  113558.  
  113559.  
  113560.  
  113561.  
  113562.  
  113563.  
  113564. #pragma endregion
  113565.  
  113566. #pragma region Desktop Family
  113567.  
  113568.  
  113569.  
  113570. __declspec(dllimport)
  113571. BOOL
  113572. __stdcall
  113573. EnumServicesStatusA(
  113574.                     SC_HANDLE hSCManager,
  113575.                     DWORD dwServiceType,
  113576.                     DWORD dwServiceState,
  113577.  
  113578.                     LPENUM_SERVICE_STATUSA lpServices,
  113579.                     DWORD cbBufSize,
  113580.                     LPDWORD pcbBytesNeeded,
  113581.                     LPDWORD lpServicesReturned,
  113582.                     LPDWORD lpResumeHandle
  113583.     );
  113584.  
  113585. __declspec(dllimport)
  113586. BOOL
  113587. __stdcall
  113588. EnumServicesStatusW(
  113589.                     SC_HANDLE hSCManager,
  113590.                     DWORD dwServiceType,
  113591.                     DWORD dwServiceState,
  113592.  
  113593.                     LPENUM_SERVICE_STATUSW lpServices,
  113594.                     DWORD cbBufSize,
  113595.                     LPDWORD pcbBytesNeeded,
  113596.                     LPDWORD lpServicesReturned,
  113597.                     LPDWORD lpResumeHandle
  113598.     );
  113599.  
  113600.  
  113601.  
  113602.  
  113603.  
  113604.  
  113605.  
  113606. #pragma endregion
  113607.  
  113608. #pragma region Desktop Family or OneCore Family
  113609.  
  113610.  
  113611.  
  113612. __declspec(dllimport)
  113613. BOOL
  113614. __stdcall
  113615. EnumServicesStatusExA(
  113616.                     SC_HANDLE hSCManager,
  113617.                     SC_ENUM_TYPE InfoLevel,
  113618.                     DWORD dwServiceType,
  113619.                     DWORD dwServiceState,
  113620.  
  113621.                     LPBYTE lpServices,
  113622.                     DWORD cbBufSize,
  113623.                     LPDWORD pcbBytesNeeded,
  113624.                     LPDWORD lpServicesReturned,
  113625.                     LPDWORD lpResumeHandle,
  113626.                     LPCSTR pszGroupName
  113627.     );
  113628.  
  113629. __declspec(dllimport)
  113630. BOOL
  113631. __stdcall
  113632. EnumServicesStatusExW(
  113633.                     SC_HANDLE hSCManager,
  113634.                     SC_ENUM_TYPE InfoLevel,
  113635.                     DWORD dwServiceType,
  113636.                     DWORD dwServiceState,
  113637.  
  113638.                     LPBYTE lpServices,
  113639.                     DWORD cbBufSize,
  113640.                     LPDWORD pcbBytesNeeded,
  113641.                     LPDWORD lpServicesReturned,
  113642.                     LPDWORD lpResumeHandle,
  113643.                     LPCWSTR pszGroupName
  113644.     );
  113645.  
  113646.  
  113647.  
  113648.  
  113649.  
  113650.  
  113651.  
  113652. __declspec(dllimport)
  113653. BOOL
  113654. __stdcall
  113655. GetServiceKeyNameA(
  113656.                     SC_HANDLE hSCManager,
  113657.                     LPCSTR lpDisplayName,
  113658.  
  113659.                     LPSTR lpServiceName,
  113660.                     LPDWORD lpcchBuffer
  113661.     );
  113662.  
  113663. __declspec(dllimport)
  113664. BOOL
  113665. __stdcall
  113666. GetServiceKeyNameW(
  113667.                     SC_HANDLE hSCManager,
  113668.                     LPCWSTR lpDisplayName,
  113669.  
  113670.                     LPWSTR lpServiceName,
  113671.                     LPDWORD lpcchBuffer
  113672.     );
  113673.  
  113674.  
  113675.  
  113676.  
  113677.  
  113678.  
  113679.  
  113680. __declspec(dllimport)
  113681. BOOL
  113682. __stdcall
  113683. GetServiceDisplayNameA(
  113684.                     SC_HANDLE hSCManager,
  113685.                     LPCSTR lpServiceName,
  113686.  
  113687.                     LPSTR lpDisplayName,
  113688.                     LPDWORD lpcchBuffer
  113689.     );
  113690.  
  113691. __declspec(dllimport)
  113692. BOOL
  113693. __stdcall
  113694. GetServiceDisplayNameW(
  113695.                     SC_HANDLE hSCManager,
  113696.                     LPCWSTR lpServiceName,
  113697.  
  113698.                     LPWSTR lpDisplayName,
  113699.                     LPDWORD lpcchBuffer
  113700.     );
  113701.  
  113702.  
  113703.  
  113704.  
  113705.  
  113706.  
  113707.  
  113708. #pragma endregion
  113709.  
  113710. #pragma region Desktop Family
  113711.  
  113712.  
  113713. __declspec(dllimport)
  113714. SC_LOCK
  113715. __stdcall
  113716. LockServiceDatabase(
  113717.                     SC_HANDLE hSCManager
  113718.     );
  113719.  
  113720. __declspec(dllimport)
  113721. BOOL
  113722. __stdcall
  113723. NotifyBootConfigStatus(
  113724.                     BOOL BootAcceptable
  113725.     );
  113726.  
  113727.  
  113728. #pragma endregion
  113729.  
  113730. #pragma region Desktop Family or OneCore Family
  113731.  
  113732.  
  113733.  
  113734. __declspec(dllimport)
  113735. SC_HANDLE
  113736. __stdcall
  113737. OpenSCManagerA(
  113738.                     LPCSTR lpMachineName,
  113739.                     LPCSTR lpDatabaseName,
  113740.                     DWORD dwDesiredAccess
  113741.     );
  113742.  
  113743. __declspec(dllimport)
  113744. SC_HANDLE
  113745. __stdcall
  113746. OpenSCManagerW(
  113747.                     LPCWSTR lpMachineName,
  113748.                     LPCWSTR lpDatabaseName,
  113749.                     DWORD dwDesiredAccess
  113750.     );
  113751.  
  113752.  
  113753.  
  113754.  
  113755.  
  113756.  
  113757.  
  113758. __declspec(dllimport)
  113759. SC_HANDLE
  113760. __stdcall
  113761. OpenServiceA(
  113762.                     SC_HANDLE hSCManager,
  113763.                     LPCSTR lpServiceName,
  113764.                     DWORD dwDesiredAccess
  113765.     );
  113766.  
  113767. __declspec(dllimport)
  113768. SC_HANDLE
  113769. __stdcall
  113770. OpenServiceW(
  113771.                     SC_HANDLE hSCManager,
  113772.                     LPCWSTR lpServiceName,
  113773.                     DWORD dwDesiredAccess
  113774.     );
  113775.  
  113776.  
  113777.  
  113778.  
  113779.  
  113780.  
  113781.  
  113782. __declspec(dllimport)
  113783. BOOL
  113784. __stdcall
  113785. QueryServiceConfigA(
  113786.                     SC_HANDLE hService,
  113787.  
  113788.                     LPQUERY_SERVICE_CONFIGA lpServiceConfig,
  113789.                     DWORD cbBufSize,
  113790.                     LPDWORD pcbBytesNeeded
  113791.     );
  113792.  
  113793. __declspec(dllimport)
  113794. BOOL
  113795. __stdcall
  113796. QueryServiceConfigW(
  113797.                     SC_HANDLE hService,
  113798.  
  113799.                     LPQUERY_SERVICE_CONFIGW lpServiceConfig,
  113800.                     DWORD cbBufSize,
  113801.                     LPDWORD pcbBytesNeeded
  113802.     );
  113803. # 1436 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  113804. __declspec(dllimport)
  113805. BOOL
  113806. __stdcall
  113807. QueryServiceConfig2A(
  113808.                     SC_HANDLE hService,
  113809.                     DWORD dwInfoLevel,
  113810.  
  113811.                     LPBYTE lpBuffer,
  113812.                     DWORD cbBufSize,
  113813.                     LPDWORD pcbBytesNeeded
  113814.     );
  113815. # 1455 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  113816. __declspec(dllimport)
  113817. BOOL
  113818. __stdcall
  113819. QueryServiceConfig2W(
  113820.                     SC_HANDLE hService,
  113821.                     DWORD dwInfoLevel,
  113822.  
  113823.                     LPBYTE lpBuffer,
  113824.                     DWORD cbBufSize,
  113825.                     LPDWORD pcbBytesNeeded
  113826.     );
  113827.  
  113828.  
  113829.  
  113830.  
  113831.  
  113832.  
  113833.  
  113834. #pragma endregion
  113835.  
  113836. #pragma region Desktop Family
  113837.  
  113838.  
  113839.  
  113840. __declspec(dllimport)
  113841. BOOL
  113842. __stdcall
  113843. QueryServiceLockStatusA(
  113844.                     SC_HANDLE hSCManager,
  113845.  
  113846.                     LPQUERY_SERVICE_LOCK_STATUSA lpLockStatus,
  113847.                     DWORD cbBufSize,
  113848.                     LPDWORD pcbBytesNeeded
  113849.     );
  113850.  
  113851. __declspec(dllimport)
  113852. BOOL
  113853. __stdcall
  113854. QueryServiceLockStatusW(
  113855.                     SC_HANDLE hSCManager,
  113856.  
  113857.                     LPQUERY_SERVICE_LOCK_STATUSW lpLockStatus,
  113858.                     DWORD cbBufSize,
  113859.                     LPDWORD pcbBytesNeeded
  113860.     );
  113861.  
  113862.  
  113863.  
  113864.  
  113865.  
  113866.  
  113867.  
  113868. #pragma endregion
  113869.  
  113870. #pragma region Desktop Family or OneCore Family
  113871.  
  113872.  
  113873.  
  113874. __declspec(dllimport)
  113875. BOOL
  113876. __stdcall
  113877. QueryServiceObjectSecurity(
  113878.                     SC_HANDLE hService,
  113879.                     SECURITY_INFORMATION dwSecurityInformation,
  113880.  
  113881.                     PSECURITY_DESCRIPTOR lpSecurityDescriptor,
  113882.                     DWORD cbBufSize,
  113883.                     LPDWORD pcbBytesNeeded
  113884.     );
  113885.  
  113886.  
  113887. __declspec(dllimport)
  113888. BOOL
  113889. __stdcall
  113890. QueryServiceStatus(
  113891.                     SC_HANDLE hService,
  113892.                     LPSERVICE_STATUS lpServiceStatus
  113893.     );
  113894.  
  113895.  
  113896. __declspec(dllimport)
  113897. BOOL
  113898. __stdcall
  113899. QueryServiceStatusEx(
  113900.                     SC_HANDLE hService,
  113901.                     SC_STATUS_TYPE InfoLevel,
  113902.  
  113903.                     LPBYTE lpBuffer,
  113904.                     DWORD cbBufSize,
  113905.                     LPDWORD pcbBytesNeeded
  113906.     );
  113907.  
  113908.  
  113909. __declspec(dllimport)
  113910. SERVICE_STATUS_HANDLE
  113911. __stdcall
  113912. RegisterServiceCtrlHandlerA(
  113913.             LPCSTR lpServiceName,
  113914.  
  113915.             LPHANDLER_FUNCTION lpHandlerProc
  113916.     );
  113917.  
  113918. __declspec(dllimport)
  113919. SERVICE_STATUS_HANDLE
  113920. __stdcall
  113921. RegisterServiceCtrlHandlerW(
  113922.             LPCWSTR lpServiceName,
  113923.  
  113924.             LPHANDLER_FUNCTION lpHandlerProc
  113925.     );
  113926.  
  113927.  
  113928.  
  113929.  
  113930.  
  113931.  
  113932.  
  113933. __declspec(dllimport)
  113934. SERVICE_STATUS_HANDLE
  113935. __stdcall
  113936. RegisterServiceCtrlHandlerExA(
  113937.             LPCSTR lpServiceName,
  113938.  
  113939.             LPHANDLER_FUNCTION_EX lpHandlerProc,
  113940.              LPVOID lpContext
  113941.     );
  113942.  
  113943. __declspec(dllimport)
  113944. SERVICE_STATUS_HANDLE
  113945. __stdcall
  113946. RegisterServiceCtrlHandlerExW(
  113947.             LPCWSTR lpServiceName,
  113948.  
  113949.             LPHANDLER_FUNCTION_EX lpHandlerProc,
  113950.              LPVOID lpContext
  113951.     );
  113952.  
  113953.  
  113954.  
  113955.  
  113956.  
  113957.  
  113958. __declspec(dllimport)
  113959. BOOL
  113960. __stdcall
  113961. SetServiceObjectSecurity(
  113962.                 SC_HANDLE hService,
  113963.                 SECURITY_INFORMATION dwSecurityInformation,
  113964.                 PSECURITY_DESCRIPTOR lpSecurityDescriptor
  113965.     );
  113966.  
  113967. __declspec(dllimport)
  113968. BOOL
  113969. __stdcall
  113970. SetServiceStatus(
  113971.                 SERVICE_STATUS_HANDLE hServiceStatus,
  113972.                 LPSERVICE_STATUS lpServiceStatus
  113973.     );
  113974.  
  113975. __declspec(dllimport)
  113976. BOOL
  113977. __stdcall
  113978. StartServiceCtrlDispatcherA(
  113979.          const SERVICE_TABLE_ENTRYA *lpServiceStartTable
  113980.     );
  113981. __declspec(dllimport)
  113982. BOOL
  113983. __stdcall
  113984. StartServiceCtrlDispatcherW(
  113985.          const SERVICE_TABLE_ENTRYW *lpServiceStartTable
  113986.     );
  113987.  
  113988.  
  113989.  
  113990.  
  113991.  
  113992.  
  113993.  
  113994. __declspec(dllimport)
  113995. BOOL
  113996. __stdcall
  113997. StartServiceA(
  113998.                     SC_HANDLE hService,
  113999.                     DWORD dwNumServiceArgs,
  114000.  
  114001.                     LPCSTR *lpServiceArgVectors
  114002.     );
  114003. __declspec(dllimport)
  114004. BOOL
  114005. __stdcall
  114006. StartServiceW(
  114007.                     SC_HANDLE hService,
  114008.                     DWORD dwNumServiceArgs,
  114009.  
  114010.                     LPCWSTR *lpServiceArgVectors
  114011.     );
  114012.  
  114013.  
  114014.  
  114015.  
  114016.  
  114017.  
  114018.  
  114019. #pragma endregion
  114020.  
  114021. #pragma region Desktop Family
  114022.  
  114023.  
  114024. __declspec(dllimport)
  114025. BOOL
  114026. __stdcall
  114027. UnlockServiceDatabase(
  114028.                     SC_LOCK ScLock
  114029.     );
  114030.  
  114031.  
  114032. #pragma endregion
  114033.  
  114034. #pragma region Desktop Family or OneCore Family
  114035.  
  114036.  
  114037.  
  114038.  
  114039. __declspec(dllimport)
  114040. DWORD
  114041. __stdcall
  114042. NotifyServiceStatusChangeA (
  114043.                 SC_HANDLE hService,
  114044.                 DWORD dwNotifyMask,
  114045.                 PSERVICE_NOTIFYA pNotifyBuffer
  114046.     );
  114047. __declspec(dllimport)
  114048. DWORD
  114049. __stdcall
  114050. NotifyServiceStatusChangeW (
  114051.                 SC_HANDLE hService,
  114052.                 DWORD dwNotifyMask,
  114053.                 PSERVICE_NOTIFYW pNotifyBuffer
  114054.     );
  114055.  
  114056.  
  114057.  
  114058.  
  114059.  
  114060.  
  114061. __declspec(dllimport)
  114062. BOOL
  114063. __stdcall
  114064. ControlServiceExA(
  114065.                 SC_HANDLE hService,
  114066.                 DWORD dwControl,
  114067.                 DWORD dwInfoLevel,
  114068.                 PVOID pControlParams
  114069.     );
  114070. __declspec(dllimport)
  114071. BOOL
  114072. __stdcall
  114073. ControlServiceExW(
  114074.                 SC_HANDLE hService,
  114075.                 DWORD dwControl,
  114076.                 DWORD dwInfoLevel,
  114077.                 PVOID pControlParams
  114078.     );
  114079.  
  114080.  
  114081.  
  114082.  
  114083.  
  114084.  
  114085. __declspec(dllimport)
  114086. BOOL
  114087. __stdcall
  114088. QueryServiceDynamicInformation (
  114089.                 SERVICE_STATUS_HANDLE hServiceStatus,
  114090.                 DWORD dwInfoLevel,
  114091.                 PVOID * ppDynamicInfo
  114092.     );
  114093. # 1741 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  114094. typedef enum _SC_EVENT_TYPE {
  114095.     SC_EVENT_DATABASE_CHANGE,
  114096.     SC_EVENT_PROPERTY_CHANGE,
  114097.     SC_EVENT_STATUS_CHANGE
  114098. } SC_EVENT_TYPE, *PSC_EVENT_TYPE;
  114099.  
  114100. typedef
  114101. void
  114102. __stdcall
  114103. SC_NOTIFICATION_CALLBACK (
  114104.                 DWORD dwNotify,
  114105.                 PVOID pCallbackContext
  114106.     );
  114107. typedef SC_NOTIFICATION_CALLBACK* PSC_NOTIFICATION_CALLBACK;
  114108.  
  114109. typedef struct _SC_NOTIFICATION_REGISTRATION* PSC_NOTIFICATION_REGISTRATION;
  114110.  
  114111. __declspec(dllimport)
  114112. DWORD
  114113. __stdcall
  114114. SubscribeServiceChangeNotifications (
  114115.               SC_HANDLE hService,
  114116.               SC_EVENT_TYPE eEventType,
  114117.               PSC_NOTIFICATION_CALLBACK pCallback,
  114118.               PVOID pCallbackContext,
  114119.               PSC_NOTIFICATION_REGISTRATION* pSubscription
  114120.     );
  114121.  
  114122. __declspec(dllimport)
  114123. void
  114124. __stdcall
  114125. UnsubscribeServiceChangeNotifications (
  114126.               PSC_NOTIFICATION_REGISTRATION pSubscription
  114127.     );
  114128.  
  114129. __declspec(dllimport)
  114130. DWORD
  114131. __stdcall
  114132. WaitServiceState (
  114133.               SC_HANDLE hService,
  114134.               DWORD dwNotify,
  114135.               DWORD dwTimeout,
  114136.               HANDLE hCancelEvent
  114137.     );
  114138. # 1794 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  114139. typedef enum SERVICE_REGISTRY_STATE_TYPE {
  114140.     ServiceRegistryStateParameters = 0,
  114141.     ServiceRegistryStatePersistent = 1,
  114142.     MaxServiceRegistryStateType = 2,
  114143. } SERVICE_REGISTRY_STATE_TYPE;
  114144.  
  114145.  
  114146. DWORD
  114147. __stdcall
  114148. GetServiceRegistryStateKey(
  114149.          SERVICE_STATUS_HANDLE ServiceStatusHandle,
  114150.          SERVICE_REGISTRY_STATE_TYPE StateType,
  114151.          DWORD AccessMask,
  114152.           HKEY *ServiceStateKey
  114153.     );
  114154.  
  114155.  
  114156.  
  114157.  
  114158. #pragma endregion
  114159. # 1823 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\winsvc.h" 3
  114160. #pragma option pop
  114161. # 283 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 2 3
  114162.  
  114163.  
  114164.  
  114165.  
  114166.  
  114167. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mcx.h" 1 3
  114168. # 10 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mcx.h" 3
  114169. #pragma option push -b -a8 -pc -A- -w-pun
  114170. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mcx.h" 3
  114171. typedef struct _MODEMDEVCAPS {
  114172.     DWORD dwActualSize;
  114173.     DWORD dwRequiredSize;
  114174.     DWORD dwDevSpecificOffset;
  114175.     DWORD dwDevSpecificSize;
  114176.  
  114177.  
  114178.     DWORD dwModemProviderVersion;
  114179.     DWORD dwModemManufacturerOffset;
  114180.     DWORD dwModemManufacturerSize;
  114181.     DWORD dwModemModelOffset;
  114182.     DWORD dwModemModelSize;
  114183.     DWORD dwModemVersionOffset;
  114184.     DWORD dwModemVersionSize;
  114185.  
  114186.  
  114187.     DWORD dwDialOptions;
  114188.     DWORD dwCallSetupFailTimer;
  114189.     DWORD dwInactivityTimeout;
  114190.     DWORD dwSpeakerVolume;
  114191.     DWORD dwSpeakerMode;
  114192.     DWORD dwModemOptions;
  114193.     DWORD dwMaxDTERate;
  114194.     DWORD dwMaxDCERate;
  114195.  
  114196.  
  114197.     BYTE abVariablePortion [1];
  114198. } MODEMDEVCAPS, *PMODEMDEVCAPS, *LPMODEMDEVCAPS;
  114199.  
  114200. typedef struct _MODEMSETTINGS {
  114201.     DWORD dwActualSize;
  114202.     DWORD dwRequiredSize;
  114203.     DWORD dwDevSpecificOffset;
  114204.     DWORD dwDevSpecificSize;
  114205.  
  114206.  
  114207.     DWORD dwCallSetupFailTimer;
  114208.     DWORD dwInactivityTimeout;
  114209.     DWORD dwSpeakerVolume;
  114210.     DWORD dwSpeakerMode;
  114211.     DWORD dwPreferredModemOptions;
  114212.  
  114213.  
  114214.     DWORD dwNegotiatedModemOptions;
  114215.     DWORD dwNegotiatedDCERate;
  114216.  
  114217.  
  114218.     BYTE abVariablePortion [1];
  114219. } MODEMSETTINGS, *PMODEMSETTINGS, *LPMODEMSETTINGS;
  114220. # 732 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\mcx.h" 3
  114221. #pragma option pop
  114222. # 288 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 2 3
  114223.  
  114224.  
  114225.  
  114226.  
  114227. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\imm.h" 1 3
  114228. #pragma option push -b -a8 -pc -A- -w-pun
  114229. # 28 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\imm.h" 3
  114230. #pragma region Application Family
  114231.  
  114232.  
  114233.  
  114234. struct HIMC__{int unused;}; typedef struct HIMC__ *HIMC;
  114235. struct HIMCC__{int unused;}; typedef struct HIMCC__ *HIMCC;
  114236.  
  114237.  
  114238.  
  114239.  
  114240.  
  114241.  
  114242. #pragma endregion
  114243.  
  114244. #pragma region Desktop Family
  114245.  
  114246.  
  114247. typedef HKL *LPHKL;
  114248. typedef UINT *LPUINT;
  114249.  
  114250.  
  114251. #pragma endregion
  114252.  
  114253. #pragma region Application Family
  114254.  
  114255.  
  114256. typedef struct tagCOMPOSITIONFORM {
  114257.     DWORD dwStyle;
  114258.     POINT ptCurrentPos;
  114259.     RECT rcArea;
  114260. } COMPOSITIONFORM, *PCOMPOSITIONFORM, *NPCOMPOSITIONFORM, *LPCOMPOSITIONFORM;
  114261.  
  114262.  
  114263. typedef struct tagCANDIDATEFORM {
  114264.     DWORD dwIndex;
  114265.     DWORD dwStyle;
  114266.     POINT ptCurrentPos;
  114267.     RECT rcArea;
  114268. } CANDIDATEFORM, *PCANDIDATEFORM, *NPCANDIDATEFORM, *LPCANDIDATEFORM;
  114269.  
  114270.  
  114271. #pragma endregion
  114272.  
  114273.  
  114274.  
  114275. #pragma region Desktop Family
  114276.  
  114277.  
  114278. typedef struct tagCANDIDATELIST {
  114279.     DWORD dwSize;
  114280.     DWORD dwStyle;
  114281.     DWORD dwCount;
  114282.     DWORD dwSelection;
  114283.     DWORD dwPageStart;
  114284.     DWORD dwPageSize;
  114285.     DWORD dwOffset[1];
  114286. } CANDIDATELIST, *PCANDIDATELIST, *NPCANDIDATELIST, *LPCANDIDATELIST;
  114287.  
  114288.  
  114289. #pragma endregion
  114290.  
  114291.  
  114292. #pragma region Application Family
  114293.  
  114294.  
  114295. typedef struct tagREGISTERWORDA {
  114296.     LPSTR lpReading;
  114297.     LPSTR lpWord;
  114298. } REGISTERWORDA, *PREGISTERWORDA, *NPREGISTERWORDA, *LPREGISTERWORDA;
  114299. typedef struct tagREGISTERWORDW {
  114300.     LPWSTR lpReading;
  114301.     LPWSTR lpWord;
  114302. } REGISTERWORDW, *PREGISTERWORDW, *NPREGISTERWORDW, *LPREGISTERWORDW;
  114303.  
  114304.  
  114305.  
  114306.  
  114307.  
  114308.  
  114309. typedef REGISTERWORDA REGISTERWORD;
  114310. typedef PREGISTERWORDA PREGISTERWORD;
  114311. typedef NPREGISTERWORDA NPREGISTERWORD;
  114312. typedef LPREGISTERWORDA LPREGISTERWORD;
  114313.  
  114314.  
  114315.  
  114316. #pragma endregion
  114317.  
  114318.  
  114319.  
  114320. #pragma region Desktop Family
  114321.  
  114322.  
  114323. typedef struct tagRECONVERTSTRING {
  114324.     DWORD dwSize;
  114325.     DWORD dwVersion;
  114326.     DWORD dwStrLen;
  114327.     DWORD dwStrOffset;
  114328.     DWORD dwCompStrLen;
  114329.     DWORD dwCompStrOffset;
  114330.     DWORD dwTargetStrLen;
  114331.     DWORD dwTargetStrOffset;
  114332. } RECONVERTSTRING, *PRECONVERTSTRING, *NPRECONVERTSTRING, *LPRECONVERTSTRING;
  114333.  
  114334.  
  114335. #pragma endregion
  114336.  
  114337.  
  114338.  
  114339.  
  114340.  
  114341. #pragma region Application Family
  114342.  
  114343.  
  114344. typedef struct tagSTYLEBUFA {
  114345.     DWORD dwStyle;
  114346.     CHAR szDescription[32];
  114347. } STYLEBUFA, *PSTYLEBUFA, *NPSTYLEBUFA, *LPSTYLEBUFA;
  114348. typedef struct tagSTYLEBUFW {
  114349.     DWORD dwStyle;
  114350.     WCHAR szDescription[32];
  114351. } STYLEBUFW, *PSTYLEBUFW, *NPSTYLEBUFW, *LPSTYLEBUFW;
  114352.  
  114353.  
  114354.  
  114355.  
  114356.  
  114357.  
  114358. typedef STYLEBUFA STYLEBUF;
  114359. typedef PSTYLEBUFA PSTYLEBUF;
  114360. typedef NPSTYLEBUFA NPSTYLEBUF;
  114361. typedef LPSTYLEBUFA LPSTYLEBUF;
  114362.  
  114363.  
  114364.  
  114365. #pragma endregion
  114366.  
  114367.  
  114368.  
  114369.  
  114370.  
  114371. #pragma region Desktop Family
  114372.  
  114373.  
  114374. typedef struct tagIMEMENUITEMINFOA {
  114375.     UINT cbSize;
  114376.     UINT fType;
  114377.     UINT fState;
  114378.     UINT wID;
  114379.     HBITMAP hbmpChecked;
  114380.     HBITMAP hbmpUnchecked;
  114381.     DWORD dwItemData;
  114382.     CHAR szString[80];
  114383.     HBITMAP hbmpItem;
  114384. } IMEMENUITEMINFOA, *PIMEMENUITEMINFOA, *NPIMEMENUITEMINFOA, *LPIMEMENUITEMINFOA;
  114385. typedef struct tagIMEMENUITEMINFOW {
  114386.     UINT cbSize;
  114387.     UINT fType;
  114388.     UINT fState;
  114389.     UINT wID;
  114390.     HBITMAP hbmpChecked;
  114391.     HBITMAP hbmpUnchecked;
  114392.     DWORD dwItemData;
  114393.     WCHAR szString[80];
  114394.     HBITMAP hbmpItem;
  114395. } IMEMENUITEMINFOW, *PIMEMENUITEMINFOW, *NPIMEMENUITEMINFOW, *LPIMEMENUITEMINFOW;
  114396.  
  114397.  
  114398.  
  114399.  
  114400.  
  114401.  
  114402. typedef IMEMENUITEMINFOA IMEMENUITEMINFO;
  114403. typedef PIMEMENUITEMINFOA PIMEMENUITEMINFO;
  114404. typedef NPIMEMENUITEMINFOA NPIMEMENUITEMINFO;
  114405. typedef LPIMEMENUITEMINFOA LPIMEMENUITEMINFO;
  114406.  
  114407.  
  114408. typedef struct tagIMECHARPOSITION {
  114409.     DWORD dwSize;
  114410.     DWORD dwCharPos;
  114411.     POINT pt;
  114412.     UINT cLineHeight;
  114413.     RECT rcDocument;
  114414. } IMECHARPOSITION, *PIMECHARPOSITION, *NPIMECHARPOSITION, *LPIMECHARPOSITION;
  114415.  
  114416. typedef BOOL (__stdcall* IMCENUMPROC)(HIMC, LPARAM);
  114417.  
  114418.  
  114419. #pragma endregion
  114420.  
  114421.  
  114422.  
  114423.  
  114424.  
  114425.  
  114426.  
  114427. #pragma region Desktop Family
  114428.  
  114429.  
  114430. HKL __stdcall ImmInstallIMEA( LPCSTR lpszIMEFileName, LPCSTR lpszLayoutText);
  114431. HKL __stdcall ImmInstallIMEW( LPCWSTR lpszIMEFileName, LPCWSTR lpszLayoutText);
  114432.  
  114433.  
  114434.  
  114435.  
  114436.  
  114437.  
  114438. HWND __stdcall ImmGetDefaultIMEWnd( HWND);
  114439.  
  114440. UINT __stdcall ImmGetDescriptionA( HKL, LPSTR lpszDescription, UINT uBufLen);
  114441. UINT __stdcall ImmGetDescriptionW( HKL, LPWSTR lpszDescription, UINT uBufLen);
  114442.  
  114443.  
  114444.  
  114445.  
  114446.  
  114447.  
  114448. UINT __stdcall ImmGetIMEFileNameA( HKL, LPSTR lpszFileName, UINT uBufLen);
  114449. UINT __stdcall ImmGetIMEFileNameW( HKL, LPWSTR lpszFileName, UINT uBufLen);
  114450.  
  114451.  
  114452.  
  114453.  
  114454.  
  114455.  
  114456. DWORD __stdcall ImmGetProperty( HKL, DWORD);
  114457.  
  114458. BOOL __stdcall ImmIsIME( HKL);
  114459.  
  114460. BOOL __stdcall ImmSimulateHotKey( HWND, DWORD);
  114461.  
  114462. HIMC __stdcall ImmCreateContext(void);
  114463. BOOL __stdcall ImmDestroyContext( HIMC);
  114464. HIMC __stdcall ImmGetContext( HWND);
  114465. BOOL __stdcall ImmReleaseContext( HWND, HIMC);
  114466. HIMC __stdcall ImmAssociateContext( HWND, HIMC);
  114467.  
  114468. BOOL __stdcall ImmAssociateContextEx( HWND, HIMC, DWORD);
  114469.  
  114470.  
  114471. LONG __stdcall ImmGetCompositionStringA( HIMC, DWORD, LPVOID lpBuf, DWORD dwBufLen);
  114472. LONG __stdcall ImmGetCompositionStringW( HIMC, DWORD, LPVOID lpBuf, DWORD dwBufLen);
  114473.  
  114474.  
  114475.  
  114476.  
  114477.  
  114478.  
  114479. BOOL __stdcall ImmSetCompositionStringA( HIMC, DWORD dwIndex, LPVOID lpComp, DWORD dwCompLen, LPVOID lpRead, DWORD dwReadLen);
  114480. BOOL __stdcall ImmSetCompositionStringW( HIMC, DWORD dwIndex, LPVOID lpComp, DWORD dwCompLen, LPVOID lpRead, DWORD dwReadLen);
  114481.  
  114482.  
  114483.  
  114484.  
  114485.  
  114486.  
  114487. DWORD __stdcall ImmGetCandidateListCountA( HIMC, LPDWORD lpdwListCount);
  114488. DWORD __stdcall ImmGetCandidateListCountW( HIMC, LPDWORD lpdwListCount);
  114489.  
  114490.  
  114491.  
  114492.  
  114493.  
  114494.  
  114495. DWORD __stdcall ImmGetCandidateListA( HIMC, DWORD deIndex, LPCANDIDATELIST lpCandList, DWORD dwBufLen);
  114496. DWORD __stdcall ImmGetCandidateListW( HIMC, DWORD deIndex, LPCANDIDATELIST lpCandList, DWORD dwBufLen);
  114497.  
  114498.  
  114499.  
  114500.  
  114501.  
  114502.  
  114503. DWORD __stdcall ImmGetGuideLineA( HIMC, DWORD dwIndex, LPSTR lpBuf, DWORD dwBufLen);
  114504. DWORD __stdcall ImmGetGuideLineW( HIMC, DWORD dwIndex, LPWSTR lpBuf, DWORD dwBufLen);
  114505.  
  114506.  
  114507.  
  114508.  
  114509.  
  114510.  
  114511. BOOL __stdcall ImmGetConversionStatus( HIMC, LPDWORD lpfdwConversion, LPDWORD lpfdwSentence);
  114512. BOOL __stdcall ImmSetConversionStatus( HIMC, DWORD, DWORD);
  114513. BOOL __stdcall ImmGetOpenStatus( HIMC);
  114514. BOOL __stdcall ImmSetOpenStatus( HIMC, BOOL);
  114515.  
  114516.  
  114517. BOOL __stdcall ImmGetCompositionFontA( HIMC, LPLOGFONTA lplf);
  114518. BOOL __stdcall ImmGetCompositionFontW( HIMC, LPLOGFONTW lplf);
  114519.  
  114520.  
  114521.  
  114522.  
  114523.  
  114524.  
  114525. BOOL __stdcall ImmSetCompositionFontA( HIMC, LPLOGFONTA lplf);
  114526. BOOL __stdcall ImmSetCompositionFontW( HIMC, LPLOGFONTW lplf);
  114527.  
  114528.  
  114529.  
  114530.  
  114531.  
  114532.  
  114533.  
  114534. BOOL __stdcall ImmConfigureIMEA( HKL, HWND, DWORD, LPVOID);
  114535. BOOL __stdcall ImmConfigureIMEW( HKL, HWND, DWORD, LPVOID);
  114536.  
  114537.  
  114538.  
  114539.  
  114540.  
  114541.  
  114542. LRESULT __stdcall ImmEscapeA( HKL, HIMC, UINT, LPVOID);
  114543. LRESULT __stdcall ImmEscapeW( HKL, HIMC, UINT, LPVOID);
  114544.  
  114545.  
  114546.  
  114547.  
  114548.  
  114549.  
  114550. DWORD __stdcall ImmGetConversionListA( HKL, HIMC, LPCSTR lpSrc, LPCANDIDATELIST lpDst, DWORD dwBufLen, UINT uFlag);
  114551. DWORD __stdcall ImmGetConversionListW( HKL, HIMC, LPCWSTR lpSrc, LPCANDIDATELIST lpDst, DWORD dwBufLen, UINT uFlag);
  114552.  
  114553.  
  114554.  
  114555.  
  114556.  
  114557.  
  114558. BOOL __stdcall ImmNotifyIME( HIMC, DWORD dwAction, DWORD dwIndex, DWORD dwValue);
  114559.  
  114560. BOOL __stdcall ImmGetStatusWindowPos( HIMC, LPPOINT lpptPos);
  114561. BOOL __stdcall ImmSetStatusWindowPos( HIMC, LPPOINT lpptPos);
  114562. BOOL __stdcall ImmGetCompositionWindow( HIMC, LPCOMPOSITIONFORM lpCompForm);
  114563. BOOL __stdcall ImmSetCompositionWindow( HIMC, LPCOMPOSITIONFORM lpCompForm);
  114564. BOOL __stdcall ImmGetCandidateWindow( HIMC, DWORD, LPCANDIDATEFORM lpCandidate);
  114565. BOOL __stdcall ImmSetCandidateWindow( HIMC, LPCANDIDATEFORM lpCandidate);
  114566.  
  114567. BOOL __stdcall ImmIsUIMessageA( HWND, UINT, WPARAM, LPARAM);
  114568. BOOL __stdcall ImmIsUIMessageW( HWND, UINT, WPARAM, LPARAM);
  114569.  
  114570.  
  114571.  
  114572.  
  114573.  
  114574.  
  114575. UINT __stdcall ImmGetVirtualKey( HWND);
  114576.  
  114577. typedef int (__stdcall *REGISTERWORDENUMPROCA)( LPCSTR lpszReading, DWORD, LPCSTR lpszString, LPVOID);
  114578. typedef int (__stdcall *REGISTERWORDENUMPROCW)( LPCWSTR lpszReading, DWORD, LPCWSTR lpszString, LPVOID);
  114579.  
  114580.  
  114581.  
  114582.  
  114583.  
  114584.  
  114585. BOOL __stdcall ImmRegisterWordA( HKL, LPCSTR lpszReading, DWORD, LPCSTR lpszRegister);
  114586. BOOL __stdcall ImmRegisterWordW( HKL, LPCWSTR lpszReading, DWORD, LPCWSTR lpszRegister);
  114587.  
  114588.  
  114589.  
  114590.  
  114591.  
  114592.  
  114593. BOOL __stdcall ImmUnregisterWordA( HKL, LPCSTR lpszReading, DWORD, LPCSTR lpszUnregister);
  114594. BOOL __stdcall ImmUnregisterWordW( HKL, LPCWSTR lpszReading, DWORD, LPCWSTR lpszUnregister);
  114595.  
  114596.  
  114597.  
  114598.  
  114599.  
  114600.  
  114601. UINT __stdcall ImmGetRegisterWordStyleA( HKL, UINT nItem, LPSTYLEBUFA lpStyleBuf);
  114602. UINT __stdcall ImmGetRegisterWordStyleW( HKL, UINT nItem, LPSTYLEBUFW lpStyleBuf);
  114603.  
  114604.  
  114605.  
  114606.  
  114607.  
  114608.  
  114609. UINT __stdcall ImmEnumRegisterWordA( HKL, REGISTERWORDENUMPROCA, LPCSTR lpszReading, DWORD, LPCSTR lpszRegister, LPVOID);
  114610. UINT __stdcall ImmEnumRegisterWordW( HKL, REGISTERWORDENUMPROCW, LPCWSTR lpszReading, DWORD, LPCWSTR lpszRegister, LPVOID);
  114611.  
  114612.  
  114613.  
  114614.  
  114615.  
  114616.  
  114617.  
  114618. BOOL __stdcall ImmDisableIME( DWORD);
  114619. BOOL __stdcall ImmEnumInputContext(DWORD idThread, IMCENUMPROC lpfn, LPARAM lParam);
  114620. DWORD __stdcall ImmGetImeMenuItemsA( HIMC, DWORD, DWORD, LPIMEMENUITEMINFOA lpImeParentMenu, LPIMEMENUITEMINFOA lpImeMenu, DWORD dwSize);
  114621. DWORD __stdcall ImmGetImeMenuItemsW( HIMC, DWORD, DWORD, LPIMEMENUITEMINFOW lpImeParentMenu, LPIMEMENUITEMINFOW lpImeMenu, DWORD dwSize);
  114622.  
  114623.  
  114624.  
  114625.  
  114626.  
  114627.  
  114628. BOOL __stdcall ImmDisableTextFrameService(DWORD idThread);
  114629.  
  114630.  
  114631.  
  114632. BOOL __stdcall ImmDisableLegacyIME(void);
  114633.  
  114634.  
  114635.  
  114636. #pragma endregion
  114637. # 636 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\imm.h" 3
  114638. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ime_cmodes.h" 1 3
  114639. #pragma option push -b -a8 -pc -A- -w-pun
  114640. # 26 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\ime_cmodes.h" 3
  114641. #pragma option pop
  114642. # 636 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\imm.h" 2 3
  114643. # 783 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\imm.h" 3
  114644. #pragma option pop
  114645. # 292 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 2 3
  114646. # 302 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 3
  114647. #pragma warning(default: 4001)
  114648. #pragma warning(default: 4201)
  114649. #pragma warning(default: 4214)
  114650.  
  114651.  
  114652.  
  114653.  
  114654.  
  114655.  
  114656.  
  114657.  
  114658. #pragma endregion
  114659.  
  114660.  
  114661.  
  114662. #pragma option pop
  114663. # 21 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 2 3
  114664. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  114665. #pragma option pop
  114666. # 129 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 2 3
  114667.  
  114668. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  114669. #pragma option push -b -a8 -pc -A- -w-pun
  114670. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  114671. #pragma option pop
  114672. # 130 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 2 3
  114673.  
  114674. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\string.h" 1 3
  114675. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\string.h" 3
  114676. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 1 3
  114677. # 454 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 3
  114678. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mem.h" 1 3
  114679. # 454 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\_str.h" 2 3
  114680. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\string.h" 2 3
  114681. # 131 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 2 3
  114682.  
  114683. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\memory.h" 1 3
  114684. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\memory.h" 3
  114685. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\mem.h" 1 3
  114686. # 13 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\crtl\\memory.h" 2 3
  114687. # 132 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 2 3
  114688.  
  114689.  
  114690. typedef struct tagCInterfaceProxyHeader
  114691. {
  114692.  
  114693.  
  114694.  
  114695.  
  114696.     const void * pStublessProxyInfo;
  114697.  
  114698.     const IID * piid;
  114699. } CInterfaceProxyHeader;
  114700. # 157 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 3
  114701. #pragma warning(disable: 4200)
  114702. typedef struct tagCInterfaceProxyVtbl
  114703. {
  114704.     CInterfaceProxyHeader header;
  114705.  
  114706.  
  114707.  
  114708.     void *Vtbl[1];
  114709.  
  114710. } CInterfaceProxyVtbl;
  114711.  
  114712.  
  114713.  
  114714. #pragma warning(default: 4200)
  114715.  
  114716.  
  114717. typedef
  114718. void
  114719. (__stdcall * PRPC_STUB_FUNCTION) (
  114720.     IRpcStubBuffer * This,
  114721.     IRpcChannelBuffer * _pRpcChannelBuffer,
  114722.     PRPC_MESSAGE _pRpcMessage,
  114723.     DWORD *pdwStubPhase);
  114724.  
  114725. typedef struct tagCInterfaceStubHeader
  114726. {
  114727.  
  114728.     const IID * piid;
  114729.     const MIDL_SERVER_INFO * pServerInfo;
  114730.     ULONG DispatchTableCount;
  114731.     const PRPC_STUB_FUNCTION * pDispatchTable;
  114732. } CInterfaceStubHeader;
  114733.  
  114734. typedef struct tagCInterfaceStubVtbl
  114735. {
  114736.     CInterfaceStubHeader header;
  114737.     IRpcStubBufferVtbl Vtbl;
  114738. } CInterfaceStubVtbl;
  114739.  
  114740. typedef struct tagCStdStubBuffer
  114741. {
  114742.     const struct IRpcStubBufferVtbl * lpVtbl;
  114743.     LONG RefCount;
  114744.     struct IUnknown * pvServerObject;
  114745.  
  114746.     const struct ICallFactoryVtbl * pCallFactoryVtbl;
  114747.     const IID * pAsyncIID;
  114748.     struct IPSFactoryBuffer * pPSFactory;
  114749.     const struct IReleaseMarshalBuffersVtbl * pRMBVtbl;
  114750. } CStdStubBuffer;
  114751.  
  114752. typedef struct tagCStdPSFactoryBuffer
  114753. {
  114754.     const IPSFactoryBufferVtbl * lpVtbl;
  114755.     LONG RefCount;
  114756.     const ProxyFileInfo ** pProxyFileList;
  114757.     LONG Filler1;
  114758. } CStdPSFactoryBuffer;
  114759.  
  114760.  
  114761. #pragma endregion
  114762.  
  114763. #pragma region Desktop or OneCore Family
  114764.  
  114765.  
  114766. __declspec(dllimport)
  114767. void
  114768. __stdcall
  114769. NdrProxyInitialize(
  114770.     void * This,
  114771.     PRPC_MESSAGE pRpcMsg,
  114772.     PMIDL_STUB_MESSAGE pStubMsg,
  114773.     PMIDL_STUB_DESC pStubDescriptor,
  114774.     unsigned int ProcNum );
  114775.  
  114776. __declspec(dllimport)
  114777. void
  114778. __stdcall
  114779. NdrProxyGetBuffer(
  114780.     void * This,
  114781.     PMIDL_STUB_MESSAGE pStubMsg);
  114782.  
  114783. __declspec(dllimport)
  114784. void
  114785. __stdcall
  114786. NdrProxySendReceive(
  114787.     void *This,
  114788.     MIDL_STUB_MESSAGE *pStubMsg);
  114789.  
  114790. __declspec(dllimport)
  114791. void
  114792. __stdcall
  114793. NdrProxyFreeBuffer(
  114794.     void *This,
  114795.     MIDL_STUB_MESSAGE *pStubMsg);
  114796.  
  114797.  
  114798.  
  114799. #pragma endregion
  114800.  
  114801. #pragma region Application or OneCore Family
  114802.  
  114803.  
  114804. __declspec(dllimport)
  114805. HRESULT
  114806. __stdcall
  114807. NdrProxyErrorHandler(
  114808.     DWORD dwExceptionCode);
  114809.  
  114810.  
  114811. #pragma endregion
  114812.  
  114813. #pragma region Desktop or OneCore Family
  114814.  
  114815.  
  114816. __declspec(dllimport)
  114817. void
  114818. __stdcall
  114819. NdrStubInitialize(
  114820.     PRPC_MESSAGE pRpcMsg,
  114821.     PMIDL_STUB_MESSAGE pStubMsg,
  114822.     PMIDL_STUB_DESC pStubDescriptor,
  114823.     IRpcChannelBuffer * pRpcChannelBuffer);
  114824.  
  114825.  
  114826. #pragma endregion
  114827.  
  114828. #pragma region Application or OneCore Family
  114829.  
  114830.  
  114831. __declspec(dllimport)
  114832. void
  114833. __stdcall
  114834. NdrStubInitializePartial(
  114835.     PRPC_MESSAGE pRpcMsg,
  114836.     PMIDL_STUB_MESSAGE pStubMsg,
  114837.     PMIDL_STUB_DESC pStubDescriptor,
  114838.     IRpcChannelBuffer * pRpcChannelBuffer,
  114839.     ULONG RequestedBufferSize);
  114840.  
  114841. void __stdcall NdrStubForwardingFunction(
  114842.         IRpcStubBuffer * This,
  114843.         IRpcChannelBuffer * pChannel,
  114844.         PRPC_MESSAGE pmsg,
  114845.         DWORD * pdwStubPhase);
  114846.  
  114847.  
  114848. #pragma endregion
  114849.  
  114850. #pragma region Desktop or OneCore Family
  114851.  
  114852.  
  114853. __declspec(dllimport)
  114854. void
  114855. __stdcall
  114856. NdrStubGetBuffer(
  114857.     IRpcStubBuffer * This,
  114858.     IRpcChannelBuffer * pRpcChannelBuffer,
  114859.     PMIDL_STUB_MESSAGE pStubMsg);
  114860.  
  114861.  
  114862. #pragma endregion
  114863.  
  114864. #pragma region Application or OneCore Family
  114865.  
  114866.  
  114867. __declspec(dllimport)
  114868. HRESULT
  114869. __stdcall
  114870. NdrStubErrorHandler(
  114871.     DWORD dwExceptionCode);
  114872.  
  114873. HRESULT __stdcall
  114874. CStdStubBuffer_QueryInterface(
  114875.     IRpcStubBuffer * This,
  114876.     const IID * riid,
  114877.     void ** ppvObject);
  114878.  
  114879. ULONG __stdcall
  114880. CStdStubBuffer_AddRef(
  114881.     IRpcStubBuffer * This);
  114882.  
  114883. ULONG __stdcall
  114884. CStdStubBuffer_Release(
  114885.     IRpcStubBuffer * This);
  114886.  
  114887. ULONG __stdcall
  114888. NdrCStdStubBuffer_Release(
  114889.     IRpcStubBuffer * This,
  114890.     IPSFactoryBuffer * pPSF);
  114891.  
  114892. HRESULT __stdcall
  114893. CStdStubBuffer_Connect(
  114894.     IRpcStubBuffer * This,
  114895.     IUnknown * pUnkServer);
  114896.  
  114897. void __stdcall
  114898. CStdStubBuffer_Disconnect(
  114899.     IRpcStubBuffer * This);
  114900.  
  114901. HRESULT __stdcall
  114902. CStdStubBuffer_Invoke(
  114903.     IRpcStubBuffer * This,
  114904.     RPCOLEMESSAGE * pRpcMsg,
  114905.     IRpcChannelBuffer * pRpcChannelBuffer);
  114906.  
  114907. IRpcStubBuffer * __stdcall
  114908. CStdStubBuffer_IsIIDSupported(
  114909.     IRpcStubBuffer * This,
  114910.     const IID * riid);
  114911.  
  114912. ULONG __stdcall
  114913. CStdStubBuffer_CountRefs(
  114914.     IRpcStubBuffer * This);
  114915.  
  114916. HRESULT __stdcall
  114917. CStdStubBuffer_DebugServerQueryInterface(
  114918.     IRpcStubBuffer * This,
  114919.     void **ppv);
  114920.  
  114921. void __stdcall
  114922. CStdStubBuffer_DebugServerRelease(
  114923.     IRpcStubBuffer * This,
  114924.     void *pv);
  114925.  
  114926. HRESULT __stdcall
  114927. CStdStubBuffer2_QueryInterface(
  114928.     IRpcStubBuffer * This,
  114929.     const IID * riid,
  114930.     void ** ppvObject);
  114931.  
  114932. ULONG __stdcall
  114933. CStdStubBuffer2_Release(
  114934.     IRpcStubBuffer *This);
  114935.  
  114936. HRESULT __stdcall
  114937. CStdStubBuffer2_Connect(
  114938.     IRpcStubBuffer *pthis,
  114939.     IUnknown *pUnkServer);
  114940.  
  114941. void __stdcall
  114942. CStdStubBuffer2_Disconnect(
  114943.     IRpcStubBuffer *pthis);
  114944.  
  114945. ULONG __stdcall
  114946. CStdStubBuffer2_CountRefs(
  114947.     IRpcStubBuffer *pthis);
  114948.  
  114949. ULONG __stdcall
  114950. NdrCStdStubBuffer2_Release(
  114951.     IRpcStubBuffer *This,
  114952.     IPSFactoryBuffer * pPSF);
  114953.  
  114954. HRESULT __stdcall
  114955. CStdAsyncStubBuffer_QueryInterface(
  114956.     IRpcStubBuffer *pthis,
  114957.     const IID * riid,
  114958.     void **ppvObject);
  114959.  
  114960. ULONG __stdcall
  114961. CStdAsyncStubBuffer_AddRef(
  114962.     IRpcStubBuffer *pthis);
  114963.  
  114964. ULONG __stdcall
  114965. CStdAsyncStubBuffer_Release(
  114966.     IRpcStubBuffer *pthis);
  114967.  
  114968. HRESULT __stdcall
  114969. CStdAsyncStubBuffer_Connect(
  114970.     IRpcStubBuffer *pthis,
  114971.     IUnknown *pUnkServer);
  114972.  
  114973. void __stdcall
  114974. CStdAsyncStubBuffer_Disconnect(
  114975.     IRpcStubBuffer *pthis);
  114976.  
  114977. HRESULT __stdcall
  114978. CStdAsyncStubBuffer_Invoke(
  114979.     IRpcStubBuffer *pthis,
  114980.     RPCOLEMESSAGE *_prpcmsg,
  114981.     IRpcChannelBuffer *_pRpcChannelBuffer);
  114982.  
  114983. ULONG __stdcall
  114984. CStdAsyncStubBuffer2_Release(
  114985.     IRpcStubBuffer *pthis);
  114986.  
  114987. HRESULT __stdcall
  114988. CStdAsyncStubBuffer2_Connect(
  114989.     IRpcStubBuffer *pthis,
  114990.     IUnknown *pUnkServer);
  114991.  
  114992. void __stdcall
  114993. CStdAsyncStubBuffer2_Disconnect(
  114994.     IRpcStubBuffer *pthis);
  114995.  
  114996.                     void ObjectStublessClient3(void);
  114997.                     void ObjectStublessClient4(void);
  114998.                     void ObjectStublessClient5(void);
  114999.                     void ObjectStublessClient6(void);
  115000.                     void ObjectStublessClient7(void);
  115001.                     void ObjectStublessClient8(void);
  115002.                     void ObjectStublessClient9(void);
  115003.                     void ObjectStublessClient10(void);
  115004.                     void ObjectStublessClient11(void);
  115005.                     void ObjectStublessClient12(void);
  115006.                     void ObjectStublessClient13(void);
  115007.                     void ObjectStublessClient14(void);
  115008.                     void ObjectStublessClient15(void);
  115009.                     void ObjectStublessClient16(void);
  115010.                     void ObjectStublessClient17(void);
  115011.                     void ObjectStublessClient18(void);
  115012.                     void ObjectStublessClient19(void);
  115013.                     void ObjectStublessClient20(void);
  115014.                     void ObjectStublessClient21(void);
  115015.                     void ObjectStublessClient22(void);
  115016.                     void ObjectStublessClient23(void);
  115017.                     void ObjectStublessClient24(void);
  115018.                     void ObjectStublessClient25(void);
  115019.                     void ObjectStublessClient26(void);
  115020.                     void ObjectStublessClient27(void);
  115021.                     void ObjectStublessClient28(void);
  115022.                     void ObjectStublessClient29(void);
  115023.                     void ObjectStublessClient30(void);
  115024.                     void ObjectStublessClient31(void);
  115025.                     void ObjectStublessClient32(void);
  115026.  
  115027.  
  115028. void __stdcall
  115029. NdrProxyForwardingFunction3(void);
  115030.  
  115031.  
  115032. void __stdcall
  115033. NdrProxyForwardingFunction4(void);
  115034.  
  115035.  
  115036. void __stdcall
  115037. NdrProxyForwardingFunction5(void);
  115038.  
  115039.  
  115040. void __stdcall
  115041. NdrProxyForwardingFunction6(void);
  115042.  
  115043.  
  115044. void __stdcall
  115045. NdrProxyForwardingFunction7(void);
  115046.  
  115047.  
  115048. void __stdcall
  115049. NdrProxyForwardingFunction8(void);
  115050.  
  115051.  
  115052. void __stdcall
  115053. NdrProxyForwardingFunction9(void);
  115054.  
  115055.  
  115056. void __stdcall
  115057. NdrProxyForwardingFunction10(void);
  115058.  
  115059.  
  115060. void __stdcall
  115061. NdrProxyForwardingFunction11(void);
  115062.  
  115063.  
  115064. void __stdcall
  115065. NdrProxyForwardingFunction12(void);
  115066.  
  115067.  
  115068. void __stdcall
  115069. NdrProxyForwardingFunction13(void);
  115070.  
  115071.  
  115072. void __stdcall
  115073. NdrProxyForwardingFunction14(void);
  115074.  
  115075.  
  115076. void __stdcall
  115077. NdrProxyForwardingFunction15(void);
  115078.  
  115079.  
  115080. void __stdcall
  115081. NdrProxyForwardingFunction16(void);
  115082.  
  115083.  
  115084. void __stdcall
  115085. NdrProxyForwardingFunction17(void);
  115086.  
  115087.  
  115088. void __stdcall
  115089. NdrProxyForwardingFunction18(void);
  115090.  
  115091.  
  115092. void __stdcall
  115093. NdrProxyForwardingFunction19(void);
  115094.  
  115095.  
  115096. void __stdcall
  115097. NdrProxyForwardingFunction20(void);
  115098.  
  115099.  
  115100. void __stdcall
  115101. NdrProxyForwardingFunction21(void);
  115102.  
  115103.  
  115104. void __stdcall
  115105. NdrProxyForwardingFunction22(void);
  115106.  
  115107.  
  115108. void __stdcall
  115109. NdrProxyForwardingFunction23(void);
  115110.  
  115111.  
  115112. void __stdcall
  115113. NdrProxyForwardingFunction24(void);
  115114.  
  115115.  
  115116. void __stdcall
  115117. NdrProxyForwardingFunction25(void);
  115118.  
  115119.  
  115120. void __stdcall
  115121. NdrProxyForwardingFunction26(void);
  115122.  
  115123.  
  115124. void __stdcall
  115125. NdrProxyForwardingFunction27(void);
  115126.  
  115127.  
  115128. void __stdcall
  115129. NdrProxyForwardingFunction28(void);
  115130.  
  115131.  
  115132. void __stdcall
  115133. NdrProxyForwardingFunction29(void);
  115134.  
  115135.  
  115136. void __stdcall
  115137. NdrProxyForwardingFunction30(void);
  115138.  
  115139.  
  115140. void __stdcall
  115141. NdrProxyForwardingFunction31(void);
  115142.  
  115143.  
  115144. void __stdcall
  115145. NdrProxyForwardingFunction32(void);
  115146. # 709 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 3
  115147. __declspec(dllimport)
  115148. HRESULT
  115149. __stdcall
  115150. NdrDllGetClassObject (
  115151.         const IID * rclsid,
  115152.         const IID * riid,
  115153.         void ** ppv,
  115154.        const ProxyFileInfo ** pProxyFileList,
  115155.        const CLSID * pclsid,
  115156.        CStdPSFactoryBuffer * pPSFactoryBuffer);
  115157.  
  115158. __declspec(dllimport)
  115159. HRESULT
  115160. __stdcall
  115161. NdrDllCanUnloadNow(
  115162.        CStdPSFactoryBuffer * pPSFactoryBuffer);
  115163. # 766 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 3
  115164. __declspec(dllimport)
  115165. HRESULT
  115166. __stdcall
  115167. NdrDllRegisterProxy(
  115168.        HMODULE hDll,
  115169.        const ProxyFileInfo ** pProxyFileList,
  115170.        const CLSID * pclsid);
  115171.  
  115172. __declspec(dllimport)
  115173. HRESULT
  115174. __stdcall
  115175. NdrDllUnregisterProxy(
  115176.        HMODULE hDll,
  115177.        const ProxyFileInfo ** pProxyFileList,
  115178.        const CLSID * pclsid);
  115179. # 948 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 3
  115180. #pragma endregion
  115181. # 963 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcproxy.h" 3
  115182. #pragma option pop
  115183. # 44 "proxy.c" 2
  115184.  
  115185.  
  115186.  
  115187.  
  115188.  
  115189.  
  115190. # 1 "./example.h" 1
  115191. # 19 "./example.h"
  115192. #pragma warning(disable: 4049)
  115193.  
  115194.  
  115195.  
  115196.  
  115197.  
  115198.  
  115199.  
  115200.  
  115201. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  115202. #pragma option push -b -a8 -pc -A- -w-pun
  115203. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  115204. #pragma option pop
  115205. # 27 "./example.h" 2
  115206.  
  115207. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  115208. #pragma option push -b -a8 -pc -A- -w-pun
  115209. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  115210. #pragma option pop
  115211. # 28 "./example.h" 2
  115212.  
  115213.  
  115214.  
  115215.  
  115216.  
  115217.  
  115218.  
  115219. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  115220. # 35 "./example.h" 2
  115221.  
  115222. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  115223. #pragma option push -b -a8 -pc -A- -w-pun
  115224. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  115225. #pragma option pop
  115226. # 36 "./example.h" 2
  115227. # 50 "./example.h"
  115228. typedef struct Example Example;
  115229.  
  115230.  
  115231.  
  115232.  
  115233.  
  115234.  
  115235. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwn.h" 1 3
  115236. #pragma option push -b -a8 -pc -A- -w-pun
  115237. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwn.h" 3
  115238. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 1 3
  115239. #pragma option push -b -a8 -pc -A- -w-pun
  115240. # 233 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/rpc.h" 3
  115241. #pragma option pop
  115242. # 22 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwn.h" 2 3
  115243.  
  115244. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 1 3
  115245. #pragma option push -b -a8 -pc -A- -w-pun
  115246. # 3313 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\rpcndr.h" 3
  115247. #pragma option pop
  115248. # 23 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwn.h" 2 3
  115249.  
  115250.  
  115251.  
  115252.  
  115253.  
  115254.  
  115255.  
  115256. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/windows.h" 1 3
  115257. # 30 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwn.h" 2 3
  115258.  
  115259. # 1 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 1 3
  115260. #pragma option push -b -a8 -pc -A- -w-pun
  115261. # 359 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk/ole2.h" 3
  115262. #pragma option pop
  115263. # 31 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwn.h" 2 3
  115264. # 599 "c:\\program files (x86)\\embarcadero\\studio\\20.0\\include\\windows\\sdk\\unknwn.h" 3
  115265. #pragma option pop
  115266. # 56 "./example.h" 2
  115267. # 70 "./example.h"
  115268. extern const IID IID_Example;
  115269. # 85 "./example.h"
  115270.     typedef struct ExampleVtbl
  115271.     {
  115272.  
  115273.  
  115274.         HRESULT ( __stdcall *QueryInterface )(
  115275.             Example * This,
  115276.                        const IID * riid,
  115277.                                 void **ppvObject);
  115278.  
  115279.         ULONG ( __stdcall *AddRef )(
  115280.             Example * This);
  115281.  
  115282.         ULONG ( __stdcall *Release )(
  115283.             Example * This);
  115284.  
  115285.         HRESULT ( __stdcall *Foo )(
  115286.             Example * This);
  115287.  
  115288.  
  115289.     } ExampleVtbl;
  115290.  
  115291.     struct Example
  115292.     {
  115293.                    struct ExampleVtbl *lpVtbl;
  115294.     };
  115295. # 50 "proxy.c" 2
  115296.  
  115297.  
  115298.  
  115299.  
  115300.  
  115301.  
  115302.  
  115303.  
  115304. typedef struct _example_MIDL_TYPE_FORMAT_STRING
  115305.     {
  115306.     short Pad;
  115307.     unsigned char Format[ 3 ];
  115308.     } example_MIDL_TYPE_FORMAT_STRING;
  115309.  
  115310. typedef struct _example_MIDL_PROC_FORMAT_STRING
  115311.     {
  115312.     short Pad;
  115313.     unsigned char Format[ 31 ];
  115314.     } example_MIDL_PROC_FORMAT_STRING;
  115315.  
  115316. typedef struct _example_MIDL_EXPR_FORMAT_STRING
  115317.     {
  115318.     long Pad;
  115319.     unsigned char Format[ 1 ];
  115320.     } example_MIDL_EXPR_FORMAT_STRING;
  115321.  
  115322.  
  115323. static const RPC_SYNTAX_IDENTIFIER _RpcTransferSyntax =
  115324. {{0x8A885D04,0x1CEB,0x11C9,{0x9F,0xE8,0x08,0x00,0x2B,0x10,0x48,0x60}},{2,0}};
  115325.  
  115326.  
  115327. static const example_MIDL_TYPE_FORMAT_STRING example__MIDL_TypeFormatString;
  115328. static const example_MIDL_PROC_FORMAT_STRING example__MIDL_ProcFormatString;
  115329. static const example_MIDL_EXPR_FORMAT_STRING example__MIDL_ExprFormatString;
  115330.  
  115331.  
  115332. static const MIDL_STUB_DESC Object_StubDesc;
  115333.  
  115334.  
  115335. static const MIDL_SERVER_INFO Example_ServerInfo;
  115336. static const MIDL_STUBLESS_PROXY_INFO Example_ProxyInfo;
  115337. # 106 "proxy.c"
  115338. static const example_MIDL_PROC_FORMAT_STRING example__MIDL_ProcFormatString =
  115339.     {
  115340.         0,
  115341.         {
  115342.  
  115343.  
  115344.  
  115345.    0x33,
  115346.    0x6c,
  115347.          (unsigned char)(0x0 & 0xff), (unsigned char)((0x0 & 0x0000ff00) >> 8), (unsigned char)((0x0 & 0x00ff0000) >> 16), (unsigned char)(0x0 >> 24),
  115348.          (unsigned char)(0x3 & 0xff), (unsigned char)(0x3 >> 8),
  115349.          (unsigned char)(0x8 & 0xff), (unsigned char)(0x8 >> 8),
  115350.          (unsigned char)(0x0 & 0xff), (unsigned char)(0x0 >> 8),
  115351.          (unsigned char)(0x8 & 0xff), (unsigned char)(0x8 >> 8),
  115352.          0x44,
  115353.    0x1,
  115354.          0x8,
  115355.    0x1,
  115356.          (unsigned char)(0x0 & 0xff), (unsigned char)(0x0 >> 8),
  115357.          (unsigned char)(0x0 & 0xff), (unsigned char)(0x0 >> 8),
  115358.          (unsigned char)(0x0 & 0xff), (unsigned char)(0x0 >> 8),
  115359.  
  115360.  
  115361.  
  115362.          (unsigned char)(0x70 & 0xff), (unsigned char)(0x70 >> 8),
  115363.          (unsigned char)(0x4 & 0xff), (unsigned char)(0x4 >> 8),
  115364.          0x8,
  115365.    0x0,
  115366.  
  115367.    0x0
  115368.         }
  115369.     };
  115370.  
  115371. static const example_MIDL_TYPE_FORMAT_STRING example__MIDL_TypeFormatString =
  115372.     {
  115373.         0,
  115374.         {
  115375.    (unsigned char)(0x0 & 0xff), (unsigned char)(0x0 >> 8),
  115376.  
  115377.    0x0
  115378.         }
  115379.     };
  115380. # 158 "proxy.c"
  115381. static const unsigned short Example_FormatStringOffsetTable[] =
  115382.     {
  115383.     0
  115384.     };
  115385.  
  115386. static const MIDL_STUBLESS_PROXY_INFO Example_ProxyInfo =
  115387.     {
  115388.     &Object_StubDesc,
  115389.     example__MIDL_ProcFormatString.Format,
  115390.     &Example_FormatStringOffsetTable[-3],
  115391.     0,
  115392.     0,
  115393.     0
  115394.     };
  115395.  
  115396.  
  115397. static const MIDL_SERVER_INFO Example_ServerInfo =
  115398.     {
  115399.     &Object_StubDesc,
  115400.     0,
  115401.     example__MIDL_ProcFormatString.Format,
  115402.     &Example_FormatStringOffsetTable[-3],
  115403.     0,
  115404.     0,
  115405.     0,
  115406.     0};
  115407. struct { CInterfaceProxyHeader header; void *Vtbl[ 4 ]; } _ExampleProxyVtbl =
  115408. {
  115409.     &Example_ProxyInfo,
  115410.     &IID_Example,
  115411.     IUnknown_QueryInterface_Proxy,
  115412.     IUnknown_AddRef_Proxy,
  115413.     IUnknown_Release_Proxy ,
  115414.     (void *) (INT_PTR) -1
  115415. };
  115416.  
  115417. const CInterfaceStubVtbl _ExampleStubVtbl =
  115418. {
  115419.     &IID_Example,
  115420.     &Example_ServerInfo,
  115421.     4,
  115422.     0,
  115423.     CStdStubBuffer_QueryInterface, CStdStubBuffer_AddRef, CStdStubBuffer_Release, CStdStubBuffer_Connect, CStdStubBuffer_Disconnect, CStdStubBuffer_Invoke, CStdStubBuffer_IsIIDSupported, CStdStubBuffer_CountRefs, CStdStubBuffer_DebugServerQueryInterface, CStdStubBuffer_DebugServerRelease
  115424. };
  115425.  
  115426. static const MIDL_STUB_DESC Object_StubDesc =
  115427.     {
  115428.     0,
  115429.     NdrOleAllocate,
  115430.     NdrOleFree,
  115431.     0,
  115432.     0,
  115433.     0,
  115434.     0,
  115435.     0,
  115436.     example__MIDL_TypeFormatString.Format,
  115437.     1,
  115438.     0x50002,
  115439.     0,
  115440.     0x801026e,
  115441.     0,
  115442.     0,
  115443.     0,
  115444.     0x1,
  115445.     0,
  115446.     0,
  115447.     0
  115448.     };
  115449.  
  115450. const CInterfaceProxyVtbl * const _example_ProxyVtblList[] =
  115451. {
  115452.     ( CInterfaceProxyVtbl *) &_ExampleProxyVtbl,
  115453.     0
  115454. };
  115455.  
  115456. const CInterfaceStubVtbl * const _example_StubVtblList[] =
  115457. {
  115458.     ( CInterfaceStubVtbl *) &_ExampleStubVtbl,
  115459.     0
  115460. };
  115461.  
  115462. PCInterfaceName const _example_InterfaceNamesList[] =
  115463. {
  115464.     "Example",
  115465.     0
  115466. };
  115467.  
  115468.  
  115469.  
  115470.  
  115471. int __stdcall _example_IID_Lookup( const IID * pIID, int * pIndex )
  115472. {
  115473.  
  115474.     if(!memcmp( pIID, _example_ProxyVtblList[ 0 ]->header.piid, 16 ))
  115475.         {
  115476.         *pIndex = 0;
  115477.         return 1;
  115478.         }
  115479.  
  115480.     return 0;
  115481. }
  115482.  
  115483. const ExtendedProxyFileInfo example_ProxyFileInfo =
  115484. {
  115485.     (PCInterfaceProxyVtblList *) & _example_ProxyVtblList,
  115486.     (PCInterfaceStubVtblList *) & _example_StubVtblList,
  115487.     (const PCInterfaceName * ) & _example_InterfaceNamesList,
  115488.     0,
  115489.     & _example_IID_Lookup,
  115490.     1,
  115491.     2,
  115492.     0,
  115493.     0,
  115494.     0,
  115495.     0
  115496. };
  115497.