我设置了两个操作系统,一个 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 将其工作组作为域处理吗?谢谢。