我现在在WINCE下用PlaySound方面播放声音,但声音总出不来,不知道什么原因?

yayabobby 2007-06-07 05:03:04
我现在在WINCE下用PlaySound方面播放声音,但声音总出不来,不知道什么原因?

PlaySound (TEXT("soundd.wav"),NULL, SND_FILENAME | SND_NODEFAULT) ;

soundd.wav 文件在根目录下
...全文
2281 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
_0筱筱0_ 2011-12-14
  • 打赏
  • 举报
回复
这个方法没有问题...刚用过的 首先一点确定路径 给路径在调用时写入文本 如果没声音就看下文本上的路径是不是对的 如果路径对的 只能说你文件格式不正确 可能是直接改后缀的吧 格式是别的! 本身这个方法就是让你放自己的路径文件
Vincent_Song 2011-12-14
  • 打赏
  • 举报
回复
你要抓住你出错的重点,别人可以播说明这个API是没有问题的,所以你要找你自己的原因:
1、更换文件
2、是否播放了你没有听见
3、直接用系统的player播放一下你的文件
beyondma 2011-12-13
  • 打赏
  • 举报
回复
1先确定是不是驱动问题。
2在换一个文件使一下
「已注销」 2011-12-13
  • 打赏
  • 举报
回复
应该是文件过大。
改用MP3格式
http://blog.csdn.net/soft2buy/article/details/7065308
zw20105 2011-12-13
  • 打赏
  • 举报
回复
该函数我用过,是不是你的设备根本就播放不出来声音啊,拷贝一个播放器程序,播放你的那个WAV文件看看能不能正常播放出声音,如果设备有问题,或者你的系统移植有问题,那么肯定是播放不出来的。
gisperson 2009-02-26
  • 打赏
  • 举报
回复
这个问题应该是与硬件相关的。PlaySound在大部分设备上都是支持并且能够播放声音。但有的设备上不支持,比如我这几天碰到的一个设备就是这样。修改成采用waveout系列函数实现后就可以播放了。因此建议你改成waveout系列函数实现看看。如果还不行,就只有可能是设备的扬声器有问题了。
qingxiang_1024 2008-06-24
  • 打赏
  • 举报
回复
你的函数中路径应设置:
PlaySound ("\\windows\\sound.wav "),NULL, SND_FILENAME | SND_NODEFAULT) ;

这里用的路径是 绝对路径,也就是你的移动设备或模拟设备的根路径下的windows目录,其下的sound.wav文件存在.
而且 sound.wav 必须是该设备支持的格式
lenux 2007-07-23
  • 打赏
  • 举报
回复
呵呵,PlaySound这个函数对有些wav文件不支持,我查看过,好像是wav的格式不一样。建议换个wav文件试试,或者换个其它方法播放。waveout的api也不错的。要不能利用windows media player 的api最好了。mp3都能播放。
yanro 2007-07-23
  • 打赏
  • 举报
回复
#region 播放声音
private const UInt32 SND_SYNC = 0x00000000;
private const UInt32 SND_ASYNC = 0x00000001;
private const UInt32 SND_NODEFAULT = 0x00000002;
private const UInt32 SND_MEMORY = 0x00000004;
private const UInt32 SND_LOOP = 0x00000008;
private const UInt32 SND_NOSTOP = 0x00000010;
private const UInt32 SND_NOWAIT = 0x00002000;
private const UInt32 SND_ALIAS = 0x00010000;
private const UInt32 SND_FILENAME = 0x00020000;
private const UInt32 SND_RESOURCE = 0x00040004;
[DllImport("coredll.dll",
CallingConvention = CallingConvention.Winapi,
CharSet = CharSet.Unicode,
EntryPoint = "PlaySound",
PreserveSig = true,
SetLastError = false)]
private extern static bool PlaySound(
String pszSound,
IntPtr hmod,
UInt32 fdwSound);
#endregion
PlaySound(声音文件路径, IntPtr.Zero, SND_ASYNC | SND_FILENAME);
Jackile 2007-07-19
  • 打赏
  • 举报
回复
Mark~~
nieyc 2007-07-07
  • 打赏
  • 举报
回复
用音频软件处理一下,以单声道输出,再试试。
北方大冬瓜 2007-07-05
  • 打赏
  • 举报
回复
先直接单击播放一下 soundd.wav,看看能不能放出来
rz_hansen 2007-07-05
  • 打赏
  • 举报
回复
可以试用一下ECDS-MUI产品,已被多家公司拟为商用开发工具,正在开发的软件中还包括一款是为NOKIA内置应用程序,具体可以到CSDN下载,或上www.ecds-mui.com下载最新版。CSDN下载地址:http://download.csdn.net/source/180559
leimiaomiao 2007-07-05
  • 打赏
  • 举报
回复
用Getlasterror 看一下提示的是什么原因
另外告诉大家你的硬件和软件平台
小李匪盗 2007-07-02
  • 打赏
  • 举报
回复
PlaySound(TEXT("\\windows\\soundd.wav"),NULL, SND_SYNC | SND_FILENAME );
把soundd.wav放到windows目录下
djsyz 2007-06-30
  • 打赏
  • 举报
回复
估计是文件格式问题,你的wav不是能mpeg3制式
argusun 2007-06-27
  • 打赏
  • 举报
回复
呵呵。
dream00 2007-06-26
  • 打赏
  • 举报
回复
我昨天刚写了一个同样的例子
string sPath=System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase);

MobilePlaySound(sPath+"\\276.mp3", IntPtr.Zero, (int)(Flags.SND_ASYNC | Flags.SND_FILENAME));
上面那个路径放在和程序同一级目录下.

我的是用.NET写的..但根你那个是大同小异啊..

有一点要注意的看起来是一样的WAV文件,有些可以在手机上播放,有些是不可以的..这个我前几天也怎么写都播放不了,,用手机直接打开那个文件一试,原来在手机上播放不了,但在电脑上又能播放,后来换了一个QQ的玲声就能播放了..

现在正在试怎么播放MP3,,知道的教我一下呢..
dingxu_ren 2007-06-26
  • 打赏
  • 举报
回复
PlaySound("/soundd.wav", IntPtr.Zero, (int)(SND_FILENAME | SND_SYNC));
试试
yayabobby 2007-06-25
  • 打赏
  • 举报
回复
.........没人帮我???
加载更多回复(13)

7,655

社区成员

发帖
与我相关
我的任务
社区描述
Windows Phone是微软发布的一款手机操作系统,它将微软旗下的Xbox LIVE游戏、Zune音乐与独特的视频体验整合至手机中。
社区管理员
  • Windows客户端开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧