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

[问题求助] [已解决]VBS如何自动复制文本并保存

[复制链接]
发表于 2013-8-28 11:13:09 | 显示全部楼层 |阅读模式
本帖最后由 xgda 于 2013-8-29 09:00 编辑

求两个VBS


①一般来说,在网页中用鼠标任意选取一段内容

然后按ctrl+c就能将所选取的内容复制到剪切板上

想求一vbs,此vbs放在C盘,然后发送到桌面快捷方式,设此快捷方式的快捷键为(Num -)

当在网页中选取一段文字后,直接按(Num -)一个按键就能将所选取的内容复制下来并保存在C:\log.txt里面
C:\log.txt里只保存上一次复制的内容即可,或者说每次运行此VBS时先删除C:\log.txt再新建一个C:\log.txt都行
.

②另外一个VBS同样放C盘,然后发送到桌面快捷方式,设此快捷方式的快捷键为(Num +)
当按下(Num +)时,改VBS读取C:\log.txt内容,然后用
Set a=Wscript.CreateObject("Wscript.Shell")
a.SendKeys "abcdefg"
的方式发送出文字。 "abcdefg"为字母加数字不会超过20位,不含汉字或其他特殊字符
(一定不能用ctrl+v的方式,因为所要输入的文本框对ctrl+v免疫!!)



多谢!!!!

有没有论坛捐助什么的,本人要赞助 20圆

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2013-8-28 14:49:09 | 显示全部楼层
我的签名里面有链接
发表于 2013-8-28 15:04:32 | 显示全部楼层
本帖最后由 czjt1234 于 2013-8-28 15:09 编辑

1 要求选择后先ctrl + C复制
  1. Dim objFSO, objTextStream, Form, TextBox
  2. Set objFSO = CreateObject("Scripting.FileSystemObject")
  3. Set objTextStream = objFSO.OpenTextFile("C:\log.txt", 2, True)
  4. Set Form = CreateObject("Forms.Form.1")
  5. Set TextBox = Form.Controls.Add("Forms.TextBox.1").Object
  6. TextBox.MultiLine = True
  7. If TextBox.CanPaste Then
  8.     TextBox.Paste
  9.     objTextStream.Write TextBox.Text
  10.     objTextStream.Close()
  11. End If
复制代码
2
  1. Dim objFSO, objTextStream, objWshShell, strS, i
  2. Set objFSO = CreateObject("Scripting.FileSystemObject")
  3. Set objTextStream = objFSO.OpenTextFile("C:\log.txt", 1, False)
  4. strS = objTextStream.ReadLine()
  5. Set objWshShell = CreateObject("Wscript.Shell")
  6. For i = 1 To Len(strS)
  7.     objWshShell.SendKeys Mid(strS, i, 1)
  8. Next
复制代码

评分

参与人数 1技术 +1 收起 理由
xgda + 1 谢谢

查看全部评分

 楼主| 发表于 2013-8-28 15:48:31 | 显示全部楼层
1 要求选择后先ctrl + C复制2
czjt1234 发表于 2013-8-28 15:04


第一个说的意思不是先ctrl + C复制,是直接按(Num -)一个按键就能将所选取的内容复制下来
就是由(Num -)一个按键代替ctrl + C两个按键


第二个当我按下(Num +)时,貌似当前操作的对象就不是要输入的文本框了



按之前光标在闪
   
按之后光标不在了



Set a=Wscript.CreateObject("Wscript.Shell")
a.SendKeys "%{TAB}"
为什么也不能切换
 楼主| 发表于 2013-8-28 15:50:43 | 显示全部楼层
怎样用类似
Set a=Wscript.CreateObject("Wscript.Shell")
a.SendKeys "%{TAB}"
的方法将操作的对象返回到文本框里?
发表于 2013-8-28 17:26:13 | 显示全部楼层
  1. Set objWshShell = CreateObject("Wscript.Shell")
  2. objWshShell.AppActivate "我的电脑"    '激活指定标题栏
  3. Wscript.Sleep 500    '延时半秒,防止反应不过来
复制代码


第一个要求做不到,因为不能固定标题栏
否则倒可以激活标题栏,再发送Ctrl + C
 楼主| 发表于 2013-8-28 18:45:35 | 显示全部楼层
第一个要求做不到,因为不能固定标题栏
否则倒可以激活标题栏,再发送Ctrl + C
czjt1234 发表于 2013-8-28 17:26



    如果只在一个网页里复制的话是不是能行呢?
设该网页为 “批处理之家 批处理_BAT_CMD_DOS_VBS_Perl_Python_PowerShell - Windows Interent Explorer"
第一个改怎么改呢
 楼主| 发表于 2013-8-28 18:50:21 | 显示全部楼层
我的签名里面有链接
Batcher 发表于 2013-8-28 14:49


【论坛捐助】http://www.bathome.net/thread-10403-1-1.html
链接还打不开啊
您无权进行当前操作,原因如下:

对不起,本帖要求阅读权限高于 10 才可浏览,请返回。
发表于 2013-8-28 20:19:46 | 显示全部楼层
回复 8# xgda


    现在应该可以了
发表于 2013-8-29 12:53:54 | 显示全部楼层
这样就叫已解决??
我可以明确的告诉你,这两个目的只用系统自带的vbs都是完全可以搞定的。
前提是你要把实际的应用环境列出来,
第一个,是什么浏览器,chrome和firefox没法弄,但是ie内核的完全可以;
第二个,到底是要按键发送到一个什么东西里面,如果是确定的程序,那也是完全可以的,谁告诉你必须固定标题栏才能激活窗口?
 楼主| 发表于 2013-8-30 06:28:13 | 显示全部楼层
回复 10# zz100001


      浏览器为系统自带的IE6,要发送的目标也是一个ie网页的输入框
 楼主| 发表于 2013-8-30 06:40:44 | 显示全部楼层
这个ie网页的输入框貌似给嵌了一个applet的小程序,要输入的数据就是一些条码,必须用条码枪扫出来,不能直接手动输入,手动输入的话该输入框就会把输入的数据给清空,你输多快它就清多快,当然也不能用Ctrl V。
其实如果有什么方法能不加载那个applet的话也可以的
 楼主| 发表于 2013-8-30 06:46:59 | 显示全部楼层
用上面的方法确实解决了不能在那个输入框手动输数据的难题
发表于 2013-8-30 09:57:39 | 显示全部楼层
我周围已经找不到ie6了............
贴第一个的代码吧,我在ie9和ie10上面试了可以,第二个没有具体的网页也没法写了
  1. For Each w In CreateObject("Shell.Application").Windows
  2.     If TypeName(w.document) = "HTMLDocument" Then
  3.         s = w.document.selection.createRange().text
  4.         If Not s = "" Then
  5.             CreateObject("Scripting.FileSystemObject") _
  6.                 .CreateTextFile("C:\log.txt", True) _
  7.                     .Write s
  8.             Exit For
  9.         End If
  10.     End If
  11. Next
复制代码

评分

参与人数 1技术 +1 收起 理由
xgda + 1 感谢

查看全部评分

 楼主| 发表于 2013-8-30 10:50:55 | 显示全部楼层
回复 14# zz100001


  
刚在自己电脑上试了,真的可以!!!
不过是要拿到公司电脑上用的,晚上上班再试一下,谢谢...
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 01:41 , Processed in 0.022173 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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