<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> COCOON ASP探针
8 ASP系统探针 :::... Coding by Sunrise_Chen. 
 Basic Information
 软件名称: COCOON ASP系统探针
 最新版本: 2.7.00
 演示地址: http://www.ccopus.com/aspSysCheck.asp
        http://www.ccopus.com/aspSysCheck.aspx
 开发工具: DreamWeaver MX
 开发环境: ASP 3.0
 运行环境: IE 5.0+ 、NetScape 6+
 功能描述: 测试服务器基本信息;
       测试服务器组件支持情况;
       测试服务器磁盘使用情况;
       测试服务器运算能力;
       测试客户端基本情况;
       测试客户端浏览器组件支持情况;
       测试客户端运算能力;
       测试网络连接速度。

8 代码及心得 :::... Coding by Sunrise_Chen. 
 Code & Experience
 v2.7.00
   又一次具有里程碑意义的升级。
   对Netscape更彻底的支持。
   增加对服务器磁盘磁盘的检测。
   增加了大量客户端组件的检测。
   重新整理了基本信息列表,增加了Application数量和Session数量等常用参数。
   优化的了部分代码。
   还有其他许多微小的改动...
   至此,COCOON ASP探针已经算是比较成熟了,我将着手于.NET探针的开发。
[2002-09-04 11:27]

 v2.6.10
   加入了浮点运算的测试,参考了其他同类软件,把算术测试由原来的受动改成了自动。
   代码上做了点优化,并对一些地方做了细微的改动。
   有一个广告商的加入,买断了顶部的广告位。

 .net v 1.0 beta
   公开测试(演示: http://www.newstock.com.cn/sunrise_chen/aspSyscheck.aspx ),地址在下面。

.net v 1.0 alpha
   开发了.net的探针,(演示: http://www.newstock.com.cn/sunrise_chen/aspSyscheck.aspx )由于一些功能还不成熟,
  所以暂时不提供下载。
 
 v2.5.02
   修正了部分代码使支持Window.NET下的IIS6.0,不过,仍然存在一些问题,在IIS6下不在能用传统的方法
   来取得CPU、操作系统等的信息。看来真的到开发.net版本的时候了...
 v2.5.00
   增加了测试网络连接速度的功能,这个功能在我的探针第一版发布的时候,只是一直没有好的思路去实现。
   增加了一些小功能,一些原有的功能也做了调整,已很专业了:)
   能看到我的探针得到越来越多朋友的认可我真的是挺高兴的,多谢大家的支持,
   毕竟,你们的认可,对我来说,是一种莫大的动力。
 v2.2.10
   修改了一些客户端的代码,增加了检测客户端SCRIPT版本的功能,继续优化代码。
 v2.1.98
   修正了因LyfUpload组件本身缺陷造成的该组件未被检测到的错误,并简化了部分代码。
 v2.1.95
   对Netscape提供了更好的支持,顺便在界面上做了一点小的修改。
 v2.1.93
   修正一个小错误,感谢“落伍者”的爱落叶先生。
 v2.1.91
   修正了前几版中的一个小错误。
   支持更多服务器端和客户端的组件。
   隐藏了不支持的组件,以避免因冗余内容过多而造成页面过长。
 [2002-09-10 11:14]
 
 v2.1.15
   加了一些东西,更专业化一些,自己看吧。:)
 [2002-08-30 14:37]
 
 v2.0.01
   基本完成了界面的修改工作,哎~,界面对我这个省美观极差的人来说一直是个老大难的问题,呵呵~`
   感谢我的朋友Deepdark(Hide)、我的徒弟热咖啡、我的经理Linyu先生以及所有支持我和支持这个探针的朋友。
 [2002-08-29 10:30]
 
 v2.00 beta
   1.5版本的发布获得了较高的评价,许多朋友给予了鼓励和意见,要感谢ajiang探针的开发者阿将先生,我的探针中,服务器
 端的许多组件信息均是取自ajiang的探针中。这次做跨版本升级的原因是,客户端信息不再像以前作为附带功能,而作为和服务器
 信息并行的主要功能之一。另,为了避免误会,决定提供历史版本的下载。界面上还有待改进,顾暂为beta版。
 [2002-08-28 16:17]
 
 v1.5.56
   花了一些时间用JavaScript重写了所有代码,提高了一些效率,功能方面,增加了对JScript和VBScript引擎的检测,客户端
 增加了对MSN版本的检测以及.NET版本的检测,修改了操作系统以及浏览器版本的检测,使其更加精确,代码方面,将检测组件是
 否安装以及检测组件版本号的函数合二为一,使产生的异常少了一些。这段时间正在升级我的记数系统,所以,借用了一些思路
 和做法。
   顺便提一下,我把老版本的下载去掉了,下面的地址下载的就是v1.5.56了。另, v1.3.07我有做过英文版的,有空可以去看
 一下,地址是:http://www.ccopus.com/code/sample/aspSysCheck_En.asp,不过,v1.5.56我没做英文版,没时间
 做,那位有空帮忙翻译一下,不胜感激。:p
 [2002-08-24 08:56]

 v1.3.07
  才明白探针是怎么回事,原来这就叫探针啊,很不明白,像这种没有技术难度的东西,为什么有如此多的人对它情有独忠?
 花了2个小时写了1.0版,在各论坛发表,反映还算不错,收到很多要求下载的帖子和Mail,不过,这个版本中,发现了一些错误,
 用IIS自带的MSWC.BrowserType来检测访问者浏览器的属性并不十分准确,后来才知道,发生这个错误,除了和组件的版本有关系
 以外,该组件还需要一个浏览器信息的文本文件(在IIS的安装目录下),所以,后来不得不改用前台的JavaScript来检测用户浏
 览器的信息,其实,这部分不应该放在这里的,因为,探针检测的是服务器的信息,不过,既然做了,也就顺边放在这里吧,
   2002-6-30 凌晨3:07分,完成了新版本的开发,故取版本号为1.3.07以纪念。
   有网友提到了“阿江”先生的探针,其实,我这个版本的探针,无论是在功能的实现上还是在代码编写上,都要比他高明些,
 当然,这里没有要贬低他的意思,只是就事论事地说明些什么罢了。写这个程序,我也有借鉴过他的思路,在此表示感谢。

 分析一下代码吧:
 首先,检测浏览器是否支持ASP,是一件再容易不过的事了,只要用ASP输出一个层(或者别的也行,只要有个ID即可),然后
 用JavaScript去判断该ID的对象是否存在,如果服务器不支持ASP,自然就不会存在该层了,所以,只要接下来做的只是显示一下
 预先准备好的“该服务器不支持ASP”的信息即可,相关代码如下:
 <%="<div id='chkAspSupport'></div>"%>
 <script language="JavaScript">
 if(!document.all.chkAspSupport){    //如果不存在该层
     if(document.all.divASP)
     document.all.divASP.style.display="none"   //隐藏那些需要ASP才能运行的层
     if(document.all.divNoASP)
     document.all.divNoASP.style.display=""      //显示不支持ASP的信息
 }
 </script>

 第二,测试服务器端信息服务器系统的基本信息,这个就是取了ServerVariables的变量,这里就不做阐述了,相信只要知道ASP
 的朋友,一定知道ServerVariables变量的。

 第三, 测试服务器的组件支持情况,一些朋友可能会在这里遇到些困难,其实,要实现这一功能也并不是什么难事,只要
 用Server.CreateObject()创建你要检测的组件即可,如果该组件未被支持,则会产生一个错误,所以,我们只要判断创建对象时,
 是否有错误就行:
 '//检测组件是否可用
 Function chkObj(objName)
     On Error Resume Next
     Dim objTest
     chkObj = True
     Set objTest = Server.CreateObject(objName)
     If Er Then chkObj = False
     Set objTest= Nothing
 End Function

 '//检测组件版本
 Function getObjVer(objName)
     On Error Resume Next
     getObjVer = ""
     Set objTest = Server.CreateObject(objName)
     If Not Er Then getObjVer = objTest.version
     If Not isNumeric(getObjVer) Then getObjVer = ""
     Set objTest= Nothing
 End Function

 第四,检测服务器运算能力,这个就不用说了吧?会写程序的人都会的。
 
 最后,检测访问者信息,这个就是用到了window对象的一个子对象navigator或者clientInformation都行,所有检测功能都只是调用
 了它的属性罢了。

   都说完了,你现在不觉得难了吧?试着自己做一个吧?
 

8 下载信息 :::... Coding by Sunrise_Chen. 
 Download Information


 感谢你的使用
 本代码完全公开和免费,你可以任意复制、传播、修改和使用,
 但不得公开发表代码,不得用做商业用途,不得向其他使用者收费。
 使用时,请注明以下信息,谢谢配合:
 作者:Sunrise_Chen @ Cocoon sTudio.

 COCOON ASP.net探针    -->    地址一     地址二    地址三

 COCOON ASP 探针        -->    地址一     地址二    地址三



Copyright(C) Sunrise_Chen @ COCOON sTudio [www.ccopus.com] .
本程序由Sunrise_Chen编写,转载时请保留这些信息