如何在windows系统中控制声音

How to control sound in windows system?

本文关键字:控制 声音 系统 windows      更新时间:2023-10-16

我的软件需要播放声音来提醒某人。

但在那一刻,电脑可能正在播放音乐或电影等等。我希望我的应用程序在播放通知时停止所有其他声音输出。

我如何用c++做到这一点?

你只提到语言c++,所以我假设你可以使用MFC(作为类库来简化你的工作)。

但是基本上你可以这样做:

#include <SDL/SDL_mixer.h>
int main(int argc, char **argv) {
    setbuf(stdout, 0);
    setbuf(stderr, 0);
    if (Mix_OpenAudio(44100, AUDIO_S16SYS, 2, 4096) != 0) {
        fprintf(stdout, "Unable to initialize audio: %sn", Mix_GetError());
        exit(1);
    }
    Mix_Music *music = Mix_LoadMUS("notification.mp3");
    if (!music) {
        printf("Mix_LoadNotification("notification.mp3"): %sn", Mix_GetError());
        exit(1);
    }
    if (Mix_PlayMusic(music, -1)==-1) {
        printf("Mix_PlayNotification: %sn", Mix_GetError());
        exit(1);
    }
    system("PAUSE");
    return 0;
}

在这里你有如何做一个更复杂的工作:http://www.codeproject.com/KB/cpp/media_player.aspx