有些時候,我們寫的程序需要播放音樂,一般大家會采用以下幾種方式:1.把音樂文件放置在某個特定的目錄,例如Sound,WAV,Music供程序讀取播放;2.使用資源來存放音樂。有些人估計也是使用這個方法的,不過大部分人可能是先從資源里把音樂文件釋放出來,然后再去讀取播放。我今天要介紹的方式是直接把音樂文件載入內存,然后從內存中進行讀取播放。好了給代碼吧:
var
hResInfo: THandle;
PtrSound: Pointer;
begin
hResInfo := FindResource(HInstance, 'sound', 'WAV');
hRes := LoadResource(HInstance, hResInfo);
if hRes > 32 then
begin
PtrSound := LockResource(hRes);
end;
SndPlaySound(PtrSound, Snd_Async or Snd_Memory);
end;
核心代碼已經給出,前提是我們必須制作資源文件,首先,我們先建立一個擴展名為rc的文件
其中sound為資源名稱,WAV資源類型,Girl.wav為音樂文件。
然后我們將音樂文件與RC文件放置於同一個目錄下,用brcc32進行編譯,目錄下會生成一個RES擴展名的文件,將該文件放到Delphi的項目文件夾下,在單元的implementation的{$R *.dfm}下加上{$R Girl.RES},最后編譯即可。
http://www.lsworks.net/article/1.html