调整外部命令行窗口的大小

时间:2015-03-08 18:40:40

标签: winapi

在下一种情况下,更改命令行窗口大小的更好方法是:

  1. 我从我的应用程序启动了cmd进程
  2. 我将我的小部件设置为cmd窗口的父级
  3. 现在我需要在小部件调整大小事件后调整命令行窗口的大小。但我在我的应用程序中设置了最大尺寸。

    大多数示例都使用了控制台的hStdOut,但是如何通过cmd进程ID /窗口句柄获取它(如果可以的话)(现在我没有任何其他数据)?

    此外,在窗口中发送mode命令是不合适的 - 用户可以在命令行窗口中启动任何程序(例如运行ssh客户端),因此我无法确定命令是否真的会启动。

1 个答案:

答案 0 :(得分:0)

也许这是一种矫枉过正,但为什么不注入将使用标准API来调整进程控制台的DLL呢?如果您按照说明启动了该流程,那么您就拥有了流程处理权限,因此您可以WaitForInputIdle然后Inject DLL从它的DllMain中调用SetConsoleWindowInfo。 DLL可以非常小,1Kb左右没有CRT。

相关问题