| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 697 人关注过本帖
标题:我真的很郁闷。声明重复。
只看楼主 加入收藏
swn2008
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-8-2
结帖率:100%
收藏
 问题点数:0 回复次数:2 
我真的很郁闷。声明重复。
代码如下:
该源代码的最终目的是用来转换一个字符串变量。最终结果是将一个字符串转换成“1:********”这样的格式。真正套用该变量的只有程序后后那么一小段。一旦运行这个自定义变量时。提示当前范围内的声明重复,VB提示错误的地方就是红色文字的位置,开始的时候我把inputstr = "123456" 这一段放在Dim inputstr As String后面,结果软件提示实时错误424,要求对象。
Function EncodeUser(UserName As String) As String
If CheckUserEncode.Value Then
Dim outstr As String
Dim DicStr As String
DicStr = "9012345678abcdeABCDEFGHIJKLMNfghijklmnUVWXYZxyzuvwopqrstOPQRST"
Dim DicA() As String
ReDim DicA(Len(DicStr) - 1)
Dim ff As Long
For ff = 0 To Len(DicStr) - 1
DicA(ff) = Mid(DicStr, ff + 1, 1)
Next
Dim DicB(15) As Byte
DicB(0) = &H11
DicB(1) = &H34
DicB(2) = &HC9
DicB(3) = &H23
DicB(4) = &H75
DicB(5) = &H18
DicB(6) = &HD7
DicB(7) = &HE2
DicB(8) = &H12
DicB(9) = &H35
DicB(10) = &H29
DicB(11) = &H2B
DicB(12) = &HEC
DicB(13) = &HB6
DicB(14) = &H23
DicB(15) = &H19
'**************************************************************************    '
inputstr = "123456"
Dim inputstr As String
inputstr = UserName
Dim InputStrArray() As String
ReDim InputStrArray(Len(inputstr) - 1)
Dim OutPutArray() As String
ReDim OutPutArray(500)
For ff = 0 To Len(inputstr) - 1
InputStrArray(ff) = Mid(inputstr, ff + 1, 1)
Next
Dim i As Long
i = 0
Dim j As Long
j = 0
Dim num4 As Long: num4 = &H25
Dim di As Long
Dim var2 As Long
Dim index As Long
Dim var3 As Long: var3 = 0
For i = 0 To Len(inputstr) - 1
For j = 0 To Len(DicStr) - 1
If InputStrArray(i) = DicA(j) Then
If i >= &H10 Then
di = DicB(i Mod &H10)
Else
di = DicB(i)
End If
var2 = num4 * 3
index = (((di Xor var2) Xor var3) + j) Mod &H3E
OutPutArray(i) = DicA(index)
var2 = index
num4 = num4 Xor (var2 + &H24D9)
End If
Next j
If OutPutArray(i) = "" Then
OutPutArray(i) = InputStrArray(i)
End If
var3 = var3 + 5
Next i
Dim kk As Long
For kk = 0 To UBound(OutPutArray)
If OutPutArray(kk) <> "" Then
outstr = outstr + OutPutArray(kk)
End If
Next
outstr = "1:" + outstr
EncodeUser = outstr
Else
EncodeUser = UserName
End If
End Function



Private Sub Command1_Click()
Text2.Text = EncodeUser(Text1.Text)
End Sub
搜索更多相关主题的帖子: 源代码 字符串 软件 
2011-08-02 18:25
msgj
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:4
帖 子:190
专家分:914
注 册:2009-10-3
收藏
得分:0 
把inputstr = "123456" 这一段放在Dim inputstr As String后面是对的,软件提示实时错误424,要求对象是If CheckUserEncode.Value Then 这句的问题,CheckUserEncode没有定义,你想判断UserName有没
有数据,可以用:
If Len(UserName) > 0 Then
2011-08-02 19:29
swn2008
Rank: 1
等 级:新手上路
帖 子:7
专家分:0
注 册:2011-8-2
收藏
得分:0 
回复 2楼 msgj
这位朋友,谢谢你,我已经苦恼了很久,终于解决了。
2011-08-03 11:25
快速回复:我真的很郁闷。声明重复。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037408 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved