home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 9 / CDACTUAL9.iso / progs / CB / DATA.Z / MMSYSTEM.HPP < prev    next >
Encoding:
C/C++ Source or Header  |  1996-11-06  |  104.1 KB  |  2,988 lines

  1. //----------------------------------------------------------------------------
  2. // MMSystem.hpp - dcc32 generated hdr (DO NOT EDIT) rev: -2
  3. // From: MMSystem.pas
  4. //----------------------------------------------------------------------------
  5. #ifndef MMSystemHPP
  6. #define MMSystemHPP
  7. //----------------------------------------------------------------------------
  8. #ifndef WindowsHPP
  9. #include <Windows.hpp>
  10. #endif
  11.  
  12. #ifndef SystemHPP
  13. #include <System.hpp>
  14. #endif
  15.  
  16. namespace Mmsystem
  17. {
  18. //-- type declarations -------------------------------------------------------
  19. typedef System::Integer VERSION;
  20.  
  21. typedef System::Integer MMVERSION;
  22.  
  23. typedef System::Integer MMRESULT;
  24.  
  25. struct TMMTime;
  26. typedef TMMTime *PMMTime;
  27.  
  28. struct TMMTime
  29. {
  30.     
  31.     System::Integer wType;
  32.     union
  33.     {
  34.         System::Integer songptrpos;
  35.         struct 
  36.         {
  37.             System::Byte hour;
  38.             System::Byte min;
  39.             System::Byte sec;
  40.             System::Byte frame;
  41.             System::Byte fps;
  42.             System::Byte dummy;
  43.             System::Byte pad[2];
  44.             
  45.         };
  46.         System::Integer ticks;
  47.         System::Integer cb;
  48.         System::Integer sample;
  49.         System::Integer ms;
  50.         
  51.     };
  52. } ;
  53.  
  54. typedef System::Integer HDRVR;
  55.  
  56. struct TDrvConfigInfoEx;
  57. typedef TDrvConfigInfoEx *PDrvConfigInfoEx;
  58.  
  59. struct TDrvConfigInfoEx
  60. {
  61.     System::Integer dwDCISize;
  62.     System::WideChar *lpszDCISectionName;
  63.     System::WideChar *lpszDCIAliasName;
  64.     System::Integer dnDevNode;
  65. } ;
  66.  
  67. struct TDrvConfigInfo;
  68. typedef TDrvConfigInfo *PDrvConfigInfo;
  69.  
  70. struct TDrvConfigInfo
  71. {
  72.     System::Integer dwDCISize;
  73.     System::WideChar *lpszDCISectionName;
  74.     System::WideChar *lpszDCIAliasName;
  75. } ;
  76.  
  77. typedef System::Longint __stdcall (*TFNDriverProc)(System::Integer dwDriverId, System::Integer hdrvr
  78.     , System::Integer msg, System::Longint lparam1, System::Longint lparam2);
  79.  
  80. typedef void __stdcall (*TFNDrvCallBack)(System::Integer hdrvr, System::Integer uMsg, System::Integer 
  81.     dwUser, System::Integer dw1, System::Integer dw2);
  82.  
  83. typedef System::Integer *PHWAVE;
  84.  
  85. typedef System::Integer HWAVE;
  86.  
  87. typedef System::Integer *PHWAVEIN;
  88.  
  89. typedef System::Integer HWAVEIN;
  90.  
  91. typedef System::Integer *PHWAVEOUT;
  92.  
  93. typedef System::Integer HWAVEOUT;
  94.  
  95. typedef void __stdcall (*TFNWaveCallBack)(System::Integer hdrvr, System::Integer uMsg, System::Integer 
  96.     dwUser, System::Integer dw1, System::Integer dw2);
  97.  
  98. struct TWaveHdr;
  99. typedef TWaveHdr *PWaveHdr;
  100.  
  101. struct TWaveHdr
  102. {
  103.     System::Char *lpData;
  104.     System::Integer dwBufferLength;
  105.     System::Integer dwBytesRecorded;
  106.     System::Integer dwUser;
  107.     System::Integer dwFlags;
  108.     System::Integer dwLoops;
  109.     TWaveHdr *lpNext;
  110.     System::Integer reserved;
  111. } ;
  112.  
  113. struct TWaveOutCapsA;
  114. typedef TWaveOutCapsA *PWaveOutCapsA;
  115.  
  116. struct TWaveOutCapsW;
  117. typedef TWaveOutCapsW *PWaveOutCapsW;
  118.  
  119. typedef TWaveOutCapsA *PWaveOutCaps;
  120.  
  121. struct TWaveOutCapsA
  122. {
  123.     System::Word wMid;
  124.     System::Word wPid;
  125.     System::Integer vDriverVersion;
  126.     System::Char szPname[32];
  127.     System::Integer dwFormats;
  128.     System::Word wChannels;
  129.     System::Integer dwSupport;
  130. } ;
  131.  
  132. struct TWaveOutCapsW
  133. {
  134.     System::Word wMid;
  135.     System::Word wPid;
  136.     System::Integer vDriverVersion;
  137.     System::WideChar szPname[32];
  138.     System::Integer dwFormats;
  139.     System::Word wChannels;
  140.     System::Integer dwSupport;
  141. } ;
  142.  
  143. typedef TWaveOutCapsA  TWaveOutCaps;
  144.  
  145. struct TWaveInCapsA;
  146. typedef TWaveInCapsA *PWaveInCapsA;
  147.  
  148. struct TWaveInCapsW;
  149. typedef TWaveInCapsW *PWaveInCapsW;
  150.  
  151. typedef TWaveInCapsA *PWaveInCaps;
  152.  
  153. struct TWaveInCapsA
  154. {
  155.     System::Word wMid;
  156.     System::Word wPid;
  157.     System::Integer vDriverVersion;
  158.     System::Char szPname[32];
  159.     System::Integer dwFormats;
  160.     System::Word wChannels;
  161.     System::Word wReserved1;
  162. } ;
  163.  
  164. struct TWaveInCapsW
  165. {
  166.     System::Word wMid;
  167.     System::Word wPid;
  168.     System::Integer vDriverVersion;
  169.     System::WideChar szPname[32];
  170.     System::Integer dwFormats;
  171.     System::Word wChannels;
  172.     System::Word wReserved1;
  173. } ;
  174.  
  175. typedef TWaveInCapsA  TWaveInCaps;
  176.  
  177. struct TWaveFormat;
  178. typedef TWaveFormat *PWaveFormat;
  179.  
  180. struct TWaveFormat
  181. {
  182.     System::Word wFormatTag;
  183.     System::Word nChannels;
  184.     System::Integer nSamplesPerSec;
  185.     System::Integer nAvgBytesPerSec;
  186.     System::Word nBlockAlign;
  187. } ;
  188.  
  189. struct TPCMWaveFormat;
  190. typedef TPCMWaveFormat *PPCMWaveFormat;
  191.  
  192. struct TPCMWaveFormat
  193. {
  194.     TWaveFormat wf;
  195.     System::Word wBitsPerSample;
  196. } ;
  197.  
  198. struct TWaveFormatEx;
  199. typedef TWaveFormatEx *PWaveFormatEx;
  200.  
  201. struct TWaveFormatEx
  202. {
  203.     System::Word wFormatTag;
  204.     System::Word nChannels;
  205.     System::Integer nSamplesPerSec;
  206.     System::Integer nAvgBytesPerSec;
  207.     System::Word nBlockAlign;
  208.     System::Word wBitsPerSample;
  209.     System::Word cbSize;
  210. } ;
  211.  
  212. typedef System::Integer *PHMIDI;
  213.  
  214. typedef System::Integer HMIDI;
  215.  
  216. typedef System::Integer *PHMIDIIN;
  217.  
  218. typedef System::Integer HMIDIIN;
  219.  
  220. typedef System::Integer *PHMIDIOUT;
  221.  
  222. typedef System::Integer HMIDIOUT;
  223.  
  224. typedef System::Integer *PHMIDISTRM;
  225.  
  226. typedef System::Integer HMIDISTRM;
  227.  
  228. typedef void __stdcall (*TFNMidiCallBack)(System::Integer hdrvr, System::Integer uMsg, System::Integer 
  229.     dwUser, System::Integer dw1, System::Integer dw2);
  230.  
  231. typedef System::Word TPatchArray[128];
  232.  
  233. typedef TPatchArray *PPatchArray;
  234.  
  235. typedef System::Word TKeyArray[128];
  236.  
  237. typedef TKeyArray *PKeyArray;
  238.  
  239. struct TMidiOutCapsA;
  240. typedef TMidiOutCapsA *PMidiOutCapsA;
  241.  
  242. struct TMidiOutCapsW;
  243. typedef TMidiOutCapsW *PMidiOutCapsW;
  244.  
  245. typedef TMidiOutCapsA *PMidiOutCaps;
  246.  
  247. struct TMidiOutCapsA
  248. {
  249.     System::Word wMid;
  250.     System::Word wPid;
  251.     System::Integer vDriverVersion;
  252.     System::Char szPname[32];
  253.     System::Word wTechnology;
  254.     System::Word wVoices;
  255.     System::Word wNotes;
  256.     System::Word wChannelMask;
  257.     System::Integer dwSupport;
  258. } ;
  259.  
  260. struct TMidiOutCapsW
  261. {
  262.     System::Word wMid;
  263.     System::Word wPid;
  264.     System::Integer vDriverVersion;
  265.     System::WideChar szPname[32];
  266.     System::Word wTechnology;
  267.     System::Word wVoices;
  268.     System::Word wNotes;
  269.     System::Word wChannelMask;
  270.     System::Integer dwSupport;
  271. } ;
  272.  
  273. typedef TMidiOutCapsA  TMidiOutCaps;
  274.  
  275. struct TMidiInCapsA;
  276. typedef TMidiInCapsA *PMidiInCapsA;
  277.  
  278. struct TMidiInCapsW;
  279. typedef TMidiInCapsW *PMidiInCapsW;
  280.  
  281. typedef TMidiInCapsA *PMidiInCaps;
  282.  
  283. struct TMidiInCapsA
  284. {
  285.     System::Word wMid;
  286.     System::Word wPid;
  287.     System::Integer vDriverVersion;
  288.     System::Char szPname[32];
  289.     System::Integer dwSupport;
  290. } ;
  291.  
  292. struct TMidiInCapsW
  293. {
  294.     System::Word wMid;
  295.     System::Word wPid;
  296.     System::Integer vDriverVersion;
  297.     System::WideChar szPname[32];
  298.     System::Integer dwSupport;
  299. } ;
  300.  
  301. typedef TMidiInCapsA  TMidiInCaps;
  302.  
  303. struct TMidiHdr;
  304. typedef TMidiHdr *PMidiHdr;
  305.  
  306. struct TMidiHdr
  307. {
  308.     System::Char *lpData;
  309.     System::Integer dwBufferLength;
  310.     System::Integer dwBytesRecorded;
  311.     System::Integer dwUser;
  312.     System::Integer dwFlags;
  313.     TMidiHdr *lpNext;
  314.     System::Integer reserved;
  315.     System::Integer dwOffset;
  316.     System::Integer dwReserved[8];
  317. } ;
  318.  
  319. struct TMidiEvent;
  320. typedef TMidiEvent *PMidiEvent;
  321.  
  322. struct TMidiEvent
  323. {
  324.     System::Integer dwDeltaTime;
  325.     System::Integer dwStreamID;
  326.     System::Integer dwEvent;
  327.     System::Integer dwParms[1];
  328. } ;
  329.  
  330. struct TMidiStrmBuffVer;
  331. typedef TMidiStrmBuffVer *PMidiStrmBuffVer;
  332.  
  333. struct TMidiStrmBuffVer
  334. {
  335.     System::Integer dwVersion;
  336.     System::Integer dwMid;
  337.     System::Integer dwOEMVersion;
  338. } ;
  339.  
  340. struct TMidiPropTimeDiv;
  341. typedef TMidiPropTimeDiv *PMidiPropTimeDiv;
  342.  
  343. struct TMidiPropTimeDiv
  344. {
  345.     System::Integer cbStruct;
  346.     System::Integer dwTimeDiv;
  347. } ;
  348.  
  349. struct TMidiPropTempo;
  350. typedef TMidiPropTempo *PMidiPropTempo;
  351.  
  352. struct TMidiPropTempo
  353. {
  354.     System::Integer cbStruct;
  355.     System::Integer dwTempo;
  356. } ;
  357.  
  358. struct TAuxCapsA;
  359. typedef TAuxCapsA *PAuxCapsA;
  360.  
  361. struct TAuxCapsW;
  362. typedef TAuxCapsW *PAuxCapsW;
  363.  
  364. typedef TAuxCapsA *PAuxCaps;
  365.  
  366. struct TAuxCapsA
  367. {
  368.     System::Word wMid;
  369.     System::Word wPid;
  370.     System::Integer vDriverVersion;
  371.     System::Char szPname[32];
  372.     System::Word wTechnology;
  373.     System::Integer dwSupport;
  374. } ;
  375.  
  376. struct TAuxCapsW
  377. {
  378.     System::Word wMid;
  379.     System::Word wPid;
  380.     System::Integer vDriverVersion;
  381.     System::WideChar szPname[32];
  382.     System::Word wTechnology;
  383.     System::Integer dwSupport;
  384. } ;
  385.  
  386. typedef TAuxCapsA  TAuxCaps;
  387.  
  388. typedef System::Integer *PHMIXEROBJ;
  389.  
  390. typedef System::Integer HMIXEROBJ;
  391.  
  392. typedef System::Integer *PHMIXER;
  393.  
  394. typedef System::Integer HMIXER;
  395.  
  396. struct TMixerCapsA;
  397. typedef TMixerCapsA *PMixerCapsA;
  398.  
  399. struct TMixerCapsW;
  400. typedef TMixerCapsW *PMixerCapsW;
  401.  
  402. typedef TMixerCapsA *PMixerCaps;
  403.  
  404. struct TMixerCapsA
  405. {
  406.     System::Word wMid;
  407.     System::Word wPid;
  408.     System::Integer vDriverVersion;
  409.     System::Char szPname[32];
  410.     System::Integer fdwSupport;
  411.     System::Integer cDestinations;
  412. } ;
  413.  
  414. struct TMixerCapsW
  415. {
  416.     System::Word wMid;
  417.     System::Word wPid;
  418.     System::Integer vDriverVersion;
  419.     System::WideChar szPname[32];
  420.     System::Integer fdwSupport;
  421.     System::Integer cDestinations;
  422. } ;
  423.  
  424. typedef TMixerCapsA  TMixerCaps;
  425.  
  426. struct TMixerLineA;
  427. typedef TMixerLineA *PMixerLineA;
  428.  
  429. struct TMixerLineW;
  430. typedef TMixerLineW *PMixerLineW;
  431.  
  432. typedef TMixerLineA *PMixerLine;
  433.  
  434. struct MMSystem_1
  435. {
  436.     System::Integer dwType;
  437.     System::Integer dwDeviceID;
  438.     System::Word wMid;
  439.     System::Word wPid;
  440.     System::Integer vDriverVersion;
  441.     System::Char szPname[32];
  442. } ;
  443.  
  444. struct TMixerLineA
  445. {
  446.     System::Integer cbStruct;
  447.     System::Integer dwDestination;
  448.     System::Integer dwSource;
  449.     System::Integer dwLineID;
  450.     System::Integer fdwLine;
  451.     System::Integer dwUser;
  452.     System::Integer dwComponentType;
  453.     System::Integer cChannels;
  454.     System::Integer cConnections;
  455.     System::Integer cControls;
  456.     System::Char szShortName[16];
  457.     System::Char szName[64];
  458.     MMSystem_1 Target;
  459. } ;
  460.  
  461. struct MMSystem_2
  462. {
  463.     System::Integer dwType;
  464.     System::Integer dwDeviceID;
  465.     System::Word wMid;
  466.     System::Word wPid;
  467.     System::Integer vDriverVersion;
  468.     System::WideChar szPname[32];
  469. } ;
  470.  
  471. struct TMixerLineW
  472. {
  473.     System::Integer cbStruct;
  474.     System::Integer dwDestination;
  475.     System::Integer dwSource;
  476.     System::Integer dwLineID;
  477.     System::Integer fdwLine;
  478.     System::Integer dwUser;
  479.     System::Integer dwComponentType;
  480.     System::Integer cChannels;
  481.     System::Integer cConnections;
  482.     System::Integer cControls;
  483.     System::WideChar szShortName[16];
  484.     System::WideChar szName[64];
  485.     MMSystem_2 Target;
  486. } ;
  487.  
  488. typedef TMixerLineA  TMixerLine;
  489.  
  490. struct TMixerControlA;
  491. typedef TMixerControlA *PMixerControlA;
  492.  
  493. struct TMixerControlW;
  494. typedef TMixerControlW *PMixerControlW;
  495.  
  496. typedef TMixerControlA *PMixerControl;
  497.  
  498. struct MMSystem_3
  499. {
  500.     
  501.     union
  502.     {
  503.         struct 
  504.         {
  505.             System::Integer dwMinimum;
  506.             System::Integer dwMaximum;
  507.             System::Integer dwReserved[6];
  508.             
  509.         };
  510.         struct 
  511.         {
  512.             System::Longint lMinimum;
  513.             System::Longint lMaximum;
  514.             
  515.         };
  516.         
  517.     };
  518. } ;
  519.  
  520. struct MMSystem_4
  521. {
  522.     
  523.     union
  524.     {
  525.         System::Integer dwReserved[6];
  526.         System::Integer cbCustomData;
  527.         System::Integer cSteps;
  528.         
  529.     };
  530. } ;
  531.  
  532. struct TMixerControlA
  533. {
  534.     System::Integer cbStruct;
  535.     System::Integer dwControlID;
  536.     System::Integer dwControlType;
  537.     System::Integer fdwControl;
  538.     System::Integer cMultipleItems;
  539.     System::Char szShortName[16];
  540.     System::Char szName[64];
  541.     MMSystem_3 Bounds;
  542.     MMSystem_4 Metrics;
  543. } ;
  544.  
  545. struct MMSystem_5
  546. {
  547.     
  548.     union
  549.     {
  550.         struct 
  551.         {
  552.             System::Integer dwMinimum;
  553.             System::Integer dwMaximum;
  554.             System::Integer dwReserved[6];
  555.             
  556.         };
  557.         struct 
  558.         {
  559.             System::Longint lMinimum;
  560.             System::Longint lMaximum;
  561.             
  562.         };
  563.         
  564.     };
  565. } ;
  566.  
  567. struct MMSystem_6
  568. {
  569.     
  570.     union
  571.     {
  572.         System::Integer dwReserved[6];
  573.         System::Integer cbCustomData;
  574.         System::Integer cSteps;
  575.         
  576.     };
  577. } ;
  578.  
  579. struct TMixerControlW
  580. {
  581.     System::Integer cbStruct;
  582.     System::Integer dwControlID;
  583.     System::Integer dwControlType;
  584.     System::Integer fdwControl;
  585.     System::Integer cMultipleItems;
  586.     System::WideChar szShortName[16];
  587.     System::WideChar szName[64];
  588.     MMSystem_5 Bounds;
  589.     MMSystem_6 Metrics;
  590. } ;
  591.  
  592. typedef TMixerControlA  TMixerControl;
  593.  
  594. struct TMixerLineControlsA;
  595. typedef TMixerLineControlsA *PMixerLineControlsA;
  596.  
  597. struct TMixerLineControlsW;
  598. typedef TMixerLineControlsW *PMixerLineControlsW;
  599.  
  600. typedef TMixerLineControlsA *PMixerLineControls;
  601.  
  602. struct TMixerLineControlsA
  603. {
  604.     System::Integer cbStruct;
  605.     System::Integer dwLineID;
  606.     union
  607.     {
  608.         struct 
  609.         {
  610.             System::Integer dwControlType;
  611.             System::Integer cControls;
  612.             System::Integer cbmxctrl;
  613.             TMixerControlA *pamxctrl;
  614.             
  615.         };
  616.         System::Integer dwControlID;
  617.         
  618.     };
  619. } ;
  620.  
  621. struct TMixerLineControlsW
  622. {
  623.     System::Integer cbStruct;
  624.     System::Integer dwLineID;
  625.     union
  626.     {
  627.         struct 
  628.         {
  629.             System::Integer dwControlType;
  630.             System::Integer cControls;
  631.             System::Integer cbmxctrl;
  632.             TMixerControlW *pamxctrl;
  633.             
  634.         };
  635.         System::Integer dwControlID;
  636.         
  637.     };
  638. } ;
  639.  
  640. typedef TMixerLineControlsA  TMixerLineControls;
  641.  
  642. struct TMixerControlDetails;
  643. typedef TMixerControlDetails *PMixerControlDetails;
  644.  
  645. struct TMixerControlDetails
  646. {
  647.     System::Integer cbStruct;
  648.     System::Integer dwControlID;
  649.     System::Integer cChannels;
  650.     union
  651.     {
  652.         struct 
  653.         {
  654.             System::Integer cMultipleItems;
  655.             System::Integer cbDetails;
  656.             void *paDetails;
  657.             
  658.         };
  659.         System::Integer hwndOwner;
  660.         
  661.     };
  662. } ;
  663.  
  664. struct TMixerControlDetailsListTextA;
  665. typedef TMixerControlDetailsListTextA *PMixerControlDetailsListTextA;
  666.  
  667. struct TMixerControlDetailsListTextW;
  668. typedef TMixerControlDetailsListTextW *PMixerControlDetailsListTextW;
  669.  
  670. typedef TMixerControlDetailsListTextA *PMixerControlDetailsListText;
  671.  
  672. struct TMixerControlDetailsListTextA
  673. {
  674.     System::Integer dwParam1;
  675.     System::Integer dwParam2;
  676.     System::Char szName[64];
  677. } ;
  678.  
  679. struct TMixerControlDetailsListTextW
  680. {
  681.     System::Integer dwParam1;
  682.     System::Integer dwParam2;
  683.     System::WideChar szName[64];
  684. } ;
  685.  
  686. typedef TMixerControlDetailsListTextA  TMixerControlDetailsListText;
  687.  
  688. struct TMixerControlDetailsBoolean;
  689. typedef TMixerControlDetailsBoolean *PMixerControlDetailsBoolean;
  690.  
  691. struct TMixerControlDetailsBoolean
  692. {
  693.     System::Longint fValue;
  694. } ;
  695.  
  696. struct TMixerControlDetailsSigned;
  697. typedef TMixerControlDetailsSigned *PMixerControlDetailsSigned;
  698.  
  699. struct TMixerControlDetailsSigned
  700. {
  701.     System::Longint lValue;
  702. } ;
  703.  
  704. struct TMixerControlDetailsUnsigned;
  705. typedef TMixerControlDetailsUnsigned *PMixerControlDetailsUnsigned;
  706.  
  707. struct TMixerControlDetailsUnsigned
  708. {
  709.     System::Integer dwValue;
  710. } ;
  711.  
  712. typedef void __fastcall (*TFNTimeCallBack)(System::Integer uTimerID, System::Integer uMessage, System::Integer 
  713.     dwUser, System::Integer dw1, System::Integer dw2);
  714.  
  715. struct TTimeCaps
  716. {
  717.     System::Integer wPeriodMin;
  718.     System::Integer wPeriodMax;
  719. } ;
  720.  
  721. typedef TTimeCaps *PTimeCaps;
  722.  
  723. struct TJoyCapsA;
  724. typedef TJoyCapsA *PJoyCapsA;
  725.  
  726. struct TJoyCapsW;
  727. typedef TJoyCapsW *PJoyCapsW;
  728.  
  729. typedef TJoyCapsA *PJoyCaps;
  730.  
  731. struct TJoyCapsA
  732. {
  733.     System::Word wMid;
  734.     System::Word wPid;
  735.     System::Char szPname[32];
  736.     System::Integer wXmin;
  737.     System::Integer wXmax;
  738.     System::Integer wYmin;
  739.     System::Integer wYmax;
  740.     System::Integer wZmin;
  741.     System::Integer wZmax;
  742.     System::Integer wNumButtons;
  743.     System::Integer wPeriodMin;
  744.     System::Integer wPeriodMax;
  745.     System::Integer wRmin;
  746.     System::Integer wRmax;
  747.     System::Integer wUmin;
  748.     System::Integer wUmax;
  749.     System::Integer wVmin;
  750.     System::Integer wVmax;
  751.     System::Integer wCaps;
  752.     System::Integer wMaxAxes;
  753.     System::Integer wNumAxes;
  754.     System::Integer wMaxButtons;
  755.     System::Char szRegKey[32];
  756.     System::Char szOEMVxD[260];
  757. } ;
  758.  
  759. struct TJoyCapsW
  760. {
  761.     System::Word wMid;
  762.     System::Word wPid;
  763.     System::WideChar szPname[32];
  764.     System::Integer wXmin;
  765.     System::Integer wXmax;
  766.     System::Integer wYmin;
  767.     System::Integer wYmax;
  768.     System::Integer wZmin;
  769.     System::Integer wZmax;
  770.     System::Integer wNumButtons;
  771.     System::Integer wPeriodMin;
  772.     System::Integer wPeriodMax;
  773.     System::Integer wRmin;
  774.     System::Integer wRmax;
  775.     System::Integer wUmin;
  776.     System::Integer wUmax;
  777.     System::Integer wVmin;
  778.     System::Integer wVmax;
  779.     System::Integer wCaps;
  780.     System::Integer wMaxAxes;
  781.     System::Integer wNumAxes;
  782.     System::Integer wMaxButtons;
  783.     System::WideChar szRegKey[32];
  784.     System::WideChar szOEMVxD[260];
  785. } ;
  786.  
  787. typedef TJoyCapsA  TJoyCaps;
  788.  
  789. struct TJoyInfo
  790. {
  791.     System::Integer wXpos;
  792.     System::Integer wYpos;
  793.     System::Integer wZpos;
  794.     System::Integer wButtons;
  795. } ;
  796.  
  797. typedef TJoyInfo *PJoyInfo;
  798.  
  799. struct TJoyInfoEx;
  800. typedef TJoyInfoEx *PJoyInfoEx;
  801.  
  802. struct TJoyInfoEx
  803. {
  804.     System::Integer dwSize;
  805.     System::Integer dwFlags;
  806.     System::Integer wXpos;
  807.     System::Integer wYpos;
  808.     System::Integer wZpos;
  809.     System::Integer dwRpos;
  810.     System::Integer dwUpos;
  811.     System::Integer dwVpos;
  812.     System::Integer wButtons;
  813.     System::Integer dwButtonNumber;
  814.     System::Integer dwPOV;
  815.     System::Integer dwReserved1;
  816.     System::Integer dwReserved2;
  817. } ;
  818.  
  819. typedef System::Integer FOURCC;
  820.  
  821. typedef System::Integer *PHMMIO;
  822.  
  823. typedef System::Integer HMMIO;
  824.  
  825. typedef System::Longint __stdcall (*TFNMMIOProc)(System::PChar lpmmioinfo, System::Integer uMessage, 
  826.     System::Longint lParam1, System::Longint lParam2);
  827.  
  828. struct TMMIOInfo;
  829. typedef TMMIOInfo *PMMIOInfo;
  830.  
  831. struct TMMIOInfo
  832. {
  833.     System::Integer dwFlags;
  834.     System::Integer fccIOProc;
  835.     TFNMMIOProc pIOProc;
  836.     System::Integer wErrorRet;
  837.     System::Integer hTask;
  838.     System::Longint cchBuffer;
  839.     System::Char *pchBuffer;
  840.     System::Char *pchNext;
  841.     System::Char *pchEndRead;
  842.     System::Char *pchEndWrite;
  843.     System::Longint lBufOffset;
  844.     System::Longint lDiskOffset;
  845.     System::Integer adwInfo[3];
  846.     System::Integer dwReserved1;
  847.     System::Integer dwReserved2;
  848.     System::Integer hmmio;
  849. } ;
  850.  
  851. struct TMMCKInfo
  852. {
  853.     System::Integer ckid;
  854.     System::Integer cksize;
  855.     System::Integer fccType;
  856.     System::Integer dwDataOffset;
  857.     System::Integer dwFlags;
  858. } ;
  859.  
  860. typedef TMMCKInfo *PMMCKInfo;
  861.  
  862. typedef System::Integer MCIERROR;
  863.  
  864. typedef System::Integer MCIDEVICEID;
  865.  
  866. typedef System::Integer __stdcall (*TFNYieldProc)(System::Integer mciId, System::Integer dwYieldData
  867.     );
  868.  
  869. struct TMCI_Generic_Parms
  870. {
  871.     System::Integer dwCallback;
  872. } ;
  873.  
  874. typedef TMCI_Generic_Parms *PMCI_Generic_Parms;
  875.  
  876. struct TMCI_Open_ParmsA;
  877. typedef TMCI_Open_ParmsA *PMCI_Open_ParmsA;
  878.  
  879. struct TMCI_Open_ParmsW;
  880. typedef TMCI_Open_ParmsW *PMCI_Open_ParmsW;
  881.  
  882. typedef TMCI_Open_ParmsA *PMCI_Open_Parms;
  883.  
  884. struct TMCI_Open_ParmsA
  885. {
  886.     System::Integer dwCallback;
  887.     System::Integer wDeviceID;
  888.     System::Char *lpstrDeviceType;
  889.     System::Char *lpstrElementName;
  890.     System::Char *lpstrAlias;
  891. } ;
  892.  
  893. struct TMCI_Open_ParmsW
  894. {
  895.     System::Integer dwCallback;
  896.     System::Integer wDeviceID;
  897.     System::WideChar *lpstrDeviceType;
  898.     System::WideChar *lpstrElementName;
  899.     System::WideChar *lpstrAlias;
  900. } ;
  901.  
  902. typedef TMCI_Open_ParmsA  TMCI_Open_Parms;
  903.  
  904. struct TMCI_Play_Parms
  905. {
  906.     System::Integer dwCallback;
  907.     System::Integer dwFrom;
  908.     System::Integer dwTo;
  909. } ;
  910.  
  911. typedef TMCI_Play_Parms *PMCI_Play_Parms;
  912.  
  913. struct TMCI_Seek_Parms
  914. {
  915.     System::Integer dwCallback;
  916.     System::Integer dwTo;
  917. } ;
  918.  
  919. typedef TMCI_Seek_Parms *PMCI_Seek_Parms;
  920.  
  921. struct TMCI_Status_Parms
  922. {
  923.     System::Integer dwCallback;
  924.     System::Integer dwReturn;
  925.     System::Integer dwItem;
  926.     System::Integer dwTrack;
  927. } ;
  928.  
  929. typedef TMCI_Status_Parms *PMCI_Status_Parms;
  930.  
  931. struct TMCI_Info_ParmsA;
  932. typedef TMCI_Info_ParmsA *PMCI_Info_ParmsA;
  933.  
  934. struct TMCI_Info_ParmsW;
  935. typedef TMCI_Info_ParmsW *PMCI_Info_ParmsW;
  936.  
  937. typedef TMCI_Info_ParmsA *PMCI_Info_Parms;
  938.  
  939. struct TMCI_Info_ParmsA
  940. {
  941.     System::Integer dwCallback;
  942.     System::Char *lpstrReturn;
  943.     System::Integer dwRetSize;
  944. } ;
  945.  
  946. struct TMCI_Info_ParmsW
  947. {
  948.     System::Integer dwCallback;
  949.     System::WideChar *lpstrReturn;
  950.     System::Integer dwRetSize;
  951. } ;
  952.  
  953. typedef TMCI_Info_ParmsA  TMCI_Info_Parms;
  954.  
  955. struct TMCI_GetDevCaps_Parms
  956. {
  957.     System::Integer dwCallback;
  958.     System::Integer dwReturn;
  959.     System::Integer dwItem;
  960. } ;
  961.  
  962. typedef TMCI_GetDevCaps_Parms *PMCI_GetDevCaps_Parms;
  963.  
  964. struct TMCI_SysInfo_ParmsA;
  965. typedef TMCI_SysInfo_ParmsA *PMCI_SysInfo_ParmsA;
  966.  
  967. struct TMCI_SysInfo_ParmsW;
  968. typedef TMCI_SysInfo_ParmsW *PMCI_SysInfo_ParmsW;
  969.  
  970. typedef TMCI_SysInfo_ParmsA *PMCI_SysInfo_Parms;
  971.  
  972. struct TMCI_SysInfo_ParmsA
  973. {
  974.     System::Integer dwCallback;
  975.     System::Char *lpstrReturn;
  976.     System::Integer dwRetSize;
  977.     System::Integer dwNumber;
  978.     System::Integer wDeviceType;
  979. } ;
  980.  
  981. struct TMCI_SysInfo_ParmsW
  982. {
  983.     System::Integer dwCallback;
  984.     System::WideChar *lpstrReturn;
  985.     System::Integer dwRetSize;
  986.     System::Integer dwNumber;
  987.     System::Integer wDeviceType;
  988. } ;
  989.  
  990. typedef TMCI_SysInfo_ParmsA  TMCI_SysInfo_Parms;
  991.  
  992. struct TMCI_Set_Parms
  993. {
  994.     System::Integer dwCallback;
  995.     System::Integer dwTimeFormat;
  996.     System::Integer dwAudio;
  997. } ;
  998.  
  999. typedef TMCI_Set_Parms *PMCI_Set_Parms;
  1000.  
  1001. struct TMCI_BReak_Parms;
  1002. typedef TMCI_BReak_Parms *PMCI_Break_Parms;
  1003.  
  1004. struct TMCI_BReak_Parms
  1005. {
  1006.     System::Integer dwCallback;
  1007.     System::Integer nVirtKey;
  1008.     System::Integer hWndBreak;
  1009. } ;
  1010.  
  1011. struct TMCI_Sound_Parms;
  1012. typedef TMCI_Sound_Parms *PMCI_Sound_Parms;
  1013.  
  1014. struct TMCI_Sound_Parms
  1015. {
  1016.     System::Longint dwCallback;
  1017.     System::Char *lpstrSoundName;
  1018. } ;
  1019.  
  1020. struct TMCI_SaveParmsA;
  1021. typedef TMCI_SaveParmsA *PMCI_Save_ParmsA;
  1022.  
  1023. struct TMCI_SaveParmsW;
  1024. typedef TMCI_SaveParmsW *PMCI_Save_ParmsW;
  1025.  
  1026. typedef TMCI_SaveParmsA *PMCI_Save_Parms;
  1027.  
  1028. struct TMCI_SaveParmsA
  1029. {
  1030.     System::Integer dwCallback;
  1031.     System::Char *lpfilename;
  1032. } ;
  1033.  
  1034. struct TMCI_SaveParmsW
  1035. {
  1036.     System::Integer dwCallback;
  1037.     System::WideChar *lpfilename;
  1038. } ;
  1039.  
  1040. typedef TMCI_SaveParmsA  TMCI_SaveParms;
  1041.  
  1042. struct TMCI_Load_ParmsA;
  1043. typedef TMCI_Load_ParmsA *PMCI_Load_ParmsA;
  1044.  
  1045. struct TMCI_Load_ParmsW;
  1046. typedef TMCI_Load_ParmsW *PMCI_Load_ParmsW;
  1047.  
  1048. typedef TMCI_Load_ParmsA *PMCI_Load_Parms;
  1049.  
  1050. struct TMCI_Load_ParmsA
  1051. {
  1052.     System::Integer dwCallback;
  1053.     System::Char *lpfilename;
  1054. } ;
  1055.  
  1056. struct TMCI_Load_ParmsW
  1057. {
  1058.     System::Integer dwCallback;
  1059.     System::WideChar *lpfilename;
  1060. } ;
  1061.  
  1062. typedef TMCI_Load_ParmsA  TMCI_Load_Parms;
  1063.  
  1064. struct TMCI_Record_Parms
  1065. {
  1066.     System::Integer dwCallback;
  1067.     System::Integer dwFrom;
  1068.     System::Integer dwTo;
  1069. } ;
  1070.  
  1071. typedef TMCI_Record_Parms *PMCI_Record_Parms;
  1072.  
  1073. struct TMCI_VD_Play_Parms
  1074. {
  1075.     System::Integer dwCallback;
  1076.     System::Integer dwFrom;
  1077.     System::Integer dwTo;
  1078.     System::Integer dwSpeed;
  1079. } ;
  1080.  
  1081. typedef TMCI_VD_Play_Parms *PMCI_VD_Play_Parms;
  1082.  
  1083. struct TMCI_VD_Step_Parms
  1084. {
  1085.     System::Integer dwCallback;
  1086.     System::Integer dwFrames;
  1087. } ;
  1088.  
  1089. typedef TMCI_VD_Step_Parms *PMCI_VD_Step_Parms;
  1090.  
  1091. struct TMCI_VD_Escape_ParmsA;
  1092. typedef TMCI_VD_Escape_ParmsA *PMCI_VD_Escape_ParmsA;
  1093.  
  1094. struct TMCI_VD_Escape_ParmsW;
  1095. typedef TMCI_VD_Escape_ParmsW *PMCI_VD_Escape_ParmsW;
  1096.  
  1097. typedef TMCI_VD_Escape_ParmsA *PMCI_VD_Escape_Parms;
  1098.  
  1099. struct TMCI_VD_Escape_ParmsA
  1100. {
  1101.     System::Integer dwCallback;
  1102.     System::Char *lpstrCommand;
  1103. } ;
  1104.  
  1105. struct TMCI_VD_Escape_ParmsW
  1106. {
  1107.     System::Integer dwCallback;
  1108.     System::WideChar *lpstrCommand;
  1109. } ;
  1110.  
  1111. typedef TMCI_VD_Escape_ParmsA  TMCI_VD_Escape_Parms;
  1112.  
  1113. struct TMCI_Wave_Open_ParmsA;
  1114. typedef TMCI_Wave_Open_ParmsA *PMCI_Wave_Open_ParmsA;
  1115.  
  1116. struct TMCI_Wave_Open_ParmsW;
  1117. typedef TMCI_Wave_Open_ParmsW *PMCI_Wave_Open_ParmsW;
  1118.  
  1119. typedef TMCI_Wave_Open_ParmsA *PMCI_Wave_Open_Parms;
  1120.  
  1121. struct TMCI_Wave_Open_ParmsA
  1122. {
  1123.     System::Integer dwCallback;
  1124.     System::Integer wDeviceID;
  1125.     System::Char *lpstrDeviceType;
  1126.     System::Char *lpstrElementName;
  1127.     System::Char *lpstrAlias;
  1128.     System::Integer dwBufferSeconds;
  1129. } ;
  1130.  
  1131. struct TMCI_Wave_Open_ParmsW
  1132. {
  1133.     System::Integer dwCallback;
  1134.     System::Integer wDeviceID;
  1135.     System::WideChar *lpstrDeviceType;
  1136.     System::WideChar *lpstrElementName;
  1137.     System::WideChar *lpstrAlias;
  1138.     System::Integer dwBufferSeconds;
  1139. } ;
  1140.  
  1141. typedef TMCI_Wave_Open_ParmsA  TMCI_Wave_Open_Parms;
  1142.  
  1143. struct TMCI_Wave_Delete_Parms
  1144. {
  1145.     System::Integer dwCallback;
  1146.     System::Integer dwFrom;
  1147.     System::Integer dwTo;
  1148. } ;
  1149.  
  1150. typedef TMCI_Wave_Delete_Parms *PMCI_Wave_Delete_Parms;
  1151.  
  1152. struct TMCI_Wave_Set_Parms;
  1153. typedef TMCI_Wave_Set_Parms *PMCI_Wave_Set_Parms;
  1154.  
  1155. struct TMCI_Wave_Set_Parms
  1156. {
  1157.     System::Integer dwCallback;
  1158.     System::Integer dwTimeFormat;
  1159.     System::Integer dwAudio;
  1160.     System::Integer wInput;
  1161.     System::Integer wOutput;
  1162.     System::Word wFormatTag;
  1163.     System::Word wReserved2;
  1164.     System::Word nChannels;
  1165.     System::Word wReserved3;
  1166.     System::Integer nSamplesPerSec;
  1167.     System::Integer nAvgBytesPerSec;
  1168.     System::Word nBlockAlign;
  1169.     System::Word wReserved4;
  1170.     System::Word wBitsPerSample;
  1171.     System::Word wReserved5;
  1172. } ;
  1173.  
  1174. struct TMCI_Seq_Set_Parms
  1175. {
  1176.     System::Integer dwCallback;
  1177.     System::Integer dwTimeFormat;
  1178.     System::Integer dwAudio;
  1179.     System::Integer dwTempo;
  1180.     System::Integer dwPort;
  1181.     System::Integer dwSlave;
  1182.     System::Integer dwMaster;
  1183.     System::Integer dwOffset;
  1184. } ;
  1185.  
  1186. typedef TMCI_Seq_Set_Parms *PMCI_Seq_Set_Parms;
  1187.  
  1188. struct TMCI_Anim_Open_ParmsA;
  1189. typedef TMCI_Anim_Open_ParmsA *PMCI_Anim_Open_ParmsA;
  1190.  
  1191. struct TMCI_Anim_Open_ParmsW;
  1192. typedef TMCI_Anim_Open_ParmsW *PMCI_Anim_Open_ParmsW;
  1193.  
  1194. typedef TMCI_Anim_Open_ParmsA *PMCI_Anim_Open_Parms;
  1195.  
  1196. struct TMCI_Anim_Open_ParmsA
  1197. {
  1198.     System::Integer dwCallback;
  1199.     System::Integer wDeviceID;
  1200.     System::Char *lpstrDeviceType;
  1201.     System::Char *lpstrElementName;
  1202.     System::Char *lpstrAlias;
  1203.     System::Integer dwStyle;
  1204.     System::Integer hWndParent;
  1205. } ;
  1206.  
  1207. struct TMCI_Anim_Open_ParmsW
  1208. {
  1209.     System::Integer dwCallback;
  1210.     System::Integer wDeviceID;
  1211.     System::WideChar *lpstrDeviceType;
  1212.     System::WideChar *lpstrElementName;
  1213.     System::WideChar *lpstrAlias;
  1214.     System::Integer dwStyle;
  1215.     System::Integer hWndParent;
  1216. } ;
  1217.  
  1218. typedef TMCI_Anim_Open_ParmsA  TMCI_Anim_Open_Parms;
  1219.  
  1220. struct TMCI_Anim_Play_Parms
  1221. {
  1222.     System::Integer dwCallback;
  1223.     System::Integer dwFrom;
  1224.     System::Integer dwTo;
  1225.     System::Integer dwSpeed;
  1226. } ;
  1227.  
  1228. typedef TMCI_Anim_Play_Parms *PMCI_Anim_Play_Parms;
  1229.  
  1230. struct TMCI_Anim_Step_Parms
  1231. {
  1232.     System::Integer dwCallback;
  1233.     System::Integer dwFrames;
  1234. } ;
  1235.  
  1236. typedef TMCI_Anim_Step_Parms *PMCI_Anim_Step_Parms;
  1237.  
  1238. struct TMCI_Anim_Window_ParmsA;
  1239. typedef TMCI_Anim_Window_ParmsA *PMCI_Anim_Window_ParmsA;
  1240.  
  1241. struct TMCI_Anim_Window_ParmsW;
  1242. typedef TMCI_Anim_Window_ParmsW *PMCI_Anim_Window_ParmsW;
  1243.  
  1244. typedef TMCI_Anim_Window_ParmsA *PMCI_Anim_Window_Parms;
  1245.  
  1246. struct TMCI_Anim_Window_ParmsA
  1247. {
  1248.     System::Integer dwCallback;
  1249.     System::Integer Wnd;
  1250.     System::Integer nCmdShow;
  1251.     System::Char *lpstrText;
  1252. } ;
  1253.  
  1254. struct TMCI_Anim_Window_ParmsW
  1255. {
  1256.     System::Integer dwCallback;
  1257.     System::Integer Wnd;
  1258.     System::Integer nCmdShow;
  1259.     System::WideChar *lpstrText;
  1260. } ;
  1261.  
  1262. typedef TMCI_Anim_Window_ParmsA  TMCI_Anim_Window_Parms;
  1263.  
  1264. struct TMCI_Anim_Rect_Parms;
  1265. typedef TMCI_Anim_Rect_Parms *PMCI_Anim_Rect_Parms;
  1266.  
  1267. struct TMCI_Anim_Rect_Parms
  1268. {
  1269.     System::Integer dwCallback;
  1270.     Windows::TRect rc;
  1271. } ;
  1272.  
  1273. struct TMCI_Anim_Update_Parms;
  1274. typedef TMCI_Anim_Update_Parms *PMCI_Anim_Update_Parms;
  1275.  
  1276. struct TMCI_Anim_Update_Parms
  1277. {
  1278.     System::Integer dwCallback;
  1279.     Windows::TRect rc;
  1280.     System::Integer hDC;
  1281. } ;
  1282.  
  1283. struct TMCI_Ovly_Open_ParmsA;
  1284. typedef TMCI_Ovly_Open_ParmsA *PMCI_Ovly_Open_ParmsA;
  1285.  
  1286. struct TMCI_Ovly_Open_ParmsW;
  1287. typedef TMCI_Ovly_Open_ParmsW *PMCI_Ovly_Open_ParmsW;
  1288.  
  1289. typedef TMCI_Ovly_Open_ParmsA *PMCI_Ovly_Open_Parms;
  1290.  
  1291. struct TMCI_Ovly_Open_ParmsA
  1292. {
  1293.     System::Integer dwCallback;
  1294.     System::Integer wDeviceID;
  1295.     System::Char *lpstrDeviceType;
  1296.     System::Char *lpstrElementName;
  1297.     System::Char *lpstrAlias;
  1298.     System::Integer dwStyle;
  1299.     System::Integer hWndParent;
  1300. } ;
  1301.  
  1302. struct TMCI_Ovly_Open_ParmsW
  1303. {
  1304.     System::Integer dwCallback;
  1305.     System::Integer wDeviceID;
  1306.     System::WideChar *lpstrDeviceType;
  1307.     System::WideChar *lpstrElementName;
  1308.     System::WideChar *lpstrAlias;
  1309.     System::Integer dwStyle;
  1310.     System::Integer hWndParent;
  1311. } ;
  1312.  
  1313. typedef TMCI_Ovly_Open_ParmsA  TMCI_Ovly_Open_Parms;
  1314.  
  1315. struct TMCI_Ovly_Window_ParmsA;
  1316. typedef TMCI_Ovly_Window_ParmsA *PMCI_Ovly_Window_ParmsA;
  1317.  
  1318. struct TMCI_Ovly_Window_ParmsW;
  1319. typedef TMCI_Ovly_Window_ParmsW *PMCI_Ovly_Window_ParmsW;
  1320.  
  1321. typedef TMCI_Ovly_Window_ParmsA *PMCI_Ovly_Window_Parms;
  1322.  
  1323. struct TMCI_Ovly_Window_ParmsA
  1324. {
  1325.     System::Integer dwCallback;
  1326.     System::Integer WHandle;
  1327.     System::Integer nCmdShow;
  1328.     System::Char *lpstrText;
  1329. } ;
  1330.  
  1331. struct TMCI_Ovly_Window_ParmsW
  1332. {
  1333.     System::Integer dwCallback;
  1334.     System::Integer WHandle;
  1335.     System::Integer nCmdShow;
  1336.     System::WideChar *lpstrText;
  1337. } ;
  1338.  
  1339. typedef TMCI_Ovly_Window_ParmsA  TMCI_Ovly_Window_Parms;
  1340.  
  1341. struct TMCI_Ovly_Rect_Parms
  1342. {
  1343.     System::Integer dwCallback;
  1344.     Windows::TRect rc;
  1345. } ;
  1346.  
  1347. typedef TMCI_Ovly_Rect_Parms *PMCI_Ovly_Rect_Parms;
  1348.  
  1349. struct TMCI_Ovly_Save_ParmsA;
  1350. typedef TMCI_Ovly_Save_ParmsA *PMCI_Ovly_Save_ParmsA;
  1351.  
  1352. struct TMCI_Ovly_Save_ParmsW;
  1353. typedef TMCI_Ovly_Save_ParmsW *PMCI_Ovly_Save_ParmsW;
  1354.  
  1355. typedef TMCI_Ovly_Save_ParmsA *PMCI_Ovly_Save_Parms;
  1356.  
  1357. struct TMCI_Ovly_Save_ParmsA
  1358. {
  1359.     System::Integer dwCallback;
  1360.     System::Char *lpfilename;
  1361.     Windows::TRect rc;
  1362. } ;
  1363.  
  1364. struct TMCI_Ovly_Save_ParmsW
  1365. {
  1366.     System::Integer dwCallback;
  1367.     System::WideChar *lpfilename;
  1368.     Windows::TRect rc;
  1369. } ;
  1370.  
  1371. typedef TMCI_Ovly_Save_ParmsA  TMCI_Ovly_Save_Parms;
  1372.  
  1373. struct TMCI_Ovly_Load_ParmsA;
  1374. typedef TMCI_Ovly_Load_ParmsA *PMCI_Ovly_Load_ParmsA;
  1375.  
  1376. struct TMCI_Ovly_Load_ParmsW;
  1377. typedef TMCI_Ovly_Load_ParmsW *PMCI_Ovly_Load_ParmsW;
  1378.  
  1379. typedef TMCI_Ovly_Load_ParmsA *PMCI_Ovly_Load_Parms;
  1380.  
  1381. struct TMCI_Ovly_Load_ParmsA
  1382. {
  1383.     System::Integer dwCallback;
  1384.     System::Char *lpfilename;
  1385.     Windows::TRect rc;
  1386. } ;
  1387.  
  1388. struct TMCI_Ovly_Load_ParmsW
  1389. {
  1390.     System::Integer dwCallback;
  1391.     System::WideChar *lpfilename;
  1392.     Windows::TRect rc;
  1393. } ;
  1394.  
  1395. typedef TMCI_Ovly_Load_ParmsA  TMCI_Ovly_Load_Parms;
  1396.  
  1397. //-- var, const, procedure ---------------------------------------------------
  1398. #define MAXPNAMELEN System::Byte(32)
  1399. #define MAXERRORLENGTH System::Byte(128)
  1400. #define MAX_JOYSTICKOEMVXDNAME System::Smallint(260)
  1401. #define MM_MICROSOFT System::Byte(1)
  1402. #define MM_MIDI_MAPPER System::Byte(1)
  1403. #define MM_WAVE_MAPPER System::Byte(2)
  1404. #define MM_SNDBLST_MIDIOUT System::Byte(3)
  1405. #define MM_SNDBLST_MIDIIN System::Byte(4)
  1406. #define MM_SNDBLST_SYNTH System::Byte(5)
  1407. #define MM_SNDBLST_WAVEOUT System::Byte(6)
  1408. #define MM_SNDBLST_WAVEIN System::Byte(7)
  1409. #define MM_ADLIB System::Byte(9)
  1410. #define MM_MPU401_MIDIOUT System::Byte(10)
  1411. #define MM_MPU401_MIDIIN System::Byte(11)
  1412. #define MM_PC_JOYSTICK System::Byte(12)
  1413. #define TIME_MS System::Byte(1)
  1414. #define TIME_SAMPLES System::Byte(2)
  1415. #define TIME_BYTES System::Byte(4)
  1416. #define TIME_SMPTE System::Byte(8)
  1417. #define TIME_MIDI System::Byte(16)
  1418. #define TIME_TICKS System::Byte(32)
  1419. #define MM_JOY1MOVE System::Smallint(928)
  1420. #define MM_JOY2MOVE System::Smallint(929)
  1421. #define MM_JOY1ZMOVE System::Smallint(930)
  1422. #define MM_JOY2ZMOVE System::Smallint(931)
  1423. #define MM_JOY1BUTTONDOWN System::Smallint(949)
  1424. #define MM_JOY2BUTTONDOWN System::Smallint(950)
  1425. #define MM_JOY1BUTTONUP System::Smallint(951)
  1426. #define MM_JOY2BUTTONUP System::Smallint(952)
  1427. #define MM_MCINOTIFY System::Smallint(953)
  1428. #define MM_WOM_OPEN System::Smallint(955)
  1429. #define MM_WOM_CLOSE System::Smallint(956)
  1430. #define MM_WOM_DONE System::Smallint(957)
  1431. #define MM_WIM_OPEN System::Smallint(958)
  1432. #define MM_WIM_CLOSE System::Smallint(959)
  1433. #define MM_WIM_DATA System::Smallint(960)
  1434. #define MM_MIM_OPEN System::Smallint(961)
  1435. #define MM_MIM_CLOSE System::Smallint(962)
  1436. #define MM_MIM_DATA System::Smallint(963)
  1437. #define MM_MIM_LONGDATA System::Smallint(964)
  1438. #define MM_MIM_ERROR System::Smallint(965)
  1439. #define MM_MIM_LONGERROR System::Smallint(966)
  1440. #define MM_MOM_OPEN System::Smallint(967)
  1441. #define MM_MOM_CLOSE System::Smallint(968)
  1442. #define MM_MOM_DONE System::Smallint(969)
  1443. #define MM_DRVM_OPEN System::Smallint(976)
  1444. #define MM_DRVM_CLOSE System::Smallint(977)
  1445. #define MM_DRVM_DATA System::Smallint(978)
  1446. #define MM_DRVM_ERROR System::Smallint(979)
  1447. #define MM_STREAM_OPEN System::Smallint(980)
  1448. #define MM_STREAM_CLOSE System::Smallint(981)
  1449. #define MM_STREAM_DONE System::Smallint(982)
  1450. #define MM_STREAM_ERROR System::Smallint(983)
  1451. #define MM_MOM_POSITIONCB System::Smallint(970)
  1452. #define MM_MCISIGNAL System::Smallint(971)
  1453. #define MM_MIM_MOREDATA System::Smallint(972)
  1454. #define MM_MIXM_LINE_CHANGE System::Smallint(976)
  1455. #define MM_MIXM_CONTROL_CHANGE System::Smallint(977)
  1456. #define MMSYSERR_BASE System::Byte(0)
  1457. #define WAVERR_BASE System::Byte(32)
  1458. #define MIDIERR_BASE System::Byte(64)
  1459. #define TIMERR_BASE System::Byte(96)
  1460. #define JOYERR_BASE System::Byte(160)
  1461. #define MCIERR_BASE System::Smallint(256)
  1462. #define MIXERR_BASE System::Smallint(1024)
  1463. #define MCI_STRING_OFFSET System::Smallint(512)
  1464. #define MCI_VD_OFFSET System::Smallint(1024)
  1465. #define MCI_CD_OFFSET System::Smallint(1088)
  1466. #define MCI_WAVE_OFFSET System::Smallint(1152)
  1467. #define MCI_SEQ_OFFSET System::Smallint(1216)
  1468. #define MMSYSERR_NOERROR System::Byte(0)
  1469. #define MMSYSERR_ERROR System::Byte(1)
  1470. #define MMSYSERR_BADDEVICEID System::Byte(2)
  1471. #define MMSYSERR_NOTENABLED System::Byte(3)
  1472. #define MMSYSERR_ALLOCATED System::Byte(4)
  1473. #define MMSYSERR_INVALHANDLE System::Byte(5)
  1474. #define MMSYSERR_NODRIVER System::Byte(6)
  1475. #define MMSYSERR_NOMEM System::Byte(7)
  1476. #define MMSYSERR_NOTSUPPORTED System::Byte(8)
  1477. #define MMSYSERR_BADERRNUM System::Byte(9)
  1478. #define MMSYSERR_INVALFLAG System::Byte(10)
  1479. #define MMSYSERR_INVALPARAM System::Byte(11)
  1480. #define MMSYSERR_HANDLEBUSY System::Byte(12)
  1481. #define MMSYSERR_INVALIDALIAS System::Byte(13)
  1482. #define MMSYSERR_BADDB System::Byte(14)
  1483. #define MMSYSERR_KEYNOTFOUND System::Byte(15)
  1484. #define MMSYSERR_READERROR System::Byte(16)
  1485. #define MMSYSERR_WRITEERROR System::Byte(17)
  1486. #define MMSYSERR_DELETEERROR System::Byte(18)
  1487. #define MMSYSERR_VALNOTFOUND System::Byte(19)
  1488. #define MMSYSERR_NODRIVERCB System::Byte(20)
  1489. #define MMSYSERR_LASTERROR System::Byte(20)
  1490. #define DRV_LOAD System::Byte(1)
  1491. #define DRV_ENABLE System::Byte(2)
  1492. #define DRV_OPEN System::Byte(3)
  1493. #define DRV_CLOSE System::Byte(4)
  1494. #define DRV_DISABLE System::Byte(5)
  1495. #define DRV_FREE System::Byte(6)
  1496. #define DRV_CONFIGURE System::Byte(7)
  1497. #define DRV_QUERYCONFIGURE System::Byte(8)
  1498. #define DRV_INSTALL System::Byte(9)
  1499. #define DRV_REMOVE System::Byte(10)
  1500. #define DRV_EXITSESSION System::Byte(11)
  1501. #define DRV_POWER System::Byte(15)
  1502. #define DRV_RESERVED System::Smallint(2048)
  1503. #define DRV_USER System::Smallint(16384)
  1504. #define DRVCNF_CANCEL System::Byte(0)
  1505. #define DRVCNF_OK System::Byte(1)
  1506. #define DRVCNF_RESTART System::Byte(2)
  1507. #define DRV_CANCEL System::Byte(0)
  1508. #define DRV_OK System::Byte(1)
  1509. #define DRV_RESTART System::Byte(2)
  1510. #define DRV_MCI_FIRST System::Smallint(2048)
  1511. #define DRV_MCI_LAST System::Smallint(6143)
  1512. #define CALLBACK_TYPEMASK System::Integer(458752)
  1513. #define CALLBACK_NULL System::Byte(0)
  1514. #define CALLBACK_WINDOW System::Integer(65536)
  1515. #define CALLBACK_TASK System::Integer(131072)
  1516. #define CALLBACK_FUNCTION System::Integer(196608)
  1517. #define CALLBACK_THREAD System::Integer(131072)
  1518. #define CALLBACK_EVENT System::Integer(327680)
  1519. #define SND_SYNC System::Byte(0)
  1520. #define SND_ASYNC System::Byte(1)
  1521. #define SND_NODEFAULT System::Byte(2)
  1522. #define SND_MEMORY System::Byte(4)
  1523. #define SND_LOOP System::Byte(8)
  1524. #define SND_NOSTOP System::Byte(16)
  1525. #define SND_NOWAIT System::Smallint(8192)
  1526. #define SND_ALIAS System::Integer(65536)
  1527. #define SND_ALIAS_ID System::Integer(1114112)
  1528. #define SND_FILENAME System::Integer(131072)
  1529. #define SND_RESOURCE System::Integer(262148)
  1530. #define SND_PURGE System::Byte(64)
  1531. #define SND_APPLICATION System::Byte(128)
  1532. #define SND_ALIAS_START System::Byte(0)
  1533. #define SND_ALIAS_SYSTEMASTERISK System::Smallint(10835)
  1534. #define SND_ALIAS_SYSTEMQUESTION System::Smallint(16211)
  1535. #define SND_ALIAS_SYSTEMHAND System::Smallint(18515)
  1536. #define SND_ALIAS_SYSTEMEXIT System::Smallint(17747)
  1537. #define SND_ALIAS_SYSTEMSTART System::Smallint(21331)
  1538. #define SND_ALIAS_SYSTEMWELCOME System::Smallint(22355)
  1539. #define SND_ALIAS_SYSTEMEXCLAMATION System::Smallint(8531)
  1540. #define SND_ALIAS_SYSTEMDEFAULT System::Smallint(17491)
  1541. #define WAVERR_BADFORMAT System::Byte(32)
  1542. #define WAVERR_STILLPLAYING System::Byte(33)
  1543. #define WAVERR_UNPREPARED System::Byte(34)
  1544. #define WAVERR_SYNC System::Byte(35)
  1545. #define WAVERR_LASTERROR System::Byte(35)
  1546. #define WOM_OPEN System::Smallint(955)
  1547. #define WOM_CLOSE System::Smallint(956)
  1548. #define WOM_DONE System::Smallint(957)
  1549. #define WIM_OPEN System::Smallint(958)
  1550. #define WIM_CLOSE System::Smallint(959)
  1551. #define WIM_DATA System::Smallint(960)
  1552. #define WAVE_MAPPER System::Integer(-1)
  1553. #define WAVE_FORMAT_QUERY System::Byte(1)
  1554. #define WAVE_ALLOWSYNC System::Byte(2)
  1555. #define WAVE_MAPPED System::Byte(4)
  1556. #define WHDR_DONE System::Byte(1)
  1557. #define WHDR_PREPARED System::Byte(2)
  1558. #define WHDR_BEGINLOOP System::Byte(4)
  1559. #define WHDR_ENDLOOP System::Byte(8)
  1560. #define WHDR_INQUEUE System::Byte(16)
  1561. #define WAVECAPS_PITCH System::Byte(1)
  1562. #define WAVECAPS_PLAYBACKRATE System::Byte(2)
  1563. #define WAVECAPS_VOLUME System::Byte(4)
  1564. #define WAVECAPS_LRVOLUME System::Byte(8)
  1565. #define WAVECAPS_SYNC System::Byte(16)
  1566. #define WAVECAPS_SAMPLEACCURATE System::Byte(32)
  1567. #define WAVECAPS_DIRECTSOUND System::Byte(64)
  1568. #define WAVE_INVALIDFORMAT System::Byte(0)
  1569. #define WAVE_FORMAT_1M08 System::Byte(1)
  1570. #define WAVE_FORMAT_1S08 System::Byte(2)
  1571. #define WAVE_FORMAT_1M16 System::Byte(4)
  1572. #define WAVE_FORMAT_1S16 System::Byte(8)
  1573. #define WAVE_FORMAT_2M08 System::Byte(16)
  1574. #define WAVE_FORMAT_2S08 System::Byte(32)
  1575. #define WAVE_FORMAT_2M16 System::Byte(64)
  1576. #define WAVE_FORMAT_2S16 System::Byte(128)
  1577. #define WAVE_FORMAT_4M08 System::Smallint(256)
  1578. #define WAVE_FORMAT_4S08 System::Smallint(512)
  1579. #define WAVE_FORMAT_4M16 System::Smallint(1024)
  1580. #define WAVE_FORMAT_4S16 System::Smallint(2048)
  1581. #define WAVE_FORMAT_PCM System::Byte(1)
  1582. #define MIDIERR_UNPREPARED System::Byte(64)
  1583. #define MIDIERR_STILLPLAYING System::Byte(65)
  1584. #define MIDIERR_NOMAP System::Byte(66)
  1585. #define MIDIERR_NOTREADY System::Byte(67)
  1586. #define MIDIERR_NODEVICE System::Byte(68)
  1587. #define MIDIERR_INVALIDSETUP System::Byte(69)
  1588. #define MIDIERR_BADOPENMODE System::Byte(70)
  1589. #define MIDIERR_DONT_CONTINUE System::Byte(71)
  1590. #define MIDIERR_LASTERROR System::Byte(69)
  1591. #define MIDIPATCHSIZE System::Byte(128)
  1592. #define MIM_OPEN System::Smallint(961)
  1593. #define MIM_CLOSE System::Smallint(962)
  1594. #define MIM_DATA System::Smallint(963)
  1595. #define MIM_LONGDATA System::Smallint(964)
  1596. #define MIM_ERROR System::Smallint(965)
  1597. #define MIM_LONGERROR System::Smallint(966)
  1598. #define MOM_OPEN System::Smallint(967)
  1599. #define MOM_CLOSE System::Smallint(968)
  1600. #define MOM_DONE System::Smallint(969)
  1601. #define MIM_MOREDATA System::Smallint(972)
  1602. #define MOM_POSITIONCB System::Smallint(970)
  1603. #define MIDIMAPPER System::Integer(-1)
  1604. #define MIDI_MAPPER System::Integer(-1)
  1605. #define MIDI_IO_STATUS System::Byte(32)
  1606. #define MIDI_CACHE_ALL System::Byte(1)
  1607. #define MIDI_CACHE_BESTFIT System::Byte(2)
  1608. #define MIDI_CACHE_QUERY System::Byte(3)
  1609. #define MIDI_UNCACHE System::Byte(4)
  1610. #define MOD_MIDIPORT System::Byte(1)
  1611. #define MOD_SYNTH System::Byte(2)
  1612. #define MOD_SQSYNTH System::Byte(3)
  1613. #define MOD_FMSYNTH System::Byte(4)
  1614. #define MOD_MAPPER System::Byte(5)
  1615. #define MIDICAPS_VOLUME System::Byte(1)
  1616. #define MIDICAPS_LRVOLUME System::Byte(2)
  1617. #define MIDICAPS_CACHE System::Byte(4)
  1618. #define MIDICAPS_STREAM System::Byte(8)
  1619. #define MHDR_DONE System::Byte(1)
  1620. #define MHDR_PREPARED System::Byte(2)
  1621. #define MHDR_INQUEUE System::Byte(4)
  1622. #define MHDR_ISSTRM System::Byte(8)
  1623. #define MEVT_F_SHORT System::Byte(0)
  1624. #define MEVT_F_LONG System::Integer(-2147483648)
  1625. #define MEVT_F_CALLBACK System::Integer(1073741824)
  1626. #define MEVT_SHORTMSG System::Byte(0)
  1627. #define MEVT_TEMPO System::Byte(1)
  1628. #define MEVT_NOP System::Byte(2)
  1629. #define MEVT_LONGMSG System::Byte(128)
  1630. #define MEVT_COMMENT System::Byte(130)
  1631. #define MEVT_VERSION System::Byte(132)
  1632. #define MIDISTRM_ERROR System::Shortint(-2)
  1633. #define MIDIPROP_SET System::Integer(-2147483648)
  1634. #define MIDIPROP_GET System::Integer(1073741824)
  1635. #define MIDIPROP_TIMEDIV System::Byte(1)
  1636. #define MIDIPROP_TEMPO System::Byte(2)
  1637. #define AUX_MAPPER System::Integer(-1)
  1638. #define AUXCAPS_CDAUDIO System::Byte(1)
  1639. #define AUXCAPS_AUXIN System::Byte(2)
  1640. #define AUXCAPS_VOLUME System::Byte(1)
  1641. #define AUXCAPS_LRVOLUME System::Byte(2)
  1642. #define MIXER_SHORT_NAME_CHARS System::Byte(16)
  1643. #define MIXER_LONG_NAME_CHARS System::Byte(64)
  1644. #define MIXERR_INVALLINE System::Smallint(1024)
  1645. #define MIXERR_INVALCONTROL System::Smallint(1025)
  1646. #define MIXERR_INVALVALUE System::Smallint(1026)
  1647. #define MIXERR_LASTERROR System::Smallint(1026)
  1648. #define MIXER_OBJECTF_HANDLE System::Integer(-2147483648)
  1649. #define MIXER_OBJECTF_MIXER System::Byte(0)
  1650. #define MIXER_OBJECTF_HMIXER System::Integer(-2147483648)
  1651. #define MIXER_OBJECTF_WAVEOUT System::Integer(268435456)
  1652. #define MIXER_OBJECTF_HWAVEOUT System::Integer(-1879048192)
  1653. #define MIXER_OBJECTF_WAVEIN System::Integer(536870912)
  1654. #define MIXER_OBJECTF_HWAVEIN System::Integer(-1610612736)
  1655. #define MIXER_OBJECTF_MIDIOUT System::Integer(805306368)
  1656. #define MIXER_OBJECTF_HMIDIOUT System::Integer(-1342177280)
  1657. #define MIXER_OBJECTF_MIDIIN System::Integer(1073741824)
  1658. #define MIXER_OBJECTF_HMIDIIN System::Integer(-1073741824)
  1659. #define MIXER_OBJECTF_AUX System::Integer(1342177280)
  1660. #define MIXERLINE_LINEF_ACTIVE System::Byte(1)
  1661. #define MIXERLINE_LINEF_DISCONNECTED System::Integer(32768)
  1662. #define MIXERLINE_LINEF_SOURCE System::Integer(-2147483648)
  1663. #define MIXERLINE_COMPONENTTYPE_DST_FIRST System::Byte(0)
  1664. #define MIXERLINE_COMPONENTTYPE_DST_UNDEFINED System::Byte(0)
  1665. #define MIXERLINE_COMPONENTTYPE_DST_DIGITAL System::Byte(1)
  1666. #define MIXERLINE_COMPONENTTYPE_DST_LINE System::Byte(2)
  1667. #define MIXERLINE_COMPONENTTYPE_DST_MONITOR System::Byte(3)
  1668. #define MIXERLINE_COMPONENTTYPE_DST_SPEAKERS System::Byte(4)
  1669. #define MIXERLINE_COMPONENTTYPE_DST_HEADPHONES System::Byte(5)
  1670. #define MIXERLINE_COMPONENTTYPE_DST_TELEPHONE System::Byte(6)
  1671. #define MIXERLINE_COMPONENTTYPE_DST_WAVEIN System::Byte(7)
  1672. #define MIXERLINE_COMPONENTTYPE_DST_VOICEIN System::Byte(8)
  1673. #define MIXERLINE_COMPONENTTYPE_DST_LAST System::Byte(8)
  1674. #define MIXERLINE_COMPONENTTYPE_SRC_FIRST System::Smallint(4096)
  1675. #define MIXERLINE_COMPONENTTYPE_SRC_UNDEFINED System::Smallint(4096)
  1676. #define MIXERLINE_COMPONENTTYPE_SRC_DIGITAL System::Smallint(4097)
  1677. #define MIXERLINE_COMPONENTTYPE_SRC_LINE System::Smallint(4098)
  1678. #define MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE System::Smallint(4099)
  1679. #define MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER System::Smallint(4100)
  1680. #define MIXERLINE_COMPONENTTYPE_SRC_COMPACTDISC System::Smallint(4101)
  1681. #define MIXERLINE_COMPONENTTYPE_SRC_TELEPHONE System::Smallint(4102)
  1682. #define MIXERLINE_COMPONENTTYPE_SRC_PCSPEAKER System::Smallint(4103)
  1683. #define MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT System::Smallint(4104)
  1684. #define MIXERLINE_COMPONENTTYPE_SRC_AUXILIARY System::Smallint(4105)
  1685. #define MIXERLINE_COMPONENTTYPE_SRC_ANALOG System::Smallint(4106)
  1686. #define MIXERLINE_COMPONENTTYPE_SRC_LAST System::Smallint(4106)
  1687. #define MIXERLINE_TARGETTYPE_UNDEFINED System::Byte(0)
  1688. #define MIXERLINE_TARGETTYPE_WAVEOUT System::Byte(1)
  1689. #define MIXERLINE_TARGETTYPE_WAVEIN System::Byte(2)
  1690. #define MIXERLINE_TARGETTYPE_MIDIOUT System::Byte(3)
  1691. #define MIXERLINE_TARGETTYPE_MIDIIN System::Byte(4)
  1692. #define MIXERLINE_TARGETTYPE_AUX System::Byte(5)
  1693. #define MIXER_GETLINEINFOF_DESTINATION System::Byte(0)
  1694. #define MIXER_GETLINEINFOF_SOURCE System::Byte(1)
  1695. #define MIXER_GETLINEINFOF_LINEID System::Byte(2)
  1696. #define MIXER_GETLINEINFOF_COMPONENTTYPE System::Byte(3)
  1697. #define MIXER_GETLINEINFOF_TARGETTYPE System::Byte(4)
  1698. #define MIXER_GETLINEINFOF_QUERYMASK System::Byte(15)
  1699. #define MIXERCONTROL_CONTROLF_UNIFORM System::Byte(1)
  1700. #define MIXERCONTROL_CONTROLF_MULTIPLE System::Byte(2)
  1701. #define MIXERCONTROL_CONTROLF_DISABLED System::Integer(-2147483648)
  1702. #define MIXERCONTROL_CT_CLASS_MASK System::Integer(-268435456)
  1703. #define MIXERCONTROL_CT_CLASS_CUSTOM System::Byte(0)
  1704. #define MIXERCONTROL_CT_CLASS_METER System::Integer(268435456)
  1705. #define MIXERCONTROL_CT_CLASS_SWITCH System::Integer(536870912)
  1706. #define MIXERCONTROL_CT_CLASS_NUMBER System::Integer(805306368)
  1707. #define MIXERCONTROL_CT_CLASS_SLIDER System::Integer(1073741824)
  1708. #define MIXERCONTROL_CT_CLASS_FADER System::Integer(1342177280)
  1709. #define MIXERCONTROL_CT_CLASS_TIME System::Integer(1610612736)
  1710. #define MIXERCONTROL_CT_CLASS_LIST System::Integer(1879048192)
  1711. #define MIXERCONTROL_CT_SUBCLASS_MASK System::Integer(251658240)
  1712. #define MIXERCONTROL_CT_SC_SWITCH_BOOLEAN System::Byte(0)
  1713. #define MIXERCONTROL_CT_SC_SWITCH_BUTTON System::Integer(16777216)
  1714. #define MIXERCONTROL_CT_SC_METER_POLLED System::Byte(0)
  1715. #define MIXERCONTROL_CT_SC_TIME_MICROSECS System::Byte(0)
  1716. #define MIXERCONTROL_CT_SC_TIME_MILLISECS System::Integer(16777216)
  1717. #define MIXERCONTROL_CT_SC_LIST_SINGLE System::Byte(0)
  1718. #define MIXERCONTROL_CT_SC_LIST_MULTIPLE System::Integer(16777216)
  1719. #define MIXERCONTROL_CT_UNITS_MASK System::Integer(16711680)
  1720. #define MIXERCONTROL_CT_UNITS_CUSTOM System::Byte(0)
  1721. #define MIXERCONTROL_CT_UNITS_BOOLEAN System::Integer(65536)
  1722. #define MIXERCONTROL_CT_UNITS_SIGNED System::Integer(131072)
  1723. #define MIXERCONTROL_CT_UNITS_UNSIGNED System::Integer(196608)
  1724. #define MIXERCONTROL_CT_UNITS_DECIBELS System::Integer(262144)
  1725. #define MIXERCONTROL_CT_UNITS_PERCENT System::Integer(327680)
  1726. #define MIXERCONTROL_CONTROLTYPE_CUSTOM System::Byte(0)
  1727. #define MIXERCONTROL_CONTROLTYPE_BOOLEANMETER System::Integer(268500992)
  1728. #define MIXERCONTROL_CONTROLTYPE_SIGNEDMETER System::Integer(268566528)
  1729. #define MIXERCONTROL_CONTROLTYPE_PEAKMETER System::Integer(268566529)
  1730. #define MIXERCONTROL_CONTROLTYPE_UNSIGNEDMETER System::Integer(268632064)
  1731. #define MIXERCONTROL_CONTROLTYPE_BOOLEAN System::Integer(536936448)
  1732. #define MIXERCONTROL_CONTROLTYPE_ONOFF System::Integer(536936449)
  1733. #define MIXERCONTROL_CONTROLTYPE_MUTE System::Integer(536936450)
  1734. #define MIXERCONTROL_CONTROLTYPE_MONO System::Integer(536936451)
  1735. #define MIXERCONTROL_CONTROLTYPE_LOUDNESS System::Integer(536936452)
  1736. #define MIXERCONTROL_CONTROLTYPE_STEREOENH System::Integer(536936453)
  1737. #define MIXERCONTROL_CONTROLTYPE_BUTTON System::Integer(553713664)
  1738. #define MIXERCONTROL_CONTROLTYPE_DECIBELS System::Integer(805568512)
  1739. #define MIXERCONTROL_CONTROLTYPE_SIGNED System::Integer(805437440)
  1740. #define MIXERCONTROL_CONTROLTYPE_UNSIGNED System::Integer(805502976)
  1741. #define MIXERCONTROL_CONTROLTYPE_PERCENT System::Integer(805634048)
  1742. #define MIXERCONTROL_CONTROLTYPE_SLIDER System::Integer(1073872896)
  1743. #define MIXERCONTROL_CONTROLTYPE_PAN System::Integer(1073872897)
  1744. #define MIXERCONTROL_CONTROLTYPE_QSOUNDPAN System::Integer(1073872898)
  1745. #define MIXERCONTROL_CONTROLTYPE_FADER System::Integer(1342373888)
  1746. #define MIXERCONTROL_CONTROLTYPE_VOLUME System::Integer(1342373889)
  1747. #define MIXERCONTROL_CONTROLTYPE_BASS System::Integer(1342373890)
  1748. #define MIXERCONTROL_CONTROLTYPE_TREBLE System::Integer(1342373891)
  1749. #define MIXERCONTROL_CONTROLTYPE_EQUALIZER System::Integer(1342373892)
  1750. #define MIXERCONTROL_CONTROLTYPE_SINGLESELECT System::Integer(1879113728)
  1751. #define MIXERCONTROL_CONTROLTYPE_MUX System::Integer(1879113729)
  1752. #define MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT System::Integer(1895890944)
  1753. #define MIXERCONTROL_CONTROLTYPE_MIXER System::Integer(1895890945)
  1754. #define MIXERCONTROL_CONTROLTYPE_MICROTIME System::Integer(1610809344)
  1755. #define MIXERCONTROL_CONTROLTYPE_MILLITIME System::Integer(1627586560)
  1756. #define MIXER_GETLINECONTROLSF_ALL System::Byte(0)
  1757. #define MIXER_GETLINECONTROLSF_ONEBYID System::Byte(1)
  1758. #define MIXER_GETLINECONTROLSF_ONEBYTYPE System::Byte(2)
  1759. #define MIXER_GETLINECONTROLSF_QUERYMASK System::Byte(15)
  1760. #define MIXER_GETCONTROLDETAILSF_VALUE System::Byte(0)
  1761. #define MIXER_GETCONTROLDETAILSF_LISTTEXT System::Byte(1)
  1762. #define MIXER_GETCONTROLDETAILSF_QUERYMASK System::Byte(15)
  1763. #define MIXER_SETCONTROLDETAILSF_VALUE System::Byte(0)
  1764. #define MIXER_SETCONTROLDETAILSF_CUSTOM System::Byte(1)
  1765. #define MIXER_SETCONTROLDETAILSF_QUERYMASK System::Byte(15)
  1766. #define TIMERR_NOERROR System::Byte(0)
  1767. #define TIMERR_NOCANDO System::Byte(97)
  1768. #define TIMERR_STRUCT System::Byte(129)
  1769. #define TIME_ONESHOT System::Byte(0)
  1770. #define TIME_PERIODIC System::Byte(1)
  1771. #define TIME_CALLBACK_FUNCTION System::Byte(0)
  1772. #define TIME_CALLBACK_EVENT_SET System::Byte(16)
  1773. #define TIME_CALLBACK_EVENT_PULSE System::Byte(32)
  1774. #define JOYERR_NOERROR System::Byte(0)
  1775. #define JOYERR_PARMS System::Byte(165)
  1776. #define JOYERR_NOCANDO System::Byte(166)
  1777. #define JOYERR_UNPLUGGED System::Byte(167)
  1778. #define JOY_BUTTON1 System::Byte(1)
  1779. #define JOY_BUTTON2 System::Byte(2)
  1780. #define JOY_BUTTON3 System::Byte(4)
  1781. #define JOY_BUTTON4 System::Byte(8)
  1782. #define JOY_BUTTON1CHG System::Smallint(256)
  1783. #define JOY_BUTTON2CHG System::Smallint(512)
  1784. #define JOY_BUTTON3CHG System::Smallint(1024)
  1785. #define JOY_BUTTON4CHG System::Smallint(2048)
  1786. #define JOY_BUTTON5 System::Byte(16)
  1787. #define JOY_BUTTON6 System::Byte(32)
  1788. #define JOY_BUTTON7 System::Byte(64)
  1789. #define JOY_BUTTON8 System::Byte(128)
  1790. #define JOY_BUTTON9 System::Smallint(256)
  1791. #define JOY_BUTTON10 System::Smallint(512)
  1792. #define JOY_BUTTON11 System::Smallint(1024)
  1793. #define JOY_BUTTON12 System::Smallint(2048)
  1794. #define JOY_BUTTON13 System::Smallint(4096)
  1795. #define JOY_BUTTON14 System::Smallint(8192)
  1796. #define JOY_BUTTON15 System::Smallint(16384)
  1797. #define JOY_BUTTON16 System::Integer(32768)
  1798. #define JOY_BUTTON17 System::Integer(65536)
  1799. #define JOY_BUTTON18 System::Integer(131072)
  1800. #define JOY_BUTTON19 System::Integer(262144)
  1801. #define JOY_BUTTON20 System::Integer(524288)
  1802. #define JOY_BUTTON21 System::Integer(1048576)
  1803. #define JOY_BUTTON22 System::Integer(2097152)
  1804. #define JOY_BUTTON23 System::Integer(4194304)
  1805. #define JOY_BUTTON24 System::Integer(8388608)
  1806. #define JOY_BUTTON25 System::Integer(16777216)
  1807. #define JOY_BUTTON26 System::Integer(33554432)
  1808. #define JOY_BUTTON27 System::Integer(67108864)
  1809. #define JOY_BUTTON28 System::Integer(134217728)
  1810. #define JOY_BUTTON29 System::Integer(268435456)
  1811. #define JOY_BUTTON30 System::Integer(536870912)
  1812. #define JOY_BUTTON31 System::Integer(1073741824)
  1813. #define JOY_BUTTON32 System::Integer(-2147483648)
  1814. #define JOY_POVCENTERED System::Shortint(-1)
  1815. #define JOY_POVFORWARD System::Byte(0)
  1816. #define JOY_POVRIGHT System::Smallint(9000)
  1817. #define JOY_POVBACKWARD System::Smallint(18000)
  1818. #define JOY_POVLEFT System::Smallint(27000)
  1819. #define JOY_RETURNX System::Byte(1)
  1820. #define JOY_RETURNY System::Byte(2)
  1821. #define JOY_RETURNZ System::Byte(4)
  1822. #define JOY_RETURNR System::Byte(8)
  1823. #define JOY_RETURNU System::Byte(16)
  1824. #define JOY_RETURNV System::Byte(32)
  1825. #define JOY_RETURNPOV System::Byte(64)
  1826. #define JOY_RETURNBUTTONS System::Byte(128)
  1827. #define JOY_RETURNRAWDATA System::Smallint(256)
  1828. #define JOY_RETURNPOVCTS System::Smallint(512)
  1829. #define JOY_RETURNCENTERED System::Smallint(1024)
  1830. #define JOY_USEDEADZONE System::Smallint(2048)
  1831. #define JOY_RETURNALL System::Byte(255)
  1832. #define JOY_CAL_READALWAYS System::Integer(65536)
  1833. #define JOY_CAL_READXYONLY System::Integer(131072)
  1834. #define JOY_CAL_READ3 System::Integer(262144)
  1835. #define JOY_CAL_READ4 System::Integer(524288)
  1836. #define JOY_CAL_READXONLY System::Integer(1048576)
  1837. #define JOY_CAL_READYONLY System::Integer(2097152)
  1838. #define JOY_CAL_READ5 System::Integer(4194304)
  1839. #define JOY_CAL_READ6 System::Integer(8388608)
  1840. #define JOY_CAL_READZONLY System::Integer(16777216)
  1841. #define JOY_CAL_READRONLY System::Integer(33554432)
  1842. #define JOY_CAL_READUONLY System::Integer(67108864)
  1843. #define JOY_CAL_READVONLY System::Integer(134217728)
  1844. #define JOYSTICKID1 System::Byte(0)
  1845. #define JOYSTICKID2 System::Byte(1)
  1846. #define JOYCAPS_HASZ System::Byte(0)
  1847. #define JOYCAPS_HASR System::Byte(2)
  1848. #define JOYCAPS_HASU System::Byte(4)
  1849. #define JOYCAPS_HASV System::Byte(8)
  1850. #define JOYCAPS_HASPOV System::Byte(16)
  1851. #define JOYCAPS_POV4DIR System::Byte(32)
  1852. #define JOYCAPS_POVCTS System::Byte(64)
  1853. #define MMIOERR_BASE System::Smallint(256)
  1854. #define MMIOERR_FILENOTFOUND System::Smallint(257)
  1855. #define MMIOERR_OUTOFMEMORY System::Smallint(258)
  1856. #define MMIOERR_CANNOTOPEN System::Smallint(259)
  1857. #define MMIOERR_CANNOTCLOSE System::Smallint(260)
  1858. #define MMIOERR_CANNOTREAD System::Smallint(261)
  1859. #define MMIOERR_CANNOTWRITE System::Smallint(262)
  1860. #define MMIOERR_CANNOTSEEK System::Smallint(263)
  1861. #define MMIOERR_CANNOTEXPAND System::Smallint(264)
  1862. #define MMIOERR_CHUNKNOTFOUND System::Smallint(265)
  1863. #define MMIOERR_UNBUFFERED System::Smallint(266)
  1864. #define MMIOERR_PATHNOTFOUND System::Smallint(267)
  1865. #define MMIOERR_ACCESSDENIED System::Smallint(268)
  1866. #define MMIOERR_SHARINGVIOLATION System::Smallint(269)
  1867. #define MMIOERR_NETWORKERROR System::Smallint(270)
  1868. #define MMIOERR_TOOMANYOPENFILES System::Smallint(271)
  1869. #define MMIOERR_INVALIDFILE System::Smallint(272)
  1870. #define CFSEPCHAR System::Char(43)
  1871. #define MMIO_RWMODE System::Byte(3)
  1872. #define MMIO_SHAREMODE System::Byte(112)
  1873. #define MMIO_CREATE System::Smallint(4096)
  1874. #define MMIO_PARSE System::Smallint(256)
  1875. #define MMIO_DELETE System::Smallint(512)
  1876. #define MMIO_EXIST System::Smallint(16384)
  1877. #define MMIO_ALLOCBUF System::Integer(65536)
  1878. #define MMIO_GETTEMP System::Integer(131072)
  1879. #define MMIO_DIRTY System::Integer(268435456)
  1880. #define MMIO_READ System::Byte(0)
  1881. #define MMIO_WRITE System::Byte(1)
  1882. #define MMIO_READWRITE System::Byte(2)
  1883. #define MMIO_COMPAT System::Byte(0)
  1884. #define MMIO_EXCLUSIVE System::Byte(16)
  1885. #define MMIO_DENYWRITE System::Byte(32)
  1886. #define MMIO_DENYREAD System::Byte(48)
  1887. #define MMIO_DENYNONE System::Byte(64)
  1888. #define MMIO_FHOPEN System::Byte(16)
  1889. #define MMIO_EMPTYBUF System::Byte(16)
  1890. #define MMIO_TOUPPER System::Byte(16)
  1891. #define MMIO_INSTALLPROC System::Integer(65536)
  1892. #define MMIO_GLOBALPROC System::Integer(268435456)
  1893. #define MMIO_REMOVEPROC System::Integer(131072)
  1894. #define MMIO_UNICODEPROC System::Integer(16777216)
  1895. #define MMIO_FINDPROC System::Integer(262144)
  1896. #define MMIO_FINDCHUNK System::Byte(16)
  1897. #define MMIO_FINDRIFF System::Byte(32)
  1898. #define MMIO_FINDLIST System::Byte(64)
  1899. #define MMIO_CREATERIFF System::Byte(32)
  1900. #define MMIO_CREATELIST System::Byte(64)
  1901. #define MMIOM_READ System::Byte(0)
  1902. #define MMIOM_WRITE System::Byte(1)
  1903. #define MMIOM_SEEK System::Byte(2)
  1904. #define MMIOM_OPEN System::Byte(3)
  1905. #define MMIOM_CLOSE System::Byte(4)
  1906. #define MMIOM_WRITEFLUSH System::Byte(5)
  1907. #define MMIOM_RENAME System::Byte(6)
  1908. #define MMIOM_USER System::Integer(32768)
  1909. #define FOURCC_RIFF System::Integer(1179011410)
  1910. #define FOURCC_LIST System::Integer(1414744396)
  1911. #define FOURCC_DOS System::Integer(542322500)
  1912. #define FOURCC_MEM System::Integer(541934925)
  1913. #define SEEK_SET System::Byte(0)
  1914. #define SEEK_CUR System::Byte(1)
  1915. #define SEEK_END System::Byte(2)
  1916. #define MMIO_DEFAULTBUFFER System::Smallint(8192)
  1917. #define MCIERR_INVALID_DEVICE_ID System::Smallint(257)
  1918. #define MCIERR_UNRECOGNIZED_KEYWORD System::Smallint(259)
  1919. #define MCIERR_UNRECOGNIZED_COMMAND System::Smallint(261)
  1920. #define MCIERR_HARDWARE System::Smallint(262)
  1921. #define MCIERR_INVALID_DEVICE_NAME System::Smallint(263)
  1922. #define MCIERR_OUT_OF_MEMORY System::Smallint(264)
  1923. #define MCIERR_DEVICE_OPEN System::Smallint(265)
  1924. #define MCIERR_CANNOT_LOAD_DRIVER System::Smallint(266)
  1925. #define MCIERR_MISSING_COMMAND_STRING System::Smallint(267)
  1926. #define MCIERR_PARAM_OVERFLOW System::Smallint(268)
  1927. #define MCIERR_MISSING_STRING_ARGUMENT System::Smallint(269)
  1928. #define MCIERR_BAD_INTEGER System::Smallint(270)
  1929. #define MCIERR_PARSER_INTERNAL System::Smallint(271)
  1930. #define MCIERR_DRIVER_INTERNAL System::Smallint(272)
  1931. #define MCIERR_MISSING_PARAMETER System::Smallint(273)
  1932. #define MCIERR_UNSUPPORTED_FUNCTION System::Smallint(274)
  1933. #define MCIERR_FILE_NOT_FOUND System::Smallint(275)
  1934. #define MCIERR_DEVICE_NOT_READY System::Smallint(276)
  1935. #define MCIERR_INTERNAL System::Smallint(277)
  1936. #define MCIERR_DRIVER System::Smallint(278)
  1937. #define MCIERR_CANNOT_USE_ALL System::Smallint(279)
  1938. #define MCIERR_MULTIPLE System::Smallint(280)
  1939. #define MCIERR_EXTENSION_NOT_FOUND System::Smallint(281)
  1940. #define MCIERR_OUTOFRANGE System::Smallint(282)
  1941. #define MCIERR_FLAGS_NOT_COMPATIBLE System::Smallint(284)
  1942. #define MCIERR_FILE_NOT_SAVED System::Smallint(286)
  1943. #define MCIERR_DEVICE_TYPE_REQUIRED System::Smallint(287)
  1944. #define MCIERR_DEVICE_LOCKED System::Smallint(288)
  1945. #define MCIERR_DUPLICATE_ALIAS System::Smallint(289)
  1946. #define MCIERR_BAD_CONSTANT System::Smallint(290)
  1947. #define MCIERR_MUST_USE_SHAREABLE System::Smallint(291)
  1948. #define MCIERR_MISSING_DEVICE_NAME System::Smallint(292)
  1949. #define MCIERR_BAD_TIME_FORMAT System::Smallint(293)
  1950. #define MCIERR_NO_CLOSING_QUOTE System::Smallint(294)
  1951. #define MCIERR_DUPLICATE_FLAGS System::Smallint(295)
  1952. #define MCIERR_INVALID_FILE System::Smallint(296)
  1953. #define MCIERR_NULL_PARAMETER_BLOCK System::Smallint(297)
  1954. #define MCIERR_UNNAMED_RESOURCE System::Smallint(298)
  1955. #define MCIERR_NEW_REQUIRES_ALIAS System::Smallint(299)
  1956. #define MCIERR_NOTIFY_ON_AUTO_OPEN System::Smallint(300)
  1957. #define MCIERR_NO_ELEMENT_ALLOWED System::Smallint(301)
  1958. #define MCIERR_NONAPPLICABLE_FUNCTION System::Smallint(302)
  1959. #define MCIERR_ILLEGAL_FOR_AUTO_OPEN System::Smallint(303)
  1960. #define MCIERR_FILENAME_REQUIRED System::Smallint(304)
  1961. #define MCIERR_EXTRA_CHARACTERS System::Smallint(305)
  1962. #define MCIERR_DEVICE_NOT_INSTALLED System::Smallint(306)
  1963. #define MCIERR_GET_CD System::Smallint(307)
  1964. #define MCIERR_SET_CD System::Smallint(308)
  1965. #define MCIERR_SET_DRIVE System::Smallint(309)
  1966. #define MCIERR_DEVICE_LENGTH System::Smallint(310)
  1967. #define MCIERR_DEVICE_ORD_LENGTH System::Smallint(311)
  1968. #define MCIERR_NO_INTEGER System::Smallint(312)
  1969. #define MCIERR_WAVE_OUTPUTSINUSE System::Smallint(320)
  1970. #define MCIERR_WAVE_SETOUTPUTINUSE System::Smallint(321)
  1971. #define MCIERR_WAVE_INPUTSINUSE System::Smallint(322)
  1972. #define MCIERR_WAVE_SETINPUTINUSE System::Smallint(323)
  1973. #define MCIERR_WAVE_OUTPUTUNSPECIFIED System::Smallint(324)
  1974. #define MCIERR_WAVE_INPUTUNSPECIFIED System::Smallint(325)
  1975. #define MCIERR_WAVE_OUTPUTSUNSUITABLE System::Smallint(326)
  1976. #define MCIERR_WAVE_SETOUTPUTUNSUITABLE System::Smallint(327)
  1977. #define MCIERR_WAVE_INPUTSUNSUITABLE System::Smallint(328)
  1978. #define MCIERR_WAVE_SETINPUTUNSUITABLE System::Smallint(329)
  1979. #define MCIERR_SEQ_DIV_INCOMPATIBLE System::Smallint(336)
  1980. #define MCIERR_SEQ_PORT_INUSE System::Smallint(337)
  1981. #define MCIERR_SEQ_PORT_NONEXISTENT System::Smallint(338)
  1982. #define MCIERR_SEQ_PORT_MAPNODEVICE System::Smallint(339)
  1983. #define MCIERR_SEQ_PORT_MISCERROR System::Smallint(340)
  1984. #define MCIERR_SEQ_TIMER System::Smallint(341)
  1985. #define MCIERR_SEQ_PORTUNSPECIFIED System::Smallint(342)
  1986. #define MCIERR_SEQ_NOMIDIPRESENT System::Smallint(343)
  1987. #define MCIERR_NO_WINDOW System::Smallint(346)
  1988. #define MCIERR_CREATEWINDOW System::Smallint(347)
  1989. #define MCIERR_FILE_READ System::Smallint(348)
  1990. #define MCIERR_FILE_WRITE System::Smallint(349)
  1991. #define MCIERR_NO_IDENTITY System::Smallint(350)
  1992. #define MCIERR_CUSTOM_DRIVER_BASE System::Smallint(512)
  1993. #define MCI_OPEN System::Smallint(2051)
  1994. #define MCI_CLOSE System::Smallint(2052)
  1995. #define MCI_ESCAPE System::Smallint(2053)
  1996. #define MCI_PLAY System::Smallint(2054)
  1997. #define MCI_SEEK System::Smallint(2055)
  1998. #define MCI_STOP System::Smallint(2056)
  1999. #define MCI_PAUSE System::Smallint(2057)
  2000. #define MCI_INFO System::Smallint(2058)
  2001. #define MCI_GETDEVCAPs System::Smallint(2059)
  2002. #define MCI_SPIN System::Smallint(2060)
  2003. #define MCI_SET System::Smallint(2061)
  2004. #define MCI_STEP System::Smallint(2062)
  2005. #define MCI_RECORD System::Smallint(2063)
  2006. #define MCI_SYSINFO System::Smallint(2064)
  2007. #define MCI_BREAK System::Smallint(2065)
  2008. #define MCI_SOUND System::Smallint(2066)
  2009. #define MCI_SAVE System::Smallint(2067)
  2010. #define MCI_STATUS System::Smallint(2068)
  2011. #define MCI_CUE System::Smallint(2096)
  2012. #define MCI_REALIZE System::Smallint(2112)
  2013. #define MCI_WINDOW System::Smallint(2113)
  2014. #define MCI_PUT System::Smallint(2114)
  2015. #define MCI_WHERE System::Smallint(2115)
  2016. #define MCI_FREEZE System::Smallint(2116)
  2017. #define MCI_UNFREEZE System::Smallint(2117)
  2018. #define MCI_LOAD System::Smallint(2128)
  2019. #define MCI_CUT System::Smallint(2129)
  2020. #define MCI_COPY System::Smallint(2130)
  2021. #define MCI_PASTE System::Smallint(2131)
  2022. #define MCI_UPDATE System::Smallint(2132)
  2023. #define MCI_RESUME System::Smallint(2133)
  2024. #define MCI_DELETE System::Smallint(2134)
  2025. #define MCI_USER_MESSAGES System::Smallint(3072)
  2026. #define MCI_LAST System::Smallint(4095)
  2027. #define MCI_ALL_DEVICE_ID System::Integer(-1)
  2028. #define MCI_DEVTYPE_VCR System::Smallint(513)
  2029. #define MCI_DEVTYPE_VIDEODISC System::Smallint(514)
  2030. #define MCI_DEVTYPE_OVERLAY System::Smallint(515)
  2031. #define MCI_DEVTYPE_CD_AUDIO System::Smallint(516)
  2032. #define MCI_DEVTYPE_DAT System::Smallint(517)
  2033. #define MCI_DEVTYPE_SCANNER System::Smallint(518)
  2034. #define MCI_DEVTYPE_ANIMATION System::Smallint(519)
  2035. #define MCI_DEVTYPE_DIGITAL_VIDEO System::Smallint(520)
  2036. #define MCI_DEVTYPE_OTHER System::Smallint(521)
  2037. #define MCI_DEVTYPE_WAVEFORM_AUDIO System::Smallint(522)
  2038. #define MCI_DEVTYPE_SEQUENCER System::Smallint(523)
  2039. #define MCI_DEVTYPE_FIRST System::Smallint(513)
  2040. #define MCI_DEVTYPE_LAST System::Smallint(523)
  2041. #define MCI_DEVTYPE_FIRST_USER System::Smallint(1000)
  2042. #define MCI_MODE_NOT_READY System::Smallint(524)
  2043. #define MCI_MODE_STOP System::Smallint(525)
  2044. #define MCI_MODE_PLAY System::Smallint(526)
  2045. #define MCI_MODE_RECORD System::Smallint(527)
  2046. #define MCI_MODE_SEEK System::Smallint(528)
  2047. #define MCI_MODE_PAUSE System::Smallint(529)
  2048. #define MCI_MODE_OPEN System::Smallint(530)
  2049. #define MCI_FORMAT_MILLISECONDS System::Byte(0)
  2050. #define MCI_FORMAT_HMS System::Byte(1)
  2051. #define MCI_FORMAT_MSF System::Byte(2)
  2052. #define MCI_FORMAT_FRAMES System::Byte(3)
  2053. #define MCI_FORMAT_SMPTE_24 System::Byte(4)
  2054. #define MCI_FORMAT_SMPTE_25 System::Byte(5)
  2055. #define MCI_FORMAT_SMPTE_30 System::Byte(6)
  2056. #define MCI_FORMAT_SMPTE_30DROP System::Byte(7)
  2057. #define MCI_FORMAT_BYTES System::Byte(8)
  2058. #define MCI_FORMAT_SAMPLES System::Byte(9)
  2059. #define MCI_FORMAT_TMSF System::Byte(10)
  2060. #define MCI_NOTIFY_SUCCESSFUL System::Byte(1)
  2061. #define MCI_NOTIFY_SUPERSEDED System::Byte(2)
  2062. #define MCI_NOTIFY_ABORTED System::Byte(4)
  2063. #define MCI_NOTIFY_FAILURE System::Byte(8)
  2064. #define MCI_NOTIFY System::Byte(1)
  2065. #define MCI_WAIT System::Byte(2)
  2066. #define MCI_FROM System::Byte(4)
  2067. #define MCI_TO System::Byte(8)
  2068. #define MCI_TRACK System::Byte(16)
  2069. #define MCI_OPEN_SHAREABLE System::Smallint(256)
  2070. #define MCI_OPEN_ELEMENT System::Smallint(512)
  2071. #define MCI_OPEN_ALIAS System::Smallint(1024)
  2072. #define MCI_OPEN_ELEMENT_ID System::Smallint(2048)
  2073. #define MCI_OPEN_TYPE_ID System::Smallint(4096)
  2074. #define MCI_OPEN_TYPE System::Smallint(8192)
  2075. #define MCI_SEEK_TO_START System::Smallint(256)
  2076. #define MCI_SEEK_TO_END System::Smallint(512)
  2077. #define MCI_STATUS_ITEM System::Smallint(256)
  2078. #define MCI_STATUS_START System::Smallint(512)
  2079. #define MCI_STATUS_LENGTH System::Byte(1)
  2080. #define MCI_STATUS_POSITION System::Byte(2)
  2081. #define MCI_STATUS_NUMBER_OF_TRACKS System::Byte(3)
  2082. #define MCI_STATUS_MODE System::Byte(4)
  2083. #define MCI_STATUS_MEDIA_PRESENT System::Byte(5)
  2084. #define MCI_STATUS_TIME_FORMAT System::Byte(6)
  2085. #define MCI_STATUS_READY System::Byte(7)
  2086. #define MCI_STATUS_CURRENT_TRACK System::Byte(8)
  2087. #define MCI_INFO_PRODUCT System::Smallint(256)
  2088. #define MCI_INFO_FILE System::Smallint(512)
  2089. #define MCI_INFO_MEDIA_UPC System::Smallint(1024)
  2090. #define MCI_INFO_MEDIA_IDENTITY System::Smallint(2048)
  2091. #define MCI_INFO_NAME System::Smallint(4096)
  2092. #define MCI_INFO_COPYRIGHT System::Smallint(8192)
  2093. #define MCI_GETDEVCAPS_ITEM System::Smallint(256)
  2094. #define MCI_GETDEVCAPS_CAN_RECORD System::Byte(1)
  2095. #define MCI_GETDEVCAPS_HAS_AUDIO System::Byte(2)
  2096. #define MCI_GETDEVCAPS_HAS_VIDEO System::Byte(3)
  2097. #define MCI_GETDEVCAPS_DEVICE_TYPE System::Byte(4)
  2098. #define MCI_GETDEVCAPS_USES_FILES System::Byte(5)
  2099. #define MCI_GETDEVCAPS_COMPOUND_DEVICE System::Byte(6)
  2100. #define MCI_GETDEVCAPS_CAN_EJECT System::Byte(7)
  2101. #define MCI_GETDEVCAPS_CAN_PLAY System::Byte(8)
  2102. #define MCI_GETDEVCAPS_CAN_SAVE System::Byte(9)
  2103. #define MCI_SYSINFO_QUANTITY System::Smallint(256)
  2104. #define MCI_SYSINFO_OPEN System::Smallint(512)
  2105. #define MCI_SYSINFO_NAME System::Smallint(1024)
  2106. #define MCI_SYSINFO_INSTALLNAME System::Smallint(2048)
  2107. #define MCI_SET_DOOR_OPEN System::Smallint(256)
  2108. #define MCI_SET_DOOR_CLOSED System::Smallint(512)
  2109. #define MCI_SET_TIME_FORMAT System::Smallint(1024)
  2110. #define MCI_SET_AUDIO System::Smallint(2048)
  2111. #define MCI_SET_VIDEO System::Smallint(4096)
  2112. #define MCI_SET_ON System::Smallint(8192)
  2113. #define MCI_SET_OFF System::Smallint(16384)
  2114. #define MCI_SET_AUDIO_ALL System::Byte(0)
  2115. #define MCI_SET_AUDIO_LEFT System::Byte(1)
  2116. #define MCI_SET_AUDIO_RIGHT System::Byte(2)
  2117. #define MCI_BREAK_KEY System::Smallint(256)
  2118. #define MCI_BREAK_HWND System::Smallint(512)
  2119. #define MCI_BREAK_OFF System::Smallint(1024)
  2120. #define MCI_RECORD_INSERT System::Smallint(256)
  2121. #define MCI_RECORD_OVERWRITE System::Smallint(512)
  2122. #define MCI_SOUND_NAME System::Smallint(256)
  2123. #define MCI_SAVE_FILE System::Smallint(256)
  2124. #define MCI_LOAD_FILE System::Smallint(256)
  2125. #define MCI_VD_MODE_PARK System::Smallint(1025)
  2126. #define MCI_VD_MEDIA_CLV System::Smallint(1026)
  2127. #define MCI_VD_MEDIA_CAV System::Smallint(1027)
  2128. #define MCI_VD_MEDIA_OTHER System::Smallint(1028)
  2129. #define MCI_VD_FORMAT_TRACK System::Smallint(16385)
  2130. #define MCI_VD_PLAY_REVERSE System::Integer(65536)
  2131. #define MCI_VD_PLAY_FAST System::Integer(131072)
  2132. #define MCI_VD_PLAY_SPEED System::Integer(262144)
  2133. #define MCI_VD_PLAY_SCAN System::Integer(524288)
  2134. #define MCI_VD_PLAY_SLOW System::Integer(1048576)
  2135. #define MCI_VD_SEEK_REVERSE System::Integer(65536)
  2136. #define MCI_VD_STATUS_SPEED System::Smallint(16386)
  2137. #define MCI_VD_STATUS_FORWARD System::Smallint(16387)
  2138. #define MCI_VD_STATUS_MEDIA_TYPE System::Smallint(16388)
  2139. #define MCI_VD_STATUS_SIDE System::Smallint(16389)
  2140. #define MCI_VD_STATUS_DISC_SIZE System::Smallint(16390)
  2141. #define MCI_VD_GETDEVCAPS_CLV System::Integer(65536)
  2142. #define MCI_VD_GETDEVCAPS_CAV System::Integer(131072)
  2143. #define MCI_VD_SPIN_UP System::Integer(65536)
  2144. #define MCI_VD_SPIN_DOWN System::Integer(131072)
  2145. #define MCI_VD_GETDEVCAPS_CAN_REVERSE System::Smallint(16386)
  2146. #define MCI_VD_GETDEVCAPS_FAST_RATE System::Smallint(16387)
  2147. #define MCI_VD_GETDEVCAPS_SLOW_RATE System::Smallint(16388)
  2148. #define MCI_VD_GETDEVCAPS_NORMAL_RATE System::Smallint(16389)
  2149. #define MCI_VD_STEP_FRAMES System::Integer(65536)
  2150. #define MCI_VD_STEP_REVERSE System::Integer(131072)
  2151. #define MCI_VD_ESCAPE_STRING System::Smallint(256)
  2152. #define MCI_CDA_STATUS_TYPE_TRACK System::Smallint(4001)
  2153. #define MCI_CDA_TRACK_AUDIO System::Smallint(1088)
  2154. #define MCI_CDA_TRACK_OTHER System::Smallint(1089)
  2155. #define MCI_WAVE_PCM System::Smallint(1152)
  2156. #define MCI_WAVE_MAPPER System::Smallint(1153)
  2157. #define MCI_WAVE_OPEN_BUFFER System::Integer(65536)
  2158. #define MCI_WAVE_SET_FORMATTAG System::Integer(65536)
  2159. #define MCI_WAVE_SET_CHANNELS System::Integer(131072)
  2160. #define MCI_WAVE_SET_SAMPLESPERSEC System::Integer(262144)
  2161. #define MCI_WAVE_SET_AVGBYTESPERSEC System::Integer(524288)
  2162. #define MCI_WAVE_SET_BLOCKALIGN System::Integer(1048576)
  2163. #define MCI_WAVE_SET_BITSPERSAMPLE System::Integer(2097152)
  2164. #define MCI_WAVE_INPUT System::Integer(4194304)
  2165. #define MCI_WAVE_OUTPUT System::Integer(8388608)
  2166. #define MCI_WAVE_STATUS_FORMATTAG System::Smallint(16385)
  2167. #define MCI_WAVE_STATUS_CHANNELS System::Smallint(16386)
  2168. #define MCI_WAVE_STATUS_SAMPLESPERSEC System::Smallint(16387)
  2169. #define MCI_WAVE_STATUS_AVGBYTESPERSEC System::Smallint(16388)
  2170. #define MCI_WAVE_STATUS_BLOCKALIGN System::Smallint(16389)
  2171. #define MCI_WAVE_STATUS_BITSPERSAMPLE System::Smallint(16390)
  2172. #define MCI_WAVE_STATUS_LEVEL System::Smallint(16391)
  2173. #define MCI_WAVE_SET_ANYINPUT System::Integer(67108864)
  2174. #define MCI_WAVE_SET_ANYOUTPUT System::Integer(134217728)
  2175. #define MCI_WAVE_GETDEVCAPS_INPUTS System::Smallint(16385)
  2176. #define MCI_WAVE_GETDEVCAPS_OUTPUTS System::Smallint(16386)
  2177. #define MCI_SEQ_DIV_PPQN System::Smallint(1216)
  2178. #define MCI_SEQ_DIV_SMPTE_24 System::Smallint(1217)
  2179. #define MCI_SEQ_DIV_SMPTE_25 System::Smallint(1218)
  2180. #define MCI_SEQ_DIV_SMPTE_30DROP System::Smallint(1219)
  2181. #define MCI_SEQ_DIV_SMPTE_30 System::Smallint(1220)
  2182. #define MCI_SEQ_FORMAT_SONGPTR System::Smallint(16385)
  2183. #define MCI_SEQ_FILE System::Smallint(16386)
  2184. #define MCI_SEQ_MIDI System::Smallint(16387)
  2185. #define MCI_SEQ_SMPTE System::Smallint(16388)
  2186. #define MCI_SEQ_NONE System::Integer(65533)
  2187. #define MCI_SEQ_MAPPER System::Integer(65535)
  2188. #define MCI_SEQ_STATUS_TEMPO System::Smallint(16386)
  2189. #define MCI_SEQ_STATUS_PORT System::Smallint(16387)
  2190. #define MCI_SEQ_STATUS_SLAVE System::Smallint(16391)
  2191. #define MCI_SEQ_STATUS_MASTER System::Smallint(16392)
  2192. #define MCI_SEQ_STATUS_OFFSET System::Smallint(16393)
  2193. #define MCI_SEQ_STATUS_DIVTYPE System::Smallint(16394)
  2194. #define MCI_SEQ_STATUS_NAME System::Smallint(16395)
  2195. #define MCI_SEQ_STATUS_COPYRIGHT System::Smallint(16396)
  2196. #define MCI_SEQ_SET_TEMPO System::Integer(65536)
  2197. #define MCI_SEQ_SET_PORT System::Integer(131072)
  2198. #define MCI_SEQ_SET_SLAVE System::Integer(262144)
  2199. #define MCI_SEQ_SET_MASTER System::Integer(524288)
  2200. #define MCI_SEQ_SET_OFFSET System::Integer(16777216)
  2201. #define MCI_ANIM_OPEN_WS System::Integer(65536)
  2202. #define MCI_ANIM_OPEN_PARENT System::Integer(131072)
  2203. #define MCI_ANIM_OPEN_NOSTATIC System::Integer(262144)
  2204. #define MCI_ANIM_PLAY_SPEED System::Integer(65536)
  2205. #define MCI_ANIM_PLAY_REVERSE System::Integer(131072)
  2206. #define MCI_ANIM_PLAY_FAST System::Integer(262144)
  2207. #define MCI_ANIM_PLAY_SLOW System::Integer(524288)
  2208. #define MCI_ANIM_PLAY_SCAN System::Integer(1048576)
  2209. #define MCI_ANIM_STEP_REVERSE System::Integer(65536)
  2210. #define MCI_ANIM_STEP_FRAMES System::Integer(131072)
  2211. #define MCI_ANIM_STATUS_SPEED System::Smallint(16385)
  2212. #define MCI_ANIM_STATUS_FORWARD System::Smallint(16386)
  2213. #define MCI_ANIM_STATUS_HWND System::Smallint(16387)
  2214. #define MCI_ANIM_STATUS_HPAL System::Smallint(16388)
  2215. #define MCI_ANIM_STATUS_STRETCH System::Smallint(16389)
  2216. #define MCI_ANIM_INFO_TEXT System::Integer(65536)
  2217. #define MCI_ANIM_GETDEVCAPS_CAN_REVERSE System::Smallint(16385)
  2218. #define MCI_ANIM_GETDEVCAPS_FAST_RATE System::Smallint(16386)
  2219. #define MCI_ANIM_GETDEVCAPS_SLOW_RATE System::Smallint(16387)
  2220. #define MCI_ANIM_GETDEVCAPS_NORMAL_RATE System::Smallint(16388)
  2221. #define MCI_ANIM_GETDEVCAPS_PALETTES System::Smallint(16390)
  2222. #define MCI_ANIM_GETDEVCAPS_CAN_STRETCH System::Smallint(16391)
  2223. #define MCI_ANIM_GETDEVCAPS_MAX_WINDOWS System::Smallint(16392)
  2224. #define MCI_ANIM_REALIZE_NORM System::Integer(65536)
  2225. #define MCI_ANIM_REALIZE_BKGD System::Integer(131072)
  2226. #define MCI_ANIM_WINDOW_HWND System::Integer(65536)
  2227. #define MCI_ANIM_WINDOW_STATE System::Integer(262144)
  2228. #define MCI_ANIM_WINDOW_TEXT System::Integer(524288)
  2229. #define MCI_ANIM_WINDOW_ENABLE_STRETCH System::Integer(1048576)
  2230. #define MCI_ANIM_WINDOW_DISABLE_STRETCH System::Integer(2097152)
  2231. #define MCI_ANIM_WINDOW_DEFAULT System::Byte(0)
  2232. #define MCI_ANIM_RECT System::Integer(65536)
  2233. #define MCI_ANIM_PUT_SOURCE System::Integer(131072)
  2234. #define MCI_ANIM_PUT_DESTINATION System::Integer(262144)
  2235. #define MCI_ANIM_WHERE_SOURCE System::Integer(131072)
  2236. #define MCI_ANIM_WHERE_DESTINATION System::Integer(262144)
  2237. #define MCI_ANIM_UPDATE_HDC System::Integer(131072)
  2238. #define MCI_OVLY_OPEN_WS System::Integer(65536)
  2239. #define MCI_OVLY_OPEN_PARENT System::Integer(131072)
  2240. #define MCI_OVLY_STATUS_HWND System::Smallint(16385)
  2241. #define MCI_OVLY_STATUS_STRETCH System::Smallint(16386)
  2242. #define MCI_OVLY_INFO_TEXT System::Integer(65536)
  2243. #define MCI_OVLY_GETDEVCAPS_CAN_STRETCH System::Smallint(16385)
  2244. #define MCI_OVLY_GETDEVCAPS_CAN_FREEZE System::Smallint(16386)
  2245. #define MCI_OVLY_GETDEVCAPS_MAX_WINDOWS System::Smallint(16387)
  2246. #define MCI_OVLY_WINDOW_HWND System::Integer(65536)
  2247. #define MCI_OVLY_WINDOW_STATE System::Integer(262144)
  2248. #define MCI_OVLY_WINDOW_TEXT System::Integer(524288)
  2249. #define MCI_OVLY_WINDOW_ENABLE_STRETCH System::Integer(1048576)
  2250. #define MCI_OVLY_WINDOW_DISABLE_STRETCH System::Integer(2097152)
  2251. #define MCI_OVLY_WINDOW_DEFAULT System::Byte(0)
  2252. #define MCI_OVLY_RECT System::Integer(65536)
  2253. #define MCI_OVLY_PUT_SOURCE System::Integer(131072)
  2254. #define MCI_OVLY_PUT_DESTINATION System::Integer(262144)
  2255. #define MCI_OVLY_PUT_FRAME System::Integer(524288)
  2256. #define MCI_OVLY_PUT_VIDEO System::Integer(1048576)
  2257. #define MCI_OVLY_WHERE_SOURCE System::Integer(131072)
  2258. #define MCI_OVLY_WHERE_DESTINATION System::Integer(262144)
  2259. #define MCI_OVLY_WHERE_FRAME System::Integer(524288)
  2260. #define MCI_OVLY_WHERE_VIDEO System::Integer(1048576)
  2261. #define NEWTRANSPARENT System::Byte(3)
  2262. #define QUERYROPSUPPORT System::Byte(40)
  2263. #define SELECTDIB System::Byte(41)
  2264. #define SC_SCREENSAVE System::Integer(61760)
  2265. #define mmsyst "winmm.dll"
  2266. extern "C" System::Integer __stdcall auxGetDevCapsA(System::Integer uDeviceID, PAuxCapsA lpCaps, System::Integer 
  2267.     uSize);
  2268. extern "C" System::Integer __stdcall auxGetDevCapsW(System::Integer uDeviceID, PAuxCapsW lpCaps, System::Integer 
  2269.     uSize);
  2270. extern "C" System::Integer __stdcall auxGetDevCaps(System::Integer uDeviceID, PAuxCapsA lpCaps, System::Integer 
  2271.     uSize);
  2272. extern "C" System::Integer __stdcall auxGetNumDevs(void);
  2273. extern "C" System::Integer __stdcall auxGetVolume(System::Integer uDeviceID, Windows::PDWORD lpdwVolume
  2274.     );
  2275. extern "C" System::Integer __stdcall auxOutMessage(System::Integer uDeviceID, System::Integer uMessage
  2276.     , System::Integer dw1, System::Integer dw2);
  2277. extern "C" System::Integer __stdcall auxSetVolume(System::Integer uDeviceID, System::Integer dwVolume
  2278.     );
  2279. extern "C" System::Longint __stdcall CloseDriver(System::Integer hDriver, System::Longint lParam1, System::Longint 
  2280.     lParam2);
  2281. extern "C" System::Longint __stdcall DefDriverProc(System::Integer dwDriverIdentifier, System::Integer 
  2282.     hdrvr, System::Integer uMsg, System::Longint lParam1, System::Longint lParam2);
  2283. extern "C" System::Integer __stdcall DrvGetModuleHandle(System::Integer hDriver);
  2284. extern "C" System::Integer __stdcall erMessage(System::Integer hmx, System::Integer uMsg, System::Integer 
  2285.     dwParam1, System::Integer dwParam2);
  2286. extern "C" System::Integer __stdcall GetDriverModuleHandle(System::Integer hDriver);
  2287. extern "C" System::Integer __stdcall joyGetDevCapsA(System::Integer uJoyID, PJoyCapsA lpCaps, System::Integer 
  2288.     uSize);
  2289. extern "C" System::Integer __stdcall joyGetDevCapsW(System::Integer uJoyID, PJoyCapsW lpCaps, System::Integer 
  2290.     uSize);
  2291. extern "C" System::Integer __stdcall joyGetDevCaps(System::Integer uJoyID, PJoyCapsA lpCaps, System::Integer 
  2292.     uSize);
  2293. extern "C" System::Integer __stdcall joyGetNumDevs(void);
  2294. extern "C" System::Integer __stdcall joyGetPos(System::Integer uJoyID, PJoyInfo lpInfo);
  2295. extern "C" System::Integer __stdcall joyGetPosEx(System::Integer uJoyID, PJoyInfoEx lpInfo);
  2296. extern "C" System::Integer __stdcall joyGetThreshold(System::Integer uJoyID, Windows::PUINT lpuThreshold
  2297.     );
  2298. extern "C" System::Integer __stdcall joyReleaseCapture(System::Integer uJoyID);
  2299. extern "C" System::Integer __stdcall joySetCapture(System::Integer Handle, System::Integer uJoyID, System::Integer 
  2300.     uPeriod, System::LongBool bChanged);
  2301. extern "C" System::Integer __stdcall joySetThreshold(System::Integer uJoyID, System::Integer uThreshold
  2302.     );
  2303. extern "C" System::LongBool __stdcall mciExecute(System::PChar pszCommand);
  2304. extern "C" System::Integer __stdcall mciGetCreatorTask(System::Integer mcierr);
  2305. extern "C" System::Integer __stdcall mciGetDeviceIDA(System::PChar pszDevice);
  2306. extern "C" System::Integer __stdcall mciGetDeviceIDW(System::PWideChar pszDevice);
  2307. extern "C" System::Integer __stdcall mciGetDeviceID(System::PChar pszDevice);
  2308. extern "C" System::Integer __stdcall mciGetDeviceIDFromElementIDA(System::Integer dwElementID, System::PChar 
  2309.     lpstrType);
  2310. extern "C" System::Integer __stdcall mciGetDeviceIDFromElementIDW(System::Integer dwElementID, System::PWideChar 
  2311.     lpstrType);
  2312. extern "C" System::Integer __stdcall mciGetDeviceIDFromElementID(System::Integer dwElementID, System::PChar 
  2313.     lpstrType);
  2314. extern "C" System::LongBool __stdcall mciGetErrorStringA(System::Integer mcierr, System::PChar pszText
  2315.     , System::Integer uLength);
  2316. extern "C" System::LongBool __stdcall mciGetErrorStringW(System::Integer mcierr, System::PWideChar pszText
  2317.     , System::Integer uLength);
  2318. extern "C" System::LongBool __stdcall mciGetErrorString(System::Integer mcierr, System::PChar pszText
  2319.     , System::Integer uLength);
  2320. extern "C" TFNYieldProc __stdcall mciGetYieldProc(System::Integer mcierr, Windows::PDWORD lpdwYieldData
  2321.     );
  2322. extern "C" System::Integer __stdcall mciSendCommandA(System::Integer mciId, System::Integer uMessage
  2323.     , System::Integer dwParam1, System::Integer dwParam2);
  2324. extern "C" System::Integer __stdcall mciSendCommandW(System::Integer mciId, System::Integer uMessage
  2325.     , System::Integer dwParam1, System::Integer dwParam2);
  2326. extern "C" System::Integer __stdcall mciSendCommand(System::Integer mciId, System::Integer uMessage, 
  2327.     System::Integer dwParam1, System::Integer dwParam2);
  2328. extern "C" System::Integer __stdcall mciSendStringA(System::PChar lpstrCommand, System::PChar lpstrReturnString
  2329.     , System::Integer uReturnLength, System::Integer hWndCallback);
  2330. extern "C" System::Integer __stdcall mciSendStringW(System::PWideChar lpstrCommand, System::PWideChar 
  2331.     lpstrReturnString, System::Integer uReturnLength, System::Integer hWndCallback);
  2332. extern "C" System::Integer __stdcall mciSendString(System::PChar lpstrCommand, System::PChar lpstrReturnString
  2333.     , System::Integer uReturnLength, System::Integer hWndCallback);
  2334. extern "C" System::LongBool __stdcall mciSetYieldProc(System::Integer mcierr, TFNYieldProc fpYieldProc
  2335.     , System::Integer dwYieldData);
  2336. extern "C" System::Integer __stdcall midiConnect(System::Integer hmi, System::Integer hmo, System::Pointer 
  2337.     pReserved);
  2338. extern "C" System::Integer __stdcall midiDisconnect(System::Integer hmi, System::Integer hmo, System::Pointer 
  2339.     pReserved);
  2340. extern "C" System::Integer __stdcall midiInAddBuffer(System::Integer hMidiIn, PMidiHdr lpMidiInHdr, 
  2341.     System::Integer uSize);
  2342. extern "C" System::Integer __stdcall midiInClose(System::Integer hMidiIn);
  2343. extern "C" System::Integer __stdcall midiInGetDevCapsA(System::Integer DeviceID, PMidiInCapsA lpCaps
  2344.     , System::Integer uSize);
  2345. extern "C" System::Integer __stdcall midiInGetDevCapsW(System::Integer DeviceID, PMidiInCapsW lpCaps
  2346.     , System::Integer uSize);
  2347. extern "C" System::Integer __stdcall midiInGetDevCaps(System::Integer DeviceID, PMidiInCapsA lpCaps, 
  2348.     System::Integer uSize);
  2349. extern "C" System::Integer __stdcall midiInGetErrorTextA(System::Integer mmrError, System::PChar pszText
  2350.     , System::Integer uSize);
  2351. extern "C" System::Integer __stdcall midiInGetErrorTextW(System::Integer mmrError, System::PWideChar 
  2352.     pszText, System::Integer uSize);
  2353. extern "C" System::Integer __stdcall midiInGetErrorText(System::Integer mmrError, System::PChar pszText
  2354.     , System::Integer uSize);
  2355. extern "C" System::Integer __stdcall midiInGetID(System::Integer hMidiIn, Windows::PUINT lpuDeviceID
  2356.     );
  2357. extern "C" System::Integer __stdcall midiInGetNumDevs(void);
  2358. extern "C" System::Integer __stdcall midiInMessage(System::Integer hMidiIn, System::Integer uMessage
  2359.     , System::Integer dw1, System::Integer dw2);
  2360. extern "C" System::Integer __stdcall midiInOpen(PHMIDIIN lphMidiIn, System::Integer uDeviceID, System::Integer 
  2361.     dwCallback, System::Integer dwInstance, System::Integer dwFlags);
  2362. extern "C" System::Integer __stdcall midiInPrepareHeader(System::Integer hMidiIn, PMidiHdr lpMidiInHdr
  2363.     , System::Integer uSize);
  2364. extern "C" System::Integer __stdcall midiInReset(System::Integer hMidiIn);
  2365. extern "C" System::Integer __stdcall midiInStart(System::Integer hMidiIn);
  2366. extern "C" System::Integer __stdcall midiInStop(System::Integer hMidiIn);
  2367. extern "C" System::Integer __stdcall midiInUnprepareHeader(System::Integer hMidiIn, PMidiHdr lpMidiInHdr
  2368.     , System::Integer uSize);
  2369. extern "C" System::Integer __stdcall midiOutCacheDrumPatches(System::Integer hMidiOut, System::Integer 
  2370.     uPatch, Windows::PWORD lpwKeyArray, System::Integer uFlags);
  2371. extern "C" System::Integer __stdcall midiOutCachePatches(System::Integer hMidiOut, System::Integer uBank
  2372.     , Windows::PWORD lpwPatchArray, System::Integer uFlags);
  2373. extern "C" System::Integer __stdcall midiOutClose(System::Integer hMidiOut);
  2374. extern "C" System::Integer __stdcall midiOutGetDevCapsA(System::Integer uDeviceID, PMidiOutCapsA lpCaps
  2375.     , System::Integer uSize);
  2376. extern "C" System::Integer __stdcall midiOutGetDevCapsW(System::Integer uDeviceID, PMidiOutCapsW lpCaps
  2377.     , System::Integer uSize);
  2378. extern "C" System::Integer __stdcall midiOutGetDevCaps(System::Integer uDeviceID, PMidiOutCapsA lpCaps
  2379.     , System::Integer uSize);
  2380. extern "C" System::Integer __stdcall midiOutGetErrorTextA(System::Integer mmrError, System::PChar pszText
  2381.     , System::Integer uSize);
  2382. extern "C" System::Integer __stdcall midiOutGetErrorTextW(System::Integer mmrError, System::PWideChar 
  2383.     pszText, System::Integer uSize);
  2384. extern "C" System::Integer __stdcall midiOutGetErrorText(System::Integer mmrError, System::PChar pszText
  2385.     , System::Integer uSize);
  2386. extern "C" System::Integer __stdcall midiOutGetID(System::Integer hMidiOut, Windows::PUINT lpuDeviceID
  2387.     );
  2388. extern "C" System::Integer __stdcall midiOutGetNumDevs(void);
  2389. extern "C" System::Integer __stdcall midiOutGetVolume(System::Integer hmo, Windows::PDWORD lpdwVolume
  2390.     );
  2391. extern "C" System::Integer __stdcall midiOutLongMsg(System::Integer hMidiOut, PMidiHdr lpMidiOutHdr, 
  2392.     System::Integer uSize);
  2393. extern "C" System::Integer __stdcall midiOutMessage(System::Integer hMidiOut, System::Integer uMessage
  2394.     , System::Integer dw1, System::Integer dw2);
  2395. extern "C" System::Integer __stdcall midiOutOpen(PHMIDIOUT lphMidiOut, System::Integer uDeviceID, System::Integer 
  2396.     dwCallback, System::Integer dwInstance, System::Integer dwFlags);
  2397. extern "C" System::Integer __stdcall midiOutPrepareHeader(System::Integer hMidiOut, PMidiHdr lpMidiOutHdr
  2398.     , System::Integer uSize);
  2399. extern "C" System::Integer __stdcall midiOutReset(System::Integer hMidiOut);
  2400. extern "C" System::Integer __stdcall midiOutSetVolume(System::Integer hmo, System::Integer dwVolume)
  2401.     ;
  2402. extern "C" System::Integer __stdcall midiOutShortMsg(System::Integer hMidiOut, System::Integer dwMsg
  2403.     );
  2404. extern "C" System::Integer __stdcall midiOutUnprepareHeader(System::Integer hMidiOut, PMidiHdr lpMidiOutHdr
  2405.     , System::Integer uSize);
  2406. extern "C" System::Integer __stdcall midiStreamClose(System::Integer hms);
  2407. extern "C" System::Integer __stdcall midiStreamOpen(PHMIDISTRM phms, Windows::PUINT puDeviceID, System::Integer 
  2408.     cMidi, System::Integer dwCallback, System::Integer dwInstance, System::Integer fdwOpen);
  2409. extern "C" System::Integer __stdcall midiStreamOut(System::Integer hms, PMidiHdr pmh, System::Integer 
  2410.     cbmh);
  2411. extern "C" System::Integer __stdcall midiStreamPause(System::Integer hms);
  2412. extern "C" System::Integer __stdcall midiStreamPosition(System::Integer hms, PMMTime lpmmt, System::Integer 
  2413.     cbmmt);
  2414. extern "C" System::Integer __stdcall midiStreamProperty(System::Integer hms, Windows::PByte lppropdata
  2415.     , System::Integer dwProperty);
  2416. extern "C" System::Integer __stdcall midiStreamRestart(System::Integer hms);
  2417. extern "C" System::Integer __stdcall midiStreamStop(System::Integer hms);
  2418. extern "C" System::Integer __stdcall mixerClose(System::Integer hmx);
  2419. extern "C" System::Integer __stdcall mixerGetControlDetailsA(System::Integer hmxobj, PMixerControlDetails 
  2420.     pmxcd, System::Integer fdwDetails);
  2421. extern "C" System::Integer __stdcall mixerGetControlDetailsW(System::Integer hmxobj, PMixerControlDetails 
  2422.     pmxcd, System::Integer fdwDetails);
  2423. extern "C" System::Integer __stdcall mixerGetControlDetails(System::Integer hmxobj, PMixerControlDetails 
  2424.     pmxcd, System::Integer fdwDetails);
  2425. extern "C" System::Integer __stdcall mixerGetDevCapsA(System::Integer uMxId, PMixerCapsA pmxcaps, System::Integer 
  2426.     cbmxcaps);
  2427. extern "C" System::Integer __stdcall mixerGetDevCapsW(System::Integer uMxId, PMixerCapsW pmxcaps, System::Integer 
  2428.     cbmxcaps);
  2429. extern "C" System::Integer __stdcall mixerGetDevCaps(System::Integer uMxId, PMixerCapsA pmxcaps, System::Integer 
  2430.     cbmxcaps);
  2431. extern "C" System::Integer __stdcall mixerGetID(System::Integer hmxobj, System::Integer &puMxId, System::Integer 
  2432.     fdwId);
  2433. extern "C" System::Integer __stdcall mixerGetLineControlsA(System::Integer hmxobj, PMixerLineControlsA 
  2434.     pmxlc, System::Integer fdwControls);
  2435. extern "C" System::Integer __stdcall mixerGetLineControlsW(System::Integer hmxobj, PMixerLineControlsW 
  2436.     pmxlc, System::Integer fdwControls);
  2437. extern "C" System::Integer __stdcall mixerGetLineControls(System::Integer hmxobj, PMixerLineControlsA 
  2438.     pmxlc, System::Integer fdwControls);
  2439. extern "C" System::Integer __stdcall mixerGetLineInfoA(System::Integer hmxobj, PMixerLineA pmxl, System::Integer 
  2440.     fdwInfo);
  2441. extern "C" System::Integer __stdcall mixerGetLineInfoW(System::Integer hmxobj, PMixerLineW pmxl, System::Integer 
  2442.     fdwInfo);
  2443. extern "C" System::Integer __stdcall mixerGetLineInfo(System::Integer hmxobj, PMixerLineA pmxl, System::Integer 
  2444.     fdwInfo);
  2445. extern "C" System::Integer __stdcall mixerGetNumDevs(void);
  2446. extern "C" System::Integer __stdcall mixerOpen(PHMIXER phmx, System::Integer uMxId, System::Integer 
  2447.     dwCallback, System::Integer dwInstance, System::Integer fdwOpen);
  2448. extern "C" System::Integer __stdcall mixerSetControlDetails(System::Integer hmxobj, PMixerControlDetails 
  2449.     pmxcd, System::Integer fdwDetails);
  2450. extern "C" System::Integer __stdcall mmioAdvance(System::Integer hmmio, PMMIOInfo lpmmioinfo, System::Integer 
  2451.     uFlags);
  2452. extern "C" System::Integer __stdcall mmioAscend(System::Integer hmmio, PMMCKInfo lpck, System::Integer 
  2453.     uFlags);
  2454. extern "C" System::Integer __stdcall mmioClose(System::Integer hmmio, System::Integer uFlags);
  2455. extern "C" System::Integer __stdcall mmioCreateChunk(System::Integer hmmio, PMMCKInfo lpck, System::Integer 
  2456.     uFlags);
  2457. extern "C" System::Integer __stdcall mmioDescend(System::Integer hmmio, PMMCKInfo lpck, PMMCKInfo lpckParent
  2458.     , System::Integer uFlags);
  2459. extern "C" System::Integer __stdcall mmioFlush(System::Integer hmmio, System::Integer uFlags);
  2460. extern "C" System::Integer __stdcall mmioGetInfo(System::Integer hmmio, PMMIOInfo lpmmioinfo, System::Integer 
  2461.     uFlags);
  2462. extern "C" TFNMMIOProc __stdcall mmioInstallIOProcA(System::Integer fccIOProc, TFNMMIOProc pIOProc, 
  2463.     System::Integer dwFlags);
  2464. extern "C" TFNMMIOProc __stdcall mmioInstallIOProcW(System::Integer fccIOProc, TFNMMIOProc pIOProc, 
  2465.     System::Integer dwFlags);
  2466. extern "C" TFNMMIOProc __stdcall mmioInstallIOProc(System::Integer fccIOProc, TFNMMIOProc pIOProc, System::Integer 
  2467.     dwFlags);
  2468. extern "C" System::Integer __stdcall mmioOpenA(System::PChar szFileName, PMMIOInfo lpmmioinfo, System::Integer 
  2469.     dwOpenFlags);
  2470. extern "C" System::Integer __stdcall mmioOpenW(System::PChar szFileName, PMMIOInfo lpmmioinfo, System::Integer 
  2471.     dwOpenFlags);
  2472. extern "C" System::Integer __stdcall mmioOpen(System::PChar szFileName, PMMIOInfo lpmmioinfo, System::Integer 
  2473.     dwOpenFlags);
  2474. extern "C" System::Longint __stdcall mmioRead(System::Integer hmmio, System::PChar pch, System::Longint 
  2475.     cch);
  2476. extern "C" System::Integer __stdcall mmioRenameA(System::PChar szFileName, System::PChar szNewFileName
  2477.     , PMMIOInfo lpmmioinfo, System::Integer dwRenameFlags);
  2478. extern "C" System::Integer __stdcall mmioRenameW(System::PWideChar szFileName, System::PWideChar szNewFileName
  2479.     , PMMIOInfo lpmmioinfo, System::Integer dwRenameFlags);
  2480. extern "C" System::Integer __stdcall mmioRename(System::PChar szFileName, System::PChar szNewFileName
  2481.     , PMMIOInfo lpmmioinfo, System::Integer dwRenameFlags);
  2482. extern "C" System::Longint __stdcall mmioSeek(System::Integer hmmio, System::Longint lOffset, System::Integer 
  2483.     iOrigin);
  2484. extern "C" System::Longint __stdcall mmioSendMessage(System::Integer hmmio, System::Integer uMessage
  2485.     , System::Integer lParam1, System::Integer lParam2);
  2486. extern "C" System::Integer __stdcall mmioSetBuffer(System::Integer hmmio, System::PChar pchBuffer, System::Longint 
  2487.     cchBuffer, System::Word uFlags);
  2488. extern "C" System::Integer __stdcall mmioSetInfo(System::Integer hmmio, PMMIOInfo lpmmioinfo, System::Integer 
  2489.     uFlags);
  2490. extern "C" System::Integer __stdcall mmioStringToFOURCCA(System::PChar sz, System::Integer uFlags);
  2491. extern "C" System::Integer __stdcall mmioStringToFOURCCW(System::PWideChar sz, System::Integer uFlags
  2492.     );
  2493. extern "C" System::Integer __stdcall mmioStringToFOURCC(System::PChar sz, System::Integer uFlags);
  2494. extern "C" System::Longint __stdcall mmioWrite(System::Integer hmmio, System::PChar pch, System::Longint 
  2495.     cch);
  2496. extern "C" System::Integer __stdcall mmsystemGetVersion(void);
  2497. extern "C" System::Integer __stdcall OpenDriver(System::PWideChar szDriverName, System::PWideChar szSectionName
  2498.     , System::Longint lParam2);
  2499. extern "C" System::LongBool __stdcall PlaySoundA(System::PChar pszSound, System::Integer hmod, System::Integer 
  2500.     fdwSound);
  2501. extern "C" System::LongBool __stdcall PlaySoundW(System::PWideChar pszSound, System::Integer hmod, System::Integer 
  2502.     fdwSound);
  2503. extern "C" System::LongBool __stdcall PlaySound(System::PChar pszSound, System::Integer hmod, System::Integer 
  2504.     fdwSound);
  2505. extern "C" System::Longint __stdcall SendDriverMessage(System::Integer hDriver, System::Integer message
  2506.     , System::Longint lParam1, System::Longint lParam2);
  2507. extern "C" System::LongBool __stdcall sndPlaySoundA(System::PChar lpszSoundName, System::Integer uFlags
  2508.     );
  2509. extern "C" System::LongBool __stdcall sndPlaySoundW(System::PWideChar lpszSoundName, System::Integer 
  2510.     uFlags);
  2511. extern "C" System::LongBool __stdcall sndPlaySound(System::PChar lpszSoundName, System::Integer uFlags
  2512.     );
  2513. extern "C" System::Integer __stdcall timeBeginPeriod(System::Integer uPeriod);
  2514. extern "C" System::Integer __stdcall timeEndPeriod(System::Integer uPeriod);
  2515. extern "C" System::Integer __stdcall timeGetDevCaps(PTimeCaps lpTimeCaps, System::Integer uSize);
  2516. extern "C" System::Integer __stdcall timeGetSystemTime(PMMTime lpTime, System::Word uSize);
  2517. extern "C" System::Integer __stdcall timeGetTime(void);
  2518. extern "C" System::Integer __stdcall timeKillEvent(System::Integer uTimerID);
  2519. extern "C" System::Integer __stdcall timeSetEvent(System::Integer uDelay, System::Integer uResolution
  2520.     , TFNTimeCallBack lpFunction, System::Integer dwUser, System::Integer uFlags);
  2521. extern "C" System::Integer __stdcall waveInAddBuffer(System::Integer hWaveIn, PWaveHdr lpWaveInHdr, 
  2522.     System::Integer uSize);
  2523. extern "C" System::Integer __stdcall waveInClose(System::Integer hWaveIn);
  2524. extern "C" System::Integer __stdcall waveInGetDevCapsA(System::Integer hwo, PWaveInCapsA lpCaps, System::Integer 
  2525.     uSize);
  2526. extern "C" System::Integer __stdcall waveInGetDevCapsW(System::Integer hwo, PWaveInCapsW lpCaps, System::Integer 
  2527.     uSize);
  2528. extern "C" System::Integer __stdcall waveInGetDevCaps(System::Integer hwo, PWaveInCapsA lpCaps, System::Integer 
  2529.     uSize);
  2530. extern "C" System::Integer __stdcall waveInGetErrorTextA(System::Integer mmrError, System::PChar lpText
  2531.     , System::Integer uSize);
  2532. extern "C" System::Integer __stdcall waveInGetErrorTextW(System::Integer mmrError, System::PWideChar 
  2533.     lpText, System::Integer uSize);
  2534. extern "C" System::Integer __stdcall waveInGetErrorText(System::Integer mmrError, System::PChar lpText
  2535.     , System::Integer uSize);
  2536. extern "C" System::Integer __stdcall waveInGetID(System::Integer hWaveIn, Windows::PUINT lpuDeviceID
  2537.     );
  2538. extern "C" System::Integer __stdcall waveInGetNumDevs(void);
  2539. extern "C" System::Integer __stdcall waveInGetPosition(System::Integer hWaveIn, PMMTime lpInfo, System::Integer 
  2540.     uSize);
  2541. extern "C" System::Integer __stdcall waveInMessage(System::Integer hWaveIn, System::Integer uMessage
  2542.     , System::Integer dw1, System::Integer dw2);
  2543. extern "C" System::Integer __stdcall waveInOpen(PHWAVEIN lphWaveIn, System::Integer uDeviceID, PWaveFormatEx 
  2544.     lpFormatEx, System::Integer dwCallback, System::Integer dwInstance, System::Integer dwFlags);
  2545. extern "C" System::Integer __stdcall waveInPrepareHeader(System::Integer hWaveIn, PWaveHdr lpWaveInHdr
  2546.     , System::Integer uSize);
  2547. extern "C" System::Integer __stdcall waveInReset(System::Integer hWaveIn);
  2548. extern "C" System::Integer __stdcall waveInStart(System::Integer hWaveIn);
  2549. extern "C" System::Integer __stdcall waveInStop(System::Integer hWaveIn);
  2550. extern "C" System::Integer __stdcall waveInUnprepareHeader(System::Integer hWaveIn, PWaveHdr lpWaveInHdr
  2551.     , System::Integer uSize);
  2552. extern "C" System::Integer __stdcall waveOutBreakLoop(System::Integer hWaveOut);
  2553. extern "C" System::Integer __stdcall waveOutClose(System::Integer hWaveOut);
  2554. extern "C" System::Integer __stdcall waveOutGetDevCapsA(System::Integer uDeviceID, PWaveOutCapsA lpCaps
  2555.     , System::Integer uSize);
  2556. extern "C" System::Integer __stdcall waveOutGetDevCapsW(System::Integer uDeviceID, PWaveOutCapsW lpCaps
  2557.     , System::Integer uSize);
  2558. extern "C" System::Integer __stdcall waveOutGetDevCaps(System::Integer uDeviceID, PWaveOutCapsA lpCaps
  2559.     , System::Integer uSize);
  2560. extern "C" System::Integer __stdcall waveOutGetErrorTextA(System::Integer mmrError, System::PChar lpText
  2561.     , System::Integer uSize);
  2562. extern "C" System::Integer __stdcall waveOutGetErrorTextW(System::Integer mmrError, System::PWideChar 
  2563.     lpText, System::Integer uSize);
  2564. extern "C" System::Integer __stdcall waveOutGetErrorText(System::Integer mmrError, System::PChar lpText
  2565.     , System::Integer uSize);
  2566. extern "C" System::Integer __stdcall waveOutGetID(System::Integer hWaveOut, Windows::PUINT lpuDeviceID
  2567.     );
  2568. extern "C" System::Integer __stdcall waveOutGetNumDevs(void);
  2569. extern "C" System::Integer __stdcall waveOutGetPitch(System::Integer hWaveOut, Windows::PDWORD lpdwPitch
  2570.     );
  2571. extern "C" System::Integer __stdcall waveOutGetPlaybackRate(System::Integer hWaveOut, Windows::PDWORD 
  2572.     lpdwRate);
  2573. extern "C" System::Integer __stdcall waveOutGetPosition(System::Integer hWaveOut, PMMTime lpInfo, System::Integer 
  2574.     uSize);
  2575. extern "C" System::Integer __stdcall waveOutGetVolume(System::Integer hwo, Windows::PDWORD lpdwVolume
  2576.     );
  2577. extern "C" System::Longint __stdcall waveOutMessage(System::Integer hWaveOut, System::Integer uMessage
  2578.     , System::Integer dw1, System::Integer dw2);
  2579. extern "C" System::Integer __stdcall waveOutOpen(PHWAVEOUT lphWaveOut, System::Integer uDeviceID, PWaveFormatEx 
  2580.     lpFormat, System::Integer dwCallback, System::Integer dwInstance, System::Integer dwFlags);
  2581. extern "C" System::Integer __stdcall waveOutPause(System::Integer hWaveOut);
  2582. extern "C" System::Integer __stdcall waveOutPrepareHeader(System::Integer hWaveOut, PWaveHdr lpWaveOutHdr
  2583.     , System::Integer uSize);
  2584. extern "C" System::Integer __stdcall waveOutReset(System::Integer hWaveOut);
  2585. extern "C" System::Integer __stdcall waveOutRestart(System::Integer hWaveOut);
  2586. extern "C" System::Integer __stdcall waveOutSetPitch(System::Integer hWaveOut, System::Integer dwPitch
  2587.     );
  2588. extern "C" System::Integer __stdcall waveOutSetPlaybackRate(System::Integer hWaveOut, System::Integer 
  2589.     dwRate);
  2590. extern "C" System::Integer __stdcall waveOutSetVolume(System::Integer hwo, System::Integer dwVolume)
  2591.     ;
  2592. extern "C" System::Integer __stdcall waveOutUnprepareHeader(System::Integer hWaveOut, PWaveHdr lpWaveOutHdr
  2593.     , System::Integer uSize);
  2594. extern "C" System::Integer __stdcall waveOutWrite(System::Integer hWaveOut, PWaveHdr lpWaveOutHdr, System::Integer 
  2595.     uSize);
  2596. extern System::Byte __fastcall mci_MSF_Minute(System::Longint msf);
  2597. extern System::Byte __fastcall mci_MSF_Second(System::Longint msf);
  2598. extern System::Byte __fastcall mci_MSF_Frame(System::Longint msf);
  2599. extern System::Longint __fastcall mci_Make_MSF(System::Byte m, System::Byte s, System::Byte f);
  2600. extern System::Byte __fastcall mci_TMSF_Track(System::Longint tmsf);
  2601. extern System::Byte __fastcall mci_TMSF_Minute(System::Longint tmsf);
  2602. extern System::Byte __fastcall mci_TMSF_Second(System::Longint tmsf);
  2603. extern System::Byte __fastcall mci_TMSF_Frame(System::Longint tmsf);
  2604. extern System::Longint __fastcall mci_Make_TMSF(System::Byte t, System::Byte m, System::Byte s, System::Byte 
  2605.     f);
  2606. extern System::Byte __fastcall mci_HMS_Hour(System::Longint hms);
  2607. extern System::Byte __fastcall mci_HMS_Minute(System::Longint hms);
  2608. extern System::Byte __fastcall mci_HMS_Second(System::Longint hms);
  2609. extern System::Longint __fastcall mci_Make_HMS(System::Byte h, System::Byte m, System::Byte s);
  2610. extern System::Longint __fastcall DIBIndex(System::Integer N);
  2611.  
  2612. #if defined(UNICODE)
  2613. inline System::LongBool __stdcall mciGetErrorString(System::Integer mcierr, System::PWideChar pszText
  2614.     , System::Integer uLength)
  2615. {
  2616.     return mciGetErrorStringW(mcierr, pszText, uLength);
  2617. }
  2618. #else
  2619. inline System::LongBool __stdcall mciGetErrorString(System::Integer mcierr, System::PChar pszText, System::Integer 
  2620.     uLength)
  2621. {
  2622.     return mciGetErrorStringA(mcierr, pszText, uLength);
  2623. }
  2624. #endif
  2625.  
  2626.  
  2627. #if defined(UNICODE)
  2628. inline System::Integer __stdcall mciGetDeviceIDFromElementID(System::Integer dwElementID, System::PWideChar 
  2629.     lpstrType)
  2630. {
  2631.     return mciGetDeviceIDFromElementIDW(dwElementID, lpstrType);
  2632. }
  2633. #else
  2634. inline System::Integer __stdcall mciGetDeviceIDFromElementID(System::Integer dwElementID, System::PChar 
  2635.     lpstrType)
  2636. {
  2637.     return mciGetDeviceIDFromElementIDA(dwElementID, lpstrType);
  2638. }
  2639. #endif
  2640.  
  2641.  
  2642. #if defined(UNICODE)
  2643. inline System::Integer __stdcall mciGetDeviceID(System::PWideChar pszDevice)
  2644. {
  2645.     return mciGetDeviceIDW(pszDevice);
  2646. }
  2647. #else
  2648. inline System::Integer __stdcall mciGetDeviceID(System::PChar pszDevice)
  2649. {
  2650.     return mciGetDeviceIDA(pszDevice);
  2651. }
  2652. #endif
  2653.  
  2654.  
  2655. #if defined(UNICODE)
  2656. inline System::Integer __stdcall mciSendString(System::PWideChar lpstrCommand, System::PWideChar lpstrReturnString
  2657.     , System::Integer uReturnLength, System::Integer hWndCallback)
  2658. {
  2659.     return mciSendStringW(lpstrCommand, lpstrReturnString, uReturnLength, hWndCallback);
  2660. }
  2661. #else
  2662. inline System::Integer __stdcall mciSendString(System::PChar lpstrCommand, System::PChar lpstrReturnString
  2663.     , System::Integer uReturnLength, System::Integer hWndCallback)
  2664. {
  2665.     return mciSendStringA(lpstrCommand, lpstrReturnString, uReturnLength, hWndCallback);
  2666. }
  2667. #endif
  2668.  
  2669.  
  2670. #if defined(UNICODE)
  2671. inline System::Integer __stdcall mciSendCommand(System::Integer mciId, System::Integer uMessage, System::Integer 
  2672.     dwParam1, System::Integer dwParam2)
  2673. {
  2674.     return mciSendCommandW(mciId, uMessage, dwParam1, dwParam2);
  2675. }
  2676. #else
  2677. inline System::Integer __stdcall mciSendCommand(System::Integer mciId, System::Integer uMessage, System::Integer 
  2678.     dwParam1, System::Integer dwParam2)
  2679. {
  2680.     return mciSendCommandA(mciId, uMessage, dwParam1, dwParam2);
  2681. }
  2682. #endif
  2683.  
  2684.  
  2685. #if defined(UNICODE)
  2686. inline System::Integer __stdcall mmioRename(System::PWideChar szFileName, System::PWideChar szNewFileName
  2687.     , PMMIOInfo lpmmioinfo, System::Integer dwRenameFlags)
  2688. {
  2689.     return mmioRenameW(szFileName, szNewFileName, lpmmioinfo, dwRenameFlags);
  2690. }
  2691. #else
  2692. inline System::Integer __stdcall mmioRename(System::PChar szFileName, System::PChar szNewFileName, PMMIOInfo 
  2693.     lpmmioinfo, System::Integer dwRenameFlags)
  2694. {
  2695.     return mmioRenameA(szFileName, szNewFileName, lpmmioinfo, dwRenameFlags);
  2696. }
  2697. #endif
  2698.  
  2699.  
  2700. #if defined(UNICODE)
  2701. inline System::Integer __stdcall mmioOpen(System::PChar szFileName, PMMIOInfo lpmmioinfo, System::Integer 
  2702.     dwOpenFlags)
  2703. {
  2704.     return mmioOpenW(szFileName, lpmmioinfo, dwOpenFlags);
  2705. }
  2706. #else
  2707. inline System::Integer __stdcall mmioOpen(System::PChar szFileName, PMMIOInfo lpmmioinfo, System::Integer 
  2708.     dwOpenFlags)
  2709. {
  2710.     return mmioOpenA(szFileName, lpmmioinfo, dwOpenFlags);
  2711. }
  2712. #endif
  2713.  
  2714.  
  2715. #if defined(UNICODE)
  2716. inline TFNMMIOProc __stdcall mmioInstallIOProc(System::Integer fccIOProc, TFNMMIOProc pIOProc, System::Integer 
  2717.     dwFlags)
  2718. {
  2719.     return mmioInstallIOProcW(fccIOProc, pIOProc, dwFlags);
  2720. }
  2721. #else
  2722. inline TFNMMIOProc __stdcall mmioInstallIOProc(System::Integer fccIOProc, TFNMMIOProc pIOProc, System::Integer 
  2723.     dwFlags)
  2724. {
  2725.     return mmioInstallIOProcA(fccIOProc, pIOProc, dwFlags);
  2726. }
  2727. #endif
  2728.  
  2729.  
  2730. #if defined(UNICODE)
  2731. inline System::Integer __stdcall mmioStringToFOURCC(System::PWideChar sz, System::Integer uFlags)
  2732. {
  2733.     return mmioStringToFOURCCW(sz, uFlags);
  2734. }
  2735. #else
  2736. inline System::Integer __stdcall mmioStringToFOURCC(System::PChar sz, System::Integer uFlags)
  2737. {
  2738.     return mmioStringToFOURCCA(sz, uFlags);
  2739. }
  2740. #endif
  2741.  
  2742.  
  2743. #if defined(UNICODE)
  2744. inline System::Integer __stdcall joyGetDevCaps(System::Integer uJoyID, PJoyCapsW lpCaps, System::Integer 
  2745.     uSize)
  2746. {
  2747.     return joyGetDevCapsW(uJoyID, lpCaps, uSize);
  2748. }
  2749. #else
  2750. inline System::Integer __stdcall joyGetDevCaps(System::Integer uJoyID, PJoyCapsA lpCaps, System::Integer 
  2751.     uSize)
  2752. {
  2753.     return joyGetDevCapsA(uJoyID, lpCaps, uSize);
  2754. }
  2755. #endif
  2756.  
  2757.  
  2758. #if defined(UNICODE)
  2759. inline System::Integer __stdcall mixerGetControlDetails(System::Integer hmxobj, PMixerControlDetails 
  2760.     pmxcd, System::Integer fdwDetails)
  2761. {
  2762.     return mixerGetControlDetailsW(hmxobj, pmxcd, fdwDetails);
  2763. }
  2764. #else
  2765. inline System::Integer __stdcall mixerGetControlDetails(System::Integer hmxobj, PMixerControlDetails 
  2766.     pmxcd, System::Integer fdwDetails)
  2767. {
  2768.     return mixerGetControlDetailsA(hmxobj, pmxcd, fdwDetails);
  2769. }
  2770. #endif
  2771.  
  2772.  
  2773. #if defined(UNICODE)
  2774. inline System::Integer __stdcall mixerGetLineControls(System::Integer hmxobj, PMixerLineControlsW pmxlc
  2775.     , System::Integer fdwControls)
  2776. {
  2777.     return mixerGetLineControlsW(hmxobj, pmxlc, fdwControls);
  2778. }
  2779. #else
  2780. inline System::Integer __stdcall mixerGetLineControls(System::Integer hmxobj, PMixerLineControlsA pmxlc
  2781.     , System::Integer fdwControls)
  2782. {
  2783.     return mixerGetLineControlsA(hmxobj, pmxlc, fdwControls);
  2784. }
  2785. #endif
  2786.  
  2787.  
  2788. #if defined(UNICODE)
  2789. inline System::Integer __stdcall mixerGetLineInfo(System::Integer hmxobj, PMixerLineW pmxl, System::Integer 
  2790.     fdwInfo)
  2791. {
  2792.     return mixerGetLineInfoW(hmxobj, pmxl, fdwInfo);
  2793. }
  2794. #else
  2795. inline System::Integer __stdcall mixerGetLineInfo(System::Integer hmxobj, PMixerLineA pmxl, System::Integer 
  2796.     fdwInfo)
  2797. {
  2798.     return mixerGetLineInfoA(hmxobj, pmxl, fdwInfo);
  2799. }
  2800. #endif
  2801.  
  2802.  
  2803. #if defined(UNICODE)
  2804. inline System::Integer __stdcall mixerGetDevCaps(System::Integer uMxId, PMixerCapsW pmxcaps, System::Integer 
  2805.     cbmxcaps)
  2806. {
  2807.     return mixerGetDevCapsW(uMxId, pmxcaps, cbmxcaps);
  2808. }
  2809. #else
  2810. inline System::Integer __stdcall mixerGetDevCaps(System::Integer uMxId, PMixerCapsA pmxcaps, System::Integer 
  2811.     cbmxcaps)
  2812. {
  2813.     return mixerGetDevCapsA(uMxId, pmxcaps, cbmxcaps);
  2814. }
  2815. #endif
  2816.  
  2817.  
  2818. #if defined(UNICODE)
  2819. inline System::Integer __stdcall auxGetDevCaps(System::Integer uDeviceID, PAuxCapsW lpCaps, System::Integer 
  2820.     uSize)
  2821. {
  2822.     return auxGetDevCapsW(uDeviceID, lpCaps, uSize);
  2823. }
  2824. #else
  2825. inline System::Integer __stdcall auxGetDevCaps(System::Integer uDeviceID, PAuxCapsA lpCaps, System::Integer 
  2826.     uSize)
  2827. {
  2828.     return auxGetDevCapsA(uDeviceID, lpCaps, uSize);
  2829. }
  2830. #endif
  2831.  
  2832.  
  2833. #if defined(UNICODE)
  2834. inline System::Integer __stdcall midiInGetErrorText(System::Integer mmrError, System::PWideChar pszText
  2835.     , System::Integer uSize)
  2836. {
  2837.     return midiInGetErrorTextW(mmrError, pszText, uSize);
  2838. }
  2839. #else
  2840. inline System::Integer __stdcall midiInGetErrorText(System::Integer mmrError, System::PChar pszText, 
  2841.     System::Integer uSize)
  2842. {
  2843.     return midiInGetErrorTextA(mmrError, pszText, uSize);
  2844. }
  2845. #endif
  2846.  
  2847.  
  2848. #if defined(UNICODE)
  2849. inline System::Integer __stdcall midiInGetDevCaps(System::Integer DeviceID, PMidiInCapsW lpCaps, System::Integer 
  2850.     uSize)
  2851. {
  2852.     return midiInGetDevCapsW(DeviceID, lpCaps, uSize);
  2853. }
  2854. #else
  2855. inline System::Integer __stdcall midiInGetDevCaps(System::Integer DeviceID, PMidiInCapsA lpCaps, System::Integer 
  2856.     uSize)
  2857. {
  2858.     return midiInGetDevCapsA(DeviceID, lpCaps, uSize);
  2859. }
  2860. #endif
  2861.  
  2862.  
  2863. #if defined(UNICODE)
  2864. inline System::Integer __stdcall midiOutGetErrorText(System::Integer mmrError, System::PWideChar pszText
  2865.     , System::Integer uSize)
  2866. {
  2867.     return midiOutGetErrorTextW(mmrError, pszText, uSize);
  2868. }
  2869. #else
  2870. inline System::Integer __stdcall midiOutGetErrorText(System::Integer mmrError, System::PChar pszText
  2871.     , System::Integer uSize)
  2872. {
  2873.     return midiOutGetErrorTextA(mmrError, pszText, uSize);
  2874. }
  2875. #endif
  2876.  
  2877.  
  2878. #if defined(UNICODE)
  2879. inline System::Integer __stdcall midiOutGetDevCaps(System::Integer uDeviceID, PMidiOutCapsW lpCaps, 
  2880.     System::Integer uSize)
  2881. {
  2882.     return midiOutGetDevCapsW(uDeviceID, lpCaps, uSize);
  2883. }
  2884. #else
  2885. inline System::Integer __stdcall midiOutGetDevCaps(System::Integer uDeviceID, PMidiOutCapsA lpCaps, 
  2886.     System::Integer uSize)
  2887. {
  2888.     return midiOutGetDevCapsA(uDeviceID, lpCaps, uSize);
  2889. }
  2890. #endif
  2891.  
  2892.  
  2893. #if defined(UNICODE)
  2894. inline System::Integer __stdcall waveInGetErrorText(System::Integer mmrError, System::PWideChar lpText
  2895.     , System::Integer uSize)
  2896. {
  2897.     return waveInGetErrorTextW(mmrError, lpText, uSize);
  2898. }
  2899. #else
  2900. inline System::Integer __stdcall waveInGetErrorText(System::Integer mmrError, System::PChar lpText, 
  2901.     System::Integer uSize)
  2902. {
  2903.     return waveInGetErrorTextA(mmrError, lpText, uSize);
  2904. }
  2905. #endif
  2906.  
  2907.  
  2908. #if defined(UNICODE)
  2909. inline System::Integer __stdcall waveInGetDevCaps(System::Integer hwo, PWaveInCapsW lpCaps, System::Integer 
  2910.     uSize)
  2911. {
  2912.     return waveInGetDevCapsW(hwo, lpCaps, uSize);
  2913. }
  2914. #else
  2915. inline System::Integer __stdcall waveInGetDevCaps(System::Integer hwo, PWaveInCapsA lpCaps, System::Integer 
  2916.     uSize)
  2917. {
  2918.     return waveInGetDevCapsA(hwo, lpCaps, uSize);
  2919. }
  2920. #endif
  2921.  
  2922.  
  2923. #if defined(UNICODE)
  2924. inline System::Integer __stdcall waveOutGetErrorText(System::Integer mmrError, System::PWideChar lpText
  2925.     , System::Integer uSize)
  2926. {
  2927.     return waveOutGetErrorTextW(mmrError, lpText, uSize);
  2928. }
  2929. #else
  2930. inline System::Integer __stdcall waveOutGetErrorText(System::Integer mmrError, System::PChar lpText, 
  2931.     System::Integer uSize)
  2932. {
  2933.     return waveOutGetErrorTextA(mmrError, lpText, uSize);
  2934. }
  2935. #endif
  2936.  
  2937.  
  2938. #if defined(UNICODE)
  2939. inline System::Integer __stdcall waveOutGetDevCaps(System::Integer uDeviceID, PWaveOutCapsW lpCaps, 
  2940.     System::Integer uSize)
  2941. {
  2942.     return waveOutGetDevCapsW(uDeviceID, lpCaps, uSize);
  2943. }
  2944. #else
  2945. inline System::Integer __stdcall waveOutGetDevCaps(System::Integer uDeviceID, PWaveOutCapsA lpCaps, 
  2946.     System::Integer uSize)
  2947. {
  2948.     return waveOutGetDevCapsA(uDeviceID, lpCaps, uSize);
  2949. }
  2950. #endif
  2951.  
  2952.  
  2953. #if defined(UNICODE)
  2954. inline System::LongBool __stdcall PlaySound(System::PWideChar pszSound, System::Integer hmod, System::Integer 
  2955.     fdwSound)
  2956. {
  2957.     return PlaySoundW(pszSound, hmod, fdwSound);
  2958. }
  2959. #else
  2960. inline System::LongBool __stdcall PlaySound(System::PChar pszSound, System::Integer hmod, System::Integer 
  2961.     fdwSound)
  2962. {
  2963.     return PlaySoundA(pszSound, hmod, fdwSound);
  2964. }
  2965. #endif
  2966.  
  2967.  
  2968. #if defined(UNICODE)
  2969. inline System::LongBool __stdcall sndPlaySound(System::PWideChar lpszSoundName, System::Integer uFlags
  2970.     )
  2971. {
  2972.     return sndPlaySoundW(lpszSoundName, uFlags);
  2973. }
  2974. #else
  2975. inline System::LongBool __stdcall sndPlaySound(System::PChar lpszSoundName, System::Integer uFlags)
  2976. {
  2977.     return sndPlaySoundA(lpszSoundName, uFlags);
  2978. }
  2979. #endif
  2980.  
  2981.  
  2982. }    /* namespace Mmsystem */
  2983. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  2984. using namespace Mmsystem;
  2985. #endif
  2986. //-- end unit ----------------------------------------------------------------
  2987. #endif    // MMSystem
  2988.