| 1 |  | 
 
 
 
 
 | 2 | #ifndef _MMSYSTEM_H | 
 
 
 
 
 | 3 | #define _MMSYSTEM_H | 
 
 
 
 
 | 4 | #if __GNUC__ >=3 | 
 
 
 
 
 | 5 | #pragma GCC system_header | 
 
 
 
 
 | 6 | #endif | 
 
 
 
 
 | 7 | #pragma pack(push,1) | 
 
 
 
 
 | 8 | #ifdef __cplusplus | 
 
 
 
 
 | 9 | extern "C" { | 
 
 
 
 
 | 10 | #endif | 
 
 
 
 
 | 11 | #define WINMMAPI        DECLSPEC_IMPORT | 
 
 
 
 
 | 12 | #define _loadds | 
 
 
 
 
 | 13 | #define _huge | 
 
 
 
 
 | 14 | #define MAXPNAMELEN 32 | 
 
 
 
 
 | 15 | #define MAXERRORLENGTH 256 | 
 
 
 
 
 | 16 | #define MAX_JOYSTICKOEMVXDNAME 260 | 
 
 
 
 
 | 17 | #define _MMRESULT_ | 
 
 
 
 
 | 18 | #define TIME_MS 1 | 
 
 
 
 
 | 19 | #define TIME_SAMPLES 2 | 
 
 
 
 
 | 20 | #define TIME_BYTES 4 | 
 
 
 
 
 | 21 | #define TIME_SMPTE 8 | 
 
 
 
 
 | 22 | #define TIME_MIDI 16 | 
 
 
 
 
 | 23 | #define TIME_TICKS 32 | 
 
 
 
 
 | 24 | #define MAKEFOURCC(c0,c1,c2,c3) ((DWORD)(BYTE)(c0)|((DWORD)(BYTE)(c1)<<8)|((DWORD)(BYTE)(c2)<<16)|((DWORD)(BYTE)(c3)<<24)) | 
 
 
 
 
 | 25 | #ifndef mmioFOURCC | 
 
 
 
 
 | 26 | #define mmioFOURCC(c0,c1,c2,c3) MAKEFOURCC(c0,c1,c2,c3) | 
 
 
 
 
 | 27 | #endif | 
 
 
 
 
 | 28 | #define MM_JOY1MOVE 0x3A0 | 
 
 
 
 
 | 29 | #define MM_JOY2MOVE 0x3A1 | 
 
 
 
 
 | 30 | #define MM_JOY1ZMOVE 0x3A2 | 
 
 
 
 
 | 31 | #define MM_JOY2ZMOVE 0x3A3 | 
 
 
 
 
 | 32 | #define MM_JOY1BUTTONDOWN 0x3B5 | 
 
 
 
 
 | 33 | #define MM_JOY2BUTTONDOWN 0x3B6 | 
 
 
 
 
 | 34 | #define MM_JOY1BUTTONUP 0x3B7 | 
 
 
 
 
 | 35 | #define MM_JOY2BUTTONUP 0x3B8 | 
 
 
 
 
 | 36 | #define MM_MCINOTIFY 0x3B9 | 
 
 
 
 
 | 37 | #define MM_WOM_OPEN 0x3BB | 
 
 
 
 
 | 38 | #define MM_WOM_CLOSE 0x3BC | 
 
 
 
 
 | 39 | #define MM_WOM_DONE 0x3BD | 
 
 
 
 
 | 40 | #define MM_WIM_OPEN 0x3BE | 
 
 
 
 
 | 41 | #define MM_WIM_CLOSE 0x3BF | 
 
 
 
 
 | 42 | #define MM_WIM_DATA 0x3C0 | 
 
 
 
 
 | 43 | #define MM_MIM_OPEN 0x3C1 | 
 
 
 
 
 | 44 | #define MM_MIM_CLOSE 0x3C2 | 
 
 
 
 
 | 45 | #define MM_MIM_DATA 0x3C3 | 
 
 
 
 
 | 46 | #define MM_MIM_LONGDATA 0x3C4 | 
 
 
 
 
 | 47 | #define MM_MIM_ERROR 0x3C5 | 
 
 
 
 
 | 48 | #define MM_MIM_LONGERROR 0x3C6 | 
 
 
 
 
 | 49 | #define MM_MOM_OPEN 0x3C7 | 
 
 
 
 
 | 50 | #define MM_MOM_CLOSE 0x3C8 | 
 
 
 
 
 | 51 | #define MM_MOM_DONE 0x3C9 | 
 
 
 
 
 | 52 | #define MM_DRVM_OPEN 0x3D0 | 
 
 
 
 
 | 53 | #define MM_DRVM_CLOSE 0x3D1 | 
 
 
 
 
 | 54 | #define MM_DRVM_DATA 0x3D2 | 
 
 
 
 
 | 55 | #define MM_DRVM_ERROR 0x3D3 | 
 
 
 
 
 | 56 | #define MM_STREAM_OPEN  0x3D4 | 
 
 
 
 
 | 57 | #define MM_STREAM_CLOSE 0x3D5 | 
 
 
 
 
 | 58 | #define MM_STREAM_DONE  0x3D6 | 
 
 
 
 
 | 59 | #define MM_STREAM_ERROR 0x3D7 | 
 
 
 
 
 | 60 | #define MM_MOM_POSITIONCB 0x3CA | 
 
 
 
 
 | 61 | #define MM_MCISIGNAL 0x3CB | 
 
 
 
 
 | 62 | #define MM_MIM_MOREDATA 0x3CC | 
 
 
 
 
 | 63 | #define MM_MIXM_LINE_CHANGE 0x3D0 | 
 
 
 
 
 | 64 | #define MM_MIXM_CONTROL_CHANGE 0x3D1 | 
 
 
 
 
 | 65 | #define MMSYSERR_BASE 0 | 
 
 
 
 
 | 66 | #define WAVERR_BASE 32 | 
 
 
 
 
 | 67 | #define MIDIERR_BASE 64 | 
 
 
 
 
 | 68 | #define TIMERR_BASE 96 | 
 
 
 
 
 | 69 | #define JOYERR_BASE 160 | 
 
 
 
 
 | 70 | #define MCIERR_BASE 256 | 
 
 
 
 
 | 71 | #define MIXERR_BASE 1024 | 
 
 
 
 
 | 72 | #define MCI_STRING_OFFSET 512 | 
 
 
 
 
 | 73 | #define MCI_VD_OFFSET 1024 | 
 
 
 
 
 | 74 | #define MCI_CD_OFFSET 1088 | 
 
 
 
 
 | 75 | #define MCI_WAVE_OFFSET 1152 | 
 
 
 
 
 | 76 | #define MCI_SEQ_OFFSET 1216 | 
 
 
 
 
 | 77 | #define MMSYSERR_NOERROR 0 | 
 
 
 
 
 | 78 | #define MMSYSERR_ERROR (MMSYSERR_BASE+1) | 
 
 
 
 
 | 79 | #define MMSYSERR_BADDEVICEID (MMSYSERR_BASE+2) | 
 
 
 
 
 | 80 | #define MMSYSERR_NOTENABLED (MMSYSERR_BASE+3) | 
 
 
 
 
 | 81 | #define MMSYSERR_ALLOCATED (MMSYSERR_BASE+4) | 
 
 
 
 
 | 82 | #define MMSYSERR_INVALHANDLE (MMSYSERR_BASE+5) | 
 
 
 
 
 | 83 | #define MMSYSERR_NODRIVER (MMSYSERR_BASE+6) | 
 
 
 
 
 | 84 | #define MMSYSERR_NOMEM (MMSYSERR_BASE+7) | 
 
 
 
 
 | 85 | #define MMSYSERR_NOTSUPPORTED (MMSYSERR_BASE+8) | 
 
 
 
 
 | 86 | #define MMSYSERR_BADERRNUM (MMSYSERR_BASE+9) | 
 
 
 
 
 | 87 | #define MMSYSERR_INVALFLAG (MMSYSERR_BASE+10) | 
 
 
 
 
 | 88 | #define MMSYSERR_INVALPARAM (MMSYSERR_BASE+11) | 
 
 
 
 
 | 89 | #define MMSYSERR_HANDLEBUSY (MMSYSERR_BASE+12) | 
 
 
 
 
 | 90 | #define MMSYSERR_INVALIDALIAS (MMSYSERR_BASE+13) | 
 
 
 
 
 | 91 | #define MMSYSERR_BADDB (MMSYSERR_BASE+14) | 
 
 
 
 
 | 92 | #define MMSYSERR_KEYNOTFOUND (MMSYSERR_BASE+15) | 
 
 
 
 
 | 93 | #define MMSYSERR_READERROR (MMSYSERR_BASE+16) | 
 
 
 
 
 | 94 | #define MMSYSERR_WRITEERROR (MMSYSERR_BASE+17) | 
 
 
 
 
 | 95 | #define MMSYSERR_DELETEERROR (MMSYSERR_BASE+18) | 
 
 
 
 
 | 96 | #define MMSYSERR_VALNOTFOUND (MMSYSERR_BASE+19) | 
 
 
 
 
 | 97 | #define MMSYSERR_NODRIVERCB (MMSYSERR_BASE+20) | 
 
 
 
 
 | 98 | #define MMSYSERR_LASTERROR (MMSYSERR_BASE+20) | 
 
 
 
 
 | 99 | #define DRV_LOAD 1 | 
 
 
 
 
 | 100 | #define DRV_ENABLE 2 | 
 
 
 
 
 | 101 | #define DRV_OPEN 3 | 
 
 
 
 
 | 102 | #define DRV_CLOSE 4 | 
 
 
 
 
 | 103 | #define DRV_DISABLE 5 | 
 
 
 
 
 | 104 | #define DRV_FREE 6 | 
 
 
 
 
 | 105 | #define DRV_CONFIGURE 7 | 
 
 
 
 
 | 106 | #define DRV_QUERYCONFIGURE 8 | 
 
 
 
 
 | 107 | #define DRV_INSTALL 9 | 
 
 
 
 
 | 108 | #define DRV_REMOVE 10 | 
 
 
 
 
 | 109 | #define DRV_EXITSESSION 11 | 
 
 
 
 
 | 110 | #define DRV_POWER 15 | 
 
 
 
 
 | 111 | #define DRV_RESERVED 0x800 | 
 
 
 
 
 | 112 | #define DRV_USER 0x4000 | 
 
 
 
 
 | 113 | #define DRVCNF_CANCEL 0 | 
 
 
 
 
 | 114 | #define DRVCNF_OK 1 | 
 
 
 
 
 | 115 | #define DRVCNF_RESTART 2 | 
 
 
 
 
 | 116 | #define DRV_CANCEL DRVCNF_CANCEL | 
 
 
 
 
 | 117 | #define DRV_OK DRVCNF_OK | 
 
 
 
 
 | 118 | #define DRV_RESTART DRVCNF_RESTART | 
 
 
 
 
 | 119 | #define DRV_MCI_FIRST DRV_RESERVED | 
 
 
 
 
 | 120 | #define DRV_MCI_LAST (DRV_RESERVED+0xFFF) | 
 
 
 
 
 | 121 | #define CALLBACK_TYPEMASK 0x70000 | 
 
 
 
 
 | 122 | #define CALLBACK_NULL 0 | 
 
 
 
 
 | 123 | #define CALLBACK_WINDOW 0x10000 | 
 
 
 
 
 | 124 | #define CALLBACK_TASK 0x20000 | 
 
 
 
 
 | 125 | #define CALLBACK_FUNCTION 0x30000 | 
 
 
 
 
 | 126 | #define CALLBACK_THREAD CALLBACK_TASK | 
 
 
 
 
 | 127 | #define CALLBACK_EVENT 0x50000 | 
 
 
 
 
 | 128 | #define SND_SYNC 0 | 
 
 
 
 
 | 129 | #define SND_ASYNC 1 | 
 
 
 
 
 | 130 | #define SND_NODEFAULT 2 | 
 
 
 
 
 | 131 | #define SND_MEMORY 4 | 
 
 
 
 
 | 132 | #define SND_LOOP 8 | 
 
 
 
 
 | 133 | #define SND_NOSTOP 16 | 
 
 
 
 
 | 134 | #define SND_NOWAIT      0x2000 | 
 
 
 
 
 | 135 | #define SND_ALIAS 0x10000 | 
 
 
 
 
 | 136 | #define SND_ALIAS_ID    0x110000 | 
 
 
 
 
 | 137 | #define SND_FILENAME 0x20000 | 
 
 
 
 
 | 138 | #define SND_RESOURCE 0x40004 | 
 
 
 
 
 | 139 | #define SND_PURGE 0x40 | 
 
 
 
 
 | 140 | #define SND_APPLICATION 0x80 | 
 
 
 
 
 | 141 | #define SND_ALIAS_START 0 | 
 
 
 
 
 | 142 | #define sndAlias(c0,c1) (SND_ALIAS_START+((DWORD)(BYTE)(c0)|((DWORD)(BYTE)(c1)<<8))) | 
 
 
 
 
 | 143 | #define SND_ALIAS_SYSTEMASTERISK sndAlias('S','*') | 
 
 
 
 
 | 144 | #define SND_ALIAS_SYSTEMQUESTION sndAlias('S','?') | 
 
 
 
 
 | 145 | #define SND_ALIAS_SYSTEMHAND sndAlias('S','H') | 
 
 
 
 
 | 146 | #define SND_ALIAS_SYSTEMEXIT sndAlias('S','E') | 
 
 
 
 
 | 147 | #define SND_ALIAS_SYSTEMSTART sndAlias('S','S') | 
 
 
 
 
 | 148 | #define SND_ALIAS_SYSTEMWELCOME sndAlias('S','W') | 
 
 
 
 
 | 149 | #define SND_ALIAS_SYSTEMEXCLAMATION sndAlias('S','!') | 
 
 
 
 
 | 150 | #define SND_ALIAS_SYSTEMDEFAULT sndAlias('S','D') | 
 
 
 
 
 | 151 | #define WAVERR_BADFORMAT (WAVERR_BASE + 0) | 
 
 
 
 
 | 152 | #define WAVERR_STILLPLAYING (WAVERR_BASE + 1) | 
 
 
 
 
 | 153 | #define WAVERR_UNPREPARED (WAVERR_BASE + 2) | 
 
 
 
 
 | 154 | #define WAVERR_SYNC (WAVERR_BASE + 3) | 
 
 
 
 
 | 155 | #define WAVERR_LASTERROR (WAVERR_BASE + 3) | 
 
 
 
 
 | 156 | #define WOM_OPEN MM_WOM_OPEN | 
 
 
 
 
 | 157 | #define WOM_CLOSE MM_WOM_CLOSE | 
 
 
 
 
 | 158 | #define WOM_DONE MM_WOM_DONE | 
 
 
 
 
 | 159 | #define WIM_OPEN MM_WIM_OPEN | 
 
 
 
 
 | 160 | #define WIM_CLOSE MM_WIM_CLOSE | 
 
 
 
 
 | 161 | #define WIM_DATA MM_WIM_DATA | 
 
 
 
 
 | 162 | #define WAVE_MAPPER ((UINT)-1) | 
 
 
 
 
 | 163 | #define WAVE_FORMAT_QUERY 1 | 
 
 
 
 
 | 164 | #define WAVE_ALLOWSYNC 2 | 
 
 
 
 
 | 165 | #define WAVE_MAPPED 4 | 
 
 
 
 
 | 166 | #define WAVE_FORMAT_DIRECT 8 | 
 
 
 
 
 | 167 | #define WAVE_FORMAT_DIRECT_QUERY (WAVE_FORMAT_QUERY|WAVE_FORMAT_DIRECT) | 
 
 
 
 
 | 168 | #define WHDR_DONE 1 | 
 
 
 
 
 | 169 | #define WHDR_PREPARED 2 | 
 
 
 
 
 | 170 | #define WHDR_BEGINLOOP 4 | 
 
 
 
 
 | 171 | #define WHDR_ENDLOOP 8 | 
 
 
 
 
 | 172 | #define WHDR_INQUEUE 16 | 
 
 
 
 
 | 173 | #define WAVECAPS_PITCH 1 | 
 
 
 
 
 | 174 | #define WAVECAPS_PLAYBACKRATE 2 | 
 
 
 
 
 | 175 | #define WAVECAPS_VOLUME 4 | 
 
 
 
 
 | 176 | #define WAVECAPS_LRVOLUME 8 | 
 
 
 
 
 | 177 | #define WAVECAPS_SYNC 16 | 
 
 
 
 
 | 178 | #define WAVECAPS_SAMPLEACCURATE 32 | 
 
 
 
 
 | 179 | #define WAVECAPS_DIRECTSOUND 64 | 
 
 
 
 
 | 180 | #define WAVE_INVALIDFORMAT 0 | 
 
 
 
 
 | 181 | #define WAVE_FORMAT_1M08 1 | 
 
 
 
 
 | 182 | #define WAVE_FORMAT_1S08 2 | 
 
 
 
 
 | 183 | #define WAVE_FORMAT_1M16 4 | 
 
 
 
 
 | 184 | #define WAVE_FORMAT_1S16 8 | 
 
 
 
 
 | 185 | #define WAVE_FORMAT_2M08 16 | 
 
 
 
 
 | 186 | #define WAVE_FORMAT_2S08 32 | 
 
 
 
 
 | 187 | #define WAVE_FORMAT_2M16 64 | 
 
 
 
 
 | 188 | #define WAVE_FORMAT_2S16 128 | 
 
 
 
 
 | 189 | #define WAVE_FORMAT_4M08 256 | 
 
 
 
 
 | 190 | #define WAVE_FORMAT_4S08 512 | 
 
 
 
 
 | 191 | #define WAVE_FORMAT_4M16 1024 | 
 
 
 
 
 | 192 | #define WAVE_FORMAT_4S16 2048 | 
 
 
 
 
 | 193 | #define WAVE_FORMAT_PCM 1 | 
 
 
 
 
 | 194 | #define WAVE_FORMAT_EXTENSIBLE 0xFFFE | 
 
 
 
 
 | 195 | #define MIDIERR_UNPREPARED MIDIERR_BASE | 
 
 
 
 
 | 196 | #define MIDIERR_STILLPLAYING (MIDIERR_BASE+1) | 
 
 
 
 
 | 197 | #define MIDIERR_NOMAP (MIDIERR_BASE+2) | 
 
 
 
 
 | 198 | #define MIDIERR_NOTREADY (MIDIERR_BASE+3) | 
 
 
 
 
 | 199 | #define MIDIERR_NODEVICE (MIDIERR_BASE+4) | 
 
 
 
 
 | 200 | #define MIDIERR_INVALIDSETUP (MIDIERR_BASE+5) | 
 
 
 
 
 | 201 | #define MIDIERR_BADOPENMODE (MIDIERR_BASE+6) | 
 
 
 
 
 | 202 | #define MIDIERR_DONT_CONTINUE (MIDIERR_BASE+7) | 
 
 
 
 
 | 203 | #define MIDIERR_LASTERROR (MIDIERR_BASE+7) | 
 
 
 
 
 | 204 | #define MIDIPATCHSIZE 128 | 
 
 
 
 
 | 205 | #define MIM_OPEN MM_MIM_OPEN | 
 
 
 
 
 | 206 | #define MIM_CLOSE MM_MIM_CLOSE | 
 
 
 
 
 | 207 | #define MIM_DATA MM_MIM_DATA | 
 
 
 
 
 | 208 | #define MIM_LONGDATA MM_MIM_LONGDATA | 
 
 
 
 
 | 209 | #define MIM_ERROR MM_MIM_ERROR | 
 
 
 
 
 | 210 | #define MIM_LONGERROR MM_MIM_LONGERROR | 
 
 
 
 
 | 211 | #define MOM_OPEN MM_MOM_OPEN | 
 
 
 
 
 | 212 | #define MOM_CLOSE MM_MOM_CLOSE | 
 
 
 
 
 | 213 | #define MOM_DONE MM_MOM_DONE | 
 
 
 
 
 | 214 | #define MIM_MOREDATA MM_MIM_MOREDATA | 
 
 
 
 
 | 215 | #define MOM_POSITIONCB MM_MOM_POSITIONCB | 
 
 
 
 
 | 216 | #define MIDIMAPPER ((UINT)-1) | 
 
 
 
 
 | 217 | #define MIDI_MAPPER ((UINT)-1) | 
 
 
 
 
 | 218 | #define MIDI_IO_STATUS 32 | 
 
 
 
 
 | 219 | #define MIDI_CACHE_ALL 1 | 
 
 
 
 
 | 220 | #define MIDI_CACHE_BESTFIT 2 | 
 
 
 
 
 | 221 | #define MIDI_CACHE_QUERY 3 | 
 
 
 
 
 | 222 | #define MIDI_UNCACHE 4 | 
 
 
 
 
 | 223 | #define MOD_MIDIPORT 1 | 
 
 
 
 
 | 224 | #define MOD_SYNTH 2 | 
 
 
 
 
 | 225 | #define MOD_SQSYNTH 3 | 
 
 
 
 
 | 226 | #define MOD_FMSYNTH 4 | 
 
 
 
 
 | 227 | #define MOD_MAPPER 5 | 
 
 
 
 
 | 228 | #define MIDICAPS_VOLUME 1 | 
 
 
 
 
 | 229 | #define MIDICAPS_LRVOLUME 2 | 
 
 
 
 
 | 230 | #define MIDICAPS_CACHE 4 | 
 
 
 
 
 | 231 | #define MIDICAPS_STREAM 8 | 
 
 
 
 
 | 232 | #define MHDR_DONE 1 | 
 
 
 
 
 | 233 | #define MHDR_PREPARED 2 | 
 
 
 
 
 | 234 | #define MHDR_INQUEUE 4 | 
 
 
 
 
 | 235 | #define MHDR_ISSTRM 8 | 
 
 
 
 
 | 236 | #define MEVT_F_SHORT 0 | 
 
 
 
 
 | 237 | #define MEVT_F_LONG 0x80000000 | 
 
 
 
 
 | 238 | #define MEVT_F_CALLBACK 0x40000000 | 
 
 
 
 
 | 239 | #define MEVT_EVENTTYPE(x) ((BYTE)(((x)>>24)&0xFF)) | 
 
 
 
 
 | 240 | #define MEVT_EVENTPARM(x) ((DWORD)((x)&0xFFFFFFL)) | 
 
 
 
 
 | 241 | #define MEVT_SHORTMSG 0 | 
 
 
 
 
 | 242 | #define MEVT_TEMPO 1 | 
 
 
 
 
 | 243 | #define MEVT_NOP 2 | 
 
 
 
 
 | 244 | #define MEVT_LONGMSG ((BYTE)0x80) | 
 
 
 
 
 | 245 | #define MEVT_COMMENT ((BYTE)0x82) | 
 
 
 
 
 | 246 | #define MEVT_VERSION ((BYTE)0x84) | 
 
 
 
 
 | 247 | #define MIDISTRM_ERROR (-2) | 
 
 
 
 
 | 248 | #define MIDIPROP_SET 0x80000000 | 
 
 
 
 
 | 249 | #define MIDIPROP_GET 0x40000000 | 
 
 
 
 
 | 250 | #define MIDIPROP_TIMEDIV 1 | 
 
 
 
 
 | 251 | #define MIDIPROP_TEMPO 2 | 
 
 
 
 
 | 252 | #define AUX_MAPPER ((UINT)-1) | 
 
 
 
 
 | 253 | #define AUXCAPS_CDAUDIO 1 | 
 
 
 
 
 | 254 | #define AUXCAPS_AUXIN 2 | 
 
 
 
 
 | 255 | #define AUXCAPS_VOLUME 1 | 
 
 
 
 
 | 256 | #define AUXCAPS_LRVOLUME 2 | 
 
 
 
 
 | 257 | #define MIXER_SHORT_NAME_CHARS 16 | 
 
 
 
 
 | 258 | #define MIXER_LONG_NAME_CHARS 64 | 
 
 
 
 
 | 259 | #define MIXERR_INVALLINE MIXERR_BASE | 
 
 
 
 
 | 260 | #define MIXERR_INVALCONTROL (MIXERR_BASE+1) | 
 
 
 
 
 | 261 | #define MIXERR_INVALVALUE (MIXERR_BASE+2) | 
 
 
 
 
 | 262 | #define MIXERR_LASTERROR (MIXERR_BASE+2) | 
 
 
 
 
 | 263 | #define MIXER_OBJECTF_HANDLE 0x80000000 | 
 
 
 
 
 | 264 | #define MIXER_OBJECTF_MIXER 0 | 
 
 
 
 
 | 265 | #define MIXER_OBJECTF_HMIXER (MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_MIXER) | 
 
 
 
 
 | 266 | #define MIXER_OBJECTF_WAVEOUT 0x10000000 | 
 
 
 
 
 | 267 | #define MIXER_OBJECTF_HWAVEOUT (MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_WAVEOUT) | 
 
 
 
 
 | 268 | #define MIXER_OBJECTF_WAVEIN 0x20000000 | 
 
 
 
 
 | 269 | #define MIXER_OBJECTF_HWAVEIN (MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_WAVEIN) | 
 
 
 
 
 | 270 | #define MIXER_OBJECTF_MIDIOUT 0x30000000 | 
 
 
 
 
 | 271 | #define MIXER_OBJECTF_HMIDIOUT (MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_MIDIOUT) | 
 
 
 
 
 | 272 | #define MIXER_OBJECTF_MIDIIN 0x40000000 | 
 
 
 
 
 | 273 | #define MIXER_OBJECTF_HMIDIIN (MIXER_OBJECTF_HANDLE|MIXER_OBJECTF_MIDIIN) | 
 
 
 
 
 | 274 | #define MIXER_OBJECTF_AUX 0x50000000 | 
 
 
 
 
 | 275 | #define MIXERLINE_LINEF_ACTIVE 1 | 
 
 
 
 
 | 276 | #define MIXERLINE_LINEF_DISCONNECTED 0x8000 | 
 
 
 
 
 | 277 | #define MIXERLINE_LINEF_SOURCE 0x80000000 | 
 
 
 
 
 | 278 | #define MIXERLINE_COMPONENTTYPE_DST_FIRST 0 | 
 
 
 
 
 | 279 | #define MIXERLINE_COMPONENTTYPE_DST_UNDEFINED MIXERLINE_COMPONENTTYPE_DST_FIRST | 
 
 
 
 
 | 280 | #define MIXERLINE_COMPONENTTYPE_DST_DIGITAL (MIXERLINE_COMPONENTTYPE_DST_FIRST+1) | 
 
 
 
 
 | 281 | #define MIXERLINE_COMPONENTTYPE_DST_LINE (MIXERLINE_COMPONENTTYPE_DST_FIRST+2) | 
 
 
 
 
 | 282 | #define MIXERLINE_COMPONENTTYPE_DST_MONITOR (MIXERLINE_COMPONENTTYPE_DST_FIRST+3) | 
 
 
 
 
 | 283 | #define MIXERLINE_COMPONENTTYPE_DST_SPEAKERS (MIXERLINE_COMPONENTTYPE_DST_FIRST+4) | 
 
 
 
 
 | 284 | #define MIXERLINE_COMPONENTTYPE_DST_HEADPHONES (MIXERLINE_COMPONENTTYPE_DST_FIRST+5) | 
 
 
 
 
 | 285 | #define MIXERLINE_COMPONENTTYPE_DST_TELEPHONE (MIXERLINE_COMPONENTTYPE_DST_FIRST+6) | 
 
 
 
 
 | 286 | #define MIXERLINE_COMPONENTTYPE_DST_WAVEIN (MIXERLINE_COMPONENTTYPE_DST_FIRST+7) | 
 
 
 
 
 | 287 | #define MIXERLINE_COMPONENTTYPE_DST_VOICEIN (MIXERLINE_COMPONENTTYPE_DST_FIRST+8) | 
 
 
 
 
 | 288 | #define MIXERLINE_COMPONENTTYPE_DST_LAST (MIXERLINE_COMPONENTTYPE_DST_FIRST+8) | 
 
 
 
 
 | 289 | #define MIXERLINE_COMPONENTTYPE_SRC_FIRST 0x1000 | 
 
 
 
 
 | 290 | #define MIXERLINE_COMPONENTTYPE_SRC_UNDEFINED MIXERLINE_COMPONENTTYPE_SRC_FIRST | 
 
 
 
 
 | 291 | #define MIXERLINE_COMPONENTTYPE_SRC_DIGITAL (MIXERLINE_COMPONENTTYPE_SRC_FIRST+1) | 
 
 
 
 
 | 292 | #define MIXERLINE_COMPONENTTYPE_SRC_LINE (MIXERLINE_COMPONENTTYPE_SRC_FIRST+2) | 
 
 
 
 
 | 293 | #define MIXERLINE_COMPONENTTYPE_SRC_MICROPHONE (MIXERLINE_COMPONENTTYPE_SRC_FIRST+3) | 
 
 
 
 
 | 294 | #define MIXERLINE_COMPONENTTYPE_SRC_SYNTHESIZER (MIXERLINE_COMPONENTTYPE_SRC_FIRST+4) | 
 
 
 
 
 | 295 | #define MIXERLINE_COMPONENTTYPE_SRC_COMPACTDISC (MIXERLINE_COMPONENTTYPE_SRC_FIRST+5) | 
 
 
 
 
 | 296 | #define MIXERLINE_COMPONENTTYPE_SRC_TELEPHONE (MIXERLINE_COMPONENTTYPE_SRC_FIRST+6) | 
 
 
 
 
 | 297 | #define MIXERLINE_COMPONENTTYPE_SRC_PCSPEAKER (MIXERLINE_COMPONENTTYPE_SRC_FIRST+7) | 
 
 
 
 
 | 298 | #define MIXERLINE_COMPONENTTYPE_SRC_WAVEOUT (MIXERLINE_COMPONENTTYPE_SRC_FIRST+8) | 
 
 
 
 
 | 299 | #define MIXERLINE_COMPONENTTYPE_SRC_AUXILIARY (MIXERLINE_COMPONENTTYPE_SRC_FIRST+9) | 
 
 
 
 
 | 300 | #define MIXERLINE_COMPONENTTYPE_SRC_ANALOG (MIXERLINE_COMPONENTTYPE_SRC_FIRST+10) | 
 
 
 
 
 | 301 | #define MIXERLINE_COMPONENTTYPE_SRC_LAST (MIXERLINE_COMPONENTTYPE_SRC_FIRST+10) | 
 
 
 
 
 | 302 | #define MIXERLINE_TARGETTYPE_UNDEFINED 0 | 
 
 
 
 
 | 303 | #define MIXERLINE_TARGETTYPE_WAVEOUT 1 | 
 
 
 
 
 | 304 | #define MIXERLINE_TARGETTYPE_WAVEIN 2 | 
 
 
 
 
 | 305 | #define MIXERLINE_TARGETTYPE_MIDIOUT 3 | 
 
 
 
 
 | 306 | #define MIXERLINE_TARGETTYPE_MIDIIN 4 | 
 
 
 
 
 | 307 | #define MIXERLINE_TARGETTYPE_AUX 5 | 
 
 
 
 
 | 308 | #define MIXER_GETLINEINFOF_DESTINATION 0 | 
 
 
 
 
 | 309 | #define MIXER_GETLINEINFOF_SOURCE 1 | 
 
 
 
 
 | 310 | #define MIXER_GETLINEINFOF_LINEID 2 | 
 
 
 
 
 | 311 | #define MIXER_GETLINEINFOF_COMPONENTTYPE 3 | 
 
 
 
 
 | 312 | #define MIXER_GETLINEINFOF_TARGETTYPE 4 | 
 
 
 
 
 | 313 | #define MIXER_GETLINEINFOF_QUERYMASK 15 | 
 
 
 
 
 | 314 | #define MIXERCONTROL_CONTROLF_UNIFORM 1 | 
 
 
 
 
 | 315 | #define MIXERCONTROL_CONTROLF_MULTIPLE 2 | 
 
 
 
 
 | 316 | #define MIXERCONTROL_CONTROLF_DISABLED 0x80000000 | 
 
 
 
 
 | 317 | #define MIXERCONTROL_CT_CLASS_MASK 0xF0000000 | 
 
 
 
 
 | 318 | #define MIXERCONTROL_CT_CLASS_CUSTOM 0 | 
 
 
 
 
 | 319 | #define MIXERCONTROL_CT_CLASS_METER 0x10000000 | 
 
 
 
 
 | 320 | #define MIXERCONTROL_CT_CLASS_SWITCH 0x20000000 | 
 
 
 
 
 | 321 | #define MIXERCONTROL_CT_CLASS_NUMBER 0x30000000 | 
 
 
 
 
 | 322 | #define MIXERCONTROL_CT_CLASS_SLIDER 0x40000000 | 
 
 
 
 
 | 323 | #define MIXERCONTROL_CT_CLASS_FADER 0x50000000 | 
 
 
 
 
 | 324 | #define MIXERCONTROL_CT_CLASS_TIME 0x60000000 | 
 
 
 
 
 | 325 | #define MIXERCONTROL_CT_CLASS_LIST 0x70000000 | 
 
 
 
 
 | 326 | #define MIXERCONTROL_CT_SUBCLASS_MASK 0xF000000 | 
 
 
 
 
 | 327 | #define MIXERCONTROL_CT_SC_SWITCH_BOOLEAN 0 | 
 
 
 
 
 | 328 | #define MIXERCONTROL_CT_SC_SWITCH_BUTTON 0x1000000 | 
 
 
 
 
 | 329 | #define MIXERCONTROL_CT_SC_METER_POLLED 0 | 
 
 
 
 
 | 330 | #define MIXERCONTROL_CT_SC_TIME_MICROSECS 0 | 
 
 
 
 
 | 331 | #define MIXERCONTROL_CT_SC_TIME_MILLISECS 0x1000000 | 
 
 
 
 
 | 332 | #define MIXERCONTROL_CT_SC_LIST_SINGLE 0 | 
 
 
 
 
 | 333 | #define MIXERCONTROL_CT_SC_LIST_MULTIPLE 0x1000000 | 
 
 
 
 
 | 334 | #define MIXERCONTROL_CT_UNITS_MASK 0xFF0000 | 
 
 
 
 
 | 335 | #define MIXERCONTROL_CT_UNITS_CUSTOM 0 | 
 
 
 
 
 | 336 | #define MIXERCONTROL_CT_UNITS_BOOLEAN 0x10000 | 
 
 
 
 
 | 337 | #define MIXERCONTROL_CT_UNITS_SIGNED 0x20000 | 
 
 
 
 
 | 338 | #define MIXERCONTROL_CT_UNITS_UNSIGNED 0x30000 | 
 
 
 
 
 | 339 | #define MIXERCONTROL_CT_UNITS_DECIBELS 0x40000 | 
 
 
 
 
 | 340 | #define MIXERCONTROL_CT_UNITS_PERCENT 0x50000 | 
 
 
 
 
 | 341 | #define MIXERCONTROL_CONTROLTYPE_CUSTOM (MIXERCONTROL_CT_CLASS_CUSTOM|MIXERCONTROL_CT_UNITS_CUSTOM) | 
 
 
 
 
 | 342 | #define MIXERCONTROL_CONTROLTYPE_BOOLEANMETER (MIXERCONTROL_CT_CLASS_METER|MIXERCONTROL_CT_SC_METER_POLLED|MIXERCONTROL_CT_UNITS_BOOLEAN) | 
 
 
 
 
 | 343 | #define MIXERCONTROL_CONTROLTYPE_SIGNEDMETER (MIXERCONTROL_CT_CLASS_METER|MIXERCONTROL_CT_SC_METER_POLLED|MIXERCONTROL_CT_UNITS_SIGNED) | 
 
 
 
 
 | 344 | #define MIXERCONTROL_CONTROLTYPE_PEAKMETER (MIXERCONTROL_CONTROLTYPE_SIGNEDMETER+1) | 
 
 
 
 
 | 345 | #define MIXERCONTROL_CONTROLTYPE_UNSIGNEDMETER (MIXERCONTROL_CT_CLASS_METER|MIXERCONTROL_CT_SC_METER_POLLED|MIXERCONTROL_CT_UNITS_UNSIGNED) | 
 
 
 
 
 | 346 | #define MIXERCONTROL_CONTROLTYPE_BOOLEAN (MIXERCONTROL_CT_CLASS_SWITCH|MIXERCONTROL_CT_SC_SWITCH_BOOLEAN|MIXERCONTROL_CT_UNITS_BOOLEAN) | 
 
 
 
 
 | 347 | #define MIXERCONTROL_CONTROLTYPE_ONOFF (MIXERCONTROL_CONTROLTYPE_BOOLEAN+1) | 
 
 
 
 
 | 348 | #define MIXERCONTROL_CONTROLTYPE_MUTE (MIXERCONTROL_CONTROLTYPE_BOOLEAN+2) | 
 
 
 
 
 | 349 | #define MIXERCONTROL_CONTROLTYPE_MONO (MIXERCONTROL_CONTROLTYPE_BOOLEAN+3) | 
 
 
 
 
 | 350 | #define MIXERCONTROL_CONTROLTYPE_LOUDNESS (MIXERCONTROL_CONTROLTYPE_BOOLEAN+4) | 
 
 
 
 
 | 351 | #define MIXERCONTROL_CONTROLTYPE_STEREOENH (MIXERCONTROL_CONTROLTYPE_BOOLEAN+5) | 
 
 
 
 
 | 352 | #define MIXERCONTROL_CONTROLTYPE_BUTTON (MIXERCONTROL_CT_CLASS_SWITCH|MIXERCONTROL_CT_SC_SWITCH_BUTTON|MIXERCONTROL_CT_UNITS_BOOLEAN) | 
 
 
 
 
 | 353 | #define MIXERCONTROL_CONTROLTYPE_DECIBELS (MIXERCONTROL_CT_CLASS_NUMBER|MIXERCONTROL_CT_UNITS_DECIBELS) | 
 
 
 
 
 | 354 | #define MIXERCONTROL_CONTROLTYPE_SIGNED (MIXERCONTROL_CT_CLASS_NUMBER|MIXERCONTROL_CT_UNITS_SIGNED) | 
 
 
 
 
 | 355 | #define MIXERCONTROL_CONTROLTYPE_UNSIGNED (MIXERCONTROL_CT_CLASS_NUMBER|MIXERCONTROL_CT_UNITS_UNSIGNED) | 
 
 
 
 
 | 356 | #define MIXERCONTROL_CONTROLTYPE_PERCENT (MIXERCONTROL_CT_CLASS_NUMBER|MIXERCONTROL_CT_UNITS_PERCENT) | 
 
 
 
 
 | 357 | #define MIXERCONTROL_CONTROLTYPE_SLIDER (MIXERCONTROL_CT_CLASS_SLIDER|MIXERCONTROL_CT_UNITS_SIGNED) | 
 
 
 
 
 | 358 | #define MIXERCONTROL_CONTROLTYPE_PAN (MIXERCONTROL_CONTROLTYPE_SLIDER+1) | 
 
 
 
 
 | 359 | #define MIXERCONTROL_CONTROLTYPE_QSOUNDPAN (MIXERCONTROL_CONTROLTYPE_SLIDER+2) | 
 
 
 
 
 | 360 | #define MIXERCONTROL_CONTROLTYPE_FADER (MIXERCONTROL_CT_CLASS_FADER|MIXERCONTROL_CT_UNITS_UNSIGNED) | 
 
 
 
 
 | 361 | #define MIXERCONTROL_CONTROLTYPE_VOLUME (MIXERCONTROL_CONTROLTYPE_FADER+1) | 
 
 
 
 
 | 362 | #define MIXERCONTROL_CONTROLTYPE_BASS (MIXERCONTROL_CONTROLTYPE_FADER+2) | 
 
 
 
 
 | 363 | #define MIXERCONTROL_CONTROLTYPE_TREBLE (MIXERCONTROL_CONTROLTYPE_FADER+3) | 
 
 
 
 
 | 364 | #define MIXERCONTROL_CONTROLTYPE_EQUALIZER (MIXERCONTROL_CONTROLTYPE_FADER+4) | 
 
 
 
 
 | 365 | #define MIXERCONTROL_CONTROLTYPE_SINGLESELECT (MIXERCONTROL_CT_CLASS_LIST|MIXERCONTROL_CT_SC_LIST_SINGLE|MIXERCONTROL_CT_UNITS_BOOLEAN) | 
 
 
 
 
 | 366 | #define MIXERCONTROL_CONTROLTYPE_MUX (MIXERCONTROL_CONTROLTYPE_SINGLESELECT+1) | 
 
 
 
 
 | 367 | #define MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT (MIXERCONTROL_CT_CLASS_LIST|MIXERCONTROL_CT_SC_LIST_MULTIPLE|MIXERCONTROL_CT_UNITS_BOOLEAN) | 
 
 
 
 
 | 368 | #define MIXERCONTROL_CONTROLTYPE_MIXER (MIXERCONTROL_CONTROLTYPE_MULTIPLESELECT+1) | 
 
 
 
 
 | 369 | #define MIXERCONTROL_CONTROLTYPE_MICROTIME (MIXERCONTROL_CT_CLASS_TIME|MIXERCONTROL_CT_SC_TIME_MICROSECS|MIXERCONTROL_CT_UNITS_UNSIGNED) | 
 
 
 
 
 | 370 | #define MIXERCONTROL_CONTROLTYPE_MILLITIME (MIXERCONTROL_CT_CLASS_TIME|MIXERCONTROL_CT_SC_TIME_MILLISECS|MIXERCONTROL_CT_UNITS_UNSIGNED) | 
 
 
 
 
 | 371 | #define MIXER_GETLINECONTROLSF_ALL 0 | 
 
 
 
 
 | 372 | #define MIXER_GETLINECONTROLSF_ONEBYID 1 | 
 
 
 
 
 | 373 | #define MIXER_GETLINECONTROLSF_ONEBYTYPE 2 | 
 
 
 
 
 | 374 | #define MIXER_GETLINECONTROLSF_QUERYMASK 15 | 
 
 
 
 
 | 375 | #define MIXER_GETCONTROLDETAILSF_VALUE 0 | 
 
 
 
 
 | 376 | #define MIXER_GETCONTROLDETAILSF_LISTTEXT 1 | 
 
 
 
 
 | 377 | #define MIXER_GETCONTROLDETAILSF_QUERYMASK 15 | 
 
 
 
 
 | 378 | #define MIXER_SETCONTROLDETAILSF_VALUE 0 | 
 
 
 
 
 | 379 | #define MIXER_SETCONTROLDETAILSF_CUSTOM 1 | 
 
 
 
 
 | 380 | #define MIXER_SETCONTROLDETAILSF_QUERYMASK 15 | 
 
 
 
 
 | 381 | #define TIMERR_NOERROR 0 | 
 
 
 
 
 | 382 | #define TIMERR_NOCANDO (TIMERR_BASE+1) | 
 
 
 
 
 | 383 | #define TIMERR_STRUCT (TIMERR_BASE+33) | 
 
 
 
 
 | 384 | #define TIME_ONESHOT 0 | 
 
 
 
 
 | 385 | #define TIME_PERIODIC 1 | 
 
 
 
 
 | 386 | #define TIME_CALLBACK_FUNCTION 0 | 
 
 
 
 
 | 387 | #define TIME_CALLBACK_EVENT_SET 16 | 
 
 
 
 
 | 388 | #define TIME_CALLBACK_EVENT_PULSE 32 | 
 
 
 
 
 | 389 | #if (WINVER >= 0x0501) | 
 
 
 
 
 | 390 | #define TIME_KILL_SYNCHRONOUS 0x0100 | 
 
 
 
 
 | 391 | #endif | 
 
 
 
 
 | 392 | #define JOYERR_NOERROR (0) | 
 
 
 
 
 | 393 | #define JOYERR_PARMS (JOYERR_BASE+5) | 
 
 
 
 
 | 394 | #define JOYERR_NOCANDO (JOYERR_BASE+6) | 
 
 
 
 
 | 395 | #define JOYERR_UNPLUGGED (JOYERR_BASE+7) | 
 
 
 
 
 | 396 | #define JOY_BUTTON1 1 | 
 
 
 
 
 | 397 | #define JOY_BUTTON2 2 | 
 
 
 
 
 | 398 | #define JOY_BUTTON3 4 | 
 
 
 
 
 | 399 | #define JOY_BUTTON4 8 | 
 
 
 
 
 | 400 | #define JOY_BUTTON1CHG 256 | 
 
 
 
 
 | 401 | #define JOY_BUTTON2CHG 512 | 
 
 
 
 
 | 402 | #define JOY_BUTTON3CHG 1024 | 
 
 
 
 
 | 403 | #define JOY_BUTTON4CHG 2048 | 
 
 
 
 
 | 404 | #define JOY_BUTTON5 257 | 
 
 
 
 
 | 405 | #define JOY_BUTTON6 513 | 
 
 
 
 
 | 406 | #define JOY_BUTTON7 1025 | 
 
 
 
 
 | 407 | #define JOY_BUTTON8 2049 | 
 
 
 
 
 | 408 | #define JOY_BUTTON9 256 | 
 
 
 
 
 | 409 | #define JOY_BUTTON10 512 | 
 
 
 
 
 | 410 | #define JOY_BUTTON11 1024 | 
 
 
 
 
 | 411 | #define JOY_BUTTON12 2048 | 
 
 
 
 
 | 412 | #define JOY_BUTTON13 4096 | 
 
 
 
 
 | 413 | #define JOY_BUTTON14 8192 | 
 
 
 
 
 | 414 | #define JOY_BUTTON15 16384 | 
 
 
 
 
 | 415 | #define JOY_BUTTON16 32768 | 
 
 
 
 
 | 416 | #define JOY_BUTTON17 65536 | 
 
 
 
 
 | 417 | #define JOY_BUTTON18 0x20000 | 
 
 
 
 
 | 418 | #define JOY_BUTTON19 0x40000 | 
 
 
 
 
 | 419 | #define JOY_BUTTON20 0x80000 | 
 
 
 
 
 | 420 | #define JOY_BUTTON21 0x100000 | 
 
 
 
 
 | 421 | #define JOY_BUTTON22 0x200000 | 
 
 
 
 
 | 422 | #define JOY_BUTTON23 0x400000 | 
 
 
 
 
 | 423 | #define JOY_BUTTON24 0x800000 | 
 
 
 
 
 | 424 | #define JOY_BUTTON25 0x1000000 | 
 
 
 
 
 | 425 | #define JOY_BUTTON26 0x2000000 | 
 
 
 
 
 | 426 | #define JOY_BUTTON27 0x4000000 | 
 
 
 
 
 | 427 | #define JOY_BUTTON28 0x8000000 | 
 
 
 
 
 | 428 | #define JOY_BUTTON29 0x10000000 | 
 
 
 
 
 | 429 | #define JOY_BUTTON30 0x20000000 | 
 
 
 
 
 | 430 | #define JOY_BUTTON31 0x40000000 | 
 
 
 
 
 | 431 | #define JOY_BUTTON32 0x80000000 | 
 
 
 
 
 | 432 | #define JOY_POVCENTERED ((WORD)-1) | 
 
 
 
 
 | 433 | #define JOY_POVFORWARD  0 | 
 
 
 
 
 | 434 | #define JOY_POVRIGHT    9000 | 
 
 
 
 
 | 435 | #define JOY_POVBACKWARD 18000 | 
 
 
 
 
 | 436 | #define JOY_POVLEFT     27000 | 
 
 
 
 
 | 437 | #define JOY_RETURNX     1 | 
 
 
 
 
 | 438 | #define JOY_RETURNY     2 | 
 
 
 
 
 | 439 | #define JOY_RETURNZ     4l | 
 
 
 
 
 | 440 | #define JOY_RETURNR     8 | 
 
 
 
 
 | 441 | #define JOY_RETURNU     16 | 
 
 
 
 
 | 442 | #define JOY_RETURNV     32 | 
 
 
 
 
 | 443 | #define JOY_RETURNPOV   64 | 
 
 
 
 
 | 444 | #define JOY_RETURNBUTTONS       128 | 
 
 
 
 
 | 445 | #define JOY_RETURNRAWDATA       256 | 
 
 
 
 
 | 446 | #define JOY_RETURNPOVCTS        512 | 
 
 
 
 
 | 447 | #define JOY_RETURNCENTERED      1024 | 
 
 
 
 
 | 448 | #define JOY_USEDEADZONE 2048 | 
 
 
 
 
 | 449 | #define JOY_RETURNALL   (JOY_RETURNX|JOY_RETURNY|JOY_RETURNZ|JOY_RETURNR|JOY_RETURNU|JOY_RETURNV|JOY_RETURNPOV|JOY_RETURNBUTTONS) | 
 
 
 
 
 | 450 | #define JOY_CAL_READALWAYS      0x10000 | 
 
 
 
 
 | 451 | #define JOY_CAL_READXYONLY      0x20000 | 
 
 
 
 
 | 452 | #define JOY_CAL_READ3   0x40000 | 
 
 
 
 
 | 453 | #define JOY_CAL_READ4   0x80000 | 
 
 
 
 
 | 454 | #define JOY_CAL_READXONLY       0x100000 | 
 
 
 
 
 | 455 | #define JOY_CAL_READYONLY       0x200000 | 
 
 
 
 
 | 456 | #define JOY_CAL_READ5   0x400000 | 
 
 
 
 
 | 457 | #define JOY_CAL_READ6   0x800000 | 
 
 
 
 
 | 458 | #define JOY_CAL_READZONLY       0x1000000 | 
 
 
 
 
 | 459 | #define JOY_CAL_READRONLY       0x2000000 | 
 
 
 
 
 | 460 | #define JOY_CAL_READUONLY       0x4000000 | 
 
 
 
 
 | 461 | #define JOY_CAL_READVONLY       0x8000000 | 
 
 
 
 
 | 462 | #define JOYSTICKID1 0 | 
 
 
 
 
 | 463 | #define JOYSTICKID2 1 | 
 
 
 
 
 | 464 | #define JOYCAPS_HASZ    1 | 
 
 
 
 
 | 465 | #define JOYCAPS_HASR    2 | 
 
 
 
 
 | 466 | #define JOYCAPS_HASU    4 | 
 
 
 
 
 | 467 | #define JOYCAPS_HASV    8 | 
 
 
 
 
 | 468 | #define JOYCAPS_HASPOV  16 | 
 
 
 
 
 | 469 | #define JOYCAPS_POV4DIR 32 | 
 
 
 
 
 | 470 | #define JOYCAPS_POVCTS  64 | 
 
 
 
 
 | 471 | #define MMIOERR_BASE 256 | 
 
 
 
 
 | 472 | #define MMIOERR_FILENOTFOUND (MMIOERR_BASE+1) | 
 
 
 
 
 | 473 | #define MMIOERR_OUTOFMEMORY (MMIOERR_BASE+2) | 
 
 
 
 
 | 474 | #define MMIOERR_CANNOTOPEN (MMIOERR_BASE+3) | 
 
 
 
 
 | 475 | #define MMIOERR_CANNOTCLOSE (MMIOERR_BASE+4) | 
 
 
 
 
 | 476 | #define MMIOERR_CANNOTREAD (MMIOERR_BASE+5) | 
 
 
 
 
 | 477 | #define MMIOERR_CANNOTWRITE (MMIOERR_BASE+6) | 
 
 
 
 
 | 478 | #define MMIOERR_CANNOTSEEK (MMIOERR_BASE+7) | 
 
 
 
 
 | 479 | #define MMIOERR_CANNOTEXPAND (MMIOERR_BASE+8) | 
 
 
 
 
 | 480 | #define MMIOERR_CHUNKNOTFOUND (MMIOERR_BASE+9) | 
 
 
 
 
 | 481 | #define MMIOERR_UNBUFFERED (MMIOERR_BASE+10) | 
 
 
 
 
 | 482 | #define MMIOERR_PATHNOTFOUND (MMIOERR_BASE+11) | 
 
 
 
 
 | 483 | #define MMIOERR_ACCESSDENIED (MMIOERR_BASE+12) | 
 
 
 
 
 | 484 | #define MMIOERR_SHARINGVIOLATION (MMIOERR_BASE+13) | 
 
 
 
 
 | 485 | #define MMIOERR_NETWORKERROR (MMIOERR_BASE+14) | 
 
 
 
 
 | 486 | #define MMIOERR_TOOMANYOPENFILES (MMIOERR_BASE+15) | 
 
 
 
 
 | 487 | #define MMIOERR_INVALIDFILE (MMIOERR_BASE+16) | 
 
 
 
 
 | 488 | #define CFSEPCHAR '+' | 
 
 
 
 
 | 489 | #define MMIO_RWMODE 3 | 
 
 
 
 
 | 490 | #define MMIO_SHAREMODE 0x70 | 
 
 
 
 
 | 491 | #define MMIO_CREATE 0x1000 | 
 
 
 
 
 | 492 | #define MMIO_PARSE 256 | 
 
 
 
 
 | 493 | #define MMIO_DELETE 512 | 
 
 
 
 
 | 494 | #define MMIO_EXIST 0x4000 | 
 
 
 
 
 | 495 | #define MMIO_ALLOCBUF 0x10000 | 
 
 
 
 
 | 496 | #define MMIO_GETTEMP 0x20000 | 
 
 
 
 
 | 497 | #define MMIO_DIRTY 0x10000000 | 
 
 
 
 
 | 498 | #define MMIO_READ 0 | 
 
 
 
 
 | 499 | #define MMIO_WRITE 1 | 
 
 
 
 
 | 500 | #define MMIO_READWRITE 2 | 
 
 
 
 
 | 501 | #define MMIO_COMPAT 0 | 
 
 
 
 
 | 502 | #define MMIO_EXCLUSIVE 16 | 
 
 
 
 
 | 503 | #define MMIO_DENYWRITE 32 | 
 
 
 
 
 | 504 | #define MMIO_DENYREAD 0x30 | 
 
 
 
 
 | 505 | #define MMIO_DENYNONE 64 | 
 
 
 
 
 | 506 | #define MMIO_FHOPEN 16 | 
 
 
 
 
 | 507 | #define MMIO_EMPTYBUF 16 | 
 
 
 
 
 | 508 | #define MMIO_TOUPPER 16 | 
 
 
 
 
 | 509 | #define MMIO_INSTALLPROC 0x10000 | 
 
 
 
 
 | 510 | #define MMIO_GLOBALPROC 0x10000000 | 
 
 
 
 
 | 511 | #define MMIO_REMOVEPROC 0x20000 | 
 
 
 
 
 | 512 | #define MMIO_UNICODEPROC 0x1000000 | 
 
 
 
 
 | 513 | #define MMIO_FINDPROC 0x40000 | 
 
 
 
 
 | 514 | #define MMIO_FINDCHUNK 16 | 
 
 
 
 
 | 515 | #define MMIO_FINDRIFF 32 | 
 
 
 
 
 | 516 | #define MMIO_FINDLIST 64 | 
 
 
 
 
 | 517 | #define MMIO_CREATERIFF 32 | 
 
 
 
 
 | 518 | #define MMIO_CREATELIST 64 | 
 
 
 
 
 | 519 | #define MMIOM_READ MMIO_READ | 
 
 
 
 
 | 520 | #define MMIOM_WRITE MMIO_WRITE | 
 
 
 
 
 | 521 | #define MMIOM_SEEK 2 | 
 
 
 
 
 | 522 | #define MMIOM_OPEN 3 | 
 
 
 
 
 | 523 | #define MMIOM_CLOSE 4 | 
 
 
 
 
 | 524 | #define MMIOM_WRITEFLUSH 5 | 
 
 
 
 
 | 525 | #define MMIOM_RENAME 6 | 
 
 
 
 
 | 526 | #define MMIOM_USER 0x8000 | 
 
 
 
 
 | 527 | #define FOURCC_RIFF mmioFOURCC('R', 'I', 'F', 'F') | 
 
 
 
 
 | 528 | #define FOURCC_LIST mmioFOURCC('L', 'I', 'S', 'T') | 
 
 
 
 
 | 529 | #define FOURCC_DOS mmioFOURCC('D', 'O', 'S', ' ') | 
 
 
 
 
 | 530 | #define FOURCC_MEM mmioFOURCC('M', 'E', 'M', ' ') | 
 
 
 
 
 | 531 | #define MMIO_DEFAULTBUFFER 8192 | 
 
 
 
 
 | 532 | #define MCIERR_INVALID_DEVICE_ID (MCIERR_BASE+1) | 
 
 
 
 
 | 533 | #define MCIERR_UNRECOGNIZED_KEYWORD (MCIERR_BASE+3) | 
 
 
 
 
 | 534 | #define MCIERR_UNRECOGNIZED_COMMAND (MCIERR_BASE+5) | 
 
 
 
 
 | 535 | #define MCIERR_HARDWARE (MCIERR_BASE+6) | 
 
 
 
 
 | 536 | #define MCIERR_INVALID_DEVICE_NAME (MCIERR_BASE+7) | 
 
 
 
 
 | 537 | #define MCIERR_OUT_OF_MEMORY (MCIERR_BASE+8) | 
 
 
 
 
 | 538 | #define MCIERR_DEVICE_OPEN (MCIERR_BASE+9) | 
 
 
 
 
 | 539 | #define MCIERR_CANNOT_LOAD_DRIVER (MCIERR_BASE+10) | 
 
 
 
 
 | 540 | #define MCIERR_MISSING_COMMAND_STRING (MCIERR_BASE+11) | 
 
 
 
 
 | 541 | #define MCIERR_PARAM_OVERFLOW (MCIERR_BASE+12) | 
 
 
 
 
 | 542 | #define MCIERR_MISSING_STRING_ARGUMENT (MCIERR_BASE+13) | 
 
 
 
 
 | 543 | #define MCIERR_BAD_INTEGER (MCIERR_BASE+14) | 
 
 
 
 
 | 544 | #define MCIERR_PARSER_INTERNAL (MCIERR_BASE+15) | 
 
 
 
 
 | 545 | #define MCIERR_DRIVER_INTERNAL (MCIERR_BASE+16) | 
 
 
 
 
 | 546 | #define MCIERR_MISSING_PARAMETER (MCIERR_BASE+17) | 
 
 
 
 
 | 547 | #define MCIERR_UNSUPPORTED_FUNCTION (MCIERR_BASE+18) | 
 
 
 
 
 | 548 | #define MCIERR_FILE_NOT_FOUND (MCIERR_BASE+19) | 
 
 
 
 
 | 549 | #define MCIERR_DEVICE_NOT_READY (MCIERR_BASE+20) | 
 
 
 
 
 | 550 | #define MCIERR_INTERNAL (MCIERR_BASE+21) | 
 
 
 
 
 | 551 | #define MCIERR_DRIVER (MCIERR_BASE+22) | 
 
 
 
 
 | 552 | #define MCIERR_CANNOT_USE_ALL (MCIERR_BASE+23) | 
 
 
 
 
 | 553 | #define MCIERR_MULTIPLE (MCIERR_BASE+24) | 
 
 
 
 
 | 554 | #define MCIERR_EXTENSION_NOT_FOUND (MCIERR_BASE+25) | 
 
 
 
 
 | 555 | #define MCIERR_OUTOFRANGE (MCIERR_BASE+26) | 
 
 
 
 
 | 556 | #define MCIERR_FLAGS_NOT_COMPATIBLE (MCIERR_BASE+28) | 
 
 
 
 
 | 557 | #define MCIERR_FILE_NOT_SAVED (MCIERR_BASE+30) | 
 
 
 
 
 | 558 | #define MCIERR_DEVICE_TYPE_REQUIRED (MCIERR_BASE+31) | 
 
 
 
 
 | 559 | #define MCIERR_DEVICE_LOCKED (MCIERR_BASE+32) | 
 
 
 
 
 | 560 | #define MCIERR_DUPLICATE_ALIAS (MCIERR_BASE+33) | 
 
 
 
 
 | 561 | #define MCIERR_BAD_CONSTANT (MCIERR_BASE+34) | 
 
 
 
 
 | 562 | #define MCIERR_MUST_USE_SHAREABLE (MCIERR_BASE+35) | 
 
 
 
 
 | 563 | #define MCIERR_MISSING_DEVICE_NAME (MCIERR_BASE+36) | 
 
 
 
 
 | 564 | #define MCIERR_BAD_TIME_FORMAT (MCIERR_BASE+37) | 
 
 
 
 
 | 565 | #define MCIERR_NO_CLOSING_QUOTE (MCIERR_BASE+38) | 
 
 
 
 
 | 566 | #define MCIERR_DUPLICATE_FLAGS (MCIERR_BASE+39) | 
 
 
 
 
 | 567 | #define MCIERR_INVALID_FILE (MCIERR_BASE+40) | 
 
 
 
 
 | 568 | #define MCIERR_NULL_PARAMETER_BLOCK (MCIERR_BASE+41) | 
 
 
 
 
 | 569 | #define MCIERR_UNNAMED_RESOURCE (MCIERR_BASE+42) | 
 
 
 
 
 | 570 | #define MCIERR_NEW_REQUIRES_ALIAS (MCIERR_BASE+43) | 
 
 
 
 
 | 571 | #define MCIERR_NOTIFY_ON_AUTO_OPEN (MCIERR_BASE+44) | 
 
 
 
 
 | 572 | #define MCIERR_NO_ELEMENT_ALLOWED (MCIERR_BASE+45) | 
 
 
 
 
 | 573 | #define MCIERR_NONAPPLICABLE_FUNCTION (MCIERR_BASE+46) | 
 
 
 
 
 | 574 | #define MCIERR_ILLEGAL_FOR_AUTO_OPEN (MCIERR_BASE+47) | 
 
 
 
 
 | 575 | #define MCIERR_FILENAME_REQUIRED (MCIERR_BASE+48) | 
 
 
 
 
 | 576 | #define MCIERR_EXTRA_CHARACTERS (MCIERR_BASE+49) | 
 
 
 
 
 | 577 | #define MCIERR_DEVICE_NOT_INSTALLED (MCIERR_BASE+50) | 
 
 
 
 
 | 578 | #define MCIERR_GET_CD (MCIERR_BASE+51) | 
 
 
 
 
 | 579 | #define MCIERR_SET_CD (MCIERR_BASE+52) | 
 
 
 
 
 | 580 | #define MCIERR_SET_DRIVE (MCIERR_BASE+53) | 
 
 
 
 
 | 581 | #define MCIERR_DEVICE_LENGTH (MCIERR_BASE+54) | 
 
 
 
 
 | 582 | #define MCIERR_DEVICE_ORD_LENGTH (MCIERR_BASE+55) | 
 
 
 
 
 | 583 | #define MCIERR_NO_INTEGER (MCIERR_BASE+56) | 
 
 
 
 
 | 584 | #define MCIERR_WAVE_OUTPUTSINUSE (MCIERR_BASE+64) | 
 
 
 
 
 | 585 | #define MCIERR_WAVE_SETOUTPUTINUSE (MCIERR_BASE+65) | 
 
 
 
 
 | 586 | #define MCIERR_WAVE_INPUTSINUSE (MCIERR_BASE+66) | 
 
 
 
 
 | 587 | #define MCIERR_WAVE_SETINPUTINUSE (MCIERR_BASE+67) | 
 
 
 
 
 | 588 | #define MCIERR_WAVE_OUTPUTUNSPECIFIED (MCIERR_BASE+68) | 
 
 
 
 
 | 589 | #define MCIERR_WAVE_INPUTUNSPECIFIED (MCIERR_BASE+69) | 
 
 
 
 
 | 590 | #define MCIERR_WAVE_OUTPUTSUNSUITABLE (MCIERR_BASE+70) | 
 
 
 
 
 | 591 | #define MCIERR_WAVE_SETOUTPUTUNSUITABLE (MCIERR_BASE+71) | 
 
 
 
 
 | 592 | #define MCIERR_WAVE_INPUTSUNSUITABLE (MCIERR_BASE+72) | 
 
 
 
 
 | 593 | #define MCIERR_WAVE_SETINPUTUNSUITABLE (MCIERR_BASE+73) | 
 
 
 
 
 | 594 | #define MCIERR_SEQ_DIV_INCOMPATIBLE (MCIERR_BASE+80) | 
 
 
 
 
 | 595 | #define MCIERR_SEQ_PORT_INUSE (MCIERR_BASE+81) | 
 
 
 
 
 | 596 | #define MCIERR_SEQ_PORT_NONEXISTENT (MCIERR_BASE+82) | 
 
 
 
 
 | 597 | #define MCIERR_SEQ_PORT_MAPNODEVICE (MCIERR_BASE+83) | 
 
 
 
 
 | 598 | #define MCIERR_SEQ_PORT_MISCERROR (MCIERR_BASE+84) | 
 
 
 
 
 | 599 | #define MCIERR_SEQ_TIMER (MCIERR_BASE+85) | 
 
 
 
 
 | 600 | #define MCIERR_SEQ_PORTUNSPECIFIED (MCIERR_BASE+86) | 
 
 
 
 
 | 601 | #define MCIERR_SEQ_NOMIDIPRESENT (MCIERR_BASE+87) | 
 
 
 
 
 | 602 | #define MCIERR_NO_WINDOW (MCIERR_BASE+90) | 
 
 
 
 
 | 603 | #define MCIERR_CREATEWINDOW (MCIERR_BASE+91) | 
 
 
 
 
 | 604 | #define MCIERR_FILE_READ (MCIERR_BASE+92) | 
 
 
 
 
 | 605 | #define MCIERR_FILE_WRITE (MCIERR_BASE+93) | 
 
 
 
 
 | 606 | #define MCIERR_NO_IDENTITY (MCIERR_BASE+94) | 
 
 
 
 
 | 607 | #define MCIERR_CUSTOM_DRIVER_BASE (MCIERR_BASE+256) | 
 
 
 
 
 | 608 | #define MCI_FIRST DRV_MCI_FIRST | 
 
 
 
 
 | 609 | #define MCI_OPEN 0x803 | 
 
 
 
 
 | 610 | #define MCI_CLOSE 0x804 | 
 
 
 
 
 | 611 | #define MCI_ESCAPE 0x805 | 
 
 
 
 
 | 612 | #define MCI_PLAY 0x806 | 
 
 
 
 
 | 613 | #define MCI_SEEK 0x807 | 
 
 
 
 
 | 614 | #define MCI_STOP 0x808 | 
 
 
 
 
 | 615 | #define MCI_PAUSE 0x809 | 
 
 
 
 
 | 616 | #define MCI_INFO 0x80A | 
 
 
 
 
 | 617 | #define MCI_GETDEVCAPS 0x80B | 
 
 
 
 
 | 618 | #define MCI_SPIN 0x80C | 
 
 
 
 
 | 619 | #define MCI_SET 0x80D | 
 
 
 
 
 | 620 | #define MCI_STEP 0x80E | 
 
 
 
 
 | 621 | #define MCI_RECORD 0x80F | 
 
 
 
 
 | 622 | #define MCI_SYSINFO 0x810 | 
 
 
 
 
 | 623 | #define MCI_BREAK 0x811 | 
 
 
 
 
 | 624 | #define MCI_SAVE 0x813 | 
 
 
 
 
 | 625 | #define MCI_STATUS 0x814 | 
 
 
 
 
 | 626 | #define MCI_CUE 0x830 | 
 
 
 
 
 | 627 | #define MCI_REALIZE 0x840 | 
 
 
 
 
 | 628 | #define MCI_WINDOW 0x841 | 
 
 
 
 
 | 629 | #define MCI_PUT 0x842 | 
 
 
 
 
 | 630 | #define MCI_WHERE 0x843 | 
 
 
 
 
 | 631 | #define MCI_FREEZE 0x844 | 
 
 
 
 
 | 632 | #define MCI_UNFREEZE 0x845 | 
 
 
 
 
 | 633 | #define MCI_LOAD 0x850 | 
 
 
 
 
 | 634 | #define MCI_CUT 0x851 | 
 
 
 
 
 | 635 | #define MCI_COPY 0x852 | 
 
 
 
 
 | 636 | #define MCI_PASTE 0x853 | 
 
 
 
 
 | 637 | #define MCI_UPDATE 0x854 | 
 
 
 
 
 | 638 | #define MCI_RESUME 0x855 | 
 
 
 
 
 | 639 | #define MCI_DELETE 0x856 | 
 
 
 
 
 | 640 | #define MCI_USER_MESSAGES (DRV_MCI_FIRST+0x400) | 
 
 
 
 
 | 641 | #define MCI_LAST 0xFFF | 
 
 
 
 
 | 642 | #define MCI_ALL_DEVICE_ID ((MCIDEVICEID)-1) | 
 
 
 
 
 | 643 | #define MCI_DEVTYPE_VCR 513 | 
 
 
 
 
 | 644 | #define MCI_DEVTYPE_VIDEODISC 514 | 
 
 
 
 
 | 645 | #define MCI_DEVTYPE_OVERLAY 515 | 
 
 
 
 
 | 646 | #define MCI_DEVTYPE_CD_AUDIO 516 | 
 
 
 
 
 | 647 | #define MCI_DEVTYPE_DAT 517 | 
 
 
 
 
 | 648 | #define MCI_DEVTYPE_SCANNER 518 | 
 
 
 
 
 | 649 | #define MCI_DEVTYPE_ANIMATION 519 | 
 
 
 
 
 | 650 | #define MCI_DEVTYPE_DIGITAL_VIDEO 520 | 
 
 
 
 
 | 651 | #define MCI_DEVTYPE_OTHER 521 | 
 
 
 
 
 | 652 | #define MCI_DEVTYPE_WAVEFORM_AUDIO 522 | 
 
 
 
 
 | 653 | #define MCI_DEVTYPE_SEQUENCER 523 | 
 
 
 
 
 | 654 | #define MCI_DEVTYPE_FIRST MCI_DEVTYPE_VCR | 
 
 
 
 
 | 655 | #define MCI_DEVTYPE_LAST MCI_DEVTYPE_SEQUENCER | 
 
 
 
 
 | 656 | #define MCI_DEVTYPE_FIRST_USER 0x1000 | 
 
 
 
 
 | 657 | #define MCI_MODE_NOT_READY (MCI_STRING_OFFSET+12) | 
 
 
 
 
 | 658 | #define MCI_MODE_STOP (MCI_STRING_OFFSET+13) | 
 
 
 
 
 | 659 | #define MCI_MODE_PLAY (MCI_STRING_OFFSET+14) | 
 
 
 
 
 | 660 | #define MCI_MODE_RECORD (MCI_STRING_OFFSET+15) | 
 
 
 
 
 | 661 | #define MCI_MODE_SEEK (MCI_STRING_OFFSET+16) | 
 
 
 
 
 | 662 | #define MCI_MODE_PAUSE (MCI_STRING_OFFSET+17) | 
 
 
 
 
 | 663 | #define MCI_MODE_OPEN (MCI_STRING_OFFSET+18) | 
 
 
 
 
 | 664 | #define MCI_FORMAT_MILLISECONDS 0 | 
 
 
 
 
 | 665 | #define MCI_FORMAT_HMS 1 | 
 
 
 
 
 | 666 | #define MCI_FORMAT_MSF 2 | 
 
 
 
 
 | 667 | #define MCI_FORMAT_FRAMES 3 | 
 
 
 
 
 | 668 | #define MCI_FORMAT_SMPTE_24 4 | 
 
 
 
 
 | 669 | #define MCI_FORMAT_SMPTE_25 5 | 
 
 
 
 
 | 670 | #define MCI_FORMAT_SMPTE_30 6 | 
 
 
 
 
 | 671 | #define MCI_FORMAT_SMPTE_30DROP 7 | 
 
 
 
 
 | 672 | #define MCI_FORMAT_BYTES 8 | 
 
 
 
 
 | 673 | #define MCI_FORMAT_SAMPLES 9 | 
 
 
 
 
 | 674 | #define MCI_FORMAT_TMSF 10 | 
 
 
 
 
 | 675 | #define MCI_MSF_MINUTE(t) ((BYTE)(t)) | 
 
 
 
 
 | 676 | #define MCI_MSF_SECOND(t) ((BYTE)(((WORD)(t))>>8)) | 
 
 
 
 
 | 677 | #define MCI_MSF_FRAME(t) ((BYTE)((t)>>16)) | 
 
 
 
 
 | 678 | #define MCI_MAKE_MSF(m,s,f) ((DWORD)(((BYTE)(m)|((WORD)(s)<<8))|(((DWORD)(BYTE)(f))<<16))) | 
 
 
 
 
 | 679 | #define MCI_TMSF_TRACK(t) ((BYTE)(t)) | 
 
 
 
 
 | 680 | #define MCI_TMSF_MINUTE(t) ((BYTE)(((WORD)(t))>>8)) | 
 
 
 
 
 | 681 | #define MCI_TMSF_SECOND(t) ((BYTE)((t)>>16)) | 
 
 
 
 
 | 682 | #define MCI_TMSF_FRAME(t) ((BYTE)((t)>>24)) | 
 
 
 
 
 | 683 | #define MCI_MAKE_TMSF(t,m,s,f) ((DWORD)(((BYTE)(t)|((WORD)(m)<<8))|(((DWORD)(BYTE)(s)|((WORD)(f)<<8))<<16))) | 
 
 
 
 
 | 684 | #define MCI_HMS_HOUR(t) ((BYTE)(t)) | 
 
 
 
 
 | 685 | #define MCI_HMS_MINUTE(t) ((BYTE)(((WORD)(t))>>8)) | 
 
 
 
 
 | 686 | #define MCI_HMS_SECOND(t) ((BYTE)((t)>>16)) | 
 
 
 
 
 | 687 | #define MCI_MAKE_HMS(h,m,s) ((DWORD)(((BYTE)(h)|((WORD)(m)<<8))|(((DWORD)(BYTE)(s))<<16))) | 
 
 
 
 
 | 688 | #define MCI_NOTIFY_SUCCESSFUL 1 | 
 
 
 
 
 | 689 | #define MCI_NOTIFY_SUPERSEDED 2 | 
 
 
 
 
 | 690 | #define MCI_NOTIFY_ABORTED 4 | 
 
 
 
 
 | 691 | #define MCI_NOTIFY_FAILURE 8 | 
 
 
 
 
 | 692 | #define MCI_NOTIFY 1 | 
 
 
 
 
 | 693 | #define MCI_WAIT 2 | 
 
 
 
 
 | 694 | #define MCI_FROM 4 | 
 
 
 
 
 | 695 | #define MCI_TO 8 | 
 
 
 
 
 | 696 | #define MCI_TRACK 16 | 
 
 
 
 
 | 697 | #define MCI_OPEN_SHAREABLE 256 | 
 
 
 
 
 | 698 | #define MCI_OPEN_ELEMENT 512 | 
 
 
 
 
 | 699 | #define MCI_OPEN_ALIAS 1024 | 
 
 
 
 
 | 700 | #define MCI_OPEN_ELEMENT_ID 2048 | 
 
 
 
 
 | 701 | #define MCI_OPEN_TYPE_ID 0x1000 | 
 
 
 
 
 | 702 | #define MCI_OPEN_TYPE 0x2000 | 
 
 
 
 
 | 703 | #define MCI_SEEK_TO_START 256 | 
 
 
 
 
 | 704 | #define MCI_SEEK_TO_END 512 | 
 
 
 
 
 | 705 | #define MCI_STATUS_ITEM 256 | 
 
 
 
 
 | 706 | #define MCI_STATUS_START 512 | 
 
 
 
 
 | 707 | #define MCI_STATUS_LENGTH 1 | 
 
 
 
 
 | 708 | #define MCI_STATUS_POSITION 2 | 
 
 
 
 
 | 709 | #define MCI_STATUS_NUMBER_OF_TRACKS 3 | 
 
 
 
 
 | 710 | #define MCI_STATUS_MODE 4 | 
 
 
 
 
 | 711 | #define MCI_STATUS_MEDIA_PRESENT 5 | 
 
 
 
 
 | 712 | #define MCI_STATUS_TIME_FORMAT 6 | 
 
 
 
 
 | 713 | #define MCI_STATUS_READY 7 | 
 
 
 
 
 | 714 | #define MCI_STATUS_CURRENT_TRACK 8 | 
 
 
 
 
 | 715 | #define MCI_INFO_PRODUCT 256 | 
 
 
 
 
 | 716 | #define MCI_INFO_FILE 512 | 
 
 
 
 
 | 717 | #define MCI_INFO_MEDIA_UPC 1024 | 
 
 
 
 
 | 718 | #define MCI_INFO_MEDIA_IDENTITY 2048 | 
 
 
 
 
 | 719 | #define MCI_INFO_NAME 0x1000 | 
 
 
 
 
 | 720 | #define MCI_INFO_COPYRIGHT 0x2000 | 
 
 
 
 
 | 721 | #define MCI_GETDEVCAPS_ITEM 256 | 
 
 
 
 
 | 722 | #define MCI_GETDEVCAPS_CAN_RECORD 1 | 
 
 
 
 
 | 723 | #define MCI_GETDEVCAPS_HAS_AUDIO 2 | 
 
 
 
 
 | 724 | #define MCI_GETDEVCAPS_HAS_VIDEO 3 | 
 
 
 
 
 | 725 | #define MCI_GETDEVCAPS_DEVICE_TYPE 4 | 
 
 
 
 
 | 726 | #define MCI_GETDEVCAPS_USES_FILES 5 | 
 
 
 
 
 | 727 | #define MCI_GETDEVCAPS_COMPOUND_DEVICE 6 | 
 
 
 
 
 | 728 | #define MCI_GETDEVCAPS_CAN_EJECT 7 | 
 
 
 
 
 | 729 | #define MCI_GETDEVCAPS_CAN_PLAY 8 | 
 
 
 
 
 | 730 | #define MCI_GETDEVCAPS_CAN_SAVE 9 | 
 
 
 
 
 | 731 | #define MCI_SYSINFO_QUANTITY 256 | 
 
 
 
 
 | 732 | #define MCI_SYSINFO_OPEN 512 | 
 
 
 
 
 | 733 | #define MCI_SYSINFO_NAME 1024 | 
 
 
 
 
 | 734 | #define MCI_SYSINFO_INSTALLNAME 2048 | 
 
 
 
 
 | 735 | #define MCI_SET_DOOR_OPEN 256 | 
 
 
 
 
 | 736 | #define MCI_SET_DOOR_CLOSED 512 | 
 
 
 
 
 | 737 | #define MCI_SET_TIME_FORMAT 1024 | 
 
 
 
 
 | 738 | #define MCI_SET_AUDIO 2048 | 
 
 
 
 
 | 739 | #define MCI_SET_VIDEO 0x1000 | 
 
 
 
 
 | 740 | #define MCI_SET_ON 0x2000 | 
 
 
 
 
 | 741 | #define MCI_SET_OFF 0x4000 | 
 
 
 
 
 | 742 | #define MCI_SET_AUDIO_ALL 0 | 
 
 
 
 
 | 743 | #define MCI_SET_AUDIO_LEFT 1 | 
 
 
 
 
 | 744 | #define MCI_SET_AUDIO_RIGHT 2 | 
 
 
 
 
 | 745 | #define MCI_BREAK_KEY 256 | 
 
 
 
 
 | 746 | #define MCI_BREAK_HWND 512 | 
 
 
 
 
 | 747 | #define MCI_BREAK_OFF 1024 | 
 
 
 
 
 | 748 | #define MCI_RECORD_INSERT 256 | 
 
 
 
 
 | 749 | #define MCI_RECORD_OVERWRITE 512 | 
 
 
 
 
 | 750 | #define MCI_SAVE_FILE 256 | 
 
 
 
 
 | 751 | #define MCI_LOAD_FILE 256 | 
 
 
 
 
 | 752 | #define MCI_VD_MODE_PARK (MCI_VD_OFFSET+1) | 
 
 
 
 
 | 753 | #define MCI_VD_MEDIA_CLV (MCI_VD_OFFSET+2) | 
 
 
 
 
 | 754 | #define MCI_VD_MEDIA_CAV (MCI_VD_OFFSET+3) | 
 
 
 
 
 | 755 | #define MCI_VD_MEDIA_OTHER (MCI_VD_OFFSET+4) | 
 
 
 
 
 | 756 | #define MCI_VD_FORMAT_TRACK 0x4001 | 
 
 
 
 
 | 757 | #define MCI_VD_PLAY_REVERSE 0x10000 | 
 
 
 
 
 | 758 | #define MCI_VD_PLAY_FAST 0x20000 | 
 
 
 
 
 | 759 | #define MCI_VD_PLAY_SPEED 0x40000 | 
 
 
 
 
 | 760 | #define MCI_VD_PLAY_SCAN 0x80000 | 
 
 
 
 
 | 761 | #define MCI_VD_PLAY_SLOW 0x100000 | 
 
 
 
 
 | 762 | #define MCI_VD_SEEK_REVERSE 0x10000 | 
 
 
 
 
 | 763 | #define MCI_VD_STATUS_SPEED 0x4002 | 
 
 
 
 
 | 764 | #define MCI_VD_STATUS_FORWARD 0x4003 | 
 
 
 
 
 | 765 | #define MCI_VD_STATUS_MEDIA_TYPE 0x4004 | 
 
 
 
 
 | 766 | #define MCI_VD_STATUS_SIDE 0x4005 | 
 
 
 
 
 | 767 | #define MCI_VD_STATUS_DISC_SIZE 0x4006 | 
 
 
 
 
 | 768 | #define MCI_VD_GETDEVCAPS_CLV 0x10000 | 
 
 
 
 
 | 769 | #define MCI_VD_GETDEVCAPS_CAV 0x20000 | 
 
 
 
 
 | 770 | #define MCI_VD_SPIN_UP 0x10000 | 
 
 
 
 
 | 771 | #define MCI_VD_SPIN_DOWN 0x20000 | 
 
 
 
 
 | 772 | #define MCI_VD_GETDEVCAPS_CAN_REVERSE 0x4002 | 
 
 
 
 
 | 773 | #define MCI_VD_GETDEVCAPS_FAST_RATE 0x4003 | 
 
 
 
 
 | 774 | #define MCI_VD_GETDEVCAPS_SLOW_RATE 0x4004 | 
 
 
 
 
 | 775 | #define MCI_VD_GETDEVCAPS_NORMAL_RATE 0x4005 | 
 
 
 
 
 | 776 | #define MCI_VD_STEP_FRAMES 0x10000 | 
 
 
 
 
 | 777 | #define MCI_VD_STEP_REVERSE 0x20000 | 
 
 
 
 
 | 778 | #define MCI_VD_ESCAPE_STRING 256 | 
 
 
 
 
 | 779 | #define MCI_CDA_STATUS_TYPE_TRACK 0x4001 | 
 
 
 
 
 | 780 | #define MCI_CDA_TRACK_AUDIO MCI_CD_OFFSET | 
 
 
 
 
 | 781 | #define MCI_CDA_TRACK_OTHER (MCI_CD_OFFSET+1) | 
 
 
 
 
 | 782 | #define MCI_WAVE_PCM MCI_WAVE_OFFSET | 
 
 
 
 
 | 783 | #define MCI_WAVE_MAPPER (MCI_WAVE_OFFSET+1) | 
 
 
 
 
 | 784 | #define MCI_WAVE_OPEN_BUFFER 0x10000 | 
 
 
 
 
 | 785 | #define MCI_WAVE_SET_FORMATTAG 0x10000 | 
 
 
 
 
 | 786 | #define MCI_WAVE_SET_CHANNELS 0x20000 | 
 
 
 
 
 | 787 | #define MCI_WAVE_SET_SAMPLESPERSEC 0x40000 | 
 
 
 
 
 | 788 | #define MCI_WAVE_SET_AVGBYTESPERSEC 0x80000 | 
 
 
 
 
 | 789 | #define MCI_WAVE_SET_BLOCKALIGN 0x100000 | 
 
 
 
 
 | 790 | #define MCI_WAVE_SET_BITSPERSAMPLE 0x200000 | 
 
 
 
 
 | 791 | #define MCI_WAVE_INPUT 0x400000 | 
 
 
 
 
 | 792 | #define MCI_WAVE_OUTPUT 0x800000 | 
 
 
 
 
 | 793 | #define MCI_WAVE_STATUS_FORMATTAG 0x4001 | 
 
 
 
 
 | 794 | #define MCI_WAVE_STATUS_CHANNELS 0x4002 | 
 
 
 
 
 | 795 | #define MCI_WAVE_STATUS_SAMPLESPERSEC 0x4003 | 
 
 
 
 
 | 796 | #define MCI_WAVE_STATUS_AVGBYTESPERSEC 0x4004 | 
 
 
 
 
 | 797 | #define MCI_WAVE_STATUS_BLOCKALIGN 0x4005 | 
 
 
 
 
 | 798 | #define MCI_WAVE_STATUS_BITSPERSAMPLE 0x4006 | 
 
 
 
 
 | 799 | #define MCI_WAVE_STATUS_LEVEL 0x4007 | 
 
 
 
 
 | 800 | #define MCI_WAVE_SET_ANYINPUT 0x4000000 | 
 
 
 
 
 | 801 | #define MCI_WAVE_SET_ANYOUTPUT 0x8000000 | 
 
 
 
 
 | 802 | #define MCI_WAVE_GETDEVCAPS_INPUTS 0x4001 | 
 
 
 
 
 | 803 | #define MCI_WAVE_GETDEVCAPS_OUTPUTS 0x4002 | 
 
 
 
 
 | 804 | #define MCI_SEQ_DIV_PPQN MCI_SEQ_OFFSET | 
 
 
 
 
 | 805 | #define MCI_SEQ_DIV_SMPTE_24 (MCI_SEQ_OFFSET+1) | 
 
 
 
 
 | 806 | #define MCI_SEQ_DIV_SMPTE_25 (MCI_SEQ_OFFSET+2) | 
 
 
 
 
 | 807 | #define MCI_SEQ_DIV_SMPTE_30DROP (MCI_SEQ_OFFSET+3) | 
 
 
 
 
 | 808 | #define MCI_SEQ_DIV_SMPTE_30 (MCI_SEQ_OFFSET+4) | 
 
 
 
 
 | 809 | #define MCI_SEQ_FORMAT_SONGPTR 0x4001 | 
 
 
 
 
 | 810 | #define MCI_SEQ_FILE 0x4002 | 
 
 
 
 
 | 811 | #define MCI_SEQ_MIDI 0x4003 | 
 
 
 
 
 | 812 | #define MCI_SEQ_SMPTE 0x4004 | 
 
 
 
 
 | 813 | #define MCI_SEQ_NONE 65533 | 
 
 
 
 
 | 814 | #define MCI_SEQ_MAPPER 65535 | 
 
 
 
 
 | 815 | #define MCI_SEQ_STATUS_TEMPO 0x4002 | 
 
 
 
 
 | 816 | #define MCI_SEQ_STATUS_PORT 0x4003 | 
 
 
 
 
 | 817 | #define MCI_SEQ_STATUS_SLAVE 0x4007 | 
 
 
 
 
 | 818 | #define MCI_SEQ_STATUS_MASTER 0x4008 | 
 
 
 
 
 | 819 | #define MCI_SEQ_STATUS_OFFSET 0x4009 | 
 
 
 
 
 | 820 | #define MCI_SEQ_STATUS_DIVTYPE 0x400A | 
 
 
 
 
 | 821 | #define MCI_SEQ_STATUS_NAME 0x400B | 
 
 
 
 
 | 822 | #define MCI_SEQ_STATUS_COPYRIGHT 0x400C | 
 
 
 
 
 | 823 | #define MCI_SEQ_SET_TEMPO 0x10000 | 
 
 
 
 
 | 824 | #define MCI_SEQ_SET_PORT 0x20000 | 
 
 
 
 
 | 825 | #define MCI_SEQ_SET_SLAVE 0x40000 | 
 
 
 
 
 | 826 | #define MCI_SEQ_SET_MASTER 0x80000 | 
 
 
 
 
 | 827 | #define MCI_SEQ_SET_OFFSET 0x1000000 | 
 
 
 
 
 | 828 | #define MCI_ANIM_OPEN_WS 0x10000 | 
 
 
 
 
 | 829 | #define MCI_ANIM_OPEN_PARENT 0x20000 | 
 
 
 
 
 | 830 | #define MCI_ANIM_OPEN_NOSTATIC 0x40000 | 
 
 
 
 
 | 831 | #define MCI_ANIM_PLAY_SPEED 0x10000 | 
 
 
 
 
 | 832 | #define MCI_ANIM_PLAY_REVERSE 0x20000 | 
 
 
 
 
 | 833 | #define MCI_ANIM_PLAY_FAST 0x40000 | 
 
 
 
 
 | 834 | #define MCI_ANIM_PLAY_SLOW 0x80000 | 
 
 
 
 
 | 835 | #define MCI_ANIM_PLAY_SCAN 0x100000 | 
 
 
 
 
 | 836 | #define MCI_ANIM_STEP_REVERSE 0x10000 | 
 
 
 
 
 | 837 | #define MCI_ANIM_STEP_FRAMES 0x20000 | 
 
 
 
 
 | 838 | #define MCI_ANIM_STATUS_SPEED 0x4001 | 
 
 
 
 
 | 839 | #define MCI_ANIM_STATUS_FORWARD 0x4002 | 
 
 
 
 
 | 840 | #define MCI_ANIM_STATUS_HWND 0x4003 | 
 
 
 
 
 | 841 | #define MCI_ANIM_STATUS_HPAL 0x4004 | 
 
 
 
 
 | 842 | #define MCI_ANIM_STATUS_STRETCH 0x4005 | 
 
 
 
 
 | 843 | #define MCI_ANIM_INFO_TEXT 0x10000 | 
 
 
 
 
 | 844 | #define MCI_ANIM_GETDEVCAPS_CAN_REVERSE 0x4001 | 
 
 
 
 
 | 845 | #define MCI_ANIM_GETDEVCAPS_FAST_RATE 0x4002 | 
 
 
 
 
 | 846 | #define MCI_ANIM_GETDEVCAPS_SLOW_RATE 0x4003 | 
 
 
 
 
 | 847 | #define MCI_ANIM_GETDEVCAPS_NORMAL_RATE 0x4004 | 
 
 
 
 
 | 848 | #define MCI_ANIM_GETDEVCAPS_PALETTES 0x4006 | 
 
 
 
 
 | 849 | #define MCI_ANIM_GETDEVCAPS_CAN_STRETCH 0x4007 | 
 
 
 
 
 | 850 | #define MCI_ANIM_GETDEVCAPS_MAX_WINDOWS 0x4008 | 
 
 
 
 
 | 851 | #define MCI_ANIM_REALIZE_NORM 0x10000 | 
 
 
 
 
 | 852 | #define MCI_ANIM_REALIZE_BKGD 0x20000 | 
 
 
 
 
 | 853 | #define MCI_ANIM_WINDOW_HWND 0x10000 | 
 
 
 
 
 | 854 | #define MCI_ANIM_WINDOW_STATE 0x40000 | 
 
 
 
 
 | 855 | #define MCI_ANIM_WINDOW_TEXT 0x80000 | 
 
 
 
 
 | 856 | #define MCI_ANIM_WINDOW_ENABLE_STRETCH 0x100000 | 
 
 
 
 
 | 857 | #define MCI_ANIM_WINDOW_DISABLE_STRETCH 0x200000 | 
 
 
 
 
 | 858 | #define MCI_ANIM_WINDOW_DEFAULT 0xL | 
 
 
 
 
 | 859 | #define MCI_ANIM_RECT 0x10000 | 
 
 
 
 
 | 860 | #define MCI_ANIM_PUT_SOURCE 0x20000 | 
 
 
 
 
 | 861 | #define MCI_ANIM_PUT_DESTINATION 0x40000 | 
 
 
 
 
 | 862 | #define MCI_ANIM_WHERE_SOURCE 0x20000 | 
 
 
 
 
 | 863 | #define MCI_ANIM_WHERE_DESTINATION 0x40000 | 
 
 
 
 
 | 864 | #define MCI_ANIM_UPDATE_HDC 0x20000 | 
 
 
 
 
 | 865 | #define MCI_OVLY_OPEN_WS 0x10000 | 
 
 
 
 
 | 866 | #define MCI_OVLY_OPEN_PARENT 0x20000 | 
 
 
 
 
 | 867 | #define MCI_OVLY_STATUS_HWND 0x4001 | 
 
 
 
 
 | 868 | #define MCI_OVLY_STATUS_STRETCH 0x4002 | 
 
 
 
 
 | 869 | #define MCI_OVLY_INFO_TEXT 0x10000 | 
 
 
 
 
 | 870 | #define MCI_OVLY_GETDEVCAPS_CAN_STRETCH 0x4001 | 
 
 
 
 
 | 871 | #define MCI_OVLY_GETDEVCAPS_CAN_FREEZE 0x4002 | 
 
 
 
 
 | 872 | #define MCI_OVLY_GETDEVCAPS_MAX_WINDOWS 0x4003 | 
 
 
 
 
 | 873 | #define MCI_OVLY_WINDOW_HWND 0x10000 | 
 
 
 
 
 | 874 | #define MCI_OVLY_WINDOW_STATE 0x40000 | 
 
 
 
 
 | 875 | #define MCI_OVLY_WINDOW_TEXT 0x80000 | 
 
 
 
 
 | 876 | #define MCI_OVLY_WINDOW_ENABLE_STRETCH 0x100000 | 
 
 
 
 
 | 877 | #define MCI_OVLY_WINDOW_DISABLE_STRETCH 0x200000 | 
 
 
 
 
 | 878 | #define MCI_OVLY_WINDOW_DEFAULT 0xL | 
 
 
 
 
 | 879 | #define MCI_OVLY_RECT 0x10000 | 
 
 
 
 
 | 880 | #define MCI_OVLY_PUT_SOURCE 0x20000 | 
 
 
 
 
 | 881 | #define MCI_OVLY_PUT_DESTINATION 0x40000 | 
 
 
 
 
 | 882 | #define MCI_OVLY_PUT_FRAME 0x80000 | 
 
 
 
 
 | 883 | #define MCI_OVLY_PUT_VIDEO 0x100000 | 
 
 
 
 
 | 884 | #define MCI_OVLY_WHERE_SOURCE 0x20000 | 
 
 
 
 
 | 885 | #define MCI_OVLY_WHERE_DESTINATION 0x40000 | 
 
 
 
 
 | 886 | #define MCI_OVLY_WHERE_FRAME 0x80000 | 
 
 
 
 
 | 887 | #define MCI_OVLY_WHERE_VIDEO 0x100000 | 
 
 
 
 
 | 888 | #define NEWTRANSPARENT 3 | 
 
 
 
 
 | 889 | #define QUERYROPSUPPORT 40 | 
 
 
 
 
 | 890 | #define SELECTDIB 41 | 
 
 
 
 
 | 891 | #define DIBINDEX(n) MAKELONG((n),0x10FF) | 
 
 
 
 
 | 892 | #define SC_SCREENSAVE 0xF140 | 
 
 
 
 
 | 893 | #define CAPS1 94 | 
 
 
 
 
 | 894 | #define C1_TRANSPARENT 1 | 
 
 
 
 
 | 895 | #ifndef SEEK_SET | 
 
 
 
 
 | 896 | #define SEEK_SET 0 | 
 
 
 
 
 | 897 | #endif | 
 
 
 
 
 | 898 | #ifndef SEEK_CUR | 
 
 
 
 
 | 899 | #define SEEK_CUR 1 | 
 
 
 
 
 | 900 | #endif | 
 
 
 
 
 | 901 | #ifndef SEEK_END | 
 
 
 
 
 | 902 | #define SEEK_END 2 | 
 
 
 
 
 | 903 | #endif | 
 
 
 
 
 | 904 |  | 
 
 
 
 
 | 905 | typedef DWORD MCIERROR; | 
 
 
 
 
 | 906 | typedef UINT MCIDEVICEID; | 
 
 
 
 
 | 907 | typedef UINT(CALLBACK *YIELDPROC)(MCIDEVICEID,DWORD); | 
 
 
 
 
 | 908 | typedef UINT MMVERSION; | 
 
 
 
 
 | 909 | typedef UINT MMRESULT; | 
 
 
 
 
 | 910 | typedef struct mmtime_tag { | 
 
 
 
 
 | 911 | UINT wType; | 
 
 
 
 
 | 912 | union { | 
 
 
 
 
 | 913 | DWORD ms; | 
 
 
 
 
 | 914 | DWORD sample; | 
 
 
 
 
 | 915 | DWORD cb; | 
 
 
 
 
 | 916 | DWORD ticks; | 
 
 
 
 
 | 917 | struct { | 
 
 
 
 
 | 918 | BYTE hour; | 
 
 
 
 
 | 919 | BYTE min; | 
 
 
 
 
 | 920 | BYTE sec; | 
 
 
 
 
 | 921 | BYTE frame; | 
 
 
 
 
 | 922 | BYTE fps; | 
 
 
 
 
 | 923 | BYTE dummy; | 
 
 
 
 
 | 924 | BYTE pad[2]; | 
 
 
 
 
 | 925 | } smpte; | 
 
 
 
 
 | 926 | struct { | 
 
 
 
 
 | 927 | DWORD songptrpos; | 
 
 
 
 
 | 928 | } midi; | 
 
 
 
 
 | 929 | } u; | 
 
 
 
 
 | 930 | } MMTIME,*PMMTIME,*LPMMTIME; | 
 
 
 
 
 | 931 | DECLARE_HANDLE(HDRVR); | 
 
 
 
 
 | 932 | typedef struct tagDRVCONFIGINFO { | 
 
 
 
 
 | 933 | DWORD dwDCISize; | 
 
 
 
 
 | 934 | LPCWSTR lpszDCISectionName; | 
 
 
 
 
 | 935 | LPCWSTR lpszDCIAliasName; | 
 
 
 
 
 | 936 | } DRVCONFIGINFO,*PDRVCONFIGINFO,*LPDRVCONFIGINFO; | 
 
 
 
 
 | 937 | typedef struct DRVCONFIGINFOEX { | 
 
 
 
 
 | 938 | DWORD dwDCISize; | 
 
 
 
 
 | 939 | LPCWSTR lpszDCISectionName; | 
 
 
 
 
 | 940 | LPCWSTR lpszDCIAliasName; | 
 
 
 
 
 | 941 | DWORD dnDevNode; | 
 
 
 
 
 | 942 | } DRVCONFIGINFOEX,*PDRVCONFIGINFOEX,*LPDRVCONFIGINFOEX; | 
 
 
 
 
 | 943 | typedef LRESULT(CALLBACK* DRIVERPROC)(DWORD,HDRVR,UINT,LPARAM,LPARAM); | 
 
 
 
 
 | 944 | typedef void (CALLBACK DRVCALLBACK)(HDRVR,UINT,DWORD,DWORD,DWORD); | 
 
 
 
 
 | 945 | typedef DRVCALLBACK *LPDRVCALLBACK; | 
 
 
 
 
 | 946 | typedef DRVCALLBACK *PDRVCALLBACK; | 
 
 
 
 
 | 947 | DECLARE_HANDLE(HWAVE); | 
 
 
 
 
 | 948 | DECLARE_HANDLE(HWAVEIN); | 
 
 
 
 
 | 949 | DECLARE_HANDLE(HWAVEOUT); | 
 
 
 
 
 | 950 | typedef HWAVEIN *LPHWAVEIN; | 
 
 
 
 
 | 951 | typedef HWAVEOUT *LPHWAVEOUT; | 
 
 
 
 
 | 952 | typedef DRVCALLBACK WAVECALLBACK; | 
 
 
 
 
 | 953 | typedef WAVECALLBACK *LPWAVECALLBACK; | 
 
 
 
 
 | 954 | typedef struct wavehdr_tag { | 
 
 
 
 
 | 955 | LPSTR lpData; | 
 
 
 
 
 | 956 | DWORD dwBufferLength; | 
 
 
 
 
 | 957 | DWORD dwBytesRecorded; | 
 
 
 
 
 | 958 | DWORD dwUser; | 
 
 
 
 
 | 959 | DWORD dwFlags; | 
 
 
 
 
 | 960 | DWORD dwLoops; | 
 
 
 
 
 | 961 | struct wavehdr_tag *lpNext; | 
 
 
 
 
 | 962 | DWORD reserved; | 
 
 
 
 
 | 963 | } WAVEHDR,*PWAVEHDR,*LPWAVEHDR; | 
 
 
 
 
 | 964 | typedef struct tagWAVEOUTCAPSA { | 
 
 
 
 
 | 965 | WORD wMid; | 
 
 
 
 
 | 966 | WORD wPid; | 
 
 
 
 
 | 967 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 968 | CHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 969 | DWORD dwFormats; | 
 
 
 
 
 | 970 | WORD wChannels; | 
 
 
 
 
 | 971 | WORD wReserved1; | 
 
 
 
 
 | 972 | DWORD dwSupport; | 
 
 
 
 
 | 973 | } WAVEOUTCAPSA,*PWAVEOUTCAPSA,*LPWAVEOUTCAPSA; | 
 
 
 
 
 | 974 | typedef struct tagWAVEOUTCAPSW { | 
 
 
 
 
 | 975 | WORD wMid; | 
 
 
 
 
 | 976 | WORD wPid; | 
 
 
 
 
 | 977 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 978 | WCHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 979 | DWORD dwFormats; | 
 
 
 
 
 | 980 | WORD wChannels; | 
 
 
 
 
 | 981 | WORD wReserved1; | 
 
 
 
 
 | 982 | DWORD dwSupport; | 
 
 
 
 
 | 983 | } WAVEOUTCAPSW,*PWAVEOUTCAPSW,*LPWAVEOUTCAPSW; | 
 
 
 
 
 | 984 | typedef struct tagWAVEINCAPSA { | 
 
 
 
 
 | 985 | WORD wMid; | 
 
 
 
 
 | 986 | WORD wPid; | 
 
 
 
 
 | 987 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 988 | CHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 989 | DWORD dwFormats; | 
 
 
 
 
 | 990 | WORD wChannels; | 
 
 
 
 
 | 991 | WORD wReserved1; | 
 
 
 
 
 | 992 | } WAVEINCAPSA,*PWAVEINCAPSA,*LPWAVEINCAPSA; | 
 
 
 
 
 | 993 | typedef struct tagWAVEINCAPSW { | 
 
 
 
 
 | 994 | WORD wMid; | 
 
 
 
 
 | 995 | WORD wPid; | 
 
 
 
 
 | 996 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 997 | WCHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 998 | DWORD dwFormats; | 
 
 
 
 
 | 999 | WORD wChannels; | 
 
 
 
 
 | 1000 | WORD wReserved1; | 
 
 
 
 
 | 1001 | } WAVEINCAPSW,*PWAVEINCAPSW,*LPWAVEINCAPSW; | 
 
 
 
 
 | 1002 | typedef struct waveformat_tag { | 
 
 
 
 
 | 1003 | WORD wFormatTag; | 
 
 
 
 
 | 1004 | WORD nChannels; | 
 
 
 
 
 | 1005 | DWORD nSamplesPerSec; | 
 
 
 
 
 | 1006 | DWORD nAvgBytesPerSec; | 
 
 
 
 
 | 1007 | WORD nBlockAlign; | 
 
 
 
 
 | 1008 | } WAVEFORMAT,*PWAVEFORMAT,*LPWAVEFORMAT; | 
 
 
 
 
 | 1009 | typedef struct pcmwaveformat_tag { | 
 
 
 
 
 | 1010 | WAVEFORMAT wf; | 
 
 
 
 
 | 1011 | WORD wBitsPerSample; | 
 
 
 
 
 | 1012 | } PCMWAVEFORMAT, *PPCMWAVEFORMAT,*LPPCMWAVEFORMAT; | 
 
 
 
 
 | 1013 | #ifndef _LPCWAVEFORMATEX_DEFINED | 
 
 
 
 
 | 1014 | #define _LPCWAVEFORMATEX_DEFINED | 
 
 
 
 
 | 1015 | #define _WAVEFORMATEX_ | 
 
 
 
 
 | 1016 | typedef struct tWAVEFORMATEX { | 
 
 
 
 
 | 1017 | WORD wFormatTag; | 
 
 
 
 
 | 1018 | WORD nChannels; | 
 
 
 
 
 | 1019 | DWORD nSamplesPerSec; | 
 
 
 
 
 | 1020 | DWORD nAvgBytesPerSec; | 
 
 
 
 
 | 1021 | WORD nBlockAlign; | 
 
 
 
 
 | 1022 | WORD wBitsPerSample; | 
 
 
 
 
 | 1023 | WORD cbSize; | 
 
 
 
 
 | 1024 | } WAVEFORMATEX,*PWAVEFORMATEX,*LPWAVEFORMATEX; | 
 
 
 
 
 | 1025 | typedef const WAVEFORMATEX *LPCWAVEFORMATEX; | 
 
 
 
 
 | 1026 | #endif | 
 
 
 
 
 | 1027 | DECLARE_HANDLE(HMIDI); | 
 
 
 
 
 | 1028 | DECLARE_HANDLE(HMIDIIN); | 
 
 
 
 
 | 1029 | DECLARE_HANDLE(HMIDIOUT); | 
 
 
 
 
 | 1030 | DECLARE_HANDLE(HMIDISTRM); | 
 
 
 
 
 | 1031 | typedef HMIDI *LPHMIDI; | 
 
 
 
 
 | 1032 | typedef HMIDIIN *LPHMIDIIN; | 
 
 
 
 
 | 1033 | typedef HMIDIOUT *LPHMIDIOUT; | 
 
 
 
 
 | 1034 | typedef HMIDISTRM *LPHMIDISTRM; | 
 
 
 
 
 | 1035 | typedef DRVCALLBACK MIDICALLBACK; | 
 
 
 
 
 | 1036 | typedef MIDICALLBACK *LPMIDICALLBACK; | 
 
 
 
 
 | 1037 | typedef WORD PATCHARRAY[MIDIPATCHSIZE]; | 
 
 
 
 
 | 1038 | typedef WORD *LPPATCHARRAY; | 
 
 
 
 
 | 1039 | typedef WORD KEYARRAY[MIDIPATCHSIZE]; | 
 
 
 
 
 | 1040 | typedef WORD *LPKEYARRAY; | 
 
 
 
 
 | 1041 | typedef struct tagMIDIOUTCAPSA { | 
 
 
 
 
 | 1042 | WORD wMid; | 
 
 
 
 
 | 1043 | WORD wPid; | 
 
 
 
 
 | 1044 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1045 | CHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1046 | WORD wTechnology; | 
 
 
 
 
 | 1047 | WORD wVoices; | 
 
 
 
 
 | 1048 | WORD wNotes; | 
 
 
 
 
 | 1049 | WORD wChannelMask; | 
 
 
 
 
 | 1050 | DWORD dwSupport; | 
 
 
 
 
 | 1051 | } MIDIOUTCAPSA,*PMIDIOUTCAPSA,*LPMIDIOUTCAPSA; | 
 
 
 
 
 | 1052 | typedef struct tagMIDIOUTCAPSW { | 
 
 
 
 
 | 1053 | WORD wMid; | 
 
 
 
 
 | 1054 | WORD wPid; | 
 
 
 
 
 | 1055 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1056 | WCHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1057 | WORD wTechnology; | 
 
 
 
 
 | 1058 | WORD wVoices; | 
 
 
 
 
 | 1059 | WORD wNotes; | 
 
 
 
 
 | 1060 | WORD wChannelMask; | 
 
 
 
 
 | 1061 | DWORD dwSupport; | 
 
 
 
 
 | 1062 | } MIDIOUTCAPSW,*PMIDIOUTCAPSW,*LPMIDIOUTCAPSW; | 
 
 
 
 
 | 1063 | typedef struct tagMIDIINCAPSA { | 
 
 
 
 
 | 1064 | WORD wMid; | 
 
 
 
 
 | 1065 | WORD wPid; | 
 
 
 
 
 | 1066 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1067 | CHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1068 | DWORD dwSupport; | 
 
 
 
 
 | 1069 | } MIDIINCAPSA,*PMIDIINCAPSA,*LPMIDIINCAPSA; | 
 
 
 
 
 | 1070 | typedef struct tagMIDIINCAPSW { | 
 
 
 
 
 | 1071 | WORD wMid; | 
 
 
 
 
 | 1072 | WORD wPid; | 
 
 
 
 
 | 1073 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1074 | WCHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1075 | DWORD dwSupport; | 
 
 
 
 
 | 1076 | } MIDIINCAPSW,*PMIDIINCAPSW,*NPMIDIINCAPSW,*LPMIDIINCAPSW; | 
 
 
 
 
 | 1077 | typedef struct midihdr_tag { | 
 
 
 
 
 | 1078 | LPSTR lpData; | 
 
 
 
 
 | 1079 | DWORD dwBufferLength; | 
 
 
 
 
 | 1080 | DWORD dwBytesRecorded; | 
 
 
 
 
 | 1081 | DWORD dwUser; | 
 
 
 
 
 | 1082 | DWORD dwFlags; | 
 
 
 
 
 | 1083 | struct midihdr_tag *lpNext; | 
 
 
 
 
 | 1084 | DWORD reserved; | 
 
 
 
 
 | 1085 | DWORD dwOffset; | 
 
 
 
 
 | 1086 | DWORD dwReserved[8]; | 
 
 
 
 
 | 1087 | } MIDIHDR,*PMIDIHDR,*LPMIDIHDR; | 
 
 
 
 
 | 1088 | typedef struct midievent_tag { | 
 
 
 
 
 | 1089 | DWORD dwDeltaTime; | 
 
 
 
 
 | 1090 | DWORD dwStreamID; | 
 
 
 
 
 | 1091 | DWORD dwEvent; | 
 
 
 
 
 | 1092 | DWORD dwParms[1]; | 
 
 
 
 
 | 1093 | } MIDIEVENT; | 
 
 
 
 
 | 1094 | typedef struct midistrmbuffver_tag { | 
 
 
 
 
 | 1095 | DWORD dwVersion; | 
 
 
 
 
 | 1096 | DWORD dwMid; | 
 
 
 
 
 | 1097 | DWORD dwOEMVersion; | 
 
 
 
 
 | 1098 | } MIDISTRMBUFFVER; | 
 
 
 
 
 | 1099 | typedef struct midiproptimediv_tag { | 
 
 
 
 
 | 1100 | DWORD cbStruct; | 
 
 
 
 
 | 1101 | DWORD dwTimeDiv; | 
 
 
 
 
 | 1102 | } MIDIPROPTIMEDIV,*LPMIDIPROPTIMEDIV; | 
 
 
 
 
 | 1103 | typedef struct midiproptempo_tag { | 
 
 
 
 
 | 1104 | DWORD cbStruct; | 
 
 
 
 
 | 1105 | DWORD dwTempo; | 
 
 
 
 
 | 1106 | } MIDIPROPTEMPO,*LPMIDIPROPTEMPO; | 
 
 
 
 
 | 1107 | typedef struct tagAUXCAPSA { | 
 
 
 
 
 | 1108 | WORD wMid; | 
 
 
 
 
 | 1109 | WORD wPid; | 
 
 
 
 
 | 1110 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1111 | CHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1112 | WORD wTechnology; | 
 
 
 
 
 | 1113 | WORD wReserved1; | 
 
 
 
 
 | 1114 | DWORD dwSupport; | 
 
 
 
 
 | 1115 | } AUXCAPSA,*PAUXCAPSA,*LPAUXCAPSA; | 
 
 
 
 
 | 1116 | typedef struct tagAUXCAPSW { | 
 
 
 
 
 | 1117 | WORD wMid; | 
 
 
 
 
 | 1118 | WORD wPid; | 
 
 
 
 
 | 1119 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1120 | WCHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1121 | WORD wTechnology; | 
 
 
 
 
 | 1122 | WORD wReserved1; | 
 
 
 
 
 | 1123 | DWORD dwSupport; | 
 
 
 
 
 | 1124 | } AUXCAPSW,*PAUXCAPSW,*LPAUXCAPSW; | 
 
 
 
 
 | 1125 | DECLARE_HANDLE(HMIXEROBJ); | 
 
 
 
 
 | 1126 | typedef HMIXEROBJ *LPHMIXEROBJ; | 
 
 
 
 
 | 1127 | DECLARE_HANDLE(HMIXER); | 
 
 
 
 
 | 1128 | typedef HMIXER *LPHMIXER; | 
 
 
 
 
 | 1129 | typedef struct tagMIXERCAPSA { | 
 
 
 
 
 | 1130 | WORD wMid; | 
 
 
 
 
 | 1131 | WORD wPid; | 
 
 
 
 
 | 1132 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1133 | CHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1134 | DWORD fdwSupport; | 
 
 
 
 
 | 1135 | DWORD cDestinations; | 
 
 
 
 
 | 1136 | } MIXERCAPSA,*PMIXERCAPSA,*LPMIXERCAPSA; | 
 
 
 
 
 | 1137 | typedef struct tagMIXERCAPSW { | 
 
 
 
 
 | 1138 | WORD wMid; | 
 
 
 
 
 | 1139 | WORD wPid; | 
 
 
 
 
 | 1140 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1141 | WCHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1142 | DWORD fdwSupport; | 
 
 
 
 
 | 1143 | DWORD cDestinations; | 
 
 
 
 
 | 1144 | } MIXERCAPSW,*PMIXERCAPSW,*LPMIXERCAPSW; | 
 
 
 
 
 | 1145 | typedef struct tagMIXERLINEA { | 
 
 
 
 
 | 1146 | DWORD cbStruct; | 
 
 
 
 
 | 1147 | DWORD dwDestination; | 
 
 
 
 
 | 1148 | DWORD dwSource; | 
 
 
 
 
 | 1149 | DWORD dwLineID; | 
 
 
 
 
 | 1150 | DWORD fdwLine; | 
 
 
 
 
 | 1151 | DWORD dwUser; | 
 
 
 
 
 | 1152 | DWORD dwComponentType; | 
 
 
 
 
 | 1153 | DWORD cChannels; | 
 
 
 
 
 | 1154 | DWORD cConnections; | 
 
 
 
 
 | 1155 | DWORD cControls; | 
 
 
 
 
 | 1156 | CHAR szShortName[MIXER_SHORT_NAME_CHARS]; | 
 
 
 
 
 | 1157 | CHAR szName[MIXER_LONG_NAME_CHARS]; | 
 
 
 
 
 | 1158 | struct { | 
 
 
 
 
 | 1159 | DWORD dwType; | 
 
 
 
 
 | 1160 | DWORD dwDeviceID; | 
 
 
 
 
 | 1161 | WORD wMid; | 
 
 
 
 
 | 1162 | WORD wPid; | 
 
 
 
 
 | 1163 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1164 | CHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1165 | } Target; | 
 
 
 
 
 | 1166 | } MIXERLINEA,*PMIXERLINEA,*LPMIXERLINEA; | 
 
 
 
 
 | 1167 | typedef struct tagMIXERLINEW { | 
 
 
 
 
 | 1168 | DWORD cbStruct; | 
 
 
 
 
 | 1169 | DWORD dwDestination; | 
 
 
 
 
 | 1170 | DWORD dwSource; | 
 
 
 
 
 | 1171 | DWORD dwLineID; | 
 
 
 
 
 | 1172 | DWORD fdwLine; | 
 
 
 
 
 | 1173 | DWORD dwUser; | 
 
 
 
 
 | 1174 | DWORD dwComponentType; | 
 
 
 
 
 | 1175 | DWORD cChannels; | 
 
 
 
 
 | 1176 | DWORD cConnections; | 
 
 
 
 
 | 1177 | DWORD cControls; | 
 
 
 
 
 | 1178 | WCHAR szShortName[MIXER_SHORT_NAME_CHARS]; | 
 
 
 
 
 | 1179 | WCHAR szName[MIXER_LONG_NAME_CHARS]; | 
 
 
 
 
 | 1180 | struct { | 
 
 
 
 
 | 1181 | DWORD dwType; | 
 
 
 
 
 | 1182 | DWORD dwDeviceID; | 
 
 
 
 
 | 1183 | WORD wMid; | 
 
 
 
 
 | 1184 | WORD wPid; | 
 
 
 
 
 | 1185 | MMVERSION vDriverVersion; | 
 
 
 
 
 | 1186 | WCHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1187 | } Target; | 
 
 
 
 
 | 1188 | } MIXERLINEW,*PMIXERLINEW,*LPMIXERLINEW; | 
 
 
 
 
 | 1189 | typedef struct tagMIXERCONTROLA { | 
 
 
 
 
 | 1190 | DWORD cbStruct; | 
 
 
 
 
 | 1191 | DWORD dwControlID; | 
 
 
 
 
 | 1192 | DWORD dwControlType; | 
 
 
 
 
 | 1193 | DWORD fdwControl; | 
 
 
 
 
 | 1194 | DWORD cMultipleItems; | 
 
 
 
 
 | 1195 | CHAR szShortName[MIXER_SHORT_NAME_CHARS]; | 
 
 
 
 
 | 1196 | CHAR szName[MIXER_LONG_NAME_CHARS]; | 
 
 
 
 
 | 1197 | union { | 
 
 
 
 
 | 1198 | _ANONYMOUS_STRUCT struct { | 
 
 
 
 
 | 1199 | LONG lMinimum; | 
 
 
 
 
 | 1200 | LONG lMaximum; | 
 
 
 
 
 | 1201 | }_STRUCT_NAME(s); | 
 
 
 
 
 | 1202 | _ANONYMOUS_STRUCT struct { | 
 
 
 
 
 | 1203 | DWORD dwMinimum; | 
 
 
 
 
 | 1204 | DWORD dwMaximum; | 
 
 
 
 
 | 1205 | }_STRUCT_NAME(s1); | 
 
 
 
 
 | 1206 | DWORD dwReserved[6]; | 
 
 
 
 
 | 1207 | } Bounds; | 
 
 
 
 
 | 1208 | union { | 
 
 
 
 
 | 1209 | DWORD cSteps; | 
 
 
 
 
 | 1210 | DWORD cbCustomData; | 
 
 
 
 
 | 1211 | DWORD dwReserved[6]; | 
 
 
 
 
 | 1212 | } Metrics; | 
 
 
 
 
 | 1213 | } MIXERCONTROLA,*PMIXERCONTROLA,*LPMIXERCONTROLA; | 
 
 
 
 
 | 1214 | typedef struct tagMIXERCONTROLW { | 
 
 
 
 
 | 1215 | DWORD cbStruct; | 
 
 
 
 
 | 1216 | DWORD dwControlID; | 
 
 
 
 
 | 1217 | DWORD dwControlType; | 
 
 
 
 
 | 1218 | DWORD fdwControl; | 
 
 
 
 
 | 1219 | DWORD cMultipleItems; | 
 
 
 
 
 | 1220 | WCHAR szShortName[MIXER_SHORT_NAME_CHARS]; | 
 
 
 
 
 | 1221 | WCHAR szName[MIXER_LONG_NAME_CHARS]; | 
 
 
 
 
 | 1222 | union { | 
 
 
 
 
 | 1223 | _ANONYMOUS_STRUCT struct { | 
 
 
 
 
 | 1224 | LONG lMinimum; | 
 
 
 
 
 | 1225 | LONG lMaximum; | 
 
 
 
 
 | 1226 | }_STRUCT_NAME(s); | 
 
 
 
 
 | 1227 | _ANONYMOUS_STRUCT struct { | 
 
 
 
 
 | 1228 | DWORD dwMinimum; | 
 
 
 
 
 | 1229 | DWORD dwMaximum; | 
 
 
 
 
 | 1230 | }_STRUCT_NAME(s1); | 
 
 
 
 
 | 1231 | DWORD dwReserved[6]; | 
 
 
 
 
 | 1232 | } Bounds; | 
 
 
 
 
 | 1233 | union { | 
 
 
 
 
 | 1234 | DWORD cSteps; | 
 
 
 
 
 | 1235 | DWORD cbCustomData; | 
 
 
 
 
 | 1236 | DWORD dwReserved[6]; | 
 
 
 
 
 | 1237 | } Metrics; | 
 
 
 
 
 | 1238 | } MIXERCONTROLW,*PMIXERCONTROLW,*LPMIXERCONTROLW; | 
 
 
 
 
 | 1239 | typedef struct tagMIXERLINECONTROLSA { | 
 
 
 
 
 | 1240 | DWORD cbStruct; | 
 
 
 
 
 | 1241 | DWORD dwLineID; | 
 
 
 
 
 | 1242 | _ANONYMOUS_UNION union { | 
 
 
 
 
 | 1243 | DWORD dwControlID; | 
 
 
 
 
 | 1244 | DWORD dwControlType; | 
 
 
 
 
 | 1245 | } DUMMYUNIONNAME; | 
 
 
 
 
 | 1246 | DWORD cControls; | 
 
 
 
 
 | 1247 | DWORD cbmxctrl; | 
 
 
 
 
 | 1248 | LPMIXERCONTROLA pamxctrl; | 
 
 
 
 
 | 1249 | } MIXERLINECONTROLSA,*PMIXERLINECONTROLSA,*LPMIXERLINECONTROLSA; | 
 
 
 
 
 | 1250 | typedef struct tagMIXERLINECONTROLSW { | 
 
 
 
 
 | 1251 | DWORD cbStruct; | 
 
 
 
 
 | 1252 | DWORD dwLineID; | 
 
 
 
 
 | 1253 | _ANONYMOUS_UNION union { | 
 
 
 
 
 | 1254 | DWORD dwControlID; | 
 
 
 
 
 | 1255 | DWORD dwControlType; | 
 
 
 
 
 | 1256 | } DUMMYUNIONNAME; | 
 
 
 
 
 | 1257 | DWORD cControls; | 
 
 
 
 
 | 1258 | DWORD cbmxctrl; | 
 
 
 
 
 | 1259 | LPMIXERCONTROLW pamxctrl; | 
 
 
 
 
 | 1260 | } MIXERLINECONTROLSW,*PMIXERLINECONTROLSW,*LPMIXERLINECONTROLSW; | 
 
 
 
 
 | 1261 | typedef struct tMIXERCONTROLDETAILS { | 
 
 
 
 
 | 1262 | DWORD cbStruct; | 
 
 
 
 
 | 1263 | DWORD dwControlID; | 
 
 
 
 
 | 1264 | DWORD cChannels; | 
 
 
 
 
 | 1265 | _ANONYMOUS_UNION union { | 
 
 
 
 
 | 1266 | HWND hwndOwner; | 
 
 
 
 
 | 1267 | DWORD cMultipleItems; | 
 
 
 
 
 | 1268 | } DUMMYUNIONNAME; | 
 
 
 
 
 | 1269 | DWORD cbDetails; | 
 
 
 
 
 | 1270 | PVOID paDetails; | 
 
 
 
 
 | 1271 | } MIXERCONTROLDETAILS,*PMIXERCONTROLDETAILS,*LPMIXERCONTROLDETAILS; | 
 
 
 
 
 | 1272 | typedef struct tagMIXERCONTROLDETAILS_LISTTEXTA { | 
 
 
 
 
 | 1273 | DWORD dwParam1; | 
 
 
 
 
 | 1274 | DWORD dwParam2; | 
 
 
 
 
 | 1275 | CHAR szName[MIXER_LONG_NAME_CHARS]; | 
 
 
 
 
 | 1276 | } MIXERCONTROLDETAILS_LISTTEXTA,*PMIXERCONTROLDETAILS_LISTTEXTA,*LPMIXERCONTROLDETAILS_LISTTEXTA; | 
 
 
 
 
 | 1277 | typedef struct tagMIXERCONTROLDETAILS_LISTTEXTW { | 
 
 
 
 
 | 1278 | DWORD dwParam1; | 
 
 
 
 
 | 1279 | DWORD dwParam2; | 
 
 
 
 
 | 1280 | WCHAR szName[MIXER_LONG_NAME_CHARS]; | 
 
 
 
 
 | 1281 | } MIXERCONTROLDETAILS_LISTTEXTW,*PMIXERCONTROLDETAILS_LISTTEXTW,*LPMIXERCONTROLDETAILS_LISTTEXTW; | 
 
 
 
 
 | 1282 | typedef struct tMIXERCONTROLDETAILS_BOOLEAN { | 
 
 
 
 
 | 1283 | LONG fValue; | 
 
 
 
 
 | 1284 | } MIXERCONTROLDETAILS_BOOLEAN,*PMIXERCONTROLDETAILS_BOOLEAN,*LPMIXERCONTROLDETAILS_BOOLEAN; | 
 
 
 
 
 | 1285 | typedef struct tMIXERCONTROLDETAILS_SIGNED { | 
 
 
 
 
 | 1286 | LONG lValue; | 
 
 
 
 
 | 1287 | } MIXERCONTROLDETAILS_SIGNED,*PMIXERCONTROLDETAILS_SIGNED,*LPMIXERCONTROLDETAILS_SIGNED; | 
 
 
 
 
 | 1288 | typedef struct tMIXERCONTROLDETAILS_UNSIGNED { | 
 
 
 
 
 | 1289 | DWORD dwValue; | 
 
 
 
 
 | 1290 | } MIXERCONTROLDETAILS_UNSIGNED,*PMIXERCONTROLDETAILS_UNSIGNED,*LPMIXERCONTROLDETAILS_UNSIGNED; | 
 
 
 
 
 | 1291 | typedef void(CALLBACK TIMECALLBACK)(UINT,UINT,DWORD,DWORD,DWORD); | 
 
 
 
 
 | 1292 | typedef TIMECALLBACK *LPTIMECALLBACK; | 
 
 
 
 
 | 1293 | typedef struct timecaps_tag { | 
 
 
 
 
 | 1294 | UINT wPeriodMin; | 
 
 
 
 
 | 1295 | UINT wPeriodMax; | 
 
 
 
 
 | 1296 | } TIMECAPS,*PTIMECAPS,*LPTIMECAPS; | 
 
 
 
 
 | 1297 | typedef struct tagJOYCAPSA { | 
 
 
 
 
 | 1298 | WORD wMid; | 
 
 
 
 
 | 1299 | WORD wPid; | 
 
 
 
 
 | 1300 | CHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1301 | UINT wXmin; | 
 
 
 
 
 | 1302 | UINT wXmax; | 
 
 
 
 
 | 1303 | UINT wYmin; | 
 
 
 
 
 | 1304 | UINT wYmax; | 
 
 
 
 
 | 1305 | UINT wZmin; | 
 
 
 
 
 | 1306 | UINT wZmax; | 
 
 
 
 
 | 1307 | UINT wNumButtons; | 
 
 
 
 
 | 1308 | UINT wPeriodMin; | 
 
 
 
 
 | 1309 | UINT wPeriodMax; | 
 
 
 
 
 | 1310 | UINT wRmin; | 
 
 
 
 
 | 1311 | UINT wRmax; | 
 
 
 
 
 | 1312 | UINT wUmin; | 
 
 
 
 
 | 1313 | UINT wUmax; | 
 
 
 
 
 | 1314 | UINT wVmin; | 
 
 
 
 
 | 1315 | UINT wVmax; | 
 
 
 
 
 | 1316 | UINT wCaps; | 
 
 
 
 
 | 1317 | UINT wMaxAxes; | 
 
 
 
 
 | 1318 | UINT wNumAxes; | 
 
 
 
 
 | 1319 | UINT wMaxButtons; | 
 
 
 
 
 | 1320 | CHAR szRegKey[MAXPNAMELEN]; | 
 
 
 
 
 | 1321 | CHAR szOEMVxD[MAX_JOYSTICKOEMVXDNAME]; | 
 
 
 
 
 | 1322 | } JOYCAPSA,*PJOYCAPSA,*LPJOYCAPSA; | 
 
 
 
 
 | 1323 | typedef struct tagJOYCAPSW { | 
 
 
 
 
 | 1324 | WORD wMid; | 
 
 
 
 
 | 1325 | WORD wPid; | 
 
 
 
 
 | 1326 | WCHAR szPname[MAXPNAMELEN]; | 
 
 
 
 
 | 1327 | UINT wXmin; | 
 
 
 
 
 | 1328 | UINT wXmax; | 
 
 
 
 
 | 1329 | UINT wYmin; | 
 
 
 
 
 | 1330 | UINT wYmax; | 
 
 
 
 
 | 1331 | UINT wZmin; | 
 
 
 
 
 | 1332 | UINT wZmax; | 
 
 
 
 
 | 1333 | UINT wNumButtons; | 
 
 
 
 
 | 1334 | UINT wPeriodMin; | 
 
 
 
 
 | 1335 | UINT wPeriodMax; | 
 
 
 
 
 | 1336 | UINT wRmin; | 
 
 
 
 
 | 1337 | UINT wRmax; | 
 
 
 
 
 | 1338 | UINT wUmin; | 
 
 
 
 
 | 1339 | UINT wUmax; | 
 
 
 
 
 | 1340 | UINT wVmin; | 
 
 
 
 
 | 1341 | UINT wVmax; | 
 
 
 
 
 | 1342 | UINT wCaps; | 
 
 
 
 
 | 1343 | UINT wMaxAxes; | 
 
 
 
 
 | 1344 | UINT wNumAxes; | 
 
 
 
 
 | 1345 | UINT wMaxButtons; | 
 
 
 
 
 | 1346 | WCHAR szRegKey[MAXPNAMELEN]; | 
 
 
 
 
 | 1347 | WCHAR szOEMVxD[MAX_JOYSTICKOEMVXDNAME]; | 
 
 
 
 
 | 1348 | } JOYCAPSW,*PJOYCAPSW,*LPJOYCAPSW; | 
 
 
 
 
 | 1349 | typedef struct joyinfo_tag { | 
 
 
 
 
 | 1350 | UINT wXpos; | 
 
 
 
 
 | 1351 | UINT wYpos; | 
 
 
 
 
 | 1352 | UINT wZpos; | 
 
 
 
 
 | 1353 | UINT wButtons; | 
 
 
 
 
 | 1354 | } JOYINFO,*PJOYINFO,*LPJOYINFO; | 
 
 
 
 
 | 1355 | typedef struct joyinfoex_tag { | 
 
 
 
 
 | 1356 | DWORD dwSize; | 
 
 
 
 
 | 1357 | DWORD dwFlags; | 
 
 
 
 
 | 1358 | DWORD dwXpos; | 
 
 
 
 
 | 1359 | DWORD dwYpos; | 
 
 
 
 
 | 1360 | DWORD dwZpos; | 
 
 
 
 
 | 1361 | DWORD dwRpos; | 
 
 
 
 
 | 1362 | DWORD dwUpos; | 
 
 
 
 
 | 1363 | DWORD dwVpos; | 
 
 
 
 
 | 1364 | DWORD dwButtons; | 
 
 
 
 
 | 1365 | DWORD dwButtonNumber; | 
 
 
 
 
 | 1366 | DWORD dwPOV; | 
 
 
 
 
 | 1367 | DWORD dwReserved1; | 
 
 
 
 
 | 1368 | DWORD dwReserved2; | 
 
 
 
 
 | 1369 | } JOYINFOEX,*PJOYINFOEX,*LPJOYINFOEX; | 
 
 
 
 
 | 1370 | typedef DWORD FOURCC; | 
 
 
 
 
 | 1371 | typedef char *HPSTR; | 
 
 
 
 
 | 1372 | DECLARE_HANDLE(HMMIO); | 
 
 
 
 
 | 1373 | typedef LRESULT (CALLBACK MMIOPROC)(LPSTR,UINT,LPARAM,LPARAM); | 
 
 
 
 
 | 1374 | typedef MMIOPROC *LPMMIOPROC; | 
 
 
 
 
 | 1375 | typedef struct _MMIOINFO { | 
 
 
 
 
 | 1376 | DWORD dwFlags; | 
 
 
 
 
 | 1377 | FOURCC fccIOProc; | 
 
 
 
 
 | 1378 | LPMMIOPROC pIOProc; | 
 
 
 
 
 | 1379 | UINT wErrorRet; | 
 
 
 
 
 | 1380 | HTASK htask; | 
 
 
 
 
 | 1381 | LONG cchBuffer; | 
 
 
 
 
 | 1382 | HPSTR pchBuffer; | 
 
 
 
 
 | 1383 | HPSTR pchNext; | 
 
 
 
 
 | 1384 | HPSTR pchEndRead; | 
 
 
 
 
 | 1385 | HPSTR pchEndWrite; | 
 
 
 
 
 | 1386 | LONG lBufOffset; | 
 
 
 
 
 | 1387 | LONG lDiskOffset; | 
 
 
 
 
 | 1388 | DWORD adwInfo[3]; | 
 
 
 
 
 | 1389 | DWORD dwReserved1; | 
 
 
 
 
 | 1390 | DWORD dwReserved2; | 
 
 
 
 
 | 1391 | HMMIO hmmio; | 
 
 
 
 
 | 1392 | } MMIOINFO,*PMMIOINFO,*LPMMIOINFO; | 
 
 
 
 
 | 1393 | typedef const MMIOINFO *LPCMMIOINFO; | 
 
 
 
 
 | 1394 | typedef struct _MMCKINFO { | 
 
 
 
 
 | 1395 | FOURCC ckid; | 
 
 
 
 
 | 1396 | DWORD cksize; | 
 
 
 
 
 | 1397 | FOURCC fccType; | 
 
 
 
 
 | 1398 | DWORD dwDataOffset; | 
 
 
 
 
 | 1399 | DWORD dwFlags; | 
 
 
 
 
 | 1400 | } MMCKINFO,*PMMCKINFO,*LPMMCKINFO; | 
 
 
 
 
 | 1401 | typedef const MMCKINFO *LPCMMCKINFO; | 
 
 
 
 
 | 1402 | typedef struct tagMCI_GENERIC_PARMS { | 
 
 
 
 
 | 1403 | DWORD dwCallback; | 
 
 
 
 
 | 1404 | } MCI_GENERIC_PARMS,*PMCI_GENERIC_PARMS,*LPMCI_GENERIC_PARMS; | 
 
 
 
 
 | 1405 | typedef struct tagMCI_OPEN_PARMSA { | 
 
 
 
 
 | 1406 | DWORD dwCallback; | 
 
 
 
 
 | 1407 | MCIDEVICEID wDeviceID; | 
 
 
 
 
 | 1408 | LPCSTR lpstrDeviceType; | 
 
 
 
 
 | 1409 | LPCSTR lpstrElementName; | 
 
 
 
 
 | 1410 | LPCSTR lpstrAlias; | 
 
 
 
 
 | 1411 | } MCI_OPEN_PARMSA,*PMCI_OPEN_PARMSA,*LPMCI_OPEN_PARMSA; | 
 
 
 
 
 | 1412 | typedef struct tagMCI_OPEN_PARMSW { | 
 
 
 
 
 | 1413 | DWORD dwCallback; | 
 
 
 
 
 | 1414 | MCIDEVICEID wDeviceID; | 
 
 
 
 
 | 1415 | LPCWSTR lpstrDeviceType; | 
 
 
 
 
 | 1416 | LPCWSTR lpstrElementName; | 
 
 
 
 
 | 1417 | LPCWSTR lpstrAlias; | 
 
 
 
 
 | 1418 | } MCI_OPEN_PARMSW,*PMCI_OPEN_PARMSW,*LPMCI_OPEN_PARMSW; | 
 
 
 
 
 | 1419 | typedef struct tagMCI_PLAY_PARMS { | 
 
 
 
 
 | 1420 | DWORD dwCallback; | 
 
 
 
 
 | 1421 | DWORD dwFrom; | 
 
 
 
 
 | 1422 | DWORD dwTo; | 
 
 
 
 
 | 1423 | } MCI_PLAY_PARMS,*PMCI_PLAY_PARMS,*LPMCI_PLAY_PARMS; | 
 
 
 
 
 | 1424 | typedef struct tagMCI_SEEK_PARMS { | 
 
 
 
 
 | 1425 | DWORD dwCallback; | 
 
 
 
 
 | 1426 | DWORD dwTo; | 
 
 
 
 
 | 1427 | } MCI_SEEK_PARMS, *PMCI_SEEK_PARMS,*LPMCI_SEEK_PARMS; | 
 
 
 
 
 | 1428 | typedef struct tagMCI_STATUS_PARMS { | 
 
 
 
 
 | 1429 | DWORD dwCallback; | 
 
 
 
 
 | 1430 | DWORD dwReturn; | 
 
 
 
 
 | 1431 | DWORD dwItem; | 
 
 
 
 
 | 1432 | DWORD dwTrack; | 
 
 
 
 
 | 1433 | } MCI_STATUS_PARMS,*PMCI_STATUS_PARMS,*LPMCI_STATUS_PARMS; | 
 
 
 
 
 | 1434 | typedef struct tagMCI_INFO_PARMSA { | 
 
 
 
 
 | 1435 | DWORD dwCallback; | 
 
 
 
 
 | 1436 | LPSTR lpstrReturn; | 
 
 
 
 
 | 1437 | DWORD dwRetSize; | 
 
 
 
 
 | 1438 | } MCI_INFO_PARMSA,*LPMCI_INFO_PARMSA; | 
 
 
 
 
 | 1439 | typedef struct tagMCI_INFO_PARMSW { | 
 
 
 
 
 | 1440 | DWORD dwCallback; | 
 
 
 
 
 | 1441 | LPWSTR lpstrReturn; | 
 
 
 
 
 | 1442 | DWORD dwRetSize; | 
 
 
 
 
 | 1443 | } MCI_INFO_PARMSW,*LPMCI_INFO_PARMSW; | 
 
 
 
 
 | 1444 | typedef struct tagMCI_GETDEVCAPS_PARMS { | 
 
 
 
 
 | 1445 | DWORD dwCallback; | 
 
 
 
 
 | 1446 | DWORD dwReturn; | 
 
 
 
 
 | 1447 | DWORD dwItem; | 
 
 
 
 
 | 1448 | } MCI_GETDEVCAPS_PARMS,*PMCI_GETDEVCAPS_PARMS,*LPMCI_GETDEVCAPS_PARMS; | 
 
 
 
 
 | 1449 | typedef struct tagMCI_SYSINFO_PARMSA { | 
 
 
 
 
 | 1450 | DWORD dwCallback; | 
 
 
 
 
 | 1451 | LPSTR lpstrReturn; | 
 
 
 
 
 | 1452 | DWORD dwRetSize; | 
 
 
 
 
 | 1453 | DWORD dwNumber; | 
 
 
 
 
 | 1454 | UINT wDeviceType; | 
 
 
 
 
 | 1455 | } MCI_SYSINFO_PARMSA,*PMCI_SYSINFO_PARMSA,*LPMCI_SYSINFO_PARMSA; | 
 
 
 
 
 | 1456 | typedef struct tagMCI_SYSINFO_PARMSW { | 
 
 
 
 
 | 1457 | DWORD dwCallback; | 
 
 
 
 
 | 1458 | LPWSTR lpstrReturn; | 
 
 
 
 
 | 1459 | DWORD dwRetSize; | 
 
 
 
 
 | 1460 | DWORD dwNumber; | 
 
 
 
 
 | 1461 | UINT wDeviceType; | 
 
 
 
 
 | 1462 | } MCI_SYSINFO_PARMSW,*PMCI_SYSINFO_PARMSW,*LPMCI_SYSINFO_PARMSW; | 
 
 
 
 
 | 1463 | typedef struct tagMCI_SET_PARMS { | 
 
 
 
 
 | 1464 | DWORD dwCallback; | 
 
 
 
 
 | 1465 | DWORD dwTimeFormat; | 
 
 
 
 
 | 1466 | DWORD dwAudio; | 
 
 
 
 
 | 1467 | } MCI_SET_PARMS,*PMCI_SET_PARMS,*LPMCI_SET_PARMS; | 
 
 
 
 
 | 1468 | typedef struct tagMCI_BREAK_PARMS { | 
 
 
 
 
 | 1469 | DWORD dwCallback; | 
 
 
 
 
 | 1470 | int nVirtKey; | 
 
 
 
 
 | 1471 | HWND hwndBreak; | 
 
 
 
 
 | 1472 | } MCI_BREAK_PARMS,*PMCI_BREAK_PARMS,*LPMCI_BREAK_PARMS; | 
 
 
 
 
 | 1473 | typedef struct tagMCI_SAVE_PARMSA { | 
 
 
 
 
 | 1474 | DWORD dwCallback; | 
 
 
 
 
 | 1475 | LPCSTR lpfilename; | 
 
 
 
 
 | 1476 | } MCI_SAVE_PARMSA,*PMCI_SAVE_PARMSA,*LPMCI_SAVE_PARMSA; | 
 
 
 
 
 | 1477 | typedef struct tagMCI_SAVE_PARMSW { | 
 
 
 
 
 | 1478 | DWORD dwCallback; | 
 
 
 
 
 | 1479 | LPCWSTR lpfilename; | 
 
 
 
 
 | 1480 | } MCI_SAVE_PARMSW,*PMCI_SAVE_PARMSW,*LPMCI_SAVE_PARMSW; | 
 
 
 
 
 | 1481 | typedef struct tagMCI_LOAD_PARMSA { | 
 
 
 
 
 | 1482 | DWORD dwCallback; | 
 
 
 
 
 | 1483 | LPCSTR lpfilename; | 
 
 
 
 
 | 1484 | } MCI_LOAD_PARMSA,*PMCI_LOAD_PARMSA,*LPMCI_LOAD_PARMSA; | 
 
 
 
 
 | 1485 | typedef struct tagMCI_LOAD_PARMSW { | 
 
 
 
 
 | 1486 | DWORD dwCallback; | 
 
 
 
 
 | 1487 | LPCWSTR lpfilename; | 
 
 
 
 
 | 1488 | } MCI_LOAD_PARMSW,*PMCI_LOAD_PARMSW,*LPMCI_LOAD_PARMSW; | 
 
 
 
 
 | 1489 | typedef struct tagMCI_RECORD_PARMS { | 
 
 
 
 
 | 1490 | DWORD dwCallback; | 
 
 
 
 
 | 1491 | DWORD dwFrom; | 
 
 
 
 
 | 1492 | DWORD dwTo; | 
 
 
 
 
 | 1493 | } MCI_RECORD_PARMS,*LPMCI_RECORD_PARMS; | 
 
 
 
 
 | 1494 | typedef struct tagMCI_VD_PLAY_PARMS { | 
 
 
 
 
 | 1495 | DWORD dwCallback; | 
 
 
 
 
 | 1496 | DWORD dwFrom; | 
 
 
 
 
 | 1497 | DWORD dwTo; | 
 
 
 
 
 | 1498 | DWORD dwSpeed; | 
 
 
 
 
 | 1499 | } MCI_VD_PLAY_PARMS,*PMCI_VD_PLAY_PARMS,*LPMCI_VD_PLAY_PARMS; | 
 
 
 
 
 | 1500 | typedef struct tagMCI_VD_STEP_PARMS { | 
 
 
 
 
 | 1501 | DWORD dwCallback; | 
 
 
 
 
 | 1502 | DWORD dwFrames; | 
 
 
 
 
 | 1503 | } MCI_VD_STEP_PARMS,*PMCI_VD_STEP_PARMS,*LPMCI_VD_STEP_PARMS; | 
 
 
 
 
 | 1504 | typedef struct tagMCI_VD_ESCAPE_PARMSA { | 
 
 
 
 
 | 1505 | DWORD dwCallback; | 
 
 
 
 
 | 1506 | LPCSTR lpstrCommand; | 
 
 
 
 
 | 1507 | } MCI_VD_ESCAPE_PARMSA,*PMCI_VD_ESCAPE_PARMSA,*LPMCI_VD_ESCAPE_PARMSA; | 
 
 
 
 
 | 1508 | typedef struct tagMCI_VD_ESCAPE_PARMSW { | 
 
 
 
 
 | 1509 | DWORD dwCallback; | 
 
 
 
 
 | 1510 | LPCWSTR lpstrCommand; | 
 
 
 
 
 | 1511 | } MCI_VD_ESCAPE_PARMSW,*PMCI_VD_ESCAPE_PARMSW,*LPMCI_VD_ESCAPE_PARMSW; | 
 
 
 
 
 | 1512 | typedef struct tagMCI_WAVE_OPEN_PARMSA { | 
 
 
 
 
 | 1513 | DWORD dwCallback; | 
 
 
 
 
 | 1514 | MCIDEVICEID wDeviceID; | 
 
 
 
 
 | 1515 | LPCSTR lpstrDeviceType; | 
 
 
 
 
 | 1516 | LPCSTR lpstrElementName; | 
 
 
 
 
 | 1517 | LPCSTR lpstrAlias; | 
 
 
 
 
 | 1518 | DWORD dwBufferSeconds; | 
 
 
 
 
 | 1519 | } MCI_WAVE_OPEN_PARMSA,*PMCI_WAVE_OPEN_PARMSA,*LPMCI_WAVE_OPEN_PARMSA; | 
 
 
 
 
 | 1520 | typedef struct tagMCI_WAVE_OPEN_PARMSW { | 
 
 
 
 
 | 1521 | DWORD dwCallback; | 
 
 
 
 
 | 1522 | MCIDEVICEID wDeviceID; | 
 
 
 
 
 | 1523 | LPCWSTR lpstrDeviceType; | 
 
 
 
 
 | 1524 | LPCWSTR lpstrElementName; | 
 
 
 
 
 | 1525 | LPCWSTR lpstrAlias; | 
 
 
 
 
 | 1526 | DWORD dwBufferSeconds; | 
 
 
 
 
 | 1527 | } MCI_WAVE_OPEN_PARMSW,*PMCI_WAVE_OPEN_PARMSW,*LPMCI_WAVE_OPEN_PARMSW; | 
 
 
 
 
 | 1528 | typedef struct tagMCI_WAVE_DELETE_PARMS { | 
 
 
 
 
 | 1529 | DWORD dwCallback; | 
 
 
 
 
 | 1530 | DWORD dwFrom; | 
 
 
 
 
 | 1531 | DWORD dwTo; | 
 
 
 
 
 | 1532 | } MCI_WAVE_DELETE_PARMS, *PMCI_WAVE_DELETE_PARMS,*LPMCI_WAVE_DELETE_PARMS; | 
 
 
 
 
 | 1533 | typedef struct tagMCI_WAVE_SET_PARMS { | 
 
 
 
 
 | 1534 | DWORD dwCallback; | 
 
 
 
 
 | 1535 | DWORD dwTimeFormat; | 
 
 
 
 
 | 1536 | DWORD dwAudio; | 
 
 
 
 
 | 1537 | UINT wInput; | 
 
 
 
 
 | 1538 | UINT wOutput; | 
 
 
 
 
 | 1539 | WORD wFormatTag; | 
 
 
 
 
 | 1540 | WORD wReserved2; | 
 
 
 
 
 | 1541 | WORD nChannels; | 
 
 
 
 
 | 1542 | WORD wReserved3; | 
 
 
 
 
 | 1543 | DWORD nSamplesPerSec; | 
 
 
 
 
 | 1544 | DWORD nAvgBytesPerSec; | 
 
 
 
 
 | 1545 | WORD nBlockAlign; | 
 
 
 
 
 | 1546 | WORD wReserved4; | 
 
 
 
 
 | 1547 | WORD wBitsPerSample; | 
 
 
 
 
 | 1548 | WORD wReserved5; | 
 
 
 
 
 | 1549 | } MCI_WAVE_SET_PARMS,*PMCI_WAVE_SET_PARMS,*LPMCI_WAVE_SET_PARMS; | 
 
 
 
 
 | 1550 |  | 
 
 
 
 
 | 1551 | LRESULT WINAPI CloseDriver(HDRVR,LONG,LONG); | 
 
 
 
 
 | 1552 | HDRVR WINAPI OpenDriver(LPCWSTR,LPCWSTR,LONG); | 
 
 
 
 
 | 1553 | LRESULT WINAPI SendDriverMessage(HDRVR,UINT,LONG,LONG); | 
 
 
 
 
 | 1554 | HMODULE WINAPI DrvGetModuleHandle(HDRVR); | 
 
 
 
 
 | 1555 | HMODULE WINAPI GetDriverModuleHandle(HDRVR); | 
 
 
 
 
 | 1556 | LRESULT WINAPI DefDriverProc(DWORD,HDRVR,UINT,LPARAM,LPARAM); | 
 
 
 
 
 | 1557 | UINT WINAPI mmsystemGetVersion(void); | 
 
 
 
 
 | 1558 | #define OutputDebugStr OutputDebugString | 
 
 
 
 
 | 1559 | BOOL WINAPI sndPlaySoundA(LPCSTR,UINT); | 
 
 
 
 
 | 1560 | BOOL WINAPI sndPlaySoundW(LPCWSTR,UINT); | 
 
 
 
 
 | 1561 | BOOL WINAPI PlaySoundA(LPCSTR,HMODULE,DWORD); | 
 
 
 
 
 | 1562 | BOOL WINAPI PlaySoundW(LPCWSTR,HMODULE,DWORD); | 
 
 
 
 
 | 1563 | UINT WINAPI waveOutGetNumDevs(void); | 
 
 
 
 
 | 1564 | MMRESULT WINAPI waveOutGetDevCapsA(UINT,LPWAVEOUTCAPSA,UINT); | 
 
 
 
 
 | 1565 | MMRESULT WINAPI waveOutGetDevCapsW(UINT,LPWAVEOUTCAPSW,UINT); | 
 
 
 
 
 | 1566 | MMRESULT WINAPI waveOutGetVolume(HWAVEOUT,PDWORD); | 
 
 
 
 
 | 1567 | MMRESULT WINAPI waveOutSetVolume(HWAVEOUT,DWORD); | 
 
 
 
 
 | 1568 | MMRESULT WINAPI waveOutGetErrorTextA(MMRESULT,LPSTR,UINT); | 
 
 
 
 
 | 1569 | MMRESULT WINAPI waveOutGetErrorTextW(MMRESULT,LPWSTR,UINT); | 
 
 
 
 
 | 1570 | MMRESULT WINAPI waveOutOpen(LPHWAVEOUT,UINT,LPCWAVEFORMATEX,DWORD,DWORD,DWORD); | 
 
 
 
 
 | 1571 | MMRESULT WINAPI waveOutClose(HWAVEOUT); | 
 
 
 
 
 | 1572 | MMRESULT WINAPI waveOutPrepareHeader(HWAVEOUT,LPWAVEHDR,UINT); | 
 
 
 
 
 | 1573 | MMRESULT WINAPI waveOutUnprepareHeader(HWAVEOUT,LPWAVEHDR,UINT); | 
 
 
 
 
 | 1574 | MMRESULT WINAPI waveOutWrite(HWAVEOUT,LPWAVEHDR,UINT); | 
 
 
 
 
 | 1575 | MMRESULT WINAPI waveOutPause(HWAVEOUT); | 
 
 
 
 
 | 1576 | MMRESULT WINAPI waveOutRestart(HWAVEOUT); | 
 
 
 
 
 | 1577 | MMRESULT WINAPI waveOutReset(HWAVEOUT); | 
 
 
 
 
 | 1578 | MMRESULT WINAPI waveOutBreakLoop(HWAVEOUT); | 
 
 
 
 
 | 1579 | MMRESULT WINAPI waveOutGetPosition(HWAVEOUT,LPMMTIME,UINT); | 
 
 
 
 
 | 1580 | MMRESULT WINAPI waveOutGetPitch(HWAVEOUT,PDWORD); | 
 
 
 
 
 | 1581 | MMRESULT WINAPI waveOutSetPitch(HWAVEOUT,DWORD); | 
 
 
 
 
 | 1582 | MMRESULT WINAPI waveOutGetPlaybackRate(HWAVEOUT,PDWORD); | 
 
 
 
 
 | 1583 | MMRESULT WINAPI waveOutSetPlaybackRate(HWAVEOUT,DWORD); | 
 
 
 
 
 | 1584 | MMRESULT WINAPI waveOutGetID(HWAVEOUT,LPUINT); | 
 
 
 
 
 | 1585 | MMRESULT WINAPI waveOutMessage(HWAVEOUT,UINT,DWORD,DWORD); | 
 
 
 
 
 | 1586 | UINT WINAPI waveInGetNumDevs(void); | 
 
 
 
 
 | 1587 | MMRESULT WINAPI waveInGetDevCapsA(UINT,LPWAVEINCAPSA,UINT); | 
 
 
 
 
 | 1588 | MMRESULT WINAPI waveInGetDevCapsW(UINT,LPWAVEINCAPSW,UINT); | 
 
 
 
 
 | 1589 | MMRESULT WINAPI waveInGetErrorTextA(MMRESULT,LPSTR,UINT); | 
 
 
 
 
 | 1590 | MMRESULT WINAPI waveInGetErrorTextW(MMRESULT,LPWSTR,UINT); | 
 
 
 
 
 | 1591 | MMRESULT WINAPI waveInOpen(LPHWAVEIN,UINT,LPCWAVEFORMATEX,DWORD,DWORD,DWORD); | 
 
 
 
 
 | 1592 | MMRESULT WINAPI waveInClose(HWAVEIN); | 
 
 
 
 
 | 1593 | MMRESULT WINAPI waveInPrepareHeader(HWAVEIN,LPWAVEHDR,UINT); | 
 
 
 
 
 | 1594 | MMRESULT WINAPI waveInUnprepareHeader(HWAVEIN,LPWAVEHDR,UINT); | 
 
 
 
 
 | 1595 | MMRESULT WINAPI waveInAddBuffer(HWAVEIN,LPWAVEHDR,UINT); | 
 
 
 
 
 | 1596 | MMRESULT WINAPI waveInStart(HWAVEIN); | 
 
 
 
 
 | 1597 | MMRESULT WINAPI waveInStop(HWAVEIN); | 
 
 
 
 
 | 1598 | MMRESULT WINAPI waveInReset(HWAVEIN); | 
 
 
 
 
 | 1599 | MMRESULT WINAPI waveInGetPosition(HWAVEIN,LPMMTIME,UINT); | 
 
 
 
 
 | 1600 | MMRESULT WINAPI waveInGetID(HWAVEIN,LPUINT); | 
 
 
 
 
 | 1601 | MMRESULT WINAPI waveInMessage(HWAVEIN,UINT,DWORD,DWORD); | 
 
 
 
 
 | 1602 | UINT WINAPI midiOutGetNumDevs(void); | 
 
 
 
 
 | 1603 | MMRESULT WINAPI midiStreamOpen(LPHMIDISTRM,LPUINT,DWORD,DWORD,DWORD,DWORD); | 
 
 
 
 
 | 1604 | MMRESULT WINAPI midiStreamClose(HMIDISTRM); | 
 
 
 
 
 | 1605 | MMRESULT WINAPI midiStreamProperty(HMIDISTRM,LPBYTE,DWORD); | 
 
 
 
 
 | 1606 | MMRESULT WINAPI midiStreamPosition(HMIDISTRM,LPMMTIME,UINT); | 
 
 
 
 
 | 1607 | MMRESULT WINAPI midiStreamOut(HMIDISTRM,LPMIDIHDR,UINT); | 
 
 
 
 
 | 1608 | MMRESULT WINAPI midiStreamPause(HMIDISTRM); | 
 
 
 
 
 | 1609 | MMRESULT WINAPI midiStreamRestart(HMIDISTRM); | 
 
 
 
 
 | 1610 | MMRESULT WINAPI midiStreamStop(HMIDISTRM); | 
 
 
 
 
 | 1611 | MMRESULT WINAPI midiConnect(HMIDI,HMIDIOUT,PVOID); | 
 
 
 
 
 | 1612 | MMRESULT WINAPI midiDisconnect(HMIDI,HMIDIOUT,PVOID); | 
 
 
 
 
 | 1613 | MMRESULT WINAPI midiOutGetDevCapsA(UINT,LPMIDIOUTCAPSA,UINT); | 
 
 
 
 
 | 1614 | MMRESULT WINAPI midiOutGetDevCapsW(UINT,LPMIDIOUTCAPSW,UINT); | 
 
 
 
 
 | 1615 | MMRESULT WINAPI midiOutGetVolume(HMIDIOUT,PDWORD); | 
 
 
 
 
 | 1616 | MMRESULT WINAPI midiOutSetVolume(HMIDIOUT,DWORD); | 
 
 
 
 
 | 1617 | MMRESULT WINAPI midiOutGetErrorTextA(MMRESULT,LPSTR,UINT); | 
 
 
 
 
 | 1618 | MMRESULT WINAPI midiOutGetErrorTextW(MMRESULT,LPWSTR,UINT); | 
 
 
 
 
 | 1619 | MMRESULT WINAPI midiOutOpen(LPHMIDIOUT,UINT,DWORD,DWORD,DWORD); | 
 
 
 
 
 | 1620 | MMRESULT WINAPI midiOutClose(HMIDIOUT); | 
 
 
 
 
 | 1621 | MMRESULT WINAPI midiOutPrepareHeader(HMIDIOUT,LPMIDIHDR,UINT); | 
 
 
 
 
 | 1622 | MMRESULT WINAPI midiOutUnprepareHeader(HMIDIOUT,LPMIDIHDR,UINT); | 
 
 
 
 
 | 1623 | MMRESULT WINAPI midiOutShortMsg(HMIDIOUT,DWORD); | 
 
 
 
 
 | 1624 | MMRESULT WINAPI midiOutLongMsg(HMIDIOUT,LPMIDIHDR,UINT); | 
 
 
 
 
 | 1625 | MMRESULT WINAPI midiOutReset(HMIDIOUT); | 
 
 
 
 
 | 1626 | MMRESULT WINAPI midiOutCachePatches(HMIDIOUT,UINT,LPWORD,UINT); | 
 
 
 
 
 | 1627 | MMRESULT WINAPI midiOutCacheDrumPatches(HMIDIOUT,UINT,LPWORD,UINT); | 
 
 
 
 
 | 1628 | MMRESULT WINAPI midiOutGetID(HMIDIOUT,LPUINT); | 
 
 
 
 
 | 1629 | MMRESULT WINAPI midiOutMessage(HMIDIOUT,UINT,DWORD,DWORD); | 
 
 
 
 
 | 1630 | UINT WINAPI midiInGetNumDevs(void); | 
 
 
 
 
 | 1631 | MMRESULT WINAPI midiInGetDevCapsA(UINT,LPMIDIINCAPSA,UINT); | 
 
 
 
 
 | 1632 | MMRESULT WINAPI midiInGetDevCapsW(UINT,LPMIDIINCAPSW,UINT); | 
 
 
 
 
 | 1633 | MMRESULT WINAPI midiInGetErrorTextA(MMRESULT,LPSTR,UINT); | 
 
 
 
 
 | 1634 | MMRESULT WINAPI midiInGetErrorTextW(MMRESULT,LPWSTR,UINT); | 
 
 
 
 
 | 1635 | MMRESULT WINAPI midiInOpen(LPHMIDIIN,UINT,DWORD,DWORD,DWORD); | 
 
 
 
 
 | 1636 | MMRESULT WINAPI midiInClose(HMIDIIN); | 
 
 
 
 
 | 1637 | MMRESULT WINAPI midiInPrepareHeader(HMIDIIN,LPMIDIHDR,UINT); | 
 
 
 
 
 | 1638 | MMRESULT WINAPI midiInUnprepareHeader(HMIDIIN,LPMIDIHDR,UINT); | 
 
 
 
 
 | 1639 | MMRESULT WINAPI midiInAddBuffer(HMIDIIN,LPMIDIHDR,UINT); | 
 
 
 
 
 | 1640 | MMRESULT WINAPI midiInStart(HMIDIIN); | 
 
 
 
 
 | 1641 | MMRESULT WINAPI midiInStop(HMIDIIN); | 
 
 
 
 
 | 1642 | MMRESULT WINAPI midiInReset(HMIDIIN); | 
 
 
 
 
 | 1643 | MMRESULT WINAPI midiInGetID(HMIDIIN,LPUINT); | 
 
 
 
 
 | 1644 | MMRESULT WINAPI midiInMessage(HMIDIIN,UINT,DWORD,DWORD); | 
 
 
 
 
 | 1645 | UINT WINAPI auxGetNumDevs(void); | 
 
 
 
 
 | 1646 | MMRESULT WINAPI auxGetDevCapsA(UINT,LPAUXCAPSA,UINT); | 
 
 
 
 
 | 1647 | MMRESULT WINAPI auxGetDevCapsW(UINT,LPAUXCAPSW,UINT); | 
 
 
 
 
 | 1648 | MMRESULT WINAPI auxSetVolume(UINT,DWORD); | 
 
 
 
 
 | 1649 | MMRESULT WINAPI auxGetVolume(UINT,PDWORD); | 
 
 
 
 
 | 1650 | MMRESULT WINAPI auxOutMessage(UINT,UINT,DWORD,DWORD); | 
 
 
 
 
 | 1651 | UINT WINAPI mixerGetNumDevs(void); | 
 
 
 
 
 | 1652 | MMRESULT WINAPI mixerGetDevCapsA(UINT,LPMIXERCAPSA,UINT); | 
 
 
 
 
 | 1653 | MMRESULT WINAPI mixerGetDevCapsW(UINT,LPMIXERCAPSW,UINT); | 
 
 
 
 
 | 1654 | MMRESULT WINAPI mixerOpen(LPHMIXER,UINT,DWORD,DWORD,DWORD); | 
 
 
 
 
 | 1655 | MMRESULT WINAPI mixerClose(HMIXER); | 
 
 
 
 
 | 1656 | DWORD WINAPI mixerMessage(HMIXER,UINT,DWORD,DWORD); | 
 
 
 
 
 | 1657 | MMRESULT WINAPI mixerGetLineInfoA(HMIXEROBJ,LPMIXERLINEA,DWORD); | 
 
 
 
 
 | 1658 | MMRESULT WINAPI mixerGetLineInfoW(HMIXEROBJ,LPMIXERLINEW,DWORD); | 
 
 
 
 
 | 1659 | MMRESULT WINAPI mixerGetID(HMIXEROBJ,PUINT,DWORD); | 
 
 
 
 
 | 1660 | MMRESULT WINAPI mixerGetLineControlsA(HMIXEROBJ,LPMIXERLINECONTROLSA,DWORD); | 
 
 
 
 
 | 1661 | MMRESULT WINAPI mixerGetLineControlsW(HMIXEROBJ,LPMIXERLINECONTROLSW,DWORD); | 
 
 
 
 
 | 1662 | MMRESULT WINAPI mixerGetControlDetailsA(HMIXEROBJ,LPMIXERCONTROLDETAILS,DWORD); | 
 
 
 
 
 | 1663 | MMRESULT WINAPI mixerGetControlDetailsW(HMIXEROBJ,LPMIXERCONTROLDETAILS,DWORD); | 
 
 
 
 
 | 1664 | MMRESULT WINAPI mixerSetControlDetails(HMIXEROBJ,LPMIXERCONTROLDETAILS,DWORD); | 
 
 
 
 
 | 1665 | MMRESULT WINAPI timeGetSystemTime(LPMMTIME,UINT); | 
 
 
 
 
 | 1666 | DWORD WINAPI timeGetTime(void); | 
 
 
 
 
 | 1667 | MMRESULT WINAPI timeSetEvent(UINT,UINT,LPTIMECALLBACK,DWORD,UINT); | 
 
 
 
 
 | 1668 | MMRESULT WINAPI timeKillEvent(UINT); | 
 
 
 
 
 | 1669 | MMRESULT WINAPI timeGetDevCaps(LPTIMECAPS,UINT); | 
 
 
 
 
 | 1670 | MMRESULT WINAPI timeBeginPeriod(UINT); | 
 
 
 
 
 | 1671 | MMRESULT WINAPI timeEndPeriod(UINT); | 
 
 
 
 
 | 1672 | UINT WINAPI joyGetNumDevs(void); | 
 
 
 
 
 | 1673 | MMRESULT WINAPI joyGetDevCapsA(UINT,LPJOYCAPSA,UINT); | 
 
 
 
 
 | 1674 | MMRESULT WINAPI joyGetDevCapsW(UINT,LPJOYCAPSW,UINT); | 
 
 
 
 
 | 1675 | MMRESULT WINAPI joyGetPos(UINT,LPJOYINFO); | 
 
 
 
 
 | 1676 | MMRESULT WINAPI joyGetPosEx(UINT,LPJOYINFOEX); | 
 
 
 
 
 | 1677 | MMRESULT WINAPI joyGetThreshold(UINT,LPUINT); | 
 
 
 
 
 | 1678 | MMRESULT WINAPI joyReleaseCapture(UINT); | 
 
 
 
 
 | 1679 | MMRESULT WINAPI joySetCapture(HWND,UINT,UINT,BOOL); | 
 
 
 
 
 | 1680 | MMRESULT WINAPI joySetThreshold(UINT,UINT); | 
 
 
 
 
 | 1681 | FOURCC WINAPI mmioStringToFOURCCA(LPCSTR,UINT); | 
 
 
 
 
 | 1682 | FOURCC WINAPI mmioStringToFOURCCW(LPCWSTR,UINT); | 
 
 
 
 
 | 1683 | LPMMIOPROC WINAPI mmioInstallIOProcA(FOURCC,LPMMIOPROC,DWORD); | 
 
 
 
 
 | 1684 | LPMMIOPROC WINAPI mmioInstallIOProcW(FOURCC,LPMMIOPROC,DWORD); | 
 
 
 
 
 | 1685 | HMMIO WINAPI mmioOpenA(LPSTR,LPMMIOINFO,DWORD); | 
 
 
 
 
 | 1686 | HMMIO WINAPI mmioOpenW(LPWSTR,LPMMIOINFO,DWORD); | 
 
 
 
 
 | 1687 | MMRESULT WINAPI mmioRenameA(LPCSTR,LPCSTR,LPCMMIOINFO,DWORD); | 
 
 
 
 
 | 1688 | MMRESULT WINAPI mmioRenameW(LPCWSTR,LPCWSTR,LPCMMIOINFO,DWORD); | 
 
 
 
 
 | 1689 | MMRESULT WINAPI mmioClose(HMMIO,UINT); | 
 
 
 
 
 | 1690 | LONG WINAPI mmioRead(HMMIO,HPSTR,LONG); | 
 
 
 
 
 | 1691 | LONG WINAPI mmioWrite(HMMIO,LPCSTR,LONG); | 
 
 
 
 
 | 1692 | LONG WINAPI mmioSeek(HMMIO,LONG,int); | 
 
 
 
 
 | 1693 | MMRESULT WINAPI mmioGetInfo(HMMIO,LPMMIOINFO,UINT); | 
 
 
 
 
 | 1694 | MMRESULT WINAPI mmioSetInfo(HMMIO,LPCMMIOINFO,UINT); | 
 
 
 
 
 | 1695 | MMRESULT WINAPI mmioSetBuffer(HMMIO,LPSTR,LONG,UINT); | 
 
 
 
 
 | 1696 | MMRESULT WINAPI mmioFlush(HMMIO,UINT); | 
 
 
 
 
 | 1697 | MMRESULT WINAPI mmioAdvance(HMMIO,LPMMIOINFO,UINT); | 
 
 
 
 
 | 1698 | LRESULT WINAPI mmioSendMessage(HMMIO,UINT,LPARAM,LPARAM); | 
 
 
 
 
 | 1699 | MMRESULT WINAPI mmioDescend(HMMIO,LPMMCKINFO,const MMCKINFO*,UINT); | 
 
 
 
 
 | 1700 | MMRESULT WINAPI mmioAscend(HMMIO,LPMMCKINFO,UINT); | 
 
 
 
 
 | 1701 | MMRESULT WINAPI mmioCreateChunk(HMMIO,LPMMCKINFO,UINT); | 
 
 
 
 
 | 1702 | MCIERROR WINAPI mciSendCommandA(MCIDEVICEID,UINT,DWORD,DWORD); | 
 
 
 
 
 | 1703 | MCIERROR WINAPI mciSendCommandW(MCIDEVICEID,UINT,DWORD,DWORD); | 
 
 
 
 
 | 1704 | MCIERROR WINAPI mciSendStringA(LPCSTR,LPSTR,UINT,HWND); | 
 
 
 
 
 | 1705 | MCIERROR WINAPI mciSendStringW(LPCWSTR,LPWSTR,UINT,HWND); | 
 
 
 
 
 | 1706 | MCIDEVICEID WINAPI mciGetDeviceIDA(LPCSTR); | 
 
 
 
 
 | 1707 | MCIDEVICEID WINAPI mciGetDeviceIDW(LPCWSTR); | 
 
 
 
 
 | 1708 | MCIDEVICEID WINAPI mciGetDeviceIDFromElementIDA(DWORD,LPCSTR); | 
 
 
 
 
 | 1709 | MCIDEVICEID WINAPI mciGetDeviceIDFromElementIDW(DWORD,LPCWSTR); | 
 
 
 
 
 | 1710 | BOOL WINAPI mciGetErrorStringA(MCIERROR,LPSTR,UINT); | 
 
 
 
 
 | 1711 | BOOL WINAPI mciGetErrorStringW(MCIERROR,LPWSTR,UINT); | 
 
 
 
 
 | 1712 | BOOL WINAPI mciSetYieldProc(MCIDEVICEID,YIELDPROC,DWORD); | 
 
 
 
 
 | 1713 | HTASK WINAPI mciGetCreatorTask(MCIDEVICEID); | 
 
 
 
 
 | 1714 | YIELDPROC WINAPI mciGetYieldProc(MCIDEVICEID,PDWORD); | 
 
 
 
 
 | 1715 |  | 
 
 
 
 
 | 1716 | typedef struct tagMCI_SEQ_SET_PARMS { | 
 
 
 
 
 | 1717 | DWORD dwCallback; | 
 
 
 
 
 | 1718 | DWORD dwTimeFormat; | 
 
 
 
 
 | 1719 | DWORD dwAudio; | 
 
 
 
 
 | 1720 | DWORD dwTempo; | 
 
 
 
 
 | 1721 | DWORD dwPort; | 
 
 
 
 
 | 1722 | DWORD dwSlave; | 
 
 
 
 
 | 1723 | DWORD dwMaster; | 
 
 
 
 
 | 1724 | DWORD dwOffset; | 
 
 
 
 
 | 1725 | } MCI_SEQ_SET_PARMS,*PMCI_SEQ_SET_PARMS,*LPMCI_SEQ_SET_PARMS; | 
 
 
 
 
 | 1726 | typedef struct tagMCI_ANIM_OPEN_PARMSA { | 
 
 
 
 
 | 1727 | DWORD dwCallback; | 
 
 
 
 
 | 1728 | MCIDEVICEID wDeviceID; | 
 
 
 
 
 | 1729 | LPCSTR lpstrDeviceType; | 
 
 
 
 
 | 1730 | LPCSTR lpstrElementName; | 
 
 
 
 
 | 1731 | LPCSTR lpstrAlias; | 
 
 
 
 
 | 1732 | DWORD dwStyle; | 
 
 
 
 
 | 1733 | HWND hWndParent; | 
 
 
 
 
 | 1734 | } MCI_ANIM_OPEN_PARMSA,*PMCI_ANIM_OPEN_PARMSA,*LPMCI_ANIM_OPEN_PARMSA; | 
 
 
 
 
 | 1735 | typedef struct tagMCI_ANIM_OPEN_PARMSW { | 
 
 
 
 
 | 1736 | DWORD dwCallback; | 
 
 
 
 
 | 1737 | MCIDEVICEID wDeviceID; | 
 
 
 
 
 | 1738 | LPCWSTR lpstrDeviceType; | 
 
 
 
 
 | 1739 | LPCWSTR lpstrElementName; | 
 
 
 
 
 | 1740 | LPCWSTR lpstrAlias; | 
 
 
 
 
 | 1741 | DWORD dwStyle; | 
 
 
 
 
 | 1742 | HWND hWndParent; | 
 
 
 
 
 | 1743 | } MCI_ANIM_OPEN_PARMSW,*PMCI_ANIM_OPEN_PARMSW,*LPMCI_ANIM_OPEN_PARMSW; | 
 
 
 
 
 | 1744 | typedef struct tagMCI_ANIM_PLAY_PARMS { | 
 
 
 
 
 | 1745 | DWORD dwCallback; | 
 
 
 
 
 | 1746 | DWORD dwFrom; | 
 
 
 
 
 | 1747 | DWORD dwTo; | 
 
 
 
 
 | 1748 | DWORD dwSpeed; | 
 
 
 
 
 | 1749 | } MCI_ANIM_PLAY_PARMS,*PMCI_ANIM_PLAY_PARMS,*LPMCI_ANIM_PLAY_PARMS; | 
 
 
 
 
 | 1750 | typedef struct tagMCI_ANIM_STEP_PARMS { | 
 
 
 
 
 | 1751 | DWORD dwCallback; | 
 
 
 
 
 | 1752 | DWORD dwFrames; | 
 
 
 
 
 | 1753 | } MCI_ANIM_STEP_PARMS,*PMCI_ANIM_STEP_PARMS,*LPMCI_ANIM_STEP_PARMS; | 
 
 
 
 
 | 1754 | typedef struct tagMCI_ANIM_WINDOW_PARMSA { | 
 
 
 
 
 | 1755 | DWORD dwCallback; | 
 
 
 
 
 | 1756 | HWND hWnd; | 
 
 
 
 
 | 1757 | UINT nCmdShow; | 
 
 
 
 
 | 1758 | LPCSTR lpstrText; | 
 
 
 
 
 | 1759 | } MCI_ANIM_WINDOW_PARMSA,*PMCI_ANIM_WINDOW_PARMSA,*LPMCI_ANIM_WINDOW_PARMSA; | 
 
 
 
 
 | 1760 | typedef struct tagMCI_ANIM_WINDOW_PARMSW { | 
 
 
 
 
 | 1761 | DWORD dwCallback; | 
 
 
 
 
 | 1762 | HWND hWnd; | 
 
 
 
 
 | 1763 | UINT nCmdShow; | 
 
 
 
 
 | 1764 | LPCWSTR lpstrText; | 
 
 
 
 
 | 1765 | } MCI_ANIM_WINDOW_PARMSW,*PMCI_ANIM_WINDOW_PARMSW,*LPMCI_ANIM_WINDOW_PARMSW; | 
 
 
 
 
 | 1766 | typedef struct tagMCI_ANIM_RECT_PARMS { | 
 
 
 
 
 | 1767 | DWORD dwCallback; | 
 
 
 
 
 | 1768 | #ifdef MCI_USE_OFFEXT | 
 
 
 
 
 | 1769 | POINT ptOffset; | 
 
 
 
 
 | 1770 | POINT ptExtent; | 
 
 
 
 
 | 1771 | #else | 
 
 
 
 
 | 1772 | RECT rc; | 
 
 
 
 
 | 1773 | #endif | 
 
 
 
 
 | 1774 | } MCI_ANIM_RECT_PARMS,*PMCI_ANIM_RECT_PARMS,*LPMCI_ANIM_RECT_PARMS; | 
 
 
 
 
 | 1775 | typedef struct tagMCI_ANIM_UPDATE_PARMS { | 
 
 
 
 
 | 1776 | DWORD dwCallback; | 
 
 
 
 
 | 1777 | RECT rc; | 
 
 
 
 
 | 1778 | HDC hDC; | 
 
 
 
 
 | 1779 | } MCI_ANIM_UPDATE_PARMS,*PMCI_ANIM_UPDATE_PARMS,*LPMCI_ANIM_UPDATE_PARMS; | 
 
 
 
 
 | 1780 | typedef struct tagMCI_OVLY_OPEN_PARMSA { | 
 
 
 
 
 | 1781 | DWORD dwCallback; | 
 
 
 
 
 | 1782 | MCIDEVICEID wDeviceID; | 
 
 
 
 
 | 1783 | LPCSTR lpstrDeviceType; | 
 
 
 
 
 | 1784 | LPCSTR lpstrElementName; | 
 
 
 
 
 | 1785 | LPCSTR lpstrAlias; | 
 
 
 
 
 | 1786 | DWORD dwStyle; | 
 
 
 
 
 | 1787 | HWND hWndParent; | 
 
 
 
 
 | 1788 | } MCI_OVLY_OPEN_PARMSA,*PMCI_OVLY_OPEN_PARMSA,*LPMCI_OVLY_OPEN_PARMSA; | 
 
 
 
 
 | 1789 | typedef struct tagMCI_OVLY_OPEN_PARMSW { | 
 
 
 
 
 | 1790 | DWORD dwCallback; | 
 
 
 
 
 | 1791 | MCIDEVICEID wDeviceID; | 
 
 
 
 
 | 1792 | LPCWSTR lpstrDeviceType; | 
 
 
 
 
 | 1793 | LPCWSTR lpstrElementName; | 
 
 
 
 
 | 1794 | LPCWSTR lpstrAlias; | 
 
 
 
 
 | 1795 | DWORD dwStyle; | 
 
 
 
 
 | 1796 | HWND hWndParent; | 
 
 
 
 
 | 1797 | } MCI_OVLY_OPEN_PARMSW,*PMCI_OVLY_OPEN_PARMSW,*LPMCI_OVLY_OPEN_PARMSW; | 
 
 
 
 
 | 1798 | typedef struct tagMCI_OVLY_WINDOW_PARMSA { | 
 
 
 
 
 | 1799 | DWORD dwCallback; | 
 
 
 
 
 | 1800 | HWND hWnd; | 
 
 
 
 
 | 1801 | UINT nCmdShow; | 
 
 
 
 
 | 1802 | LPCSTR lpstrText; | 
 
 
 
 
 | 1803 | } MCI_OVLY_WINDOW_PARMSA,*PMCI_OVLY_WINDOW_PARMSA,*LPMCI_OVLY_WINDOW_PARMSA; | 
 
 
 
 
 | 1804 | typedef struct tagMCI_OVLY_WINDOW_PARMSW { | 
 
 
 
 
 | 1805 | DWORD dwCallback; | 
 
 
 
 
 | 1806 | HWND hWnd; | 
 
 
 
 
 | 1807 | UINT nCmdShow; | 
 
 
 
 
 | 1808 | LPCWSTR lpstrText; | 
 
 
 
 
 | 1809 | } MCI_OVLY_WINDOW_PARMSW,*PMCI_OVLY_WINDOW_PARMSW,*LPMCI_OVLY_WINDOW_PARMSW; | 
 
 
 
 
 | 1810 | typedef struct tagMCI_OVLY_RECT_PARMS { | 
 
 
 
 
 | 1811 | DWORD dwCallback; | 
 
 
 
 
 | 1812 | #ifdef MCI_USE_OFFEXT | 
 
 
 
 
 | 1813 | POINT ptOffset; | 
 
 
 
 
 | 1814 | POINT ptExtent; | 
 
 
 
 
 | 1815 | #else | 
 
 
 
 
 | 1816 | RECT rc; | 
 
 
 
 
 | 1817 | #endif | 
 
 
 
 
 | 1818 | } MCI_OVLY_RECT_PARMS,*PMCI_OVLY_RECT_PARMS,*LPMCI_OVLY_RECT_PARMS; | 
 
 
 
 
 | 1819 | typedef struct tagMCI_OVLY_SAVE_PARMSA { | 
 
 
 
 
 | 1820 | DWORD dwCallback; | 
 
 
 
 
 | 1821 | LPCSTR lpfilename; | 
 
 
 
 
 | 1822 | RECT rc; | 
 
 
 
 
 | 1823 | } MCI_OVLY_SAVE_PARMSA,*PMCI_OVLY_SAVE_PARMSA,*LPMCI_OVLY_SAVE_PARMSA; | 
 
 
 
 
 | 1824 | typedef struct tagMCI_OVLY_SAVE_PARMSW { | 
 
 
 
 
 | 1825 | DWORD dwCallback; | 
 
 
 
 
 | 1826 | LPCWSTR lpfilename; | 
 
 
 
 
 | 1827 | RECT rc; | 
 
 
 
 
 | 1828 | } MCI_OVLY_SAVE_PARMSW,*PMCI_OVLY_SAVE_PARMSW,*LPMCI_OVLY_SAVE_PARMSW; | 
 
 
 
 
 | 1829 | typedef struct tagMCI_OVLY_LOAD_PARMSA { | 
 
 
 
 
 | 1830 | DWORD dwCallback; | 
 
 
 
 
 | 1831 | LPCSTR lpfilename; | 
 
 
 
 
 | 1832 | RECT rc; | 
 
 
 
 
 | 1833 | } MCI_OVLY_LOAD_PARMSA,*PMCI_OVLY_LOAD_PARMSA,*LPMCI_OVLY_LOAD_PARMSA; | 
 
 
 
 
 | 1834 | typedef struct tagMCI_OVLY_LOAD_PARMSW { | 
 
 
 
 
 | 1835 | DWORD dwCallback; | 
 
 
 
 
 | 1836 | LPCWSTR lpfilename; | 
 
 
 
 
 | 1837 | RECT rc; | 
 
 
 
 
 | 1838 | } MCI_OVLY_LOAD_PARMSW,*PMCI_OVLY_LOAD_PARMSW,*LPMCI_OVLY_LOAD_PARMSW; | 
 
 
 
 
 | 1839 |  | 
 
 
 
 
 | 1840 | #ifdef UNICODE | 
 
 
 
 
 | 1841 | typedef WAVEOUTCAPSW WAVEOUTCAPS,*PWAVEOUTCAPS,*LPWAVEOUTCAPS; | 
 
 
 
 
 | 1842 | typedef WAVEINCAPSW WAVEINCAPS,*PWAVEINCAPS,*LPWAVEINCAPS; | 
 
 
 
 
 | 1843 | typedef MIDIOUTCAPSW MIDIOUTCAPS,*PMIDIOUTCAPS,*LPMIDIOUTCAPS; | 
 
 
 
 
 | 1844 | typedef MIDIINCAPSW MIDIINCAPS,*PMIDIINCAPS,*LPMIDIINCAPS; | 
 
 
 
 
 | 1845 | typedef AUXCAPSW AUXCAPS,*PAUXCAPS,*LPAUXCAPS; | 
 
 
 
 
 | 1846 | typedef MIXERCAPSW MIXERCAPS,*PMIXERCAPS,*LPMIXERCAPS; | 
 
 
 
 
 | 1847 | typedef MIXERLINEW MIXERLINE,*PMIXERLINE,*LPMIXERLINE; | 
 
 
 
 
 | 1848 | typedef MIXERCONTROLW MIXERCONTROL,*PMIXERCONTROL,*LPMIXERCONTROL; | 
 
 
 
 
 | 1849 | typedef MIXERLINECONTROLSW MIXERLINECONTROLS,*PMIXERLINECONTROLS,*LPMIXERLINECONTROLS; | 
 
 
 
 
 | 1850 | typedef MIXERCONTROLDETAILS_LISTTEXTW MIXERCONTROLDETAILS_LISTTEXT,*PMIXERCONTROLDETAILS_LISTTEXT,*LPMIXERCONTROLDETAILS_LISTTEXT; | 
 
 
 
 
 | 1851 | typedef JOYCAPSW JOYCAPS,*PJOYCAPS,*LPJOYCAPS; | 
 
 
 
 
 | 1852 | typedef MCI_OPEN_PARMSW MCI_OPEN_PARMS,*PMCI_OPEN_PARMS,*LPMCI_OPEN_PARMS; | 
 
 
 
 
 | 1853 | typedef MCI_INFO_PARMSW MCI_INFO_PARMS,*LPMCI_INFO_PARMS; | 
 
 
 
 
 | 1854 | typedef MCI_SYSINFO_PARMSW MCI_SYSINFO_PARMS,*PMCI_SYSINFO_PARMS,*LPMCI_SYSINFO_PARMS; | 
 
 
 
 
 | 1855 | typedef MCI_SAVE_PARMSW MCI_SAVE_PARMS,*PMCI_SAVE_PARMS,*LPMCI_SAVE_PARMS; | 
 
 
 
 
 | 1856 | typedef MCI_LOAD_PARMSW MCI_LOAD_PARMS,*PMCI_LOAD_PARMS,*LPMCI_LOAD_PARMS; | 
 
 
 
 
 | 1857 | typedef MCI_VD_ESCAPE_PARMSW MCI_VD_ESCAPE_PARMS,*PMCI_VD_ESCAPE_PARMS,*LPMCI_VD_ESCAPE_PARMS; | 
 
 
 
 
 | 1858 | typedef MCI_WAVE_OPEN_PARMSW MCI_WAVE_OPEN_PARMS,*PMCI_WAVE_OPEN_PARMS,*LPMCI_WAVE_OPEN_PARMS; | 
 
 
 
 
 | 1859 | typedef MCI_ANIM_OPEN_PARMSW MCI_ANIM_OPEN_PARMS,*PMCI_ANIM_OPEN_PARMS,*LPMCI_ANIM_OPEN_PARMS; | 
 
 
 
 
 | 1860 | typedef MCI_ANIM_WINDOW_PARMSW MCI_ANIM_WINDOW_PARMS,*PMCI_ANIM_WINDOW_PARMS,*LPMCI_ANIM_WINDOW_PARMS; | 
 
 
 
 
 | 1861 | typedef MCI_OVLY_OPEN_PARMSW MCI_OVLY_OPEN_PARMS,*PMCI_OVLY_OPEN_PARMS,*LPMCI_OVLY_OPEN_PARMS; | 
 
 
 
 
 | 1862 | typedef MCI_OVLY_WINDOW_PARMSW MCI_OVLY_WINDOW_PARMS,*PMCI_OVLY_WINDOW_PARMS,*LPMCI_OVLY_WINDOW_PARMS; | 
 
 
 
 
 | 1863 | typedef MCI_OVLY_SAVE_PARMSW MCI_OVLY_SAVE_PARMS,*PMCI_OVLY_SAVE_PARMS,*LPMCI_OVLY_SAVE_PARMS; | 
 
 
 
 
 | 1864 | #define sndPlaySound sndPlaySoundW | 
 
 
 
 
 | 1865 | #define PlaySound PlaySoundW | 
 
 
 
 
 | 1866 | #define waveOutGetDevCaps waveOutGetDevCapsW | 
 
 
 
 
 | 1867 | #define waveOutGetErrorText waveOutGetErrorTextW | 
 
 
 
 
 | 1868 | #define waveInGetDevCaps waveInGetDevCapsW | 
 
 
 
 
 | 1869 | #define waveInGetErrorText waveInGetErrorTextW | 
 
 
 
 
 | 1870 | #define midiOutGetDevCaps midiOutGetDevCapsW | 
 
 
 
 
 | 1871 | #define midiOutGetErrorText midiOutGetErrorTextW | 
 
 
 
 
 | 1872 | #define midiInGetDevCaps midiInGetDevCapsW | 
 
 
 
 
 | 1873 | #define midiInGetErrorText midiInGetErrorTextW | 
 
 
 
 
 | 1874 | #define auxGetDevCaps auxGetDevCapsW | 
 
 
 
 
 | 1875 | #define mixerGetDevCaps mixerGetDevCapsW | 
 
 
 
 
 | 1876 | #define mixerGetLineInfo mixerGetLineInfoW | 
 
 
 
 
 | 1877 | #define mixerGetLineControls mixerGetLineControlsW | 
 
 
 
 
 | 1878 | #define mixerGetControlDetails mixerGetControlDetailsW | 
 
 
 
 
 | 1879 | #define joyGetDevCaps joyGetDevCapsW | 
 
 
 
 
 | 1880 | #define mmioInstallIOProc mmioInstallIOProcW | 
 
 
 
 
 | 1881 | #define mmioStringToFOURCC mmioStringToFOURCCW | 
 
 
 
 
 | 1882 | #define mmioOpen mmioOpenW | 
 
 
 
 
 | 1883 | #define mmioRename mmioRenameW | 
 
 
 
 
 | 1884 | #define mciSendCommand mciSendCommandW | 
 
 
 
 
 | 1885 | #define mciSendString mciSendStringW | 
 
 
 
 
 | 1886 | #define mciGetDeviceID mciGetDeviceIDW | 
 
 
 
 
 | 1887 | #define mciGetDeviceIDFromElementID mciGetDeviceIDFromElementIDW | 
 
 
 
 
 | 1888 | #define mciGetErrorString mciGetErrorStringW | 
 
 
 
 
 | 1889 | #else | 
 
 
 
 
 | 1890 | typedef WAVEOUTCAPSA WAVEOUTCAPS,*PWAVEOUTCAPS,*LPWAVEOUTCAPS; | 
 
 
 
 
 | 1891 | typedef WAVEINCAPSA WAVEINCAPS,*PWAVEINCAPS,*LPWAVEINCAPS; | 
 
 
 
 
 | 1892 | typedef MIDIOUTCAPSA MIDIOUTCAPS,*PMIDIOUTCAPS,*LPMIDIOUTCAPS; | 
 
 
 
 
 | 1893 | typedef MIDIINCAPSA MIDIINCAPS,*PMIDIINCAPS,*LPMIDIINCAPS; | 
 
 
 
 
 | 1894 | typedef AUXCAPSA AUXCAPS,*PAUXCAPS,*LPAUXCAPS; | 
 
 
 
 
 | 1895 | typedef MIXERCAPSA MIXERCAPS,*PMIXERCAPS,*LPMIXERCAPS; | 
 
 
 
 
 | 1896 | typedef MIXERLINEA MIXERLINE,*PMIXERLINE,*LPMIXERLINE; | 
 
 
 
 
 | 1897 | typedef MIXERCONTROLA MIXERCONTROL,*PMIXERCONTROL,*LPMIXERCONTROL; | 
 
 
 
 
 | 1898 | typedef MIXERLINECONTROLSA MIXERLINECONTROLS,*PMIXERLINECONTROLS,*LPMIXERLINECONTROLS; | 
 
 
 
 
 | 1899 | typedef MIXERCONTROLDETAILS_LISTTEXTA MIXERCONTROLDETAILS_LISTTEXT,*PMIXERCONTROLDETAILS_LISTTEXT,*LPMIXERCONTROLDETAILS_LISTTEXT; | 
 
 
 
 
 | 1900 | typedef JOYCAPSA JOYCAPS,*PJOYCAPS,*LPJOYCAPS; | 
 
 
 
 
 | 1901 | typedef MCI_OPEN_PARMSA MCI_OPEN_PARMS,*PMCI_OPEN_PARMS,*LPMCI_OPEN_PARMS; | 
 
 
 
 
 | 1902 | typedef MCI_INFO_PARMSA MCI_INFO_PARMS,*LPMCI_INFO_PARMS; | 
 
 
 
 
 | 1903 | typedef MCI_SYSINFO_PARMSA MCI_SYSINFO_PARMS,*PMCI_SYSINFO_PARMS,*LPMCI_SYSINFO_PARMS; | 
 
 
 
 
 | 1904 | typedef MCI_SAVE_PARMSA MCI_SAVE_PARMS,*PMCI_SAVE_PARMS,*LPMCI_SAVE_PARMS; | 
 
 
 
 
 | 1905 | typedef MCI_LOAD_PARMSA MCI_LOAD_PARMS,*PMCI_LOAD_PARMS,*LPMCI_LOAD_PARMS; | 
 
 
 
 
 | 1906 | typedef MCI_VD_ESCAPE_PARMSA MCI_VD_ESCAPE_PARMS,*PMCI_VD_ESCAPE_PARMS,*LPMCI_VD_ESCAPE_PARMS; | 
 
 
 
 
 | 1907 | typedef MCI_WAVE_OPEN_PARMSA MCI_WAVE_OPEN_PARMS,*PMCI_WAVE_OPEN_PARMS,*LPMCI_WAVE_OPEN_PARMS; | 
 
 
 
 
 | 1908 | typedef MCI_ANIM_OPEN_PARMSA MCI_ANIM_OPEN_PARMS,*PMCI_ANIM_OPEN_PARMS,*LPMCI_ANIM_OPEN_PARMS; | 
 
 
 
 
 | 1909 | typedef MCI_ANIM_WINDOW_PARMSA MCI_ANIM_WINDOW_PARMS,*PMCI_ANIM_WINDOW_PARMS,*LPMCI_ANIM_WINDOW_PARMS; | 
 
 
 
 
 | 1910 | typedef MCI_OVLY_OPEN_PARMSA MCI_OVLY_OPEN_PARMS,*PMCI_OVLY_OPEN_PARMS,*LPMCI_OVLY_OPEN_PARMS; | 
 
 
 
 
 | 1911 | typedef MCI_OVLY_WINDOW_PARMSA MCI_OVLY_WINDOW_PARMS,*PMCI_OVLY_WINDOW_PARMS,*LPMCI_OVLY_WINDOW_PARMS; | 
 
 
 
 
 | 1912 | typedef MCI_OVLY_SAVE_PARMSA MCI_OVLY_SAVE_PARMS,*PMCI_OVLY_SAVE_PARMS,*LPMCI_OVLY_SAVE_PARMS; | 
 
 
 
 
 | 1913 | #define sndPlaySound sndPlaySoundA | 
 
 
 
 
 | 1914 | #define PlaySound PlaySoundA | 
 
 
 
 
 | 1915 | #define waveOutGetDevCaps waveOutGetDevCapsA | 
 
 
 
 
 | 1916 | #define waveOutGetErrorText waveOutGetErrorTextA | 
 
 
 
 
 | 1917 | #define waveInGetDevCaps waveInGetDevCapsA | 
 
 
 
 
 | 1918 | #define waveInGetErrorText waveInGetErrorTextA | 
 
 
 
 
 | 1919 | #define midiOutGetDevCaps midiOutGetDevCapsA | 
 
 
 
 
 | 1920 | #define midiOutGetErrorText midiOutGetErrorTextA | 
 
 
 
 
 | 1921 | #define midiInGetDevCaps midiInGetDevCapsA | 
 
 
 
 
 | 1922 | #define midiInGetErrorText midiInGetErrorTextA | 
 
 
 
 
 | 1923 | #define auxGetDevCaps auxGetDevCapsA | 
 
 
 
 
 | 1924 | #define mixerGetDevCaps mixerGetDevCapsA | 
 
 
 
 
 | 1925 | #define mixerGetLineInfo mixerGetLineInfoA | 
 
 
 
 
 | 1926 | #define mixerGetLineControls mixerGetLineControlsA | 
 
 
 
 
 | 1927 | #define mixerGetControlDetails mixerGetControlDetailsA | 
 
 
 
 
 | 1928 | #define joyGetDevCaps joyGetDevCapsA | 
 
 
 
 
 | 1929 | #define mmioInstallIOProc mmioInstallIOProcA | 
 
 
 
 
 | 1930 | #define mmioStringToFOURCC mmioStringToFOURCCA | 
 
 
 
 
 | 1931 | #define mmioOpen mmioOpenA | 
 
 
 
 
 | 1932 | #define mmioRename mmioRenameA | 
 
 
 
 
 | 1933 | #define mciSendCommand mciSendCommandA | 
 
 
 
 
 | 1934 | #define mciSendString mciSendStringA | 
 
 
 
 
 | 1935 | #define mciGetDeviceID mciGetDeviceIDA | 
 
 
 
 
 | 1936 | #define mciGetDeviceIDFromElementID mciGetDeviceIDFromElementIDA | 
 
 
 
 
 | 1937 | #define mciGetErrorString mciGetErrorStringA | 
 
 
 
 
 | 1938 | #endif | 
 
 
 
 
 | 1939 | #ifdef __cplusplus | 
 
 
 
 
 | 1940 | } | 
 
 
 
 
 | 1941 | #endif | 
 
 
 
 
 | 1942 | #pragma pack(pop) | 
 
 
 
 
 | 1943 | #endif |