mmsystem.h
来自「开放源码的编译器open watcom 1.6.0版的源代码」· C头文件 代码 · 共 1,850 行 · 第 1/5 页
H
1,850 行
#define MCI_SET_OFF 0x4000
#define MCI_SET_AUDIO_ALL 0
#define MCI_SET_AUDIO_LEFT 1
#define MCI_SET_AUDIO_RIGHT 2
#define MCI_BREAK_KEY 256
#define MCI_BREAK_HWND 512
#define MCI_BREAK_OFF 1024
#define MCI_RECORD_INSERT 256
#define MCI_RECORD_OVERWRITE 512
#define MCI_SAVE_FILE 256
#define MCI_LOAD_FILE 256
#define MCI_VD_MODE_PARK (MCI_VD_OFFSET+1)
#define MCI_VD_MEDIA_CLV (MCI_VD_OFFSET+2)
#define MCI_VD_MEDIA_CAV (MCI_VD_OFFSET+3)
#define MCI_VD_MEDIA_OTHER (MCI_VD_OFFSET+4)
#define MCI_VD_FORMAT_TRACK 0x4001
#define MCI_VD_PLAY_REVERSE 0x10000
#define MCI_VD_PLAY_FAST 0x20000
#define MCI_VD_PLAY_SPEED 0x40000
#define MCI_VD_PLAY_SCAN 0x80000
#define MCI_VD_PLAY_SLOW 0x100000
#define MCI_VD_SEEK_REVERSE 0x10000
#define MCI_VD_STATUS_SPEED 0x4002
#define MCI_VD_STATUS_FORWARD 0x4003
#define MCI_VD_STATUS_MEDIA_TYPE 0x4004
#define MCI_VD_STATUS_SIDE 0x4005
#define MCI_VD_STATUS_DISC_SIZE 0x4006
#define MCI_VD_GETDEVCAPS_CLV 0x10000
#define MCI_VD_GETDEVCAPS_CAV 0x20000
#define MCI_VD_SPIN_UP 0x10000
#define MCI_VD_SPIN_DOWN 0x20000
#define MCI_VD_GETDEVCAPS_CAN_REVERSE 0x4002
#define MCI_VD_GETDEVCAPS_FAST_RATE 0x4003
#define MCI_VD_GETDEVCAPS_SLOW_RATE 0x4004
#define MCI_VD_GETDEVCAPS_NORMAL_RATE 0x4005
#define MCI_VD_STEP_FRAMES 0x10000
#define MCI_VD_STEP_REVERSE 0x20000
#define MCI_VD_ESCAPE_STRING 256
#define MCI_CDA_STATUS_TYPE_TRACK 0x4001
#define MCI_CDA_TRACK_AUDIO MCI_CD_OFFSET
#define MCI_CDA_TRACK_OTHER (MCI_CD_OFFSET+1)
#define MCI_WAVE_PCM MCI_WAVE_OFFSET
#define MCI_WAVE_MAPPER (MCI_WAVE_OFFSET+1)
#define MCI_WAVE_OPEN_BUFFER 0x10000
#define MCI_WAVE_SET_FORMATTAG 0x10000
#define MCI_WAVE_SET_CHANNELS 0x20000
#define MCI_WAVE_SET_SAMPLESPERSEC 0x40000
#define MCI_WAVE_SET_AVGBYTESPERSEC 0x80000
#define MCI_WAVE_SET_BLOCKALIGN 0x100000
#define MCI_WAVE_SET_BITSPERSAMPLE 0x200000
#define MCI_WAVE_INPUT 0x400000
#define MCI_WAVE_OUTPUT 0x800000
#define MCI_WAVE_STATUS_FORMATTAG 0x4001
#define MCI_WAVE_STATUS_CHANNELS 0x4002
#define MCI_WAVE_STATUS_SAMPLESPERSEC 0x4003
#define MCI_WAVE_STATUS_AVGBYTESPERSEC 0x4004
#define MCI_WAVE_STATUS_BLOCKALIGN 0x4005
#define MCI_WAVE_STATUS_BITSPERSAMPLE 0x4006
#define MCI_WAVE_STATUS_LEVEL 0x4007
#define MCI_WAVE_SET_ANYINPUT 0x4000000
#define MCI_WAVE_SET_ANYOUTPUT 0x8000000
#define MCI_WAVE_GETDEVCAPS_INPUTS 0x4001
#define MCI_WAVE_GETDEVCAPS_OUTPUTS 0x4002
#define MCI_SEQ_DIV_PPQN MCI_SEQ_OFFSET
#define MCI_SEQ_DIV_SMPTE_24 (MCI_SEQ_OFFSET+1)
#define MCI_SEQ_DIV_SMPTE_25 (MCI_SEQ_OFFSET+2)
#define MCI_SEQ_DIV_SMPTE_30DROP (MCI_SEQ_OFFSET+3)
#define MCI_SEQ_DIV_SMPTE_30 (MCI_SEQ_OFFSET+4)
#define MCI_SEQ_FORMAT_SONGPTR 0x4001
#define MCI_SEQ_FILE 0x4002
#define MCI_SEQ_MIDI 0x4003
#define MCI_SEQ_SMPTE 0x4004
#define MCI_SEQ_NONE 65533
#define MCI_SEQ_MAPPER 65535
#define MCI_SEQ_STATUS_TEMPO 0x4002
#define MCI_SEQ_STATUS_PORT 0x4003
#define MCI_SEQ_STATUS_SLAVE 0x4007
#define MCI_SEQ_STATUS_MASTER 0x4008
#define MCI_SEQ_STATUS_OFFSET 0x4009
#define MCI_SEQ_STATUS_DIVTYPE 0x400A
#define MCI_SEQ_STATUS_NAME 0x400B
#define MCI_SEQ_STATUS_COPYRIGHT 0x400C
#define MCI_SEQ_SET_TEMPO 0x10000
#define MCI_SEQ_SET_PORT 0x20000
#define MCI_SEQ_SET_SLAVE 0x40000
#define MCI_SEQ_SET_MASTER 0x80000
#define MCI_SEQ_SET_OFFSET 0x1000000
#define MCI_ANIM_OPEN_WS 0x10000
#define MCI_ANIM_OPEN_PARENT 0x20000
#define MCI_ANIM_OPEN_NOSTATIC 0x40000
#define MCI_ANIM_PLAY_SPEED 0x10000
#define MCI_ANIM_PLAY_REVERSE 0x20000
#define MCI_ANIM_PLAY_FAST 0x40000
#define MCI_ANIM_PLAY_SLOW 0x80000
#define MCI_ANIM_PLAY_SCAN 0x100000
#define MCI_ANIM_STEP_REVERSE 0x10000
#define MCI_ANIM_STEP_FRAMES 0x20000
#define MCI_ANIM_STATUS_SPEED 0x4001
#define MCI_ANIM_STATUS_FORWARD 0x4002
#define MCI_ANIM_STATUS_HWND 0x4003
#define MCI_ANIM_STATUS_HPAL 0x4004
#define MCI_ANIM_STATUS_STRETCH 0x4005
#define MCI_ANIM_INFO_TEXT 0x10000
#define MCI_ANIM_GETDEVCAPS_CAN_REVERSE 0x4001
#define MCI_ANIM_GETDEVCAPS_FAST_RATE 0x4002
#define MCI_ANIM_GETDEVCAPS_SLOW_RATE 0x4003
#define MCI_ANIM_GETDEVCAPS_NORMAL_RATE 0x4004
#define MCI_ANIM_GETDEVCAPS_PALETTES 0x4006
#define MCI_ANIM_GETDEVCAPS_CAN_STRETCH 0x4007
#define MCI_ANIM_GETDEVCAPS_MAX_WINDOWS 0x4008
#define MCI_ANIM_REALIZE_NORM 0x10000
#define MCI_ANIM_REALIZE_BKGD 0x20000
#define MCI_ANIM_WINDOW_HWND 0x10000
#define MCI_ANIM_WINDOW_STATE 0x40000
#define MCI_ANIM_WINDOW_TEXT 0x80000
#define MCI_ANIM_WINDOW_ENABLE_STRETCH 0x100000
#define MCI_ANIM_WINDOW_DISABLE_STRETCH 0x200000
#define MCI_ANIM_WINDOW_DEFAULT 0xL
#define MCI_ANIM_RECT 0x10000
#define MCI_ANIM_PUT_SOURCE 0x20000
#define MCI_ANIM_PUT_DESTINATION 0x40000
#define MCI_ANIM_WHERE_SOURCE 0x20000
#define MCI_ANIM_WHERE_DESTINATION 0x40000
#define MCI_ANIM_UPDATE_HDC 0x20000
#define MCI_OVLY_OPEN_WS 0x10000
#define MCI_OVLY_OPEN_PARENT 0x20000
#define MCI_OVLY_STATUS_HWND 0x4001
#define MCI_OVLY_STATUS_STRETCH 0x4002
#define MCI_OVLY_INFO_TEXT 0x10000
#define MCI_OVLY_GETDEVCAPS_CAN_STRETCH 0x4001
#define MCI_OVLY_GETDEVCAPS_CAN_FREEZE 0x4002
#define MCI_OVLY_GETDEVCAPS_MAX_WINDOWS 0x4003
#define MCI_OVLY_WINDOW_HWND 0x10000
#define MCI_OVLY_WINDOW_STATE 0x40000
#define MCI_OVLY_WINDOW_TEXT 0x80000
#define MCI_OVLY_WINDOW_ENABLE_STRETCH 0x100000
#define MCI_OVLY_WINDOW_DISABLE_STRETCH 0x200000
#define MCI_OVLY_WINDOW_DEFAULT 0xL
#define MCI_OVLY_RECT 0x10000
#define MCI_OVLY_PUT_SOURCE 0x20000
#define MCI_OVLY_PUT_DESTINATION 0x40000
#define MCI_OVLY_PUT_FRAME 0x80000
#define MCI_OVLY_PUT_VIDEO 0x100000
#define MCI_OVLY_WHERE_SOURCE 0x20000
#define MCI_OVLY_WHERE_DESTINATION 0x40000
#define MCI_OVLY_WHERE_FRAME 0x80000
#define MCI_OVLY_WHERE_VIDEO 0x100000
#define NEWTRANSPARENT 3
#define QUERYROPSUPPORT 40
#define SELECTDIB 41
#define DIBINDEX(n) MAKELONG((n),0x10FF)
#define SC_SCREENSAVE 0xF140
#define CAPS1 94
#define C1_TRANSPARENT 1
#ifndef SEEK_SET
#define SEEK_SET 0
#endif
#ifndef SEEK_CUR
#define SEEK_CUR 1
#endif
#ifndef SEEK_END
#define SEEK_END 2
#endif
typedef DWORD MCIERROR;
typedef UINT MCIDEVICEID;
typedef UINT(CALLBACK *YIELDPROC)(MCIDEVICEID,DWORD);
typedef UINT MMVERSION;
typedef UINT MMRESULT;
typedef struct mmtime_tag {
UINT wType;
union {
DWORD ms;
DWORD sample;
DWORD cb;
DWORD ticks;
struct {
BYTE hour;
BYTE min;
BYTE sec;
BYTE frame;
BYTE fps;
BYTE dummy;
BYTE pad[2];
} smpte;
struct {
DWORD songptrpos;
} midi;
} u;
} MMTIME,*PMMTIME,*LPMMTIME;
DECLARE_HANDLE(HDRVR);
typedef struct tagDRVCONFIGINFO {
DWORD dwDCISize;
LPCWSTR lpszDCISectionName;
LPCWSTR lpszDCIAliasName;
} DRVCONFIGINFO,*PDRVCONFIGINFO,*LPDRVCONFIGINFO;
typedef struct DRVCONFIGINFOEX {
DWORD dwDCISize;
LPCWSTR lpszDCISectionName;
LPCWSTR lpszDCIAliasName;
DWORD dnDevNode;
} DRVCONFIGINFOEX,*PDRVCONFIGINFOEX,*LPDRVCONFIGINFOEX;
typedef LRESULT(CALLBACK* DRIVERPROC)(DWORD,HDRVR,UINT,LPARAM,LPARAM);
typedef void (CALLBACK DRVCALLBACK)(HDRVR,UINT,DWORD,DWORD,DWORD);
typedef DRVCALLBACK *LPDRVCALLBACK;
typedef DRVCALLBACK *PDRVCALLBACK;
DECLARE_HANDLE(HWAVE);
DECLARE_HANDLE(HWAVEIN);
DECLARE_HANDLE(HWAVEOUT);
typedef HWAVEIN *LPHWAVEIN;
typedef HWAVEOUT *LPHWAVEOUT;
typedef DRVCALLBACK WAVECALLBACK;
typedef WAVECALLBACK *LPWAVECALLBACK;
typedef struct wavehdr_tag {
LPSTR lpData;
DWORD dwBufferLength;
DWORD dwBytesRecorded;
DWORD dwUser;
DWORD dwFlags;
DWORD dwLoops;
struct wavehdr_tag *lpNext;
DWORD reserved;
} WAVEHDR,*PWAVEHDR,*LPWAVEHDR;
typedef struct tagWAVEOUTCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[MAXPNAMELEN];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
DWORD dwSupport;
} WAVEOUTCAPSA,*PWAVEOUTCAPSA,*LPWAVEOUTCAPSA;
typedef struct tagWAVEOUTCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[MAXPNAMELEN];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
DWORD dwSupport;
} WAVEOUTCAPSW,*PWAVEOUTCAPSW,*LPWAVEOUTCAPSW;
typedef struct tagWAVEINCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[MAXPNAMELEN];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
} WAVEINCAPSA,*PWAVEINCAPSA,*LPWAVEINCAPSA;
typedef struct tagWAVEINCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[MAXPNAMELEN];
DWORD dwFormats;
WORD wChannels;
WORD wReserved1;
} WAVEINCAPSW,*PWAVEINCAPSW,*LPWAVEINCAPSW;
typedef struct waveformat_tag {
WORD wFormatTag;
WORD nChannels;
DWORD nSamplesPerSec;
DWORD nAvgBytesPerSec;
WORD nBlockAlign;
} WAVEFORMAT,*PWAVEFORMAT,*LPWAVEFORMAT;
typedef struct pcmwaveformat_tag {
WAVEFORMAT wf;
WORD wBitsPerSample;
} PCMWAVEFORMAT, *PPCMWAVEFORMAT,*LPPCMWAVEFORMAT;
#ifndef _LPCWAVEFORMATEX_DEFINED
#define _LPCWAVEFORMATEX_DEFINED
#define _WAVEFORMATEX_
typedef struct tWAVEFORMATEX {
WORD wFormatTag;
WORD nChannels;
DWORD nSamplesPerSec;
DWORD nAvgBytesPerSec;
WORD nBlockAlign;
WORD wBitsPerSample;
WORD cbSize;
} WAVEFORMATEX,*PWAVEFORMATEX,*LPWAVEFORMATEX;
typedef const WAVEFORMATEX *LPCWAVEFORMATEX;
#endif
DECLARE_HANDLE(HMIDI);
DECLARE_HANDLE(HMIDIIN);
DECLARE_HANDLE(HMIDIOUT);
DECLARE_HANDLE(HMIDISTRM);
typedef HMIDI *LPHMIDI;
typedef HMIDIIN *LPHMIDIIN;
typedef HMIDIOUT *LPHMIDIOUT;
typedef HMIDISTRM *LPHMIDISTRM;
typedef DRVCALLBACK MIDICALLBACK;
typedef MIDICALLBACK *LPMIDICALLBACK;
typedef WORD PATCHARRAY[MIDIPATCHSIZE];
typedef WORD *LPPATCHARRAY;
typedef WORD KEYARRAY[MIDIPATCHSIZE];
typedef WORD *LPKEYARRAY;
typedef struct tagMIDIOUTCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[MAXPNAMELEN];
WORD wTechnology;
WORD wVoices;
WORD wNotes;
WORD wChannelMask;
DWORD dwSupport;
} MIDIOUTCAPSA,*PMIDIOUTCAPSA,*LPMIDIOUTCAPSA;
typedef struct tagMIDIOUTCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[MAXPNAMELEN];
WORD wTechnology;
WORD wVoices;
WORD wNotes;
WORD wChannelMask;
DWORD dwSupport;
} MIDIOUTCAPSW,*PMIDIOUTCAPSW,*LPMIDIOUTCAPSW;
typedef struct tagMIDIINCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
CHAR szPname[MAXPNAMELEN];
DWORD dwSupport;
} MIDIINCAPSA,*PMIDIINCAPSA,*LPMIDIINCAPSA;
typedef struct tagMIDIINCAPSW {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
WCHAR szPname[MAXPNAMELEN];
DWORD dwSupport;
} MIDIINCAPSW,*PMIDIINCAPSW,*NPMIDIINCAPSW,*LPMIDIINCAPSW;
typedef struct midihdr_tag {
LPSTR lpData;
DWORD dwBufferLength;
DWORD dwBytesRecorded;
DWORD dwUser;
DWORD dwFlags;
struct midihdr_tag *lpNext;
DWORD reserved;
DWORD dwOffset;
DWORD dwReserved[8];
} MIDIHDR,*PMIDIHDR,*LPMIDIHDR;
typedef struct midievent_tag {
DWORD dwDeltaTime;
DWORD dwStreamID;
DWORD dwEvent;
DWORD dwParms[1];
} MIDIEVENT;
typedef struct midistrmbuffver_tag {
DWORD dwVersion;
DWORD dwMid;
DWORD dwOEMVersion;
} MIDISTRMBUFFVER;
typedef struct midiproptimediv_tag {
DWORD cbStruct;
DWORD dwTimeDiv;
} MIDIPROPTIMEDIV,*LPMIDIPROPTIMEDIV;
typedef struct midiproptempo_tag {
DWORD cbStruct;
DWORD dwTempo;
} MIDIPROPTEMPO,*LPMIDIPROPTEMPO;
typedef struct tagAUXCAPSA {
WORD wMid;
WORD wPid;
MMVERSION vDriverVersion;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?