大家帮帮忙??如何将这段Delphi函数改写成javascript或vbscript函数??

HELLO_JIM 2007-03-05 11:07:12
DELPHI函数如下:
function encrypt(const s:string):string;
var
j,k,tmp:word;
tmpstr:string;
key:array[1..18] of word= (43,54,75,2,687,43,65,43,4,23,34,65,43,8,33,33,54,3);

begin
k:=1;
for j:=1 to length(s) do
begin
tmp:=ord(s[j]) xor key[k];
tmpstr:=tmpstr+inttohex(tmp,2);
k:=k+1;
end;
result:=tmpstr;
end;

...全文
185 点赞 收藏 10
写回复
10 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
dangsz 2007-03-05
有两个函数我不会,你找一下相关资料,我把语法写给你.
<%
Function Encrypt(s)
Dim J,K,Tmp
Dim TmpStr
Dim Key,Keys
Key="43,54,75,2,687,43,65,43,4,23,34,65,43,8,33,33,54,3"
Keys=Split(Fides,",")
K=1
For J=1 To Len(s)
Tmp=Asc(s(i)) Xor Keys(k) '这个不是函数,我弄错了.应该这样
TmpStr=TmpStr&inttohex(Tmp,2) '这个Inttohex函数,在VB里我不会用
k=k+1
Next
Encrypt=TmpStr
End Function

%>
inttohex应该是10转16进制函数,vbscrip里好像没有这个函数,你可以自己写一个.
回复
dangsz 2007-03-05
Response.Write inttohex("tmp",2) 这一句没有.
回复
dangsz 2007-03-05
有两个函数我不会,你找一下相关资料,我把语法写给你.
<%
Response.Write inttohex("tmp",2)
Function Encrypt(s)
Dim J,K,Tmp
Dim TmpStr
Key="43,54,75,2,687,43,65,43,4,23,34,65,43,8,33,33,54,3"
K=1
For J=1 To Len(s)
Tmp=Asc(s(i)) Xor Key(k) '这个Key函数,在VB里我不会用
TmpStr=TmpStr&inttohex(Tmp,2) '这个Inttohex函数,在VB里我不会用
k=k+1
Next
Encrypt=TmpStr
End Function
%>
回复
HELLO_JIM 2007-03-05
这是一个加密函数,即把数据写入数据库后,实行加密
回复
dangsz 2007-03-05
好像不键盘控件,是数组.
回复
dangsz 2007-03-05
我给我解释一下这个自定义函数是获取键盘是什么值?做什么用?我看能不能通过VBCRIPT语法用其它方法写出.
回复
HELLO_JIM 2007-03-05
dangsz,能不能帮我改一下,谢谢了
回复
dangsz 2007-03-05
vbscript 代码很简单,不过关于键盘控制方面的我不太会了.
回复
ptma 2007-03-05
如上 , JavaSvript 的我已经发到上面所说的帖子里了
回复
lihuasoft 2007-03-05
这里早已有答案了:

http://community.csdn.net/Expert/topic/5376/5376044.xml?temp=.5425074
回复
相关推荐
发帖
Delphi
创建于2007-08-02

4893

社区成员

Delphi 开发及应用
申请成为版主
帖子事件
创建了帖子
2007-03-05 11:07
社区公告
暂无公告