Windows远程协助下PowerShell/Python脚本无法输入字符串问题咨询
问题解答
原因分析
传统Windows远程协助(Remote Assistance)确实会出于安全目的拦截这类模拟键盘输入的操作。它的会话隔离机制会限制通过wscript.shell.SendKeys或Python的pyautogui等工具发起的模拟输入,防止恶意脚本通过远程会话注入未经授权的操作——这和Teams远程控制的权限模型不同,后者对用户级的模拟输入限制更宽松。
替代实现方案
1. 剪贴板+模拟粘贴(最简单有效)
先将文本写入剪贴板,再模拟Ctrl+V粘贴,这种方式绕过了直接模拟按键的拦截:
$text = "HI" # 将文本写入剪贴板 Set-Clipboard -Value $text # 模拟粘贴操作 $wshell = New-Object -ComObject wscript.shell $wshell.SendKeys("^v")
2. 使用底层API的输入模拟工具
比如AutoHotkey,它基于Windows的SendInput API实现输入模拟,在远程协助下兼容性更好:
编写一个简单的AutoHotkey脚本(保存为.ahk文件):
SendInput, HI
在远程会话中运行该脚本即可完成输入。
3. 替换远程工具
改用Windows快速助手(Quick Assist)替代传统Remote Assistance,它的会话权限模型更接近Teams远程控制,多数模拟输入脚本可以正常运行。
内容的提问来源于stack exchange,提问作者vince
相关产品推荐
相关产品推荐

