paip.声音延迟的解决
作者Attilax , EMAIL:1466519819@qq.com
一个打开文件选择框操作有按键音...但是按键音延迟的很厉害,等到框都出来了,才有声音,大概一秒多..
先是采用放音代码抛线程的方式,不解决问题.
在放音与打开OpenFileDialog 之间休眠 , Thread.Sleep(200);基本OK了,不过这样一来会手慢打开文件框的速度..把SLEEP调小又没效果了..
看来要调用WIN32 API 来解决了.
..把文件读入到内存..在FORM_LOAD的时候...原理是调用winmm.dll,然后在点按钮时播放..效果OK 了..
----------代码
引用MOLEI.dll
SoundClickC417 scC4h = new SoundClickC417("");
scC4h.playByte();
------框架内原代码如下
[DllImport("winmm.dll")]
private static extern int sndPlaySoundA(byte[] lpszSoundName, int uFlags);
//播放缓存
sndPlaySoundA(ba, SND_MEMORY);
参考:
C#声音控制__NET教程_编程技术.htm