Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

fpc_unicode_add.inc 16KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561
  1. const
  2. MAX_PROFILE_LEN = 80;
  3. MM_MAX_AXES_NAMELEN = 16;
  4. MM_MAX_NUMAXES = 16;
  5. HW_PROFILE_GUIDLEN = 39;
  6. type
  7. HDEVNOTIFY = Pointer;
  8. PHDEVNOTIFY = ^HDEVNOTIFY;
  9. _GET_FILEEX_INFO_LEVELS = (GetFileExInfoStandard, GetFileExMaxInfoLevel);
  10. TGetFileExInfoLevels = _GET_FILEEX_INFO_LEVELS;
  11. GET_FILEEX_INFO_LEVELS = _GET_FILEEX_INFO_LEVELS;
  12. _FINDEX_INFO_LEVELS = (FindExInfoStandard, FindExInfoMaxInfoLevel);
  13. TFindexInfoLevels = _FINDEX_INFO_LEVELS;
  14. FINDEX_INFO_LEVELS = _FINDEX_INFO_LEVELS;
  15. _FINDEX_SEARCH_OPS = (FindExSearchNameMatch, FindExSearchLimitToDirectories,
  16. FindExSearchLimitToDevices, FindExSearchMaxSearchOp);
  17. TFindexSearchOps = _FINDEX_SEARCH_OPS;
  18. FINDEX_SEARCH_OPS = _FINDEX_SEARCH_OPS;
  19. TFNPropEnumProc = TFarProc;
  20. TFNPropEnumProcEx = TFarProc;
  21. TFNEditWordBreakProc = TFarProc;
  22. TFNNameEnumProc = TFarProc;
  23. TFNWinStaEnumProc = TFNNameEnumProc;
  24. TFNDeskTopEnumProc = TFNNameEnumProc;
  25. TFNWndProc = TFarProc;
  26. TFNDlgProc = TFarProc;
  27. TFNTimerProc = TFarProc;
  28. TFNGrayStringProc = TFarProc;
  29. TFNWndEnumProc = TFarProc;
  30. TFNSendAsyncProc = TFarProc;
  31. TFNDrawStateProc = TFarProc;
  32. TFNOldFontEnumProcW = TFarProc;
  33. TFNGObjEnumProc = TFarProc;
  34. TFNLineDDAProc = TFarProc;
  35. TFNFontEnumProcW = TFarProc;
  36. TFNProgressRoutine = TFarProc;
  37. TFNLocaleEnumProc = TFarProc;
  38. TFNCodepageEnumProc = TFarProc;
  39. TFNDateFmtEnumProc = TFarProc;
  40. TFNTimeFmtEnumProc = TFarProc;
  41. TFNCalInfoEnumProc = TFarProc;
  42. TFNICMEnumProc = TFarProc;
  43. MakeIntAtomW = PWideChar;
  44. PRecoveryAgentInformationW = ^TRecoveryAgentInformationW;
  45. _RECOVERY_AGENT_INFORMATIONW = record
  46. NextEntryOffset: DWORD;
  47. AgentNameLength: DWORD;
  48. AgentInformation: array[0..0] of CHAR;
  49. end;
  50. TRecoveryAgentInformationW = _RECOVERY_AGENT_INFORMATIONW;
  51. RECOVERY_AGENT_INFORMATIONW = _RECOVERY_AGENT_INFORMATIONW;
  52. PWin32FindDataW = ^TWin32FindDataW;
  53. _WIN32_FIND_DATAW = record
  54. dwFileAttributes: DWORD;
  55. ftCreationTime: TFileTime;
  56. ftLastAccessTime: TFileTime;
  57. ftLastWriteTime: TFileTime;
  58. nFileSizeHigh: DWORD;
  59. nFileSizeLow: DWORD;
  60. dwReserved0: DWORD;
  61. dwReserved1: DWORD;
  62. cFileName: array[0..MAX_PATH - 1] of WideChar;
  63. cAlternateFileName: array[0..13] of WideChar;
  64. end;
  65. TWin32FindDataW = _WIN32_FIND_DATAW;
  66. WIN32_FIND_DATAW = _WIN32_FIND_DATAW;
  67. PHWProfileInfoW = ^THWProfileInfoW;
  68. tagHW_PROFILE_INFOW = packed record
  69. dwDockInfo: DWORD;
  70. szHwProfileGuid: packed array[0..HW_PROFILE_GUIDLEN-1] of WideChar;
  71. szHwProfileName: packed array[0..MAX_PROFILE_LEN-1] of WideChar;
  72. end;
  73. THWProfileInfoW = tagHW_PROFILE_INFOW;
  74. HW_PROFILE_INFOW = tagHW_PROFILE_INFOW;
  75. PLogColorSpaceW = ^TLogColorSpaceW;
  76. tagLOGCOLORSPACEW = packed record
  77. lcsSignature: DWORD;
  78. lcsVersion: DWORD;
  79. lcsSize: DWORD;
  80. lcsCSType: LCSCSTYPE;
  81. lcsIntent: LCSGAMUTMATCH;
  82. lcsEndpoints: TCIEXYZTriple;
  83. lcsGammaRed: DWORD;
  84. lcsGammaGreen: DWORD;
  85. lcsGammaBlue: DWORD;
  86. lcsFilename: array[0..259] of WideChar;
  87. end;
  88. TLogColorSpaceW = tagLOGCOLORSPACEW;
  89. LOGCOLORSPACEW = tagLOGCOLORSPACEW;
  90. PNewTextMetricW = ^TNewTextMetricW;
  91. tagNEWTEXTMETRICW = record
  92. tmHeight: Longint;
  93. tmAscent: Longint;
  94. tmDescent: Longint;
  95. tmInternalLeading: Longint;
  96. tmExternalLeading: Longint;
  97. tmAveCharWidth: Longint;
  98. tmMaxCharWidth: Longint;
  99. tmWeight: Longint;
  100. tmOverhang: Longint;
  101. tmDigitizedAspectX: Longint;
  102. tmDigitizedAspectY: Longint;
  103. tmFirstChar: WideChar;
  104. tmLastChar: WideChar;
  105. tmDefaultChar: WideChar;
  106. tmBreakChar: WideChar;
  107. tmItalic: Byte;
  108. tmUnderlined: Byte;
  109. tmStruckOut: Byte;
  110. tmPitchAndFamily: Byte;
  111. tmCharSet: Byte;
  112. ntmFlags: DWORD;
  113. ntmSizeEM: UINT;
  114. ntmCellHeight: UINT;
  115. ntmAvgWidth: UINT;
  116. end;
  117. TNewTextMetricW = tagNEWTEXTMETRICW;
  118. NEWTEXTMETRICW = tagNEWTEXTMETRICW;
  119. PNewTextMetricExW = ^TNewTextMetricExW;
  120. tagNEWTEXTMETRICEXW = packed record
  121. ntmTm: TNewTextMetricW;
  122. ntmFontSig: TFontSignature;
  123. end;
  124. TNewTextMetricExW = tagNEWTEXTMETRICEXW;
  125. NEWTEXTMETRICEXW = tagNEWTEXTMETRICEXW;
  126. PEnumLogFontW = ^TEnumLogFontW;
  127. tagENUMLOGFONTW = packed record
  128. elfLogFont: TLogFontW;
  129. elfFullName: array[0..LF_FULLFACESIZE - 1] of WideChar;
  130. elfStyle: array[0..LF_FACESIZE - 1] of WideChar;
  131. end;
  132. TEnumLogFontW = tagENUMLOGFONTW;
  133. ENUMLOGFONTW = tagENUMLOGFONTW;
  134. PEnumLogFontExW = ^TEnumLogFontExW;
  135. tagENUMLOGFONTEXW = packed record
  136. elfLogFont: TLogFontW;
  137. elfFullName: array[0..LF_FULLFACESIZE - 1] of WideChar;
  138. elfStyle: array[0..LF_FACESIZE - 1] of WideChar;
  139. elfScript: array[0..LF_FACESIZE - 1] of WideChar;
  140. end;
  141. TEnumLogFontExW = tagENUMLOGFONTEXW;
  142. ENUMLOGFONTEXW = tagENUMLOGFONTEXW;
  143. PExtLogFontW = ^TExtLogFontW;
  144. tagEXTLOGFONTW = record
  145. elfLogFont: TLogFontW;
  146. elfFullName: array[0..LF_FULLFACESIZE - 1] of WideChar;
  147. elfStyle: array[0..LF_FACESIZE - 1] of WideChar;
  148. elfVersion: DWORD; { 0 for the first release of NT }
  149. elfStyleSize: DWORD;
  150. elfMatch: DWORD;
  151. elfReserved: DWORD;
  152. elfVendorId: array[0..ELF_VENDOR_SIZE - 1] of Byte;
  153. elfCulture: DWORD; { 0 for Latin }
  154. elfPanose: TPanose;
  155. end;
  156. TExtLogFontW = tagEXTLOGFONTW;
  157. EXTLOGFONTW = tagEXTLOGFONTW;
  158. PDisplayDeviceW = ^TDisplayDeviceW;
  159. _DISPLAY_DEVICEW = packed record
  160. cb: DWORD;
  161. DeviceName: array[0..31] of WideChar;
  162. DeviceString: array[0..127] of WideChar;
  163. StateFlags: DWORD;
  164. end;
  165. TDisplayDeviceW = _DISPLAY_DEVICEW;
  166. POutlineTextmetricW = ^TOutlineTextmetricW;
  167. _OUTLINETEXTMETRICW = record
  168. otmSize: UINT;
  169. otmTextMetrics: TTextMetricW;
  170. otmFiller: Byte;
  171. otmPanoseNumber: TPanose;
  172. otmfsSelection: UINT;
  173. otmfsType: UINT;
  174. otmsCharSlopeRise: Integer;
  175. otmsCharSlopeRun: Integer;
  176. otmItalicAngle: Integer;
  177. otmEMSquare: UINT;
  178. otmAscent: Integer;
  179. otmDescent: Integer;
  180. otmLineGap: UINT;
  181. otmsCapEmHeight: UINT;
  182. otmsXHeight: UINT;
  183. otmrcFontBox: TRect;
  184. otmMacAscent: Integer;
  185. otmMacDescent: Integer;
  186. otmMacLineGap: UINT;
  187. otmusMinimumPPEM: UINT;
  188. otmptSubscriptSize: TPoint;
  189. otmptSubscriptOffset: TPoint;
  190. otmptSuperscriptSize: TPoint;
  191. otmptSuperscriptOffset: TPoint;
  192. otmsStrikeoutSize: UINT;
  193. otmsStrikeoutPosition: Integer;
  194. otmsUnderscoreSize: Integer;
  195. otmsUnderscorePosition: Integer;
  196. otmpFamilyName: PWideChar;
  197. otmpFaceName: PWideChar;
  198. otmpStyleName: PWideChar;
  199. otmpFullName: PWideChar;
  200. end;
  201. TOutlineTextmetricW = _OUTLINETEXTMETRICW;
  202. OUTLINETEXTMETRICW = _OUTLINETEXTMETRICW;
  203. PPolyTextW = ^TPolyTextW;
  204. tagPOLYTEXTW = packed record
  205. x: Integer;
  206. y: Integer;
  207. n: UINT;
  208. PAnsiChar: PWideChar;
  209. uiFlags: UINT;
  210. rcl: TRect;
  211. pdx: PINT;
  212. end;
  213. TPolyTextW = tagPOLYTEXTW;
  214. POLYTEXTW = tagPOLYTEXTW;
  215. PGCPResultsW = ^TGCPResultsW;
  216. tagGCP_RESULTSW = packed record
  217. lStructSize: DWORD;
  218. lpOutString: PWideChar;
  219. lpOrder: PUINT;
  220. lpDx: PINT;
  221. lpCaretPos: PINT;
  222. lpClass: PWideChar;
  223. lpGlyphs: PUINT;
  224. nGlyphs: UINT;
  225. nMaxFit: Integer;
  226. end;
  227. TGCPResultsW = tagGCP_RESULTSW;
  228. GCP_RESULTSW = tagGCP_RESULTSW;
  229. PAxisInfoW = ^TAxisInfoW;
  230. tagAXISINFOW = packed record
  231. axMinValue: Longint;
  232. axMaxValue: Longint;
  233. axAxisName: array[0..MM_MAX_AXES_NAMELEN-1] of WideChar;
  234. end;
  235. TAxisInfoW = tagAXISINFOW;
  236. PAxesListW = ^TAxesListW;
  237. tagAXESLISTW = packed record
  238. axlReserved: DWORD;
  239. axlNumAxes: DWORD;
  240. axlAxisInfo: array[0..MM_MAX_NUMAXES-1] of TAxisInfoW;
  241. end;
  242. TAxesListW = tagAXESLISTW;
  243. PDesignVector = ^TDesignVector;
  244. tagDESIGNVECTOR = packed record
  245. dvReserved: DWORD;
  246. dvNumAxes: DWORD;
  247. dvValues: array[0..MM_MAX_NUMAXES-1] of Longint;
  248. end;
  249. TDesignVector = tagDESIGNVECTOR;
  250. PEnumLogFontExDVW = ^TEnumLogFontExDVW;
  251. tagENUMLOGFONTEXDVW = packed record
  252. elfEnumLogfontEx: TEnumLogFontExW;
  253. elfDesignVector: TDesignVector;
  254. end;
  255. TEnumLogFontExDVW = tagENUMLOGFONTEXDVW;
  256. PEnumTextMetricW = ^TEnumTextMetricW;
  257. tagENUMTEXTMETRICW = packed record
  258. etmNewTextMetricEx: TNewTextMetricExW;
  259. etmAxesList: TAxesListW;
  260. end;
  261. TEnumTextMetricW = tagENUMTEXTMETRICW;
  262. PDocInfoW = ^TDocInfoW;
  263. _DOCINFOW = packed record
  264. cbSize: Integer;
  265. lpszDocName: PWideChar;
  266. lpszOutput: PWideChar;
  267. lpszDatatype: PWideChar;
  268. fwType: DWORD;
  269. end;
  270. TDocInfoW = _DOCINFOW;
  271. DOCINFOW = _DOCINFOW;
  272. PCreateStructW = ^TCreateStructW;
  273. tagCREATESTRUCTW = packed record
  274. lpCreateParams: Pointer;
  275. hInstance: HINST;
  276. hMenu: HMENU;
  277. hwndParent: HWND;
  278. cy: Integer;
  279. cx: Integer;
  280. y: Integer;
  281. x: Integer;
  282. style: Longint;
  283. lpszName: PWideChar;
  284. lpszClass: PWideChar;
  285. dwExStyle: DWORD;
  286. end;
  287. TCreateStructW = tagCREATESTRUCTW;
  288. CREATESTRUCTW = tagCREATESTRUCTW;
  289. TPRMsgBoxCallback = procedure(var lpHelpInfo: THelpInfo);
  290. PMsgBoxParamsW = ^TMsgBoxParamsW;
  291. tagMSGBOXPARAMSW = packed record
  292. cbSize: UINT;
  293. hwndOwner: HWND;
  294. hInstance: HINST;
  295. lpszText: PWideChar;
  296. lpszCaption: PWideChar;
  297. dwStyle: DWORD;
  298. lpszIcon: PWideChar;
  299. dwContextHelpId: DWORD;
  300. lpfnMsgBoxCallback: TPRMsgBoxCallback;
  301. dwLanguageId: DWORD;
  302. end;
  303. TMsgBoxParamsW = tagMSGBOXPARAMSW;
  304. MSGBOXPARAMSW = tagMSGBOXPARAMSW;
  305. PMDICreateStructW = ^TMDICreateStructW;
  306. tagMDICREATESTRUCTW = packed record
  307. szClass: PWideChar;
  308. szTitle: PWideChar;
  309. hOwner: THandle;
  310. x: Integer;
  311. y: Integer;
  312. cx: Integer;
  313. cy: Integer;
  314. style: DWORD;
  315. lParam: LPARAM; { app-defined stuff }
  316. end;
  317. TMDICreateStructW = tagMDICREATESTRUCTW;
  318. MDICREATESTRUCTW = tagMDICREATESTRUCTW;
  319. PMultiKeyHelpW = ^TMultiKeyHelpW;
  320. tagMULTIKEYHELPW = record
  321. mkSize: DWORD;
  322. mkKeylist: WideChar;
  323. szKeyphrase: array[0..0] of WideChar;
  324. end;
  325. TMultiKeyHelpW = tagMULTIKEYHELPW;
  326. MULTIKEYHELPW = tagMULTIKEYHELPW;
  327. PHelpWinInfoW = ^THelpWinInfoW;
  328. tagHELPWININFOW = record
  329. wStructSize: Integer;
  330. x: Integer;
  331. y: Integer;
  332. dx: Integer;
  333. dy: Integer;
  334. wMax: Integer;
  335. rgchMember: array[0..1] of WideChar;
  336. end;
  337. THelpWinInfoW = tagHELPWININFOW;
  338. HELPWININFOW = tagHELPWININFOW;
  339. PNonClientMetricsW = ^TNonClientMetricsW;
  340. tagNONCLIENTMETRICSW = packed record
  341. cbSize: UINT;
  342. iBorderWidth: Integer;
  343. iScrollWidth: Integer;
  344. iScrollHeight: Integer;
  345. iCaptionWidth: Integer;
  346. iCaptionHeight: Integer;
  347. lfCaptionFont: TLogFontW;
  348. iSmCaptionWidth: Integer;
  349. iSmCaptionHeight: Integer;
  350. lfSmCaptionFont: TLogFontW;
  351. iMenuWidth: Integer;
  352. iMenuHeight: Integer;
  353. lfMenuFont: TLogFontW;
  354. lfStatusFont: TLogFontW;
  355. lfMessageFont: TLogFontW;
  356. end;
  357. TNonClientMetricsW = tagNONCLIENTMETRICSW;
  358. NONCLIENTMETRICSW = tagNONCLIENTMETRICSW;
  359. PIconMetricsW = ^TIconMetricsW;
  360. tagICONMETRICSW = packed record
  361. cbSize: UINT;
  362. iHorzSpacing: Integer;
  363. iVertSpacing: Integer;
  364. iTitleWrap: Integer;
  365. lfFont: TLogFontW;
  366. end;
  367. TIconMetricsW = tagICONMETRICSW;
  368. ICONMETRICSW = tagICONMETRICSW;
  369. PSerialKeysW = ^TSerialKeysW;
  370. tagSERIALKEYSW = packed record
  371. cbSize: UINT;
  372. dwFlags: DWORD;
  373. lpszActivePort: PWideChar;
  374. lpszPort: PWideChar;
  375. iBaudRate: UINT;
  376. iPortState: UINT;
  377. iActive: UINT;
  378. end;
  379. TSerialKeysW = tagSERIALKEYSW;
  380. SERIALKEYSW = tagSERIALKEYSW;
  381. PHighContrastW = ^THighContrastW;
  382. tagHIGHCONTRASTW = packed record
  383. cbSize: UINT;
  384. dwFlags: DWORD;
  385. lpszDefaultScheme: PWideChar;
  386. end;
  387. THighContrastW = tagHIGHCONTRASTW;
  388. HIGHCONTRASTW = tagHIGHCONTRASTW;
  389. PSoundsEntryW = ^TSoundsEntryW;
  390. tagSOUNDSENTRYW = packed record
  391. cbSize: UINT;
  392. dwFlags: DWORD;
  393. iFSTextEffect: DWORD;
  394. iFSTextEffectMSec: DWORD;
  395. iFSTextEffectColorBits: DWORD;
  396. iFSGrafEffect: DWORD;
  397. iFSGrafEffectMSec: DWORD;
  398. iFSGrafEffectColor: DWORD;
  399. iWindowsEffect: DWORD;
  400. iWindowsEffectMSec: DWORD;
  401. lpszWindowsEffectDLL: PWideChar;
  402. iWindowsEffectOrdinal: DWORD;
  403. end;
  404. TSoundsEntryW = tagSOUNDSENTRYW;
  405. SOUNDSENTRYW = tagSOUNDSENTRYW;
  406. PNumberFmtW = ^TNumberFmtW;
  407. _numberfmtW = packed record
  408. NumDigits: UINT; { number of decimal digits }
  409. LeadingZero: UINT; { if leading zero in decimal fields }
  410. Grouping: UINT; { group size left of decimal }
  411. lpDecimalSep: PWideChar; { ptr to decimal separator string }
  412. lpThousandSep: PWideChar; { ptr to thousand separator string }
  413. NegativeOrder: UINT; { negative number ordering }
  414. end;
  415. TNumberFmtW = _numberfmtW;
  416. NUMBERFMTW = _numberfmtW;
  417. PCurrencyFmtW = ^TCurrencyFmtW;
  418. _currencyfmtW = packed record
  419. NumDigits: UINT; { number of decimal digits }
  420. LeadingZero: UINT; { if leading zero in decimal fields }
  421. Grouping: UINT; { group size left of decimal }
  422. lpDecimalSep: PWideChar; { ptr to decimal separator string }
  423. lpThousandSep: PWideChar; { ptr to thousand separator string }
  424. NegativeOrder: UINT; { negative currency ordering }
  425. PositiveOrder: UINT; { positive currency ordering }
  426. lpCurrencySymbol: PWideChar; { ptr to currency symbol string }
  427. end;
  428. TCurrencyFmtW = _currencyfmtW;
  429. CURRENCYFMTW = _currencyfmtW;
  430. PPValueW = ^TPValueW;
  431. pvalueW = packed record
  432. pv_valuename: PWideChar; { The value name pointer }
  433. pv_valuelen: BOOL;
  434. pv_value_context: Pointer;
  435. pv_type: DWORD;
  436. end;
  437. TPValueW = pvalueW;
  438. PValueEntW = ^TValueEntW;
  439. value_entW = packed record
  440. ve_valuename: PWideChar;
  441. ve_valuelen: DWORD;
  442. ve_valueptr: DWORD;
  443. ve_type: DWORD;
  444. end;
  445. TValueEntW = value_entW;
  446. VALENTW = value_entW;
  447. PNetResourceW = ^TNetResourceW;
  448. _NETRESOURCEW = packed record
  449. dwScope: DWORD;
  450. dwType: DWORD;
  451. dwDisplayType: DWORD;
  452. dwUsage: DWORD;
  453. lpLocalName: PWideChar;
  454. lpRemoteName: PWideChar;
  455. lpComment: PWideChar;
  456. lpProvider: PWideChar;
  457. end;
  458. TNetResourceW = _NETRESOURCEW;
  459. NETRESOURCEW = _NETRESOURCEW;
  460. PDiscDlgStructW = ^TDiscDlgStructW;
  461. _DISCDLGSTRUCTW = packed record
  462. cbStructure: DWORD; { size of this structure in bytes }
  463. hwndOwner: HWND; { owner window for the dialog }
  464. lpLocalName: PWideChar; { local device name }
  465. lpRemoteName: PWideChar; { network resource name }
  466. dwFlags: DWORD;
  467. end;
  468. TDiscDlgStructW = _DISCDLGSTRUCTW;
  469. DISCDLGSTRUCTW = _DISCDLGSTRUCTW;
  470. PUniversalNameInfoW = ^TUniversalNameInfoW;
  471. _UNIVERSAL_NAME_INFOW = packed record
  472. lpUniversalName: PWideChar;
  473. end;
  474. TUniversalNameInfoW = _UNIVERSAL_NAME_INFOW;
  475. UNIVERSAL_NAME_INFOW = _UNIVERSAL_NAME_INFOW;
  476. PRemoteNameInfoW = ^TRemoteNameInfoW;
  477. _REMOTE_NAME_INFOW = packed record
  478. lpUniversalName: PWideChar;
  479. lpConnectionName: PWideChar;
  480. lpRemainingPath: PWideChar;
  481. end;
  482. TRemoteNameInfoW = _REMOTE_NAME_INFOW;
  483. REMOTE_NAME_INFOW = _REMOTE_NAME_INFOW;
  484. PAltTabInfo = ^TAltTabInfo;
  485. tagALTTABINFO = packed record
  486. cbSize: DWORD;
  487. cItems: Integer;
  488. cColumns: Integer;
  489. cRows: Integer;
  490. iColFocus: Integer;
  491. iRowFocus: Integer;
  492. cxItem: Integer;
  493. cyItem: Integer;
  494. ptStart: TPoint;
  495. end;
  496. TAltTabInfo = tagALTTABINFO;
  497. PMenuItemInfoW = ^TMenuItemInfoW;
  498. tagMENUITEMINFOW = packed record
  499. cbSize: UINT;
  500. fMask: UINT;
  501. fType: UINT; { used if MIIM_TYPE}
  502. fState: UINT; { used if MIIM_STATE}
  503. wID: UINT; { used if MIIM_ID}
  504. hSubMenu: HMENU; { used if MIIM_SUBMENU}
  505. hbmpChecked: HBITMAP; { used if MIIM_CHECKMARKS}
  506. hbmpUnchecked: HBITMAP; { used if MIIM_CHECKMARKS}
  507. dwItemData: DWORD; { used if MIIM_DATA}
  508. dwTypeData: PWideChar; { used if MIIM_TYPE}
  509. cch: UINT; { used if MIIM_TYPE}
  510. hbmpItem: HBITMAP; { used if MIIM_BITMAP}
  511. end;
  512. TMenuItemInfoW = tagMENUITEMINFOW;
  513. MENUITEMINFOW = tagMENUITEMINFOW;
  514. PMenuItemInfo = PMenuItemInfoW;
  515. TMenuItemInfo = TMenuItemInfoW;
  516. MENUITEMINFO = MENUITEMINFOW;