You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过AHK自动将剪贴板内容粘贴到新建记事本窗口?

解决AHK新建记事本并自动粘贴剪贴板内容的问题

问题分析

原脚本失效的核心原因:

  • WinWaitActive 依赖固定窗口标题(如Untitled - Notepad),但不同语言环境下标题会变化(中文系统为无标题 - 记事本),导致等待条件不匹配
  • 记事本启动后,编辑控件可能未完全初始化,直接发送粘贴命令会失效
  • ControlSetText 指定的RichEditD2DPT1并非记事本标准编辑控件类名,标准类名是Edit1,且需确保控件已加载完成

修正后的脚本(Ctrl+V粘贴方式)

#t::
    Run "notepad.exe"
    WinWait, ahk_class Notepad  ; 等待记事本窗口出现,不依赖标题
    WinWaitActive, ahk_class Notepad  ; 等待窗口激活
    ControlWait, Edit1, ahk_class Notepad  ; 确保编辑控件完全加载
    ControlSend, Edit1, ^v, ahk_class Notepad
return

关键改进点

  • 用ahk_class Notepad替代窗口标题,彻底避免语言环境差异问题
  • 增加ControlWait, Edit1等待控件加载,确保后续粘贴命令能被正确接收
  • 保留ControlSend, Edit1, ^v实现剪贴板粘贴,完全符合你的需求

ControlSetText的修正方案

如果想用直接写入的方式替代粘贴,同样需要确保控件存在并使用正确类名:

#t::
    Run "notepad.exe"
    WinWait, ahk_class Notepad
    WinWaitActive, ahk_class Notepad
    ControlWait, Edit1, ahk_class Notepad
    ControlSetText, Edit1, %Clipboard%, ahk_class Notepad  ; 直接写入剪贴板内容
return

内容的提问来源于stack exchange,提问作者Pingui

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 14:05:23