|
|
用户名:wallimn 笔名:wallimn 地区: 行业:其他 |
| 日 | 一 | 二 | 三 | 四 | 五 | 六 |
欢迎访问隔壁老王的博客,欢迎大家多交流,希望跟有共同爱好的人做朋友!
邮件:wallimn@sohu.com
网络硬盘:http://wallimn.ys168.com(可下载博客中提到的相关资源、代码)
这个博客已经不再维护了,欢迎访问我的主博客:http:///wallimn.javaeye.com
最近写了个网页上用的手写留痕的插件
(作者置顶)
大家好,关于我的博客
(作者置顶)
我的WORD2003手写签名插件出新版本了
(作者置顶)
WORD2003签名签章插件介绍==wallimn
(作者置顶)
WORD2003签名签章插件
1.前言
这是我学习ATL的成果,学习过程及程序的编写,前前后后共用了二十多天的时间,花了不少的心血。其间遇到了不少困难,终于都一一解决了。这要感谢www.csdn.net上的热心朋友,从他们的BLOG文章中,我获得了不少灵感。现在这个软件基本完成了,全部实现了我自己定的设计需求,自己觉得这个软件还有一定的用处,就把它的测试版发布一下,希望作用者多提宝贵意见。
注:测试版没有任何的功能限制,只是显示了“Beta 1.0”字样,对试用没有任何影响,也没有使用时间的限制。
2.功能
可以完成手写签名及插入签章的功能。插入签名或签章后,可以监控WORD文档是否被修改。软件的使用界面很简单,只是在WORD里插入了一个工具栏,上面有三个按钮。其它的功能在插入的签名或签章上按右键根据弹出菜单选择执行。
印章支持多种格式图片,如BMP,JPG,GIF(静止的)等,使用时用印章管理工具把这些导入到印章库即可。
印章库管理密码:12345
3.软件的使用:
软件包含七个文件:
steal.mdb 印章库。
xxhsignature.ini 配制文件,如果没有会自动生成。
XXHSignature.dll WORD2003的COM加载项。程序的主体。
Register.exe 注册XXHSignature.dll用,可以不使用,直接使用regsvr32。
UnRegister.exe 卸载XXHSignature.dll用,可以不使用,直接使用regsvr32 /u。
StealManager.exe 印章管理工具。
说明文档.txt 说明文档。
软件使用VC6、ATL开发,没有使用MFC,所以每个软件都很小巧。
我在开发时使用的环境为XP、WORD2003,对软件在其它环境下没有进行过测试,不知道存不存在兼容问题。期待大家的反馈,可以给我发EMAIL,或者到我的博客留言。
如果程序运行有问题,可以使用Unregister或regsvr32 /u将其卸载即可。也可以使用WORD的加载项管理菜单(该菜单默认时不显示,可以点击工具->自定义中找到使之显示),禁止插插件启动时运行。
另外:软件编译为UNICODE,对WIN98肯定是不支持。
欢迎转载,转载时请不要删除这些信息。谢谢。
2006-04-25
作者:wallimn
email:wallimn@sohu.com
QQ:54871876
博客:http://wallimn.bokee.com
下载请访问我的网络硬盘,地址:
http://www.soeasy.net.cn/pickFilesAction.do?topicId=1498419&uid=1498355
http://wallimn.gbaopan.com(需要注册为该网站的用户,有些麻烦)
补充说明:
控件注册使用regsvr32(系统提供的注册控件工具,可以在开始->运行中输入)
regsvr32 控件路径名\插件名
regsvr32 -H 可以看一下帮助
注册后,一般会出现个工具栏,有的机器不知为什么不出。
这时,可以工具->自定义,选择命令选项卡,左边选工具,右边找到COM加载项,把它拖到菜单或工具栏上。关闭自定义窗口。点击COM加载项,把签名插件勾选一下就可以了。
软件运行截图见另外一篇文章http://wallimn.bokee.com/5532495.html
Word手写签名插件(COM加载项、VC6.0ATL)开发思路
(作者置顶)
JSP中,AJAX使用POST方式提交中文乱码问题解决
/***********本人原创,欢迎转载,转载请保留本人信息*************/
作者:王力猛 (wallimn)
电邮:wallimn@sohu.com
博客:http://wallimn.bokee.com
时间:2006-11-15
/***********本人原创,欢迎转载,转载请保留本人信息*************/
今天终于解决了AJAX的中文乱码问题,写篇文章来帮助一下有同样问题的朋友们。我的开发环境:XP, eclipse,使用GB18030编码。
当遇到这个问题时,到网上去查了好多文章,提到几种解决方案,如:全站UTF-8编码;请求头编码为中文;使用javascript中的escape函数。
使用GET方式提交数据的时候,中文问题很好解决,setrequestheader("Content-Type","text/html; encoding=gb18030")就可以了。但这个方法在POST方式中却不起作用。大家都知道GET方式提交数据有长度限制,有时我们必须使用POST方式来提交数据。
但对于POST方式,使用上述的几种方法经过多次测试,问题依旧。我郁闷了好几天。
今天把问题解决了,很简单,是使用escape(或encodeURI,两个函数javascript的函数,功能基本相同,可以查一下相关的帮助),但要使用两次,这是解决问题的关键。
我的例子涉及两个页面,一个是初始页面,一个是AJAX请求处理页面。
初始页面内容如下(hello.jsp):
/////////////////////////////////////////////////////////////////////////////////////
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%String path = request.getContextPath();%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>AJAX提交页面</title>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<script type="text/javascript">
function justdo(){
var post="name=王力猛&email=wallimn@sohu.com&bokee=http://wallimn.bokee.com";
post = encodeURI(post);
post = encodeURI(post);//两次,很关键
var xmlObj = new ActiveXObject('Msxml2.XMLHTTP');
var URL = '<%= path%>/page/act.jsp';//文件名需要调整成测试时的相应位置?
xmlObj.open ('post',URL,true);
xmlObj.setrequestheader("cache-control","no-cache");
xmlObj.setrequestheader("Content-Type","application/x-www-form-urlencoded");
xmlObj.send (post);//注意:POST方式,使用这个来发送内容?
}
</script>
</head>
<body>
<input type="button" value="提交" onclick="justdo()"/>
</body>
</html>
/////////////////////////////////////////////////////////////////////////////////////
ajax请求处理页面(act.jsp)的内容如下:
/////////////////////////////////////////////////////////////////////////////////////
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<%String path = request.getContextPath();%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@page import="java.net.URLDecoder"%>
<html>
<head>
<title>ajax deal</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
</head>
<body>
<%
//遍历输出参数内容。
for (Enumeration e = request.getParameterNames(); e.hasMoreElements();) {
String h = (String) e.nextElement();
String v = request.getParameter(h);
String mm = java.net.URLDecoder.decode(v, "UTF-8");
System.out.println("请求参数: " + h + " = " + mm);
}
%>
</body>
</html>
/////////////////////////////////////////////////////////////////////////////////////
分析:当调用request.getParameter()函数时,会自动进行一次URI的解码过程,调用时内置的解码过程会导致乱码出现。而URI编码两次后,request.getParameter()函数得到的是原信息URI编码一次的内容。再用可控的解码函数java.net.URLDecoder.decode()就可解出原始的正确的信息。
以上分析纯属个人看法,不知是否正确。
VC知识库的离线包整合
我想用VC的人可能都会知道http://www.vckbase.com,网站上的VC知识库离线包也是非常的不错,可以帮你解决绝大部分编程中遇到的问题。但它只是前20集有个合订本,后来的都是一集一集单的,使查找东西非常的不方便。
我的室的郭教员花了些时间跟心思(有个CHM merge工具,只能合并20个文件,郭教员用自己的方法把它解决了。),把目前的1-46期合并起来建了个全部的索引文件,可以在全部知识库中搜索、建立标签。真是方便。如果有其它VC程序员需要,请与我联系,我可以Email你们一份。好东西大家用。我的Email: wallimn@sohu.com