有沒有辦法以編程方式更改工作組的一臺機器(XP,Vista和Win 7的)屬於(最好從.NET語言)?我發現了一些代碼來幫助確定一臺機器屬於哪個工作組,但在某些情況下,我可能需要更改它。如何以編程方式更改機器的工作組?
這聽起來有點不可思議,但我想建立一個自動恢復安裝爲我們的用戶(在100多個不同的網站2到10臺機器,每個都有自己的「服務器」)。一種常見的情況是,「嘿,我的服務器死了,你能讓我們的銷售點軟件在另一臺機器上運行,並將它作爲我們的臨時/新服務器嗎?」。我最終不得不手動配置他們的計算機名(其重命名爲舊服務器的名字 - 我的代碼這個的話),然後仔細檢查工作組,以確保它在網絡上的其他計算機上可見。我很樂意儘可能地自動化。
(編輯)
隨着信息發佈我做更多的搜索和發現,其實我可以直接做到這一點,而無需運行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);
感謝您發佈您的解決方案,你救了我的一天,先生。 – scor4er 2014-06-19 20:12:01