2

考虑以下:

我有一个 c++ 程序,C:\Documents\myProgram.exe 其中包含以下代码: system("start C:\\somefolder\\start.bat");

这将启动目标文件 (start.bat)C:\Documents\而不是 `C:\somefolder\'。

我的问题是,如何在它自己的目录而不是myProgram' 目录中执行文件?

理论上,这就是我想用 c++ 完成的: cd C:\somefolder\start start.bat

4

2 回答 2

3

如果您仍然在 Windows 上,请使用ShellExecute,您可以设置更多内容并启动文档、链接等。

于 2013-06-23T20:37:11.093 回答
2

为此,您可以做两件事之一(我发现)。

A)你可以在 unistd.h 中使用 chdir();见http://pubs.opengroup.org/onlinepubs/7908799/xsh/unistd.h.html

或者

B)您可以使用GNU 库中称为File System Interface的东西来获得更高级的东西;请参阅http://www.gnu.org/software/libc/manual/html_node/File-System-Interface.html#File-System-Interface

无论如何,祝你好运,我希望你能找到一些有用的东西!

于 2013-06-23T20:41:33.590 回答