Silverlight中也玩屏幕截图

简介: 先上演示地址: http://images.24city.com/jimmy/QQCapture/注:首次点击,会提示未安装ActiveX插件,下载安装成功后,刷新页面,就可以截屏了。 提示:该ActiveX插件是我用Delphi7开发的纯绿色插件(调用了QQ公司的公开dll),默认会安装到c:\Capture下,大伙儿玩腻了以后,点击c:\capture\uninstall.

先上演示地址:

http://images.24city.com/jimmy/QQCapture/

注:首次点击,会提示未安装ActiveX插件,下载安装成功后,刷新页面,就可以截屏了。

提示:该ActiveX插件是我用Delphi7开发的纯绿色插件(调用了QQ公司的公开dll),默认会安装到c:\Capture下,大伙儿玩腻了以后,点击c:\capture\uninstall.bat,然后删除整个c:\capture即可.

 

思路:

1.截图功能在activex(即ocx文件)中完成,同时每次完成截图后,ocx中会有一个属性得到截图的base64字符串

2.silverlight中通过js调用activeX中的截屏方法,同时取得图片的base64编码字符串

3.js再继续通过与silverlight的交互,把图片base64字符串"给"到silverlight

4.silverlight最终得到截图对应的base64字符串,然后还原为图片

本文所用技术,均在我博客其它文章中有提及,这里只是将它们组合起来,完成一项小应用而已。

 

最后:

可能有人会问一个老问题,ff,chrome等非ie浏览器上怎么办,呵呵,我还真不知道,不过我在迅雷的安装中注意到一个细节:"安装迅雷多浏览器支持",换言之,ff,chrome之流虽然不支持activex技术,但是也有自己的插件接口,理论上讲,开发一套专用于ff,chrome的截屏插件,还是有希望的,如果各位知道如何在ff中开发这类插件,欢迎回帖指导。

 

 

目录
相关文章
|
C# Windows
c# wpf 利用截屏键实现截屏功能
原文:c# wpf 利用截屏键实现截屏功能     最近做一个wpf程序需要截图功能,查找资料费了一些曲折,跟大家分享一下。
1327 0
|
C#
WPF 控件库——仿制Windows10的进度条
原文:WPF 控件库——仿制Windows10的进度条 一、其实有现成的   先来看看Windows10进度条的两种模式:       网上有不少介绍仿制Windows10进度条的文章,也都实现了不错的效果。
1321 0
|
C# UED 自然语言处理
在WPF中实现图片一边下载一边显示
原文 在WPF中实现图片一边下载一边显示 当我们上网查看一个较大的图片时,浏览器能一边下载一边显示,这样用户体验是比较好的,但在WPF程序中,当我们通过如下方式显示一幅图片时:     img.Source = new BitmapImage(new Uri("http://localhost:8000/www/test.jpg")); 只能等到图片下载完成时才能显示出来,当图片较大时需要等待很久,即使在旁边放个进度条给人的感觉仍然不好。
1026 0
|
C#
在VisualStudio 工具箱中隐藏用户控件
原文:在VisualStudio 工具箱中隐藏用户控件 当我们创建一个用户控件后,VisualStudio会自动将其添加到工具箱中,本来这是一个比较贴心的设计。但是,有的时候,我们并不想将用户控件放到工具箱中。
888 0