• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

отключение микрофона при помощи python3

cyborg

New member
03.08.2019
4
0
BIT
0
Как отк\вкл (не понизить звук) микрофон windows 7, при помощи пайтон, на-гуглил pyaudio, но там не нашел отк\вкл микро. Может как-то задействовать pywin32? Буду благодарен за любую помощь!
 

f22

Codeby Academy
Gold Team
05.05.2019
1 835
225
BIT
973
Как отк\вкл (не понизить звук) микрофон windows 7, при помощи пайтон, на-гуглил pyaudio, но там не нашел отк\вкл микро. Может как-то задействовать pywin32? Буду благодарен за любую помощь!
Попробуй подойти к решению этой проблемы с другой стороны:
есть консольная утилита, входящая в состав средств разработки windows,
которая называется .
Она позволяет устройствами, зная их ID.

Ну, а в python ты можешь запускать её через
Python:
import os
os.startfile(r'c:\Windows\system32\cmd.exe', 'any-arg') #Cmd.exe start-up
# или через аргумент самой cmd
os.system(r'C:\Windows\system32\cmd.exe -myarg')
или
Python:
import subprocess
subprocess.Popen([r'C:\Windows\system32\cmd.exe', '--some-arg'])
 

cyborg

New member
03.08.2019
4
0
BIT
0
Попробуй подойти к решению этой проблемы с другой стороны:
есть консольная утилита, входящая в состав средств разработки windows,
которая называется .
Она позволяет устройствами, зная их ID.

Ну, а в python ты можешь запускать её через
Python:
import os
os.startfile(r'c:\Windows\system32\cmd.exe', 'any-arg') #Cmd.exe start-up
# или через аргумент самой cmd
os.system(r'C:\Windows\system32\cmd.exe -myarg')
или
Python:
import subprocess
subprocess.Popen([r'C:\Windows\system32\cmd.exe', '--some-arg'])
Спасибо за ответ, обязательно попробую! Пришла идея решить проблему заменой значения ключа реестра, вот код:
Python:
from winreg import *

def mic_On():
    key_my = OpenKey(HKEY_LOCAL_MACHINE,
                    r"SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Capture\{024e773b-2a13-4af0-9c61-ea1204cb1978}",
                     0, (KEY_WOW64_64KEY + KEY_READ))
    SetValueEx(key_my, "DeviceState", 0, REG_DWORD, 0x00000001)
    CloseKey(key_my)

mic_On()
Но... я попучаю ошибку: PermissionError: [WinError 5] Отказано в доступе
Запуск скрипта от имени админа не помог
 

f22

Codeby Academy
Gold Team
05.05.2019
1 835
225
BIT
973
Спасибо за ответ, обязательно попробую! Пришла идея решить проблему заменой значения ключа реестра, вот код:
Python:
from winreg import *

def mic_On():
    key_my = OpenKey(HKEY_LOCAL_MACHINE,
                    r"SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Capture\{024e773b-2a13-4af0-9c61-ea1204cb1978}",
                     0, (KEY_WOW64_64KEY + KEY_READ))
    SetValueEx(key_my, "DeviceState", 0, REG_DWORD, 0x00000001)
    CloseKey(key_my)

mic_On()
Но... я попучаю ошибку: PermissionError: [WinError 5] Отказано в доступе
Запуск скрипта от имени админа не помог

Попробуй так, у меня работает
Python:
from winreg import *
REG_PATH = r"SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Capture\{caadea3a-3ab4-4f9e-b558-0a784faf03b6}"

def mic_On(name, value):
    try:
        CreateKey(HKEY_LOCAL_MACHINE, REG_PATH)
        registry_key = OpenKey(HKEY_CURRENT_USER, REG_PATH, 0,
                                       KEY_WRITE)
        SetValueEx(registry_key, name, 0, REG_SZ, value)
        CloseKey(registry_key)
        return True
    except WindowsError:
        print("error")
        return False

mic_On("DeviceState","0x00000001")
 

cyborg

New member
03.08.2019
4
0
BIT
0
Попробуй так, у меня работает
Python:
from winreg import *
REG_PATH = r"SOFTWARE\Microsoft\Windows\CurrentVersion\MMDevices\Audio\Capture\{caadea3a-3ab4-4f9e-b558-0a784faf03b6}"

def mic_On(name, value):
    try:
        CreateKey(HKEY_LOCAL_MACHINE, REG_PATH)
        registry_key = OpenKey(HKEY_CURRENT_USER, REG_PATH, 0,
                                       KEY_WRITE)
        SetValueEx(registry_key, name, 0, REG_SZ, value)
        CloseKey(registry_key)
        return True
    except WindowsError:
        print("error")
        return False

mic_On("DeviceState","0x00000001")
У меня выполняется блок "except", значение переменной "REG_PATH" я конечно поставил свой. Думаю проблема кроется в самом питоне*32, а виндовс*64.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!