现在的位置: 首页 > 综合 > 正文

给一个生成随机码的函数

2013年08月27日 ⁄ 综合 ⁄ 共 1341字 ⁄ 字号 评论关闭
Public Function MakeRndPass(ByVal passlen,ByVal passtype)
  dim passFull,passNumber,passSpecial,passCharNumber,passChar,pass,passUpperCharNumber,passLowerCharNumber,passUpperChar,passLowerChar,ii,jj
  passFull = "1234567890!@#$%^&*()[];',./{}:?`~-=/_+|abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
  passNumber = "1234567890"
  passSpecial = "!@#$%^&*()[];',./{}:?`~-=/_+|"
  passCharNumber = "abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  passUpperCharNumber = "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  passLowerCharNumber = "abcdefghijklmnopqrstuvwxyz1234567890"
  passChar = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"
  passUpperChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
  passLowerChar = "abcdefghijklmnopqrstuvwxyz"
  select case lcase(trim(passType))
  case "passfull"
        pass = passFull
  case "passnumber"
        pass = passNumber
  case "passspecial"
        pass = passSpecial
  case "passcharnumber"
        pass = passCharNumber
  case "passchar"
        pass = passChar
  case "passupperchar"
        pass = passUpperChar
  case "passlowerchar"
        pass = passLowerChar
  case "passuppercharnumber"
        pass = passUpperCharNumber
  case "passlowercharnumber"
        pass = passLowerCharNumber
  case else
        pass = passlowercharnumber
  end select
  makeRndPass=""
  for ii=1 to cint(passlen)
      randomize
      jj = int(rnd()*len(pass)+1)
      makeRndPass = cstr(makeRndPass) & mid(pass,jj,1)
  next
End Function

 

抱歉!评论已关闭.