Windows计算机的“ Win32_ComputerSystem”中的用户名在远程计算机中始终为空

时间:2019-04-24 18:14:42

标签: c# windows-services

我正在使用以下方法在Windows中登录用户名(Windows服务中正在使用该用户名)。它在我的机器上运行良好(MY-Username(Pc-Name)),但是当我将其安装到其他Windows机器上时,由于UserName为null,它仅返回Name((Name))值,这可能是什么原因引起的?

不幸的是,我无法在该远程计算机上安装VS,希望仍然有办法对其进行修复

private string GetUserName()
        {
            string result = "";
            using (ManagementObjectSearcher searcher = new ManagementObjectSearcher("SELECT UserName, Name FROM Win32_ComputerSystem"))
            {
                foreach (ManagementObject mo in searcher.Get())
                {
                    if (mo["UserName"] != null)
                        result = mo["UserName"].ToString();

                    if (mo["Name"] != null)
                        result += " (" + mo["Name"].ToString() + ")";
                }
            }
            return result;
        }

0 个答案:

没有答案