当前位置: 首页 > news >正文

c语言调用mciSendString播放音乐

    如下所示,这是一个使用c语言调用系统方法mciSendString(),让系统播放音乐的示例:

baihuaxiang

   代码:

#include <graphics.h>
#include <Windows.h>
#include <mmsystem.h>#pragma comment(lib,"WINMM.LIB")int main(void)
{initgraph(720, 450);loadimage(0, "weixinyu.png");mciSendString(TEXT("open music.mp3 alias song"), NULL, 0, NULL);mciSendString(TEXT("play song repeat"), NULL, 0, NULL);system("pause");closegraph();return 0;
}

    这段代码还调用了easyx画图库,安装非常简单,地址:EasyX Graphics Library for C++ 

    在安装的时候,会自动识别系统visual studio位置,但是需要手动点击安装。

    这里loadimage(),图片格式最好是jpg,或者png格式,不要通过改后缀的方式来让它变为一张图片。同理,这里的音乐文件需要mp3格式,或者其他的mpeg,avi,wav格式,同样的,我们不能通过更改后缀的方式让他变为一个mp3格式文件,否则有可能播放不了。

    图片和音乐文件放在项目路径下即可。

    另外,分享一个获取音乐文件的办法,这里需要大家熟悉一点web开发的技巧,一般的音乐,比如qq音乐,要下载,可能需要登录,会员什么的,而且大部分歌曲都无法通过界面下载下来,只能通过一些手段,当然不是非法的。

    我们打开qq音乐界面:https://y.qq.com/n/ryqq/player      

    直接下载无法下载,但是我们可以通过查看这些歌曲的资源来下载:

    1)打开浏览器开发者工具,右键检查,或者快捷键按F12;

    2)切换到network标签,通过筛选多媒体media文件过滤其他文件,只剩下歌曲资源;

    3)点击播放的音乐,每一首都会在播放之后,通过后台加载歌曲资源;

    4)右键加载出来的歌曲资源选择在新标签中打开,之后就可以点击新标签页面的三个点中的下载选项下载。

打开之后是这样的:

   这个资源在浏览器里面可以播放,直接下载就可以。

   动态截图:

相关文章:

c语言调用mciSendString播放音乐

如下所示&#xff0c;这是一个使用c语言调用系统方法mciSendString()&#xff0c;让系统播放音乐的示例&#xff1a; baihuaxiang 代码&#xff1a; #include <graphics.h> #include <Windows.h> #include <mmsystem.h>#pragma comment(lib,"WINMM.LIB…...

Qt:qRegisterMetaType为Qt信号和槽添加自定义参数类型

背景 qt信号和槽之间的参数传递默认只能传递qt内部已有的类型&#xff0c;例如QString等&#xff0c;若我们自定义类型作为参数时&#xff0c;虽然编译不会报错&#xff0c;但运行时会提示connect无效&#xff0c;无法识别自定义的类。 此时需要我们将自定义类进行注册&#…...

ffmpeg rtp发送video和audio并播放

发送h264 video ffmpeg -re -stream_loop -1 -i h264.mp4 -vcodec h264 -f rtp rtp://127.0.0.1:5006SDP: v0 o- 0 0 IN IP4 127.0.0.1 sNo Name cIN IP4 127.0.0.1 t0 0 atool:libavformat LIBAVFORMAT_VERSION mvideo 5006 RTP/AVP 96 artpmap:96 H264/90000 afmtp:96 packe…...

CSS打字回删效果动画源码

<!DOCTYPE html> <html lang="en"> <head><meta charset...

Vue全局后置守卫

全局后置守卫 一、在 router 目录下的 index.js 文件中配置全局后置守卫。 import Vue from vue import VueRouter from vue-router Vue.use(VueRouter)import Home from ../views/Home.vue import About from ../views/About.vue import Login from ../views/Login.vueconst…...

【Go语言】基于Socket编程的P2P通信程序示例

Go语言的Socket编程实现为开发者提供了一种高效且强大的方式来实现网络通信。通过Go语言的并发模型和内置的网络库&#xff0c;如net包&#xff0c;开发者可以轻松地创建基于套接字的通信应用。Go语言的goroutine和channel机制使并发处理变得简单&#xff0c;能够轻松处理多个连…...

16、Flink 的table api与sql之连接外部系统: 读写外部系统的连接器和格式以及Elasticsearch示例(2)

Flink 系列文章 1、Flink 部署、概念介绍、source、transformation、sink使用示例、四大基石介绍和示例等系列综合文章链接 13、Flink 的table api与sql的基本概念、通用api介绍及入门示例 14、Flink 的table api与sql之数据类型: 内置数据类型以及它们的属性 15、Flink 的ta…...

Java代码优化案例2:使用HashMap代替List进行数据查找

在开发过程中&#xff0c;我们经常需要在一个集合中查找某个元素。一种常见的做法是使用List来存储数据&#xff0c;然后通过循环遍历List来查找目标元素。然而&#xff0c;当数据量较大时&#xff0c;这种做法效率较低。我们可以通过使用HashMap来优这个过程。 1. 原始代码实…...

每天一道leetcode:542. 01 矩阵(图论中等广度优先遍历)

今日份题目&#xff1a; 给定一个由 0 和 1 组成的矩阵 mat &#xff0c;请输出一个大小相同的矩阵&#xff0c;其中每一个格子是 mat 中对应位置元素到最近的 0 的距离。 两个相邻元素间的距离为 1 。 示例1 输入&#xff1a;mat [[0,0,0],[0,1,0],[0,0,0]] 输出&#xff…...

SQL SERVER 日期函数相关内容

最近跟日期相关的内容杠上了&#xff0c;为方便自己后期查阅&#xff0c;特地做笔记。 DECLARE chanenddate datetime----截止日期转成当天的年月日尾巴 DECLARE chanbengindate datetime----开始日期转成当天的年月日0000000 截取日期的 年月日&#xff0c;字符串类型 co…...

多维时序 | MATLAB实现SCNGO-BiGRU-Attention多变量时间序列预测

多维时序 | MATLAB实现SCNGO-BiGRU-Attention多变量时间序列预测 目录 多维时序 | MATLAB实现SCNGO-BiGRU-Attention多变量时间序列预测预测效果基本介绍模型描述程序设计参考资料 预测效果 基本介绍 多维时序 | MATLAB实现SCNGO-BiGRU-Attention多变量时间序列预测。 模型描述…...

从零开始学习 Java:简单易懂的入门指南之JDK8时间相关类(十八)

JDK8时间相关类 JDK8时间相关类1.1 ZoneId 时区1.2 Instant 时间戳1.3 ZoneDateTime 带时区的时间1.4DateTimeFormatter 用于时间的格式化和解析1.5LocalDate 年、月、日1.6 LocalTime 时、分、秒1.7 LocalDateTime 年、月、日、时、分、秒1.8 Duration 时间间隔&#xff08;秒…...

Spring Boot实践八--用户管理系统(下)

step3&#xff1a;多线程task 首先&#xff0c;实现两个UserService和AsyncUserService两个服务接口&#xff1a; 接口&#xff1a; package com.example.demospringboot.service;public interface UserService {void checkUserStatus(); }package com.example.demospringbo…...

C语言入门 Day_10 判断的进阶

目录 前言 1.多重判断 2.代码块 3.条件运算符 3.易错点 4.思维导图 前言 if和else能够处理两种不同的情况&#xff0c;如果&#xff08;if&#xff09;满足条件&#xff0c;我们就执行这几行代码&#xff1b;否则&#xff08;else&#xff09;的话&#xff0c;我们就执行…...

机器学习基础13-基于集成算法优化模型(基于印第安糖尿病 Pima Indians数据集)

有时提升一个模型的准确度很困难。如果你曾纠结于类似的问题&#xff0c;那 我相信你会同意我的看法。你会尝试所有曾学习过的策略和算法&#xff0c;但模型正确率并没有改善。这时你会觉得无助和困顿&#xff0c;这也是 90%的数据科学家开始放弃的时候。不过&#xff0c;这才是…...

Rancher部署k8s集群

Rancher部署 Rancher是一个开源的企业级容器管理平台。通过Rancher&#xff0c;企业再也不必自己使用一系列的开源软件去从头搭建容器服务平台。Rancher提供了在生产环境中使用的管理Docker和Kubernetes的全栈化容器部署与管理平台。 首先所有节点部署docker 安装docker 安…...

前端油猴脚本开发小技巧笔记

调试模式下&#xff0c;单击选中某dom代码&#xff0c;控制台里可以用$0访问到该dom对象。 $0.__vue___ 可以访问到该dom对应的vue对象。 jquery 对象 a,a[0]是对应的原生dom对象&#xff0c;$(原生对象) 得到对应的 jquery 对象。 jquery 选择器&#xff0c;加空格是匹配下…...

软考高级系统架构设计师系列之:搭建论文写作的万能模版

软考高级系统架构设计师系列之:搭建论文写作的万能模版 一、选择合适的模版二、论文摘要模版1.论文摘要模版一2.论文摘要模版二3.论文摘要模版三4.论文摘要模版四三、项目背景四、正文写作五、论文结尾六、论文万能模版一、选择合适的模版 选择中、大型商业项目,一般金额在2…...

多线程常见面试题

常见的锁策略 这里讨论的锁策略,不仅仅局限于 Java 乐观锁 vs 悲观锁 锁冲突: 两个线程尝试获取一把锁&#xff0c;一个线程能获取成功,另一个线程阻塞等待。 乐观锁: 预该场景中,不太会出现锁冲突的情况。后续做的工作会更少。 悲观锁: 预测该场景,非常容易出现锁冲突。后…...

Java接收json参数

JSON 并不是唯一能够实现在互联网中传输数据的方式&#xff0c;除此之外还有一种 XML 格式。JSON 和 XML 能够执行许多相同的任务&#xff0c;那么我们为什么要使用 JSON&#xff0c;而不是 XML 呢&#xff1f; 之所以使用 JSON&#xff0c;最主要的原因是 JavaScript。众所周知…...

3分钟快速上手ComfyUI:零基础掌握节点式AI绘图终极指南

3分钟快速上手ComfyUI&#xff1a;零基础掌握节点式AI绘图终极指南 【免费下载链接】ComfyUI 最强大且模块化的具有图形/节点界面的稳定扩散GUI。 项目地址: https://gitcode.com/GitHub_Trending/co/ComfyUI 你是否曾幻想过&#xff0c;如果AI绘图能像搭积木一样直观灵…...

别再只抄代码了!手把手教你调试YOLOv5模型输出,彻底搞懂每个数字的含义

从黑盒到白盒&#xff1a;YOLOv5模型输出调试实战指南 在计算机视觉领域&#xff0c;YOLOv5无疑是最受欢迎的实时目标检测框架之一。但许多开发者在使用过程中&#xff0c;往往只停留在"复制粘贴后处理代码"的阶段&#xff0c;对模型输出的具体含义一知半解。当需要将…...

避开这些坑!微软云语音合成API从申请到调用的保姆级指南

微软云语音合成API实战&#xff1a;从零到落地的全流程避坑指南 第一次听到微软云的语音合成效果时&#xff0c;我正为一个智能客服项目焦头烂额。当时试用了市面上几乎所有主流方案&#xff0c;要么机械感明显&#xff0c;要么情感表达生硬。直到偶然点开微软的演示页面&#…...

从异或到AES:Java类文件加密的3种实现方式对比(含性能测试)

从异或到AES&#xff1a;Java类文件加密的3种实现方式对比&#xff08;含性能测试&#xff09; 在Java开发领域&#xff0c;代码保护始终是开发者关注的焦点。当项目涉及商业机密或核心算法时&#xff0c;防止class文件被反编译成为刚需。本文将深入剖析三种不同安全级别的clas…...

3步搞定Linux启动盘:Rufus格式化ext文件系统全攻略

3步搞定Linux启动盘&#xff1a;Rufus格式化ext文件系统全攻略 【免费下载链接】rufus The Reliable USB Formatting Utility 项目地址: https://gitcode.com/GitHub_Trending/ru/rufus 还在为Windows下创建Linux启动盘而烦恼吗&#xff1f;每次制作Linux安装U盘都要在虚…...

s3fs-fuse架构深度解析:如何通过FUSE实现云端存储的本地化操作

s3fs-fuse架构深度解析&#xff1a;如何通过FUSE实现云端存储的本地化操作 【免费下载链接】s3fs-fuse FUSE-based file system backed by Amazon S3 项目地址: https://gitcode.com/gh_mirrors/s3/s3fs-fuse 在现代云计算环境中&#xff0c;对象存储服务如Amazon S3已经…...

Asian Beauty Z-Image Turbo 跨平台部署:基于.NET框架的Windows桌面应用集成

Asian Beauty Z-Image Turbo 跨平台部署&#xff1a;基于.NET框架的Windows桌面应用集成 最近在做一个Windows桌面项目&#xff0c;需要集成一个图片生成功能。团队里的小伙伴用Python在服务器上跑了一个Asian Beauty Z-Image Turbo模型&#xff0c;效果挺惊艳的&#xff0c;但…...

BilibiliDown开源工具全攻略:突破限制获取B站Hi-Res无损音频

BilibiliDown开源工具全攻略&#xff1a;突破限制获取B站Hi-Res无损音频 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader &#x1f633; 项目地址: https://gitcode.com/gh_mir…...

BilibiliDown终极指南:简单快速下载B站视频的完整教程

BilibiliDown终极指南&#xff1a;简单快速下载B站视频的完整教程 【免费下载链接】BilibiliDown (GUI-多平台支持) B站 哔哩哔哩 视频下载器。支持稍后再看、收藏夹、UP主视频批量下载|Bilibili Video Downloader &#x1f633; 项目地址: https://gitcode.com/gh_mirrors/b…...

Qwen3-ASR-0.6B与Anaconda环境配置:一站式语音识别开发平台

Qwen3-ASR-0.6B与Anaconda环境配置&#xff1a;一站式语音识别开发平台 1. 引言 语音识别技术正在改变我们与设备交互的方式&#xff0c;从智能助手到实时字幕&#xff0c;从会议记录到语音搜索&#xff0c;这项技术已经深入到我们生活的方方面面。今天我要跟大家分享的是如何…...