通过cmd窗口交互和键盘按键切换歌曲
#include<windows.h>
#include<mmsystem.h>
#include<stdio.h>
#pragma comment(lib,"Winmm.lib")
int main(void)
{ //open指令打开需要播放的音乐,alias后面制定了前面文件路径的别名,以后想要操作这个文件直接使用这个别名就可以了.
//如果音乐文件和我们的debug文件夹在同一目录下,就可以像我这样不用写路径,直接音乐名。
//如果音乐文件不是上面的情况就得写清楚路径。
//例: D盘下的demo目录有一个叫1.MP3的文件
//mciSendString("open D:\\demo\\1.mp3 alias bkmusic", NULL, 0, NULL);
// mciSendString("setaudio bkmusic volume to 5", NULL, 0, NULL); 调节音量到5
//mciSendString("stop bkmusic", NULL, 0, NULL); //停止播放音乐
//mciSendString("close bkmusic", NULL, 0, NULL); //关闭音乐
//wsprintf(strCommand, "setaudio bkmusic volume to %d", volue);// 构造命令字串 strFileName 是音频文件名,包含路径的,一般是通过GetShortPathName获取到的
//mciSendString(strCommand, NULL, 0, 0); // 发送命令
long volue = 100; //播放器音量
TCHAR strCommand[256];
int i=1,z=1,x,e=1;
int c,b;
do{
system("cls");
printf("****************菜单**********\n");
printf("1丑八怪\n2天后\n3怪咖\n4别\n5天外来物\n6哑巴\n7其实\n8刚刚好\n9方圆几里\nESC退出\n0音量调节\n");
printf("选择:");
fflush(stdin);//清空缓冲区
c=getch();
//printf("错误%d %c",c,c);
if(c==27)z=0;
if(c>=49&&c<=57)
{ switch(c){
case 49: i=1;break;//49对应键盘横排数字1的按键
case 50: i=2;break;
case 51: i=3;break;
case 52: i=4;break;
case 53: i=5;break;
case 54: i=6;break;
case 55: i=7;break;
case 56: i=8;break;
case 57: i=9;break;//9
}
mciSendString("close bkmusic", NULL, 0, NULL); //关闭音乐
wsprintf(strCommand,"open %d.mp3 alias bkmusic", i);// 构造命令字串
mciSendString(strCommand, NULL, 0, 0); // 发送命令
mciSendString("play bkmusic repeat", NULL, 0, NULL);
wsprintf(strCommand, "setaudio bkmusic volume to %d", volue);// 构造命令字串
mciSendString(strCommand, NULL, 0, 0); // 发送命令
}
if(c==32)
{
if(e==1){e=0;mciSendString("pause bkmusic", NULL, 0, NULL);}//stop
else if(e==0){e=1;mciSendString("resume bkmusic", NULL, 0, NULL);}
}
if(c==48)
{x=1;
do{ system("cls");
printf("音量调节(再次按0键退出):\n当前音量%d",volue);
fflush(stdin);//清空缓冲区
b=getch();
switch(b)
{case 45:volue--;break;
case 61:volue++;break;
case 48:x=0;break;
}
wsprintf(strCommand, "setaudio bkmusic volume to %d", volue);// 构造命令字串s
mciSendString(strCommand, NULL, 0, 0); // 发送命令
}while(x==1);
}
}while(z==1);
//mciSendString("stop bkmusic", NULL, 0, NULL); //停止播放音乐
//循环播放音乐
// system("pause");
return 0;
}