我的思路是,首先通过findwindowex和getDC获得shockwaveflash.ocx的HDC,然后用bitblt函数将图截到picturebox里去,效果实现了,但有个问题,因为文件比较多,在整个浏览器一屏放不完,有的会通过滚动条拖动再显示出来,而这些需要拖动才显示出来的本身处于屏幕外面,用bitblt绘制出来那个picturebox里就是白板一片,另外,如果在绘制的时候那个flash.ocx上有其他窗体的话,就会绘制出其他窗体的东西出来,好象通过那个getDC获得的并不是flash.ocx的HDC而是屏幕的HDC一样。这个问题该怎么解决呢?100分不够,解决了另外再加分
给分帖:http://community.csdn.net/Expert/topic/3846/3846689.xml?temp=.3853266

解决方案 »

  1.   

    如果那一zhen有声音的话,flash.ocx会把声音播放出来,总不可能去把系统声音关闭吧
      

  2.   

    你load进来后直接调用Shockwave1.Stop不行么?
      

  3.   

    不行,因为现在SWF的制作方式很杂乱,有的直接在该zhen中直接插入的动画或者音乐,也就是说,即使你停止在这一zhen,但这一zhen里包含的动化或者音乐仍然会继续播放起走,有点相当于停止主进程,但子进程仍然继续。