如何在浏览器控件中使用牛牛截图控件

5 篇文章 0 订阅
4 篇文章 0 订阅

牛牛截图控件已经提供Web控件及标准的Javascript接口,测试程序及调用示例请访问: http://www.ggniu.cn/


但最近好几个朋友都表示通过动态库加载的方式在浏览器控件中使用不方便,也有朋友说不知道如何在浏览器控件中使用;本文旨在演示如何在浏览器控件中使用牛牛截图;目前牛牛截图控件的体积已经缩减到了150KB,更加便于在浏览器中应用了。

 

本文的相关示例代码包含在ActiveX控件以及Npapi插件中调用牛牛截图控件,ActiveX控件的写法就不多描述了,npapi插件的写法,此处直接在其相关的示例:npruntime示例上改动而成;这两个控件分别为:ActiveXWrapper.dll以及npcapture.dll,前者应用于IE浏览器,后者使用于FFChrome浏览器中。

 

在两个控件中,调用牛牛截图的相关代码,与之前的在应用程序中的方法一模一样:

 

typedef int (*FnStartScreenCapture)(const char* szAuth, const char* szDefaultSavePath, void* pCallBack, unsigned long hWndNotice, unsigned int noticeMsg);
FnStartScreenCapture gl_StartScreenCapture = NULL;
typedef int (*FnInitScreenCapture)(unsigned long trackerColor, unsigned long editBorderColor, int nTransparent, int flag);
FnInitScreenCapture gl_InitCapture = NULL;
 
string path = GetDllPath() + "\\NiuniuCapture.dll";
m_hModule = LoadLibrary(path.c_str());
DWORD dret = GetLastError();
gl_StartScreenCapture = (FnStartScreenCapture)GetProcAddress(m_hModule, "StartScreenCapture");
gl_InitCapture = (FnInitScreenCapture)GetProcAddress(m_hModule, "InitScreenCapture");
 
//设置截图边框的样式 
gl_InitCapture(RGB(255, 0, 0), RGB(0, 174, 255), 180, 0);
 
STDMETHODIMP CCActiveXWrapper::TestControl(void)
{
//可以添加新的接口,由WEB传入地址,截图后,通过控件自动将图片发往服务器
//此处一定要找一个可写的路径来保存截图
gl_StartScreenCapture("niuniu", "", NULL, 0, 0);
return S_OK;
}
 
 
//在npcapture中的调用:
bool
ScriptablePluginObject::Invoke(NPIdentifier name, const NPVariant *args,
                               uint32_t argCount, NPVariant *result)
{
if(name == sCapture_id)
{
gl_StartScreenCapture("niuniu", "", NULL, 0, 0);
return true;
}
///..........................


只是此处要注意的一点是,确保浏览器控件能找到牛牛截图控件,我当前采用的办法是将牛牛截图控件与浏览器控件放在同一路径下,控件中读取自身所在路径,在本目录下读取加载牛牛截图控件,具体的大家看Demo中的代码吧。

下载地址:

牛牛截图控件_含浏览器控件调用示例


控件的测试:

1. 关于ActiveX控件,可以执行regsvr32来注册,同时需要把NiuniuCapture.dll复制到Windows目录下[ActiveX控件被复制至此目录下]

注册后,在IE浏览器中打开ActiveXWrapper.html,效果如下:

 

2. Npapi插件的注册,可以执行安装包中的niuniucapture_npapi.reg [先修改相应的目录]

如:当前npcapture.dllNiuniuCapture.dll在目录:c:\testcapture\下,则注册表脚本为:

Windows Registry Editor Version 5.00 
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\MozillaPlugins\@niuniu.com/npcaptrue]
"Path"="c:\\testcapture\\npcapture.dll"

以上脚本是在WIN7 64位下的,32位系统应该有所调整 

 

FF或者Chrome浏览器中打开test_npcapture.html,点击“capture”,效果如下:


 

以上仅演示如何调用,关于如何将牛牛截图控件与浏览器控件一并发布,网上有许多相关的文章,以下也提供相应的思路供参考:

1. 对于ActiveX控件,可以生成CAB包,CAB包中可以包含多个DLL的复制与注册,当然可以将咱们的NiuNiuCapture.dll包含在其中了

 

2. Npapi的打包同样支持多文件,具体可参考:

http://blog.csdn.net/zssureqh/article/details/9396435

 

3. 如果实在觉得多DLL麻烦,也可以考虑将NiuniuCapture.dll作为资源文件放入浏览器控件中,在运行时,根据判断是否需要将NiuniuCapture.dll释放到磁盘上[确定找到一个可写的目录],再加载释放出来的文件即可。

 

4. 关于Npapi的注册,可以根据不同的场景进行不同的注册方式,目前看来,最方便的就是注册表写入方式了,可以直接在安装包中加上这样的操作即可。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
新颖网络截屏插件是一款能够非常方便的将屏幕截屏图片发送到WEB服务器的轻量级ActiveX控件,它可以非常方便的集成到您的博客,BBS,论坛,OA,或电子商务网站,带给用户前所未有的用户体验。 同时新颖网络提供了ASP.NET(C#)和PHP的开发文档,和完善的ActiveX接口,您可以非常容易的使用和进行二次开发。最新版本的截屏控件极大的优化了图片数据传输的效率,可以帮助用户节省约40%的上传时间。 相信新颖网络WEB截屏控件能够帮助您赢得市场。 产品特点如下: 1. 基于标准HTTP协议。 2. 支持Jpg图片格式。 3. 一流的用户体验,操作方便。 4. 增加截屏图片编辑器。可任意输入文字,绘制矩形箭头等。 5. 免费提供JavaScript SDK包,方便您将插件快速集成到已有网站。 支持语言:PHP,JSP,ASP,ASP.NET(C#),ASP.NET(VB),C++,VC,VC.NET,VB,VB.NET,C#,C#.NET,Delphi,C++Builder 支持平台:Visual Studio 6.0/2002/2003/2005/2008/2010,C++ Builder 6.0/2009/2010,Delphi 7/2009,Visual Basic 6.0/2008 支持脚本:JavaScript,VBScript 支持系统:Windows NT,Windows 2003,Windows XP,Windows Vista,Windows 7,Linux 支持图片格式:PNG 产品介绍:http://www.cnblogs.com/xproer/archive/2010/08/09/1796077.html 在线演示-标准版:http://www.ncmem.com/products/screencapture/demo/index.html 在线演示-专业版:http://www.ncmem.com/products/screencapture/demo2/index.html 在线演示-CKEditor3.6.1:http://www.ncmem.com/products/screencapture/demo-ckeditor361/index_ckeditor361.html 布署文档:http://www.cnblogs.com/xproer/archive/2011/09/14/2176188.html 升级日志:http://www.cnblogs.com/xproer/archive/2010/12/04/1896399.html 开发文档-ASP.NET(C#):http://www.cnblogs.com/xproer/archive/2010/12/04/1896552.html 开发文档-PHP:http://www.cnblogs.com/xproer/archive/2011/05/16/2047915.html 开发文档-JSP:http://www.cnblogs.com/xproer/archive/2011/05/20/2051862.html 示例下载-标准版:http://www.ncmem.com/download/ScreenCapture-demo.rar 示例下载-专业版:http://www.ncmem.com/download/ScreenCapturePro-demo.rar 文档下载:http://www.ncmem.com/download/ScreenCapture-doc.rar VC运行库:http://www.microsoft.com/downloads/details.aspx?FamilyID=9b2da534-3e03-4391-8a4d-074b9f2bc1bf 联系邮箱:1085617561@qq.com 联系QQ:1085617561

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值