我在写一个使用Delphi prism的程序。目标是能够在同一个项目的windows和linux(mono)上运行。所以,在这一点上,我需要有一种播放Windows和Linux(单声道)声音文件的方式,而无需导入winmm.dll或microsoft.visualbasic.dll。播放声音文件无需导入winmm.dll或microsoft.visualbasic.dll
因为我需要这个在单声道也工作,我不想使用visualbasic.dll。过去,它给了我各种各样的问题。
有没有方法播放声音文件而不使用这些dll文件?
UPDATE
无论声音播放如何实例化和使用,它始终工作在Windows OS罚款,而在Linux下单有时戏剧和其他时候它只是将根本无法播放。
第一版:
var thesound := new SoundPlayer;
if Environment.OSVersion.Platform = Environment.OSVersion.Platform.Unix then
thesound.SoundLocation := '/sounds/Alarms.wav'
else
thesound.SoundLocation:='\sounds\Alarms.wav';
thesound.Load;
thesound.PlayLooping;
版本二
var sp := new SoundPlayer(new FileStream("/sounds/Alarms.wav", FileMode.Open, FileAccess.Read, FileShare.Read));
sp.PlayLooping;
他们有关于播放声音文件的在线信息很多都与微软的dll文件有关。 – ThN