FileWaveOut.cpp
上传用户:goak128
上传日期:2013-07-17
资源大小:155k
文件大小:1k
源码类别:

控制台编程

开发平台:

C/C++

  1. //////////////////////////////////////////////////////////////////////////
  2. // class CFileWaveOut
  3. //
  4. // 功能: 实现对wav文件的播放
  5. // 创建人: 陈文凯 (chwkai@gmail.com)
  6. // 创建日期:2005年5月19日
  7. // 修改人:
  8. // 修改日期:
  9. // 版本
  10. #include "StdAfx.h"
  11. #include ".filewaveout.h"
  12. CFileWaveOut::CFileWaveOut(void)
  13. {
  14. }
  15. CFileWaveOut::~CFileWaveOut(void)
  16. {
  17. this->Stop();
  18. }
  19. //////////////////////////////////////////////////////////////////////////
  20. // 载入播放的文件,读取wav文件format信息,调用init进行初始化
  21. BOOL CFileWaveOut::LoadFile( LPCTSTR lpszFileName, DWORD hWnd)
  22. {
  23. BOOL bRet = FALSE;
  24. // 停止当前播放文件
  25. this->Stop();
  26. // 打开文件
  27. bRet = this->m_wavFile.Open(
  28. lpszFileName, CFile::modeRead | CFile::shareDenyNone);
  29. if (bRet)
  30. {
  31. // 调用init进行初始化
  32. bRet = this->Init(this->m_wavFile.GetWaveFormat(), hWnd);
  33. }
  34. return bRet;
  35. }
  36. //////////////////////////////////////////////////////////////////////////
  37. // 关闭所打开的文件,初始化数据
  38. void CFileWaveOut::Dispose()
  39. {
  40. // 关闭所打开的文件
  41. this->m_wavFile.Close();
  42. // 重置CWaveOut数据
  43. CWaveOut::Dispose();
  44. }