gpt4 book ai didi

api - 使用VBScript控制记事本

转载 作者:行者123 更新时间:2023-12-02 04:44:27 25 4
gpt4 key购买 nike

结合另一个非常不同的项目,我正在尝试编写一个 VBScript,它在执行时将执行以下操作:

  • 打开记事本实例(作为隐藏或最小化窗口)
  • 聚焦记事本实例
  • 将“Hello world”写入打开的记事本文件
  • 发出适当的 alt+S 等命令,将桌面上的文件另存为“PrototypeText.txt”
  • 关闭记事本。

  • 我最大的困惑在于上面的步骤“2”,尤其是“4”。我知道如何在 VBScript 中做所有其他事情。谁能帮我完成这两个步骤?

    最后,我意识到有更实用的方法可以实现这一点,例如 AutoHotKey,或者直接写入 *.txt 文件,也许是其他语言。请理解以上程序为 另一个项目的概念验证 ,本身不是可交付成果。

    非常感谢您花时间回复。指定如何执行上述“2”和“4”的链接(我还没有找到)也可以。

    最佳答案

    在 WSH 对象中,如果您在该环境中运行 vbs(很可能),则使用 appactivate .但是无法激活隐藏的窗口,所以...

    再次sendkeys在 WSH 对象中可以做 4 个(但不能在隐藏窗口中)。

    这是 vbscript 帮助 ( https://msdn.microsoft.com/en-us/library/8c6yea83(v=vs.84).aspx ) 中使用两个命令的示例,并注意使用 sleep 让应用程序有机会处理命令。

         set WshShell = WScript.CreateObject("WScript.Shell")
    WshShell.Run "calc"
    WScript.Sleep 100
    WshShell.AppActivate "Calculator"
    WScript.Sleep 100
    WshShell.SendKeys "1{+}"
    WScript.Sleep 500
    WshShell.SendKeys "2"
    WScript.Sleep 500
    WshShell.SendKeys "~"
    WScript.Sleep 500
    WshShell.SendKeys "*3"
    WScript.Sleep 500
    WshShell.SendKeys "~"
    WScript.Sleep 2500

    最小化的窗口可以获得焦点。

    使用这样的字符串来获取桌面。包括引号。 "%userprofile%\desktop\yourfilename.txt" .引号是在有空格的情况下。

    AppActivate 也返回一个代码。如果它可以或被激活,则为真。您可以通过激活对话框标题来使用它来测试对话框。这真的是窗口激活。

    关于api - 使用VBScript控制记事本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34421170/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com