创建批处理文件以将文件拖放到exe上

Posted

技术标签:

【中文标题】创建批处理文件以将文件拖放到exe上【英文标题】:Creating a batch file to do drag and drop files onto an exe 【发布时间】:2010-11-19 12:59:55 【问题描述】:

我有一个 exe,我可以将另一个文件拖放到它上面以生成第三个文件。不幸的是,它似乎一次只接受一个文件,如果我选择多个并删除它似乎不起作用。

如何创建一个批处理文件来自动将一千个扩展名为 .drag 的文件拖到 drop.exe 上?

谢谢!

【问题讨论】:

不应该是MS-DOS吗? DOS 没有拖放功能。你的意思是 Windows。 【参考方案1】:

在 Windows 中,将文件放到 exe 上只会执行命令行:

fileprocessor.exe "<full path to dropped file>"

所以您应该能够直接在批处理文件中调用 exe,将路径传递给您要处理的每个文件。

编辑:查看 For batch 命令以对一系列文件执行此操作。您应该能够指定通配符,然后为每个通配符调用命令。

For %%a in (*.drag) do fileprocessor.exe "%%~fa" 

【讨论】:

哦,哇,我不想写 1000 条路径。我不应该可以做通配符吗?比如这个文件夹下的所有.drag文件?【参考方案2】:

显然,批处理文件可以将多个对象拖放到它们上面。见this question。您应该能够根据您的需要调整答案。不过,我确实想知道是否有可以传入的最大字符数,因此您可能无法将 数千个 文件拖到它上面。甚至可能没有数百个。但肯定是多个。

编辑:在您对 dmercredi 的回答的评论中,您提到了通配符。如果您不需要拖放功能而只想在批处理文件中指定 *.drag,请查看 this question。那里有多种答案可能适合您的需求。

【讨论】:

cmd 有一个最大命令行长度。 8191 个字符。

以上是关于创建批处理文件以将文件拖放到exe上的主要内容,如果未能解决你的问题,请参考以下文章

将文件拖放到脚本上以作为参数运行会导致 Vista 出现异常

拖放控制台应用程序的事件处理程序

将文件路径拖放到 Java Swing JTextField

创建批处理文件以将日志分类到各自的月年文件夹中......?

拖放到桌面图标

Xcode Swift MacOS App,将文件拖放到 NSTextField