全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
内嵌Activex的Activex插件开发 介绍:如今在许多流媒体视频网站(youku,tudou.)我们都会发现,观看视频之前都会有一段时间的广告,甚至在观看视频途中也会插入一些广告。实现这个效果的可以有多种技术。使用Javascript就可以实现,只需要在同一个位置分别创建两个Object,一个嵌入Flash插件,一个嵌入 WMP插件,然后切换显示这两个控件即可。使用COM/Activex技术也可以在同一个控件中实现这样的功能。 插件功能描述: 上周在某个公司碰到这么一个问题,它们需要创建一个插件,内部嵌入一个Flash插件和Windows Media Player插件。然后写一个Web测试页面测试此Activex页面。页面上有三个输入框和一个按钮(Play)。第一个输入框输入falsh URL(.swf),第二个输入框输入.swf播放时间长度(秒),即视频广告时间,第三个输入框输入.wmv URL。点击Play按钮后,页面按钮将三个参数传递给控件,控件优先播放.swf,要布满整个控件的大小。.swf播放指定的时间之后,然后播放.wmv,wmv也要布满整个控件。内嵌Activex的Activex插件源代码容器插件基础:为在一个窗口中嵌入一个Activex的话,就需要创建一个Container Window,然后创建被嵌入的Activex,然后通过上述的接口建立容器与Activex直接的联系。在ATL中使用CAxHostWindow封装了Activex容器,并进一步使用CAxWindow类来简化控件容器的操作。Activex嵌入主要代码 1.内嵌Activex的创建LRESULTCEmbed:OnCreate(UINT/*uMsg*/,WPARAM/*wParam*/,LPARAM/*lParam*/,BOOL&/*bHandled*/)RECTrc;GetWindowRect(&rc);rc.right-=rc.left;rc.bottom-=rc.top;rc.top=rc.left=0;/对于ATL3.0必须调用AtlAxWinInit,否则Create会调用失败AtlAxWinInit();/初始化容器窗口的注册类RECTrect=rc;/创建Shockwaveflash控件播放FlashTCHAR*controlName=LShockwaveFlash.ShockwaveFlash;m_FlashWin.Create(m_hWnd,rect,controlName,WS_CHILD|WS_VISIBLE,0,ID_FLASHCTRL);DWORDerror=:GetLastError();CComPtrambient;m_FlashWin.QueryHost(&ambient);CComPtrhostwin;m_FlashWin.QueryHost(&hostwin);hostwin-QueryControl(_uuidof(IDispatch),(void*)&m_ptrFlash.p);CComQIPtrptrFlash=m_ptrFlash;ptrFlash-put_BackgroundColor(RGB(0,0,0);/创建WindowsMediaPlay控件播放.wmv文件controlName=LWMPlayer.OCX;/CLSIDcld;/:CLSIDFromProgID(controlName,&cld);m_WmvWin.Create(m_hWnd,rect,controlName,WS_CHILD,0,ID_WMPCTRL);if(hostwin)hostwin.Release();m_WmvWin.QueryHost(&hostwin);hostwin-QueryControl(_uuidof(IDispatch),(void*)&m_ptrWmv.p);return0;2.设置内嵌Activex控件的大小位置 HRESULTCEmbed:SetObjectRects(LPCRECTprcPos,LPCRECTprcClip)IOleInPlaceObjectWindowlessImpl:SetObjectRects(prcPos,prcClip);intcx,cy;cx=prcPos-right-prcPos-left;cy=prcPos-bottom-prcPos-top;RECTrect;GetClientRect(&rect);rect.top=0;rect.left=0;if(m_FlashWin)m_FlashWin.MoveWindow(&rect);if(m_FlashWin)m_WmvWin.MoveWindow(&rect);returnS_OK;3.测试代码测试代码 内嵌Activex的Activex插件测试页FlashURL:Time:WMVURL:functionplay()varobj;varpalyobj=document.getElementById(Play);obj=document.getElementById(urlflash);palyobj.LoadFlashMovie(obj.value);obj=document.getElementById(wmvflash);palyobj.LoadWmvMovie(obj.value);obj
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 赤峰翁牛特旗公务员考试试题及答案
- 电缆辅材生产线项目建设工程方案
- 城市生态综合整治项目施工方案
- 北辰区公务员行测考试试题及答案
- 片区城中村改造项目施工方案
- 乡镇污水处理及配套管网工程初步设计
- 十五五规划纲要:碳市场扩容与减排激励机制创新
- 2026年建筑装饰公司装饰工艺研发立项评审管理制度
- 数据要素治理体系:“十五五”制度创新重点
- 信阳航空考试题库及答案
- 战略性矿产资源的探产供储销体系优化
- 《红日》读书分享模板
- 机械伤害事故应急演练方案(现场处置方案)
- 2024年国家电网网络安全专业考试题库(附答案)
- 钢结构桁架吊装安装专项施工方案
- 消防知识竞赛考试题(附答案)
- 2025年浙能集团甘肃有限公司新能源项目招聘22人笔试历年参考题库附带答案详解
- 佛教协会人员管理制度
- 厂区雨污水管网施工方案
- 碳排放交易课件
- 乳品微生物知识培训课件
评论
0/150
提交评论