[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[问题求助] VBS读取文本再由数组传给SendKeys为何出错?

这是程序是通过读取一个文本文件(中文),然后将每个字读取到数组,由数组传给SendKesys,然后输出!
-----------------------------------------------------------------------------------------------------------------
显示的时候,有时候会出现一个汉字重复发送,或者少发送,并且显示的有“ECHO 处于打开状态”,这些
没有用的字符!
麻烦大家给看看!
-----------------------------------------------------------------------------------------------------------------
  1. dim b(100)
  2. set fso=CreateObject("scripting.filesystemobject")
  3. set wshobj=Wscript.CreateObject("wscript.shell")
  4. set ffile=fso.Opentextfile("C:\Documents and Settings\hyf_soft\桌面\ceshiddd11.txt",1,flase)
  5. wshobj.run"notepad"
  6. a1=ffile.readline
  7. a2=len(a1)
  8. for j=1 to a2
  9.          a3=mid(a1,j,1)
  10.          b(j-1)=a3
  11.          j=j+1
  12. next
  13. wshobj.sleep 500
  14. for i=0 to a2-1
  15.         a4=b(i)
  16.         wshobj.Run "cmd.exe /c echo " & a4 & "| clip.exe", vbHide
  17.         wshobj.SendKeys "^v"
  18.         wshobj.SendKeys"{BACKSPACE}"
  19. next
  20. ffile.close
复制代码
-----------------------------------------------------------------------------------------

在第17行上面加一行, print一下a4,看看是否为空或者其它特殊字符串。

TOP

目测 j=j+1 这句就不该要,又不是do...loop循环。

TOP

返回列表