0

我制作了一个 Windows 窗体应用程序,它通过麦克风收听并检测声音顾客。

现在我想做同样的事情,但在服务中。

我使用 Nadio 和这个事件:

myWave = new WaveIn();
...
myWave.DataAvailable += new EventHandler<WaveInEventArgs>(myWave_DataAvailable);

在 windows 窗体下工作正常,但服务不会触发事件。

有谁知道为什么?

另一个问题是

即使未登录,我的服务也会听到麦克风吗?

谢谢!

使用新信息编辑并使用 WaveInEvent 类:

我在类中声明变量

public partial class SoundDetector : ServiceBase {
    ... 
    private WaveInEvent myWave;

在构造函数中设置事件

public SoundDetector()
{
    myWave.DataAvailable += myWave_DataAvailable;

并在 OnStart 中开始记录

protected override void OnStart(string[] args)
{
    myWave.StartRecording();

但事件仍然停止发射......

4

1 回答 1

0

改用WaveInEvent

于 2012-10-19T17:21:31.310 回答