播放聲音C函數(shù) PlaySound_WinCC_Prof
WinCC Runtime Professional
1.創(chuàng)建如下圖的C腳本:
//從此處開始插入標(biāo)頭
#include "GlobalDefinitions.h"
void Play_Sound()
{
//從此處開始插入標(biāo)頭
#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")路徑中的聲音文件就能實(shí)現(xiàn)播放其他的聲音文件。
3.腳本鏈接到相關(guān)系統(tǒng)事件,例如:單擊按鈕或屏幕更改。
4.當(dāng)事件發(fā)生時(shí)聲音就會被播放。
實(shí)現(xiàn)此功能的要求是必須安裝聲卡。
PlaySoundA函數(shù)的說明:
1. 參數(shù)char* pszSound:
指定聲音文件 (*.wav 文件) 的全路徑。
2. 參數(shù)char* hmode:
總為 0。
3. 參數(shù)DWORD dwflag:
SND_SYNC = 0x0000:聲音文件播放一次,該腳本一直等到播放結(jié)束。
SND_ASYNC = 0x0001:聲音文件播放一次,同時(shí)并行處理該腳本。
SND_NODEFAULT = 0x0002:如果未找到該聲音文件,則不播放默認(rèn)值,而是什么也不播放。
SND_LOOP = 0x0008:重復(fù)播放該聲音文件直到下個(gè) PlaySoundA 調(diào)用 (只能通過 0x0001) => 總是指定 0x0009。
這些參數(shù)也可通過逐位邏輯‘或’進(jìn)行組合 (如:SND_ASYNC | SND_LOOP)
//從此處開始插入標(biāo)頭
#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 );
}
lubin5282 發(fā)表于 2020-10-29 08:01
不咋的,不咋的,不咋的,
| 歡迎光臨 ELEOK (http://m.afoofa.cn/) | Powered by Discuz! X5.0 |