为什么80%的码农都做不了架构师?>>>   

提示:
设备写满缓冲区返回给程序后, 须调用此函数;
释放(GlobalFree)缓冲区前, 须调用此函数;
取消一个尚未准备的缓冲区将无效, 但函数返回 0


//声明:
waveInUnprepareHeader(hWaveIn: HWAVEIN;      {设备句柄}lpWaveInHdr: PWaveHdr; {TWaveHdr 结构的指针}uSize: UINT            {TWaveHdr 结构大小}
): MMRESULT;             {成功返回 0; 可能的错误值见下:}MMSYSERR_INVALHANDLE = 5;  {设备句柄无效}
MMSYSERR_HANDLEBUSY  = 12; {设备已被另一线程使用}
WAVERR_STILLPLAYING  = 33; {缓冲区还在队列中}//TWaveHdr 是 wavehdr_tag 结构的重定义
wavehdr_tag = recordlpData: PChar;          {指向波形数据缓冲区}dwBufferLength: DWORD;  {波形数据缓冲区的长度}dwBytesRecorded: DWORD; {若首部用于输入, 指出缓冲区中的数据量}dwUser: DWORD;          {指定用户的32位数据}dwFlags: DWORD;         {缓冲区标志}dwLoops: DWORD;         {循环播放次数, 仅用于输出缓冲区}lpNext: PWaveHdr;       {保留}reserved: DWORD;        {保留}
end;//TWaveHdr 中的 dwFlags 的可选值:
WHDR_DONE      = $00000001; {设备已使用完缓冲区, 并返回给程序}
WHDR_PREPARED  = $00000002; {waveInPrepareHeader 或 waveOutPrepareHeader 已将缓冲区准备好}
WHDR_BEGINLOOP = $00000004; {缓冲区是循环中的第一个缓冲区, 仅用于输出}
WHDR_ENDLOOP   = $00000008; {缓冲区是循环中的最后一个缓冲区, 仅用于输出}
WHDR_INQUEUE   = $00000010; { reserved for driver }//举例:

转载于:https://my.oschina.net/hermer/blog/319777

WinAPI: waveInUnprepareHeader - 清除由 waveInPrepareHeader 完成的准备相关推荐

  1. 用到的lib、dll整理

    2019独角兽企业重金招聘Python工程师标准>>> ws2_32.lib:网络相关API的支持 winmm.lib:Windows多媒体相关应用程序接口,用于低档的音频和游戏手柄 ...

  2. MFC 音量控制相关资料

    MMRESULT 可能是 WINMM (视窗多媒体 库 Winmm.dll 里 用的一个enum型变量), public static enum MMRESULT : uint{ MMSYSERR_N ...

  3. WindowsAPI函数大全

    Api函数名 函数说明 WIN16可用 WIN95可用 WINNT可用 AbortDoc 终止一项打印作业 是 是 是 AbortPath 终止或取消DC中的一切路径 否 是 是 AbortPrint ...

  4. Windows API 大全

    Windows API (包含了所有Windows API) Api函数名                               函数说明                             ...

  5. API函数的中文说明及所有的32位WindowsAPI函数的定义

    API函数的中文说明及所有的32位WindowsAPI函数的定义 ============================API函数的中文说明============================= ...

  6. ipconfig /flushdns 清除系统DNS缓存

    1.ipconfig /flushdns的作用 ipconfig /flushdns 这是清除DNS缓存用的. 当訪问一个站点时系统将从DNS缓存中读取该域名所相应的IP地址.当查找不到时就会到系统中 ...

  7. 在函数前面加上WINAPI、CALLBACK等是什么意思

    一直搞不懂为什么在函数前面加上WINAPI.CALLBACK等是什么意思又不是返回值为什么加在前面今天终于知道了这是一个呼叫声明(姑且称之吧) 在VC++ 6.0中,WINDEF.h #define ...

  8. C#通过调用WinApi打印PDF文档类,服务器PDF打印、IIS PDF打印

    其他网站下载来的类,可以用于Winform.Asp.Net,用于服务器端PDF或其他文件打印. 直接上代码: using System; using System.Collections.Generi ...

  9. API(15)——打印系统开发(52)——WinForm开发(62)——C#通过调用WinApi打印PDF文档类,服务器PDF打印、IIS PDF打印

    其他网站下载来的类,可以用于Winform.Asp.Net,用于服务器端PDF或其他文件打印. 直接上代码: using System; using System.Collections.Generi ...

最新文章

  1. 希尔伯特著名的第六问题 – 原来麦克斯韦早就有解?
  2. Php7安装pdo_pgsql,pgsql扩展
  3. etherpad an interactive approach for combining multiple sentences from different students in class
  4. 解决office2007每次打开提示向程序发送命令时出现错误
  5. javascript数组总结
  6. 调教 游戏java_如何优雅的调教Java(eclipse篇)(三)安装插件的崩溃瞬间代号(2599)...
  7. iis中间件_.NET Core技术研究中间件的由来和使用
  8. error: implicit declaration of function ‘RAND_egd’ [-Werror=implicit-function-declaration]
  9. Access数据库引擎
  10. android怎么oauth2公版认证,Android中腾讯微博OAuth认证(一)---获取RequestToken
  11. VirtualBox中不能正常使用OpneGL的问题
  12. RTKLIB_E.5对流层和电离层模型
  13. windows批处理脚本bat命令解析【11】rd与del命令以及参数
  14. 0805 0603 贴片电阻的区别
  15. 埃尔米特函数的计算(C++)
  16. ffmpeg裁剪视频尺寸
  17. 数值法求六轴机械臂逆运动学解
  18. 活体检测——专利调研
  19. 《葫芦兄弟》简介(英文版附语音)
  20. 1.[C# Winform]BackgroundWorker实现进度条的那点事儿

热门文章

  1. Altium Designer中将FPGA引脚定义导出成文件
  2. LIst与ArrayList区别
  3. Windows 8 系列 --Block Game --随笔
  4. .NET三种事务处理详解
  5. 写给未来产品总监的一封信
  6. PMCAFF推出咖啡日报 更多好内容等你来发现
  7. PMCAFF | O2O防刷单并没那么难,看完这些你也会反作弊
  8. PMCAFF产品经理培训课火热报名中,手慢无!
  9. Elasticsearch聚合初探——metric篇
  10. PSSM特征-从生成到处理