Beep 函式 (utilapiset.h)

在喇叭上產生簡單的音調。 函式是同步的;它會執行可警示的等候,而且在音效完成之前,不會將控制權傳回給其呼叫端。

語法

BOOL Beep(
  [in] DWORD dwFreq,
  [in] DWORD dwDuration
);

參數

[in] dwFreq

音效的頻率,以長長為單位。 此參數的範圍必須介於 37 到 32,767 (0x25 到0x7FFF) 之间。

[in] dwDuration

音效的持續時間,以毫秒為單位。

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

備註

很長一段時間前,所有計算機計算機都會共用通用的8254可程式化間隔定時器晶片,以產生基本音效。 Beep 函式是特別撰寫,可在該硬體片段上發出嗶聲。

在這些較舊的系統上,靜音和音量控件不會影響 Beep;您仍然會聽到語調。 若要讓音調無聲,您已使用下列命令:

net stop beep

sc config beep start= disabled

之後,聲卡幾乎在所有計算機計算機上都成為標準設備。 當聲卡變得更常見時,製造商開始從計算機中移除舊的定時器晶元。 晶片也會從伺服器計算機的設計中排除。 結果是 ,Beep 無法在沒有晶元的所有計算機上運作。 這沒問題,因為大部分開發人員都已移至呼叫使用預設音效裝置而非8254晶片的 MessageBeep 函式。

最後,由於缺少與硬體通訊,因此 Windows Vista 和 Windows XP 64 位版本已卸除 Beep 的支援。

在 Windows 7 中, 已重寫 Beep ,以將嗶聲傳遞給會話的預設音效裝置。 這通常是聲音卡,除非在終端機服務下執行,在此情況下,會在用戶端上轉譯嗶聲。

範例

以下範例示範此函數的用法。

Beep( 750, 300 );

規格需求

需求
最低支援的用戶端 Windows XP [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2003 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 utilapiset.h (包含 Windows.h)
程式庫 Kernel32.lib
DLL Kernel32.dll

另請參閱

錯誤處理函式

MessageBeep

通知使用者