0

我设置了两个操作系统,一个 win7 和一个 XP,它们都在同一个WORKGROUP中(它们都不是这样的域)

我正在尝试使用以下代码获取计算机的工作组名称:

VB.NET:

Public Function GetWorkGroup() As String
    Dim computer_system As New Management.ManagementObject(String.Format("Win32_ComputerSystem.Name='{0}'", Environment.MachineName))
    Dim result As Object = computer_system("Workgroup")
    Return result.ToString()
End Function

C#:

public string GetWorkGroup()
{
    Management.ManagementObject computer_system = new management.ManagementObject(string.Format("Win32_ComputerSystem.Name='{0}'",   Environment.MachineName));
    object result = computer_system("Workgroup");
    return result.ToString();
}

这在 Win7 上确实有效,但在 XP computer_system("Workgroup") 上没有任何结果。如果我想让它工作,我必须进行以下修改:

VB.NET:
        Dim result As Object = computer_system("Domain")
C#:
        object result = computer_system("Domain");

这适用于 Win7 和 XP,返回正确的工作组名称,但如果我在 XP 上用 Domain 属性返回工作组名称,显然有些问题。

有人可以解释一下为什么 XP 将其工作组作为域处理吗?谢谢。

4

0 回答 0