2013-10-15 5 views
6

Когда я пытаюсь получить список доступных аудиоустройств, подобных этому.Невозможно получить аудиоустройство от Lync 2013 sdk

LyncClient client = LyncClient.GetClient(); 
foreach (Device dev in client.DeviceManager.AudioDevices) 
{ 
     //Do something 
} 

Я получаю ошибку Exception has been thrown by the target of an invocation.

"Unable to cast COM object of type 'System.__ComObject' to interface type 
'Microsoft.Office.Uc.IAudioDevice2'. This operation failed because the QueryInterface 
call on the COM component for the interface with IID '{86B3E5FE-4635-4C1E- 
A725-C80B71D04984}' failed due to the following error: No such interface supported 
(Exception from HRESULT: 0x80004002 (E_NOINTERFACE))." 

Вот трассировки стека

at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) 
at System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) 
at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) 
at System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) 
at Microsoft.Lync.Model.Internal.UCWCache.CreateUCW(Object source, CCOMInfo ccomInfo) 
at Microsoft.Lync.Model.Internal.UCWCache.GetITTargetNS(Object source) 
at Microsoft.Lync.Model.Internal.UCEnumerator`2.get_Current() 
at Microsoft.Lync.Model.Internal.UCEnumerator`2.System.Collections.Generic.IEnumerator<S>.get_Current() 

и внутренней трассировки стека исключений

at Microsoft.Lync.Model.Device.AudioDevice.INTERNAL_Init(IAudioDevice initInterface) 
at Microsoft.Lync.Model.Device.AudioDevice.INTERNAL_Init_Object(Object initInterface) 
+0

У меня такая же проблема, можете ли вы отправить версию, которая решила эту проблему (как sdk, так и Lync Client 2013). – Anas

+0

Извините за поздний ответ. Я использую эту версию Lync http://support.microsoft.com/kb/2825630. и эта версия sdk http://www.microsoft.com/en-ca/download/confirmation.aspx?id=36824 – user1098580

ответ

1

Вы проверили, что оба Lync и ваш SDK имеют одинаковые номера версий?

Существует, по-видимому, много выпусков Lync 2013, и у них может не быть такой же версии.

0

Проблема, как представляется, в "// Делаем s omething "часть кода.

Я просто побежал за ним после штрафа.

var Client = LyncClient.GetClient(); 

     foreach (var dev in Client.DeviceManager.AudioDevices) 
     {    
      Console.WriteLine(dev.Name); 
     } 

Возможны ли случайные следы стека, если это не сработает?

+0

Ошибка возникает в самом foreach, когда она пытается повлиять на переменную dev. Я добавил трассировку стека. – user1098580

 Смежные вопросы

  • Нет связанных вопросов^_^