VB 中如何把wav文件嵌入到OLE控件中去?

也就是把编好的程序拿到别人的电脑也能发出声音!!具体怎么做,如果只是在SourceDoc里面添加貌似不行!!还有个问题:如果用VB里面的资源管理器添加WAV格式的声音文件... 也就是把编好的程序拿到别人的电脑也能发出声音!!具体怎么做,如果只是在SourceDoc里面添加貌似不行!!

还有个问题:如果用VB里面的资源管理器添加WAV格式的声音文件(编号为101,“WAV”),如何用VB的WindowsMediaPlayer调用已经添加在资源管理器里面的101声音文件。

Private Sub Command2_Click()
Dim bArr() As Byte
bArr = LoadResData(101, "WAVE")
WMP1.Controls.URL = bArr
End Sub

这段代码运行的时候老是说“标志号为101的资源文件未找到”,但是我明明已经添加进去了,那这是怎么一回事呢?
二楼的兄弟,能否告知怎么删除已经播放的临时文件呢?
展开
 我来答
百度网友dc364b5
2010-12-03 · TA获得超过412个赞
知道答主
回答量:330
采纳率:0%
帮助的人:217万
展开全部
不得不说这个错误很多

Dim bArr() As Byte
bArr = LoadResData(101, "WAVE") 这一行,明明你的资源文件是"WAV"类型,但是你从"WAVE"类型中读取101资源,当然没有。
WMP1.Controls.URL = bArr 根据对象浏览器中的说明,URL属性是字符串类型,也就是说只能传入一个文件名,而不是二进制数组。还有……你的Controls是哪来的呢……?正确的写法是 " WMP1.URL = XXX"

现在你可以把bArr写入临时文件,然后WMP1.Controls.URL = "这个文件的路径",播放完毕将其删除。

Dim bArr() As Byte
bArr = LoadResData(101, "WAV")
Open App.Path & "tmp.wav" For Binary As #1
Put 1, , bArr
Close
WMP.URL = App.Path & "\tmp.wav"

至于你什么时候删除……请自便…………
百度网友0699a343d
2010-12-01 · TA获得超过293个赞
知道小有建树答主
回答量:225
采纳率:0%
帮助的人:100万
展开全部
基本写的差不多了,不过少了一步(文件需要释放到硬盘空间,随意什么地方,使用完删除)
我是这么做的,看代码(图片可以直接使用,GIF动画只能释放到硬盘后,用IE空间播放)
估计这些代码作为提示,对你应该有所帮助,祝你好运

Dim Pic() As Byte
Pic = LoadResData(101, "CUSTOM")
Open APP.Path & "\ALARM.GIF" For Binary As #1
Put #1, , Pic
Close #1
'Image2.Picture = LoadResData(102, "CUSTOM")
WebBrowser1.Navigate APP.Path & "\ALARM.GIF"
Form_alarm.Visible = False
Webrowser1.Visible = False
WebBrowser1.Navigate APP.Path + "\ALARM.GIF"
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式