【发布时间】:2015-07-09 16:59:11
【问题描述】:
我有一个附加到事件的简单 C# 控制台应用程序。我需要程序继续运行,以便它可以响应事件。保持它运行的正确方法是什么?
这是我的申请:
using System;
using NAudio.CoreAudioApi;
namespace MaxVolume
{
class Program
{
private const float DesiredLevel = -15;
private static MMDevice _device;
static void Main(string[] args)
{
MMDeviceEnumerator mmde = new MMDeviceEnumerator();
_device = mmde.GetDefaultAudioEndpoint(DataFlow.Render, Role.Multimedia);
_device.AudioEndpointVolume.MasterVolumeLevel = DesiredLevel;
_device.AudioEndpointVolume.OnVolumeNotification += SetVolume;
}
static void SetVolume(AudioVolumeNotificationData data)
{
if (Math.Abs(data.MasterVolume - DesiredLevel) > 0.1)
{
_device.AudioEndpointVolume.MasterVolumeLevel = DesiredLevel;
}
}
}
}
【问题讨论】:
-
也许你应该考虑创建一个 Windows 服务
-
@RobinNadeau 最终我会,但现在我需要它成为一个控制台应用程序,以便非管理员用户可以使用它进行测试。
标签: c#