2009-10-30 70 views
0

Hai每一個 我正在開發一個Windows應用程序,其中我必須阻止可移動存儲設備,例如pendrives.I發現它可能通過更改註冊表值HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ UsbStor,開始值爲4.但問題是我必須阻止它在遠程系統too.Can任何人建議我如何更改遠程系統註冊表的值使用C#與代碼或網站在哪裏我可以找到這個代碼。如何使用C#來更改遠程系統的註冊表值

+3

這是一個善意的編程問題,得到了許多有價值的結果,但如果它不找到一個響應,你可能想檢查一下serverfault.com(或者也許是superuser.com),在那裏人們可能知道那些做了這種管理任務的隨時可用的程序。 – mjv 2009-10-30 06:54:01

+1

你有多少訪問這些遠程機器?在遠程計算機上需要阻止它們的原因是什麼(例如,我爲此進行了安全的學術測試,但我不會推薦我的方法作爲適合所有問題的解決方案) – 2009-10-30 07:04:12

回答

0

你需要有遠程註冊表服務遠程機器上運行。然後,您可以使用WMI來連接註冊表。下面是從this site一個代碼示例腳本:

Dim strComputer 
Dim strUserName 
Dim strPassword 
Dim objLocator 
Dim objService 
Dim objRegistry 

strComputer = "somesys" 
strUserName = "somename" 
strPassword = "somepw" 

Set objLocator = CreateObject("WbemScripting.SWbemLocator") 
Set objService = objLocator.ConnectServer(strComputer, _ 
"Root\Default", strUserName, strPassword) 

objService.Security_.impersonationlevel = 3 

Set objRegistry = objService.Get("StdRegProv") 

'Do something here like retrieving or setting values. 

Set objRegistry = Nothing 
Set objLocator = Nothing 
Set objService = Nothing 

您可以通過google搜索「使用WMI修改遠程註冊表」