home *** CD-ROM | disk | FTP | other *** search
/ DOS/V Power Report 1997 May / VPR9705A.ISO / VPR_DATA / PROGRAM / CBTRIAL / SETUP / DATA.Z / WINDOWS.HPP < prev    next >
C/C++ Source or Header  |  1997-02-14  |  51KB  |  2,443 lines

  1. //----------------------------------------------------------------------------
  2. // Windows.hpp - bcbdcc32 generated hdr (DO NOT EDIT) rev: 0
  3. // From: Windows.pas
  4. //----------------------------------------------------------------------------
  5. #ifndef WindowsHPP
  6. #define WindowsHPP
  7.  
  8. #if !defined(WIN32_LEAN_AND_MEAN) && !defined(_WINDOWS_)
  9. #ifndef VCL_FULL
  10. #define WIN32_LEAN_AND_MEAN
  11. #define _VCL_LEAN_AND_MEAN
  12. #endif
  13. #include <windows.h>
  14. // Permit windows.h to be #include'd after windows.hpp, if only the
  15. // lean and mean portion was included
  16. #ifdef WIN32_LEAN_AND_MEAN
  17. #undef WIN32_LEAN_AND_MEAN
  18. #undef _INC_WINDOWS
  19. #undef _WINDOWS_
  20. #endif
  21. #elif !defined(_WINDOWS_)
  22. // If the user manually #define'd WIN32_LEAN_AND_MEAN, then the
  23. // symbol should remain visible.
  24. #ifdef WIN32_LEAN_AND_MEAN
  25. #define _VCL_LEAN_AND_MEAN
  26. #endif
  27. #include <windows.h>
  28. #endif
  29.  
  30. //----------------------------------------------------------------------------
  31. #include <System.hpp>
  32. #pragma warn -par
  33. #pragma warn -hid 
  34. #pragma warn -inl
  35.  
  36. namespace Windows
  37. {
  38. //-- type declarations -------------------------------------------------------
  39.  
  40. typedef wchar_t *PWChar;
  41.  
  42. typedef Byte *PByte;
  43.  
  44. typedef float *PSingle;
  45.  
  46. typedef long *PLongint;
  47.  
  48. typedef int *PInteger;
  49.  
  50. typedef int THandle;
  51.  
  52. typedef int *PHandle;
  53.  
  54. typedef _LARGE_INTEGER *PLargeInteger;
  55.  
  56. typedef _LARGE_INTEGER  TLargeInteger;
  57.  
  58. typedef _LIST_ENTRY *PListEntry;
  59.  
  60. typedef _LIST_ENTRY  TListEntry;
  61.  
  62. typedef _FLOATING_SAVE_AREA *PFloatingSaveArea;
  63.  
  64. typedef _FLOATING_SAVE_AREA  TFloatingSaveArea;
  65.  
  66. typedef _CONTEXT *PContext;
  67.  
  68. typedef _CONTEXT  TContext;
  69.  
  70. typedef _LDT_ENTRY *PLDTEntry;
  71.  
  72. typedef _LDT_ENTRY  TLDTEntry;
  73.  
  74. typedef _EXCEPTION_RECORD *PExceptionRecord;
  75.  
  76. typedef _EXCEPTION_RECORD  TExceptionRecord;
  77.  
  78. typedef _EXCEPTION_POINTERS  TExceptionPointers;
  79.  
  80. typedef _MEMORY_BASIC_INFORMATION *PMemoryBasicInformation;
  81.  
  82. typedef _MEMORY_BASIC_INFORMATION  TMemoryBasicInformation;
  83.  
  84. typedef _GENERIC_MAPPING *PGenericMapping;
  85.  
  86. typedef _GENERIC_MAPPING  TGenericMapping;
  87.  
  88. typedef _LUID_AND_ATTRIBUTES *PLUIDAndAttributes;
  89.  
  90. typedef _LUID_AND_ATTRIBUTES  TLUIDAndAttributes;
  91.  
  92. typedef _SID_IDENTIFIER_AUTHORITY *PSIDIdentifierAuthority;
  93.  
  94. #pragma pack(push, 1)
  95. #pragma pack(pop)
  96.  
  97. typedef _SID_IDENTIFIER_AUTHORITY  TSIDIdentifierAuthority;
  98.  
  99. typedef _SID_AND_ATTRIBUTES *PSIDAndAttributes;
  100.  
  101. typedef _SID_AND_ATTRIBUTES  TSIDAndAttributes;
  102.  
  103. typedef _ACL  TACL;
  104.  
  105. typedef _SECURITY_DESCRIPTOR *PSecurityDescriptor;
  106.  
  107. typedef _SECURITY_DESCRIPTOR  TSecurityDescriptor;
  108.  
  109. typedef _PRIVILEGE_SET *PPrivilegeSet;
  110.  
  111. typedef _PRIVILEGE_SET  TPrivilegeSet;
  112.  
  113. #pragma option -b
  114. enum TSecurityImpersonationLevel { SecurityAnonymous, SecurityIdentification, SecurityImpersonation, 
  115.     SecurityDelegation };
  116. #pragma option -b.
  117.  
  118. typedef _SECURITY_QUALITY_OF_SERVICE *PSecurityQualityOfService;
  119.  
  120. typedef _SECURITY_QUALITY_OF_SERVICE  TSecurityQualityOfService;
  121.  
  122. typedef _TOKEN_GROUPS *PTokenGroups;
  123.  
  124. typedef _TOKEN_GROUPS  TTokenGroups;
  125.  
  126. typedef _TOKEN_PRIVILEGES *PTokenPrivileges;
  127.  
  128. typedef _TOKEN_PRIVILEGES  TTokenPrivileges;
  129.  
  130. typedef int __stdcall (*TThreadStartRoutine)(void * lpThreadParameter);
  131.  
  132. typedef _RTL_CRITICAL_SECTION *PRTLCriticalSection;
  133.  
  134. typedef _RTL_CRITICAL_SECTION_DEBUG *PRTLCriticalSectionDebug;
  135.  
  136. typedef _RTL_CRITICAL_SECTION_DEBUG  TRTLCriticalSectionDebug;
  137.  
  138. typedef _RTL_CRITICAL_SECTION  TRTLCriticalSection;
  139.  
  140. typedef Word TAtom;
  141.  
  142. typedef void *TFarProc;
  143.  
  144. typedef void *PROC_22;
  145.  
  146. typedef int HINST;
  147.  
  148. typedef long TColorRef;
  149.  
  150. typedef tagPOINT *PPoint;
  151.  
  152. typedef tagPOINT  TPoint;
  153.  
  154. struct TRect
  155. {
  156.     TRect() { }
  157.     TRect(RECT& r) {
  158.         Left = r.left;
  159.         Top = r.top;
  160.         Right = r.right;
  161.         Bottom = r.bottom;
  162.     }
  163.     operator RECT() {
  164.         RECT r;
  165.         r.left = Left;
  166.         r.top = Top;
  167.         r.right = Right;
  168.         r.bottom = Bottom;
  169.         return r;
  170.     }
  171.     
  172.     union
  173.     {
  174.         struct 
  175.         {
  176.             POINT TopLeft;
  177.             POINT BottomRight;
  178.             
  179.         };
  180.         struct 
  181.         {
  182.             int Left;
  183.             int Top;
  184.             int Right;
  185.             int Bottom;
  186.             
  187.         };
  188.         
  189.     };
  190. } ;
  191.  
  192. typedef TRect *PRect;
  193.  
  194. typedef tagSIZE *PSize;
  195.  
  196. typedef tagSIZE  TSize;
  197.  
  198. struct TSmallPoint
  199. {
  200.     short x;
  201.     short y;
  202. } ;
  203.  
  204. typedef TSmallPoint *PSmallPoint;
  205.  
  206. typedef _OVERLAPPED *POverlapped;
  207.  
  208. typedef _OVERLAPPED  TOverlapped;
  209.  
  210. typedef _SECURITY_ATTRIBUTES *PSecurityAttributes;
  211.  
  212. typedef _SECURITY_ATTRIBUTES  TSecurityAttributes;
  213.  
  214. typedef _PROCESS_INFORMATION *PProcessInformation;
  215.  
  216. typedef _PROCESS_INFORMATION  TProcessInformation;
  217.  
  218. typedef _FILETIME *PFileTime;
  219.  
  220. typedef _FILETIME  TFileTime;
  221.  
  222. typedef _SYSTEMTIME *PSystemTime;
  223.  
  224. typedef _SYSTEMTIME  TSystemTime;
  225.  
  226. typedef void *TFNThreadStartRoutine;
  227.  
  228. typedef _COMMPROP *PCommProp;
  229.  
  230. typedef _COMMPROP  TCommProp;
  231.  
  232. #pragma option -b
  233. enum TComStateFlag { fCtlHold, fDsrHold, fRlsHold, fXoffHold, fXOffSent, fEof, fTxim };
  234. #pragma option -b.
  235.     
  236. typedef Set<TComStateFlag, fCtlHold, fTxim>  TComStateFlags;
  237.  
  238. typedef _COMSTAT  TComStat;
  239.  
  240. typedef _COMSTAT *PComStat;
  241.  
  242. #pragma pack(push, 1)
  243. #pragma pack(pop)
  244.  
  245. typedef _DCB  TDCB;
  246.  
  247. typedef _DCB *PDCB;
  248.  
  249. typedef _COMMTIMEOUTS *PCommTimeouts;
  250.  
  251. typedef _COMMTIMEOUTS  TCommTimeouts;
  252.  
  253. typedef _COMMCONFIG *PCommConfig;
  254.  
  255. typedef _COMMCONFIG  TCommConfig;
  256.  
  257. typedef _SYSTEM_INFO *PSystemInfo;
  258.  
  259. typedef _SYSTEM_INFO  TSystemInfo;
  260.  
  261. typedef _MEMORYSTATUS *PMemoryStatus;
  262.  
  263. typedef _MEMORYSTATUS  TMemoryStatus;
  264.  
  265. typedef _EXCEPTION_DEBUG_INFO *PExceptionDebugInfo;
  266.  
  267. typedef _EXCEPTION_DEBUG_INFO  TExceptionDebugInfo;
  268.  
  269. typedef _CREATE_THREAD_DEBUG_INFO *PCreateThreadDebugInfo;
  270.  
  271. typedef _CREATE_THREAD_DEBUG_INFO  TCreateThreadDebugInfo;
  272.  
  273. typedef _CREATE_PROCESS_DEBUG_INFO *PCreateProcessDebugInfo;
  274.  
  275. typedef _CREATE_PROCESS_DEBUG_INFO  TCreateProcessDebugInfo;
  276.  
  277. typedef _EXIT_THREAD_DEBUG_INFO *PExitThreadDebugInfo;
  278.  
  279. typedef _EXIT_THREAD_DEBUG_INFO  TExitThreadDebugInfo;
  280.  
  281. typedef _EXIT_PROCESS_DEBUG_INFO *PExitProcessDebugInfo;
  282.  
  283. typedef _EXIT_PROCESS_DEBUG_INFO  TExitProcessDebugInfo;
  284.  
  285. typedef _LOAD_DLL_DEBUG_INFO *PLoadDLLDebugInfo;
  286.  
  287. typedef _LOAD_DLL_DEBUG_INFO  TLoadDLLDebugInfo;
  288.  
  289. typedef _UNLOAD_DLL_DEBUG_INFO *PUnloadDLLDebugInfo;
  290.  
  291. typedef _UNLOAD_DLL_DEBUG_INFO  TUnloadDLLDebugInfo;
  292.  
  293. typedef _OUTPUT_DEBUG_STRING_INFO *POutputDebugStringInfo;
  294.  
  295. typedef _OUTPUT_DEBUG_STRING_INFO  TOutputDebugStringInfo;
  296.  
  297. typedef _RIP_INFO *PRIPInfo;
  298.  
  299. typedef _RIP_INFO  TRIPInfo;
  300.  
  301. typedef _DEBUG_EVENT *PDebugEvent;
  302.  
  303. typedef _DEBUG_EVENT  TDebugEvent;
  304.  
  305. typedef _OFSTRUCT *POFStruct;
  306.  
  307. typedef _OFSTRUCT  TOFStruct;
  308.  
  309. typedef char *MakeIntAtomA;
  310.  
  311. typedef wchar_t *MakeIntAtomW;
  312.  
  313. typedef char *MakeIntAtom;
  314.  
  315. typedef _PROCESS_HEAP_ENTRY *PProcessHeapEntry;
  316.  
  317. typedef _PROCESS_HEAP_ENTRY  TProcessHeapEntry;
  318.  
  319. typedef void *TFNTopLevelExceptionFilter;
  320.  
  321. typedef int TWOHandleArray[64];
  322.  
  323. typedef TWOHandleArray *PWOHandleArray;
  324.  
  325. typedef _BY_HANDLE_FILE_INFORMATION *PByHandleFileInformation;
  326.  
  327. typedef _BY_HANDLE_FILE_INFORMATION  TByHandleFileInformation;
  328.  
  329. typedef _TIME_ZONE_INFORMATION *PTimeZoneInformation;
  330.  
  331. typedef _TIME_ZONE_INFORMATION  TTimeZoneInformation;
  332.  
  333. typedef _WIN32_STREAM_ID *PWIN32StreamID;
  334.  
  335. typedef _WIN32_STREAM_ID  TWIN32StreamID;
  336.  
  337. typedef _STARTUPINFOA *PStartupInfo;
  338.  
  339. typedef _STARTUPINFOA  TStartupInfo;
  340.  
  341. typedef _WIN32_FIND_DATAA *PWin32FindDataA;
  342.  
  343. typedef _WIN32_FIND_DATAW *PWin32FindDataW;
  344.  
  345. typedef _WIN32_FIND_DATAA *PWin32FindData;
  346.  
  347. typedef _WIN32_FIND_DATAA  TWin32FindDataA;
  348.  
  349. typedef _WIN32_FIND_DATAW  TWin32FindDataW;
  350.  
  351. typedef _WIN32_FIND_DATAA  TWin32FindData;
  352.  
  353. typedef _OSVERSIONINFOA *POSVersionInfoA;
  354.  
  355. typedef _OSVERSIONINFOW *POSVersionInfoW;
  356.  
  357. typedef _OSVERSIONINFOA *POSVersionInfo;
  358.  
  359. typedef _OSVERSIONINFOA  TOSVersionInfoA;
  360.  
  361. typedef _OSVERSIONINFOW  TOSVersionInfoW;
  362.  
  363. typedef _OSVERSIONINFOA  TOSVersionInfo;
  364.  
  365. typedef _SYSTEM_POWER_STATUS *PSystemPowerStatus;
  366.  
  367. typedef _SYSTEM_POWER_STATUS  TSystemPowerStatus;
  368.  
  369. typedef tagXFORM *PXForm;
  370.  
  371. #pragma pack(push, 1)
  372. #pragma pack(pop)
  373.  
  374. typedef tagXFORM  TXForm;
  375.  
  376. #pragma pack(push, 1)
  377. #pragma pack(pop)
  378.  
  379. typedef tagBITMAP *PBitmap;
  380.  
  381. typedef tagBITMAP  TBitmap;
  382.  
  383. #pragma pack(push, 1)
  384. #pragma pack(pop)
  385.  
  386. typedef tagRGBTRIPLE  TRGBTriple;
  387.  
  388. #pragma pack(push, 1)
  389. #pragma pack(pop)
  390.  
  391. typedef tagRGBQUAD *PRGBQuad;
  392.  
  393. typedef tagRGBQUAD  TRGBQuad;
  394.  
  395. #pragma pack(push, 1)
  396. #pragma pack(pop)
  397.  
  398. typedef tagCIEXYZ *PCIEXYZ;
  399.  
  400. typedef tagCIEXYZ  TCIEXYZ;
  401.  
  402. #pragma pack(push, 1)
  403. #pragma pack(pop)
  404.  
  405. typedef tagICEXYZTRIPLE *PCIEXYZTriple;
  406.  
  407. typedef tagICEXYZTRIPLE  TCIEXYZTriple;
  408.  
  409. typedef tagLOGCOLORSPACEA *PLogColorSpaceA;
  410.  
  411. typedef tagLOGCOLORSPACEW *PLogColorSpaceW;
  412.  
  413. typedef tagLOGCOLORSPACEA *PLogColorSpace;
  414.  
  415. #pragma pack(push, 1)
  416. #pragma pack(pop)
  417.  
  418. typedef tagLOGCOLORSPACEA  TLogColorSpaceA;
  419.  
  420. #pragma pack(push, 1)
  421. #pragma pack(pop)
  422.  
  423. typedef tagLOGCOLORSPACEW  TLogColorSpaceW;
  424.  
  425. typedef tagLOGCOLORSPACEA  TLogColorSpace;
  426.  
  427. #pragma pack(push, 1)
  428. #pragma pack(pop)
  429.  
  430. typedef tagBITMAPCOREHEADER *PBitmapCoreHeader;
  431.  
  432. typedef tagBITMAPCOREHEADER  TBitmapCoreHeader;
  433.  
  434. #pragma pack(push, 1)
  435. #pragma pack(pop)
  436.  
  437. typedef tagBITMAPINFOHEADER *PBitmapInfoHeader;
  438.  
  439. typedef tagBITMAPINFOHEADER  TBitmapInfoHeader;
  440.  
  441. #pragma pack(push, 1)
  442. #pragma pack(pop)
  443.  
  444. typedef BITMAPV4HEADER *PBitmapV4Header;
  445.  
  446. typedef BITMAPV4HEADER  TBitmapV4Header;
  447.  
  448. typedef tagBITMAPINFO *PBitmapInfo;
  449.  
  450. #pragma pack(push, 1)
  451. #pragma pack(pop)
  452.  
  453. typedef tagBITMAPINFO  TBitmapInfo;
  454.  
  455. typedef tagBITMAPCOREINFO *PBitmapCoreInfo;
  456.  
  457. #pragma pack(push, 1)
  458. #pragma pack(pop)
  459.  
  460. typedef tagBITMAPCOREINFO  TBitmapCoreInfo;
  461.  
  462. #pragma pack(push, 1)
  463. #pragma pack(pop)
  464.  
  465. typedef tagBITMAPFILEHEADER *PBitmapFileHeader;
  466.  
  467. typedef tagBITMAPFILEHEADER  TBitmapFileHeader;
  468.  
  469. typedef tagFONTSIGNATURE *PFontSignature;
  470.  
  471. #pragma pack(push, 1)
  472. #pragma pack(pop)
  473.  
  474. typedef tagFONTSIGNATURE  TFontSignature;
  475.  
  476. #pragma pack(push, 1)
  477. #pragma pack(pop)
  478.  
  479. typedef tagCHARSETINFO *PCharsetInfo;
  480.  
  481. typedef tagCHARSETINFO  TCharsetInfo;
  482.  
  483. typedef tagLOCALESIGNATURE *PLocaleSignature;
  484.  
  485. #pragma pack(push, 1)
  486. #pragma pack(pop)
  487.  
  488. typedef tagLOCALESIGNATURE  TLocaleSignature;
  489.  
  490. typedef tagHANDLETABLE *PHandleTable;
  491.  
  492. #pragma pack(push, 1)
  493. #pragma pack(pop)
  494.  
  495. typedef tagHANDLETABLE  THandleTable;
  496.  
  497. typedef tagMETARECORD *PMetaRecord;
  498.  
  499. #pragma pack(push, 1)
  500. #pragma pack(pop)
  501.  
  502. typedef tagMETARECORD  TMetaRecord;
  503.  
  504. #pragma pack(push, 1)
  505. #pragma pack(pop)
  506.  
  507. typedef tagMETAFILEPICT *PMetafilePict;
  508.  
  509. typedef tagMETAFILEPICT  TMetafilePict;
  510.  
  511. #pragma pack(push, 1)
  512. #pragma pack(pop)
  513.  
  514. typedef tagMETAHEADER *PMetaHeader;
  515.  
  516. typedef tagMETAHEADER  TMetaHeader;
  517.  
  518. typedef tagENHMETARECORD *PEnhMetaRecord;
  519.  
  520. #pragma pack(push, 1)
  521. #pragma pack(pop)
  522.  
  523. typedef tagENHMETARECORD  TEnhMetaRecord;
  524.  
  525. #pragma pack(push, 1)
  526. #pragma pack(pop)
  527.  
  528. typedef tagENHMETAHEADER *PEnhMetaHeader;
  529.  
  530. typedef tagENHMETAHEADER  TEnhMetaHeader;
  531.  
  532. typedef tagTEXTMETRICA *PTextMetricA;
  533.  
  534. typedef tagTEXTMETRICW *PTextMetricW;
  535.  
  536. typedef tagTEXTMETRICA *PTextMetric;
  537.  
  538. typedef tagTEXTMETRICA  TTextMetricA;
  539.  
  540. typedef tagTEXTMETRICW  TTextMetricW;
  541.  
  542. typedef tagTEXTMETRICA  TTextMetric;
  543.  
  544. typedef tagNEWTEXTMETRICA *PNewTextMetricA;
  545.  
  546. typedef tagNEWTEXTMETRICW *PNewTextMetricW;
  547.  
  548. typedef tagNEWTEXTMETRICA *PNewTextMetric;
  549.  
  550. typedef tagNEWTEXTMETRICA  TNewTextMetricA;
  551.  
  552. typedef tagNEWTEXTMETRICW  TNewTextMetricW;
  553.  
  554. typedef tagNEWTEXTMETRICA  TNewTextMetric;
  555.  
  556. #pragma pack(push, 1)
  557. #pragma pack(pop)
  558.  
  559. typedef tagNEWTEXTMETRICEXA *PNewTextMetricEx;
  560.  
  561. typedef tagNEWTEXTMETRICEXA  TNewTextMetricEx;
  562.  
  563. typedef tagPELARRAY *PPelArray;
  564.  
  565. typedef tagPELARRAY  TPelArray;
  566.  
  567. #pragma pack(push, 1)
  568. #pragma pack(pop)
  569.  
  570. typedef tagLOGBRUSH *PLogBrush;
  571.  
  572. typedef tagLOGBRUSH  TLogBrush;
  573.  
  574. typedef tagLOGBRUSH *PPattern;
  575.  
  576. typedef tagLOGBRUSH  TPattern;
  577.  
  578. #pragma pack(push, 1)
  579. #pragma pack(pop)
  580.  
  581. typedef tagLOGPEN *PLogPen;
  582.  
  583. typedef tagLOGPEN  TLogPen;
  584.  
  585. typedef tagLOGPEN *PExtLogPen;
  586.  
  587. #pragma pack(push, 1)
  588. #pragma pack(pop)
  589.  
  590. typedef tagEXTLOGPEN  TExtLogPen;
  591.  
  592. #pragma pack(push, 1)
  593. #pragma pack(pop)
  594.  
  595. typedef tagPALETTEENTRY *PPaletteEntry;
  596.  
  597. typedef tagPALETTEENTRY  TPaletteEntry;
  598.  
  599. typedef tagLOGPALETTE *PLogPalette;
  600.  
  601. #pragma pack(push, 1)
  602. #pragma pack(pop)
  603.  
  604. typedef tagLOGPALETTE  TLogPalette;
  605.  
  606. typedef tagLOGFONTA *PLogFontA;
  607.  
  608. typedef tagLOGFONTW *PLogFontW;
  609.  
  610. typedef tagLOGFONTA *PLogFont;
  611.  
  612. #pragma pack(push, 1)
  613. #pragma pack(pop)
  614.  
  615. typedef tagLOGFONTA  TLogFontA;
  616.  
  617. #pragma pack(push, 1)
  618. #pragma pack(pop)
  619.  
  620. typedef tagLOGFONTW  TLogFontW;
  621.  
  622. typedef tagLOGFONTA  TLogFont;
  623.  
  624. typedef tagENUMLOGFONTA *PEnumLogFontA;
  625.  
  626. typedef tagENUMLOGFONTW *PEnumLogFontW;
  627.  
  628. typedef tagENUMLOGFONTA *PEnumLogFont;
  629.  
  630. #pragma pack(push, 1)
  631. #pragma pack(pop)
  632.  
  633. typedef tagENUMLOGFONTA  TEnumLogFontA;
  634.  
  635. #pragma pack(push, 1)
  636. #pragma pack(pop)
  637.  
  638. typedef tagENUMLOGFONTW  TEnumLogFontW;
  639.  
  640. typedef tagENUMLOGFONTA  TEnumLogFont;
  641.  
  642. typedef tagENUMLOGFONTEXA *PEnumLogFontEx;
  643.  
  644. #pragma pack(push, 1)
  645. #pragma pack(pop)
  646.  
  647. typedef tagENUMLOGFONTEXA  TEnumLogFontEx;
  648.  
  649. #pragma pack(push, 1)
  650. #pragma pack(pop)
  651.  
  652. typedef tagPANOSE *PPanose;
  653.  
  654. typedef tagPANOSE  TPanose;
  655.  
  656. typedef tagEXTLOGFONTA *PExtLogFontA;
  657.  
  658. typedef tagEXTLOGFONTW *PExtLogFontW;
  659.  
  660. typedef tagEXTLOGFONTA *PExtLogFont;
  661.  
  662. typedef tagEXTLOGFONTA  TExtLogFontA;
  663.  
  664. typedef tagEXTLOGFONTW  TExtLogFontW;
  665.  
  666. typedef tagEXTLOGFONTA  TExtLogFont;
  667.  
  668. typedef _devicemodeA *PDeviceModeA;
  669.  
  670. typedef _devicemodeW *PDeviceModeW;
  671.  
  672. typedef _devicemodeA *PDeviceMode;
  673.  
  674. #pragma pack(push, 1)
  675. #pragma pack(pop)
  676.  
  677. typedef _devicemodeA  TDeviceModeA;
  678.  
  679. #pragma pack(push, 1)
  680. #pragma pack(pop)
  681.  
  682. typedef _devicemodeW  TDeviceModeW;
  683.  
  684. typedef _devicemodeA  TDeviceMode;
  685.  
  686. typedef _devicemodeA *PDevMode;
  687.  
  688. typedef _devicemodeA  TDevMode;
  689.  
  690. #pragma pack(push, 1)
  691. #pragma pack(pop)
  692.  
  693. typedef _RGNDATAHEADER *PRgnDataHeader;
  694.  
  695. typedef _RGNDATAHEADER  TRgnDataHeader;
  696.  
  697. typedef _RGNDATA *PRgnData;
  698.  
  699. #pragma pack(push, 1)
  700. #pragma pack(pop)
  701.  
  702. typedef _RGNDATA  TRgnData;
  703.  
  704. #pragma pack(push, 1)
  705. #pragma pack(pop)
  706.  
  707. typedef _ABC  TABC;
  708.  
  709. typedef _ABCFLOAT *PABCFloat;
  710.  
  711. #pragma pack(push, 1)
  712. #pragma pack(pop)
  713.  
  714. typedef _ABCFLOAT  TABCFloat;
  715.  
  716. typedef _OUTLINETEXTMETRICA *POutlineTextmetricA;
  717.  
  718. typedef _OUTLINETEXTMETRICW *POutlineTextmetricW;
  719.  
  720. typedef _OUTLINETEXTMETRICA *POutlineTextmetric;
  721.  
  722. typedef _OUTLINETEXTMETRICA  TOutlineTextmetricA;
  723.  
  724. typedef _OUTLINETEXTMETRICW  TOutlineTextmetricW;
  725.  
  726. typedef _OUTLINETEXTMETRICA  TOutlineTextmetric;
  727.  
  728. #pragma pack(push, 1)
  729. #pragma pack(pop)
  730.  
  731. typedef tagPOLYTEXTA *PPolyTextA;
  732.  
  733. #pragma pack(push, 1)
  734. #pragma pack(pop)
  735.  
  736. typedef tagPOLYTEXTW *PPolyTextW;
  737.  
  738. typedef tagPOLYTEXTA *PPolyText;
  739.  
  740. typedef tagPOLYTEXTA  TPolyTextA;
  741.  
  742. typedef tagPOLYTEXTW  TPolyTextW;
  743.  
  744. typedef tagPOLYTEXTA  TPolyText;
  745.  
  746. #pragma pack(push, 1)
  747. #pragma pack(pop)
  748.  
  749. typedef _FIXED  TFixed;
  750.  
  751. #pragma pack(push, 1)
  752. #pragma pack(pop)
  753.  
  754. typedef _MAT2 *PMat2;
  755.  
  756. typedef _MAT2  TMat2;
  757.  
  758. #pragma pack(push, 1)
  759. #pragma pack(pop)
  760.  
  761. typedef _GLYPHMETRICS *PGlyphMetrics;
  762.  
  763. typedef _GLYPHMETRICS  TGlyphMetrics;
  764.  
  765. #pragma pack(push, 1)
  766. #pragma pack(pop)
  767.  
  768. typedef tagPOINTFX *PPointfx;
  769.  
  770. typedef tagPOINTFX  TPointfx;
  771.  
  772. typedef tagTTPOLYCURVE *PTTPolyCurve;
  773.  
  774. #pragma pack(push, 1)
  775. #pragma pack(pop)
  776.  
  777. typedef tagTTPOLYCURVE  TTTPolyCurve;
  778.  
  779. #pragma pack(push, 1)
  780. #pragma pack(pop)
  781.  
  782. typedef tagTTPOLYGONHEADER *PTTPolygonHeader;
  783.  
  784. typedef tagTTPOLYGONHEADER  TTTPolygonHeader;
  785.  
  786. #pragma pack(push, 1)
  787. #pragma pack(pop)
  788.  
  789. typedef tagGCP_RESULTSA *PGCPResultsA;
  790.  
  791. #pragma pack(push, 1)
  792. #pragma pack(pop)
  793.  
  794. typedef tagGCP_RESULTSW *PGCPResultsW;
  795.  
  796. typedef tagGCP_RESULTSA *PGCPResults;
  797.  
  798. typedef tagGCP_RESULTSA  TGCPResultsA;
  799.  
  800. typedef tagGCP_RESULTSW  TGCPResultsW;
  801.  
  802. typedef tagGCP_RESULTSA  TGCPResults;
  803.  
  804. #pragma pack(push, 1)
  805. #pragma pack(pop)
  806.  
  807. typedef _RASTERIZER_STATUS *PRasterizerStatus;
  808.  
  809. typedef _RASTERIZER_STATUS  TRasterizerStatus;
  810.  
  811. #pragma pack(push, 1)
  812. #pragma pack(pop)
  813.  
  814. typedef tagPIXELFORMATDESCRIPTOR *PPixelFormatDescriptor;
  815.  
  816. typedef tagPIXELFORMATDESCRIPTOR  TPixelFormatDescriptor;
  817.  
  818. typedef void *TFNOldFontEnumProcA;
  819.  
  820. typedef void *TFNOldFontEnumProcW;
  821.  
  822. typedef void *TFNOldFontEnumProc;
  823.  
  824. typedef void *TFNGObjEnumProc;
  825.  
  826. typedef void *TFNLineDDAProc;
  827.  
  828. typedef void *TFNFontEnumProcA;
  829.  
  830. typedef void *TFNFontEnumProcW;
  831.  
  832. typedef void *TFNFontEnumProc;
  833.  
  834. typedef int __stdcall (*TFNDevMode)(HWND Wnd, HINST Driver, DEVMODEA &DevModeOutput, char * DeciveName
  835.     , char * Port, DEVMODEA &DevModeInput, char * Profile, int Mode);
  836.  
  837. typedef int __stdcall (*TFNDevCaps)(char * DeviceName, char * Port, int Index, char * Output, DEVMODEA 
  838.     &DevMode);
  839.  
  840. typedef void *TFNMFEnumProc;
  841.  
  842. typedef void *TFNEnhMFEnumProc;
  843.  
  844. typedef tagDIBSECTION *PDIBSection;
  845.  
  846. #pragma pack(push, 1)
  847. #pragma pack(pop)
  848.  
  849. typedef tagDIBSECTION  TDIBSection;
  850.  
  851. #pragma pack(push, 1)
  852. #pragma pack(pop)
  853.  
  854. typedef tagCOLORADJUSTMENT *PColorAdjustment;
  855.  
  856. typedef tagCOLORADJUSTMENT  TColorAdjustment;
  857.  
  858. typedef DWord __stdcall (*TFNAbortProc)(HDC DC, int p2);
  859.  
  860. #pragma pack(push, 1)
  861. #pragma pack(pop)
  862.  
  863. typedef _DOCINFOA *PDocInfoA;
  864.  
  865. #pragma pack(push, 1)
  866. #pragma pack(pop)
  867.  
  868. typedef _DOCINFOW *PDocInfoW;
  869.  
  870. typedef _DOCINFOA *PDocInfo;
  871.  
  872. typedef _DOCINFOA  TDocInfoA;
  873.  
  874. typedef _DOCINFOW  TDocInfoW;
  875.  
  876. typedef _DOCINFOA  TDocInfo;
  877.  
  878. #pragma pack(push, 1)
  879. #pragma pack(pop)
  880.  
  881. typedef tagKERNINGPAIR *PKerningPair;
  882.  
  883. typedef tagKERNINGPAIR  TKerningPair;
  884.  
  885. typedef void *TFNICMEnumProc;
  886.  
  887. #pragma pack(push, 1)
  888. #pragma pack(pop)
  889.  
  890. typedef tagEMR  TEMR;
  891.  
  892. #pragma pack(push, 1)
  893. #pragma pack(pop)
  894.  
  895. typedef tagEMRTEXT *PEMRText;
  896.  
  897. typedef tagEMRTEXT  TEMRText;
  898.  
  899. #pragma pack(push, 1)
  900. #pragma pack(pop)
  901.  
  902. typedef tagABORTPATH *PAbortPath;
  903.  
  904. typedef tagABORTPATH  TAbortPath;
  905.  
  906. typedef tagABORTPATH  TEMRAbortPath;
  907.  
  908. typedef tagABORTPATH *PEMRAbortPath;
  909.  
  910. typedef tagABORTPATH  TEMRBeginPath;
  911.  
  912. typedef tagABORTPATH *PEMRBeginPath;
  913.  
  914. typedef tagABORTPATH  TEMREndPath;
  915.  
  916. typedef tagABORTPATH *PEMREndPath;
  917.  
  918. typedef tagABORTPATH  TEMRCloseFigure;
  919.  
  920. typedef tagABORTPATH *PEMRCloseFigure;
  921.  
  922. typedef tagABORTPATH  TEMRFlattenPath;
  923.  
  924. typedef tagABORTPATH *PEMRFlattenPath;
  925.  
  926. typedef tagABORTPATH  TEMRWidenPath;
  927.  
  928. typedef tagABORTPATH *PEMRWidenPath;
  929.  
  930. typedef tagABORTPATH  TEMRSetMetaRgn;
  931.  
  932. typedef tagABORTPATH *PEMRSetMetaRgn;
  933.  
  934. typedef tagABORTPATH  TEMRSaveDC;
  935.  
  936. typedef tagABORTPATH *PEMRSaveDC;
  937.  
  938. typedef tagABORTPATH  TEMRRealizePalette;
  939.  
  940. typedef tagABORTPATH *PEMRRealizePalette;
  941.  
  942. #pragma pack(push, 1)
  943. #pragma pack(pop)
  944.  
  945. typedef tagEMRSELECTCLIPPATH *PEMRSelectclippath;
  946.  
  947. typedef tagEMRSELECTCLIPPATH  TEMRSelectClipPath;
  948.  
  949. typedef tagEMRSELECTCLIPPATH  TEMRSetBkMode;
  950.  
  951. typedef tagEMRSELECTCLIPPATH *PEMRSetBkMode;
  952.  
  953. typedef tagEMRSELECTCLIPPATH  TEMRSetMapMode;
  954.  
  955. typedef tagEMRSELECTCLIPPATH *PEMRSetMapMode;
  956.  
  957. typedef tagEMRSELECTCLIPPATH  TEMRSetPolyFillMode;
  958.  
  959. typedef tagEMRSELECTCLIPPATH *PEMRSetPolyFillMode;
  960.  
  961. typedef tagEMRSELECTCLIPPATH  TEMRSetRop2;
  962.  
  963. typedef tagEMRSELECTCLIPPATH *PEMRSetRop2;
  964.  
  965. typedef tagEMRSELECTCLIPPATH  TEMRSetStretchBltMode;
  966.  
  967. typedef tagEMRSELECTCLIPPATH *PEMRSetStretchBltMode;
  968.  
  969. typedef tagEMRSELECTCLIPPATH  TEMRSetICMMode;
  970.  
  971. typedef tagEMRSELECTCLIPPATH *PEMRSetICMMode;
  972.  
  973. typedef tagEMRSELECTCLIPPATH  TEMRSetTextAlign;
  974.  
  975. typedef tagEMRSELECTCLIPPATH *PEMRSetTextAlign;
  976.  
  977. typedef tagEMRSETMITERLIMIT *PEMRSetMiterLimit;
  978.  
  979. #pragma pack(push, 1)
  980. #pragma pack(pop)
  981.  
  982. typedef tagEMRSETMITERLIMIT  TEMRSetMiterLimit;
  983.  
  984. #pragma pack(push, 1)
  985. #pragma pack(pop)
  986.  
  987. typedef tagEMRRESTOREDC *PEMRRestoreDC;
  988.  
  989. typedef tagEMRRESTOREDC  TEMRRestoreDC;
  990.  
  991. #pragma pack(push, 1)
  992. #pragma pack(pop)
  993.  
  994. typedef tagEMRSETARCDIRECTION *PEMRSetArcDirection;
  995.  
  996. typedef tagEMRSETARCDIRECTION  TEMRSetArcDirection;
  997.  
  998. #pragma pack(push, 1)
  999. #pragma pack(pop)
  1000.  
  1001. typedef tagEMRSETMAPPERFLAGS *PEMRSetMapperFlags;
  1002.  
  1003. typedef tagEMRSETMAPPERFLAGS  TEMRSetMapperFlags;
  1004.  
  1005. #pragma pack(push, 1)
  1006. #pragma pack(pop)
  1007.  
  1008. typedef tagEMRSETTEXTCOLOR *PEMRSetTextColor;
  1009.  
  1010. typedef tagEMRSETTEXTCOLOR  TEMRSetTextColor;
  1011.  
  1012. typedef tagEMRSETTEXTCOLOR  TEMRSetBkColor;
  1013.  
  1014. typedef tagEMRSETTEXTCOLOR *PEMRSetBkColor;
  1015.  
  1016. #pragma pack(push, 1)
  1017. #pragma pack(pop)
  1018.  
  1019. typedef tagEMRSELECTOBJECT *PEMRSelectObject;
  1020.  
  1021. typedef tagEMRSELECTOBJECT  TEMRSelectObject;
  1022.  
  1023. typedef tagEMRSELECTOBJECT  EMRDeleteObject;
  1024.  
  1025. typedef tagEMRSELECTOBJECT *PEMRDeleteObject;
  1026.  
  1027. #pragma pack(push, 1)
  1028. #pragma pack(pop)
  1029.  
  1030. typedef tagEMRSELECTCOLORSPACE *PEMRSelectColorSpace;
  1031.  
  1032. typedef tagEMRSELECTCOLORSPACE  TEMRSelectColorSpace;
  1033.  
  1034. typedef tagEMRSELECTCOLORSPACE  EMRDeleteColorSpace;
  1035.  
  1036. typedef tagEMRSELECTCOLORSPACE *PEMRDeleteColorSpace;
  1037.  
  1038. #pragma pack(push, 1)
  1039. #pragma pack(pop)
  1040.  
  1041. typedef tagEMRSELECTPALETTE *PEMRSelectPalette;
  1042.  
  1043. typedef tagEMRSELECTPALETTE  TEMRSelectPalette;
  1044.  
  1045. #pragma pack(push, 1)
  1046. #pragma pack(pop)
  1047.  
  1048. typedef tagEMRRESIZEPALETTE *PEMRResizePalette;
  1049.  
  1050. typedef tagEMRRESIZEPALETTE  TEMRResizePalette;
  1051.  
  1052. typedef tagEMRSETPALETTEENTRIES *PEMRSetPaletteEntries;
  1053.  
  1054. #pragma pack(push, 1)
  1055. #pragma pack(pop)
  1056.  
  1057. typedef tagEMRSETPALETTEENTRIES  TEMRSetPaletteEntries;
  1058.  
  1059. #pragma pack(push, 1)
  1060. #pragma pack(pop)
  1061.  
  1062. typedef tagEMRSETCOLORADJUSTMENT *PEMRSetColorAdjustment;
  1063.  
  1064. typedef tagEMRSETCOLORADJUSTMENT  TEMRSetColorAdjustment;
  1065.  
  1066. typedef tagEMRGDICOMMENT *PEMRGDIComment;
  1067.  
  1068. typedef tagEMRGDICOMMENT  TEMRGDIComment;
  1069.  
  1070. #pragma pack(push, 1)
  1071. #pragma pack(pop)
  1072.  
  1073. typedef tagEMREOF  TEMREOF;
  1074.  
  1075. #pragma pack(push, 1)
  1076. #pragma pack(pop)
  1077.  
  1078. typedef tagEMRLINETO *PEMRLineTo;
  1079.  
  1080. typedef tagEMRLINETO  TEMRLineTo;
  1081.  
  1082. typedef tagEMRLINETO  EMRMoveToEx;
  1083.  
  1084. typedef tagEMRLINETO *PEMRMoveToEx;
  1085.  
  1086. #pragma pack(push, 1)
  1087. #pragma pack(pop)
  1088.  
  1089. typedef tagEMROFFSETCLIPRGN *PEMROffsetClipRgn;
  1090.  
  1091. typedef tagEMROFFSETCLIPRGN  TEMROffsetClipRgn;
  1092.  
  1093. #pragma pack(push, 1)
  1094. #pragma pack(pop)
  1095.  
  1096. typedef tagEMRFILLPATH *PEMRFillPath;
  1097.  
  1098. typedef tagEMRFILLPATH  TEMRFillPath;
  1099.  
  1100. typedef tagEMRFILLPATH  EMRStrokeAndFillPath;
  1101.  
  1102. typedef tagEMRFILLPATH *PEMRStrokeAndFillPath;
  1103.  
  1104. typedef tagEMRFILLPATH  EMRStrokePath;
  1105.  
  1106. typedef tagEMRFILLPATH *PEMRStrokePath;
  1107.  
  1108. #pragma pack(push, 1)
  1109. #pragma pack(pop)
  1110.  
  1111. typedef tagEMREXCLUDECLIPRECT *PEMRExcludeClipRect;
  1112.  
  1113. typedef tagEMREXCLUDECLIPRECT  TEMRExcludeClipRect;
  1114.  
  1115. typedef tagEMREXCLUDECLIPRECT  EMRIntersectClipRect;
  1116.  
  1117. typedef tagEMREXCLUDECLIPRECT *PEMRIntersectClipRect;
  1118.  
  1119. #pragma pack(push, 1)
  1120. #pragma pack(pop)
  1121.  
  1122. typedef tagEMRSETVIEWPORTORGEX *PEMRSetViewportOrgEx;
  1123.  
  1124. typedef tagEMRSETVIEWPORTORGEX  TEMRSetViewportOrgEx;
  1125.  
  1126. typedef tagEMRSETVIEWPORTORGEX  EMRSetWindowOrgEx;
  1127.  
  1128. typedef tagEMRSETVIEWPORTORGEX *PEMRSetWindowOrgEx;
  1129.  
  1130. typedef tagEMRSETVIEWPORTORGEX  EMRSetBrushOrgEx;
  1131.  
  1132. typedef tagEMRSETVIEWPORTORGEX *PEMRSetBrushOrgEx;
  1133.  
  1134. #pragma pack(push, 1)
  1135. #pragma pack(pop)
  1136.  
  1137. typedef tagEMRSETVIEWPORTEXTEX *PEMRSetViewportExtEx;
  1138.  
  1139. typedef tagEMRSETVIEWPORTEXTEX  TEMRSetViewportExtEx;
  1140.  
  1141. typedef tagEMRSETVIEWPORTEXTEX  EMRSetWindowExtEx;
  1142.  
  1143. typedef tagEMRSETVIEWPORTEXTEX *PEMRSetWindowExtEx;
  1144.  
  1145. #pragma pack(push, 1)
  1146. #pragma pack(pop)
  1147.  
  1148. typedef tagEMRSCALEVIEWPORTEXTEX *PEMRScaleViewportExtEx;
  1149.  
  1150. typedef tagEMRSCALEVIEWPORTEXTEX  TEMRScaleViewportExtEx;
  1151.  
  1152. typedef tagEMRSCALEVIEWPORTEXTEX  EMRScaleWindowExtEx;
  1153.  
  1154. typedef tagEMRSCALEVIEWPORTEXTEX *PEMRScaleWindowExtEx;
  1155.  
  1156. #pragma pack(push, 1)
  1157. #pragma pack(pop)
  1158.  
  1159. typedef tagEMRSETWORLDTRANSFORM *PEMRSetWorldTransform;
  1160.  
  1161. typedef tagEMRSETWORLDTRANSFORM  TEMRSetWorldTransform;
  1162.  
  1163. #pragma pack(push, 1)
  1164. #pragma pack(pop)
  1165.  
  1166. typedef tagEMRMODIFYWORLDTRANSFORM *PEMRModifyWorldTransform;
  1167.  
  1168. typedef tagEMRMODIFYWORLDTRANSFORM  TEMRModifyWorldTransform;
  1169.  
  1170. #pragma pack(push, 1)
  1171. #pragma pack(pop)
  1172.  
  1173. typedef tagEMRSETPIXELV *PEMRSetPixelV;
  1174.  
  1175. typedef tagEMRSETPIXELV  TEMRSetPixelV;
  1176.  
  1177. #pragma pack(push, 1)
  1178. #pragma pack(pop)
  1179.  
  1180. typedef tagEMREXTFLOODFILL *PEMRExtFloodFill;
  1181.  
  1182. typedef tagEMREXTFLOODFILL  TEMRExtFloodFill;
  1183.  
  1184. #pragma pack(push, 1)
  1185. #pragma pack(pop)
  1186.  
  1187. typedef tagEMRELLIPSE *PEMREllipse;
  1188.  
  1189. typedef tagEMRELLIPSE  TEMREllipse;
  1190.  
  1191. typedef tagEMRELLIPSE  EMRRectangle;
  1192.  
  1193. typedef tagEMRELLIPSE *PEMRRectangle;
  1194.  
  1195. #pragma pack(push, 1)
  1196. #pragma pack(pop)
  1197.  
  1198. typedef tagEMRROUNDRECT *PEMRRoundRect;
  1199.  
  1200. typedef tagEMRROUNDRECT  TEMRRoundRect;
  1201.  
  1202. #pragma pack(push, 1)
  1203. #pragma pack(pop)
  1204.  
  1205. typedef tagEMRARC *PEMRArc;
  1206.  
  1207. typedef tagEMRARC  TEMRArc;
  1208.  
  1209. typedef tagEMRARC  EMRArcTo;
  1210.  
  1211. typedef tagEMRARC *PEMRArcTo;
  1212.  
  1213. typedef tagEMRARC  EMRChord;
  1214.  
  1215. typedef tagEMRARC *PEMRChord;
  1216.  
  1217. typedef tagEMRARC  EMRPie;
  1218.  
  1219. typedef tagEMRARC *PEMRPie;
  1220.  
  1221. typedef tagEMRANGLEARC *PEMRAngleArc;
  1222.  
  1223. #pragma pack(push, 1)
  1224. #pragma pack(pop)
  1225.  
  1226. typedef tagEMRANGLEARC  TEMRAngleArc;
  1227.  
  1228. typedef tagEMRPOLYLINE *PEMRPolyline;
  1229.  
  1230. #pragma pack(push, 1)
  1231. #pragma pack(pop)
  1232.  
  1233. typedef tagEMRPOLYLINE  TEMRPolyline;
  1234.  
  1235. typedef tagEMRPOLYLINE  EMRPolyBezier;
  1236.  
  1237. typedef tagEMRPOLYLINE *PEMRPolyBezier;
  1238.  
  1239. typedef tagEMRPOLYLINE  EMRPolyGON;
  1240.  
  1241. typedef tagEMRPOLYLINE *PEMRPolyGON;
  1242.  
  1243. typedef tagEMRPOLYLINE  EMRPolyBezierTo;
  1244.  
  1245. typedef tagEMRPOLYLINE *PEMRPolyBezierTo;
  1246.  
  1247. typedef tagEMRPOLYLINE  EMRPolyLineTo;
  1248.  
  1249. typedef tagEMRPOLYLINE *PEMRPolyLineTo;
  1250.  
  1251. typedef tagEMRPOLYLINE16 *PEMRPolyline16;
  1252.  
  1253. #pragma pack(push, 1)
  1254. #pragma pack(pop)
  1255.  
  1256. typedef tagEMRPOLYLINE16  TEMRPolyline16;
  1257.  
  1258. typedef tagEMRPOLYLINE16  EMRPolyBezier16;
  1259.  
  1260. typedef tagEMRPOLYLINE16 *PEMRPolyBezier16;
  1261.  
  1262. typedef tagEMRPOLYLINE16  EMRPolygon16;
  1263.  
  1264. typedef tagEMRPOLYLINE16 *PEMRPolygon16;
  1265.  
  1266. typedef tagEMRPOLYLINE16  EMRPolyBezierTo16;
  1267.  
  1268. typedef tagEMRPOLYLINE16 *PEMRPolyBezierTo16;
  1269.  
  1270. typedef tagEMRPOLYLINE16  EMRPolyLineTo16;
  1271.  
  1272. typedef tagEMRPOLYLINE16 *PEMRPolyLineTo16;
  1273.  
  1274. typedef tagEMRPOLYDRAW *PEMRPolyDraw;
  1275.  
  1276. typedef tagEMRPOLYDRAW  TEMRPolyDraw;
  1277.  
  1278. typedef tagEMRPOLYDRAW16 *PEMRPolyDraw16;
  1279.  
  1280. typedef tagEMRPOLYDRAW16  TEMRPolyDraw16;
  1281.  
  1282. typedef tagEMRPOLYPOLYLINE *PEMRPolyPolyline;
  1283.  
  1284. #pragma pack(push, 1)
  1285. #pragma pack(pop)
  1286.  
  1287. typedef tagEMRPOLYPOLYLINE  TEMRPolyPolyline;
  1288.  
  1289. typedef tagEMRPOLYPOLYLINE  EMRPolyPolygon;
  1290.  
  1291. typedef tagEMRPOLYPOLYLINE *PEMRPolyPolygon;
  1292.  
  1293. typedef tagEMRPOLYPOLYLINE16 *PEMRPolyPolyline16;
  1294.  
  1295. #pragma pack(push, 1)
  1296. #pragma pack(pop)
  1297.  
  1298. typedef tagEMRPOLYPOLYLINE16  TEMRPolyPolyline16;
  1299.  
  1300. typedef tagEMRPOLYPOLYLINE16  EMRPolyPolygon16;
  1301.  
  1302. typedef tagEMRPOLYPOLYLINE16 *PEMRPolyPolygon16;
  1303.  
  1304. typedef tagEMRINVERTRGN *PEMRInvertRgn;
  1305.  
  1306. typedef tagEMRINVERTRGN  TEMRInvertRgn;
  1307.  
  1308. typedef tagEMRINVERTRGN  EMRPaintRgn;
  1309.  
  1310. typedef tagEMRINVERTRGN *PEMRPaintRgn;
  1311.  
  1312. typedef tagEMRFILLRGN *PEMRFillRgn;
  1313.  
  1314. typedef tagEMRFILLRGN  TEMRFillRgn;
  1315.  
  1316. typedef tagEMRFRAMERGN *PEMRFrameRgn;
  1317.  
  1318. typedef tagEMRFRAMERGN  TEMRFrameRgn;
  1319.  
  1320. typedef tagEMREXTSELECTCLIPRGN *PEMRExtSelectClipRgn;
  1321.  
  1322. typedef tagEMREXTSELECTCLIPRGN  TEMRExtSelectClipRgn;
  1323.  
  1324. typedef tagEMREXTTEXTOUTA *PEMRExtTextOut;
  1325.  
  1326. #pragma pack(push, 1)
  1327. #pragma pack(pop)
  1328.  
  1329. typedef tagEMREXTTEXTOUTA  TEMRExtTextOut;
  1330.  
  1331. typedef tagEMRPOLYTEXTOUTA *PEMRPolyTextOut;
  1332.  
  1333. #pragma pack(push, 1)
  1334. #pragma pack(pop)
  1335.  
  1336. typedef tagEMRPOLYTEXTOUTA  TEMRPolyTextOut;
  1337.  
  1338. #pragma pack(push, 1)
  1339. #pragma pack(pop)
  1340.  
  1341. typedef tagEMRBITBLT *PEMRBitBlt;
  1342.  
  1343. typedef tagEMRBITBLT  TEMRBitBlt;
  1344.  
  1345. #pragma pack(push, 1)
  1346. #pragma pack(pop)
  1347.  
  1348. typedef tagEMRSTRETCHBLT *PEMRStretchBlt;
  1349.  
  1350. typedef tagEMRSTRETCHBLT  TEMRStretchBlt;
  1351.  
  1352. #pragma pack(push, 1)
  1353. #pragma pack(pop)
  1354.  
  1355. typedef tagEMRMASKBLT *PEMRMaskBlt;
  1356.  
  1357. typedef tagEMRMASKBLT  TEMRMaskBlt;
  1358.  
  1359. typedef tagEMRPLGBLT *PEMRPLGBlt;
  1360.  
  1361. #pragma pack(push, 1)
  1362. #pragma pack(pop)
  1363.  
  1364. typedef tagEMRPLGBLT  TEMRPLGBlt;
  1365.  
  1366. #pragma pack(push, 1)
  1367. #pragma pack(pop)
  1368.  
  1369. typedef tagEMRSETDIBITSTODEVICE *PEMRSetDIBitsToDevice;
  1370.  
  1371. typedef tagEMRSETDIBITSTODEVICE  TEMRSetDIBitsToDevice;
  1372.  
  1373. #pragma pack(push, 1)
  1374. #pragma pack(pop)
  1375.  
  1376. typedef tagEMRSTRETCHDIBITS *PEMRStretchDIBits;
  1377.  
  1378. typedef tagEMRSTRETCHDIBITS  TEMRStretchDIBits;
  1379.  
  1380. typedef tagEMREXTCREATEFONTINDIRECTW *PEMRExtCreateFontIndirect;
  1381.  
  1382. typedef tagEMREXTCREATEFONTINDIRECTW  TEMRExtCreateFontIndirect;
  1383.  
  1384. #pragma pack(push, 1)
  1385. #pragma pack(pop)
  1386.  
  1387. typedef tagEMRCREATEPALETTE *PEMRCreatePalette;
  1388.  
  1389. typedef tagEMRCREATEPALETTE  TEMRCreatePalette;
  1390.  
  1391. #pragma pack(push, 1)
  1392. #pragma pack(pop)
  1393.  
  1394. typedef tagEMRCREATECOLORSPACE *PEMRCreateColorSpace;
  1395.  
  1396. typedef tagEMRCREATECOLORSPACE  TEMRCreateColorSpace;
  1397.  
  1398. #pragma pack(push, 1)
  1399. #pragma pack(pop)
  1400.  
  1401. typedef tagEMRCREATEPEN *PEMRCreatePen;
  1402.  
  1403. typedef tagEMRCREATEPEN  TEMRCreatePen;
  1404.  
  1405. #pragma pack(push, 1)
  1406. #pragma pack(pop)
  1407.  
  1408. typedef tagEMREXTCREATEPEN *PEMRExtCreatePen;
  1409.  
  1410. typedef tagEMREXTCREATEPEN  TEMRExtCreatePen;
  1411.  
  1412. #pragma pack(push, 1)
  1413. #pragma pack(pop)
  1414.  
  1415. typedef tagEMRCREATEBRUSHINDIRECT *PEMRCreateBrushIndirect;
  1416.  
  1417. typedef tagEMRCREATEBRUSHINDIRECT  TEMRCreateBrushIndirect;
  1418.  
  1419. #pragma pack(push, 1)
  1420. #pragma pack(pop)
  1421.  
  1422. typedef tagEMRCREATEMONOBRUSH *PEMRCreateMonoBrush;
  1423.  
  1424. typedef tagEMRCREATEMONOBRUSH  TEMRCreateMonoBrush;
  1425.  
  1426. #pragma pack(push, 1)
  1427. #pragma pack(pop)
  1428.  
  1429. typedef tagEMRCREATEDIBPATTERNBRUSHPT *PEMRCreateDIBPatternBrushPt;
  1430.  
  1431. typedef tagEMRCREATEDIBPATTERNBRUSHPT  TEMRCreateDIBPatternBrushPt;
  1432.  
  1433. #pragma pack(push, 1)
  1434. #pragma pack(pop)
  1435.  
  1436. typedef tagEMRFORMAT *PEMRFormat;
  1437.  
  1438. typedef tagEMRFORMAT  TEMRFormat;
  1439.  
  1440. typedef _POINTFLOAT *PPointFloat;
  1441.  
  1442. #pragma pack(push, 1)
  1443. #pragma pack(pop)
  1444.  
  1445. typedef _POINTFLOAT  TPointFloat;
  1446.  
  1447. typedef _GLYPHMETRICSFLOAT *PGlyphMetricsFloat;
  1448.  
  1449. #pragma pack(push, 1)
  1450. #pragma pack(pop)
  1451.  
  1452. typedef _GLYPHMETRICSFLOAT  TGlyphMetricsFloat;
  1453.  
  1454. typedef void *PMENUTEMPLATE;
  1455.  
  1456. typedef void *TFNWndProc;
  1457.  
  1458. typedef void *TFNDlgProc;
  1459.  
  1460. typedef void *TFNTimerProc;
  1461.  
  1462. typedef void *TFNGrayStringProc;
  1463.  
  1464. typedef void *TFNWndEnumProc;
  1465.  
  1466. typedef void *TFNSendAsyncProc;
  1467.  
  1468. typedef void *TFNDrawStateProc;
  1469.  
  1470. typedef long __stdcall (*TFNHookProc)(int code, long wparam, long lparam);
  1471.  
  1472. typedef void *TFNPropEnumProc;
  1473.  
  1474. typedef void *TFNPropEnumProcEx;
  1475.  
  1476. typedef void *TFNEditWordBreakProc;
  1477.  
  1478. typedef void *TFNNameEnumProc;
  1479.  
  1480. typedef void *TFNWinStaEnumProc;
  1481.  
  1482. typedef void *TFNDeskTopEnumProc;
  1483.  
  1484. typedef char *MakeIntResourceA;
  1485.  
  1486. typedef wchar_t *MakeIntResourceW;
  1487.  
  1488. typedef char *MakeIntResource;
  1489.  
  1490. #pragma pack(push, 1)
  1491. #pragma pack(pop)
  1492.  
  1493. typedef tagCREATESTRUCTA *PCreateStructA;
  1494.  
  1495. #pragma pack(push, 1)
  1496. #pragma pack(pop)
  1497.  
  1498. typedef tagCREATESTRUCTW *PCreateStructW;
  1499.  
  1500. typedef tagCREATESTRUCTA *PCreateStruct;
  1501.  
  1502. typedef tagCREATESTRUCTA  TCreateStructA;
  1503.  
  1504. typedef tagCREATESTRUCTW  TCreateStructW;
  1505.  
  1506. typedef tagCREATESTRUCTA  TCreateStruct;
  1507.  
  1508. #pragma pack(push, 1)
  1509. #pragma pack(pop)
  1510.  
  1511. typedef tagCBT_CREATEWNDA *PCBTCreateWnd;
  1512.  
  1513. typedef tagCBT_CREATEWNDA  TCBTCreateWnd;
  1514.  
  1515. #pragma pack(push, 1)
  1516. #pragma pack(pop)
  1517.  
  1518. typedef tagCBTACTIVATESTRUCT *PCBTActivateStruct;
  1519.  
  1520. typedef tagCBTACTIVATESTRUCT  TCBTActivateStruct;
  1521.  
  1522. #pragma pack(push, 1)
  1523. #pragma pack(pop)
  1524.  
  1525. typedef tagEVENTMSG *PEventMsg;
  1526.  
  1527. typedef tagEVENTMSG  TEventMsg;
  1528.  
  1529. typedef tagEVENTMSG *PEventMsgMsg;
  1530.  
  1531. #pragma pack(push, 1)
  1532. #pragma pack(pop)
  1533.  
  1534. typedef tagCWPSTRUCT *PCWPStruct;
  1535.  
  1536. typedef tagCWPSTRUCT  TCWPStruct;
  1537.  
  1538. #pragma pack(push, 1)
  1539. #pragma pack(pop)
  1540.  
  1541. typedef tagCWPRETSTRUCT *PCWPRetStruct;
  1542.  
  1543. typedef tagCWPRETSTRUCT  TCWPRetStruct;
  1544.  
  1545. #pragma pack(push, 1)
  1546. #pragma pack(pop)
  1547.  
  1548. typedef tagDEBUGHOOKINFO *PDebugHookInfo;
  1549.  
  1550. typedef tagDEBUGHOOKINFO  TDebugHookInfo;
  1551.  
  1552. #pragma pack(push, 1)
  1553. #pragma pack(pop)
  1554.  
  1555. typedef tagMOUSEHOOKSTRUCT *PMouseHookStruct;
  1556.  
  1557. typedef tagMOUSEHOOKSTRUCT  TMouseHookStruct;
  1558.  
  1559. #pragma pack(push, 1)
  1560. #pragma pack(pop)
  1561.  
  1562. typedef tagHARDWAREHOOKSTRUCT *PHardwareHookStruct;
  1563.  
  1564. typedef tagHARDWAREHOOKSTRUCT  THardwareHookStruct;
  1565.  
  1566. #pragma pack(push, 1)
  1567. #pragma pack(pop)
  1568.  
  1569. typedef tagUSEROBJECTFLAGS *PUserObjectFlags;
  1570.  
  1571. typedef tagUSEROBJECTFLAGS  TUserObjectFlags;
  1572.  
  1573. #pragma pack(push, 1)
  1574. #pragma pack(pop)
  1575.  
  1576. typedef tagWNDCLASSEXA *PWndClassExA;
  1577.  
  1578. #pragma pack(push, 1)
  1579. #pragma pack(pop)
  1580.  
  1581. typedef tagWNDCLASSEXW *PWndClassExW;
  1582.  
  1583. typedef tagWNDCLASSEXA *PWndClassEx;
  1584.  
  1585. typedef tagWNDCLASSEXA  TWndClassExA;
  1586.  
  1587. typedef tagWNDCLASSEXW  TWndClassExW;
  1588.  
  1589. typedef tagWNDCLASSEXA  TWndClassEx;
  1590.  
  1591. #pragma pack(push, 1)
  1592. #pragma pack(pop)
  1593.  
  1594. typedef tagWNDCLASSA *PWndClassA;
  1595.  
  1596. #pragma pack(push, 1)
  1597. #pragma pack(pop)
  1598.  
  1599. typedef tagWNDCLASSW *PWndClassW;
  1600.  
  1601. typedef tagWNDCLASSA *PWndClass;
  1602.  
  1603. typedef tagWNDCLASSA  TWndClassA;
  1604.  
  1605. typedef tagWNDCLASSW  TWndClassW;
  1606.  
  1607. typedef tagWNDCLASSA  TWndClass;
  1608.  
  1609. #pragma pack(push, 1)
  1610. #pragma pack(pop)
  1611.  
  1612. typedef tagMSG *PMsg;
  1613.  
  1614. typedef tagMSG  TMsg;
  1615.  
  1616. #pragma pack(push, 1)
  1617. #pragma pack(pop)
  1618.  
  1619. typedef tagMINMAXINFO *PMinMaxInfo;
  1620.  
  1621. typedef tagMINMAXINFO  TMinMaxInfo;
  1622.  
  1623. #pragma pack(push, 1)
  1624. #pragma pack(pop)
  1625.  
  1626. typedef tagCOPYDATASTRUCT *PCopyDataStruct;
  1627.  
  1628. typedef tagCOPYDATASTRUCT  TCopyDataStruct;
  1629.  
  1630. #pragma pack(push, 1)
  1631. #pragma pack(pop)
  1632.  
  1633. typedef tagMDINEXTMENU *PMDINextMenu;
  1634.  
  1635. typedef tagMDINEXTMENU  TMDINextMenu;
  1636.  
  1637. #pragma pack(push, 1)
  1638. #pragma pack(pop)
  1639.  
  1640. typedef tagWINDOWPOS *PWindowPos;
  1641.  
  1642. typedef tagWINDOWPOS  TWindowPos;
  1643.  
  1644. typedef tagNCCALCSIZE_PARAMS *PNCCalcSizeParams;
  1645.  
  1646. #pragma pack(push, 1)
  1647. #pragma pack(pop)
  1648.  
  1649. typedef tagNCCALCSIZE_PARAMS  TNCCalcSizeParams;
  1650.  
  1651. #pragma pack(push, 1)
  1652. #pragma pack(pop)
  1653.  
  1654. typedef tagACCEL *PAccel;
  1655.  
  1656. typedef tagACCEL  TAccel;
  1657.  
  1658. typedef tagPAINTSTRUCT *PPaintStruct;
  1659.  
  1660. #pragma pack(push, 1)
  1661. #pragma pack(pop)
  1662.  
  1663. typedef tagPAINTSTRUCT  TPaintStruct;
  1664.  
  1665. #pragma pack(push, 1)
  1666. #pragma pack(pop)
  1667.  
  1668. typedef tagWINDOWPLACEMENT *PWindowPlacement;
  1669.  
  1670. typedef tagWINDOWPLACEMENT  TWindowPlacement;
  1671.  
  1672. #pragma pack(push, 1)
  1673. #pragma pack(pop)
  1674.  
  1675. typedef tagNMHDR *PNMHdr;
  1676.  
  1677. typedef tagNMHDR  TNMHdr;
  1678.  
  1679. #pragma pack(push, 1)
  1680. #pragma pack(pop)
  1681.  
  1682. typedef tagSTYLESTRUCT *PStyleStruct;
  1683.  
  1684. typedef tagSTYLESTRUCT  TStyleStruct;
  1685.  
  1686. #pragma pack(push, 1)
  1687. #pragma pack(pop)
  1688.  
  1689. typedef tagMEASUREITEMSTRUCT *PMeasureItemStruct;
  1690.  
  1691. typedef tagMEASUREITEMSTRUCT  TMeasureItemStruct;
  1692.  
  1693. #pragma pack(push, 1)
  1694. #pragma pack(pop)
  1695.  
  1696. typedef tagDRAWITEMSTRUCT *PDrawItemStruct;
  1697.  
  1698. typedef tagDRAWITEMSTRUCT  TDrawItemStruct;
  1699.  
  1700. #pragma pack(push, 1)
  1701. #pragma pack(pop)
  1702.  
  1703. typedef tagDELETEITEMSTRUCT *PDeleteItemStruct;
  1704.  
  1705. typedef tagDELETEITEMSTRUCT  TDeleteItemStruct;
  1706.  
  1707. #pragma pack(push, 1)
  1708. #pragma pack(pop)
  1709.  
  1710. typedef tagCOMPAREITEMSTRUCT *PCompareItemStruct;
  1711.  
  1712. typedef tagCOMPAREITEMSTRUCT  TCompareItemStruct;
  1713.  
  1714. #pragma pack(push, 1)
  1715. #pragma pack(pop)
  1716.  
  1717. typedef tagBROADCASTSYSMSG *PBroadcastSysMsg;
  1718.  
  1719. typedef tagBROADCASTSYSMSG  TBroadcastSysMsg;
  1720.  
  1721. #pragma pack(push, 1)
  1722. #pragma pack(pop)
  1723.  
  1724. typedef DLGTEMPLATE *PDlgTemplate;
  1725.  
  1726. typedef DLGTEMPLATE  TDlgTemplate;
  1727.  
  1728. #pragma pack(push, 1)
  1729. #pragma pack(pop)
  1730.  
  1731. typedef DLGITEMTEMPLATE *PDlgItemTemplate;
  1732.  
  1733. typedef DLGITEMTEMPLATE  TDlgItemTemplate;
  1734.  
  1735. typedef Byte TKeyboardState[256];
  1736.  
  1737. typedef TKeyboardState *PKeyboardState;
  1738.  
  1739. #pragma pack(push, 1)
  1740. #pragma pack(pop)
  1741.  
  1742. typedef tagTPMPARAMS *PTPMParams;
  1743.  
  1744. typedef tagTPMPARAMS  TTPMParams;
  1745.  
  1746. #pragma pack(push, 1)
  1747. #pragma pack(pop)
  1748.  
  1749. typedef tagMENUITEMINFOA *PMenuItemInfoA;
  1750.  
  1751. #pragma pack(push, 1)
  1752. #pragma pack(pop)
  1753.  
  1754. typedef tagMENUITEMINFOW *PMenuItemInfoW;
  1755.  
  1756. typedef tagMENUITEMINFOA *PMenuItemInfo;
  1757.  
  1758. typedef tagMENUITEMINFOA  TMenuItemInfoA;
  1759.  
  1760. typedef tagMENUITEMINFOW  TMenuItemInfoW;
  1761.  
  1762. typedef tagMENUITEMINFOA  TMenuItemInfo;
  1763.  
  1764. #pragma pack(push, 1)
  1765. #pragma pack(pop)
  1766.  
  1767. typedef tagDROPSTRUCT *PDropStruct;
  1768.  
  1769. typedef tagDROPSTRUCT  TDropStruct;
  1770.  
  1771. #pragma pack(push, 1)
  1772. #pragma pack(pop)
  1773.  
  1774. typedef tagDRAWTEXTPARAMS *PDrawTextParams;
  1775.  
  1776. typedef tagDRAWTEXTPARAMS  TDrawTextParams;
  1777.  
  1778. #pragma pack(push, 1)
  1779. #pragma pack(pop)
  1780.  
  1781. typedef tagHELPINFO *PHelpInfo;
  1782.  
  1783. typedef tagHELPINFO  THelpInfo;
  1784.  
  1785. typedef void __fastcall (*TPRMsgBoxCallback)(tagHELPINFO &lpHelpInfo);
  1786.  
  1787. #pragma pack(push, 1)
  1788. #pragma pack(pop)
  1789.  
  1790. typedef tagMSGBOXPARAMSA *PMsgBoxParamsA;
  1791.  
  1792. #pragma pack(push, 1)
  1793. #pragma pack(pop)
  1794.  
  1795. typedef tagMSGBOXPARAMSW *PMsgBoxParamsW;
  1796.  
  1797. typedef tagMSGBOXPARAMSA *PMsgBoxParams;
  1798.  
  1799. typedef tagMSGBOXPARAMSA  TMsgBoxParamsA;
  1800.  
  1801. typedef tagMSGBOXPARAMSW  TMsgBoxParamsW;
  1802.  
  1803. typedef tagMSGBOXPARAMSA  TMsgBoxParams;
  1804.  
  1805. #pragma pack(push, 1)
  1806. #pragma pack(pop)
  1807.  
  1808. typedef MENUITEMTEMPLATEHEADER *PMenuItemTemplateHeader;
  1809.  
  1810. typedef MENUITEMTEMPLATEHEADER  TMenuItemTemplateHeader;
  1811.  
  1812. typedef MENUITEMTEMPLATE *PMenuItemTemplate;
  1813.  
  1814. #pragma pack(push, 1)
  1815. #pragma pack(pop)
  1816.  
  1817. typedef MENUITEMTEMPLATE  TMenuItemTemplate;
  1818.  
  1819. #pragma pack(push, 1)
  1820. #pragma pack(pop)
  1821.  
  1822. typedef _ICONINFO *PIconInfo;
  1823.  
  1824. typedef _ICONINFO  TIconInfo;
  1825.  
  1826. typedef tagCURSORSHAPE *PCursorShape;
  1827.  
  1828. typedef tagCURSORSHAPE  TCursorShape;
  1829.  
  1830. #pragma pack(push, 1)
  1831. #pragma pack(pop)
  1832.  
  1833. typedef tagSCROLLINFO  TScrollInfo;
  1834.  
  1835. #pragma pack(push, 1)
  1836. #pragma pack(pop)
  1837.  
  1838. typedef tagMDICREATESTRUCTA *PMDICreateStructA;
  1839.  
  1840. #pragma pack(push, 1)
  1841. #pragma pack(pop)
  1842.  
  1843. typedef tagMDICREATESTRUCTW *PMDICreateStructW;
  1844.  
  1845. typedef tagMDICREATESTRUCTA *PMDICreateStruct;
  1846.  
  1847. typedef tagMDICREATESTRUCTA  TMDICreateStructA;
  1848.  
  1849. typedef tagMDICREATESTRUCTW  TMDICreateStructW;
  1850.  
  1851. typedef tagMDICREATESTRUCTA  TMDICreateStruct;
  1852.  
  1853. #pragma pack(push, 1)
  1854. #pragma pack(pop)
  1855.  
  1856. typedef tagCLIENTCREATESTRUCT *PClientCreateStruct;
  1857.  
  1858. typedef tagCLIENTCREATESTRUCT  TClientCreateStruct;
  1859.  
  1860. typedef tagMULTIKEYHELPA *PMultiKeyHelpA;
  1861.  
  1862. typedef tagMULTIKEYHELPW *PMultiKeyHelpW;
  1863.  
  1864. typedef tagMULTIKEYHELPA *PMultiKeyHelp;
  1865.  
  1866. typedef tagMULTIKEYHELPA  TMultiKeyHelpA;
  1867.  
  1868. typedef tagMULTIKEYHELPW  TMultiKeyHelpW;
  1869.  
  1870. typedef tagMULTIKEYHELPA  TMultiKeyHelp;
  1871.  
  1872. typedef tagHELPWININFOA *PHelpWinInfoA;
  1873.  
  1874. typedef tagHELPWININFOW *PHelpWinInfoW;
  1875.  
  1876. typedef tagHELPWININFOA *PHelpWinInfo;
  1877.  
  1878. typedef tagHELPWININFOA  THelpWinInfoA;
  1879.  
  1880. typedef tagHELPWININFOW  THelpWinInfoW;
  1881.  
  1882. typedef tagHELPWININFOA  THelpWinInfo;
  1883.  
  1884. #pragma pack(push, 1)
  1885. #pragma pack(pop)
  1886.  
  1887. typedef tagNONCLIENTMETRICSA *PNonClientMetrics;
  1888.  
  1889. typedef tagNONCLIENTMETRICSA  TNonClientMetrics;
  1890.  
  1891. #pragma pack(push, 1)
  1892. #pragma pack(pop)
  1893.  
  1894. typedef tagMINIMIZEDMETRICS *PMinimizedMetrics;
  1895.  
  1896. typedef tagMINIMIZEDMETRICS  TMinimizedMetrics;
  1897.  
  1898. #pragma pack(push, 1)
  1899. #pragma pack(pop)
  1900.  
  1901. typedef tagICONMETRICSA *PIconMetrics;
  1902.  
  1903. typedef tagICONMETRICSA  TIconMetrics;
  1904.  
  1905. #pragma pack(push, 1)
  1906. #pragma pack(pop)
  1907.  
  1908. typedef tagANIMATIONINFO *PAnimationInfo;
  1909.  
  1910. typedef tagANIMATIONINFO  TAnimationInfo;
  1911.  
  1912. #pragma pack(push, 1)
  1913. #pragma pack(pop)
  1914.  
  1915. typedef tagSERIALKEYSA *PSerialKeysA;
  1916.  
  1917. #pragma pack(push, 1)
  1918. #pragma pack(pop)
  1919.  
  1920. typedef tagSERIALKEYSW *PSerialKeysW;
  1921.  
  1922. typedef tagSERIALKEYSA *PSerialKeys;
  1923.  
  1924. typedef tagSERIALKEYSA  TSerialKeysA;
  1925.  
  1926. typedef tagSERIALKEYSW  TSerialKeysW;
  1927.  
  1928. typedef tagSERIALKEYSA  TSerialKeys;
  1929.  
  1930. #pragma pack(push, 1)
  1931. #pragma pack(pop)
  1932.  
  1933. typedef tagHIGHCONTRASTA *PHighContrastA;
  1934.  
  1935. #pragma pack(push, 1)
  1936. #pragma pack(pop)
  1937.  
  1938. typedef tagHIGHCONTRASTW *PHighContrastW;
  1939.  
  1940. typedef tagHIGHCONTRASTA *PHighContrast;
  1941.  
  1942. typedef tagHIGHCONTRASTA  THighContrastA;
  1943.  
  1944. typedef tagHIGHCONTRASTW  THighContrastW;
  1945.  
  1946. typedef tagHIGHCONTRASTA  THighContrast;
  1947.  
  1948. #pragma pack(push, 1)
  1949. #pragma pack(pop)
  1950.  
  1951. typedef tagFILTERKEYS *PFilterKeys;
  1952.  
  1953. typedef tagFILTERKEYS  TFilterKeys;
  1954.  
  1955. #pragma pack(push, 1)
  1956. #pragma pack(pop)
  1957.  
  1958. typedef tagSTICKYKEYS *PStickyKeys;
  1959.  
  1960. typedef tagSTICKYKEYS  TStickyKeys;
  1961.  
  1962. #pragma pack(push, 1)
  1963. #pragma pack(pop)
  1964.  
  1965. typedef tagMOUSEKEYS *PMouseKeys;
  1966.  
  1967. typedef tagMOUSEKEYS  TMouseKeys;
  1968.  
  1969. #pragma pack(push, 1)
  1970. #pragma pack(pop)
  1971.  
  1972. typedef tagACCESSTIMEOUT *PAccessTimeout;
  1973.  
  1974. typedef tagACCESSTIMEOUT  TAccessTimeout;
  1975.  
  1976. #pragma pack(push, 1)
  1977. #pragma pack(pop)
  1978.  
  1979. typedef tagSOUNDSENTRYA *PSoundsEntryA;
  1980.  
  1981. #pragma pack(push, 1)
  1982. #pragma pack(pop)
  1983.  
  1984. typedef tagSOUNDSENTRYW *PSoundsEntryW;
  1985.  
  1986. typedef tagSOUNDSENTRYA *PSoundsEntry;
  1987.  
  1988. typedef tagSOUNDSENTRYA  TSoundsEntryA;
  1989.  
  1990. typedef tagSOUNDSENTRYW  TSoundsEntryW;
  1991.  
  1992. typedef tagSOUNDSENTRYA  TSoundsEntry;
  1993.  
  1994. #pragma pack(push, 1)
  1995. #pragma pack(pop)
  1996.  
  1997. typedef tagTOGGLEKEYS *PToggleKeys;
  1998.  
  1999. typedef tagTOGGLEKEYS  TToggleKeys;
  2000.  
  2001. typedef _cpinfo *PCPInfo;
  2002.  
  2003. typedef _cpinfo  TCPInfo;
  2004.  
  2005. #pragma pack(push, 1)
  2006. #pragma pack(pop)
  2007.  
  2008. typedef _numberfmtA *PNumberFmtA;
  2009.  
  2010. #pragma pack(push, 1)
  2011. #pragma pack(pop)
  2012.  
  2013. typedef _numberfmtW *PNumberFmtW;
  2014.  
  2015. typedef _numberfmtA *PNumberFmt;
  2016.  
  2017. typedef _numberfmtA  TNumberFmtA;
  2018.  
  2019. typedef _numberfmtW  TNumberFmtW;
  2020.  
  2021. typedef _numberfmtA  TNumberFmt;
  2022.  
  2023. #pragma pack(push, 1)
  2024. #pragma pack(pop)
  2025.  
  2026. typedef _currencyfmtA *PCurrencyFmtA;
  2027.  
  2028. #pragma pack(push, 1)
  2029. #pragma pack(pop)
  2030.  
  2031. typedef _currencyfmtW *PCurrencyFmtW;
  2032.  
  2033. typedef _currencyfmtA *PCurrencyFmt;
  2034.  
  2035. typedef _currencyfmtA  TCurrencyFmtA;
  2036.  
  2037. typedef _currencyfmtW  TCurrencyFmtW;
  2038.  
  2039. typedef _currencyfmtA  TCurrencyFmt;
  2040.  
  2041. typedef void *TFNLocaleEnumProc;
  2042.  
  2043. typedef void *TFNCodepageEnumProc;
  2044.  
  2045. typedef void *TFNDateFmtEnumProc;
  2046.  
  2047. typedef void *TFNTimeFmtEnumProc;
  2048.  
  2049. typedef void *TFNCalInfoEnumProc;
  2050.  
  2051. #pragma pack(push, 1)
  2052. #pragma pack(pop)
  2053.  
  2054. typedef _COORD *PCoord;
  2055.  
  2056. typedef _COORD  TCoord;
  2057.  
  2058. #pragma pack(push, 1)
  2059. #pragma pack(pop)
  2060.  
  2061. typedef _SMALL_RECT *PSmallRect;
  2062.  
  2063. typedef _SMALL_RECT  TSmallRect;
  2064.  
  2065. typedef _KEY_EVENT_RECORD *PKeyEventRecord;
  2066.  
  2067. #pragma pack(push, 1)
  2068. #pragma pack(pop)
  2069.  
  2070. typedef _KEY_EVENT_RECORD  TKeyEventRecord;
  2071.  
  2072. #pragma pack(push, 1)
  2073. #pragma pack(pop)
  2074.  
  2075. typedef _MOUSE_EVENT_RECORD *PMouseEventRecord;
  2076.  
  2077. typedef _MOUSE_EVENT_RECORD  TMouseEventRecord;
  2078.  
  2079. #pragma pack(push, 1)
  2080. #pragma pack(pop)
  2081.  
  2082. typedef _WINDOW_BUFFER_SIZE_RECORD *PWindowBufferSizeRecord;
  2083.  
  2084. typedef _WINDOW_BUFFER_SIZE_RECORD  TWindowBufferSizeRecord;
  2085.  
  2086. #pragma pack(push, 1)
  2087. #pragma pack(pop)
  2088.  
  2089. typedef _MENU_EVENT_RECORD *PMenuEventRecord;
  2090.  
  2091. typedef _MENU_EVENT_RECORD  TMenuEventRecord;
  2092.  
  2093. #pragma pack(push, 1)
  2094. #pragma pack(pop)
  2095.  
  2096. typedef _FOCUS_EVENT_RECORD *PFocusEventRecord;
  2097.  
  2098. typedef _FOCUS_EVENT_RECORD  TFocusEventRecord;
  2099.  
  2100. typedef _INPUT_RECORD *PInputRecord;
  2101.  
  2102. typedef _INPUT_RECORD  TInputRecord;
  2103.  
  2104. typedef _CHAR_INFO *PCharInfo;
  2105.  
  2106. typedef _CHAR_INFO  TCharInfo;
  2107.  
  2108. #pragma pack(push, 1)
  2109. #pragma pack(pop)
  2110.  
  2111. typedef _CONSOLE_SCREEN_BUFFER_INFO *PConsoleScreenBufferInfo;
  2112.  
  2113. typedef _CONSOLE_SCREEN_BUFFER_INFO  TConsoleScreenBufferInfo;
  2114.  
  2115. #pragma pack(push, 1)
  2116. #pragma pack(pop)
  2117.  
  2118. typedef _CONSOLE_CURSOR_INFO *PConsoleCursorInfo;
  2119.  
  2120. typedef _CONSOLE_CURSOR_INFO  TConsoleCursorInfo;
  2121.  
  2122. typedef void *TFNHandlerRoutine;
  2123.  
  2124. #pragma pack(push, 1)
  2125. #pragma pack(pop)
  2126.  
  2127. typedef tagVS_FIXEDFILEINFO *PVSFixedFileInfo;
  2128.  
  2129. typedef tagVS_FIXEDFILEINFO  TVSFixedFileInfo;
  2130.  
  2131. #pragma pack(push, 1)
  2132. struct TValContext
  2133. {
  2134.     int valuelen;
  2135.     void *value_context;
  2136.     void *val_buff_ptr;
  2137. } ;
  2138. #pragma pack(pop)
  2139.  
  2140. typedef TValContext *PValContext;
  2141.  
  2142. #pragma pack(push, 1)
  2143. #pragma pack(pop)
  2144.  
  2145. typedef pvalueA *PPValueA;
  2146.  
  2147. #pragma pack(push, 1)
  2148. #pragma pack(pop)
  2149.  
  2150. typedef pvalueW *PPValueW;
  2151.  
  2152. typedef pvalueA *PPValue;
  2153.  
  2154. typedef pvalueA  TPValueA;
  2155.  
  2156. typedef pvalueW  TPValueW;
  2157.  
  2158. typedef pvalueA  TPValue;
  2159.  
  2160. typedef void *TFNQueryHandler;
  2161.  
  2162. typedef void * *PFNQueryHandler;
  2163.  
  2164. #pragma pack(push, 1)
  2165. #pragma pack(pop)
  2166.  
  2167. typedef provider_info *PProviderInfo;
  2168.  
  2169. typedef provider_info  TProviderInfo;
  2170.  
  2171. typedef provider_info  TRegProvider;
  2172.  
  2173. typedef provider_info *PProvider;
  2174.  
  2175. #pragma pack(push, 1)
  2176. struct TValueEntA
  2177. {
  2178.     char *ve_valuename;
  2179.     int ve_valuelen;
  2180.     int ve_valueptr;
  2181.     int ve_type;
  2182. } ;
  2183. #pragma pack(pop)
  2184.  
  2185. typedef TValueEntA *PValueEntA;
  2186.  
  2187. #pragma pack(push, 1)
  2188. struct TValueEntW
  2189. {
  2190.     wchar_t *ve_valuename;
  2191.     int ve_valuelen;
  2192.     int ve_valueptr;
  2193.     int ve_type;
  2194. } ;
  2195. #pragma pack(pop)
  2196.  
  2197. typedef TValueEntW *PValueEntW;
  2198.  
  2199. typedef TValueEntA *PValueEnt;
  2200.  
  2201. typedef TValueEntA  TValueEnt;
  2202.  
  2203. typedef TValueEntA  TValEnt;
  2204.  
  2205. typedef TValueEntA *PValEnt;
  2206.  
  2207. #pragma pack(push, 1)
  2208. #pragma pack(pop)
  2209.  
  2210. typedef _NETRESOURCEA *PNetResourceA;
  2211.  
  2212. #pragma pack(push, 1)
  2213. #pragma pack(pop)
  2214.  
  2215. typedef _NETRESOURCEW *PNetResourceW;
  2216.  
  2217. typedef _NETRESOURCEA *PNetResource;
  2218.  
  2219. typedef _NETRESOURCEA  TNetResourceA;
  2220.  
  2221. typedef _NETRESOURCEW  TNetResourceW;
  2222.  
  2223. typedef _NETRESOURCEA  TNetResource;
  2224.  
  2225. #pragma pack(push, 1)
  2226. #pragma pack(pop)
  2227.  
  2228. typedef _CONNECTDLGSTRUCTA *PConnectDlgStruct;
  2229.  
  2230. typedef _CONNECTDLGSTRUCTA  TConnectDlgStruct;
  2231.  
  2232. #pragma pack(push, 1)
  2233. #pragma pack(pop)
  2234.  
  2235. typedef _DISCDLGSTRUCTA *PDiscDlgStructA;
  2236.  
  2237. #pragma pack(push, 1)
  2238. #pragma pack(pop)
  2239.  
  2240. typedef _DISCDLGSTRUCTW *PDiscDlgStructW;
  2241.  
  2242. typedef _DISCDLGSTRUCTA *PDiscDlgStruct;
  2243.  
  2244. typedef _DISCDLGSTRUCTA  TDiscDlgStructA;
  2245.  
  2246. typedef _DISCDLGSTRUCTW  TDiscDlgStructW;
  2247.  
  2248. typedef _DISCDLGSTRUCTA  TDiscDlgStruct;
  2249.  
  2250. #pragma pack(push, 1)
  2251. #pragma pack(pop)
  2252.  
  2253. typedef _UNIVERSAL_NAME_INFOA *PUniversalNameInfoA;
  2254.  
  2255. #pragma pack(push, 1)
  2256. #pragma pack(pop)
  2257.  
  2258. typedef _UNIVERSAL_NAME_INFOW *PUniversalNameInfoW;
  2259.  
  2260. typedef _UNIVERSAL_NAME_INFOA *PUniversalNameInfo;
  2261.  
  2262. typedef _UNIVERSAL_NAME_INFOA  TUniversalNameInfoA;
  2263.  
  2264. typedef _UNIVERSAL_NAME_INFOW  TUniversalNameInfoW;
  2265.  
  2266. typedef _UNIVERSAL_NAME_INFOA  TUniversalNameInfo;
  2267.  
  2268. #pragma pack(push, 1)
  2269. #pragma pack(pop)
  2270.  
  2271. typedef _REMOTE_NAME_INFOA *PRemoteNameInfoA;
  2272.  
  2273. #pragma pack(push, 1)
  2274. #pragma pack(pop)
  2275.  
  2276. typedef _REMOTE_NAME_INFOW *PRemoteNameInfoW;
  2277.  
  2278. typedef _REMOTE_NAME_INFOA *PRemoteNameInfo;
  2279.  
  2280. typedef _REMOTE_NAME_INFOA  TRemoteNameInfoA;
  2281.  
  2282. typedef _REMOTE_NAME_INFOW  TRemoteNameInfoW;
  2283.  
  2284. typedef _REMOTE_NAME_INFOA  TRemoteNameInfo;
  2285.  
  2286. typedef _NETINFOSTRUCT *PNetInfoStruct;
  2287.  
  2288. typedef _NETINFOSTRUCT  TNetInfoStruct;
  2289.  
  2290. typedef void *TFNGetProfilePath;
  2291.  
  2292. typedef void *TFNReconcileProfile;
  2293.  
  2294. typedef void *TFNProcessPolicies;
  2295.  
  2296. #pragma pack(push, 1)
  2297. #pragma pack(pop)
  2298.  
  2299. typedef _NETCONNECTINFOSTRUCT *PNetConnectInfoStruct;
  2300.  
  2301. typedef _NETCONNECTINFOSTRUCT  TNetConnectInfoStruct;
  2302.  
  2303. #pragma pack(push, 1)
  2304. #pragma pack(pop)
  2305.  
  2306. #ifndef _VCL_LEAN_AND_MEAN
  2307. typedef DDEACK *PDDEAck;
  2308.  
  2309. typedef DDEACK  TDDEAck;
  2310.  
  2311. #pragma pack(push, 1)
  2312. #pragma pack(pop)
  2313.  
  2314. typedef DDEADVISE *PDDEAdvise;
  2315.  
  2316. typedef DDEADVISE  TDDEAdvise;
  2317.  
  2318. typedef DDEDATA *PDDEData;
  2319.  
  2320. #pragma pack(push, 1)
  2321. #pragma pack(pop)
  2322.  
  2323. typedef DDEDATA  TDDEData;
  2324.  
  2325. typedef DDEPOKE *PDDEPoke;
  2326.  
  2327. #pragma pack(push, 1)
  2328. #pragma pack(pop)
  2329.  
  2330. typedef DDEPOKE  TDDEPoke;
  2331. #endif
  2332.  
  2333. //-- var, const, procedure ---------------------------------------------------
  2334. #define LDTF_BASEMID (int)(-16777216)
  2335. #define LDTF_TYPE_8 (int)(16252928)
  2336. #define LDTF_DPL (int)(393216)
  2337. #define LDTF_PRES (int)(65536)
  2338. #define LDTF_LIMITHI (int)(61440)
  2339. #define LDTF_SYS (Word)(2048)
  2340. #define LDTF_RESERVED_0 (Word)(1024)
  2341. #define LDTF_DEFAULT_BIG (Word)(512)
  2342. #define LDTF_GRANULARITY (Word)(256)
  2343. #define LDTF_BASEHI (Byte)(255)
  2344. #define FILE_ATTRIBUTE_ATOMICWRITE (Word)(512)
  2345. #define FILE_ATTRIBUTE_XACTIONWRITE (Word)(1024)
  2346. #define _DELETE (int)(65536)
  2347. #define ERROR_FAILED_SERVICE_CONTROLLER_ (Word)(1063)
  2348. #define ERROR_SESSION_CREDENTIAL_CONFLIC (Word)(1219)
  2349. #define ERROR_REMOTE_SESSION_LIMIT_EXCEE (Word)(1220)
  2350. #define ERROR_NT_CROSS_ENCRYPTION_REQUIR (Word)(1386)
  2351. #define ERROR_LM_CROSS_ENCRYPTION_REQUIR (Word)(1390)
  2352. #define ERROR_DESTROY_OBJECT_OF_OTHER_TH (Word)(1435)
  2353. #define ERROR_TRUSTED_RELATIONSHIP_FAILU (Word)(1789)
  2354. #define ERROR_REDIRECTOR_HAS_OPEN_HANDLE (Word)(1794)
  2355. #define ERROR_PRINTER_DRIVER_ALREADY_INS (Word)(1795)
  2356. #define ERROR_NOLOGON_INTERDOMAIN_TRUST_ (Word)(1807)
  2357. #define ERROR_NOLOGON_WORKSTATION_TRUST_ (Word)(1808)
  2358. #define ERROR_NOLOGON_SERVER_TRUST_ACCOU (Word)(1809)
  2359. #define ERROR_DOMAIN_CONTROLLER_NOT_FOUN (Word)(1908)
  2360. #define ERROR_PRINT_PROCESSOR_ALREADY_IN (Word)(3005)
  2361. #define ERROR_PRINT_MONITOR_ALREADY_INST (Word)(3006)
  2362. #define CO_E_INIT_TLS_SET_CHANNEL_CONTRO (int)(-2147467253)
  2363. #define CO_E_INIT_UNACCEPTED_USER_ALLOCA (int)(-2147467251)
  2364. #define CO_E_INIT_SCM_FILE_MAPPING_EXIST (int)(-2147467249)
  2365. #define CONVERT10_E_OLESTREAM_BITMAP_TO_ (int)(-2147221053)
  2366. #define MK_E_INTERMEDIATEINTERFACENOTSUP (int)(-2147221017)
  2367. #define RPC_E_CANTCALLOUT_ININPUTSYNCCAL (int)(-2147417843)
  2368. #define _ABORTDOC (Byte)(2)
  2369. #define _SETABORTPROC (Byte)(9)
  2370. #define _STARTDOC (Byte)(10)
  2371. #define _ENDDOC (Byte)(11)
  2372. #define _SETMITERLIMIT (Byte)(23)
  2373. #define _EXTTEXTOUT (Word)(512)
  2374. #define _STRETCHBLT (Word)(2048)
  2375. #define DM_RESERVED1 (int)(8388608)
  2376. #define DM_RESERVED2 (int)(16777216)
  2377. #define GCP_GLYPHINDEXING (Byte)(128)
  2378. #define GCP_NODIACRITICS (int)(131072)
  2379. #define wnd_Broadcast (int)(65535)
  2380. #define COLOR_ENDCOLORS (Byte)(24)
  2381. #define LR_LOADREALSIZE (Byte)(128)
  2382. #define ID_OK (Byte)(1)
  2383. #define ID_CANCEL (Byte)(2)
  2384. #define ID_ABORT (Byte)(3)
  2385. #define ID_RETRY (Byte)(4)
  2386. #define ID_IGNORE (Byte)(5)
  2387. #define ID_YES (Byte)(6)
  2388. #define ID_NO (Byte)(7)
  2389. #define ID_CLOSE (Byte)(8)
  2390. #define ID_HELP (Byte)(9)
  2391. #define _MOUSE_EVENT (Byte)(2)
  2392. #define dde_AppReturnCode (Byte)(255)
  2393. #define dde_Busy (Word)(16384)
  2394. #define dde_Ack (int)(32768)
  2395. #define dde_DeferUpd (Word)(16384)
  2396. #define dde_AckReq (int)(32768)
  2397. #define dde_Response (Word)(4096)
  2398. #define dde_Release (Word)(8192)
  2399. #define advapi32 "advapi32.dll"
  2400. #define kernel32 "kernel32.dll"
  2401. #define mpr "mpr.dll"
  2402. #define comctl32 "comctl32.dll"
  2403. #define gdi32 "gdi32.dll"
  2404. #define opengl32 "opengl32.dll"
  2405. #define user32 "user32.dll"
  2406. extern "C" DWord __stdcall FindClose(int hFindFile);
  2407.     
  2408. extern Word __fastcall MakeWord(Byte a, Byte b);
  2409. extern long __fastcall MakeLong(Word a, Word b);
  2410. extern Word __fastcall HiWord(int l);
  2411. extern Byte __fastcall HiByte(Word W);
  2412. extern DWord __fastcall Succeeded(long Status);
  2413. extern DWord __fastcall Failed(long Status);
  2414. extern DWord __fastcall IsError(long Status);
  2415. extern int __fastcall HResultCode(long hr);
  2416. extern int __fastcall HResultFacility(long hr);
  2417. extern int __fastcall HResultSeverity(long hr);
  2418. extern long __fastcall HResultFromWin32(int x);
  2419. extern long __fastcall HResultFromNT(int x);
  2420. extern int __fastcall MakeROP4(int fore, int back);
  2421. extern int __fastcall PaletteRGB(Byte r, Byte g, Byte b);
  2422. extern int __fastcall PaletteIndex(Word i);
  2423. extern POINT __fastcall SmallPointToPoint(const TSmallPoint P);
  2424. extern TSmallPoint __fastcall PointToSmallPoint(const POINT &P);
  2425. extern long __fastcall MakeWParam(Word l, Word h);
  2426. extern long __fastcall MakeLParam(Word l, Word h);
  2427. extern long __fastcall MakeLResult(Word l, Word h);
  2428.  
  2429. //-- template instantiations -------------------------------------------------
  2430. template class TComStateFlags ;
  2431.  
  2432. }    /* namespace Windows */
  2433.  
  2434. #pragma warn .par
  2435. #pragma warn .hid 
  2436. #pragma warn .inl
  2437.  
  2438. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  2439. using namespace Windows;
  2440. #endif
  2441. //-- end unit ----------------------------------------------------------------
  2442. #endif    // Windows
  2443.