Office中国论坛/Access中国论坛

标题: 求助一个加密函数 [打印本页]

作者: fswxs    时间: 2007-8-15 23:37
标题: 求助一个加密函数
我想把客户名称字段加密,不要加密成乱码,而是加密成数字或者是数字与字母的组合,有可能吗?请高手赐教代码,不胜感谢!
解密不能出错哦
作者: hi-wzj    时间: 2007-8-16 09:36
将汉字转换成区位码再进行加工处理即可。
作者: fswxs    时间: 2007-8-16 09:45
看来是行得通的!
我很菜的,版主能不能抽出宝贵时间写段代码,再次感谢!
作者: snowmoonzzb    时间: 2007-9-6 08:20
:lol
作者: linag516    时间: 2009-5-10 17:00

作者: fan0217    时间: 2009-5-10 20:01
  1. Public Function StringEnDeCodecn(ByVal strSource As String, ByVal enCode As Single) As String

  2. '该函数只对中西文起到加密作用

  3. '参数strSource为:需要加密的字符,参数enCode为:密钥

  4. '加密:?StringEnDeCodecn("Access爱好者","123456")

  5. ' JR.O\板簣征

  6. '解密:?StringEnDeCodecn("JR.O\板簣征","123456")

  7. ' Access爱好者


  8. On Error GoTo ErrEnDeCode
  9. Dim X As Single
  10. Dim strNum As Long, rndInt As Integer
  11. Dim sChar As String * 1
  12. Dim strTmp As String
  13. Dim i As Integer

  14. If enCode = 0 Then enCode = 1

  15. If enCode < 0 Then
  16. enCode = enCode * (-1)
  17. End If

  18. X = Rnd(-enCode)

  19. For i = 1 To Len(strSource) Step 1
  20. sChar = Mid(strSource, i, 1)
  21. strNum = Asc(sChar)

  22. g:
  23. rndInt = Int(127 * Rnd)
  24. If rndInt < 30 Or rndInt > 100 Then GoTo g
  25. strNum = strNum Xor rndInt
  26. strTmp = strTmp & Chr(strNum)
  27. Next i

  28. StringEnDeCodecn = strTmp

  29. Exit Function


  30. ErrEnDeCode:
  31. StringEnDeCodecn = ""
  32. MsgBox Err.Number & "" & Err.Description

  33. End Function
复制代码

作者: fswxs    时间: 2009-7-22 16:14
谢谢版主!我希望加密后不是乱码,而是数字或字母
作者: today416    时间: 2011-11-3 22:17
会出现错误,假如是数字的话




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3