Как изменить значение реестра удаленной системы с помощью C # - PullRequest
0 голосов
/ 30 октября 2009

Хай каждый Я занимаюсь разработкой приложения для Windows, в котором мне нужно заблокировать съемные устройства хранения, такие как pendrives. Я обнаружил, что это возможно, изменив значение реестра HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ UsbStor, начальное значение равно 4. Но проблема в Я должен блокировать его и на удаленных системах. Может ли кто-нибудь подсказать мне, как изменить значение реестра удаленной системы, используя c # с кодом или сайтами, где я могу найти код для этого.

Ответы [ 3 ]

2 голосов
/ 30 октября 2009

. Net может использовать Microsoft.Win32.RegistryKey.OpenRemoteBaseKey .

Альтернативой может быть использование WMI. В Google есть много примеров для чтения значений ; замена GetStringValue на SetStringValue (или SetDWORDValue и т. д.) должна делать то, что вы хотите.

0 голосов
/ 30 октября 2009

На удаленном компьютере должна быть запущена служба Удаленный реестр . Затем вы можете использовать WMI для подключения реестра. Вот пример сценария кода с этого сайта :

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

Вы можете получить много ценных результатов, прибегая к помощи «использования WMI для изменения удаленного реестра»

0 голосов
/ 30 октября 2009

Возможно, вы захотите взглянуть на службу удаленного реестра и выполнить вызов RPC.

MSDN описание: http://msdn.microsoft.com/en-us/library/aa940121(WinEmbedded.5).aspx Пример MSDN с использованием RegistryKey.OpenRemoteBaseKey: http://msdn.microsoft.com/en-us/library/8zha3xws.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...