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