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

[问题求助] VBS随机读取单数行,并让读到的单数行加1,输出这2行到剪贴板

本帖最后由 我来了 于 2014-4-15 22:14 编辑
I have not failed. I’ve just found 10,000 ways that won’t work. – Thomas Edison
我并没有失败。我只是找到了1万个不成功的方法。——托马斯·爱迪生

Failure defeats losers, failure inspires winners. – Robert T. Kiyosaki
失败可以打击输家,也可以启发赢家。——罗伯特·T·清崎

Some people dream of great accomplishments, while others stay awake and do them. – Anonymous
有人梦想伟大的成就,但有人一直清清楚楚地在做。——无名氏

I cannot give you the formula for success, but I can give you the formula for failure, which is: Try to please everybody. - Herbert B. Swope
我不能给你成功的计算公式,但我可以给你失败的计算公式,那就是:试着取悦每个人。——赫伯特·B·斯沃普
If you have always done it that way, it is probably wrong. - Charles Kettering
如果你一直用这种方法做事,那它很可能是错误的。——查尔斯·凯特宁
Being different is one of the most beautiful things on earth. - Anonymous
与众不同是世界上最美好的事情之一。——无名氏
Creativity is intelligence having fun. – Albert Einsten
创造力是智力的乐趣。——艾尔伯特·爱因斯坦

randomize
set fso = CreateObject("Scripting.Filesystemobject")
set a = CreateObject("Scripting.Dictionary")
set file = fso.OpenTextFile("D:\OperaZ_Y\英语谚语.txt")
do until file.AtendofStream
   m = m + 1
   a.add m,file.readline
loop
file.close
h=int(rnd * m + 1)
if h = m then h = m - 1
if h = 1 then h = 2
for i = h-1 to h
   str = str & a(i) & vbCrLf
Next
'msgbox str
CreateObject("WScript.Shell").Run "G:\PowerPro_4.9n7\配置文件夹\nircmd.exe clipboard set "&chr(34)&str&chr(34)
WScript.Sleep 1000
Set WshShell= WScript.CreateObject("WScript.Shell")
WshShell.SendKeys "^v"
WshShell.SendKeys "^{ENTER}"


配对! 我也不知如何表达,叠加一起大家应该懂了吧
就是一次读取  2行,并且这两行表达的的一个英语谚语~~

必须:

1,随机读取到的是单数行,
2,并外加它的下一行到剪贴板)

永远是形如:AAA+BBB,或CCC+DDD,
而不是BBB+CCC,就是文搭义(所在行跟所配的英文是对搭的~~)
AAA
BBB
CCC
DDD

本帖最后由 我来了 于 2014-4-15 15:08 编辑

回复 2# CrLf


    师兄,俺比较瓜,麻烦您给我组合到我上边的VBS里边去,多谢。
唉。。。实在搞这方面大菜瓜一个~~
那样,我就能用opera中定义的ctrl+shift+v直接使用了


PowerShell的确实是省事,可我不知如何弄成脚本到opera中调用啊。那个更一窍不通啊~~

TOP

我要把PowerShell编译成exe就更费劲了,还得要.net环境,
就不能在PE环境下使用了,还是VBS的生存能力好一些
当然思路好是好的

TOP

回复 6# CrLf


    为什么  我运行 就这个样子呢?

难道是因为setClip 这东东,俺没有?欺负我是外村的?

TOP

回复 7# CrLf


    你的PowerShell搞的很精干,赞一个,nice

我的WIN X64 企业版运行很好,搜索了下可以编译成.exe文件(从CSDN下载一个批量编译的,发现运行报错,网上有资料说,又好像编译不了,外行,我也看迷糊了)
那要是再加上
ctrl+v,ctrl+enter呢?


=============================
另外,我就是这么使用的

=================
大哥哥,你看能不能给整合到这里面

TOP

新版本 还是欺负我啊

TOP

回复 12# CrLf


我最早的意思是那样的,但那样做后,发现有问题
因为给出的英文翻译 和 中文的意思错位了
比如,读到了,第(偶数行)跟它的下一行,这样内容就造成了文不对题
所以,请大神出山弄个进化版
所以,你没发现,我最上面的贴子故意弄成了多色的

能不能生成随机数的种子,只读到奇数行,完事再相邻下一行的?

AHK的,AU3,的就不考虑了,因为又要再占一个软件上阵,
按键精灵的本来是弄出来了,改改就能运行,考虑到在opera中,所以就想只要一个VBS在原有代码上实现,原来有点复杂啊~~
再次感谢~~

TOP

正确的输出结果是:
1,当在 opera浏览器的论坛回贴框中 ,按下定义的热键ctrl+shift+v时
2,粘贴提交的
正确的内容是
If you have always done it that way, it is probably wrong. - Charles Kettering
如果你一直用这种方法做事,那它很可能是错误的。——查尔斯·凯特宁

====================
而不是
与众不同是世界上最美好的事情之一。——无名氏
Creativity is intelligence having fun. – Albert Einsten

也许这个操作要求有点蛋痛,全怪楼主不好

TOP

这贴子的题目,实在太纠结了,太不好编了,加了那么多注释,还是没有让人正确的理解,
看来我语文也是体育老师教的,都怪我不好,贴子问题没有编辑明白。

TOP

回复 17# wscript


    这位老师,这个问题,您会解不?

TOP

返回列表