mirror of
https://github.com/onyx-and-iris/nvda-addon-voicemeeter.git
synced 2026-04-18 17:13:31 +00:00
rename exceptions + lint fixes
This commit is contained in:
@@ -1,16 +1,22 @@
|
||||
import ctypes as ct
|
||||
import platform
|
||||
import winreg
|
||||
from pathlib import Path
|
||||
|
||||
from .error import VMError
|
||||
from .error import VMAddonError
|
||||
|
||||
try:
|
||||
import winreg
|
||||
except ImportError as e:
|
||||
ERR_MSG = 'winreg module not found, only Windows OS supported'
|
||||
raise VMAddonError(ERR_MSG) from e
|
||||
|
||||
# Defense against edge cases where winreg imports but we're not on Windows
|
||||
if platform.system() != 'Windows':
|
||||
ERR_MSG = f'Unsupported OS: {platform.system()}, only Windows OS supported'
|
||||
raise VMAddonError(ERR_MSG)
|
||||
|
||||
BITS = 64 if ct.sizeof(ct.c_voidp) == 8 else 32
|
||||
|
||||
if platform.system() != 'Windows':
|
||||
raise VMError('Only Windows OS supported')
|
||||
|
||||
|
||||
VM_KEY = 'VB:Voicemeeter {17359A74-1236-5467}'
|
||||
REG_KEY = '\\'.join(
|
||||
filter(
|
||||
@@ -35,12 +41,14 @@ def get_vmpath():
|
||||
try:
|
||||
vm_parent = Path(get_vmpath()).parent
|
||||
except FileNotFoundError as e:
|
||||
raise VMError('Unable to fetch DLL path from the registry') from e
|
||||
ERR_MSG = 'Voicemeeter installation not found in registry'
|
||||
raise VMAddonError(ERR_MSG) from e
|
||||
|
||||
DLL_NAME = f'VoicemeeterRemote{"64" if BITS == 64 else ""}.dll'
|
||||
|
||||
dll_path = vm_parent.joinpath(DLL_NAME)
|
||||
if not dll_path.is_file():
|
||||
raise VMError(f'Could not find {dll_path}')
|
||||
ERR_MSG = f'Could not find {dll_path}'
|
||||
raise VMAddonError(ERR_MSG)
|
||||
|
||||
libc = ct.WinDLL(str(dll_path))
|
||||
|
||||
Reference in New Issue
Block a user