簡體   English   中英

為什么我的事件無法在服務中觸發?

[英]Why my events don't fire in a service?

我制作了一個Windows窗體應用程序,該應用程序從麥克風監聽並檢測聲音顧客。

現在我想做同樣的事情,但是要在服務中。

我使用Naudio和此事件:

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中啟動recordig

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

但事件仍然停止觸發...

改用WaveInEvent

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM