1. 用户定义变量 EmailListPath "电子邮件列表文件路径"
  2. (语句无法识别,可能有错误): UserVar currentPos = 1 "从第...个邮箱登陆" //当前的邮件位置
  3. 注释:使用前需要对 EmailListPath 用户变量进行赋值
  4. 注释:
  5. 注释:例如:c:\EmailList.txt
  6. 注释:文件每一行的内容为:账号|密码
  7. 注释:比如:有一个邮箱地址为:aaabbccc@163.com
  8. 注释:密码为:123456
  9. 注释:aaabbccc|123456
  10. 注释:aaeedd|123456
  11. 注释:
  12. 注释:currentPos 表示要从第几个邮箱地址开始登陆
  13. 注释:默认为1
  14. 注释:取得邮箱地址个数
  15. 令 count = GetTxtCount(EmailListPath)
  16. 调用 Msg.Tips("163邮箱自动登陆器已启动!" & "共有 " & count & " 个邮箱")
  17. 注释:MessageBox EmailListPath
  18. 令 PID = Web.Bind("wqm.exe")
  19. 标记 开始
  20. 调用 Web.Go("http://mail.163.com")
  21. 延时 1000 毫秒
  22. 注释:id:idInput username
  23. 注释:id:pwdInput pwd
  24. 注释:tag:BUTTON&value:登 录
  25. 令 email = (命令库 文件)读取指定行文本内容(EmailListPath,currentPos)
  26. 定义变量 emailInfoArray
  27. 令 emailInfoArray = split(email,"|")
  28. 令 userName = emailInfoArray(0)
  29. 令 pwd = emailInfoArray(1)
  30. 调用 Web.HtmlInput(userName,"id:idInput")
  31. 调用 Web.HtmlInput(pwd,"id:pwdInput")
  32. 延时 500 毫秒
  33. 调用 Msg.Tips("第 " & currentPos & " 个 账号:" & userName & ",共有 " & count & " 个邮箱")
  34. 调用 Web.HtmlClick("tag:BUTTON&value:登 录")
  35. 注释:检查密码是否正确
  36. 延时 5000 毫秒
  37. 循环当 1 = 1 时
  38.     如果 left(web.geturl,41) = "http://mail.163.com/errorpage/err_163.htm" 则
  39.         注释:删除
  40.         调用 (命令库 文件)删除指定行文本内容(EmailListPath,currentPos)
  41.         跳转到标记 开始
  42.         注释:EndScript
  43.     否则
  44.         跳出循环
  45.     条件结束
  46.     延时 50 毫秒
  47. 循环结束
  48. 循环当 1 = 1 时
  49.     令 url = Web.GetURL
  50.     如果 InStr(1,url,"js3/main.jsp",1) > 1 则
  51.         注释:MessageBox "hhhh"
  52.         注释:id:lnkexit&frame:0
  53.         调用 Web.HtmlClick("id:lnkexit&frame:0")
  54.         延时 1500 毫秒
  55.         令 currentPos = currentPos + 1
  56.         如果 currentPos > count 则
  57.             调用 Msg.Tips("登陆自动登击完成!共有:" & count & "个邮箱地址。脚本自动结束!")
  58.             脚本停止运行
  59.         条件结束
  60.         跳转到标记 开始
  61.     条件结束
  62.     延时 500 毫秒
  63. 循环结束
  64. 脚本停止运行
  65. 注释://////////////////////////////////函数与子过程////////////////////////////////////
  66. 注释:取得文本文件的行数,包括空白行
  67. 函数 GetTxtCount(filePath)
  68.     令 fileLen = File.GetFileLength(filePath)
  69.     令 handle = File.OpenFile(filePath)
  70.     调用 File.SeekFile(handle,1)
  71.     令 str = File.ReadLine(handle)
  72.     令 i = 0
  73.     循环当 trim(str) <> "" 时
  74.         令 str = File.ReadLine(handle)
  75.         令 i = i + 1
  76.     循环结束
  77.     调用 File.CloseFile(handle)
  78.     令 GetTxtCount = i
  79. 函数结束
  80. 注释:往文本文件追加一行
  81. 子程序 AppendTXTString(filePath,str)
  82.     令 fileLen = File.GetFileLength(filePath)
  83.     令 handle = File.OpenFile(filePath)
  84.     调用 File.SeekFile(handle,fileLen)
  85.     调用 File.WriteLine(handle,str)
  86.     调用 File.CloseFile(handle)
  87. 子程序结束
  88. 注释:取随机数
  89. 函数 rndInt(lowerbound,upperbound)
  90.     令 rndInt = Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
  91. 函数结束
  92. 子程序 TypeString(str)
  93.     令 s = ""
  94.     如果 Len(str) > 0 则
  95.         令 i = 1
  96.         循环 Len(str) 次
  97.             令 s = atos(Mid(str,i,1))
  98.             延时 50 毫秒
  99.             (键盘)按下 s 键
  100.             延时 50 毫秒