建设网站之开源网站源码推荐

3

分类 : 网络日志 | 发表时间 03-07-2009

现在建一个网站,真是简单,和2000年后那个时代,简直有天堂与地狱那么远的差别。那时候自己编写网站,准确的说是网页,叫主页,那时候自己编写主页的很多站长,坚持这个道路到今天,都成了赫赫有名的站长领军人物了,比如落伍、站长站、站长网,网易的丁磊给大家提供免费主页,开拓了一个网易门户。在那个时代,建设网站有着悠长的过程,有着巨大的难度,因此有一个网站,也是牛的资本。时至今日,开源代码满天飞,域名价格低到底,空间垃圾到白菜价,模板改头换尾,内容采集一夜,一个网站就壳瓤齐全了,真简单,可也真垃圾!

太容易获得的东西,往往都不太重视,太容易得到结果的,往往价值都不高。不管如何,开源程序,还是方便了无数个梦想成为站长的站长。

结合网上的一些推荐,再加上近些年的经历,推荐一些比较有代表性的网站开源程序。

资讯:Dedecms,PHPcms,kingcms,PHP168,帝国,思维,风讯,科讯

dedecms最早用过,用过几个共享模板,最后还是恢复到默认模板,做一下小的修改。phpcms本来做有一个门户网站,但后来投资资金一直没到位,就放置了,原域名打算做一分类站。kingcms遇见几位朋友做得还比较多,网上传闻kingcms生成静态很牛,Linker没有很多数据,这点不做结论。php168以社区活跃度看,要比phpcms热闹得多,并且php168最近更新运作频繁,开发组成员直接在论坛不断征集接收建议,加以改进升级,人气超旺,Linker比较赞赏。帝国网站做有一个技术资讯站,感觉不太适合初级用户,功能强大,但稍显复杂,完整模板不多,大型网站可以考虑,现在完全开源,二次开发也不是问题了。至于思维、风讯、和科讯,一直仅限于更新时试用,没有太仔细研究,风讯是老牌子了,现在网上有很多站长一直还在用。

社区:DVBBS,VBB,Discuz,phpwind,leadbbs,bbpress,bbsMax

最早用的论坛程序,无疑是动网,估计大多数早期站长都是如此。后来Linker长期使用的是phpwind,功能强大,性能表现超好,并且速度反应很快,虽然期间也出了些让人惊诧的漏洞,但后来Linker遇到一些问题,一直在官方论坛得不到解决(官方论坛技术支持一直欠佳),因此愤而转discuz,当然也有discuz丰富的模板和插件因素。discuz的流行自不必说了,但感觉现在有点太在sns上下功夫,急利于赚取漫游币模式,论坛的味道逐渐淡漠。认识VBB源于龙卷风和精品技术论坛,龙卷风已经换为discuz,精品还在坚持VBB,这个坚持很正确,也符合精品的风格和功能需要;bbsmax,生成静态型的论坛程序,中国站长论坛chinaz用的就是sql版本的,在有些时候可以优先采用这个程序,呵,奇妙的有些时候;其他论坛程序,也仅限于测试,没太深入使用。

BLog:WP,Zblog,sa-blog,oblog

玩博客站,最早使用的不是zblog,是一个慈溪多用户博客程序,后来作者停止更新太久,后来看到zblog的优秀,当时zblog可是非常活跃,社区的插件、模板都极为丰富,zblog开发到这个地步,也算是尽头了,作者在专注于.net的博客程序开发;源于zblog的优秀,Linker就直接手动处理了慈溪多用户博客数据库到zblog数据库的转换。zblog可生成全静态页面,但在这个处理过程中,由于数据库、插件等因素,会引起很多反应慢、占用cpu等性能问题,因此,mdb数据库稍大,超过20M吧,就建议转用wp了,Linker就zblog转wp博客程序,有过多次话题讨论,可一直没有结果,呵!sa-blog和oblog有很多朋友在使用,Linker也建立过测试网站,没长期使用,没使用,可能是没缘分,感觉不对味。

分类信息:网人,帝国,php168,phpcms

帝国,php168,phpcms不必再说,网人分类程序,从网上泛滥的盗版程序,就可以看出流行度比较广,还是那句话,这样的源码,如果要做出成绩,功在其外而不在源码自身了。其实还有一个非开源的分类程序,海洋分类,这个东东相当不错,Linker使用的是购买的商业版本,二年前用的,简单修改了下,没怎么管理,效果非常好,如果打算长期做分类站的,可以考虑购买正版。

下载:木翼,帝国,动易,dedecms,phpcms,php168

最早玩的是动易的下载,其实到现在为止,很多成名的下载站用的也是动易的核心。dedecms,phpcms,php168这三位自不必说,套装中自带的。帝国下载站,前段时期刚刚开源更新发布,发现很多网站都使用了帝国下载站,比如大家熟悉的烈火汉化下载站。Linker也建有一个下载站,使用的帝国下载源码,但更新比较少,几乎是自己常用的程序才发上去。木翼下载是Linker看到有朋友使用,效果也很不错,推荐一试。

商城:shopex,ecshop

做商场b2c的都熟悉上述两个网站源码,ecshop自从被discuz收购折腾了一阵以后,人气就大不如前了;shopex模板丰富,社区活跃,相对来讲,Linker推荐大家试用shopex.

图片:第七夜,php168,dedecms

图片站也可以成就一批牛人,比如图王就是一例,以图站起家,拓展至今日。php168和dedecms,都可推荐,第七夜是Linker看到朋友玩站时的图片站程序,去主页看了看,感觉一般。

点评:mudder

一款专业的点评网站系统,多种行业的点评,可以自由调控点评项目,类型。Web 2.0的建站方式,网站会员能让快速上手。就点评类而言,Linker推荐这个源码。

电影:马克斯

这个源码满天飞,真正能够以此把视频站做通的,为数不多,太泛滥的源码反而使用起来,反而需要凌驾于网站之上的操作技术。

Digg:pbdigg,wodig

08年初时,Linker曾经想建dig站,试用过这些源码,感觉速度不是太理想,并且dig站做起来,投入精力相对超大,耽误了耽误,放弃。

SNS:uchome,thinksns

uchome,由于有了discuz,再加一个uch就显得很自然,无缝结合,这点康想盛世无疑最具优势,也使得大多数源码程序都向discuz靠拢。thinksns是几个朋友建站时使用的sns系统,发现联想问吧使用的也是thinksns。

其实上述每一个分类,如果介绍的话,每一个分类,国内外流行的成熟系统都有几十上百种之多,带解说特点,带演示网站什么的,都可以洋洋洒洒数万字,Linker今天只是结合自己的玩站经历,稍稍提一些有代表性的,有很多不曾想起来的,忽略也就忽略了,疏忽不仅仅有Linker自身的原因,也有该源码的原因,你说是不?

声卡大亨创新叫停第三方驱动引发网络狂潮

0

分类 : 业界动态 | 发表时间 03-04-2008

昨天介绍了一则消息:创新制止的那个天才程序员开发的Audigy声卡Vista驱动 ,就是创新声卡这方面的事,一个程序员,自发的拓展了创新声卡的驱动,并提供给广大网友使用,引发了一些骚动,今天,又想新的风波……

自从Daniel_K,一位程序员在Creative论坛披露Creative一位高官要求他停止和散发自制的Creative声卡Vista驱动后,网络上迅速掀起了声势浩大的抗议声潮。Daniel_K发起的这个帖子已经呈爆炸式增长,原来的17页已经迅速增长到210页。人们纷纷谴责Creatvie,并发泄着对Creative的愤怒和不满。

一位玩家对Creative已经失去了信心:"从Soundblaster 16开始,包括Creative音箱,DVD驱动器和XiFi声卡,我已经买了超过1000美元的Creative产品。我最近的购买是用Xi-Fi声卡取代了Audigy 2 ZS声卡。现在正是Creative的关键时期,因为独立显卡正在萎缩,Creative需要高端发烧友市场,那么为什么要抛弃我们呢?而另一位则拿 NVIDIA为例,指出Creative不应该放弃对产产品的支持:"我可以提醒你们,NVIDIA仍在支持包括GeForce 5, 6, 7和8在内的新老显卡。他们有XP,XP64,Vista,Linux和Mac OS驱动。老显卡仍可以获得性能提升而不是成为废品。"

一些更为激进的玩家甚至注册了一个名为抵制Creative的网站,号召大家停止购买Creative的产品,网页上如是写到:

" 自从Windows Vista发布起,这家公司就不愿为他们的旗舰产品开发驱动,尽管实际上该产品可以在Vista上驱动。一位名叫daniel_k的用户一个人承担了这个工作并成为网友和消费者获取驱动的主要贡献者。这个用户编写了Vista驱动但该公司却并不高兴。事实上,Creative这样做是为了让人们购买可以被"适当驱动支持的"更新的声卡产品。他们的抢钱行径是如此昭然若揭和令人震惊。

他们可以以盗窃知识产权为由,以采取法律行动为由威胁daniel_k来要求他停止开发驱动,但实际上,他们也欺骗和愚弄了那些从daniel_k工作中受益的消费者。"

具有讽刺意义的是,在Creative以法律作为威胁利器的同时,一些用户已经准备针对Creative的群体诉讼案。他们认为,Creative在声卡包装上贴上了Vista Ready标签,但事实上,声卡却无法在Vista下正常工作。

这不仅仅是驱动方面的利益以及尊严伤害,而是最根本的,创新这个行为挫伤了广大网民对于网络共享自由精神的信仰,对于强者的这种行为的抵触,对于这种做法的极度反感;而事实上,创新的这个驱动,不影响使用你创新的硬件啊,驱动只是你商业环节当中的一个售后服务环节,这是一个补充,而不是一个竞争!

对于Creative而言,重要的不是一款驱动的缺失,而是消费者信任的丧失。大品牌,很多大品牌,得学习,得领悟这个新的情况了。

Discuz!论坛详细安装向导

0

分类 : 技术文摘 | 发表时间 08-08-2006

现在php和mysql的组合非常火,前一段时间玩phpwind,感觉还是不错;这一段时间,又把discuz下载下来测试了一把,果然不错;事实上,最新版本5.1的,也已经出来了;以下测试版本是4.1的……

  平台:WINDOWS XP SP2 + APMServ5.1.2

  测试环境:PHP程序+asp程序+asp.net程序+cgi程序;

  测试推荐:APMServ5.1.2组合服务器(这个组合是全能的)

  程序版本:Discuz! 4.10

  一、安装Discuz!论坛

  APMServ5.1.2的默认访问路径为\APMServ5.1.2\www,在WWW文件下新建了Discuz! 文件夹,把Discuz!论坛安装目录复制到Discuz!文件夹中,测试地址变为:

http://127.0.0.1/Discuz!/



  运行:

http://127.0.0.1/Discuz!/

浏览器会提示:Access denied for user:

[url=mailto:'dbuser@localhost']‘dbuser@localhost’[/url]

(Using password: YES) 错误提示:论坛数据库错误。



图1 未安装数据库时提示的错误

  解释:这个是因为还没有安装Discuz!论坛数据库,所以有错误提示。

  运行:

http://127.0.0.1/Discuz!/install.php

,系统会自动转到Discuz!论坛的安装界面。

  Discuz!安装文件夹内有4个安装语言包供您选择,各位根据自己的需要进行选择。现在选择[简体中文 GBK]格式。

  小贴士:若环境用的是国外php+sql,推荐使用[简体中文 UTF-8]语言包,因为这样大大的减少了安装过程中出现乱码的情况!

  点[简体中文 GBK]进入下一安装步骤。



图2 选择合适的语言

  出现Discuz!系列软件的授权介绍等说明,点击“我完全同意”进入安装的下一步骤。



图3 “同意”并开始安装过程

  根据空间服务商提供的资料填写完整,如有不明白请咨询服务提供商。(如果还是不太明白,干脆就制作一个此项目表格,传给服务商,让服务商帮你填写完毕。)

  此出有两点需要注意:1)填写的资料是否正确?2)是否拥有数据库空间的管理权限?如果没有管理权限,请马上联系空间管理员。

  在这里填写的是系统默认的数值,点保存配置信息进入安装下一步骤。

&namecode=pcedu&subnamecode=pcedu_index’ target=_blank>





图4 填写相关信息

  检查空间的文件权限与运行论坛环境的差异,要是发现不同的话就马上进入你的FTP选择文件设置他的写权限为777。

&namecode=pcedu&subnamecode=pcedu_index’ target=_blank>





图5 设置文件夹属性(+点击上图可放大)

  填写论坛管理员的信息,一定要记住这些资料。写完以后点击“开始安装Discuz!”进入论坛装下一步。



图6 开始安装

  系统正在新建论坛运行需要的数据库表,安装完毕后,在页面最下面列出设置好的管理员ID和密码。



图7 安装成功

  现在就安装完毕Discuz!论坛了。点击进入论坛。

&namecode=pcedu&subnamecode=pcedu_index’ target=_blank>





图8 论坛首页(+点击上图可放大)

  选择“登录”,输入刚才设置的管理员ID和密码点提交登陆论坛。



图9 登陆后台

  进入论坛,选“系统设置”,系统会新开窗口打开管理界面。



图10 进入“系统设置”
<
br/>

图11 后台设置

  在后台设置完相关设置以后,论坛就可以正常运行了!

  二、安装常见问题

  1.什么是二进制(BINARY)上传?如何设置并使用二进制上传?

  答:所有的 FTP 服务器端和客户端软件均支持两种方式的文件上传,其一为文本(ASCII)上传,其二为二进制(BINARY)上传。Discuz! 要求用户在上传 PHP 程序文件时,使用二进制的上传方式进行。原因为某些程序文件经过编译处理,使用一般的文本上传会造成文件传输错误,影响您的使用。您可以在所有的 FTP 客户端软件中找到有关二进制上传的选项,例如 LeapFTP, CuteFTP 等。以下举例说明这两种客户端软件设置 PHP 文件二进制上传的方法。

  LeapFTP:在 Options(选项)菜单中选择 Parameters(参数设置),选择其中的[ASCII 扩展名],出现列表后,选中其中的“*.PHP”,点右边的[删除],再点右边的[确定]即可。如果“*.PHP”项目不存在的话,可直接使用,不需另行设置。

  CuteFTP:进入软件后按 ALT+F7 进入 Global Options(全局选项),选择[传输]下面的[ASCII 类型],在右边列表框中找到名为“PHP”的项目,选定后点右边的[删除],再点下面的[确定]即可。如果“PHP”项目不存在的话,可直接使用,不需另行设置。



  2.如何更改文件属性?



  答:只有在服务器使用 Linux/Unix 类操作系统时,才需要在安装时对文件属性进行更改,Windows 系统的服务器不需要更改属性。您可以在 FTP 软件中,选定需要更改属性的文件或目录,然后点右键选择 CHMOD(更改文件属性),输入属性值(如 777),再确定即可。如果您的 FTP 软件提示无权更改属性,而您又没有办法通过 Shell 的方式登入主机,请与空间服务商联系,要求其授予您 CHMOD 的权限。



  3.为什么访问所有 .php 页面都会出现类似程序代码一样的信息?



  答:这种情况是因为您的服务器上 PHP 语言支持环境没有被安装,或配置不正确。请自行安装,或向空间提供商寻求解决。



  4.为什么软件提示 Unable to read xxx bytes in xxx.php in xx 这样的信息?



  答:因为您没有使用二进制(BINARY)上传 PHP 文件,请使用 FTP 软件将所有 PHP 文件重新传输一次。



  5.为什么论坛提示 Caches successfully created, please refresh?



  答:这是缓存自动更新的提示信息,通常在初次安装完成后,或缓存文件不存在由系统自动重新建立的时候出现。这个提示为正常现象,一般仅出现一次,刷新该页面即可。



  6.为什么论坛提示 Can not write to cache files, please check directory ./forumdata/ and ./forumdata/cache/ .?



  答:出现这个提示通常因为 Cache 文件无法写入。使用 Unix 类操作系统的用户,请检查“./forumdata/和“./forumdata/cache/”和“./forumdata/templates/”这三个目录是否设置了可写属性(777),同时如果您是从其他服务器上转移论坛而来,除了需要对上述文件设置属性以外,用以下两种方式也可以解决:



  将上述三个目录中的后两个目录中的所有文件全部删除;或将上述三个目录中下的所有文件及目录属性均设置为777。



  7.如果数据库不存在,安装程序可以自动建立数据库吗?



  答:Discuz! 安装程序提供这个功能,前提是您的账号要有建库的权限才行,否则只能使用已有的数据库。



  8.一般情况下,需要修改 config.inc.php 中的什么设置?



  答:一般应用只要修改 $dbname,$dbuser,$dbpw,$dbhost,$adminemail 这五个变量,而其他保留默认或等待对论坛软件更加熟悉以后再进行修改。上面这五个变量,除了 $adminemail 外,其他均用于连接数据库,在您服务器空间的说明中都会给出,如果其中之一配置不正确就会出现数据库无法连接的错误提示而无法使用 Discuz! 论坛。如果您对此不了解,请咨询您的空间服务商,如何设置这四个变量参数。



  9.安装后论坛提示 Access denied for user@localhost using password YES’,该如何解决?



  答:这个提示意味着您的数据库连接参数设置的不正确,有两种可能:其一为数据库账号或密码错误;其二为数据库账号和密码均正确,但无权访问指定的数据库。遇到此种情况,请您咨询您的空间服务商,针对您的空间该如何配置数据库连接参数。



  10.为什么安装成功,进入系统设置后提示 Please delete install.php via FTP?



  答:因为您没有按照说明将 install.php 删除,会产生安全问题,使用 FTP 软件将其删除后这个提示自动消失。



  11.Discuz! 文件及目录结构的形式是怎样的?



  答:Discuz! 软件包通常以 tgz(tar.gz)或 zip 的格式压缩,绝大多数压缩软件可解开此类压缩格式的软件包,解压后的目录结构如下所示:



  ./users_guide.htm   用户使用说明书(本文档)

  ./usersguide/     用户使用说明书内容与图片目录

  ./upload/   程序及相关文件(此目录中的内容需上传)

  *.php           Discuz! 程序



  install.php       Discuz! 安装脚本

  config.inc.php     论坛基本配置,安装前请修改本文件

  mail_config.inc.php   邮件发送配置

  whatsnew.php       网页新帖调用程序

  admin/             系统设置程序目录

  *.php             系统设置程序集

  attachments/         空目录,请设置属性 777,用于存放附件

  customavatars/       空目录,请设置属性 777,用于存放上传头像

  forumdata/           空目录,请设置属性 777,用于存放备份及记录数据

  templates/         空目录,请设置属性 777,用于存放编译模板文件

  cache/             空目录,请设置属性 777,用于存放系统缓存

  templates/           模板文件目录

  default/             系统默认模板目录

  *.htm               系统默认模板文件

  *.lang.php           系统默认语言包文件

  images/               图片文件目录

  attachicons/           附件图标图片目录

  avatars/             论坛提供头像图片目录

  
common/               公用图片目录

  default/               系统默认风格图片目录

  smilies/             Smilies 图片目录

  stats/             流量统计图片目录

  include/               引用包含目录

  *.php                 引用包含程序集



  plugins/             空目录,用于存放插件程序

  ./utilities/           论坛附带工具

  repair.php             数据库修复工具

  restore.php               分卷备份数据恢复工具

  testmail.php               邮件发送测试工具

  upgrade(x).php               论坛升级程序


修改zblog小有所成

0

分类 : 网络日志 | 发表时间 18-06-2006

昨天晚上得到月光博客的一句提醒,总算让zblog正常显示在主页上了,显示以后,紧接着就是许多的个性修改,好不容易大概差不多,就熬到凌晨三点,上午还要上课,虽然研究起来津津有味,但不得不放弃一会了;

今天晚上本打算早点休息了,到网上浏览了一会,又接着修改起来;明天要正常上班了,现在不去已经11点20了,洗澡睡觉吧;明天也许上班时候有空,再小改小改吧!

觉得zblog确实不错,开始摸索着有些困难,时间稍长一些,感觉很好;但有些细节还得请教前辈,以后免不了向月光博客多多学习!他的博客不管是程序还是内容,都很个性,很不错!

如何写一份好的工程师简历

0

分类 : 网络日志 | 发表时间 16-06-2006

2006年6月14日 上午 10:15:00
发表者:王忻,Google 工程师

最近三年作为 Google(谷歌)的软件工程师,我每周会帮人事部门审查简历,决定要不要给他们面试。Google 这几年的发展让很多许多优秀的工程师都前来申请。到目前为止,我已经看了上千份简历,有些简历留下的印象比别的好很多。尤其是最近亲戚朋友常常问我如何修改他们的简历,所以我积累了一些常见的错误避免的提议,在此跟大家交流一下。

1.谈到你做过的技术时,应该提到用的程序语言、你的个人贡献和产品细节。

有时我看到有人把过去的经验在简历上一笔带过,比如说:

• 在三人小组里,为电子邮件软件写了些 features。

这是远远不够的,看简历的人希望了解你做的工作的难度和对本公司有多少联系,所以你最好写的具体一些。譬如:

• 用 C++ 语言写了网络电子邮件的自动 backups。在三人小组里,专门负责设计和写储存服务器。从设计开始, 一年后把这个功能 feature 的用户推到了三千。

2.多讲事实, 少用形容词。

看简历的人读你的简历时,需要做判断,所以在简历里需要事实和数目。如果你写“迅速的提高了软件的操作效率”,看简历的人很难判断你成就的难度。但如果你写“在3个星期内,把软件的操作效率提高了40%” 就好多了。

有些谦虚的朋友们不愿意把话说满,所以你也可以用这个办法。你如果说自己“突出”或“在项目上常常被请去救火”,听起来难免会有点骄傲。但你也可以用不能否认的事实来说明你的观点,如“《纽约日报》评这个产品为‘突出’”,或“加入了三个原本已落后于计划的项目小组,但经过努力和组员一起把它们都按时完成了。”

3.你获得的奖、商业的荣誉或表扬、受用户欢迎的产品和你做过的有难度的业余项目都该包括在简历里。

我有位朋友在硅谷一个著名的硬件公司做了六年,她设计的 IP phone(网络电话)为公司赚了上亿的收入,被公司与商业报道多次评了奖。我有一次在旧金山的高速公路上驾车时,看到路边有她产品的广告牌;还有一次我去上海度假时,竟然发现上海公路边上也有!

不久,这位朋友决定换工作,请我看看她的简历。我惊讶的发现,她居然轻描淡写的写了一句– “1998 – 2004:网络电话产品的硬件工程师组长” 和她的职责。

“产品赢的奖呢?它为公司赚的钱呢?” 我追问到。

“那些也该写吗?” 她说。

当然该写。

有人问,业余时间做的项目可不可以写?我觉得只要你的项目有代表性能说明对你的能力,都该包括。

4.分清主次,删掉相比之下不起眼的成绩,以免冲淡更加突出的成绩。

有朋友问,写简历是不是写的越多越好?譬如:

在甲公司做暑假实习生——
* 改善电子游戏的数值分类算法, 减少了内存要求 10%。
* 用 Java 写了 3000 行用户界面程序。
* 每周做两小时的人工测试。

你在申请软件工程师的职位时,我觉得前两点比较相关,第三点其实就不必写了。有时我看到有的简历里会提到,”按时完成了任务,产品符合原计划规格”。但读简历的人通常会认为这是理所当然的,而你把这些声明出来反而减弱简历的效果。

合租服务器大解密

0

分类 : 业界动态 | 发表时间 15-06-2006

作者:aileenguan
来源:绿光互联(http://www.phpidc.net)

搞合租也算是有些时间了,经历了一些,也有一些经验和感触,愿意拿出来跟朋友们分享。请注意,在这里,只是用经验,用事实,用监测说话,而且是在大量机器基础上得出的结论。

1.首先要解释一个带宽的问题。
有人号称服务器100Mb带宽,却不肯提共享两个字。事实上,独占一条100Mb带宽每个月的费用都得在千元左右,这样,仅仅是带宽一年都得上万的费用。所以一般的IDC是不会让你独占这个带宽,正常来讲,这个100M带宽要分配给15台左右的机器,黑心的服务器商可能分配给更多的机器。而且,一般会给每一个机器设置带宽上限为10M上下。所以,记住,不会有100M独占的机器给你用,所谓的100M基本都是共享,分配到一个服务器上的也就是10M上下

这里不得不提到一个带宽单位的问题,要注意KB不等于Kb MB也不等于Mb B代表着byte,而b则是bit 1B=8b 所以由此类推,其实10Mb的带宽在你机器上的理论上的速度上限只有1.25MB 而事实上,除去部分头文件信息,这个数量就更少了。

那么,有人会提出疑问了,这样一个带宽,让服务器上那么多的用户使用,够吗?答案是肯定的,只要你不提供下载,就web访问而言,这是很足够了。本人现在几台服务器上均安装了iis流量的监测工具,虽然小有限制,但是在访问量高的时候,同时的带宽也就能限制在1MB/s左右。带宽是够的。

2.内存的问题
应该说参与合租的站点都不会太大,因为本人是在PHPWind论坛基础上号召起来的,所以参与的用户多数都是要自己做论坛的,一开始,考虑的配置是P4 3.0 (64位) 1G DDR400内存,这样子。但是很快发现,就算按照原本的20个人的用户,这个内存也很快被耗尽,此前就听人说论坛是资源大户,就现在来看,mysql吃内存太厉害,在2003+IIS6+Mysql平台上,常常mysql就要占去服务器高达四五百兆的内存,这就占用了服务器物理内存的50%。再加上iis占用,还有其他一些服务,基本上内存很容易告罄。所以后来的机器,内存只好自己掏钱一律扩容了,因为没有办法。我觉得最佳的配置应该是2G内存,1G是绝对不够的。再多无益,服务器的资源这样搭配是比较好的。

3.CPU的问题
与内存持续走高正好相反的是,对iis的应用程序池适当限制,可以控制CPU即使在峰值的时候也不会太高,现在当前时间是19:47 算是访问量开始变高的时候,我监测几台服务器的CPU使用率,均在40%徘徊。如果访问量在大一点,也就百分之六七十。曾经有一个自认为资深的朋友对这个服务器配置嗤之以鼻,认为根本不能用。但是他却忽略了两点:第一、倘若流量达到一定程度,是没有必要还跟人合租服务器的。其二、服务器的配置如果提高,相应的租赁的用户所要承担的费用则也要提高。但是不得不说的是,在这个配置的CPU,在备份mysql数据的时候,常常要占用相当高的CPU,我曾经在自己的机器上备份mysql数据,如果数据量过大,我个人的机器都几乎处于当机状态。(个人电脑P4 2.4G 1G内存)。所以,必须承认,这个配置的服务器,在论坛数据备份的时候,常常会出现问题。解决的办法就是用单独的应用程序池来做一个phpmyadmin站点,不限CPU使用,来解决问题。好在其一,倘若你的论坛数据库好几百兆,而你又是合租服务器,那么你没有必要天天去备份,如果那样,两三天之后,你的服务器空间就让备份文件占据完了。

4.服务器对用户流量等限制的问题
开始的时候,也想让大家用的爽,用得自在,所以也不愿意做任何限制,不限制iis,不限制cpu,不限之内存等等,但是后来才发现,就好像这个天底下的任何地方一样,不自觉的人总是太多,而且有的人程序出问题之后可能影响到其他人。所以到最后只是得到一个这样的结论对服务器不做任何限制是一个天大的谎言,那是不可能的。所以最理想的方法是建立独立的应用程序池,然后每一个用户占用一个应用程序池,在进行对CPU份额、内存使用、带宽占用的限制。服务器上20个用户,我一般限制每一个人最高8%的CPU,如果你去计算8%*20=160%,那无疑你是愚蠢的。一个服务器上的站点总是有大有小,而且,也基本不可能在同一瞬间都达到各自的峰值。所以有些小用户可能cpu永远也就1% 2%

5.服务器空间的小,5G = 10G = 20G
空间大可以说是合租服务器最大的亮点,但事实上,这个亮点也有值得商榷的地方,标榜的网络空间大也是服务器合租最大的幌子。常常有人问我单租不单租1G的空间。我都是一口拒绝,其实,磁盘空间只是一个幌子而已,因为可以说没有几个人用得了那么大的空间,给你1G的空间,但是你的cpu和内存份额仍然是一样,这有什么意义呢?其实可以说你跟5G的用户享受了一样的待遇。真正决定服务器合租价格的是分配给你的CPU和内存,而不是空间大小 所以如果你问我1G怎么卖,我会告诉你 Never. 但是如果你说空间可以不可以多给你几G,我会告诉你,No problem. 同样的CPU,同样的内存,如果我要1G单卖,1G300吧。但是我已知的成本固定,那么这就意味着我需要更多的用户才能拿回成本,那么,是否意味着你所使用的CPU份额就要更低呢?可以说零售小额空间,是某种程度上对合租用户权益的侵害。

6.电信网通双线以及相关问题
很多用户希望有一个双线机房,这样就能保证南北方访问的速度都很快,众所周知,当今中国ISP天下,南方电信北方网通,间或又有移动、铁通等也能够提供ISP接入服务。网络之间的互访互连速度慢,这是举国尽知的事实。如果是电信机房,是不敢打包票说网通的用户访问也能够如同电信用户一样快的,而作为网通机房,电信的用户去访问,那速度也是要比网通自己的用户去访问打一个折扣。应该说对于相关业务的具体内涵,本人也就是略知一二,曾和一个专门搞IDC的朋友谈,说及双线机房,他告诉我:双线机房都是个人搞的小机房,真正的骨干级机房,是不可能搞双线的,如果那样,还存在什么互联互通的问题?思索一二,也觉得有些道理。然后便访网上的主流IDC,确实难觅双线机房的踪迹。

7.合租服务器价格
一台普通的服务器租赁的一年的费用一般在1万元左右,便宜的可能在八九千,再低我就要对他的服务质量——譬如机器的性能,网络服务的质量产生怀疑了。因为这个价格是很容易计算出来的。服务器托管一年的费用一般在四千左右,如果一台机器一年送产权,莫非一台机器只价值2000元?一个P4 3.0 64位CPU的价钱大家都可以查得到。一般来说都是第二年送产权。很多合租者所看重的则是这个产权。而用户则是看中的便宜,空间大。组织有信誉的、值得信赖的合租,双方受益,反之则都彼此头疼不已。想要让服务器稳定的运行,并不是一件太简单的事情,经验的积累和自身的技术同样重要,两者不可或缺。

增强对木马和病毒防范之几大绝招

0

分类 : 系统安全 | 发表时间 15-06-2006

信息来源:http://gooo.77169.com/archives/2006/77592.html

一、问题的提出

  大部分的木马及部分的病毒是通过注册表的自启动项或文件关联或通过系统服务实现自启动的,那是否有一种方法可以防止木马或病毒修改注册表项及增加服务呢?

  二、问题的解决

  windows2000/xp/2003的注册表是可以设置权限的,只是我们比较少用到。设置以下注册表键的权限:

  1、设置注册表自启动项为everyone只读(Run、RunOnce、RunService),防止木马、病毒通过自启动项目启动
  2、设置.txt、.com、.exe、.inf、.ini、.bat等等文件关联为everyone只读,防止木马、病毒通过文件关联启动
  3、设置注册表HKLM/SYSTEM/CurrentControlSet/Services为everyone只读,防止木马、病毒以”服务”方式启动

  注册表键的权限设置可以通过以下方式实现:

  1、如果在域环境里,可能通过活动目录的组策略实现的

  2、本地计算机的组策略来(命令行用secedit)

  3、本文通过setacl这个程序加批处理实现,可以在http://www.helge.mynetcologne.de/setacl/下载

  4、手工操作可以通过regedt32(windows2000系统,在菜单“安全”下的“权限”)或regedit(windows2003/xp,在“编辑”菜单下的“权限”)

  批处理代码在后面给出。

  如果只有users组权限,以上键值默认是只读的,就可以不用这么麻烦了。

  三、适用人群

  1)、对电脑不是很熟悉,不经常安装/卸载软件的人

  2)、喜欢在网上下载软件安装的朋友

  3)、每台电脑的操作人员都有管理员权限,这些人的电脑水平又参差不齐的企业

  四、还存在的问题

  1)、安装杀毒软件,打补丁的时候都可能对那些注册表进行操作,这样就得先恢复权限设置,再安装,安装完成后重新设置。不方便

  2)、防不住3721,不知是不是3721的权限太高了(听说3721是通过驱动程序启动的,有ring 0级权限)

  3)、只适合windows2000/xp/2003,其他的就没办法了

  4)、只能对付那些简单的病毒和木马

  五、其他

  大家看完本文看,可能禁不住大骂:神经病,两三句话就说完的事,非得搞得像论文,写这么一大堆,浪费我时间。如果真的是这样,那真的是对不起了。只因为公司在实施ISO,我也觉得ISO里提倡的东西蛮好的,为了规范化我的文档,我就多做些练习了。

  打包好的程序可以到:
https://www.xfocus.net/php/tools.php?sub=down&tid=741下载。

  六、批处理源代码

@goto start
==============================================================
名称:反特洛伊木马
功能:

1、禁用自启动项目(run runonce runservices)
2、禁止修改.txt、.com、.exe、.inf、.ini、.bat等等文件关联
3、禁止修改”服务”信息

原理:设置注册表权限为只读

版本修订情况

版本号 修订日期 修订人 修订内容
1.0 2004-12-22 netu0 创建本脚本
==============================================================
:start
@SETLOCAL
@rem 活动代码页设为中文
@chcp 936>nul 2>nul
@echo.
@echo ************************************************************
@echo #
@echo #         欢迎使用反特洛伊木马程序
@echo #
@echo #
@echo ************************************************************

:chkOS
@echo.
@ver find “2000″ > nul 2>nul
@if “%ERRORLEVEL%”==”0″ goto :2000
@ver find “Microsoft Windows [版本 5" > nul 2>nul
@if "%ERRORLEVEL%"=="0" goto :2003
@ver find "XP" > nul 2>nul
@if "%ERRORLEVEL%"=="0" goto :XP
@echo.
@echo #您的操作系统不是Windows 2000/XP/2003中的一种,无法使用。
@goto quit

@rem 在下面语句插不同系统的不同命令
:2000
@set UpdatePolicy=secedit /refreshpolicy machine_policy>nul 2>nul
@goto Selection

:XP
@set UpdatePolicy=GPUpdate /Force>nul 2>nul
@goto Selection

:2003
@set UpdatePolicy=GPUpdate /Force>nul 2>nul
@goto Selection

:Selection
@rem User Choice
@echo.
@echo 请输入以下选项前面的数字
@echo.
@echo 1: 安装反特洛伊木马保护
@echo 2: 删除反特洛伊木马保护(恢复默认设置)
@echo 3: 查看技术信息
@echo 4: 退出
@echo.
@set /p UserSelection=输入您的选择(1、2、3、4)
@if "%UserSelection%"=="1" goto install
@if "%UserSelection%"=="2" goto uninstall
@if "%UserSelection%"=="3" goto information
@if "%UserSelection%"=="4" goto quit
@rem 输入其他字符
@cls
@goto Selection

:information
@cls
@echo

============================================================
@echo #
@echo #         欢迎使用反特洛伊木马程序
@echo #
@echo #功能:
@echo #
@echo # 1、设置注册表自启动项为只读(Run、RunOnce、RunService),
@echo # 防止木马、病毒通过自启动项目启动
@echo # 2、设置.txt、.com、.exe、.inf、.ini、.bat等等文件关联为只读,
@echo # 防止木马、病毒通过文件关联启动
@echo # 3、设置注册表HKLM/SYSTEM/CurrentControlSet/Services为只读
@echo # 防止木马、病毒以"服务"方式启动
@echo #
@echo #注意事项:
@echo # 某些安装程序也会用到以上注册表键,请在安装前运行本程序,
@echo # 然后选择2,恢复默认设置。安装完成后,重新运行本程序,
@echo # 然后选择1,实施反特洛伊木马保护
@echo ==============================================================
@echo.
@echo 按任意键,返回选择
@pause>nul 2>nul
@cls
@goto Selection
:install
@set OP=/grant everyone /read /p:no_dont_copy
@goto Doit
:uninstall
@set OP=/revoke everyone /read /p:yes
@goto Doit
:D oit
@echo.
@echo 正在执行操作...
@rem HKLM
@setacl machine/SOFTWARE/Microsoft/Windows/CurrentVersion/Run /registry %OP%>nul 2>nul
@setacl machine/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce /registry %OP%>nul 2>nul
@setacl machine/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServices /registry %OP%>nul 2>nul
@setacl machine/SOFTWARE/Microsoft/Windows/CurrentVersion/RunEX /registry %OP%>nul 2>nul
@setacl machine/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnceEX /registry %OP%>nul 2>nul
@setacl machine/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServicesEx /registry %OP%>nul 2>nul

@rem HKCU
@setacl CURRENT_USER/SOFTWARE/Microsoft/Windows/CurrentVersion/Run /registry %OP%>nul 2>nul
@setacl CURRENT_USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce /registry %OP%>nul 2>nul
@setacl CURRENT_USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServices /registry %OP%>nul 2>nul
@setacl CURRENT_USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunEX /registry %OP%>nul 2>nul
@setacl CURRENT_USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnceEX /registry %OP%>nul 2>nul
@setacl CURRENT_USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServicesEx /registry %OP%>nul 2>nul
@setacl CURRENT_USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServicesOnce /registry %OP%>nul 2>nul

@rem USERS
@setacl USER/SOFTWARE/Microsoft/Windows/CurrentVersion/Run /registry %OP%>nul 2>nul
@setacl USER/SOFTWARE/M
icrosoft/Windows/CurrentVersion/RunOnce /registry %OP%>nul 2>nul
@setacl USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServices /registry %OP%>nul 2>nul
@setacl USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunEX /registry %OP%>nul 2>nul
@setacl USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnceEX /registry %OP%>nul 2>nul
@setacl USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServicesEx /registry %OP%>nul 2>nul
@setacl USER/SOFTWARE/Microsoft/Windows/CurrentVersion/RunServicesOnce /registry %OP%>nul 2>nul

@rem Services
@setacl MACHINE/SYSTEM/CurrentControlSet/Services /registry %OP%>nul 2>nul

@rem CLASSES_ROOT
@setacl CLASSES_ROOT/exefile/shell/open/command /registry %OP%>nul 2>nul
@setacl CLASSES_ROOT/inifile/shell/open/command /registry %OP%>nul 2>nul
@setacl CLASSES_ROOT/txtfile/shell/open/command /registry %OP%>nul 2>nul
@setacl CLASSES_ROOT/comfile/shell/open/command /registry %OP%>nul 2>nul
@setacl CLASSES_ROOT/batfile/shell/open/command /registry %OP%>nul 2>nul
@setacl CLASSES_ROOT/inffile/shell/open/command /registry %OP%>nul 2>nul

@echo 正在更新帐户策略、审核策略......
@REM [刷新本地安全策略]
@%UpdatePolicy%>nul 2>nul
@echo 帐户策略、审核策略更新完成

:complete
@echo 操作完成
@echo.
@echo.
@echo 请按任意键退出。
@pause>nul 2>nul

:quit
@rem Clear
@del %systemroot%/system32/setacl.exe>nul 2>nul
@del %systemroot%/system32/AntiTrojanhorse.bat>nul 2>nul

@ENDLOCAL

一个在黑客界引起轰动的菜鸟教材–编程系列

0

分类 : 网络日志 | 发表时间 15-06-2006

跟我学编程系列
原黑白新区记忆碎片的帖子!转贴上来,供大家学习!!!
发现大部分黑白的朋友都不会编程, 这可不是件好事, 所以这次我就写了一个简单的编程教程, 讲一下VBScript. 主要面向菜鸟, 懂得编程的朋友就不要浪费时间了, 如果你想接触以下VBScript也可以, 但既然有编程基础推荐直接去找一些参考书来读, 会比较快.
什么是VBScript呢? VBScript的全称是:Microsoft Visual Basic Script Editon.(微软公司可视化BASIC脚本版). 正如其字面所透露的信息, VBS(VBScript的进一步简写)是基于Visual Basic的脚本语言. 我进一步解释一下, Microsoft Visual Basic是微软公司出品的一套可视化编程工具, 语法基于Basic. 脚本语言, 就是不编译成二进制文件, 直接由宿主(host)解释源代码并执行, 简单点说就是你写的程序不需要编译成.exe, 而是直接给用户发送.vbs的源程序, 用户就能执行了.
  我知道菜鸟现在最关心的就是用什么工具来开发VBS程序了, 答案是:记事本(Notepad).我不是开玩笑, 其实任何一种文本编辑器都可以用来开发VBS开发, 只不过记事本是由系统自带的, 比较好找而已. 尽管如此, 我还是建议你去下载一个专业的文本编辑器, 因为这些工具可以提供 “语法高亮”等功能, 更加方便开发, 用哪一个随你喜好, 我比较喜欢Edit Plus (2.10).
  OK, 我们先来写一个VBScript程序热热身.
REM 输入并回显你的名字
‘使用InputBox和Msgbox函数
Dim name,msg
msg=”请输入你的名字:”
name=Inputbox(msg,”名称”)
Msgbox(name)
  把上面的程序清单输入到记事本里面, 然后保存为以.vbs为扩展名的文件(“保存类型”里面选择”所有文件”).然后双击运行, 观察运行结果. 注意:请自己输入程序清单, 不要复制->粘贴!
  我来解释一下这个程序, 第一行和第二行的开头分别是”REM”语句和” ‘ “, 这两个东西的作用是相同的, 表示本行是注释行, 就是说这两行什么也不干,只是用来说明这段程序的功能, 版权信息等等. 注释行是程序最重要的部分之一, 尽管它不是必需的, 但对于其他人阅读源代码, 以及自己分析源代码是很有好处的. 好的习惯是在必要的地方加上清晰, 简洁的注释.
  Dim用来声明一个变量, 在VBS中, 变量类型并不是那么重要, 就是说VBS会帮你自动识别变量类型, 而且变量在使用前不一定要先声明, 程序会动态分配变量空间. 在VBS中你不用考虑name储存的是一个整数还是一个小数(学名叫”浮点数”), 也不用考虑是不是字符串(一串字符, 比如:”Hello World”), VBS会自动帮你搞定. 所以第三行语句可以删除, 效果不会变, 但我强烈反对这么做, 一个变量的基本原则就是:先声明,后使用.变量名用字母开头,可以使用下划线,数字, 但不能使用vbs已经定义的字, 比如dim, 也不能是纯数字.
  下一行被称之为”赋值”, “=”是赋值符号, 并不是数学中的等于号, 尽管看起来一样.这是正统的理解, 你要理解成等于也没有什么不可. 赋值号的左边是一个变量, 右边是要赋给变量的值, 经过赋值以后, msg这个变量在程序中等同于”请输入你的名字:”这个字符串,但当msg被再次复制的时候, 原值就会消失. 不光字符串, 其他任何变量都这样被赋值, 例如: a=2, b=12.222等等.
  再往下,Inputbox和Msgbox是VBS内建的函数, 一个函数就相当于一个”黑箱”, 有输入(参数)和输出(返回值), 你可以不用了解函数是怎么运作的, 只要了解这个函数能干什么就行了, 我们也可以定义自己的函数, 不过那要等到以后再讲. 现在我们只要了解, 一个函数可以有返回值也可以没有, 可以有参数也可以没有. 例如Inputbox就是有返回值的函数, 我们用赋值号左边的变量来”接”住InputBox的返回值–就是你输入的内容. 在inputbox右边的括号里是参数列表, 每个参数用”,”分隔开, 每个参数有不同的功效, 比如第一个参数会显示在提示里, 我们把msg这个变量作为第一个参数传给了Inputbox 函数, 而msg=”请输入你的名字:”, 所以我们在对话框的提示栏就会看到”请输入你的名字:” 第二个参数是对话框的标题, 我们用直接量(学名叫”常量”, 这里是”字符串常量”)传递给函数, 当然你也可以传递变量. Inputbox还有很多参数, 比如你在”名称”后面再加一个”,”然后输入随便一串字符(字符串,用双引号”"包裹起来的一串字符叫做字符串)然后运行, 看看结果. 你会发现用于输入的文本框有了默认的值, 这就是第三个参数的作用.
  Msgbox函数是用来输出的函数, 在VBS中没有专门的输出函数(BASIC中的print,C中的printf), 所以我们只能用对话框来观察输出结果, Msgbox的必要参数只有一个, 就是要输出的内容, 在这种情况下, 我们不需要理会msgbox的返回值. 关于Msgbox和Inputbox我们以后还会在讨论, 今天只是热热身, 到此为止.
要点:
1) 注释(以REM或’开头)行在程序中不起作用, 但能让别人更容易读懂你的程序.
2) 变量好像一个盒子, 或一个代号, 可以代表你想代表的东西. 变量赋值使用”=”
3) 以”"包裹起来的字符称之为”字符串”
4) 函数像一个”黑箱”, 有参数和返回值, 用”=”左边的变量可以接住返回值
5) Inputbox函数弹出一个输入对话框,Msgbox则用于输出
作业:
1) 试验Inputbox的第三个参数
2) 写一段程序输出你的年龄
3) 写一段程序进行3次输入, 分别输入你和你父母的姓名(要求显示提示), 并分3次输出
第二篇:
我真没想到, 第一次的作业竟然有人不会.
  看来要讲的非常非常细致才行, 嗯, 今天讲各种”量”和基本运算
  先说常量, 这个比较简单.
  什么是常量呢, 常量就是其值不可变化的量.
  常量分为两种:第一种, 自然常量. 这叫是因为它们本身就是常量, 你怎么更改21的值呢? 他永远都是21, 不可能变成46
如果你在程序中使用”21=46″, 这样的语句将会引发一个错误. 同样的, 字符串也是常量 (还记得字符串吗? 就是包裹在”"之间的一串字符), “Hello World”就是一个例子, 如果你使用”Hello World”=”Bye”这样的语句同样会引发一个错误. 你能举出自然常量的更多例子吗?
  第二种, 是我们自己定义的常量,这种量也使用代号, 他们也被赋值, 但和变量的不同点在于, 他们在定义的时候被赋值,以后就不能改变了,如果企图改变将会引发一个错误. 定义一个变量,我们使用”const”这个关键字(关键字的意思是系统定义了有特殊功能的字, 不能作为变量名或常量名使用),格式是:const 常量名=常量值.
例如:
const PI=3.1415926
const NAME=”记忆碎片”
  这样我们就定义了两个常量, PI和NAME, 一般说来, 常量名全部使用大写, 但也可以不用, 随你喜好. 将一些在程序中不需要改变的值定义为常量是个好习惯, 这样能防止不必要的意外. 另外, 使用自定义常量也可以减少你的工作量. 比如:
msgbox(“Hello World”)
msgbox(“Hello World”)
msgbox(“Hello World”)
msgbox(“Hello World”)
msgbox(“Hello World”)
  这个程序输出五次Hello World, 如果你想要改变输出为Bye-Bye, 就必须修改全部程序, 当然你可以手动修改5次, 但如果你要输出1000次呢? 常量就可以替我们解决这个问题:
const hw=”Hello World”
msgbox(hw)
msgbox(hw)
msgbox(hw)
msgbox(hw)
msgbox(hw)
  这样当你要修改输出的时候只要修改hw的值就行了.
  好了, 现在我们来看看编程的第一块重要”基石”:变量. 解释变量最好的办法我觉得是”盒子”, 一个变量好像一
个盒子, 里面只能装一个东西, 当你要装进去别的东西的时候必须把原有的东西拿出来. 这个”盒子”是有名称的, 当你在程序中使用变量的时候, 系统会打开盒子取出里面的东西, 让这些东西参与处理, 而不是盒子. 有些语言是很依赖”盒子”里面装些什么东西, 这样才能找到合适的”盒子”(比如C语言), 但VBS给我提供的是能够自动伸缩的”魔术盒”, 我们不用关心装进去的是什么东西,
VBS会自动调整盒子的大小. 例如:
Dim a1,a2,a3
a1=14
a2=12.23
a3=”Hello”
而不用像C语言那样麻烦: 或者是VB的正规声明(VB可以声明也可以不用)那样:
int a1; Dim a1 as integer
float a2; Dim a2 as Double
char* a3; Dim a3 as strnig
a1=14; a1=14
a2=12.23; a2=12.23
a3=”Hello”; a3=”Hello”
嗯……扯远了……
  变量有什么用呢? 哇, 那用处可大了. 最简单, 你并不能确定程序运行时变量的值, 比如前一节课我们编的输入姓名的程序, 你不能确定InputBox返回的是什么(还记得Inputbox的返回值吗? 就是你输入的内容), 所以你就没有办法应对各种情况, 但我们用name这个”盒子”把用户的名字装起来, 到用的时候我们只要知道name这个盒子的名字就行了, 系统会自己打开他并把里面的内容拿出来用. 再举个例子, 我们编写一个程序计算一个矩形的面积, 比如这个程序要发给小学生使用:
dim a,b,s
a=15
b=12
s=a*b
msgbox(s)
  这样就可以求出长为15,宽为12的矩形的面积了, 是不是很简单? 当然, 这个程序也可以这样写:
dim s
s=15*12
msgbox(s)
  这样看起来程序短了许多, 也节约内存, 但并不是鼓励的做法, 为什么? 请看下面.
  现在, 我们的程序要变得像点样子才行, 谁的程序写出来还要别人修改源代码才能用啊?
  所以, 我们要接受用户的输入, 还记得吗? InputBox函数.
  修改后程序如下:
dim a,b,s
a=inputbox(“请输入矩形的长:”)
b=inputbox(“请输入矩形的宽:”)
s=a*b
msgbox(s)
  ok, 这么一修改, 无论用户输入怎样的数据, 我们都能计算出矩形的面积了. 如果你用s=15*12能改嘛? 当然不行.
  我想你已经发现了, vbs中的数学计算和真正的算术没有什么不同, +,-,*,/,(),[],{}都是一样的用法, 比如:
dim ans
ans=12+32/4+[(23-10)*2]
msgbox(ans)
  四则运算的法则在编程中同样生效, 你可以在编程中重新获得小学时候的乐趣(你恨数学?那就别学电脑了).
  在编程中有一个有趣的运算符是”mod”, 这个运算符叫做”取余运算符”, 就是取得一次除法的余数, 例如
dim a
a=16 mod 5
  你知道a等于几吗? Bingo! 没错, 就是1. 因为16 / 5 =3….1, 所以mod计算的结果就是1.
  还有一个运算符是”^”(就是键盘”6″上面的小箭头), 他表示”乘幂”(或者是”方”) 比如:
dim a,b,c
a=2
b=a^2
c=a^3
msgbox(a)
msgbox(c)
  则b=a*a=4, c=a*a*a=8
  我们一次不要讲太多, 这次就讲到这里, 现在总结一下.
要点:
1) 常量分为自然常量和自定义常量, 常量的值不可修改
2) 变量就像盒子, 我们不在乎盒子里装的是什么, 但一定要知道盒子的名字
3) 四则运算在编程中没有任何不同
4) MOD是取余运算
作业:
1) 编一个程序, 计算圆形的面积, 半径由用户给出 (使用Inputbox) PI取值3.14159
2) 编一个程序取得20 / 3 的余数

第三篇(共六篇):



首先, 我来解决一下上次课程的几个疑问

第一, 那个余数问题, 16 / 5 = 3…1, 是因为我改过前面的部分, 后面的忘了改了, 不好意思.

第二, 请看一下程序清单:

1)
Dim a,b,c
a=inputbox(“a是:”,”输入半径”)
b=Inputbox(“b是:”,”输入半径”)
c=a*2+b*2
Msgbox(c)
这个 输入1、2时是6

2)
Dim a,b,c
a=inputbox(“a是:”,”输入半径”)
b=Inputbox(“b是:”,”输入半径”)
c=(a+b)*2
Msgbox(c)
这个输入1、2时是24

  为什么会不一样呢? 在数学上c=(a+b)*2 和 c=a*2+b*2是等价的, 在VBS中也是如此. 问题出在”+”上, 在VBS中, +不仅仅是加号的意思还表示把两个字符串连接起来, 例如”Hello”+”World”=”HelloWorld” have you understood? 你还记得InoutBox函数的返回值吗? 是字符串! 这就看出问题了吧, 在编程中”1″不等于(<>)1, “1″是一个字符, 而1是一个数, 所以a,b都是字符串变量, “1″+”2″=”12″, 这就好像我们小时跟伙伴开玩笑问他们1+1=?一样, 我们总是笑着说”错啦,应该是11″.但为什么, a可以*2却不发生错误呢? 这时VBS比较智能的一个表现, 如果这个字符串的内容是一个数且对他进行数学运算, 则把字符串强制转换成数参与运算, 如果字符串代表一个数, 但不参加数学运算, 而是参加字符串运算(合并)则当作字符串处理, 所以你看到a+b=12, 这时候a+b的结果(12)是一个字符串, 当它要乘以2的时候就被强制转换成了数字12, 这样我就得到了结果24.

  怎么修改这个程序呢? 我们需要用到另一个内建的函数:int, int函数的功能是将输入值转化成整数值, 我们这样修改:

c=(int(a)+int(b))*2

  这个意思就是把a作为参数传递给int函数, int函数就会返回那个整数(你的输入值), 然后让返回值参与运算, 这样就得到了正确答案.所以,以后如果你用的是inputbox函数的话,最好用int语句加工一下:比如c=int(c) ””c是你自己的变量

  大家是不是觉得这个课程有点枯燥, 呵呵, 变量和运算符部分的确是这样的, 不过多多练习也就好了, 这次, 我们写写真正好玩的东西: 流程控制语句. 这个部分开始才是真正的编程.

  首先介绍判断结构.

  在此之前, 我们先介绍一种简单的变量类型:布尔值(Boolean), 这种变量只有两个可能值:True,Flase,即真或假. 这种变量在某些情况下很有用(比如”开关”). 我们定义一个bool变量的方法和其他变量一样, 赋值也一样, 例如:

dim a,b
a=true
b=false

  注意,true和”true”是不一样的, “true”是字符串,true是布尔值, 千万不能混淆.

  回到if语句上来, 我们先来看看简化版的if语句:if 判断式 then 语句体 我们来看一个例子:

dim a,b
a=12
b=13
if b>a then msgbox(“B大于A”)

  我们只看最后一行, a>b这个式子(表达式)有一个返回值, 是bool型的. 因为这个式子只有两种可能:b大于a, b不大于a, 所以这个式子也只有两种可能性, 即真或者假. if语句判断这个表达式的返回值是真还是假, 如果是真(true)则执行then后面的语句, 如果是假, 则不执行, 你把a的值改成14看看还会不会弹出对话框?

  当我们要在判断之后执行多行语句怎么办呢, 我们需要用语句块来解决, 在这里可以叫块if

dim a,b
a=12
b=13
if amsgbox(“A小于B”)
msgbox(“B大于A”)
end if

  两个msgbox函数夹在if和end if之间, 这个部分就是语句块, 块里的每一条语句之前请空出4–8(一个键)个格, 这不是必需的, 但是是一个好习惯, 以便看清楚程序的结构. 这样我们就能运行多于一个的语句, 请注意if…then…end if 这三个关键部分不要掉了. OK, 我出一个题, 输入一个数, 如果小于100就输出”错误”, 如果大于100就输出”正确”, 我这里有两个程序版本:

dim a
a=inputbox(“请输入一个大于100的数”)
a=int(a) ””inputbox返回的是字符串, 我们把他变成整数 : )
if a>100 then msgbox(“正确”)
if a<100 then msgbox("错误")

还有一个更简单的

dim a
a
=inputbox(“请输入一个大于100的数”)
a=int(a) ””inputbox返回的是字符串, 我们把他变成整数
if a>100 then
msgbox(“正确”)
else
msgbox(“错误”)
end if

  看到多了一个else了吧, else的作用就是当要判断的表达式为false时执行的. 这样程序就可以处理两种不同的情况了. 不要忘了用end if结尾

  嘿嘿, 我是变态者, 现在我要你处理三种情况, <100,=100,>100, 还要写在一个if结构里, 你怎么办, 我给你答案:

dim a
a=inputbox(“请输入一个大于100的数”)
a=int(a) ””inputbox返回的是字符串, 我们把他变成整数
if a>100 then
msgbox(“正确”)
elseif a=100 then
msgbox(“老大, 你耍我?”)
else
msgbox(“错误”)
end if

  这次输入100看看, 是什么? else if语句可以在if结构中多次出现, 以灵活判断不同的情况 (如果你要判断得太多, 就请使用”选择结构”, 过会儿就讲), 当所有elseif都处理完了,而没有符合情况的时候再执行else中的语句.另一个例子:

Dim a,b,c,d
a=inputbox(“a是:”,”输入半径”)
b=Inputbox(“b是:”,”输入半径”)
d=Inputbox(“答案:”,”输入答案”)

c=a*2+b*2 ””这里没有问题, 会自动转换
if d=c then
Msgbox(“你好聪明”)
else
Msgbox(“你好猪头 自己的题还不会!”)
end if

  再看看这个, 无论你回答得多么正确你都是猪头, 哈哈, 不是我耍你, 还是文章开始时候的inputbox的返回类型在耍你, d是inputbox的返回值, 他是一个字符串, 而c是一次整数计算的结果, 他是一个整数. 一个字符串无论如何也不等于一个整数, 尽管他们字面上是一样的:”8″<>(不等于号)8 所以if的判断式的值永远是false, 总是执行else部分的语句. 我们可以这么修改

Dim a,b,c,d
a=inputbox(“a是:”,”输入半径”)
b=Inputbox(“b是:”,”输入半径”)
d=Inputbox(“答案:”,”输入答案”)
d=int(d)
””在这里我们取出了d的值, 变成整数, 在放回”d”这个盒子里
c=a*2+b*2
if d=c then
Msgbox(“你好聪明”)
else
Msgbox(“你好猪头 自己的题还不会!”)
end if

  这样就成功了. 这也是Inputbox函数的一个讨厌的地方, 没办法, vbs没有其他好的输入方式了.

  说到if, 我们不得不说一说逻辑运算符, 今天介绍两种, “and” 和 “or” 学会了if语句之后, 我举一个例子, 你一看就明白了.

dim a,b
a=inputbox(“输入一个数 >10″)
b=inputbox(“输入另一个数 >10″)
a=int(a)
b=int(b)
if a>10 and b>10 then
msgbox(“正确”)
else
msgbox(“错误”)
end if

  这段程序让你输入两个值, 必须都大于10, 只要有一个不大于, 就输出错误

dim a,b
a=inputbox(“输入一个数 >10″)
b=inputbox(“输入另一个数 >10″)
a=int(a)
b=int(b)
if a>10 or b>10 then
msgbox(“正确”)
else
msgbox(“错误”)
end if


  这段程序让你输入两个值, 只要有一个大于10, 就返回成功. 其实and和or很好理解, 我读”if a>10 or b>10 then” 这一句, 用华语是这样:”如果a大于10或者b大于10, 那么…”. 这样是不是就很好理解了呢.

  OK, 我们再来看一种新结构, 今天的课就结束, 已经午夜了, 我都累死了.

  当你的程序要处理很多种不同的判断情况的时候elseif..then会让程序看起来很杂乱, 所以就有了一种select case结构专门对付这种情况, select case的语法结构很简单:

select case 变量名
case 值
语句
case 值
语句
case else
语句
end select


  我们举个例子就能很简单的说明:

dim a
a=inputbox(“输入一个1–3的值”)
a=int(a) ””处理inputbox返回字符串的问题
select case a
case 1
msgbox(“壹”)
case 2
msgbox(“贰”)
case 3
msgbox(“叁”)
case else
msgbox(“输入错误”)
end select

  这个例子把1,2,3这三个阿拉伯数字转化成中国大写数字, 这个程序写成if…elseif 的形式如下

dim a
a=inputbox(“请输入1–3的值”)
a=int(a)
if a=1 then
msgbox(“壹”)
elseif a=2 then
msgbox(“贰”)
elseif a=3 then
msgbox(“叁”)
else
msgbox(“输入错误”)
end if

  怎么样, 麻烦吧, 还是select好吧.

  OK, 今天到此结束, 总结一下:


要点:

1) inputbox返回的是一个字符串, 而不是一个数, 必须用a=int(a)这种形式转化成数

2) bool变量的值只有两种:true,false

2.5) and两边的表达式都是true, 则返回true. or两边的表达式有一个是true, 就返回true

3) if 语句的格式

4) select…case的格式


作业:

1) 使用3个bool值, 储存你的3兄弟姐妹是否是男性 (提示:sister1male=false)

2) 给定一个个数, 大于10而且小于20输出”正确”, 否则输出”错误”

3) 输入12,或者15, 输出”正确”, 否则输出”错误”

4) 把5以内的正整数都转换成中国大些数字

5) 自己随便设计一个程序, 应用今天的知识

四篇(共六篇):



大家好, 昨天我休息了一天, 所以今天写第4章:循环结构

  我们先来看一道题:商场进行每日结算, 要求累加出今天的营业额, 每次输入一个数, 这道题其实很简单, 但就我们现在学

过的知识要完成这道题相当麻烦, 我们来分析一下. 首先, 我们需要知道买卖的次数, 这样才能控制输入的次数,但是, 这种设

计是非常低效的, 每天都要重新设计程序. 假定今天进行了5次交易, 以下是源程序:

dim sum
sum=0 ‘初始化变量
sum=sum + int(inputbox(“请输入交易额”))
‘sum=sum+x 这种形式是把本身的值取出来, 进行一次运算, 再放回本身, 这种方法很有用处
‘这里使用了函数嵌套, 把inputbox的返回值直接传给int函数, 转化成整数, 下同
sum=sum + int(inputbox(“请输入交易额”))
sum=sum + int(inputbox(“请输入交易额”))
sum=sum + int(inputbox(“请输入交易额”))
sum=sum + int(inputbox(“请输入交易额”))
msgbox(sum)

  看到了吗, 我通过把计算过程复制了5遍才设计好了程序, 这种程序在汽车交易所等交易次数少的地方还能凑合着用, 如果

放到超市岂不是要复制, 粘贴几千遍? 我们今天讲的内容就可以克服这种缺陷, 首先, 我们来讲以下Do…Loop语句.

  do…loop的结构看上去非常简单, 就是:do…loop, 仅此而已, 这个结构不断执行do和loop之间的语句(学名叫:循环体),
永不停止. 举个例子来说:

do
msgbox(“这个信息会不断重复出现, 要停止程序请使用任务管理器(Ctrl+Alt+Del)中止wscript进程”)
loop

  运行这个程序, 当你点销掉一个对话框马上会出来另一个, 你永远点不完, 总有下一个. 谁会运行这样的程序? 除非是给

别人捣乱(我就干过这种事), 所以在do..loop结构中还有一个语句:exit do, 这个语句将终止循环, 跳到loop后面的语句继续

执行. 据个例子来说:

dim a ‘注意:常量不需要在dim里面声明,否则会引发错误
const pass=”123456″ ‘这是一个字符串 请用”"包裹起来. 设定密码为常量, 不可变更
do
a=inputbox(“请输入密码”)
if a=pass then
msgbox(“密码校验成功”)
exit do
end if
loop

  这个程序会一直不停的问你密码, 知道你输入了正确的密码为止.(if可以嵌套在另一个if当中, 也可以嵌套在循环体当中

, 所以一定要用缩进, 来分清楚程序的各个部分). 这个程序是很经典的, 早期的程序都是这么做的. 但是我

杀毒–难道非要用软件(人毒大战的终级指南)

0

分类 : 技术文摘 | 发表时间 14-06-2006

杀毒——难道非要用软件?(人毒大战的终级指南)

在下Creamdog,可以算是一名熟练的C++程序员了,从业六年。曾尝试过写杀毒软件,仅限于对某一种或几种类似病毒的专杀。我的主攻是三维引擎和仿真领域的数据结构和算法,对杀毒软件这种体力活并不在行,因此没有过多的研究,但对于其机理还是有一定了解的。对于琳琅满目的杀毒软件我一向是不屑一顾,因为他们不仅不能够有效的防范、查杀,自己有时也有一些流氓行为,不仅让计算机性能极剧降低,占用了巨大的内存资源,更为可恶的是有时将病毒杀死后竟藏匿尸首,令人哭笑不得。我数年来从未用过任何杀毒软件杀毒,一切病毒靠人工查杀,机器没有一次因病毒而瘫痪,因此我在在预防和查杀上积累了一些经验,希望和朋友们分享。下面将从预防和查杀两个角度展开讨论,希望此文对于饱受病毒之苦的朋友有所帮助。

预防篇

一、98?ME?2K?XP?Vista!?
操作系统是最需要得到重视的,我估计至少有90%以上的病毒是通过各类操作系统漏洞而感染机器的,因此要想从根源上断掉病毒的根,务必从操作系统入手。我更情愿将机器抵抗病毒的能力比喻为人的免疫系统,而操作系统正像人类免疫系统的第一级——皮肤,因此选择一款安全的操作系统是非常重要的,下面是我对MS各操作系统的看法。98和ME已被我列入黑名单,MS实际上已经放弃了对它们的支持,不会再对其安全性做大的升级了,我想它们对于大家来说也没有什么值得留恋的,正如盖茨曾说的“一晃二十年,形式变了!”但如果你必须要使用,最好的防毒办法就是“物理断开”。网线是一定要拨掉的,光盘、软盘、MP3、移动硬盘……还是少插为妙。有人要问了,什么都不能用,我还用98/ME干嘛呀?是啊,我也不知道您非要用98/ME干嘛!我推荐使用2K和XP,尤其是XP。对于目前来讲,XP的安全性还是最高的,微软出任何补丁也是先给XP出。虽然XP有正版验证的问题,但总有办法破解的,下面我会提到。对于新出的vista,我抱有一定的期望。这一次它的发布又跳票到2007年的1月,可见MS对于其安全性之重视程度。希望在未来的几年,我们会过上高枕无忧,藐视病毒的日子。要想了解关于各操作系统的安全性的详细介绍,Google一下!不过我们下面还是来说现实的事吧。

二、更新•更新•再更新
如果windows的自动更新它总是跳出来,恭喜你,你的机器中毒的机率已经很小了!让机器的自动更新功能打开,时刻与微软保持一致,你将几乎不可能遭受到来自互联网的病毒攻击。如果您是新装的操作系统,强烈建议在安装任何程序,访问任何网站之前访问http://www.windowsupdate.com/,并按照提示安装各类更新,可能在安装的过程中重起,重起后需要再次访问,直到它报告你的机器暂时没有任何可用的更新。这时你的操作系统就是安全的了。但MS动用的正版优势计划无疑对于我们这些用D版的人来说是严重的打击,然而道高一尺魔高一丈,对于2K来说,正版验证实同虚设,根本不予正视。而XP就比较讨厌了,前几天MS又强化了验证的有效性,使得靠修改data.dat文件来更新的人一下子手足无措。但令人惊奇的是,MS依然没有封掉JS的调用,我们依然可以通过调用JS函数的方法来绕过正版验证。方法是先进入更新站点,停在第一个页面应该是有“快速”和“自定义”两个按钮,此时将下面的语法输入地址栏:java script:void(window.g_sDisableWGACheck=’all’),然后按回车,你回惊奇的发现——什么也没有发生。但此时您应当仰天大笑了,直接点“自定义”看看,根本就没有验证那回事了!另外有些朋友问我,为什么总是不能更新,开始我也觉得很奇怪,因为一切都对路,但总是提示没有打开那两个讨厌的服务——AutoUpdate&BackTrans——实际上服务正运行着。后来我才发现服务光开着是不行的,还需要将启动类型设为自动。设定后一切问题都立即烟消云散了。下面我们将面临一个是鸡生蛋还是蛋生鸡的问题,我们所面临的情况是每天都有上百种新病毒或其变种问世,每一秒种无数的病毒都在伺机对任何可能的端口发动攻击,然而我们才装的机子就像刚出生的小孩,没有任何抵抗能力,想直接去MS更新谈何容易,在更新期间中毒是再正常不过的事!幸好对于XP和2K来讲都有强大的更新合集,简称SP。希望大家在电脑正常的时候未雨绸缪,从官方下载之,约有一二百兆,可能对于网速慢的朋友来说比较大,但当您需要重装系统的时候,这是您唯一的“还魂丹”!XP目前是SP2,2K是SP4,注意版本。除了SP,随时下载小更新也是很必要的,如果你不清楚近期你的机器自动安装了什么更新,可以到控制面版的“添加删除程序”里查一下(注意,XP要点上面那个“显示更新”)。要下载的话,先记下它们的编号,一般是KBXXXXXX或QXXXXXX,然后到http://www.microsoft.com去搜索这个号就可以得到下载的地址了。这也许对英文有点抱歉的朋友来说是比较麻烦的事,但国内也有一些网站提供了定期的更新合集下载,可以一试。Google一下!

三、上网=中毒?
网页里经常暗藏杀机,对于机器来说,网页恶意程序是计算机的第二大杀手。我将它比喻为人类的呼吸系统,因为现在计算机不能停止上网就像人类不能停止呼吸一样,而人类的每一次呼吸都意味着可能染上可怕的疾病,比如时髦的SARS和禽流感。但不知您注意到了没有,我并没有在这里提到病毒二字,因为我这里所说的只是普通的网站网页,不包括网页上链接的程序,程序的问题下面会讲到。一般来讲网页能做的还没有那么多,顶多是各种脚本写成的恶意程序,并不具有传染性,因此不能称之为病毒。但千万别小瞧它们,让你的IE病到生不如死还是比较轻松的,他可能会修改你的注册表,让你不能够访问IE的属性;也可能不时弹出/关上你的光驱,让你惊恐万分;也可能将你在网上的信息散之天下;当然,最可怕的事就是只要你一开机就弹出无数的广告窗口让你无法使用。看到这里的朋友相信有很多都在咬牙切齿,谁又不是从这一步走过来的呢?当我们有了Maxthon这样的软件,真的一切问题都搞定了,能禁止下载的全部禁止,能屏蔽的广告全部屏蔽,我不相信单纯的网页又有多大的本事能够冲破Maxthon这个好卫兵的门关!

四、软件是可怕的寄主
如果您按照我上面所讲的内容将最基本的“皮肤”和呼吸这两关打好了预防针,其它的就比较好办了,因为我们致少可以保证在下面进行的查杀毒过程中不会二次中毒。俗话说“病从口入”,计算机也是这样的,第三道免疫的重点关卡“口”就是我们常用的各类软件。机器装的软件越多越杂,中毒的可能性就越大,因为现在各类软件就是病毒的最好寄主,尤其是从网页上下载的各种小软件。对于这类病毒攻击其实我也没有太好的办法,实际上,我的机器也常染上一些病毒,但一般的在发作之前就被我干掉了,因为我清楚的知道我装的软件向我机器上写入的每一字节数据,而做到这一点则需要很多年的经验,对于大多数涉网未深的网友又该如何是好呢?我想最好的办法还是自己谨慎。有几个原则要说明的,邮件里来的附
件一律不要打开;你并没想下载什么而自动跳出来让你下载的一律不要下载;网页上弹出的诱人的信息问你是否查看的一律要点“否”;凡是弹出来ActiveX要安装如果你不是非常的清楚并有安装的经验一律不要安装(Microsoft除外,那是自动更新);没有被其它网友推荐过的软件一律不要下载。能做到上面这几个一律的话,我想你已经将机器的第三道免疫关把的很死了。还有一点是不得不提的,那就是现在流行的一个新词汇——流氓软件。它们并非病毒,也非恶意程序,堂尔皇之的挂上官方的旗号,名正言顺的进驻您的机器,但它们从不干好事。无法干净的卸载事小,上网经时经常受到骚扰就很讨厌了,它们唯一的目的就是令所谓的“官方”获益。3721、中文上网、百度工具条、网络猪之流正是如此,要获得完整的流氓软件列表,请Google“流氓软件”。对于我本人来讲,因为业务需要,所以经常要试用一些陌生的软件,这也给病毒攻击带来了机会,然而对于大多数网友来说,计算机只不过一是台“游戏机”或“家庭影院”,其它能用到的功能用的并不多,因此一份各类软件的推荐列表是很重要的。我会尽快出这样一份列表,包括我能想得到的各类用途的软件,选出公认最好的一两种,附上官方下载地址,以帮助朋友们为机器把好免疫关。目前您要是想了解对于各类软件哪些是公认最棒的,还是那句老话:Google一下!

五、光盘、软盘、MP3、移动硬盘……
这是病毒攻击你的最后机会了,因为这些都是硬性插入你的机器而使你的机器得病的,所以我实在不想用人的免疫系统来比喻了,原谅我吧,那太可怕了。如果你的机器有最新的补丁,我想还是可以放心的打开它们的,只要不随意运行来历不明的程序。不过将所有的自动拨放都关掉还是很必要的!对于2K,自动拨放在设备管理器中,查看光驱的属性就可以取消。对于XP,在盘符上点右键,进入属性就可以设置,具体操作我不想多说了,那不是本文的重点,请自行Google。另外,如果你真的对机器的安全性要求很高,那么在你打开这些盘之前,最好还是先用命令提示符进入,看看根目录下有没有可疑的文件。这一步仅限有经验的朋友。

六、系统设置,无懈可击的境界
虽然免疫系统已经万无一失,但人的操作总会出现一些问题,导致病毒有可乘之机。那么从病毒攻击的手段上来讲,我们可以采取一些补救性的措施。将服务列表中没用的服务全部禁用是非常好的做法,尤其是像Task、Message这类服务是一定要禁用的,因为它们常被病毒所利用!偶尔会用到的服务尽量采用手动启动,这样会为将来的查毒提供方便。有关各服务的详细说明,网上到处都是,Google一下就可以得到。请朋友们根据自己的需要设定吧!我的服务列表里自动运行的服务只有二十来个,这已经足够了。另外可能被病毒攻击的地方就是各种即时通讯软件。QQ这样有一定流氓性质的软件,用起来一定要小心,任何人发来的信息中包括的链接不要随便点,实在要看的话,复制到Maxthon里,在所有屏蔽功能打开的状态下前往,这样您将会得到最有效的安全保障。其它可能会自动上网更新的软件,尽量设置为不自动更新,有时他们的行为会令你摸不着头脑,甚至会被误判为病毒,为查毒操作带来相当大的干扰。定期去官网更新是最安全的方式。

到此为止,预防的工作您已经作的很好了,任何的杀毒软件、防火墙(包括XP自带的)你都可以藐视之,并笑傲江湖。但天有不测风雨,再好的免疫系统也有失效的时候,如果您真的由于操作不慎而导致不幸中招,那就请看下面的查杀篇。记得,查杀只能是一种补救措施,而且任何查杀的措施都只能在预防措施完善的情况下进行,因此防患于未燃才是最重要的。


查毒篇
一、工具
虽然不用杀毒软件,但并不意味着不使用任何工具。要想有效的处理病毒,有两类软件是必不可少的,一是进程管理,二是安装监控。进程管理软件目前最好用的是ProcessExplorer,Google一搜就有,它是完全免费的,请前往官方网站下载最新版。安装监控软件我并不想给大家推荐完美卸载之流的软件,因为他们本身都有一定的缺陷,但这类软件对于新手来讲还是必要的,至少可以让你看到一个安装程序运行的每一个细节,以积累一些查毒经验。我推荐使用的是RegMon软件,它也是完全免费的,并且功能强大,可以随时监控任何程序对注册表进行的任何读、写、创建等操作,这是我们将病毒清理干净的一把利刃,请前往官方网站下载最新版。以上就是我仅仅推荐的两款软件,都是很小的绿色软件,大家放心使用吧!

二、半自动实时监控
我们对于病毒最大的问题是如何知道病毒程序正在运行,这也是电脑新手面临的最大难题,他们往往借助于各类杀毒软件。但这不仅于事无补,并且会导致你的机器性能大幅下降。我做过测试,在同样的机器,上同样时长的网,开杀毒软件导致的用电量都将比不开杀毒软件高出30%左右,这太可怕了。众所周知,我国目前的电能资源极度紧缺……。好,朋友们会问了,不用杀毒软件你怎么知道机器被病毒感染了?我想告诉你的是每一台计算机都有两套天生的病毒警报装置,一套就是机箱上的HDD端口(硬盘)指示灯。学会观查指示灯状态,听辨硬盘的读盘声是非常重要的,也并不很难。首先我们要明确的知道我们现在正在机器上做什么,用到的程序是否会大量的读写硬盘。显然,没有任何一种应用软件在使用的时候会从头到尾不停的读写硬盘(磁盘碎片整理程序等除外),事实上运行大多数程序时,绝大多数时间硬盘也应该只是处于偶尔闪烁一下的状态,包括听歌、看电影、写文档、上网下载甚至是打游戏!但如果硬盘灯在不停的闪,并不断的发出“巨大”的响声,而你并没有进行很复杂的操作,那你的机器就很可能有危险了。排除检测法是很必要的,当你发现机器的硬盘不正常的运作,请将所运行的程序一个个的关掉,直到硬盘工作状态缓和下来。这样就很可能发现原来是某一个程序整在干“坏事”,不过当你把所有的程序都关掉时硬盘仍然在不停的运作就是令人感到非常不安的信号,这时您就应该高度的警惕了!另外一套自动警报装置来自于系统的响应效率。如果你发现你并没有运行什么操作繁杂的程序,但机器却变的很慢,甚至连打开“我的电脑”都要花一些时间的话,我将不幸的告诉您,您的机器八成是中毒了。效率低也可能分几种情况,比如时不时的顿一下,或着每次开机需要很长时间等,这都应该引起我们的注意。当然很多病毒在潜伏期是很安静的,对于这种病毒我们又如何才能发现呢?这确实是一个问题,但很有经验的朋友并不会为此感到担心,因为只要是病毒总会做出一些细小的动作,如果您对你的机算机上任何一个程序的运行过程都了如直掌的话,那病毒隐蔽的再好也不可能逃过你的眼睛。当然这需要长期积累的经验,没有经验的朋友请看下面的内容吧,一台高效病毒监控仪将会成为病毒最残忍的克星!

三、每一个进程都是我们的朋友
孙子曰“知己知彼,百战不殆”,我们必须

国内国外免费在线杀毒网站

0

分类 : 技术文摘 | 发表时间 14-06-2006

~~技术纵横提示~~
1、在线扫描时,应关闭除浏览器之外的所有程序;
2、建议使用Internet Explorer(IE浏览器)来打开下面的网址,一些基于IE核心的浏览器可能会造成无法扫描或出现错误提示。
3、您的IE浏览器应升级到最新版本,某些安全厂商的在线查杀功能不支持IE 4.x浏览器。

此文由本站原创,转载请注明出处“(来自techxy.com)”,谢谢!

~~以下厂商地址,排名不分先后~~

==中文==
趋势科技在线扫毒
说明:需要安装ActiveX插件
地址:http://www.trendmicro.com.cn/housecall/start_corp.asp

光华反病毒软件在线杀毒
地址:http://www.viruschina.com/free/freevirus.asp

金山毒霸免费查毒
地址:http://zs.kingsoft.com/safe_intro_1.shtml
金山在线杀毒
地址:http://scan.kingsoft.com/scan/oscan/retail.htm

瑞星免费在线查毒
地址:http://online.rising.com.cn/free/index.htm
安博士间谍软件在线查杀
地址:http://auth70.ahn.com.cn/shopping/spyzero.jsp

安博士在线杀毒
地址:http://auth70.ahn.com.cn/shopping/myv3.jsp

熊猫在线杀毒
地址:http://www.pandasoftware.com/activescan/activescan.asp?Language=8&Country=44&Partner=25&Ref=CN-PR-AS-108

天网安全扫描
地址:http://pfw.sky.net.cn/news/info/list.php?sessid=&sortid=17

CA eTrust在线扫描
说明:需要安装ActiveX插件
地址:http://www3.ca.com/securityadvisor/virusinfo/scan.aspx

==英文==

BitDefender-欧洲著名的安全厂商
地址:http://www.bitdefender.com/scan8/ie.html

avast!在线扫描
说明:支持单个文件扫描,每个文件大小限制不超过512KB
地址:http://onlinescan.avast.com/

微软Live.com在线安全扫描
说明:需要安装插件
地址:http://safety.live.com/

SpywareGuide在线扫描
说明:需要安装ActiveX插件
地址:http://www.spywareguide.com/onlinescan.php

Kaspersky(卡巴斯基)在线扫描
说明:无须插件,扫描文件大小不能超过1MB
地址:http://www.kaspersky.com/scanforvirus

WindowSecurity在线木马扫描
说明:需要安装ActiveX插件
地址:http://www.windowsecurity.com/trojanscan/

SpywareInfo-间谍软件在线扫描
说明:需要安装ActiveX插件
地址:http://www.spywareinfo.com/xscan.php

F-Secure在线病毒扫描
说明:需要安装ActiveX插件
地址:http://support.f-secure.com/enu/home/ols.shtml

ewido在线扫描beta测试版
说明:需要安装ActiveX插件
http://www.ewido.net/en/onlinescan/run/

PandaSoftware间谍软件在线扫描查杀
说明:需要安装Toolbar
http://www.pandasoftware.com/products/spyxposer/

无觅相关文章插件,快速提升流量