NAudio Mute help: Невозможно привести объект типа 'System .__ ComObject' к типу 'NAudio.CoreAudioApi.Interfaces.MMDeviceEnumeratorComObject' - PullRequest
0 голосов
/ 10 мая 2018

Я искал способ проверить, отключен ли звук в моей системе или нет, и все, что я могу придумать, это:

        NAudio.CoreAudioApi.MMDeviceEnumerator devenum = new NAudio.CoreAudioApi.MMDeviceEnumerator();
        NAudio.CoreAudioApi.MMDevice device = devenum.GetDefaultAudioEndpoint(NAudio.CoreAudioApi.DataFlow.Render, NAudio.CoreAudioApi.Role.Multimedia);

        if (device.AudioEndpointVolume.Mute == true)
        {
            return true;
            SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle,
                (IntPtr)APPCOMMAND_VOLUME_MUTE);
        }

        else
        {
            return false;
            SendMessageW(this.Handle, WM_APPCOMMAND, this.Handle,
                (IntPtr)APPCOMMAND_VOLUME_MUTE);
        }   

Переключатель отключения звука работает нормально, но NAudio.CoreAudioApi.MMDeviceEnumerator devenum = new NAudio.CoreAudioApi.MMDeviceEnumerator(); NAudio.CoreAudioApi.MMDevice device = devenum.GetDefaultAudioEndpoint(NAudio.CoreAudioApi.DataFlow.Render, NAudio.CoreAudioApi.Role.Multimedia); выдает ошибку: Unable to cast object of type 'System.__ComObject' to type 'NAudio.CoreAudioApi.Interfaces.MMDeviceEnumeratorComObject'. после того, как я попробую использовать это.

Примечание: я новичок, и мне нужно время, чтобы понять даже самые простые вещи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...