如何在Python脚本中模拟记事本按下Ctrl+右Shift组合键?
修改Python函数实现模拟Ctrl+右Shift组合键
要实现模拟按下Ctrl+右Shift组合键,只需修改原函数中SendKeys的参数即可。WScript.Shell的SendKeys语法中,需用{RSHIFT}指定右Shift键,为确保组合键被正确触发,推荐使用显式的按下/松开动作(相比简写更可靠):
修改后的完整函数:
import subprocess import os def open_in_notepad(file_path): try: subprocess.Popen(['notepad.exe', file_path]) # 模拟按住Ctrl → 按住右Shift → 松开右Shift → 松开Ctrl的完整流程 os.system(f'powershell -command "& {{$wshell = New-Object -ComObject WScript.Shell; $wshell.AppActivate(\'Notepad\'); Start-Sleep -Milliseconds 500; $wshell.SendKeys(\'{{CTRL down}}{{RSHIFT down}}{{RSHIFT up}}{{CTRL up}}\') }}"') except Exception as e: print('Error:', e)
关键修改说明:
- 将原
SendKeys(\'^a\')替换为显式的按键序列,完整模拟物理按键的按下/松开流程,避免简写可能出现的触发失败问题。 - 保留原有的
Start-Sleep -Milliseconds 500,确保记事本窗口完全加载并激活后再执行按键操作,保证操作有效性。
内容的提问来源于stack exchange,提问作者YasserKhalil
相关产品推荐
相关产品推荐

