如何在程序启动时开启背景音乐?

问题描述

如题,不知道哪个控件能实现。或者那位能给出相应的代码。

解决方案

解决方案二:
openFileDialog1.Filter="mp3文件(*.mp3;)|*.mp3|所有文件(*.*)|*.*";if(this.openFileDialog1.ShowDialog()==DialogResult.OK){try{textBox5.Text=System.IO.Path.GetFileName(this.openFileDialog1.FileName);//*********************************************//播放发音stringname=this.openFileDialog1.FileName;///产生短路径名StringBuildershortpath=newStringBuilder(80);intresult=GetShortPathName(name,shortpath,shortpath.Capacity);name=shortpath.ToString();mciSendString(@"closeall",null,0,0);mciSendString(@"open"+name+"aliassong",null,0,0);//打开mciSendString("playsong",null,0,0);//播放//**********************************************}catch(Exception){}}//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////<summary>///使用API///</summary>publicstaticuintSND_ASYNC=0x0001;//playasynchronouslypublicstaticuintSND_FILENAME=0x00020000;//按文件名播放[DllImport("winmm.dll")]publicstaticexternintmciSendString(stringm_strCmd,stringm_strReceive,intm_v1,intm_v2);[DllImport("Kernel32",CharSet=CharSet.Auto)]staticexternInt32GetShortPathName(Stringpath,StringBuildershortPath,Int32shortPathLength);///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////自己改改吧
解决方案三:
右键toolbox-->选择item--->COM组件---->钩选WindowsMediaPlayer--->OK
解决方案四:
这个控件用法很简单,应该没什么问题吧
解决方案五:
最好将该音乐文件放到运行目录下的一个地方,publicstaticuintSND_ASYNC=0x0001;//playasynchronouslypublicstaticuintSND_FILENAME=0x00020000;//nameisfilename[DllImport("winmm.dll")]publicstaticexternintmciSendString(stringm_strCmd,stringm_strReceive,intm_v1,intm_v2);[DllImport("Kernel32",CharSet=CharSet.Auto)]staticexternInt32GetShortPathName(Stringpath,StringBuildershortPath,Int32shortPathLength);这些代码放在最前面,表示引入两个winmm库然后再窗体启动的load事件中添加如下代码即可:stringname=@"E:Music故乡的原风景.mp3";System.Text.StringBuildershortpath=newSystem.Text.StringBuilder(80);intresult=GetShortPathName(name,shortpath,shortpath.Capacity);name=shortpath.ToString();mciSendString(@"closeall",null,0,0);mciSendString(@"open"+name+"aliassong",null,0,0);//打开mciSendString("playsong",null,0,0);//播放
解决方案六:
用winmm方法可以不用添加任何控件,只需要引入两个dll即可,就是在程序代码最前面添加引用,之后再load事件中播放
解决方案七:
学习拉
解决方案八:
学习
解决方案九:
在Form_Load事件中添加如下代码:stringMyFileName="C:\音乐名.mp3";QuartzTypeLib.FilgraphManagergrahManager=newQuartzTypeLib.FilgraphManager();QuartzTypeLib.IMediaControlcontrol=(QuartzTypeLib.IMediaControl)grahManager;control.RenderFile(MyFileName);control.Run();

在项目->添加引用->浏览->[windows目录]->system32->quartz.dll
解决方案十:
8楼的方法是引用系统的另外一个dll,能帮忙解释哈吗?这个是什么原理?
解决方案十一:
我只知道用2楼的方法,呵
解决方案十二:
引用9楼Tll_W的回复:

8楼的方法是引用系统的另外一个dll,能帮忙解释哈吗?这个是什么原理?

呵呵,这是系统自带的,我最近刚好要写个多媒体播放器,用到它。其实所有的应用程序都是用的windows函数。只不过有些常用的vc#将它封装拉。
解决方案十三:
8楼的,我试了下,好像只能播放几秒钟,就停了,我的是VISTA系统,播放一首4M的歌
解决方案十四:
这个就不清楚了,我的系统不是VISTA,我也不能帮你测试,你看用另一个线程控制背景音乐能行吗?namespaceTest{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}//privatedelegatevoidplayer();privatevoidplaermusic(){stringMyFileName="E:\音乐\其他\forever-friends.mp3";QuartzTypeLib.FilgraphManagergrahManager=newQuartzTypeLib.FilgraphManager();QuartzTypeLib.IMediaControlcontrol=(QuartzTypeLib.IMediaControl)grahManager;control.RenderFile(MyFileName);control.Run();}privatevoidForm1_Load(objectsender,EventArgse){newSystem.Threading.Thread(newSystem.Threading.ThreadStart(plaermusic)).Start();}}}

解决方案十五:
引用13楼baihe_591的回复:

这个就不清楚了,我的系统不是VISTA,我也不能帮你测试,你看用另一个线程控制背景音乐能行吗?C#codenamespaceTest{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}//privatedelegatevoidplayer();privatevoidplaermusic(){stringMyFileName="E:…

QuartzTypeLib这个的引用在哪里可以找到啊?
解决方案:
mark
解决方案:
请参考:

时间: 2024-12-03 07:21:26

如何在程序启动时开启背景音乐?的相关文章

图标不重合-win7任务栏的图标创建后,程序启动时的图标没有与创建好的重合

问题描述 win7任务栏的图标创建后,程序启动时的图标没有与创建好的重合 通过::ShellExecute(NULL, L"TaskBarPin", strLnkFileName, NULL, NULL, SW_SHOW)把创建的程序快捷方式锁定到任务栏后,启动程序时图标没有与创建好的图标重合,出现同一个程序两个相同图标同时存在于任务栏的情况. 把图标锁定到任务栏的方法除了使用TaskBarPin以外还有谁知道有其他方法吗? 解决方案 delphi编的程序好像一定不能重合...

debug-关于c#程序启动时闪一下的问题

问题描述 关于c#程序启动时闪一下的问题 我做了一个winform程序 从别的程序调用这个winform 当右键项目属性时添加参数debug时 程序能启动 当不添加任何参数时 启动项目时winform只是闪了一下 请大神给个解决思路 解决方案 在program.cs中看下main函数,是怎么读取参数的.参数是干嘛的. 解决方案二: 因为没有参数,也许就进不了main函数了

Web程序启动时弹出如下图错误,怎么办?仅ie弹出,其他的浏览器都正常

问题描述 Web程序启动时弹出如下图错误,怎么办?仅ie弹出,其他的浏览器都正常 只有IE浏览器打开时弹出这个,其他浏览器都正常. 解决方案 可能是js写的不规范吧. 解决方案二: js操作IE浏览器弹出浏览文件夹js操作IE浏览器弹出浏览文件夹

对话框的顺序-FC对话框应用程序中如何修改程序启动时默认的对话

问题描述 FC对话框应用程序中如何修改程序启动时默认的对话 我在程序中新建了多个对话框,如dialog1,dialog2,不想让默认的那个对话框作为启动时显示的,而想让dialog2作为第一个显示的对话框,有办法吗? 解决方案 App类的InitInstance函数中修改一下,添加DoModal()你的对话框,删除m_pMainWnd = &XXXXDlg;语句(如果有的话) 解决方案二: 求指导!

Android程序启动时出现黑屏问题的解决方法_Android

本文实例讲述了Android程序启动时出现黑屏问题的解决方法.分享给大家供大家参考,具体如下: 关于黑屏: 默认的情况下,程序启动时,会有一个黑屏的时期,原因是,首个activity会加载一些数据,比如初始化列表数据.向服务器发送请求获取数据等等. 去除方法: 1.在style里面添加一个style: <style name="ContentOverlay"parent="@android:style/Theme.Light"> <itemname

rules-web程序启动时弹出jQuery.validationEngine错误,如何解决啊?

问题描述 web程序启动时弹出jQuery.validationEngine错误,如何解决啊? 启动web程序,有时会弹出jQuery.validationEngine rules are not loaded plz add localization files to the page提示错误.使用的是jquery.validationengine.js文件.请问各位大神应该如何解决啊?感激不尽! 解决方案 来个人帮忙解答一下子吧!!! 解决方案二: 没有加载规则文件.你加一个规则文件即可.比

程序启动时,屏幕加载时背景设置

问题描述 各位老师,请问:VB.net程序启动时,屏幕加载时背景怎样设置为任意图片? 解决方案 解决方案二:Me.BackGroundImage=System.Drawing.Image.FromFile("路径") 解决方案三:参考:SetMe.Picture=LoadPicture("D:testtest.jpg") 或者解决方案四:引用1楼wangnaisheng的回复: Me.BackGroundImage=System.Drawing.Image.From

Android程序启动时出现黑屏问题的解决方法

本文实例讲述了Android程序启动时出现黑屏问题的解决方法.分享给大家供大家参考,具体如下: 关于黑屏: 默认的情况下,程序启动时,会有一个黑屏的时期,原因是,首个activity会加载一些数据,比如初始化列表数据.向服务器发送请求获取数据等等. 去除方法: 1.在style里面添加一个style: <style name="ContentOverlay"parent="@android:style/Theme.Light"> <itemname

java程序启动时cpu和负载高探索

这两天协助运维定位1个监控程序CPU占用率达到150%的问题,过程曲折,结论简单,很有意思:) 首先我们来看一下cpu高时候截图: 可以看到红色框中的监控程序CPU占用率都很高,但其实这些监控程序的实现很简单:发送1个http请求,收到响应后简单判断一下响应码,然后打印监控结果,打印完成就退出了.每次监控都会重新由daemon程序拉起运行. 这么简单的业务占用这么高的cpu,怎么感觉都不太可能,于是拿到监控程序的源码开始定位. 第一个想到的是VisualVm.JConsole等工具,但由于程序很