是否有任何方法可以以编程方式更改A计算机(xp、vista和win 7)所属的工作组(理想情况下是来自.NET语言)?我找到了一些代码来帮助确定一台机器属于哪个工作组,但在某些情况下,我可能需要更改这个代码。
这听起来有点奇怪,但我正在考虑为我们的用户构建一个自动恢复安装(在100多个不同的站点,其中有2到10台机器,每个机器都有自己的“服务器”)。一个常见的场景是,“嘿,我的服务器死了。您能让我们的销售点软件在另一台机器上运行,并使其成为我们的临时/新服务器吗?”.I最终不得不手动配置它们的计算机名(将其重命名为旧服务器名-我已经有了相应的代码),然后再次检查工作组以确保它对网络上的其他计算机可见。我希望能够尽可能地实现自动化。
(编辑)
通过发布信息,我做了更多的搜索,发现我实际上可以直接完成这项工作,而不需要运行exe(这不是一件大事)。
using System;
using System.Management;
//为简洁起见删除了类内容
ManagementObject manage = new ManagementObject(string.Format("Win32_ComputerSystem.Name='{0}'", Environment.MachineName));
object[] args = { "WorkgroupName", null, null, null };
manage.InvokeMethod("JoinDomainOrWorkgroup", args);