播放聲音C函數 PlaySound_WinCC_Prof WinCC Runtime Professional
1.創建如下圖的C腳本:
//從此處開始插入標頭
#include "GlobalDefinitions.h"
void Play_Sound()
{
//從此處開始插入標頭
#pragma code("Winmm.dll")
VOID WINAPI PlaySoundA(char *pszSound, char* hmode, DWORD dwflag);
#pragma code()
PlaySoundA("C:\\mysound.wav", NULL, 1);
}
2.如果替換掉“PlaySoundA” ("C:\\mysound.wav")路徑中的聲音文件就能實現播放其他的聲音文件。
3.腳本鏈接到相關系統事件,例如:單擊按鈕或屏幕更改。
4.當事件發生時聲音就會被播放。
實現此功能的要求是必須安裝聲卡。
PlaySoundA函數的說明:
1. 參數char* pszSound:
指定聲音文件 (*.wav 文件) 的全路徑。
2. 參數char* hmode:
總為 0。
3. 參數DWORD dwflag:
SND_SYNC = 0x0000:聲音文件播放一次,該腳本一直等到播放結束。
SND_ASYNC = 0x0001:聲音文件播放一次,同時并行處理該腳本。
SND_NODEFAULT = 0x0002:如果未找到該聲音文件,則不播放默認值,而是什么也不播放。
SND_LOOP = 0x0008:重復播放該聲音文件直到下個 PlaySoundA 調用 (只能通過 0x0001) => 總是指定 0x0009。
這些參數也可通過逐位邏輯‘或’進行組合 (如:SND_ASYNC | SND_LOOP)
//從此處開始插入標頭
#include "GlobalDefinitions.h"
void Play_Sound()
{
//從此處開始插入代碼
#pragma code ("Winmm.dll")
VOID WINAPI PlaySoundA(char *pszSound, char* hmode, DWORD dwflag );
#pragma code ( )
BOOL m1=GetTagWord("Tag_2");
if (m1)
{
PlaySoundA("D:\\f2818.wav",NULL,0x0001|0x0008);
}
if (m1==0)
{
PlaySoundA(NULL,NULL,0x0000 );
}
【必讀】版權免責聲明
1、本主題所有言論和內容純屬會員個人意見,與本論壇立場無關。2、本站對所發內容真實性、客觀性、可用性不做任何保證也不負任何責任,網友之間僅出于學習目的進行交流。3、對提供的數字內容不擁有任何權利,其版權歸原著者擁有。請勿將該數字內容進行商業交易、轉載等行為,該內容只為學習所提供,使用后發生的一切問題與本站無關。 4、本網站不保證本站提供的下載資源的準確性、安全性和完整性;同時本網站也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的損失或傷害。 5、本網站所有軟件和資料均為網友推薦收集整理而來,僅供學習用途使用,請務必下載后兩小時內刪除,禁止商用。6、如有侵犯你版權的,請及時聯系我們(電子郵箱1370723259@qq.com)指出,本站將立即改正。
|