发送关键胜利+ E

时间:2019-01-11 17:14:34

标签: windows perl

我尝试从cmd(Perl Windows)执行快捷方式 这项工作部分完成,但没有打开Windows资源管理器。

 use Win32::GuiTest;
 Win32::GuiTest::SendKeys("{LWI}E");

这将打开Windows星型菜单,然后输入E 我想直接打开Windows资源管理器,我尝试了很多命令,但没有任何效果。你能给点建议吗?

1 个答案:

答案 0 :(得分:1)

启动资源管理器的最简单方法是仅启动资源管理器:

system 'explorer.exe';

但是,如果您真的想使用Win32 :: GuiTest,那么可以使用以下方法:

use strict;
use warnings;

use Win32::GuiTest qw(SendKeys SendRawKey :VK);

SendRawKey VK_LWIN, 0;
SendKeys 'e';
SendRawKey VK_LWIN, KEYEVENTF_KEYUP;

问题是SendKeys会为每个字符发出keydown / keyup事件。我们需要 Win 键的单独keydown和keyup事件,围绕内部 E