File 从批处理文件执行.exe

File 从批处理文件执行.exe,file,batch-file,cmd,File,Batch File,Cmd,在应用程序文件夹中,有n个文件。应用程序exe名称“ClearMongoDb.exe”采用一些参数,如dbname 示例:clearMongoDb.exe-db“SynchoMeshDB” 我陷入了以下困境: 我想从具有相同参数的批处理文件执行exe 批处理文件将放置在同一应用程序文件夹中 用户可以将应用程序文件夹复制到任何位置 如果用户双击.bat文件,exe应该开始工作。 不应要求用户在.bat文件中进行任何更改如果您只想将给定给批处理文件的所有参数传递给从该批处理文件调用的EXE,请使

在应用程序文件夹中,有n个文件。应用程序exe名称“ClearMongoDb.exe”采用一些参数,如dbname

示例:clearMongoDb.exe-db“SynchoMeshDB”

我陷入了以下困境:

  • 我想从具有相同参数的批处理文件执行exe
  • 批处理文件将放置在同一应用程序文件夹中
  • 用户可以将应用程序文件夹复制到任何位置
如果用户双击.bat文件,exe应该开始工作。
不应要求用户在.bat文件中进行任何更改

如果您只想将给定给批处理文件的所有参数传递给从该批处理文件调用的EXE,请使用
%*

foo.exe %*

如果批处理文件与可执行文件位于同一文件夹中,则可以执行以下操作:

clearMongoDb.exe -db "SynchoMeshDB"
clearMongoDb.exe -db "SynchoMeshDB"
PAUSE
只需在批处理文件中添加这一行。现在,无论整个文件夹移动到哪里(或者至少移动可执行文件和批处理文件),引用都与可执行文件位于同一文件夹中

更新

正如前面提到的foxidrive一样,为了查看输出,在末尾放置
PAUSE
命令。因此,批处理文件应如下所示:

clearMongoDb.exe -db "SynchoMeshDB"
clearMongoDb.exe -db "SynchoMeshDB"
PAUSE

您只需使用文件的快捷方式并在路径上添加参数即可。不需要额外的批处理文件


编辑:除非您希望将批处理文件参数传递给.exe,因为有些人会阅读此文件。你想做什么?每次都使用相同的参数执行.exe,或者将.bat参数传递给.exe?

如果我理解,您的问题是“如何从批处理文件启动exe,并将相同的参数提供给批处理文件?”这是否正确?问题是什么?数据库的名称可以更改,您想读取它吗?当我执行批处理文件时,控制台窗口只是闪烁并关闭,没有完成该过程。然而,如果我运行应用程序exe,则需要15秒以上的时间来完成该过程。在那里放置一个暂停命令,您将能够读取输出。