找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 15196|回复: 1

[问题求助] VBS为何无法读取到文本的指定行内容?

[复制链接]
发表于 2016-1-5 21:30:52 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-1-5 22:00 编辑

问题:我想用VB编个SecureCRT 5.1脚本,目的是在弹窗中输入设备号就能自动输入相对应的MAC地址。但是我自己编的脚本只在输入设备号为1时,自动输入相对应MAC:031001。但输入2或者3都直接报错 "错误的设备号,请核对" 。求大神解答
脚本如下:
  1. # $language = "VBScript"
  2. # $interface = "1.0"

  3. Sub Main
  4. On Error Resume Next
  5. Const ForReading = 1, ForWriting = 2, ForAppending = 8
  6. Dim fso,MAC1,line,params
  7. Dim DeviceNo
  8. Set fso = CreateObject("Scripting.FileSystemObject")
  9. Set MAC1 = fso.OpenTextFile("c:\2.ini",Forreading, False)
  10. crt.Screen.Synchronous = True
  11.      
  12. line = MAC1.ReadLine
  13. params = Split (line)

  14. crt.Screen.WaitForString "或批处理文件。"
  15. DeviceNo = inputbox("请输入设备号","设备号输入对话框")

  16. If DeviceNo = params(0) Then

  17. crt.Screen.Send params(1) & vbcr
  18. Else
  19.    MsgBox "错误的设备号,请核对"

  20.                End If
  21.     crt.Screen.Synchronous = False   
  22. End Sub
复制代码
2.ini文件中格式如下:
1 031001
2 031002
3 031003
发表于 2016-1-5 21:58:18 | 显示全部楼层
加个遍历
  1. Set fso = CreateObject("Scripting.FileSystemObject")
  2. Set f = fso.OpenTextFile("C:\2.ini", 1)
  3. n = inputbox("请输入设备号","设备号输入对话框")
  4. Do While f.AtEndOfStream <> True
  5.     t = Split(f.ReadLine)
  6.     If n=t(0) Then msgbox t(1)
  7. Loop
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 07:43 , Processed in 0.081170 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表