示例#1
0
 public static void SetDefaultAudioDevice(MMDevice mMDevice)
 {
     try
     {
         var            config = new PolicyConfig();
         int            hr1;
         int            hr2;
         int            hr3;
         bool?          win10   = null;
         IPolicyConfig2 config2 = config as IPolicyConfig2;
         if (config2 != null)
         {
             win10 = false;
             hr1   = config2.SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Multimedia);
             hr2   = config2.SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Communications);
             hr3   = config2.SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Console);
         }
         else
         {
             win10 = true;
             hr1   = ((IPolicyConfig3)config).SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Multimedia);
             hr2   = ((IPolicyConfig3)config).SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Communications);
             hr3   = ((IPolicyConfig3)config).SetDefaultEndpoint(mMDevice.ID, AudioDeviceRole.Console);
         }
         Toolbox.uAddDebugLog($"NAudio HResult Definitions: s_OK({HResult.S_OK}) | s_FALSE({HResult.S_FALSE}) | e_INVALIDARG({HResult.E_INVALIDARG})");
         Toolbox.uAddDebugLog($"SetAudioDefaultResults: win10({win10}) | hr1({hr1}) | hr2({hr2}) | hr3({hr3})");
     }
     catch (Exception ex)
     {
         Toolbox.LogException(ex);
     }
 }
示例#2
0
 private void uDebugLogAdd(string _log, DebugType _type = DebugType.INFO, [CallerMemberName] string caller = "")
 {
     try
     {
         Toolbox.uAddDebugLog($"CLSSETTINGS: {_log}", _type, caller);
     }
     catch (Exception ex)
     {
         Toolbox.LogException(ex);
     }
 }