关于初始化 Class_Initialize()

Wait_For_Online 2006-09-18 09:25:17
Private Sub Class_Initialize()
http_host = Request.ServerVariables("HTTP_HOST")
local_addr = Request.ServerVariables("LOCAL_ADDR")
uid = Application("UserID")
head = Application("Head")
.....

--------------------------------------------------
如上,没有参数,没有调用,可以在类的初始化过程中可以返回上面这些值吗?
...全文
325 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
Wait_For_Online 2006-09-20
  • 打赏
  • 举报
回复
CSDN真是个好地方,虽然问出的问题,大多时候都是自己解决的,但是这未尝不是好事,至少在解决问题的过程中自己进步了...
是是非非 2006-09-19
  • 打赏
  • 举报
回复
哦,错了 RaisError是SQLServer里面的


用 Err.Raise













Microsoft(R) Visual Basic(R) Scripting Edition
Raise 方法 语言参考
版本 1


请参阅 应用于


--------------------------------------------------------------------------------

描述
生成运行时错误。
语法
object.Raise(number, source, description, helpfile, helpcontext)
Raise 方法的语法有以下部分:

参数 描述
object 应为 Err 对象。
number Long 整数子类型,标识错误性质。VBScript 错误(有 VBScript 定义和用户定义两种错误)的范围在 0-65535 之间。
source 命名最初产生错误的对象或应用程序的字符串表达式。当为 Automation 对象设置此属性时,请使用窗体 project.class。如未作任何指定,则使用当前 VBScript 项目的程序设计 ID。
description 描述错误的字符串表达式。如未指定,则检查 number 的值。如可将其映射为 VBScript 运行时错误代码,则将 VBScript 提供的字符串作为 description 使用。如没有与 number 对应的 VBScript 错误,则使用通用错误信息。
helpfile Help 文件的完整合法的路径,在该 Help 文件中可找到此错误的帮助信息。如未指定,则 VBScript 将使用 VBScript Help 文件的完整合法的驱动器、路径和文件名。
helpcontext 上下文 ID,标识 helpfile 中提供错误帮助的主题。如果省略,则使用与 number 属性对应的错误的 VBScript Help 文件上下文 ID(如果存在)。


说明
除了 number 以外的所有参数都是可选项的。如果使用 Raise,而不指定某些参数,且 Err 对象的属性设置含有未清除的值,则这些值将成为错误的值。
在 Automation 对象中设置错误代码的 number 属性时,请向常数 vbObjectError 添加错误代码编号。例如,要生成错误号 1050,可将 number 属性赋值为 vbObjectError + 1050 。

下面例子举例说明如何使用 Raise 方法:

On Error Resume Next
Err.Raise 6 '产生溢出错误。
MsgBox ("Error # " & CStr(Err.Number) & " " & Err.Description)
Err.Clear '清除错误。


--------------------------------------------------------------------------------

是是非非 2006-09-19
  • 打赏
  • 举报
回复
Private Sub Class_Initialize()
http_host = Request.ServerVariables("HTTP_HOST")
local_addr = Request.ServerVariables("LOCAL_ADDR")
uid = Application("UserID")
head = Application("Head")
.....
If http_host<>"..................." Then
RaisError vbObjectError,"不允许从这个IP地址上调用"
是是非非 2006-09-19
  • 打赏
  • 举报
回复
用Raiserror
bob_wang526 2006-09-19
  • 打赏
  • 举报
回复
请教:liuxiaoyi666(MSMVP 小猪妹荣誉马甲之八卦兔子) (★★★★) 信誉:126
--------------------------------------------------

要求在DLL封装的类中获取服务器IP地址,如果IP地址和预设的吻合,则通过验证.

为了确保获取到的IP的真实性,获取IP的代码只能放在DLL中,而不是从调用DLL的ASP中的参数传递方式.

并且代码最好是在初始化过程中,或者通过其它途径实现无调用响应.

--------------------------------------------------
Request.erverVariables("HTTP_HOST")
bob_wang526 2006-09-19
  • 打赏
  • 举报
回复
- -!
  • 打赏
  • 举报
回复
不坏.....写错字了
slawdan 2006-09-19
  • 打赏
  • 举报
回复
嗯?
不能完全封装做坏事是什么意思?
  • 打赏
  • 举报
回复
你在类中把变量设置成public

声明实例

set xxx=new aaa()
aaa.变量 就可以的
vbs有些地方很好玩,不能完全封装,可以用这类技巧做些坏事
penglewen 2006-09-19
  • 打赏
  • 举报
回复
用函数带个返回值的。。。类还没有试过。不过你上面的那种应该是行不通的。
iasky 2006-09-19
  • 打赏
  • 举报
回复
构造函数本来就不允许有返回值
slawdan 2006-09-19
  • 打赏
  • 举报
回复
eglic给的是从类里模拟返回给外界建立是否成功的信息?

如果验证不通过,就随便raise一个错误号出去?
Initial_R 2006-09-18
  • 打赏
  • 举报
回复
那么,请问,如何在类被调用的时候,执行一段代码,该代码用于验证调用者是否授权用户,如果是,允许调用,反之不允许
slawdan 2006-09-18
  • 打赏
  • 举报
回复
不过C++的构造函数也不能返回值~呵呵~~
slawdan 2006-09-18
  • 打赏
  • 举报
回复
不可以~

VBS的类很弱~~初始化函数和C++的类构造函数所能实现的功能完全不是一个概念~~

只能为 Private Sub,也就是不能传参,不能在类外部显示调用,更不用说返回值了~

需要的话,自定一个函数返回吧~也可以多写一个函数模拟构造函数~

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧