Áú¹®:
¾î¶»°Ô ÇÏ¸é ¸®¼Ò½º·ÎºÎÅÍ »ç¿îµå¸¦ ¿¬ÁÖÇÒ ¼ö ÀÖ³ª¿ä?
´äº¯:
±× ÀÛ¾÷À» Çϱâ À§ÇØ ¿ì¸®´Â SND_RESOURCE Ç÷¡±×¸¦ »ç¿ëÇßÁö¸¸ ¼Ò¿ë¾ø¾ú½À´Ï´Ù. ÇÏÁö¸¸ ¸Þ¸ð¸®¿¡ ¸®¼Ò¸¦ ·Îµå´Â ÇÒ ¼ö ÀÖ¾ú°í ±×·±´ÙÀ½ SND_MEMORY Ç÷¡±×¸¦ »ç¿ëÇÒ ¼ö ÀÖ¾ú½À´Ï´Ù. ´ÙÀ½ÀÇ ´Ü°è¸¦ ÂüÁ¶ÇϽʽÿÀ:
1. .wav ÆÄÀÏÀ» ¾îÇø®ÄÉÀ̼ǿ¡ ·ÎµåÇÕ´Ï´Ù. Add resource ... ¸¦ ¼±ÅÃÇÔÀ¸·Î½á.rc ÆÄÀÏÀ» ºÒ·¯¿À°í RC_DATA type°ú ¼±ÅÃÇϰí .wav ÆÄÀÏÀ» ã½À´Ï´Ù. ¹«½¼ ¸®¼Ò½º Identifier #ÀÎ Áö È®ÀÎÇÕ´Ï´Ù. À̰ÍÀº ¿ì¸®°¡ »ç¿ëÇϰíÀÚ ÇÏ´Â ¸®¼Ò½º¸¦ ±¸º°Çϱâ À§ÇÔÀÌ´Ù. ÀϹÝÀûÀ¸·Î ¸®¼Ò½º À̸§µÚ¿¡ °ýÈ£¾È¿¡ ¹øÈ£°¡ ³ªÅ¸³³´Ï´Ù. ¿¹¸¦ µé¸é RCDATA_1 (1), 1 Àº ¸®¼Ò½ºÀÇ id ÀÔ´Ï´Ù.
2. ¿¬ÁÖÇϰíÀÚ ÇÏ´Â »ç¿îµåÀÇ ÇÔ¼ö·ÎºÎÅÍ ¾×¼¼½ºÇÒ ¼ö ÀÖ´Â Æ÷ÀÎÅÍ ¼±¾ð
LPCSTR lpWavInMemory;
3. »ç¿îµå¸¦ ¸Þ¸ð¸®¿¡ ·ÎµåÇϱâ À§ÇØ ´ÙÀ½ÀÇ ÇÔ¼ö È£Ãâ WinAPI ½ºÅ¸ÀÏÀ» »ç¿ëÇÕ´Ï´Ù.
lpWavInMemory = (LPCSTR)LockResource(
LoadResource(NULL,
FindResource(NULL, "#1", RT_RCDATA)));
LockResource ´Â LPVOID¸¦ ¹ÝȯÇϰí PlaySound´Â LPCSTR¸¦ ¿øÇϱ⠶§¹®¿¡ ¹ÝȯÇÒ Çü½ÄÀ» castÇØ¾ß¸¸ ÇÕ´Ï´Ù.
"#1"´Â Áö±Ý »ç¿ëÇÏ´Â ¸®¼Ò½º ¹øÈ£¸¦ ¸»ÇÕ´Ï´Ù. ¸¸¾à¿¡ ¸®¼Ò½º id 2¸¦ »ç¿ëÇϸé "#2"°¡ µË´Ï´Ù.
4. »ç¿îµå¸¦ ¿¬ÁÖÇϱâ À§Çؼ´Â ´ÙÀ½ÀÇ ¹®¹ýÀ» µû¸¨´Ï´Ù.
PlaySound(lp, NULL, SND_MEMORY);