"Hrvoje Voda" <hr*********@luatech.com> wrote in message
news:df**********@ss405.t-com.hr...
How to check if a user is logged into domain ?
Hrcko
If you want to know wheter the current user is a domain user, you can check
the environment variable USERDOMAIN.
Running XP or higher, you can use System.Management and WMI's class
win32_useraccount.
Here is a sample..
String username = new
WindowsPrincipal(WindowsIdentity.GetCurrent()).Ide ntity.Name;
username = username.Insert(username.IndexOf('\\'), @"\");
// check if current user is a non local account
string queryString = "select Domain from win32_useraccount where
localaccount=false and caption='" + username + "'" ;
using(ManagementObjectSearcher query = new ManagementObjectSearcher( new
SelectQuery(queryString)))
{
foreach( ManagementObject mo in query.Get()) {
Console.WriteLine( "Domain '{0}'", mo["Domain"].ToString());
}
}
If you are looking for the curent interactive logon user(s) things get a bit
more complicated.
Willy.