不错的主要用于加密的vbs(asp)位移运算类

<script language="vbscript">

' Aother: 奔腾的心

'     QQ: 7180001

'   Date: 2008-01-17

Class mShift

Private m_lPower2(31)

Public Function RShift(ByVal lThis, ByVal lBits)

        On Error Resume Next

        Init

        If (lBits <= 0) Then

           RShift = lThis

        ElseIf (lBits > 63) Then

           ' .. error ...

        ElseIf (lBits > 31) Then

           RShift = 0

        Else

           If (lThis And m_lPower2(31 - lBits)) = m_lPower2(31 - lBits) Then

              RShift = (lThis And (m_lPower2(31 - lBits) - 1)) * m_lPower2(lBits) Or 

m_lPower2(31)

           Else

              RShift = (lThis And (m_lPower2(31 - lBits) - 1)) * m_lPower2(lBits)

           End If

        End If

    End Function

Public Function LShift(ByVal lThis, ByVal lBits)

        On Error Resume Next

        Init

        If (lBits <= 0) Then

           LShift = lThis

        ElseIf (lBits > 63) Then

           ' ... error ...

        ElseIf (lBits > 31) Then

           LShift = 0

        Else

           If (lThis And m_lPower2(31)) = m_lPower2(31) Then

              LShift = (lThis And &H7FFFFFFF) \ m_lPower2(lBits) Or m_lPower2(31 - lBits)

           Else

              LShift = lThis \ m_lPower2(lBits)

           End If

        End If

    End Function

Private Sub Init()

        On Error Resume Next

        m_lPower2(0) = &H1&

        m_lPower2(1) = &H2&

        m_lPower2(2) = &H4&

        m_lPower2(3) = &H8&

        m_lPower2(4) = &H10&

        m_lPower2(5) = &H20&

        m_lPower2(6) = &H40&

        m_lPower2(7) = &H80&

        m_lPower2(8) = &H100&

        m_lPower2(9) = &H200&

        m_lPower2(10) = &H400&

        m_lPower2(11) = &H800&

        m_lPower2(12) = &H1000&

        m_lPower2(13) = &H2000&

        m_lPower2(14) = &H4000&

        m_lPower2(15) = &H8000&

        m_lPower2(16) = &H10000

        m_lPower2(17) = &H20000

        m_lPower2(18) = &H40000

        m_lPower2(19) = &H80000

        m_lPower2(20) = &H100000

        m_lPower2(21) = &H200000

        m_lPower2(22) = &H400000

        m_lPower2(23) = &H800000

        m_lPower2(24) = &H1000000

        m_lPower2(25) = &H2000000

        m_lPower2(26) = &H4000000

        m_lPower2(27) = &H8000000

        m_lPower2(28) = &H10000000

        m_lPower2(29) = &H20000000

        m_lPower2(30) = &H40000000

        m_lPower2(31) = &H80000000

    End Sub

End Class

Dim sft

Set sft = New mShift

MsgBox sft.RShift(200, 4)

MsgBox sft.LShift(200, 4)

Set sft = Nothing

</script>

<script language="javascript">

alert(200<<4);

alert(200>>4);

</script>

时间: 2024-10-06 12:33:48

不错的主要用于加密的vbs(asp)位移运算类的相关文章

不错的主要用于加密的vbs(asp)位移运算类_ASP CLASS类

<script language="vbscript"> ' Aother: 奔腾的心 '     QQ: 7180001 '   Date: 2008-01-17 Class mShift     Private m_lPower2(31)     Public Function RShift(ByVal lThis, ByVal lBits)         On Error Resume Next         Init         If (lBits <

vbs(asp)的栈类

用js可以用array对象很容易的实现栈的功能,但在vbs中没有相应的功能,没办法,只有自己动手了:( 如果你的栈不了解请查看数据结构的相关内容.这个栈类是参照c++的栈类写的,用法一样.用这个类你也可以很方便的修改出队列的类:) <% '********************************************** ' vbs栈类 ' push(string)进栈 ' getTop取栈顶元素 ' pop去掉栈顶元素 ' isempty是否栈空 ' isfull是否栈满(pMax设

加密你的ASP页面—Script Encoder初探

encode|加密|页面|encode|加密 一.概述 一直以来ASP技术受到了越来越多朋友的喜爱使用ASP从事WEB开发的人也越来越多.ASP一个非常明显的特征是页面在服务器端经过处理之后发送到浏览器中的内容为标准的HTML格式这样有效的保护了页面程序的原代码不被客户端轻易获取当然MS的BUG不断那是另一回事了.^_^.但是另一个普遍存在的问题是由于ASP页面是纯文本的形式存放在服务器端可以轻易看到全部编程逻辑.这样给ASP应用商业化带来了一定的困难.解决的方法一般是使用组件技术将编程逻辑封装

加密你的ASP页面——Script Encoder初探

encode|加密|页面 一.概述 一直以来ASP技术受到了越来越多朋友的喜爱使用ASP从事WEB开发的人也越来越多.ASP一个非常明显的特征是页面在服务器端经过处理之后发送到浏览器中的内容为标准的HTML格式这样有效的保护了页面程序的原代码不被客户端轻易获取当然MS的BUG不断那是另一回事了.^_^.但是另一个普遍存在的问题是 由于ASP页面是纯文本的形式存放在服务器端可以轻易看到全部编程逻辑.这样给ASP应用商业化带来了一定的困难.解决的方法一般是使用组件技术将编程逻辑封装入DLL之中但问题

VBS脚本加密/解密VBS脚本(简易免杀版1.1)_vbs

Dim WshSHell,FSO On Error Resume Next Set WshSHell = WScript.CreateObject("WScript.Shell") Set FSO = CreateObject("Scripting.FileSystemObject") Set Args = WScript.Arguments Ver="1.1" CloseTime = 5 FileName = WScript.ScriptNam

ASP 通用模板类

模板 ASP 通用模板类. 适合存在较少循环的模板.未实现内部循环,需要使用正则表达式,较浪费资源和时间,如需使用可参考这篇文章. 特性可设定私有缓存或公共缓存,提高效率可自由选择使用 Stream 组件或 FSO 组件支持自定义文件编码可保存文件 属性 Name文本,该模板名称,主要用于使用公共缓存时区分不同模板. Format文本,文件编码类型,可设置值. Object文本,使用组件,可设置值: StreamFSO PublicCache布尔值,使用公共缓存,开启时模板文件将保存到Appli

ASP通用模板类

  ASP 通用模板类. 适合存在较少循环的模板.未实现内部循环,需要使用正则表达式,较浪费资源和时间,如需使用可参考这篇文章. 特性 可设定私有缓存或公共缓存,提高效率 可自由选择使用 Stream 组件或 FSO 组件 支持自定义文件编码 可保存文件 属性 Name 文本,该模板名称,主要用于使用公共缓存时区分不同模板. Format 文本,文件编码类型,可设置值. Object 文本,使用组件,可设置值: Stream FSO PublicCache 布尔值,使用公共缓存,开启时模板文件将

ASP实例代码:asp操作Excel类

asp操作Excel类: <%'*******************************************************************'使用说明'Dim a'Set a=new CreateExcel'a.SavePath="x" '保存路径'a.SheetName="工作簿名称"       '多个工作表 a.SheetName=array("工作簿名称一","工作簿名称二")'a.Sh

关于ASP的(VBScript)类

vbscript 首先ASP的(VBScript)类是由事件和方法(它们就是构成类的成员了)构成的,如果大家还没有接触过,可以先看看下面的说明(哈哈,我是现学现卖,说得不好请见谅) 在 Class 块中,成员通过相应的声明语句被声明为 Private(私有成员,只能在类内部调用) 或 Public(公有成员,可以在类内外部调用) .被声明为 Private 的将只在 Class 块内是可见的.被声明为 Public 不仅在 Class 块的内部是可见的,对 Class 块之外的代码也是可见的.没