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

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

icq99999999 17-01-2021 00:33 2946490

Получить состояние звукового устройства
 
каким методом можно проверить состояние устройства воспроизведения с помощью скрипта?. (состояния: готов, не подключено, устройство воспроизведения по умолчанию)

Iska 17-01-2021 08:03 2946515

icq99999999, расскажите, как сие проверить не программно.

icq99999999 17-01-2021 10:10 2946520

Цитата:

Iska
устройство расположено по адресу: "панель управления\оборудование и звук\звук\tv" цель сего действия такова, чтобы если устройство в состоянии не подключено (но не отключено) то запустить файл иначе завершить скрипт

DJ Mogarych 17-01-2021 10:49 2946522

Get-PnpDevice

icq99999999 17-01-2021 11:35 2946526

DJ Mogarych, думаю это было бы решением, но не для моей windows 7 без powershell

Iska 17-01-2021 11:45 2946528

Я, честно говоря, не понял, поможет ли сие вообще. Скажем, в моём случае:
Скрытый текст

?!

icq99999999 17-01-2021 12:21 2946530

Вложений: 1
Цитата:

Цитата Iska
Скажем, в моём случае »

у меня так
Скрытый текст

Iska 17-01-2021 12:48 2946532

Да, у Вас аналогично.

Я чую, что «ковырять» надо немного в другую сторону, Audio Endpoint Devices - Win32 apps | Microsoft Docs.

птичка0001 17-01-2021 13:05 2946533

Я бы использовала:
Matthew van Eerde известен на stackoverfow и нереально крут по WASAPI (и всего, что касается audio :) Когда-то он мне тоже помог, не бойтесь у него спрашивать. Снова его прорекламировала.
// мимо проходила

DJ Mogarych 17-01-2021 13:26 2946535

Цитата:

Цитата icq99999999
не для моей windows 7 без powershell »

Что мешает поставить?

icq99999999 17-01-2021 13:46 2946537

Цитата:

Цитата DJ Mogarych
Что мешает поставить? »

можно поставить, просто я в нём не шарю. кстати я подумал как решить эту задачу по другому например можно какой нибудь утилитой(скриптом) попробовать установить tv как устройство звука по умолчанию, и если она вернет ошибку что устройство не подключено то запустить программу.

icq99999999 17-01-2021 14:16 2946538

Цитата:

Цитата птичка0001
Enumerating inactive volume sessions »

задача решена: с помощью утилиты по ссылке
Скрытый текст
@echo off

del 1.txt
inactive-volume-sessions>>1.txt
find /I 1.txt "tv" && echo tv ready ok

echo.&pause

птичка0001 17-01-2021 19:41 2946592

Цитата:

Цитата icq99999999
если устройство в состоянии не подключено (но не отключено)

Простите, что-то я плохо соображаю, а как это? Как оно может быть не подключено, но не отключено? (Не в том смысле, что Вы здесь, а устройство у Вашей бабушки) Или Вам надо включить и установить по умолчанию? При подключении Ваше устройство не становится устройством по умолчанию?
Цитата:

Цитата icq99999999
то запустить файл иначе завершить скрипт

Что за файл и что за скрипт непонятно. Поясните.
Цитата:

Цитата icq99999999
задача решена: с помощью утилиты по ссылке

Вы уверены, что это именно то, что Вам нужно? Если это не секретная информация, то покажите, пожалуйста, вывод.
Цитата:

Цитата icq99999999
можно поставить, просто я в нём не шарю

Зря. Вам ведь DJ Mogarych не просто так говорил про PowerShell дважды.

Iska 17-01-2021 19:47 2946594

Цитата:

Цитата птичка0001
Простите, что-то я плохо соображаю, а как это? Как оно может быть не подключено, но не отключено? »

1) не устройство, 2) в том смысле, что оно unplugged, но не disabled.

Здесь:
Скрытый текст

это слева нижнее.

А «отключено», это вот так:
Скрытый текст

greg zakharov 17-01-2021 21:49 2946615

Странная тема, ведь всё в сущности сводится до уровня SetupAPI.

icq99999999 17-01-2021 21:54 2946616

Цитата:

Цитата птичка0001
это именно то »

вообще задача была в том чтоб скрипт мог узнать подключено (или не подключено) ли tv и выполнить команду, что собственно скрипт и делает (если tv не подключен, скрипт не выводит сообщение) . а проверку на то что tv отключено можно с помощью devcon.
Файл 163410

птичка0001 17-01-2021 22:02 2946618

Я почему-то думала об этом: indicate the current state of an audio endpoint device Это после прочтения шапки и #11. На #11 сообщении понимание меня покинуло
Ладно, пойду спать.

greg zakharov 17-01-2021 22:05 2946619

Цитата:

Цитата icq99999999
а проверку на то что tv отключено можно с помощью devcon.

devcon есть в WDK и иже с ним, раз. devcon использует SetupAPI, два. Набросать на коленке сценарий pwsh дело десяти минут. А ведь pwsh и по размерам меньше, чем WDK, и установки не требует. Вам всё это уже говорили.
Цитата:

Цитата птичка0001
Ладно, пойду спать.

Доброй ночи!

Iska 17-01-2021 22:17 2946622

Цитата:

Цитата icq99999999
а проверку на то что tv отключено можно с помощью devcon. »

С удовольствием посмотрю на Ваш код для devcon для определения сего.

greg zakharov 17-01-2021 22:25 2946626

Iska, там и телепатом не нужно быть, чтобы представить себе что к чему.

Iska 17-01-2021 22:30 2946628

greg zakharov, с удовольствием посмотрю и Ваш код для devcon.

icq99999999 17-01-2021 22:31 2946629

Цитата:

Цитата Iska
devcon »

да, так то им можно определить только если отключено устройство в диспетчере устройств

greg zakharov 17-01-2021 23:29 2946635

Цитата:

Цитата Iska
с удовольствием посмотрю и Ваш код для devcon.

Видимо вы переутомились. Написано же ранее было: проще всё написать на pwsh с нуля. Задача не подразумевает получения данных о том, подаётся ли напряжение на устройство при отключенном (выгруженном) драйвере, - достаточно SetupAPI.

птичка0001 18-01-2021 04:49 2946655

Эм... я по-прежнему думаю об:indicate the current state of an audio endpoint device. Здесь поконкретней: How to enumerate audio endpoint (IMMDevice) properties on your system, но не суть. Никто не лезет в 2021 году в Core Auduo Apis напрямую просто так (а у нас тут еще windows 7). Core Audio Apis — это сложно, без шуток.
Цитата:

Цитата icq99999999
проверку на то что tv отключено можно

Я бы вообще не проверяла, а отключила, раз такое дело. А так, мы имеет неправильно поставленную задачу, слепо следуем указаниям TC.

greg zakharov 18-01-2021 10:19 2946673

Цитата:

Цитата птичка0001
Никто не лезет в 2021 году в Core Auduo Apis напрямую просто так (а у нас тут еще windows 7).

А для чего в него лезть в данном случае? Если вы хоть раз ковырялись в менеджере устройств Windows, тогда знаете, что он спроектирован на SA (который использует devcon), а состояние устройства (включен\выключен) определяется его драйвером (увы, но именно так полагают и в самой MS).
Цитата:

Цитата птичка0001
Core Audio Apis — это сложно, без шуток.

С каких пор? WCAA (или как вы его обозвали CAA) по своей сути высокоуровневая надстройка над рядом прочих COM интерфейсов (EVA, MDA и пр.), при этом, если верить отладчику, некоторые данные, которыми он оперирует, используются и в SA.
Цитата:

Цитата птичка0001
Я бы вообще не проверяла, а отключила, раз такое дело.

"Это гениально, Кронк!" (C)

птичка0001 18-01-2021 11:03 2946679

Цитата:

Цитата greg zakharov
А для чего в него лезть в данном случае?

В данном случае — лезть не нужно, так можно сделать так:
Цитата:

Цитата птичка0001
Я бы вообще не проверяла, а отключила, раз такое дело

Это просто.
Цитата:

Цитата greg zakharov
С каких пор?

Не соглашусь, просто не буду спорить :)
Цитата:

Цитата greg zakharov
"Это гениально, Кронк!" (C)

Цитата:

Цитата птичка0001
Это просто

"Простота — это то, что труднее всего на свете; это крайний предел опытности и последнее усилие гения.“ — Леонардо да Винчи (C)
P.S. Я не против других решений и уважаю чужое мнение (даже в том случае, если оно противоположно моему), самое главное — чтобы автор исполнил свою хотелку, а как он это будет делать, — его личное дело.

greg zakharov 18-01-2021 15:00 2946714

птичка0001, спорить вас никто не просит, но видимых аргументов в пользу компликативности WCAA вы не привели. Может для вас это кажется сложным, но на деле ничего сложного там в упор не наблюдается. А цитат на долю однокоренных наречию "просто" слов достаточно, вот только сам разговор скатывается в откровенную демагогию, да и когда оппонент не в состоянии объяснить толково свою позицию, он ссылается на банальное "уважаю чужое мнение", - давайте лучше по существу. Если оставить в стороне сам процесс подключения устройства (как и всё связанное с физикой), объективно - система не знает ничего о подключаемых устройствах. Есть конечно HAL, НО! Возьмите кусок обычной фольги, скрутите ее в плотную трубочку диаметром с audio jet и воткните ее в соответствующий разъём. Что вы получите?

птичка0001 18-01-2021 15:57 2946721

А зачем Вы начали вести речь о HAL, который, минуточку, тоже является драйвером? И проводить опыт втыкания фольги в разъм 3.5 мм? Ответ: при большом желании фольга будет в разъеме, если хотите.
Цитата:

Цитата gfeg zakharov
компликативности WCAA*

Я основываюсь на документации и исхожу из своего опыта.

greg zakharov 18-01-2021 17:05 2946728

птичка0001, во-первых, вы не ответили на прямо поставленный вопрос, ибо что трубка из фольги будет в разъёме кэп итак подскажет. Хорошо, если вам не ясна суть вопроса, давайте объясняться на пальцах. У вас выводится звук на динамики; вы подключаете наушники, звук, соответственно, переводится в них, - что при этом вы видите в диспетчере устройств? Втыкая скрученный кусок фольги, пропадёт ли звук? Что вы увидите в диспетчере устройств?
Что касается HAL. Когда начинаешь объяснять прописные вещи, все цепляются первым делом к HAL, так как всем известно, что после загрузки системы оный "опрашивает" BIOS на предмет конфигурации ОС, чтобы определить какие шины и I\O содержит система (правда многие при этом забывают, что собранная информация после помещается в реестр).
Цитата:

Цитата птичка0001
Я основываюсь на документации и исхожу из своего опыта.

То есть, ваше мнение субъективно: для вас - сложно, но при этом вы не допускаете, что другим - просто, причем эти другие также могут исходить из собственного опыта. К слову, документация жутко неполная.

Iska 18-01-2021 17:15 2946730

Цитата:

Цитата greg zakharov
Видимо вы переутомились. Написано же ранее было: »

Не было. Изъясняйтесь яснее, коллега.

greg zakharov 18-01-2021 17:47 2946738

Цитата:

Цитата Iska
Изъясняйтесь яснее, коллега.

Monsieur ne comprend pas le russe?

Iska 18-01-2021 19:22 2946754

greg zakharov, по-французски я умею только спросить «Говорите ли Вы по-французски?», не более того :). А Вы иной раз демонстрируете обратное ;), коллега.

птичка0001 18-01-2021 20:45 2946761

Цитата:

Цитата greg zakharov
во-первых, вы не ответили на прямо поставленный вопрос

Я ответила достаточно для понимания.
Цитата:

Цитата greg zakharov
давайте объясняться на пальцах

Мне не надо объяснять на пальцах, то что я не просила.
Цитата:

Цитата greg zakharov
То есть, ваше мнение субъективно

Цитата:

Цитата Википедия
Субъекти́вность — это выражение представлений человека (мыслящего субъекта) об окружающем мире, его точки зрения, чувства, убеждения и желания.
Субъективность является единственным способом, с помощью которого мы познаём мир, математически, научными методами или иным способом.

Цитата:

Цитата greg zakharov
К слову, документация жутко неполная.

Вопросов больше не имею.

Надеюсь, у Вас уже закончился порох в пороховницах.

Всем добра.

greg zakharov 18-01-2021 20:46 2946762

Iska L'opposé? Cul?! Что-то меня начинают смущать ваши наклонности )))))

птичка0001, то есть аргументов у вас нет? Уйти от ответа на вопрос фразой "я всё сказала" - манёвр ортодоксальной представительницы женского пола. Впрочем, как вам будет угодно.

Phoenix 18-01-2021 20:58 2946763

greg zakharov, зачем вы нападаете на Иску? У вас в профиле фото мухи с волосатой задницей, а еще других уличаете в наклонностях на французском. Зафлудили коллективно топик, ТС уже наверное и скрипта никакого не хочет :(

Iska 18-01-2021 21:12 2946765

Phoenix, ну, вот он такой (хотя не всегда таким был). Я привык :).

Думаю, можно сказать, что мы с коллегой greg zakharov старые знакомцы, так что могём подтрунивать друг над другом в несколько больших пределах, нежели допустимо общепринятыми правилами. Но токмо друг над другом.

А автор темы свою задачу решил, насколько я понимаю.

greg zakharov 18-01-2021 21:44 2946768

Phoenix, с чего вы взяли, что это - нападение? К слову, Iska уже вам всё разъяснил.

Паразит 19-01-2021 05:26 2946797

greg zakharov, код в студию. Или мы только "Бе-бе-бе" можем?


Время: 03:55.

Время: 03:55.
© OSzone.net 2001-