【问题标题】:console2 "start" doesn't change focus to the new windowconsole2“开始”不会将焦点更改为新窗口
【发布时间】:2014-06-24 20:34:57
【问题描述】:

当我通过键入“start”从“console2”打开一个目录时,窗口有时会在后台运行并且焦点停留在console2。如果文件夹已打开且未最小化,则图标只会在任务栏中闪烁,我必须用鼠标寻找它才能选择它。当我使用 start 命令打开目录时,有没有办法强制 console2 使资源管理器成为焦点窗口?

【问题讨论】:

  • 我很确定这是 Windows 的一种行为。 Win7 中进行了一些更改,以防止在活动应用程序前弹出许多窗口。

标签: console2


【解决方案1】:

这是因为“Explorer”(GUI应用程序)是从进程启动的,属于真正的控制台窗口。请记住,它始终是隐藏的,没有焦点。焦点实际上有“控制台”窗口。

解决方案 - 终端仿真器开发人员可以处理(使用钩子)某些可能创建新窗口(对话框、新应用程序等)的 WinApi 函数。因此,当控制台应用程序(我认为是 cmd)调用 start - 终端模拟器挂钩必须将HWND 参数更改为终端窗口。

所以,你可以切换到另一个终端:ConEmu(我是作者)或ConsoleZ(控制台的分支)。 ConEmu 知道所描述的情况,所有新窗口都必须出现在终端前面。不确定ConsoleZ,但是那个fork是活着的,如果你报告它们,作者可以修复错误。

【讨论】:

    猜你喜欢
    • 2021-12-25
    • 2020-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-09-28
    • 2013-09-09
    • 1970-01-01
    相关资源
    最近更新 更多