Archive for 十月, 2009

Date: 十月 23rd, 2009
Cate: 未分类

开机SvcHost.exe出错的其中之一可能原因

曾经遇到过开机还没登陆桌面就出错的这个问题,后来关了很多服务,清理了很多注册表,打了很多补丁,不知是哪个起了作用就自然解决了.
今天再次遇到这个问题.
看到日志服务中有个关于360安全卫生核心服务的记录, 又看到有DCOM某某条错. 查看出错原因是某个程序在web准备好前从web启动服务失败.
于是福如心至, 想到360安全卫士的云查杀服务可能就是罪魁祸首, 而且也能解释为什么会在登录前就出错, 因为权限很高(在服务里根本停不掉), 于是开360起来看, 发现右边的广告信息被公司网络屏蔽了, 再访问360网站, 确认也被屏蔽.
于是结果很明显, 360云查杀服务在启动的时候要访问网络, 而360网络被公司封掉, 自然就无法启动, 于是报错.
卸载360后重启, 错误消失.

从上可以看出SvcHost.ext出错的可能原因是某个服务需要访问网络, 当网络连通, 但却没有返回正确结果的时候就可能出错. 因此解决思路应该从找那些服务是启动时候就访问网络的开始.
比如windows的自动更新服务, 比如后台智能传输服务, 比如SMS服务, 然后停掉它们. 其中windows的自动更新服务出错的几率很高.
这也能很好解释为什么SvcHost.exe出错, 虽然解决方法很多, 却又没有通用方法的原因, 因为出错的服务不同.

Date: 十月 13th, 2009
Cate: develop

IBM Portal中从portal向portlet传参数的方法

虽然不是portlet规范中所定义的方法,但有的时候hack真的无法避免.以下方法在IBM Portal 6.1中测试通过.

先在portal(比如theme)中设置

request.setAttribute("testKey","testValue");

然后在portlet中使用

//用内部方法取得portal的http request

HttpServletRequest httpReq = com.ibm.wps.pe.pc.std.core.PortletUtils.getInternalRequest(portletRequest).getHttpServletRequest();

httpReq.getAttribute("testKey");

其实portletRequest.getAttribute(…)本身就包含很多好东西,甚至包含portal的session,只是取的方法很麻烦.

Date: 十月 12th, 2009
Cate: plugin

傲游百度贴吧只看某人插件

用jQuery实现的傲游百度贴吧只看某人插件, 可以连续载入下几页的过滤后数据, 点分页也可以保持过滤.
这个插件是对jQuery的第一次真正的演练, 欢迎捧场: http://bbs.maxthon.cn/viewthread.php?tid=190791.