无法定位函数midi stream out 请检查winmm.dll丢失文件版本,这个要怎么解决?

1219人阅读
ASP.NET(1)
C#开发音频--WinMM.dll 函数汇总&
auxGetDevCaps&&&&&&&&&&&&&&&&& 查询指定的辅助输出设备以确定其性能
auxGetNumDevs&&&&&&&&&&&&&&&&& 检取系统中存在的辅助输出设备的数量
auxGetVolume&&&&&&&&&&&&&&&&&& 返回指定的辅助输出设备的当前卷设备
auxOutMessage&&&&&&&&&&&&&&&&& 向指定的辅助输出设备发送一条消息
auxSetVolume&&&&&&&&&&&&&&&&&& 在指定的辅助输出设备中设置卷
CloseDirver&&&&&&&&&&&&&&&&&&& 关闭指定的可安装驱动器
DefDriverProc&&&&&&&&&&&&&&&&& 为任何不由可安装驱动器处理的消息提供的缺省处理
Drivercallback&&&&&&&&&&&&&&&& 调用一个回调函数,发送一条消息给窗口或将一个线程的阻塞解除
DrvGetModuleHandle&&&&&&&&&&&& 返回包含指定可安装驱动器模块的实例句柄
DrvsendMessage&&&&&&&&&&&&&&&& 把指定的消息发送给可安装驱动器
GetDriverModuleHandle&&&&&&&&& 返回包含指定可安装驱动器模块的实例句柄
joyGetDevCaps&&&&&&&&&&&&&&&&& 查询指定的游戏杆设备以确定其性能
joyGetNumDevs&&&&&&&&&&&&&&&&& 返回系统支持的游戏杆设备的数量
joyGetPos&&&&&&&&&&&&&&&&&&&&& 查询指定的游戏杆设备的位置和活动性
joyGetPosEx&&&&&&&&&&&&&&&&&&& 查询一个游戏杆设备的位置和它的按扭状态
joyGetThreshold&&&&&&&&&&&&&&& 查询指定的游戏杆设备的当前移动阈值
joyReleaseCapture&&&&&&&&&&&&& 释放由JoySetCapture函数设置的在指定游戏杆设备上的捕获
joySetCapture&&&&&&&&&&&&&&&&& 发送一个游戏杆消息到指定的窗口
joySetThreshold&&&&&&&&&&&&&&& 设置指定的游戏杆设备的移动阈值
mciGetCreatorTask&&&&&&&&&&&&& 为指定的MCI设备检取其创建的任务
mciGetDeviceID&&&&&&&&&&&&&&&& 返回和打开设备名相匹配的设备标识符
mciGetErrorString&&&&&&&&&&&&& 检取描述指定媒介控制接口错误代码的字符串
mciGetYieldProc&&&&&&&&&&&&&&& 返回和媒介控制接口的WAIT标志相关的回调函数的地址
mciSendCommand&&&&&&&&&&&&&&&& 向指定的媒介控制接口设备发送一条命令
mciSendString&&&&&&&&&&&&&&&&& 向指定的媒介控制接口设备发送一个字符串
mciSetYieldProc&&&&&&&&&&&&&&& 设置一个过程地址,在MCI设备因指定了WAIT标志而等待一个命令完成时,该过程被周期性调用
midiConnect&&&&&&&&&&&&&&&&&&& 将指定的MIDI输入设备连接到输出设备
midiDisconnect&&&&&&&&&&&&&&&& 断开MIDI输入设备和输出设备的连接
midiInAddBuffer&&&&&&&&&&&&&&& 向指定的音乐仪器数字接口的输入设备增加一个缓冲区
midiInClose&&&&&&&&&&&&&&&&&&& 关闭指定的音乐仪器数字接口的输入设备
midiInGetDveCaps&&&&&&&&&&&&&& 查询指定的音乐仪器数字接口的输入设备,以确定其性能
midiInGetErrorText&&&&&&&&&&&& 检取有关音乐仪器数字接口的输入设备指定错误的文本说明
midiInGetID&&&&&&&&&&&&&&&&&&& 获得一个音乐一起数字接口的输入设备的标识符
midiInGetNumDevs&&&&&&&&&&&&&& 检取系统中音乐仪器数字接口的输入设备的数量
midiInMessage&&&&&&&&&&&&&&&&& 向指定的音乐仪器数字接口的输入设备驱动器发送一条消息
midiInOpen&&&&&&&&&&&&&&&&&&&& 打开指定的音乐仪器数字接口的输入设备
midiInPrepareHeader&&&&&&&&&&& 为音乐仪器数字接口的输入设备准备一个缓冲区
midiInReset&&&&&&&&&&&&&&&&&&& 在给定的MIDI输入设备上输入,并将所有挂起的输入缓冲区标记为已执行的
midiInStart&&&&&&&&&&&&&&&&&&& 启动在指定的音乐仪器数字接口的输入设备上的输入
midiInStop&&&&&&&&&&&&&&&&&&&& 停止在给定的音乐仪器数字接口的输入设备上的输入
midiInUnprepareHeader&&&&&&&&& 消除由midiInPrepareHeader函数完成的准备
midiOutCacheDrumPatches&&&&&&& 请求内部的一个MIDI合成设备预装指定的基于键的击打音色集
midiOutCachePatches&&&&&&&&&&& 请求内部的音乐仪器数字接口的合成设备预装指定的音色集
midiOutClose&&&&&&&&&&&&&&&&&& 关闭指定的音乐仪器数字接口的输出设备
midiOutGetDevCaps&&&&&&&&&&&&& 查询指定的音乐仪器数字接口的输出设备,以确定其性能
midiOutGetErrorText&&&&&&&&&&& 检取有关MIDI输出设备指定采取的文本说明
midiOutGetID&&&&&&&&&&&&&&&&&& 检取指定的MIDI输出设备的标识符
midiOutGetNumDevs&&&&&&&&&&&&& 检取系统中存在的MIDI输出设备的数量
midiOutGetVolume&&&&&&&&&&&&&& 返回一个MIDI输出设备的当前卷设置
midiOutLongMsg&&&&&&&&&&&&&&&& 向指定的MIDI输出设备发送一条系统专用的MIDI消息
midiOutMessage&&&&&&&&&&&&&&&& 向一MIDI输出设备驱动器发送一条消息
midiOutOpen&&&&&&&&&&&&&&&&&&& 打开指定的MIDI输出设备进行回放
midiOutPrepareHeader&&&&&&&&&& 为MIDI输出设备准备一个缓冲区
midiOutReset&&&&&&&&&&&&&&&&&& 为指定的MIDI输出设备关闭所有MIDI通道上的所有标志
midiOutSetVolume&&&&&&&&&&&&&& 设置一个MIDI输出设备的卷
midiOutShortMsg&&&&&&&&&&&&&&& 向指定的MIDI输出设备发送一条短MIDI消息
midiOutUnprepareHeader&&&&&&&& 清除由midiOutPrepareHeader函数完成的准备
midiStreamClose&&&&&&&&&&&&&&& 关闭一个打开的MIDI流
midiStreamOpen&&&&&&&&&&&&&&&& 为输出,打开一个MIDI流
midiStreamOut&&&&&&&&&&&&&&&&& 在MIDI输出设备上播放或排队一个MIDI数据流
midiStreamPause&&&&&&&&&&&&&&& 暂停一个MIDI流的播放
midiStreamPosition&&&&&&&&&&&& 在一个MIDI流中检取当前位置
midiStreamProperty&&&&&&&&&&&& 设置或检取与MIDI输出设备相关MIDI数据流的特性
midiStreamRestart&&&&&&&&&&&&& 重新启动一个暂停的MIDI流
midiStreamStop&&&&&&&&&&&&&&&& 关掉指定MIDI输出设备的所有MIDI通道
mixerClose&&&&&&&&&&&&&&&&&&&& 关闭指定的混频器
mixerGetControlDetails&&&&&&&& 检取和一个声频指线路相关的单一控件的细节
mixerGetDevCaps&&&&&&&&&&&&&&& 查询指定的混频器以确定其性能
mixerGetID&&&&&&&&&&&&&&&&&&&& 获取指定混频器的标识符
mixerGetLineContrils&&&&&&&&&& 检取和一个声频线路相关的一个或多个控件
mixerGetLineInfo&&&&&&&&&&&&&& 检取混频器有关特有线路的信息
mixerGetNumDevs&&&&&&&&&&&&&&& 返回系统中存在的混频器的数量
mixerMessage&&&&&&&&&&&&&&&&&& 把一个定制混频器驱动器消息直接发送给混频器驱动器
mixerOpen&&&&&&&&&&&&&&&&&&&&& 打开指定的混频器,在应用程序关闭该句柄前保证该设备不被移走
mixerSetControlDetails&&&&&&&& 设置和一个声频指线路相关的单一控件的细节
mmioAsvance&&&&&&&&&&&&&&&&&&& 填充一个文件的IO缓冲区
mmioAscend&&&&&&&&&&&&&&&&&&&& 取出一个RIFF文件块
mmioClose&&&&&&&&&&&&&&&&&&&&& 关闭有mmioOpen打开的文件
mmioCreateChunk&&&&&&&&&&&&&&& 创建由mmioOpen函数打开的RIFF文件中的一个块
mmioDescend&&&&&&&&&&&&&&&&&&& 进入由mmioOpen函数打开的RIFF文件的块中,并查找一个块
mmioFlush&&&&&&&&&&&&&&&&&&&&& 把文件缓冲区的数据写入磁盘中
mmioGetInfo&&&&&&&&&&&&&&&&&&& 检取有关由mmioOpen函数创建的RIFF文件的信息
mmioInstallIOProcA&&&&&&&&&&&& 装入或删除一个自定义的IO过程
mmioOpen&&&&&&&&&&&&&&&&&&&&&& 为输入输出打开一个文件
mmioRead&&&&&&&&&&&&&&&&&&&&&& 从由mmioOpen函数打开的文件中读取指定字节数的数据
mmioRename&&&&&&&&&&&&&&&&&&&& 重新命名指定的文件
mmioSeek&&&&&&&&&&&&&&&&&&&&&& 改变由mmioOpen函数打开的文件中的当前指针位置
mmioSendMessage&&&&&&&&&&&&&&& 向与指定文件相联系的IO过程发送一条消息
mmioSetBuffer&&&&&&&&&&&&&&&&& 允许或禁止文件缓冲区的IO,或改变这个缓冲区,或改变这个缓冲区的大小
mmioSetInfo&&&&&&&&&&&&&&&&&&& 更新从被打开文件中检取的信息
mmioStringToFOURCC&&&&&&&&&&&& 把一个以NULL结束的字符串转换成一个4字符代码
mmioWrite&&&&&&&&&&&&&&&&&&&&& 向由mmioOpen函数打开的文件中写入指定字节数的数据
mmsystemGetVersion&&&&&&&&&&&& 返回多媒体扩展系统软件的当前版本号
OpenDriver&&&&&&&&&&&&&&&&&&&& 打开一个可安装驱动器实例,并用缺省设置或指定值初始化该实例
PlaySound&&&&&&&&&&&&&&&&&&&&& 播放一个波形声音
SendDriveMessage&&&&&&&&&&&&&& 向指定的可安装驱动器发送一条消息
SndPlaySound&&&&&&&&&&&&&&&&&& 播放一个由文件名或由登记的[sound]段的入口指定的波形声音
timeBeginPeriod&&&&&&&&&&&&&&& 设置应用程序或驱动程序使用的最小定时器分辨率
timeEndPeriod&&&&&&&&&&&&&&&&& 清除应用程序或驱动程序使用的最小定时器分辨率
timeGetDevCaps&&&&&&&&&&&&&&&& 查询定时器设备以确定其性能
timeGetSystemTime&&&&&&&&&&&&& 检取从WINDOWS开始已逝去的毫秒数
timeGetTime&&&&&&&&&&&&&&&&&&& 检取从WINDOWS开始已逝去的毫秒数,此函数比上一条函数开销小
timeKillEvent&&&&&&&&&&&&&&&&& 毁掉指定的定时器回调事件
timeSetEvent&&&&&&&&&&&&&&&&&& 设置一个定时器回调事件
waveInAddBuffer&&&&&&&&&&&&&&& 向波形输入设备添加一个输入缓冲区
WaveInClose&&&&&&&&&&&&&&&&&&& 关闭指定的波形输入设置
waveInGetDevCaps&&&&&&&&&&&&&& 查询指定的波形输入设备以确定其性能
waveInGetErrorText&&&&&&&&&&&& 检取由指定的错误代码标识的文本说明
waveInGetID&&&&&&&&&&&&&&&&&&& 获取指定的波形输入设备的标识符
waveInGetNumDevs&&&&&&&&&&&&&& 返回系统中存在的波形输入设备的数量
waveInGetPosition&&&&&&&&&&&&& 检取指定波形输入设备的当前位置
waveInMessage&&&&&&&&&&&&&&&&& 发送一条消息给波形输入设备的驱动器
waveInOpen&&&&&&&&&&&&&&&&&&&& 为录音而打开一个波形输入设备
waveInPrepareHeader&&&&&&&&&&& 为波形输入准备一个输入缓冲区
waveInReset&&&&&&&&&&&&&&&&&&& 停止给定的波形输入设备的输入,且将当前位置清零
waveInStart&&&&&&&&&&&&&&&&&&& 启动在指定的波形输入设备的输入
waveInStop&&&&&&&&&&&&&&&&&&&& 停止在指定的波形输入设备上的输入
waveInUnprepareHeader&&&&&&&&& 清除由waveInPrepareHeader函数实现的准备
waveOutBreakLoop&&&&&&&&&&&&&& 中断给定的波形输出设备上一个循环,并允许播放驱动器列表中的下一个块
waveOutClose&&&&&&&&&&&&&&&&&& 关闭指定的波形输出设备
waveOutGetDevCaps&&&&&&&&&&&&& 查询一个指定的波形输出设备以确定其性能
waveOutGetErrorText&&&&&&&&&&& 检取由指定的错误代码标识的文本说明
waveOutGetID&&&&&&&&&&&&&&&&&& 检取指定的波形输出设备的标识符
waveOutGetNumDevs&&&&&&&&&&&&& 检取系统中存在的波形输出设备的数量
waveOutGetPitch&&&&&&&&&&&&&&& 查询一个波形输出设备的当前音调设置
waveOutGetPlaybackRate&&&&&&&& 查询一个波形输出设备当前播放的速度
waveOutGetPosition&&&&&&&&&&&& 检取指定波形输出设备的当前播放位置
waveOutGetVolume&&&&&&&&&&&&&& 查询指定波形输出设备的当前音量设置
waveOutMessage&&&&&&&&&&&&&&&& 发送一条消息给一个波形输出设备的驱动器
waveOutOpen&&&&&&&&&&&&&&&&&&& 为播放打开一个波形输出设备
waveOutPause&&&&&&&&&&&&&&&&&& 暂停指定波形输出设备上的播放
waveOutPrepareHeader&&&&&&&&&& 为播放准备一个波形缓冲区
waveOutRestart&&&&&&&&&&&&&&&& 重新启动一个被暂停的波形输出设备
waveOutSetPitch&&&&&&&&&&&&&&& 设置一个波形输出设备的音调
waveOutSetPlaybackRate&&&&&&&& 设置指定波形输出设备的速度
waveOutSetVolume&&&&&&&&&&&&&& 设置指定的波形输出设备的音量
waveOutUnprepareHeader&&&&&&&& 清除由waveOutPrepareHeader函数实现的准备
waveOutWrite&&&&&&&&&&&&&&&&&& 向指定的波形输出设备发送一个数据块
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:16199次
排名:千里之外
(1)(1)(1)(1)(1)(1)(1)(1)(3)(5)(1)4173人阅读
  DLL 文件: winmm 或者 winmm.dll
  DLL 名称: Windows Multimedia API
  描述:
  winmm.dll是Windows多媒体相关应用程序接口,用于低档的音频和游戏手柄。
  函数汇总:
  auxGetDevCaps 查询指定的辅助输出设备以确定其性能
  auxGetNumDevs 检取系统中存在的辅助输出设备的数量
  auxGetVolume 返回指定的辅助输出设备的当前卷设备
  auxOutMessage 向指定的辅助输出设备发送一条消息
  auxSetVolume 在指定的辅助输出设备中设置卷
  CloseDirver 关闭指定的可安装驱动器
  DefDriverProc 为任何不由可安装驱动器处理的消息提供的缺省处理
  Drivercallback 调用一个回调函数,发送一条消息给窗口或将一个线程的阻塞解除
  DrvGetModuleHandle 返回包含指定可安装驱动器模块的实例句柄
  DrvsendMessage 把指定的消息发送给可安装驱动器
  GetDriverModuleHandle 返回包含指定可安装驱动器模块的实例句柄
  joyGetDevCaps 查询指定的游戏杆设备以确定其性能
  joyGetNumDevs 返回系统支持的游戏杆设备的数量
  joyGetPos 查询指定的游戏杆设备的位置和活动性
  joyGetPosEx 查询一个游戏杆设备的位置和它的按扭状态
  joyGetThreshold 查询指定的游戏杆设备的当前移动阈值
  joyReleaseCapture 释放由JoySetCapture函数设置的在指定游戏杆设备上的捕获
  joySetCapture 发送一个游戏杆消息到指定的窗口
  joySetThreshold 设置指定的游戏杆设备的移动阈值
  mciGetCreatorTask 为指定的MCI设备检取其创建的任务
  mciGetDeviceID 返回和打开设备名相匹配的设备标识符
  mciGetErrorString 检取描述指定媒介控制接口错误代码的字符串
  mciGetYieldProc 返回和媒介控制接口的WAIT标志相关的回调函数的地址
  mciSendCommand 向指定的媒介控制接口设备发送一条命令
  mciSendString 向指定的媒介控制接口设备发送一个字符串
  mciSetYieldProc 设置一个过程地址,在MCI设备因指定了WAIT标志而等待一个命令完成时,该过程被周期性调用
  midiConnect 将指定的MIDI输入设备连接到输出设备
  midiDisconnect 断开MIDI输入设备和输出设备的连接
  midiInAddBuffer 向指定的音乐仪器数字接口的输入设备增加一个缓冲区
  midiInClose 关闭指定的音乐仪器数字接口的输入设备
  midiInGetDveCaps 查询指定的音乐仪器数字接口的输入设备,以确定其性能
  midiInGetErrorText 检取有关音乐仪器数字接口的输入设备指定错误的文本说明
  midiInGetID 获得一个音乐一起数字接口的输入设备的标识符
  midiInGetNumDevs 检取系统中音乐仪器数字接口的输入设备的数量
  midiInMessage 向指定的音乐仪器数字接口的输入设备驱动器发送一条消息
  midiInOpen 打开指定的音乐仪器数字接口的输入设备
  midiInPrepareHeader 为音乐仪器数字接口的输入设备准备一个缓冲区
  midiInReset 在给定的MIDI输入设备上输入,并将所有挂起的输入缓冲区标记为已执行的
  midiInStart 启动在指定的音乐仪器数字接口的输入设备上的输入
  midiInStop 停止在给定的音乐仪器数字接口的输入设备上的输入
  midiInUnprepareHeader 消除由midiInPrepareHeader函数完成的准备
  midiOutCacheDrumPatches 请求内部的一个MIDI合成设备预装指定的基于键的击打音色集
  midiOutCachePatches 请求内部的音乐仪器数字接口的合成设备预装指定的音色集
  midiOutClose 关闭指定的音乐仪器数字接口的输出设备
  midiOutGetDevCaps 查询指定的音乐仪器数字接口的输出设备,以确定其性能
  midiOutGetErrorText 检取有关MIDI输出设备指定采取的文本说明
  midiOutGetID 检取指定的MIDI输出设备的标识符
  midiOutGetNumDevs 检取系统中存在的MIDI输出设备的数量
  midiOutGetVolume 返回一个MIDI输出设备的当前卷设置
  midiOutLongMsg 向指定的MIDI输出设备发送一条系统专用的MIDI消息
  midiOutMessage 向一MIDI输出设备驱动器发送一条消息
  midiOutOpen 打开指定的MIDI输出设备进行回放
  midiOutPrepareHeader 为MIDI输出设备准备一个缓冲区
  midiOutReset 为指定的MIDI输出设备关闭所有MIDI通道上的所有标志
  midiOutSetVolume 设置一个MIDI输出设备的卷
  midiOutShortMsg 向指定的MIDI输出设备发送一条短MIDI消息
  midiOutUnprepareHeader 清除由midiOutPrepareHeader函数完成的准备
  midiStreamClose 关闭一个打开的MIDI流
  midiStreamOpen 为输出,打开一个MIDI流
  midiStreamOut 在MIDI输出设备上播放或排队一个MIDI数据流
  midiStreamPause 暂停一个MIDI流的播放
  midiStreamPosition 在一个MIDI流中检取当前位置
  midiStreamProperty 设置或检取与MIDI输出设备相关MIDI数据流的特性
  midiStreamRestart 重新启动一个暂停的MIDI流
  midiStreamStop 关掉指定MIDI输出设备的所有MIDI通道
  mixerClose 关闭指定的混频器
  mixerGetControlDetails 检取和一个声频指线路相关的单一控件的细节
  mixerGetDevCaps 查询指定的混频器以确定其性能
  mixerGetID 获取指定混频器的标识符
  mixerGetLineContrils 检取和一个声频线路相关的一个或多个控件
  mixerGetLineInfo 检取混频器有关特有线路的信息
  mixerGetNumDevs 返回系统中存在的混频器的数量
  mixerMessage 把一个定制混频器驱动器消息直接发送给混频器驱动器
  mixerOpen 打开指定的混频器,在应用程序关闭该句柄前保证该设备不被移走
  mixerSetControlDetails 设置和一个声频指线路相关的单一控件的细节
  mmioAsvance 填充一个文件的IO缓冲区
  mmioAscend 取出一个RIFF文件块
  mmioClose 关闭有mmioOpen打开的文件
  mmioCreateChunk 创建由mmioOpen函数打开的RIFF文件中的一个块
  mmioDescend 进入由mmioOpen函数打开的RIFF文件的块中,并查找一个块
  mmioFlush 把文件缓冲区的数据写入磁盘中
  mmioGetInfo 检取有关由mmioOpen函数创建的RIFF文件的信息
  mmioInstallIOProcA 装入或删除一个自定义的IO过程
  mmioOpen 为输入输出打开一个文件
  mmioRead 从由mmioOpen函数打开的文件中读取指定字节数的数据
  mmioRename 重新命名指定的文件
  mmioSeek 改变由mmioOpen函数打开的文件中的当前指针位置
  mmioSendMessage 向与指定文件相联系的IO过程发送一条消息
  mmioSetBuffer 允许或禁止文件缓冲区的IO,或改变这个缓冲区,或改变这个缓冲区的大小
  mmioSetInfo 更新从被打开文件中检取的信息
  mmioStringToFOURCC 把一个以NULL结束的字符串转换成一个4字符代码
  mmioWrite 向由mmioOpen函数打开的文件中写入指定字节数的数据
  mmsystemGetVersion 返回多媒体扩展系统软件的当前版本号
  OpenDriver 打开一个可安装驱动器实例,并用缺省设置或指定值初始化该实例
  PlaySound 播放一个波形声音
  SendDriveMessage 向指定的可安装驱动器发送一条消息
  SndPlaySound 播放一个由文件名或由登记的[sound]段的入口指定的波形声音
  timeBeginPeriod 设置应用程序或驱动程序使用的最小定时器分辨率
  timeEndPeriod 清除应用程序或驱动程序使用的最小定时器分辨率
  timeGetDevCaps 查询定时器设备以确定其性能
  timeGetSystemTime 检取从WINDOWS开始已逝去的毫秒数
  timeGetTime 检取从WINDOWS开始已逝去的毫秒数,此函数比上一条函数开销小
  timeKillEvent 毁掉指定的定时器回调事件
  timeSetEvent 设置一个定时器回调事件
  waveInAddBuffer 向波形输入设备添加一个输入缓冲区
  WaveInClose 关闭指定的波形输入设置
  waveInGetDevCaps 查询指定的波形输入设备以确定其性能
  waveInGetErrorText 检取由指定的错误代码标识的文本说明
  waveInGetID 获取指定的波形输入设备的标识符
  waveInGetNumDevs 返回系统中存在的波形输入设备的数量
  waveInGetPosition 检取指定波形输入设备的当前位置
  waveInMessage 发送一条消息给波形输入设备的驱动器
  waveInOpen 为录音而打开一个波形输入设备
  waveInPrepareHeader 为波形输入准备一个输入缓冲区
  waveInReset 停止给定的波形输入设备的输入,且将当前位置清零
  waveInStart 启动在指定的波形输入设备的输入
  waveInStop 停止在指定的波形输入设备上的输入
  waveInUnprepareHeader 清除由waveInPrepareHeader函数实现的准备
  waveOutBreakLoop 中断给定的波形输出设备上一个循环,并允许播放驱动器列表中的下一个块
  waveOutClose 关闭指定的波形输出设备
  waveOutGetDevCaps 查询一个指定的波形输出设备以确定其性能
  waveOutGetErrorText 检取由指定的错误代码标识的文本说明
  waveOutGetID 检取指定的波形输出设备的标识符
  waveOutGetNumDevs 检取系统中存在的波形输出设备的数量
  waveOutGetPitch 查询一个波形输出设备的当前音调设置
  waveOutGetPlaybackRate 查询一个波形输出设备当前播放的速度
  waveOutGetPosition 检取指定波形输出设备的当前播放位置
  waveOutGetVolume 查询指定波形输出设备的当前音量设置
  waveOutMessage 发送一条消息给一个波形输出设备的驱动器
  waveOutOpen 为播放打开一个波形输出设备
  waveOutPause 暂停指定波形输出设备上的播放
  waveOutPrepareHeader 为播放准备一个波形缓冲区
  waveOutRestart 重新启动一个被暂停的波形输出设备
  waveOutSetPitch 设置一个波形输出设备的音调
  waveOutSetPlaybackRate 设置指定波形输出设备的速度
  waveOutSetVolume 设置指定的波形输出设备的音量
  waveOutUnprepareHeader 清除由waveOutPrepareHeader函数实现的准备
  waveOutWrite 向指定的波形输出设备发送一个数据块
  属于: Windows Multimedia
  系统 DLL文件: 是
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:48322次
排名:千里之外
原创:40篇
(2)(1)(1)(1)(11)(3)(3)(2)(1)(2)(8)(12)(1)&&&&纯手写48键电子琴最终版,C#+WINMM.DLL+MIDI
纯手写48键电子琴最终版,C#+WINMM.DLL+MIDI
  使用C#语言,VS2010环境开发,.NET2.0支持,的48键电子琴,支持鼠标+键盘同时操作,支持缩放窗口,支持自选MIDI音色,键盘热键只支持字母和数字,ZAQ1为由低到高四阶Do音(C),黑键无热键。单文件直接运行。
  本来想用DirectMusic的,结果找来找去没有能看懂的资料,于是用了系统自带的WinMM.dll。
  修改:
  一、修复BUG,按键按下后不松,鼠标移过会取消按键的发音。
  二、更改了琴键上的标识,改为小学学过的简谱表示。如:用(.3)表示低音Mi,用(4&)表示高两个八度的Fa。
  三、琴键的边框颜色更改使得更易被区分。
  四、增加了所有关键部分代码的注释。
  五、增加了关于软件按钮。
  感谢小寒同学大力支持,全代码免分放送。
若举报审核通过,可奖励20下载分
被举报人:
举报的资源分:
请选择类型
资源无法下载
资源无法使用
标题与实际内容不符
含有危害国家安全内容
含有反动色情等内容
含广告内容
版权问题,侵犯个人或公司的版权
*详细原因:
VIP下载&&免积分60元/年(1200次)
您可能还需要
开发技术下载排行C#调用Windows API播放Midi_C#_何问起
您的位置: -
C#调用Windows API播放Midi
继续,前面已经实现了C#调用Windows API实现了弹出对话框功能。使用了User32.dll文件,主要代码如下:[("User32.dll")]
public static extern int MessageBox(int h, string m, string c, int type);详情请参考:效果如下:也练习了调用winmm.dll播放wav声音文件,主要代码:[DllImport("winmm.dll")] private static
int sndPlaySoundA(byte[] lpszSoundName, int uFlags);详情参考:效果图:接下来继续练习调用别,就调用winmm.dll的midi播放功能吧。MIDI(Musical Instrument Digital Interface)乐器数字接口 ,是20 世纪80 年代初为解决电声乐器之间的通信问题而提出的。MIDI是编曲界最广泛的音乐标准格式,可称为“计算机能理解的乐谱”。它用音符的数字控制信号来记录音乐。一首完整的MIDI音乐只有几十KB大,而能包含数十条音乐轨道。几乎所有的现代音乐都是用MIDI加上音色库来制作合成的。MIDI 传输的不是声音信号, 而是音符、控制参数等指令, 它指示MIDI 设备要做什么,怎么做, 如演奏哪个音符、多大音量等。它们被统一表示成MIDI 消息(MIDI Message) 。传输时采用异步串行通信, 标准通信波特率为31.25×( 1±0.01) KBaud。所以调用API播放midi也是按照格式指定播放指令。接下来就测试实现midi功能。首先是打开midi输出设备的API:MMRESULT midiOutOpen(
LPHMIDIOUT lphmo,
uDeviceID,
dwCallback,
dwCallbackInstance,
dwFlags);详情请看:在C#中调用该API:[DllImport("winmm.dll")]
private static extern UInt32 midiOutOpen(out UInt32 lphMidiOut, uint uDeviceID, UInt32 dwCallback, UInt32 dwInstance, UInt32 dwFlags);其中lphMidiOut 为设备的句柄 ,在后面播放声音会用到。然后是向设备发送播放指令API:MMRESULT midiOutShortMsg(
HMIDIOUT hmo,
dwMsg);详情请参考:在C#中调用:[DllImport("winmm.dll")]
private static extern UInt32 midiOutShortMsg(UInt32 hMidiOut, UInt32 dwMsg);这里hMidiOut就是midiOutOpen方法的lphMidiOut接下来就封装这些API,Midi输出设备需要打开之后才能播放声音,在封装的类HewenqiMidi中加一个状态,表示设备是否打开,代码为:private bool _isO 因为是调用API,所以设备有一个句柄,也就是上面提到的lphMidiOut ,所以类中加一个设备句柄字段,句柄的类型为32位无符号整形UNIT,参考:,代码为:private uint _deviceH
用来存储midiOutOpen获得的句柄lphMidiOut,这两个字段可以封装为属性,只读的属性。接下来,实现设备的打开功能,主要代码:uint h_Duint h_r = midiOutOpen(out h_Device, 0, 0, 0, 0);当h_r等与0时,表示打开成功,否则打开不成功,具体返回值可以参考:播放声音的方法:public uint ShortPlay(uint msg)
if (_isOpened)
return midiOutShortMsg(_deviceHandle, msg);
return 621;
}先检查设备是否已经打开,打开了就播放声音,返回0表示成功。参考: 参数msg表示要播放的声音,这个参数可以包含音量和音高等信息,详情请参考:根据这个参数构造以下方法:/// &summary&
/// 播放声音
/// &/summary&
/// &param name=&key&&音高(音调)&/param&
/// &param name=&volume&&音量&/param&
/// &param name=&chenel&&通道&/param&
/// &returns&&/returns&
public uint ShortPlay(uint key, uint volume, uint chenel)
return ShortPlay(144 + key * 256 + volume * 65536 + chenel);
}这样就可以方便调节播放的音量和音高了。当然还有可以设置音色,先放到后边介绍。打开MIDI设备后,要怎么关闭呢?也是调用API:midiOutClose(
hMidiOut: HMIDIOUT {设备句柄})详情:在C#中调用:[DllImport("winmm.dll")]
private static extern UInt32 midiOutClose(UInt32 hMidiOut);返回0表示成功接着,使用HewenqiMidi 类,建立一个WinForm 窗体,测试播放功能。如下图所示:演示下载地址:源码发布到这个网址:

我要回帖

更多关于 stream 的文章

 

随机推荐