Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Скрипт для отключения аудио-карты Windows 7 (http://forum.oszone.net/showthread.php?t=263301)

Scumma 27-06-2013 18:35 2175399

Скрипт для отключения аудио-карты Windows 7
 
Доброго времени суток.
Есть проблема которую очень бы хотелось решить. В частности возможность отключения и включения аудио-карты в Windows 7 путем запуска одного файла. Почитал тему http://forum.oszone.net/thread-154266.html, однако адаптировать под свои нужды не удалось в силу отсутствия специфических знаний.
Основное требование - что бы процедура отключения аудио-карты не требовала перезапуска системы. Действие может быть похожим на отключение устройства в меню "устройства воспроизведения".

Iska 27-06-2013 20:43 2175484

Цитата:

Цитата Scumma
однако адаптировать под свои нужды не удалось »

1. Что Вы пытались адаптировать?
2. Где код?

sunnykey 29-06-2013 18:25 2176437

Код:

#Скачать программу devcon с http://support.microsoft.com/kb/311272
$devcon="C:\devcon.exe"
Get-WmiObject Win32_SoundDevice | Format-Table Name,Manufacturer,DeviceId,Status
$input=Read-Host "Выберете порядковый номер звуковой карты"
$index=[int]$input-1
$input=Read-Host "Выберете действие (0 - отключить, 1 - включить)"
$action=[int]$input
$CurSound=(Get-WmiObject Win32_SoundDevice | Select-Object -Index $index)
if ($action -eq 0) {
    $devconArgs=$devcon+" disable "+'"@'+$CurSound.DeviceId+'"'
    $echo="Отключено устройство "+$CurSound.Manufacturer+" "+$CurSound.Name
} else {
    $devconArgs=$devcon+" enable "+'"@'+$CurSound.DeviceId+'"'
    $echo="Включено устройство "+$CurSound.Manufacturer+" "+$CurSound.Name
}
cmd.exe /c $devconArgs | Out-Null
$echo

Правда не всегда отключает без перезагрузки. Или как вариант запустить это
Код:

rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,0
и сделать два щелчка мышью

Sphinx114 29-06-2013 19:08 2176457

Код:

@echo off
for /f "skip=1 delims=\" %%i in ('wmic sounddev get deviceid') do (
devcon status "%%i*" | findstr run && devcon disable "%%i*" && exit
devcon enable "%%i*"
)



Время: 09:28.

Время: 09:28.
© OSzone.net 2001-