lineGetID 函式會傳回與選取的行、位址或呼叫相關聯的指定裝置類別的裝置識別碼。
語法
LONG lineGetIDW(
HLINE hLine,
DWORD dwAddressID,
HCALL hCall,
DWORD dwSelect,
LPVARSTRING lpDeviceID,
LPCWSTR lpszDeviceClass
);
參數
hLine
開啟線路裝置的句柄。
dwAddressID
指定開啟行裝置上的位址。 地址標識碼與位址永久相關聯;標識碼在操作系統升級之間維持不變。
hCall
呼叫的句柄。
dwSelect
指定要求的裝置標識碼是否與行、位址或單一呼叫相關聯。 此參數只會使用其中一個 LINECALLSELECT_ 常數。
lpDeviceID
VARSTRING類型的記憶體位置指標,其中會傳回裝置識別碼。 成功完成要求后,此位置會填入裝置標識碼。 傳回資訊的格式取決於裝置類別 API 用於命名裝置的方法。 在呼叫 lineGetID之前,應用程式必須設定此結構的 dwTotalSize 成員,以指出 TAPI 可用來傳回資訊的記憶體數量。
lpszDeviceClass
Null 終止字串的指標,指定要求標識碼之裝置的裝置類別。 有效的裝置類別字串是 SYSTEM 中使用的字串。用來識別裝置類別的 INI 區段。
傳回值
如果要求成功或發生錯誤,則傳回零。 可能的傳回值為:
LINEERR_INVALLINEHANDLE、LINEERR_NOMEM、LINEERR_INVALADDRESSID、LINEERR_OPERATIONUNAVAIL、LINEERR_INVALCALLHANDLE、LINEERR_OPERATIONFAILED、LINEERR_INVALCALLSELECT、LINEERR_INVALDEVICECLASS、LINEERR_RESOURCEUNAVAIL、LINEERR_INVALPOINTER、LINEERR_STRUCTURETOOSMALL、LINEERR_NODEVICE、LINEERR_UNINITIALIZED。
言論
lineGetID 函式可用來擷取指定行句柄時的行裝置識別碼。 這在 lineOpen 開啟後,會使用 LINEMAPPER 作為裝置標識碼來開啟,以判斷開啟行的實際行裝置標識碼。 此函式也可以用來取得電話裝置或媒體裝置的裝置標識碼(適用於與通話、位址或線路相關聯的裝置類別,例如 COM、wave、MIDI、電話、線路或 NDIS)。 然後,此標識碼可以搭配適當的 API 使用(例如電話、MIDI、wave)來選取與指定呼叫相關聯的對應媒體裝置。
如需裝置類別名稱,請參閱 TAPI 裝置類別。
定義裝置特定媒體模式的廠商也需要定義對應的裝置特定(專屬)API 來管理媒體模式的裝置。 為了避免不同廠商獨立指派的裝置類別名稱發生衝突,廠商應該選取可唯一識別廠商的名稱,並在該名稱之後選取媒體類型。 例如:「intel/video」。
注意
tapi.h 標頭會根據 UNICODE 預處理器常數的定義,將 lineGetID 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
| 要求 | 價值 |
|---|---|
| 目標平臺 | 窗戶 |
| 標頭 | tapi.h |
| 連結庫 | Tapi32.lib |
| DLL | Tapi32.dll |