2009-06-18 82 views
0

我已經繼承了一些實現並與MSTAPI接口對話的代碼。我很好奇請求ID的初始化位置(或者它們是)。通過請求ID,我的意思是,例如,參數idRequestLINE_REPLY MessageMSTAPI請求ID在哪裏初始化?

我很好奇的原因是,當我有TSP和客戶端顯示請求ID,我看到下面作爲一個典型的序列,雙方同意在數字:

66304 
66303 
66286 
66269 
66252 
66235 
... 

的第一個值轉換爲0x00010300(這對我來說並不意味着什麼,但是是一個整數),然後請求ID 從那裏減少。 (除非請求ID在內部被視爲一個有符號的2字節整數,我想這是可能的。)

我懷疑一方或另一方應該是初始化的東西,而不是或是將其初始化爲不適合的內容。

有誰知道請求ID應該如何工作?它是由MSTAPI內部生成並提供給TSP和客戶端的不透明數字嗎?任何人都可以指出解釋這個的參考嗎?

謝謝。

回答

1

請求ID由TAPI在內部爲所有異步操作生成。當您的程序像lineMakeCall調用異步TAPI函數時,TAPI會爲此操作返回一個請求ID。在TSPI_lineMakeCall中向TSP提供相同的請求ID。當TSP完成MakeCall操作時,TSP用此請求ID調用CompletionProc回調,告訴TAPI此操作已完成。之後,TAPI將LINE_REPLY消息發送到具有相同請求ID的應用程序,以便您知道您的lineMakeCall操作已完成。