我试图嵌入,然后在C播放.wav文件++ / CLI应用程序,但所有的例子我见过它使用PlaySound在VB。我看不出如何让弗罗马Stream^到PlaySound需要LPCSTR:

System::IO::Stream^ s = Assembly::GetExecutingAssembly()->GetManifestResourceStream ("Ping.wav");

LPCSTR buf = s->????;

PlaySound(buf, NULL, SND_ASYNC|SND_MEMORY|SND_NOWAIT);

我想我需要某种可怕.NET存储器转换的魔法。

有帮助吗?

解决方案

使用系统::媒体::声音播放类代替。它有一个Stream属性,分配您“S”变量给它,然后调用播放()方法

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top