lineDeallocateCall 函式 (tapi.h)

lineDeallocateCall函式會解除配置指定的呼叫控制碼。

語法

LONG lineDeallocateCall(
  HCALL hCall
);

參數

hCall

要解除配置的呼叫控制碼。 具有呼叫監視許可權的應用程式一律可以解除配置該呼叫的控制碼。 具有呼叫擁有者許可權的應用程式可以解除配置其控制碼,除非它是呼叫的唯一擁有者,而且呼叫不是 處於閒置 狀態。 呼叫控制碼在解除配置之後不再有效。

傳回值

如果要求成功或發生錯誤,則傳回零。 可能的傳回值包括:

LINEERR_INVALCALLHANDLE、LINEERR_OPERATIONFAILED、LINEERR_INVALCALLSTATE、LINEERR_RESOURCEUNAVAIL、LINEERR_NOMEM LINEERR_UNINITIALIZED。

備註

解除配置不會影響實體呼叫的撥號狀態。 不過,它會釋放與呼叫相關的內部資源。

在 API 版本中,如果應用程式是呼叫的唯一擁有者,且呼叫不是 處於閑 置狀態,則會傳回LINEERR_INVALCALLSTATE。 在此情況下,應用程式可以先使用 lineDrop 卸載呼叫,並在之後解除配置其呼叫控制碼。 具有呼叫之監視許可權的應用程式一律可以解除配置呼叫的控制碼。

在 API 2.0 版或更新版本中,即使呼叫不是處於 閒置 狀態,呼叫的唯一擁有者仍可解除配置其控制碼。 這可讓您在用戶端/伺服器環境中對呼叫進行分散式控制。

注意 在沒有擁有者的情況下離開通話可能會導致使用者無法在開啟監視應用程式時結束通話,以防止 TAPI 呼叫 TSPI_lineCloseCall。 只有在應用程式可以判斷呼叫可由使用者外部控制時,才使用此功能。 如需詳細資訊,請參閱LINEADDRCAPFLAGS_CLOSEDROP。
 
在 2.0 之前的 API 版本中,當 lineDeallocateCall 函式解除配置呼叫控制碼時,也會暫停進一步處理呼叫的任何未完成LINE_REPLY訊息。 如果應用程式也使用 lineDeallocateCall 函式來解除配置控制碼,則應用程式必須設計為不無限期地等候每個對應呼叫非同步函式的 LINE_REPLY訊息。

在 API 2.0 版或更新版本中, lineDeallocateCall 不會暫停未完成的LINE_REPLY訊息;每個傳回 dwRequestID 給應用程式的非同步函式,一律會導致傳遞相關聯的LINE_REPLY訊息,除非應用程式呼叫 lineShutdown

需求

   
目標平台 Windows
標頭 tapi.h
程式庫 Tapi32.lib
Dll Tapi32.dll

另請參閱

基本電話語音服務參考

LINE_REPLY

TAPI 2.2 參考概觀

終止會話概觀

lineDrop

lineShutdown