ASP解密问题 <% On Error Resume Next Set AspCoding = Server.CreateObject("ASPEncodeDLL.AspCoding&
答案:2 悬赏:10
解决时间 2021-02-20 01:22
- 提问者网友:敏感魔鬼
- 2021-02-19 02:11
ASP解密问题 <% On Error Resume Next Set AspCoding = Server.CreateObject("ASPEncodeDLL.AspCoding") I
最佳答案
- 二级知识专家网友:星痕之殇
- 2021-02-19 02:19
这里面有两个主要的错误,第一是你是否在开头的部分引入了一个文件?当然引入了sitedatapath的变量,因为如果你开始没有引入任何文件时,也就是说没有相应的sitedatapath变量.对于不存在的变量去server.mappath是行不通的!必须要引入这个变量才行的.如果没有可以在server.mappath之前先将些变量进行定义并赋值,当然必须是指向你的数据库的!
第二个问题就是没有err变量,你可能不知道err是那里来的,其实就是on error resume next中来的,如果有这一句时,系统会自动给出一个变量,当然称其对象也不为过.这句的意思就是如果"以下语句有错误",这时有点直白的说法了,其实表示的是以下执行的语句错误情况(变量)绑定到错误上来!
所以on Error resume next会首先生成一个对象,而生成的这个对象的名称就是err,并且将其number直接赋值为0,然后不管执行什么的语句,只要发生错误,就将其错误号(err.number)写入到err中,这样,可以测试语句的err进行判断以上的语句中是否存在错误,当然也可以打印出错误的详细情况.
这个过程一直被用作asp中VB语言系的一个错误处理机制.于是就形成了:
on error resume next
受监控的语句块
if err.number < 0 then
错误处理块
end if
类似于C族语言系中的try机制
try
{
受控语句块
}
catch(err)
{
错误处理块
}
而你将on error resume next注释掉是不正确的行为的!
顺便提醒的是,一般将引入文件都写在开始的部分,这样便于查找引入文件或错误,写在中间是不太恰当的!虽然不是必须的!
第二个问题就是没有err变量,你可能不知道err是那里来的,其实就是on error resume next中来的,如果有这一句时,系统会自动给出一个变量,当然称其对象也不为过.这句的意思就是如果"以下语句有错误",这时有点直白的说法了,其实表示的是以下执行的语句错误情况(变量)绑定到错误上来!
所以on Error resume next会首先生成一个对象,而生成的这个对象的名称就是err,并且将其number直接赋值为0,然后不管执行什么的语句,只要发生错误,就将其错误号(err.number)写入到err中,这样,可以测试语句的err进行判断以上的语句中是否存在错误,当然也可以打印出错误的详细情况.
这个过程一直被用作asp中VB语言系的一个错误处理机制.于是就形成了:
on error resume next
受监控的语句块
if err.number < 0 then
错误处理块
end if
类似于C族语言系中的try机制
try
{
受控语句块
}
catch(err)
{
错误处理块
}
而你将on error resume next注释掉是不正确的行为的!
顺便提醒的是,一般将引入文件都写在开始的部分,这样便于查找引入文件或错误,写在中间是不太恰当的!虽然不是必须的!
全部回答
- 1楼网友:白日梦制造商
- 2021-02-19 03:39
这句是不需要解密的,意思是调用了ASPEncodeDLL组件,这个组件是ASP代码加密工具的,这个工具能保护你的asp源码不受抄袭,采用了这个dll文件来封装解析,真正需要解密的是下面AspCoding.EnCode("")里的内容,解密知道了方法也很简单,俺能解。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯