【发布时间】:2015-10-06 12:17:17
【问题描述】:
我正在尝试创建一个侦听 UDP 数据包的服务。它在调试模式下工作正常。当我将它安装到服务中时,问题就开始了。从 OnStart() 我运行 startListener()。当侦听器运行服务停止时,当我将其注释掉并重试时,它会起作用。 1053是弹出的错误代码。
public partial class Service1 : ServiceBase
{
private const int listenPort = 9;
public Service1()
{
InitializeComponent();
}
protected override void OnStart(string[] args)
{
StartListener();
}
protected override void OnStop()
{
}
private static void StartListener()
{
UdpClient listener = new UdpClient(listenPort);
IPEndPoint groupEP = new IPEndPoint(IPAddress.Any, listenPort);
try
{
byte[] bytes = listener.Receive(ref groupEP);
string mac = string.Join("", bytes.Skip(6).Take(6).Select(b => b.ToString("x2")));
}
catch (Exception e)
{
}
finally
{
listener.Close();
}
}
}
【问题讨论】: