2007年7月2日
查了很多资料,大家一致认为在个人版上无法添加某个软件为例外(即让防火墙忽略),只能把Macfee认为是例外的软件删除。而对于某些软件来说,Macfee认为威胁很大(像一些游戏的破解启动文件)根本不给机会,直接放到屏蔽中了。
解决的办法其实很无聊,下载一个web迅雷的绿色版,解压到你的游戏目录中,把原来的游戏启动文件改名,把web迅雷的可执行文件改成游戏的名称,然后点击运行web迅雷。这时,macfee会马上检测到系统威胁,但是认为还不是很致命,因此会弹出信息框,询问用户的处理方法,毫不犹豫选择“信任”。然后再到macfee的例外列表中,会看到已经被信任。剩下的事情就很简单了,把假的游戏启动文件删除,把原来的真的游戏的启动文件改回原来的名称即可。或许您会认为这个方法很无聊,确实。不过,如果您和我一样,不愿意把笔记本带的正版的macfee个人版换掉的话,又遇到同样的问题,那就试一试吧。
配置tomcat使用特定的java sdk版本的方法非常简单:
1、修改tomcat/bin/catalina.bat,增加 set JAVA_HOME=XXXXXX,其中XXXXXX为jdk 的路径,如c:\j2sdk1_4
2、修改tomcat/bin/setclasspath.bat,同样增加 set JAVA_HOME=XXXXXX
其实这个问题是很初级的,但是一般人常常忘了步骤2,导致的结果就是特定版本的java启动tomcat,但是jdk用的还是系统默认的(在系统的JAVA_HOME中的设置)。
系统硬件升级,采用nas存储设备代替原来的本地存储,问题出现了。
用作文件存储的NAS设备居然不支持中文文件名,对其他字符的支持也不好说。
原来的系统处理只把文件名进行了转换,没有考虑文件扩展名,例如,下面的文件名:
test.测试
转换后变成了:
374658237937_1.测试
在nas上根本就无法存储,导致程序执行失败
解决的办法:
必须对扩展名也进行转换,但又不能全部转换。对于以英文作为扩展名的文件,不作扩展名转换,例如xx.doc
因此,需要使用某种方法把不合适的扩展名找出来,我现在的规则是,对包括下面的字符以外字符的扩展名进行转换,这个规则是我查看window3的所有扩展名后确定的:
a-z
A-Z
_
-
0-9
使用下面的正则表达式:
"[^\\w\\-]
由于\w已经包含了a-z,A-Z,0-9以及下划线,所以只要再加上减号就可以了。
测试用的java代码如下:
package com.test;
import java.util.regex.Pattern;
public class a {
static public void main(String[] argc)
{
System.out.println(Pattern.compile("[^\\w\\-]").matcher("a*b").find());
}
}
如果返回true,说明包含规则外的字符,需要被转换。
在
unix
下通常会启动若干
java
进程,这些进程在使用
ps –ef|grep
命令查看的时候,通常很难分辨。
如:
# ps -ef|grep java
root 13782 13755 0 14:12:40 pts/3 0:00 grep java
root 13058 13051 0 18:12:35 ? 1:17 /data/bea/jdk141_03/bin/java -client -Xms32m -Xmx200m -Xverify:none -Djava.secu
root 13158 13153 0 19:12:35 ? 0:17 /data/bea/jdk141_03/bin/java -client -Xms32m -Xmx200m -Xverify:none -Djava.secu
解决的办法是在启动java进程的脚本中作一点小的修改,在java命令后面增加“-Dmyapp.name=”中文名称””:
"$JAVA_HOME/bin/java" -Dmyapp.name="总部门户" \
${JAVA_VM} ${MEM_ARGS} ${JAVA_OPTIONS} \
-Dweblogic.Name=${SERVER_NAME} \
-Dweblogic.management.username=${WLS_USER} \
-Dweblogic.management.password=${WLS_PW} \
-Dweblogic.management.server=${ADMIN_URL} \
-Djava.security.policy="${WL_HOME}/server/lib/weblogic.policy" \
weblogic.Server
这样再使用ps命令查看的时候就可以很容易区分每个java进程了:
# ps -ef|grep java
root 13782 13755 0 14:12:40 pts/3 0:00 grep java
root 13058 13051 0 18:12:35 ? 0:17 /data/bea/jdk141_03/bin/java -client -Xms32m -Xmx200m -Xverify:none -Djava.secu
root 13744 13731 0 13:34:35 ? 1:23 /data/bea/jdk142_05/bin/java -Dmyapp.name=总部门户 -server -XX:NewSize=384m
root 13597 13589 0 13:15:29 ? 0:59 /data/bea/jdk142_05/bin/java -Dmyapp.name=集群管理服务器 -server -Xms32m -Xmx20
在vista 旗舰版,mysql4无法注册为服务,通过安装程序安装不行,使用bin\mysqld-nt --install命令也不行.
索性直接通过下面的命令来启动mysql:
d:\mysql4\bin\mysqld-nt --defaults-file="d:\mysql4\my-medium.cnf" 在通过下面的命令来停止mysql
d:\mysql4\bin\mysqladmin -u root -ppassword shutdown 其中,root为mysql用户名,password为root用户的口令
可以把上面两条命令做成批处理,放在vista的程序菜单里.