使用 cmd 在桌面的不同位置打开多个文件资源管理器窗口

Posted

技术标签:

【中文标题】使用 cmd 在桌面的不同位置打开多个文件资源管理器窗口【英文标题】:Opening Multiple File Explorer Windows in Different Locations on the Desktop using cmd 【发布时间】:2015-10-08 20:10:17 【问题描述】:

所以,我正在尝试使用批处理文件在桌面上的不同位置打开 Windows 文件资源管理器的各种实例,而不是它们都从彼此顶部开始,这很烦人。我在谷歌上搜索它没有运气,那么我可以在我的批处理脚本中加入什么来强制每个窗口在桌面上的特定位置和特定大小打开?我不怕使用插件或 3rd 方解决方案。

这是我到目前为止的脚本示例,它只是将它们全部打开:

@echo off
start explorer "M:\2) Mathematical Innovations"
start explorer "This PC\3) Pictures"
start explorer "D:\5) Projects\Ae"

我该怎么办?

【问题讨论】:

不能单独使用批处理。有no switch for that。您可能会尝试创建一个程序,通过向其发送窗口消息来打开目录并移动窗口。 不幸的是,我不知道该怎么做。我的经验太有限,我基本上必须编辑已经可以满足我需求的示例。 @LaughableJunnyzup 如果我在下面的回答有帮助,请考虑将其标记为已接受。 See this page 解释为什么这很重要。 【参考方案1】:

使用特定坐标和尺寸设置窗口 X、Y、W 和 H 需要以编程方式访问 SetWindowPos,这需要您编译和链接 C# program 或类似名称。

作为替代方法,您可以启动所有资源管理器窗口,然后调用 WSH Shell.Application COM 对象的 TileHorizontally()TileVertically() 方法让 Windows 确定如何平铺它们。您可以在批处理脚本中使用 PowerShell 单行代码,如下所示:

@echo off
setlocal

start explorer "M:\2) Mathematical Innovations"
start explorer "This PC\3) Pictures"
start explorer "D:\5) Projects\Ae"

rem // pause for 3 seconds to allow the windows to appear
timeout /t 3 >NUL

powershell "(new-object -COM 'Shell.Application').TileVertically()"

【讨论】:

【参考方案2】:

很棒的脚本,唯一的注释是批处理文件窗口被包括在内,所以首先将快捷方式更改为最小化运行。但后来发现下面更好。

Set WshShell = CreateObject("WScript.Shell") 
WshShell.Run chr(34) & "C:\Batch Files\syncfiles.bat" & Chr(34), 0
Set WshShell = Nothing

【讨论】:

为什么这样更好?请解释一下。 似乎是对这个的引用:winhelponline.com/blog/…

以上是关于使用 cmd 在桌面的不同位置打开多个文件资源管理器窗口的主要内容,如果未能解决你的问题,请参考以下文章

cmd的默认路径

任意位置以管理员身份打开CMD(命令提示符)

win10开始怎么没有命令提示符

CMD中DOS命令的使用

vscode mac 怎么打开终端

win10 文件 打开命令提示符 不见了