由网友(相遇。)分享简介:我有一个运行的服务,我想收到通知时:a)该网络相连。 B)当本机用户登录。我怎样才能做到这一点? (C#.NET 2.0)解决方案 //使用的Microsoft.Win32;//使用System.Net.NetworkInformation;公共类SessionChanges{公共SessionChange...
我有一个运行的服务,我想收到通知时:
a)该网络相连。
B)当本机用户登录。
我怎样才能做到这一点? (C#.NET 2.0)
解决方案 //使用的Microsoft.Win32;
//使用System.Net.NetworkInformation;
公共类SessionChanges
{
公共SessionChanges()
{
NetworkChange.NetworkAvailabilityChanged + =
新NetworkAvailabilityChangedEventHandler(NetworkChange_NetworkAvailabilityChanged);
SystemEvents.SessionSwitch + =新SessionSwitchEventHandler(SystemEvents_SessionSwitch);
}
无效SystemEvents_SessionSwitch(对象发件人,SessionSwitchEventArgs E)
{
如果(e.Reason == SessionSwitchReason.SessionLogon)
{
//用户登录
}
}
无效NetworkChange_NetworkAvailabilityChanged(对象发件人,NetworkAvailabilityEventArgs E)
{
如果(e.IsAvailable)
{
//一个网络可用
}
}
}
I have a service that runs and I'd like to receive notification when:
a) the network is connected.
b) when a user logs in to the machine.
How can I do this? (C# .NET 2.0)
解决方案//using Microsoft.Win32;
//using System.Net.NetworkInformation;
public class SessionChanges
{
public SessionChanges()
{
NetworkChange.NetworkAvailabilityChanged +=
new NetworkAvailabilityChangedEventHandler(NetworkChange_NetworkAvailabilityChanged);
SystemEvents.SessionSwitch += new SessionSwitchEventHandler(SystemEvents_SessionSwitch);
}
void SystemEvents_SessionSwitch(object sender, SessionSwitchEventArgs e)
{
if (e.Reason == SessionSwitchReason.SessionLogon)
{
//user logged in
}
}
void NetworkChange_NetworkAvailabilityChanged(object sender, NetworkAvailabilityEventArgs e)
{
if (e.IsAvailable)
{
//a network is available
}
}
}
相关推荐
最新文章