我有一些麻煩的interop.tapi3lib.dll(可以是DL在這裏:dllLink)添加新線Tapi3Lib在運行時
對於報告程序我寫信,我要監控所有的tapi爲他們的呼叫提供的設備。現在,當我啓動程序時,這很好用,儘管我懷疑這個dll是爲了修改一個擴展中的調用而編寫的,只需很少的代碼就可以完美地看到所有的活動。
當用戶註銷(或在)電話(我正在使用這個用於cisco Callmanager)時,問題出現。那時我可以捕獲tapi_object,它又可以用來確定刪除和添加哪條線(舊號碼和新號碼),但我無法註冊發送事件的新地址。
當我嘗試例外:
值不在預期的範圍內。
- 因爲tapiclass創建此地址可用我懷疑之前。
目前,我做了一個測試,會爲每個行個人和1個tapiclass監測tapiobject事件的單個tapiclass,但這是吃10倍的內存對我們公司的配置(20個手機),所以我甚至不想在目標站點(+300電話)測試。另一種選擇(我可以想到)是處理舊的tapiclass,然後創建一個新的tapiclass,但是我有點擔心要麼丟失事件,要在多個用戶登錄/出(創建類需要幾秒鐘,我的程序)
所以,我真的想是選項
tapi.RegisterCallNotifications(ad, true, true, TAPI3Lib.TapiConstants.TAPIMEDIATYPE_AUDIO, 2);
爲新的可用線。
回答問題的背景:) -I是C#的新手,完全是COM-interop的新手,我知道C++的原理,但是從未寫過任何東西。
任何幫助將大大appriciated。 (也有關於互操作等的意見)