通过命令行设置应用程序的窗口位置

我有一个应用程序,从我的桌面的0x0位置开始。 我想打开它在我的桌面中心。 我不想打开它,并使用移动命令将其移动到中心,只需要我的应用程序立即启动中心位置。

有没有办法通过命令提示符来做到这一点? 任何其他方式?

Solutions Collecting From Web of "通过命令行设置应用程序的窗口位置"

您将需要一个额外的实用程序,如cmdow.exe来实现这一点。 请特别注意/mov开关。 您可以从cmdow启动程序,也可以单独运行程序,然后根据需要调用cmdow来移动/调整其大小。

发现AutoHotKey非常适合窗口定位任务。

这是一个示例脚本。 把它叫做notepad.ahk ,然后从命令行运行它,或者双击它。

 Run, notepad.exe WinWait, ahk_class Notepad WinActivate WinMove A,, 10, 10, A_ScreenWidth-20, A_ScreenHeight-20 

它将启动一个应用程序(记事本),然后调整窗口的大小,使其在窗口的中心位置,每边都有一个10像素的边框。

我只是在寻求做同样的事情时才发现这个问题。

经过一番尝试,我发现了一个答案,就像OQ所希望的那样,很简单,但并不是很通用。

在桌面或其他地方创建快捷方式(可以使用右键菜单中的create-shortcut helper),将其设置为运行程序“cmd.exe”并运行。 当窗口打开时,将它放在你想要窗口的地方。 要保存这个位置,调出属性菜单并点击“保存”。

现在,如果你想,你也可以设置其他属性,如颜色,我强烈建议更改缓冲区的宽度为120-240,高度为9999,并启用快速编辑模式(为什么不是这些默认设置!?!)

现在你有一个工作的捷径。 为每个您想在不同位置打开的CMD窗口创建其中一个窗口。

现在的诀窍,Windows CMD START命令可以运行快捷方式。 在启动之前,您无法以编程方式重新定位窗口,但至少会出现在您想要的位置,您可以从批处理文件或其他程序启动它(和其他)。

使用cmd / c的快捷方式,您可以创建一个快捷方式,通过使用如下所示的命令一次启动所有链接:

 cmd /c "start cmd_link1 && start cmd_link2 && start cmd_link3" 

这将打开你所有的命令窗口到你喜欢的位置,单独设置像前景色,背景色,字体,管理员模式,快速编辑模式等属性。 现在把这个“链接”移动到你的启动文件夹中,并且你有一个没有外部程序的自动状态恢复。

这是一个非常简单的解决方案。 这不是一般的目的,但我相信这将解决大多数读者正在试图解决的问题。

我最近做了这个,所以我会在这里发布我的cmd文件:

 cd /d C:\shortucts for %%f in (*.lnk *.rdp *.url) do start %%f exit 

比尔K.的答案是最优雅的,如果你只是想在启动时启动一个窗口或从桌面上的快捷方式启动。

只要打开你想要的窗口,右键单击并选择属性。 选择布局取消选中“让系统位置窗口”,然后单击确定。

窗口现在将打开你想要的地方。 您可以在其他选项卡上同时设置字体和窗口颜色。 甜。

这可能应该是在cmdow.exe答案下的一个注释,但这里是一个简单的批处理文件,我写了一个相当复杂和简单的控制你可以在任务栏中看到的所有窗口。

第一步是运行cmdow /t来显示这些窗口的列表。 看看图像名称,然后是命令行:

 mycmdowscript.cmd imagename 

这里是批处理文件的内容:

 :: mycmdowscript.cmd @echo off SETLOCAL ENABLEDELAYEDEXPANSION SET IMAGE=%1 SET ACTION=/%2 SET REST=1 SET PARAMS= :: GET ANY ADDITIONAL PARAMS AND STORE THEM IN A VARIABLE FOR %%I in (%*) DO ( IF !REST! geq 3 ( SET PARAMS=!PARAMS! %%I ) SET /A REST+=1 ) FOR /F "USEBACKQ tokens=1,8" %%I IN (`CMDOW /t`) DO ( IF %IMAGE%==%%J ( :: you now have access to the handle in %%I cmdow %%I %ACTION% !PARAMS! ) ) ENDLOCAL @echo on EXIT /b 

示例用法

 :: will set notepad to 500 500 mycmdowscript.cmd notepad siz 500 500 

你可以重写这个以允许在一个命令上执行多个操作,但是我还没有尝试过。

为此, cmdow.exe必须位于您的路径中。 请注意,当你下载这个,你的AV程序可能会吼你。 这个工具( 我猜 )过去被恶意软件作者用来操纵窗口。 它本身并不是有害的。

如果你很乐意运行一个批处理文件以及一些小帮手程序,那么就可以在这里发布一个完整的解决方案:
批处理文件如何运行程序并设置窗口的位置和大小? – 堆栈溢出(问:2012年5月1日)