如何在Notepad ++中创建“即时消息” - VBScript

时间:2014-08-28 18:46:57

标签: loops vbscript notepad++ instant-messaging

作为与几个朋友的过去时间,我正试图通过记事本++制作一种“即时消息”。

设置如下: 网络上连接了三台计算机。在计算机2上,其目录中有Notepad ++。在计算机3上,有VBScript和文本文件(在Notepad ++中打开)。 Notepad ++中的“F5”键已分别反弹为“从磁盘重新加载”。

目标是让Notepad ++每2秒左右刷新一次,但只能在Notepad ++中刷新,即使在后台也是如此。 VBScript意味着关闭Notepad ++。

VBScript如下(请记住,我之前没有VBScripts的经验;期待重大缺陷):

strFileName = "\\08-111096-CISCO\Users\Straka.J\Downloads\Notepad++"  
Dim oShell

set oShell = CreateObject("wScript.Shell")  
oShell.Run "notepad++ ""\\08-111099-CISCO\Users\Javorsky.G\Downloads\New Text Document.txt"""  
oShell.AppActivate "\\08-111096-CISCO\Users\Straka.J\Downloads\Notepad++\notepad++.exe"  
Do    
    WScript.Sleep 500  
    oShell.SendKeys "{F5}"  
    wScript.Sleep 2000  
Loop Until Quit  

Notepad ++将打开文本文件并开始F5循环。但是,无论Notepad ++是否为活动窗口,F5都将继续运行,并且在Notepad ++关闭时脚本不会关闭。

我当然错过了一些东西,但经过几个小时的研究和实验,我找不到解决方案。

只用VBScript就可以实现这些结果吗?

1 个答案:

答案 0 :(得分:0)

如果调用成功(如果找到并激活了窗口),

AppActivate()将返回True。使用该返回值来确定是继续刷新还是关闭脚本。

Do While oShell.AppActivate("\\08-111096-CISCO\Users\Straka.J\Downloads\Notepad++\notepad++.exe")

    oShell.SendKeys "{F5}"
    WScript.Sleep 2000

Loop

' Script exit