2013-12-09 4 views
7

lync Sdkを使用して、自分のwfpアプリケーション内でLyncの会話をドッキングします。WindowsでLync NotInitializedExceptionが取得不能8

public void Dock(Conversation conversation, IntPtr host) 
{ 
    try 
    { 
    ConversationWindow window = _automation.GetConversationWindow(conversation); 
    if (window.State == ConversationWindowState.Initialized) 
    { 
     window.Dock(host); 
    } 
    } 
    catch (Exception ex) 
    { 
    } 
} 

いつか検証とドッキングの間、およびWindows 8のwindow.Stateの変更が発生した例外が捕捉可能ではないことと、自分のアプリケーションを引き起こしているようだ: 問題は、私は、このような会話をドッキングしようとするということですWindows 7のどこでクラッシュするかは例外です。

例外は、Lyncのは、それが上の操作を実行しているスレッドに関する非常にfinnickyことができることを私が見つけた型Microsoft.Lync.Model.NotInitializedException

+0

Application(App.cs)DispatcherUnhandledExceptionイベントを使用して例外をキャッチすることはできますか? – PBelanger

+0

いいえ私は既にOnDispatcherUnhandledExceptionで未処理の例外をキャプチャしていますが、例外が全く発生せず、アプリケーションがクラッシュしたように思えます。 – user1098580

+0

例外を投げるスレッドのコールスタックをポストできますか?もしそれがディスパッチャスレッド上になく、スレッドがあなたによって起動されていなければ、 'AppDomain'レベルでそれを捕まえなければならないかもしれません。 – Mitch

答えて

0

です。私たちが見た最も奇妙な動作のいくつかは、会議/会話を作成したスレッドでコールが行われ、別のスレッドで呼び出されると予想される場合です。例外を見ていないことは、これらのシナリオの間違いの1つでした。

私があなたの場合は、スレッドをLyncの操作に専念させ、必要に応じてこれらの操作をポークします(多分、インターフェイスをきれいにしてきれいにするコールバックがあれば)。

スレッディングが問題であることを確認したい場合は、これらの呼び出しをWPFディスパッチャーにディスパッチして確認することができます(一度確認したら、スレッドモデルをロックしたくない場合は、 UI)

0

無回答ですが、ご提案です。あなたもここであなたの質問を投稿してみてください:あなたの問題はバグがある

Lync Client Developer Forum

場合は、製品チームの注目を取得します。そうでない場合は、あなたの質問に答えて問題を解決する可能性もあります。