AutoHotKey将剪贴板转换为键盘输入用于VNC

看到有人求助 VNC 中无法粘贴.

在 google 上搜索了一下, 找到一个这样的结果
https://ardalis.com/use-autohotkey-to-paste-text-as-typing/
#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Event  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

setkeydelay 70
^+v::GoTo, CMD
CMD: ;Send {Raw}%Clipboard% vText := Clipboard Clipboard := vText Loop Parse, vText, % "`n", % "`r" {     Send, % "{Text}" A_LoopField     Send, % "+{Enter}" } return
试用了一下, 效果不对.
但是 AutoHotKey 这个思路是对的.
所以让GPT写了一个.
#F3::
; 快速键 win + f3

    TextToSend := Clipboard     ; 检查剪贴板是否为空     if (TextToSend = "") {         MsgBox, clipboard empty         Return     }          DelayMs := 500 ; 设置您想要的延迟时间(毫秒)          ; 调用自定义函数发送文本     SendTextWithDelay(TextToSend, DelayMs)           MsgBox, input finished     Return

; ------------------------------------------------ ; 自定义函数:使用 SendInput 逐字符发送,并加入 Sleep 延迟 ; ------------------------------------------------ SendTextWithDelay(Text, Delay) {     ; 在发送字符之前 先延迟1秒     Sleep, 1000
    ; 循环遍历文本中的每个字符     Loop, Parse, Text     {         ; A_LoopField 包含当前循环中的单个字符         SendInput, %A_LoopField%                  ; 强制等待指定的毫秒数         Sleep, %Delay%     } }

使用效果演示

最后, 如果你也希望帮助翻墙新手, 欢迎关注这个关键字通知频道!

========

看看别的


评论