Play Wav resource
Posted
by Anthony Petruso
on November 14th, 1998
Parts of this code I ripped from VC++ 4.1 help, but it was outdated and didn't come close to working.
First of all you need to add the wave files to the .rc file manually like so:
<NameOfSound> WAVE <Location of WAVE.>Example being
Cool WAVE C:\projects\sounds\cool.wav
Then you need to add this function declarion to the class you plan on using..
BOOL PlayResource(LPSTR lpName)
{
BOOL bRtn;
LPSTR lpRes;
HANDLE hRes;
HRSRC hResInfo;
HINSTANCE Nl=AfxGetInstanceHandle();
/* Find the WAVE resource. */
hResInfo= FindResource(Nl,lpName,"WAVE");
if(hResInfo == NULL)
return FALSE;
/* Load the WAVE resource. */
hRes = LoadResource(Nl,hResInfo);
if (hRes == NULL)
return FALSE;
/* Lock the WAVE resource and play it. */
lpRes=(LPSTR)LockResource(hRes);
if(lpRes==NULL)
return FALSE;
bRtn = sndPlaySound(lpRes, SND_MEMORY | SND_SYNC);
if(bRtn == NULL)
return FALSE;
/* Free the WAVE resource and return success or failure. */
FreeResource(hRes);
return TRUE;
}
Then to play the sound you simply use:
PlayResource("<soundname>");
Example being
PlayResource("Cool");

Comments
There are no comments yet. Be the first to comment!