请考虑以下事项:
我在C:\Documents\myProgram.exe
中有一个c ++程序
使用此代码:
system("start C:\\somefolder\\start.bat");
这将在C:\Documents\
而不是`C:\ somefolder \'中启动目标文件(start.bat)。
我的问题是,如何在其自己的目录而不是myProgram
的目录中执行该文件?
理论上这就是我想用c ++实现的目标:
cd C:\somefolder\
,
start start.bat
答案 0 :(得分:3)
如果您还在Windows上,请使用ShellExecute,您可以设置更多内容,甚至可以启动文档,链接等。
答案 1 :(得分:2)
要做到这一点,你可以做两件事之一(我发现)。
A)您可以在unistd.h中使用chdir();见http://pubs.opengroup.org/onlinepubs/7908799/xsh/unistd.h.html
或
B)您可以使用GNU库中名为文件系统接口的内容来获取更高级的内容;见http://www.gnu.org/software/libc/manual/html_node/File-System-Interface.html#File-System-Interface。
无论如何,祝你好运,我希望你找到一些有用的东西!