Показать полную графическую версию : [решено] Как удалённо отключить звуковую карту через реестр?!
Kyzylorda_Gabit
24-10-2009, 13:37
Здравствуйте, просьба помочь..
Как удалённо отключить звуковую карту через реестр?!
А то компьютеров много, а обегать всех нереально!
Kyzylorda_Gabit,
1) отключи службу Windows Audio
2) отключи звуковую карту в реестре
Petya V4sechkin
24-10-2009, 14:52
Kyzylorda_Gabit, можно в Управление компьютером -> меню Действие -> Подключиться к другому компьютеру -> (выбрать комп) -> Диспетчер устройств -> (отключить что угодно).
Или вам скриптом надо?
Kyzylorda_Gabit
24-10-2009, 15:56
Коллеги, спасибо за ответы...
сорри за тупизм, у меня домен, компов около 100, хотелось бы чтобы всем сразу убрать\восстановить звуковую карту
Раньше мы блокировали через диспетчер устройств локально, а теперь нужно наоборот - снова включить звуковые карты на всех компах! А вот как сразу - не могу додуматься....
Через удалённый реестр - можно?!
Скрипт не помешал бы
А вот через "Подключиться к другому компьютеру" щас буду пробовать привелигированным эккаунтом.
спасибо!
блин, Петя, не получается удалённо через Диспетчер устройств, ругается что режим только для чтения стоит... даже под моим админским эккаунтом. :(
ребята, подскажите как через удалённый реестр звуковую карту за(раз)блокировать?!
Petya V4sechkin
24-10-2009, 17:01
домен, компов около 100, хотелось бы чтобы всем сразу убрать\восстановить звуковую карту
Берем DevCon.exe (http://support.microsoft.com/kb/311272/ru) (там нужно распаковать из архива).
Дальше, создаем вспомогательный скрипт SoundDeviceID.vbs
strComputer = "."
Set objWMIService = GetObject( _
"winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery( _
"Select DeviceID from Win32_SoundDevice")
For Each objItem in colItems
WScript.Echo Left(objItem.DeviceID, InStrRev(objItem.DeviceID, "\") - 1)
Next
и основной батник SoundDeviceStatus.cmd
@Echo Off
SetLocal EnableExtensions
For /F "Delims=" %%I In ('CScript /Nologo "%~dp0SoundDeviceID.vbs"') Do (
If /I "%1"=="Enable" (
"%~dp0DevCon.exe" Enable "%%I"
) Else (
If /I "%1"=="Disable" (
"%~dp0DevCon.exe" Disable "%%I"
) Else (
"%~dp0DevCon.exe" Status "%%I"
)
)
)
Сохраняем эти три файла (devcon.exe, SoundDeviceID.vbs, SoundDeviceStatus.cmd) в одну папку. Можно выполнять доменной политикой (Конфигурация компьютера -> Конфигурация Windows -> Сценарии).
Синтаксис:
SoundDeviceStatus.cmd Enable
SoundDeviceStatus.cmd Disable
(первый вариант - включить, второй - отключить).
отключи службу Windows Audio
Действительно, так будет проще (в доменной политике задать тип запуска службы).
Kyzylorda_Gabit
25-10-2009, 05:02
спасибо за ответ, но я не всё понял....
куда ставить последние синтаксисы Enable и Disable?!
и ещё, можно ли тупо по одному удалённо делать - указал имя машинки в консоли и вперёд?!
плиз, напиши чайнику ОЧЕНЬ доходчиво.. :) я в программировании - минус Ноль :)
Petya V4sechkin
25-10-2009, 09:18
куда ставить последние синтаксисы Enable и Disable?!
Когда в политике задаете скрипт автозагрузки:
http://tools.oszone.net/V4sechkin/Images/GPEdit_Script_Parameters.png
Параметры сценария: Enable (или Disable).
и ещё, можно ли тупо по одному удалённо делать - указал имя машинки в консоли и вперёд?!
Если тупо по одному, придется переделать с PsExec (http://technet.microsoft.com/ru-ru/sysinternals/bb897553.aspx) (но я не вижу в этом смысла, ведь отключение/включение службы Windows Audio - самый простой вариант).
Kyzylorda_Gabit
25-10-2009, 11:33
Петя, спасибо большое за ответы, но вот копаться в политиках у нас не разрешат, да и не получится, админы выше есть!
плиз, брат, покажи как мне по ОДНОМУ можно удалённо управлять этим самым (раз)блокированием звука (а именно звуковой карты) с помощью PsExec.
В общем, дело обстоит так - мне нужно тихо "без шуму и пыли" ВКЛЮЧИТЬ обратно звуковые карты в диспетчере устройств, так как мы до этого многим (но не всем) заблокировали вручную, а теперь пошла команда "РАЗблокировать". Вот поэтому, чтобы не казаться дураками, хочу втихаря включить это устройство, ну и кто его знает, может потом опять скажут ЗАблокировать! Способ этот удалённый очень нужен.
спасибо.
Petya V4sechkin
25-10-2009, 13:43
Kyzylorda_Gabit, переделаем SoundDeviceID.vbs так:
If WScript.Arguments.Count = 0 Then
strComputer = "."
Else
strComputer = WScript.Arguments(0)
End If
Set objWMIService = GetObject( _
"winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery( _
"Select DeviceID from Win32_SoundDevice")
For Each objItem in colItems
WScript.Echo Left(objItem.DeviceID, InStrRev(objItem.DeviceID, "\") - 1)
Next
Создаем EnableSoundDevice.cmd такой:
@Echo Off
SetLocal EnableExtensions
Set RemoteComp=имя_или_IP-адрес_удаленного компа
For /F "Delims=" %%I In ('CScript /Nologo SoundDeviceID.vbs %RemoteComp%') Do (
PsExec.exe \\%RemoteComp% -c DevCon.exe Enable "%%I"
)
Меняем имя_или_IP-адрес_удаленного компа на нужное.
Записываем четыре файла (EnableSoundDevice.cmd, SoundDeviceID.vbs, devcon.exe, psexec.exe) в одну папку.
Запускаем EnableSoundDevice.cmd
Kyzylorda_Gabit
25-10-2009, 13:50
понял, спасибо, буду пробовать!
Kyzylorda_Gabit
25-10-2009, 14:11
блин, всё работает!
Петя Васечкин супер! :)))
ЗЫ: интересно, а какое реальное имя у героя?!
Kyzylorda_Gabit
25-10-2009, 14:42
мужики, а как благодарности ставить?!
тоже скриптом?! :)
Petya V4sechkin
25-10-2009, 19:26
Kyzylorda_Gabit, не за что, заходите еще )
как благодарности ставить?!
тоже скриптом?! »
нет.. руками.
Как я могу отметить сообщение полезным? (http://forum.oszone.net/faq.php?faq=vb_board_usage#faq_thanks)
Kyzylorda_Gabit
26-10-2009, 16:15
Петя, можно ещё один вопрос?!
Как делать по одному - понятно, всё работает!
А вот как прописать некий скрипт, в котором можно указать список НУЖНЫХ машинок и потом тупо нажать старт и всё, понеслась?!
спасибо!
Petya V4sechkin
26-10-2009, 18:15
Kyzylorda_Gabit, создайте файл CompList.txt со списком компьютеров и отредактируйте EnableSoundDevice.cmd так:
@Echo Off
SetLocal EnableExtensions
For /F "Delims=" %%K In (CompList.txt) Do (
For /F "Delims=" %%I In ('CScript /Nologo SoundDeviceID.vbs %%K') Do (
PsExec.exe \\%%K -c DevCon.exe Enable "%%I"
)
)
Kyzylorda_Gabit
27-10-2009, 05:05
Список компьютеров нужно писать в столбик через запятые или как?!
Боюсь ошибиться...
Petya V4sechkin
27-10-2009, 08:10
Kyzylorda_Gabit, в столбик.
Kyzylorda_Gabit
27-10-2009, 19:56
Понял, шеф!
Всем привет! Друзья, подскажите, пожалуйста, как побороть нерадивого коллегу, который постоянно слушает громко музыку и ни при каких обстоятельствах (проси - не проси) её не отключает. Хотелось бы отключить ему звук навсегда и без следов такого вмешательства. Теоретически могу влезть в его комп (в том числе узнать его IP).
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.