2011-12-19 19 views
4

如何設置使用C#的遠程計算機的日期,時間和時區設置? 基本上,我想更新網絡中選定機器上的時間。使用C#在遠程計算機上設置日期,時間和時區#

創建時間服務器不是一個選項,因爲我只想更新用戶選擇的計算機上的時間。所有的遠程計算機都運行Windows XP或更高版本的操作系統。

+0

可以在此使用來完成WMI ..?你有沒有檢查過這個可能性..?也試着看這個鏈接.. – MethodMan 2011-12-19 03:54:34

+0

你可以使用Win XP支持的WIM。看到這裏的基本腳本:http://blogs.technet.com/b/heyscriptingguy/archive/2007/11/16/hey-scripting-guy-how-can-i-set-the-date-and-time -on-a-computer.aspx – 2011-12-19 04:06:56

回答

3

通過WMI和.NET執行遠程過程在線廣泛記錄。您可以執行date,timetzutil DOS實用程序來完成您所需的操作。不過,我認爲PsExec是要走的路。

您只需在計算機上下載一次1.6 MB實用程序,並使用它在您的XP計算機上執行各種遠程進程。下面是如何使用PSEXEC更改時區到中部時間:

psexec \\RemPC01 TZUTIL /s "Central Standard Time" 

你可以在一個位的.NET代碼把這個包,它應該做你想要什麼:

string remoteMachine = "RemPC01"; 
string appName = "psexec.exe"; 
string args = string.Format("\\\\{0} TZUTIL /s \"Central Standard Time\"", remoteMachine); 
Process.Start(appName, args); 
+0

'args'中的字符串未正確轉義。我現在改變了它,它應該正確。 – Abbas 2011-12-19 06:13:40

2

我會推薦使用PsExec來做到這一點。也許將它與您的應用程序結合使用。它使您能夠訪問遠程計算機的控制檯,並且您正在查找的控制檯命令是更改時間的「時間」。