是否可以使 Ctrl+C 与 Windows 7 控制台中的 Ctrl+Break 一样灵敏?

是否可以使 Ctrl+C 与 Windows 7 控制台中的 Ctrl+Break 一样灵敏?

是否可以让Ctrl+在 Windows 7控制台中CCtrl+一样工作? Breakcmd.exe

默认情况下,Ctrl+C似乎仅在下次读取输入缓冲区时发送信号,而Ctrl+Break会立即发送信号。

这使得Ctrl+C对于结束进程毫无用处,因为当我想结束一个进程时,我想立即结束它。

我现在正在使用Ctrl+Break但输入起来要困难得多。

看起来在 DOS 中您可以添加BREAK=ONCONFIG.SYS实现这一点,但在 Windows 7 中却不行?

答案1

我不知道有什么设置,但你可以用自动热键脚本。

剧本

^c::
    WinGetClass, WinClass, A
    if(WinClass = "ConsoleWindowClass")
        SendPlay ^{CtrlBreak}
    else
        SendPlay ^c

怎么运行的

  • ^c指定要修改的组合键:Ctrl+ C^表示Ctrl)。

  • WinGetClass, WinClass, A将活动窗口的标题存储在变量中WinClass

  • if(WinClass = "ConsoleWindowClass") ... else ...检查WinClassmacthes 是否是字符串ConsoleWindowClass(Windows 7 命令提示符的窗口类)。

    • 如果存在,则SendPlay ^{CtrlBreak}模拟组合键Ctrl+ Break

    • 否则,SendPlay ^c模拟组合键Ctrl+ C

      这样,其他程序仍可正常运行。

如何使用

  1. 下载并安装最新版本的 AutoHotkey。

  2. break-on.ahk使用您最喜欢的文本编辑器将上述脚本保存为。

  3. 双击该文件即可运行脚本。

  4. 如果您愿意,请复制文件夹中的脚本(或其链接)Startup

相关内容