我正在尝试通过批处理脚本启动可执行文件。但我的问题是,可执行文件需要在同一目录下的配置文件,而不是似乎批处理文件的路径被设置为当前目录。因此,可执行文件在批处理目录中查找配置文件,而不是在它自己的目录中查找。
到目前为止,我已经试过了:
cd \serverpathdir
programToRun.exe
和
start \serverpathdirprogramToRun.exe
来自我对维基百科的贡献https://en.wikipedia.org/wiki/Batch_file#Setting_a_UNC_working_directory_from_a_shortcut
UNC默认路径默认关闭,因为它们曾经使旧程序崩溃。[10]
Dword注册表值DisableUNCCheck
at HKEY_CURRENT_USERSoftwareMicrosoftCommand Processor
[10]允许默认目录为UNC。CD
命令将拒绝更改,但在Cmd的快捷方式或使用Start命令的默认目录中放置UNC路径。start "" /d \127.0.0.1C$ "cmd /k"
(C$ share是管理员使用的)
感谢所有的帮助,但是我能够通过编辑可执行文件后面的c#代码来修复它。
我用System.Reflection.Assembly.GetEntryAssembly().Location.Replace(" programtorrun .exe", null)替换了Directory.getCurrentDirectory()