草庐IT

Ctrl-Break

全部标签

c# - Windows 7 上的 WPF 应用程序仅在按下 CTRL 键后才能正常响应

我正在开发一个WPF应用程序,使用Windows8作为带有.NET4.5的开发机器。我还使用了一些DevExpress控件。在开发者机器上,应用程序的UI响应正常。当我在Windows7上测试应用程序时,无论是使用虚拟机还是其他PC,都会显示UI,但它没有正常响应。例如,我有一个DevExpress网格控件,当我单击一行时,该行未突出显示为选中状态,当鼠标悬停在按钮和菜单上时,也没有任何反应。当我按下CTRL键时,魔法就开始了!之后,WPF应用会正常响应,就像在Windows8上一样。我想当我按下那个键时,会发生一些与Focus有关的事情。此外,当窗口调整大小时,网格上的更改会出现,但

windows - 在 Windows 上将 CTRL+C 发送到子进程树

我想运行任意基于控制台的子进程并从单个主进程管理它们。基于控制台的子进程通过stdin、stdout和stderr进行通信,如果您在真正的控制台中运行它们,它们会在您按下CTRL+C时干净地终止。其中一些实际上可能是进程树,例如运行可执行文件的批处理脚本,该可执行文件又可能运行另一个可执行文件来完成某些工作。我想重定向他们的标准I/O(例如,以便我可以在GUI窗口中显示他们的输出)并在某些情况下向他们发送CTRL+C事件,以便他们将放弃并干净利落地终止。下面两张图首先展示了正常的结构——一个master进程有四个worker子进程,其中一些worker有自己的子进程;然后当其中一个wo

c++ - 如果一个程序是由 system() 或 CreateProcess() 从另一个程序启动的,如何防止 Ctrl+Break/Ctrl+C 关闭这两个程序?

这是测试示例:(1)。执行无限循环的简单程序:#includeusingnamespacestd;intmain(){intcounter=0;while(1)cout(2)。另一个通过system()命令启动上述示例的程序:#include#includeusingnamespacestd;intmain(){system("endless_loop.exe");cout在此程序上执行Ctrl+Break时,文本backtomainprogram不显示。如何将此组合键限制在内部进程并将执行指针返回给主应用程序?另一件事是我并不总是能控制内部程序的源代码,所以我无法更改那里的东西。

python - 在 Windows 中使用子进程 Popen.send_signal(CTRL_C_EVENT) 时如何达到预期的结果?

根据文档,在Windows中的Python2.7中,您可以发送CTRL_C_EVENT(Python2.7SubprocessPopen.send_signaldocumentation).然而,当我尝试它时,我没有在子进程中收到预期的键盘中断。这是父进程的示例代码:#FILE:parentProcess.pyimportsubprocessimporttimeimportsignalCREATE_NEW_PROCESS_GROUP=512process=subprocess.Popen(['python','-u','childProcess.py'],stdin=subproces

python - Windows Python 解释器在 Ctrl+C 时退出

对于我使用过的大多数Python解释器,Ctrl+C将使解释器打印出“KeyboardInterrupt”并保持打开状态。但是,在最近在一台新计算机上安装时,Ctrl+C导致解释器退出,这是不可取的。设置signal.SIGINT处理程序仍然存在。没有正在运行的可以调整行为的启动脚本。raiseKeyboardInterrupt不会退出解释器。按Ctrl+C时没有发出任何文本。在Ctrl+Break时,^C在退出前发出。如果我在以下代码段的暂停期间按Ctrl+C,解释器将保持打开状态。importtimetry:time.sleep(100)exceptKeyboardInterrup

windows - 在 jupyter notebook 中禁用 Ctrl+Enter sublime keymap

我通过将以下内容添加到我的Jupytercustom.js来使用JupyterNotebook和SublimeText键盘映射:require(["codemirror/keymap/sublime","notebook/js/cell"],function(sublime_keymap,cell){cell.Cell.options_default.cm_config.keyMap='sublime';});...大部分情况下效果很好,除了我在Windows机器上,这将“insertLineAfter”的Sublime功能添加到Ctrl+Enter的绑定(bind)中,我不想要它,因

windows - TerminateProcess 与 Ctrl+C

我有一个使用SQLite3维护数据库文件的控制台模式程序。执行需要一段时间,但假设数据库写入发生,在任何时候取消都应该是安全的。(这都是Windows下的)从正在运行的程序的角度来看,在控制台中按CtrlC是否比让另一个程序对其调用TerminateProcess更安全?我注意到,如果调用TerminateProcess,我可能会损坏数据库-我认为这是因为程序没有机会完成写入。我的猜测是CtrlC更好,因为程序收到信号并自行终止,而不是操作系统杀死它。请注意,该程序实际上并不处理信号(除非SQLite处理);我说的是Win32可执行文件的内置默认机制来处理CtrlC信号。澄清/简化问题

windows - 如何在 vim 中键入某些命令,如 CTRL-] ^Wc 等。在德语键盘上

我坐在这里感觉很傻——vim帮助告诉我按CTRL](到按照帮助中的链接),我无法得到它!?与^Wc相同的问题(关闭拆分窗口)我有一个德语键盘,尤其是CTRL]似乎对我不起作用。我该怎么做?到目前为止,感谢您的帮助,除了CTRL]似乎都可以工作!知道如何让它发挥作用吗? 最佳答案 我有一个克罗地亚语键盘和几乎相同的问题(因为我没有,例如上面的“]”)。您是否考虑过将这些键重新映射到您可以使用的东西而不是Ctrl-]键。例如,简单的enter对我来说效果很好。为此,您只需进入“/vimfiles/ftplugin/”目录,并创建一个名为

c - Ctrl-D(Unix)和Ctrl-Z(Windows)的不同行为

按照标题,我试图用gets(需要使用)在while循环中了解Ctrl+D/Ctrl+Z的确切行为。我正在测试的代码如下:#include#includeintmain(){charstr[80];while(printf("Insertstring:")&&gets(str)!=NULL){puts(str);}return0;}如果我的输入仅仅是Ctrl+D(或Windows上的Ctrl+Z),则gets返回NULL,并且程序正确退出。目前尚不清楚的情况是,当我插入house^D^D(Unix)或house^Z^Z\n(Windows)之类的东西时。在第一种情况下,我的解释是getc

c++ - Windows 在不同线程中处理 CTRL+C?

这是一个在linux和windows上处理CTRL+C信号的简单应用程序:#include#include#includevoidSigIntHandler(){qDebug()quit();}#ifdef__linux__#includevoidunix_handler(ints){//svakakojeSIGINT,alidanejavljawarningdasesnekoristiif(s==SIGINT)SigIntHandler();}#else#includeBOOLWINAPIWinHandler(DWORDCEvent){switch(CEvent){caseCTRL_