DRVM_MAPPER_CONSOLEVOICECOM_GET 函式
DRVM_MAPPER_CONSOLEVOICECOM_GET訊息會擷取慣用語音通訊裝置的裝置標識碼。
語法
DWORD xxxMessage(
UINT uDeviceID,
UINT uMsg,
DWORD_PTR dwParam1,
DWORD_PTR dwParam2
);
參數
uDeviceID
指定目標裝置的識別碼。 如需如何轉換此值以搭配適當函式使用的詳細資訊,請參閱下列一節。uMsg
呼叫者會在呼叫 xxxMessage 來處理此裝置訊息時,將此參數設定為 DRVM_MAPPER_CONSOLEVOICECOM_GET。dwParam1
裝置標識碼的指標。 此參數指向 DWORD 變數,函式會將目前慣用語音通訊裝置的裝置識別碼寫入其中。 函式會寫入值 (-1) 如果沒有符合慣用語音通訊裝置資格的裝置。dwParam2
狀態旗標的指標。 此參數指向函式寫入裝置狀態旗標的 DWORD 變數。 目前只定義一個旗標位:DRVM_MAPPER_PREFERRED_FLAGS_PREFERREDONLY。 如需詳細資訊,請參閱接下來的<備註>一節。
傳回值
如果已成功處理訊息, 則 xxxMessage 函式會傳回MMSYSERR_NOERROR。 否則,它會傳回適當的錯誤碼。
備註
此訊息僅適用於 waveInMessage 和 waveOutMessage 函式。 當呼叫端使用DRVM_MAPPER_CONSOLEVOICECOM_GET訊息呼叫這兩個函式時,呼叫端必須將裝置標識元指定為WAVE_MAPPER,然後將此值轉換為適當的句柄類型。 針對 waveInMessage、 waveOutMessage、 midiInMessage、 midiOutMessage 或 mixsage 函式,呼叫端必須將裝置標識符分別轉換成 HWAVEIN、HWAVEOUT、HMIDIIN、HMIDIOUT 或 HMIXER 類型的句柄。 請注意,如果呼叫端提供有效的句柄,而不是此參數的裝置標識碼,函式會失敗並傳回錯誤碼MMSYSERR_NOSUPPORT。
系統會攔截此訊息,並傳回適當的值,而不會將訊息傳送至設備驅動器。 如需系統攔截 xxxMessage 函式的一般資訊,請參閱 系統攔截的裝置訊息。
此訊息提供一種方式來判斷哪些裝置特別適用於語音通訊,與 DRVM_MAPPER_PREFERRED_GET 訊息相反,這會決定其他所有音訊功能偏好哪一個裝置。
例如,語音通訊慣用 的 waveOut 裝置可能是頭戴式裝置中的耳機,但所有其他音訊功能的慣用 waveOut 裝置可能是一組立體聲喇叭。
當 dwParam2 指向的 DWORD 位置中設定DRVM_MAPPER_PREFERRED_FLAGS_PREFERREDONLY旗標位時, waveIn 和 waveOut API 只會使用目前的慣用語音通訊裝置,而且如果慣用的裝置無法使用,則不會搜尋其他可用的裝置。 waveInMessage 或 waveOutMessage 呼叫所輸出的旗標適用於 waveIn 和 waveOut API 的慣用語音通訊裝置,不論呼叫 waveInMessage 還是 waveOutMessage。 如需詳細資訊,請參閱 慣用 Voice-Communications 裝置標識符。
規格需求
目標平台 |
桌面 |
版本 |
Microsoft Windows Me 和 Windows 2000 和更新版本的操作系統支援。 |
標頭 |
Mmddk.h (包含 Mmddk.h) |