如何启动一个EXE,它希望当前目录中的配置文件是来自不同目录的EXE目录?

时间:2016-07-04 11:10:57

标签: windows batch-file directory executable

我正在尝试通过批处理脚本启动可执行文件。但我的问题是可执行文件需要一个与自身相同的目录中的配置文件,而是看起来批处理文件的路径设置为当前目录。因此,可执行文件在批处理目录中查找配置文件,而不是它自己的配置文件。

到目前为止,我已经尝试过:

cd \\server\path\dir
programToRun.exe

start \\server\path\dir\programToRun.exe

但它们似乎都不起作用。

2 个答案:

答案 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)