使用perl脚本从Windows 8桌面调用键盘快捷键

使用perl脚本从Windows 8桌面调用键盘快捷键,perl,Perl,我想编写一个Perl脚本,它应该按照以下顺序从桌面发送以下键 ctr+ESC 进入 赢+← 赢+D 赢+E 有人知道如何使用Perl脚本吗?您研究过AutoIt吗?您将在AutoIt社区中找到大量关于如何进行类似操作的信息 然后,返回到perl,在windows中查找SendKeysAPI。自从我上次安装ActivePerl已经15年了,但如果我没记错的话,那里有很多windows库可以使用 如果您没有这样的库,那么您需要弄清楚如何直接使用windows API。这不应该太难。查找SendKey

我想编写一个Perl脚本,它应该按照以下顺序从桌面发送以下键

  • ctr+ESC

  • 进入

  • 赢+←

  • 赢+D

  • 赢+E


  • 有人知道如何使用Perl脚本吗?

    您研究过AutoIt吗?您将在AutoIt社区中找到大量关于如何进行类似操作的信息

    然后,返回到perl,在windows中查找
    SendKeys
    API。自从我上次安装ActivePerl已经15年了,但如果我没记错的话,那里有很多windows库可以使用

    如果您没有这样的库,那么您需要弄清楚如何直接使用windows API。这不应该太难。查找
    SendKeys
    API。您可能需要查找桌面的
    hwnd

    (这里有很多提示,很抱歉没有解决方案,但是这些提示会让你达到目的!)

    所以我找到了这个模块,它看起来很简单:

    Win32::GuiTest::SendKeys("^{ESCAPE");
    Win32::GuiTest::SendKeys("{ENTER}");
    Win32::GuiTest::SendKeys("{LWIN}<-");
    Win32::GuiTest::SendKeys("{LWIN}D");
    Win32::GuiTest::SendKeys("{LWIN}E");
    
    Win32::GuiTest::SendKeys(“^{ESCAPE”); Win32::GuiTest::SendKeys(“{ENTER}”);
    Win32::GuiTest::SendKeys(“{LWIN}您研究过AutoIt吗?您将在AutoIt社区中找到大量关于如何进行类似操作的信息

    然后,回到perl,在windows中查找
    SendKeys
    API。我上次安装ActivePerl已经15年了,但是如果我没记错的话,那里有很多windows库可以使用

    如果您没有这样的库,那么您需要了解如何直接进入windows API。这应该不会太难。请查找
    SendKeys
    API。您可能希望找到桌面的
    hwnd

    (这里有很多提示,很抱歉没有解决方案,但是这些提示会让你达到目的!)

    所以我找到了这个模块,它看起来很简单:

    Win32::GuiTest::SendKeys("^{ESCAPE");
    Win32::GuiTest::SendKeys("{ENTER}");
    Win32::GuiTest::SendKeys("{LWIN}<-");
    Win32::GuiTest::SendKeys("{LWIN}D");
    Win32::GuiTest::SendKeys("{LWIN}E");
    
    Win32::GuiTest::SendKeys(“^{ESCAPE”); Win32::GuiTest::SendKeys(“{ENTER}”);
    Win32::GuiTest::SendKeys(“{LWIN}谢谢你,Daren..还有一个问题,比如SendKeys,我必须首先选择要使用这些键盘快捷键的窗口,但我必须从win8桌面本身执行这些操作,我该如何做…
    Win32:GUI:GetDesktopWindow()
    ?谢谢你,Daren..还有一个问题,比如sendkeys,我必须首先选择要使用这些键盘快捷键的窗口,但我必须从win8桌面本身执行这些操作,我将如何进行…
    Win32:GUI:GetDesktopWindow()