1.引言
WORD电子签名插件,支持手写、本地电子图章、以及网络图章功能。软件使用VC6,以ATL方式编写,软件小巧精致。
这是我学习ATL的成果,学习过程及程序的编写,前前后后共用了一个多月的时间,花了不少的心血。其间遇到了不少困难,终于都一一解决了。这要感谢www.csdn.net 上的热心朋友,从他们的BLOG文章中,我获得了不少灵感。现在这个软件基本完成了,全部实现了我自己定的设计需求,自己觉得这个软件还有一定的用处,就把它的测试版发布一下,希望使用者多提宝贵意见。
注:测试版没有任何的功能限制,只是“关于”对话框中显示测试版字样。
2.功能
可以完成手写签名及插入签章的功能。插入签名或签章后,可以监控WORD文档是否被修改。软件的使用界面很简单,只是在WORD里插入了一个工具栏,上面有三个按钮。其它的功能在插入的签名或签章上按右键根据弹出菜单选择执行。
印章支持多种格式图片,如BMP,JPG,GIF(静止的)等,使用时用印章管理工具把这些导入到印章库即可。
印章库管理密码:12345
几个内置的印章使用密码:111111
3.软件的使用:
使用windows系统带的控件注册工具regsvr32.exe,注册一下XXHSignature.dll即可;或者直接运行当前目录下的Register.exe,也可完成注册。这样打开word就可以看到签名工具栏。
软件包含以下几个文件:
steal.mdb 印章库。
xxhsignature.ini 配制文件,如果没有会自动生成。
XXHSignature.dll WORD2003的COM加载项。程序的主体。
Register.exe 注册/卸载XXHSignature.dll用,可以不使用,直接使用regsvr32。
register.bat 注册的快捷方式,调用register.exe。纯属辅助,方便使用。
unregister.bat 卸载的快捷方式,带命令行参数调用register.exe。纯属辅助,方便使用。
StealManager.exe 印章管理工具。
说明文档.txt 说明文档。
软件使用VC6、ATL开发,没有使用MFC,所以每个软件都很小巧。
我在开发时使用的环境为XP、WORD2003,对软件在其它环境下没有进行过测试,不知道存不存在兼容问题。期待大家的反馈,可以给我发EMAIL,或者到我的博客留言。
如果程序运行有问题,可以使用Unregister.bat或regsvr32 /u将其卸载即可。也可以使用WORD的加载项管理菜单(该菜单默认时不显示,可以点击工具->自定义中找到使之显示),禁止插插件启动时运行。
另外:软件编译为UNICODE,对WIN98肯定是不支持。
欢迎转载,转载时请不要删除这些信息。谢谢。
2006-04-25
作者:wallimn
email:wallimn@sohu.com
QQ:54871876
博客:http://blog.csdn.net/wallimn
1.1版更新
新版的进行了以下几项改进:
a.签名及签字对文档内容、文档字体颜色以及文档字体大小敏感,也就是说:修改文档内容、文档中任意字的字体颜色或大小,都会导致文档签名失效。这是个很重要的功能,不知大家有没有意识到。试想一下,如果对合同签字,合同金额为100000,在WORD里将数字的后几个0改成白色,如果签名不对字体颜色敏感,那么签名仍然有效,而合同金额看起来就锐减了。所以说,对字体颜色及大小不敏感,是个很严重的漏洞。市场上的几款其它签名软件基本都有这个漏洞。
b.修改了WORD中签名工具栏有时不显示的BUG。
c.当文档签名失效时,重新打开文档的时候,会显示个红叉,直观的显示签名失效。
2008-02-23
1.2版更新
添加了读取网络图章功能,可以通过HTTP协议读取放在远程网络上的图章。不需要专门的图章服务器,可以使用任意的WEB服务提供程序,如IIS,tomcat等,将软件包中的web目录部署(白话:拷贝)到WEB的某个目录(tomcat中,考到某个上下文)就可以了。
然后在“网络图章”对话框中,输入对应的地址,如:http://127.0.0.1/web ,点刷新就可以了。
2008-10-17
联系:wallimn@sohu.com
软件下载:http://wallimn.ys168.com
附:
Word手写签名插件(COM加载项、VC6.0ATL)开发思路
写这个东东,其实就是写一个COM加载项。用VC开发,可以使用MFC、也可以使用ATL;用VB也是个不错的选择。我最终选用了ATL。主要是VC我用得比较多,而ATL通过模板库会给开发带来极大的便利,因此选用了VC使用ATL方式开发。事实证明我的选择是正确的。
使用VB调用COM接口要相对要方便一些,VB可以很方便地对COM进行编程,编程中也可以直接使用Word的宏代码,基本不用做代码转换。VB不好的地方:发布的时候要带它的运行时库(有点大),还有就是VB的运行效率比不上VC(不过小工程不明显)。
开始编程,使用VC向导,可以很快的生成COM的框架,然后向工程里插入一个simple object(在菜单插入->插入ATL对象里面)。通过这个对象来改变WORD的菜单、TOOLBAR,这方面的文章很多,我的开发就是借鉴了徐景周的一篇文章,到网上找一下,很多转载(我发现网上原创的东西实在不多呀)。这样一个简单的COM加载项的框架就建好了。
手写签名部分的实现,这部分都是一些相对编程者容易的问题。简单说一下,首选插入一个对话框(在菜单插入->插入ATL对象里面),加入几个按钮,写一个单向链表用来存签名的笔画,用兼容DC、兼容位图、OleCreatePictureIndirect,把图片创建成一个IPictureDisp对象,以供下面的使用。
再插入一个Full Control对象,方法同上。把上面一步生成的IPictureDisp写进Full Control对象,再调用WORD的AddOleCtrol方法将这个东东插入就可以了。
这就是一个简单的流程。说的很粗略,因为不知道感兴趣的人多不多。
在开发的过程中我遇到了以下这样一些问题,后来慢慢解决了,如果大家有兴趣可以来交流一下。
1. 如何在插入对象中取到WORD的ActiveDocument的指针(这个不能通过保存的方法来)。
取Container的指针,再查IDispatch的接口。
2. 如果在程序里控制控件的删除,如在控件内点击,通过上下文菜单文菜单删除控件。
可以给控件设置一下标志,然后通过Word的方法遍历对象组,检查对应的标志,然后删除。
3. 如何保存。
可以重载框架的Save和Load方法,把对象的相关属性保存。这两个方法会由WORD自动调用。
4. 如何使用TOOLTIP。
这个在MSDN里有详细的帮助,可以参照解决。
5. 如何移动控件。
处理控件的OnLButtonDown/OnMouseMove/OnLButtonUp消息,然后通过Word的方法移动控件。
简单写了一下思路,欢迎交流。
分享到:
相关推荐
WORD电子签名插件,支持手写、本地电子图章、以及网络图章功能。软件使用VC6,以ATL方式编写,软件小巧精致。 这是我学习ATL的成果,学习过程及程序的编写,前前后后共用了一个多月的时间,花了不少的心血。其间...
2. **安装控件**:为了在Word中实现签章功能,需要安装支持电子签章的插件或控件。这些控件通常提供图形化的用户界面,使得用户可以方便地在文档中插入、查看和验证电子签章。 3. **插入签章**:在Word文档中,用户...
本软件支持电子签章功能,这意味着用户可以给自己的文档添加这种高级别的安全保障,以确保文件在整个传递过程中的完整性和合法性。 对于Windows 7 64位操作系统用户,这款名为"云端电子盖章(win7 64 位).exe"的软件...
WORD2003签名签章插件 1.前言 这是我学习ATL的成果,学习过程及程序的编写,前前后后共用了一个多月的时间,花了不少的心血。其间遇到了不少困难,终于都一一解决了。这要感谢www.csdn.net上的热心朋友,从他们的...
"word手写签名插件.rar"是一个压缩包文件,其中包含了一个名为"E_Jun手写签名 2.0"的插件,专门用于在Microsoft Word中实现手写签名的插入和编辑。这个插件提供了方便快捷的方式来个性化你的电子文档,使得纸质文档...
标题中的“uniapp手写电子签名组件”指的是一个专为uni-app设计的插件,用于在应用内提供用户手写签名的功能。这样的组件通常会包含绘制线条、保存签名图片、清除画布等核心功能,适用于需要用户签署合同或确认服务...
手写签名JS插件是一种基于JavaScript技术实现的交互式组件,专为电子设备(包括PC和移动设备)设计,提供用户在屏幕上进行手写签名的功能。这种插件在电子合同平台中尤为常见,因为它们能够方便用户在无纸化环境中...
jSignature是一个轻量级的JavaScript库,它允许用户在网页上进行手写签名,非常适合于电子商务、合同签署和其他需要数字签名的应用场景。 1. **jSignature库介绍** jSignature是一个基于HTML5 canvas元素的库,它...
本主题将深入探讨如何在H5环境中实现电子签名功能,重点介绍`jSignature`这个jQuery插件以及如何结合MUI框架进行使用。 首先,我们要理解什么是H5电子签名。H5(HTML5)是下一代超文本标记语言,提供了更丰富的交互...
《ThinkPHP在线电子手写签名技术详解》 在数字化时代,电子签名已成为众多业务场景中的重要环节,尤其在法律文档签署、合同确认等方面。本文将深入探讨如何利用ThinkPHP框架实现一个在线电子手写签名的功能,并重点...
JavaScript手写电子签名技术是一种在Web应用中实现用户签名功能的方法,它允许用户通过鼠标或触摸设备在屏幕上绘制签名,并将其保存为图像。这一技术在电子商务、在线合同签署等领域广泛应用,提高了业务流程的效率...
目前市面上的电子签章产品也是多样化,但是不管是哪个厂家的产品,在线签章简单易用,同时也能保证签章的有效性,防篡改,防伪造,稳定,可靠就是好产品。此次开源的系统模拟演示了文件在OA系统中的流转,主要为办公...
鹏宇成Word交互式电子签名工具采用电子签名技术,结合数字证书技术、网络加密技术而设计的数据安全产品,采用插件技术与Office产品无缝连接,用户在正常编辑文档的方式下就可以在Word文档(doc/docx格式)内部实现...
微签电子签章系统是一套符合电子签名法规的电子签章解决方案,采用电子签名技术在电子文档上实现电子印章和手写签名。 本接口特点: 1、后台全自动接口,无须签章界面。 2、独立印章管理后台,管理电子印章、数字...
综上所述,这个"word签章升级版"提供了一个全面且兼容性强的电子签章解决方案,适用于使用Office 2003的用户,通过透明的签章样式和广泛的证书支持,增强了文档的安全性和合法性。配合提供的证书文件和使用指南,...
4. **多格式支持**:WebSign 可能兼容多种常见的文档格式,如PDF、DOC、XLS等,使得电子签章能够在不同的文件类型间无缝切换。 5. **批量处理**:对于需要大量签署的文件,系统提供批量签章功能,极大地提升了工作...
表单手写签章控件是一种在电子文档中实现手写签名或印章功能的技术,它使得用户能够在数字化的表单上模拟真实的笔迹或者插入预设的印章图像,以达到合法、安全的签署效果。这类控件通常用于企业流程自动化、电子合同...
在IT行业中,电子签章是一种安全技术,用于在数字化文档上实现签名,提供与传统手写签名同等的法律效力。本教程将聚焦于如何利用Word和C#编程语言实现电子签章功能。通过在Word中添加自定义按钮,用户可以方便地在...
**jQuery手写签名插件jSignature详解** 在数字化时代,线上签名的需求日益增长,尤其是在移动设备上。jQuery作为一款广泛使用的JavaScript库,为开发者提供了丰富的功能扩展,其中就包括jSignature这款手写签名插件...
电子签章系统源代码是指实现电子签章功能的源代码,它可以和WORD、EXCEL等办公软件集成,实现电子签章的功能。 1. 标题:电子签章系统源代码 电子签章系统源代码是指实现电子签章功能的源代码,它可以和WORD、...