asp中,写Server.CreateObject 与 CreateObject 有什么区别?

解决方案 »

  1.   

    位置一样
    但是在IIS 4(ASP 2)中,用server.Createobject创建的对象可以被IIS自动回收,而createobject的不能;IIS 5里都可以被回收
    另外,server.createobject是server对象的方法,在js里也可以用;而createobject是vbs语言的函数,在js里是new ActiveXObject
      

  2.   

    对不起,说错了.应该是所创建的对象是在哪里注册的。
    Server.CreateObject 恐怕是 ASP 中最为实用,也是最强劲的功能了。它用于创建已经注册到服务器上的 ActiveX 组件实例。这是一个非常重要的特性,因为通过使用 ActiveX 组件能够使你轻松地扩展 ActiveX 的能力,正是使用了 ActiveX 组件,你可以实现至关重要的功能,譬如数据库连接、文件访问、广告显示和其他 VBScript 不能提供或不能简单地依靠单独使用 ActiveX 所能完成的功能。正是因为这些组件才使得 ASP 具有了强大的生命力。 
       其语法如下: 
       Server.CreateObject("Component Name")
       默认情况下,由 Server.CreateObject 方法创建的对象具有页作用域。这就是说,再当前 ASP 页处理完成之后,服务器将自动破坏这些对象。如果要创建有会话或应用程序作用域的对象,可以使用 < OBJECT> 标记并设置 SESSION 或 APPLICATION 的 SCOPE 属性,也可以在对话及应用程序变量中存储该对象。如下例程 : 
       < % Set Session("ad") = Server.CreateObject("MSWC.AdRotator")%> 
       这里需要注意的是,不能创建与内建对象同名的对象实例,否则,如下列脚本将返回错误。 
    摘自 http://chinese.pku.edu.cn/netstudy/aspteach/asp10.htm
      

  3.   

    Server.CreateObject
    会尝试调用 obj 的 OnStartPage 的。
    并且把 IScriptingContext 传递给那个对象。
      

  4.   

    这么说我习惯于写不带server的,而我的DLL也都不带onstartpage,正好配套了?
      

  5.   

    那看情况了。
    其实很多东西都不是专为ASP做的。
    那么用那个都没有区别。
      

  6.   

    我错了。。IIS5中是都能的。道歉。
    不知道IIS4是不是。
      

  7.   

    我用的是 IIS 4.0
    <HTML>
    <HEAD>
    <meta name="GENERATOR" Content="Microsoft Visual Studio.NET 7.0">
    </HEAD>
    <body>
    <%@language=vbscript%>
    <%
    '这里只是一个程序框架
    dim myObject,ret,gpsInfo                  
    set myObject=server.CreateObject("ASPCtrl_CyberProtocol.AspServerCtrl.1")
    ret=myObject.Connect("www.95885.com",2002)
    response.Write "连接状态:" & ret 
    set gpsInfo=myObject.CallGPSCar("010199000000","13900000000")
    response.Write "<p>返回GPS信息"
    response.Write  "<p>GPSID:" & gpsInfo.sGPSID
    response.Write "<p>车载号码:" & gpsInfo.sMobile
    response.Write "<p>定位是否有效:" & gpsInfo.bPosition
    response.Write "<p>经度:" & gpsInfo.dblX
    response.Write "<p>纬度:" & gpsInfo.dblY
    response.Write "<p>方向:" & gpsInfo.fltDirection
    response.Write "<p>速度:" & gpsInfo.fltSpeed
    myObject.Close
    %>

    </body>
    </HTML>
    为什么我的对象不能自动释放,