C#.NET Windows应用程序 - 使用我的NT登录用户名 [英] C#.Net Windows application - Getting Logged user name in My NT

查看:373
本文介绍了C#.NET Windows应用程序 - 使用我的NT登录用户名的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要得到谁登录特定的计算机在我的局域网中的用户名。我建议通过将计算机名在C#.NET Windows应用程序来获取用户名的最好的方法。还要考虑的权限。

I need to get the username who logged in particular machine in my LAN. Suggest me a best method to get the user name by passing machine name in C#.net windows application. Also consider the permission.

感谢

推荐答案

大家好我得到了我的问题的解决方案。我使用WMI来获取用户名。

Hi All I got the solution for my question. I used WMI to get the userName.

try {
    object[] objArr = new object[2];
    ManagementScope ms = new ManagementScope("Path");
    ms.Connect();
    if (ms.IsConnected)
    {
        ObjectQuery Query = new ObjectQuery("SELECT * FROM Win32_Process WHERE Name='explorer.exe'");
        ManagementObjectSearcher searcher = new ManagementObjectSearcher(ms, Query);
        foreach(ManagementObject objQuery in searcher.Get())
        {
            objQuery.InvokeMethod("GetOwner", objArr); // objArr[0] contains the userId and objArr[1] contains Domainname
            userName = Convert.ToString(objArr[0]);
        }
    }
}
catch (System.Exception ex)
{
    throw ex;
}

感谢

这篇关于C#.NET Windows应用程序 - 使用我的NT登录用户名的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆