.cmd文件在服务器上运行文件时获取相对路径

.cmd文件在服务器上运行文件时获取相对路径,cmd,Cmd,我有一个包含以下命令的CMD文件: START H:\Applications\MyStoreApp\Application.exe 该文件位于文件夹MyStoreApp中的H驱动器(这是一个映射的共享驱动器)中。 我想让我的cmd相对像这样解析它的位置: START .\Application.exe 我现在收到一个错误,因为它无法在远程主机上解决此问题 是否可以在不必输入包括映射的网络驱动器在内的文件的特定位置的情况下解决此问题?%~dp0是实际脚本目录的路径(%0是脚本本身) 考虑H:

我有一个包含以下命令的CMD文件:

START H:\Applications\MyStoreApp\Application.exe
该文件位于文件夹MyStoreApp中的H驱动器(这是一个映射的共享驱动器)中。 我想让我的cmd相对像这样解析它的位置:

START .\Application.exe
我现在收到一个错误,因为它无法在远程主机上解决此问题


是否可以在不必输入包括映射的网络驱动器在内的文件的特定位置的情况下解决此问题?

%~dp0
是实际脚本目录的路径(
%0
是脚本本身)

考虑H:\Applications\MyStore\App\launcher.cmd

@echo "%~dp0Application.exe"
"H:\Applications\MyStoreApp\Application.exe"
或者,对于大量使用:

@SET $root=%~dp0
@REM Remove the last backslash
@SET $root=%$root:~0,-1%
@START "App" "%$root%\App.exe" /config "%$root%\App.ini" /log "%$root%\App.log"
如果文件夹名称中有空格,则需要引号


有关参数扩展的详细信息,请参阅。

在远程主机上搜索.exe。或者在注册表中存储一些东西。