我有一个我几乎完全理解的开源 C++ 命令行应用程序(用 MS VC2008 为 Windows 操作系统编写)。它基本上是音频编码 DLL 的包装器,将其参数 (argc, argv[])
解析为“参数”结构(int、bool 和 char* 类型),然后传递该结构到 DLL。我是 C/C++ 的初学者,我需要一些帮助来修改源代码以执行以下操作:
1) 从解析的原始参数构造一个字符串(char* 或一些 String 类)。例如,分别构造一个“0 128 3 1 0 InFile OutFile”字符串:
int a = 0, b = 128, c = 3;
bool x = true, y = false;
char * in = "InFile", out = "OutFile";
2) 以构造的字符串作为参数行运行另一个现有的命令行可执行文件,并保持初始应用程序的执行,直到加 shell 程序完成并退出。
我不确定这有多简单(或不简单),但我不知道如何去做。我只需要这个供我个人使用,我可以在 VB 中眨眼间完成,但正如我所说,在 C++ 中我不知道。
最佳答案
查看 GetCommandLine和 Createprocess函数,以及可能的 CommandLineToArgvW功能
关于c++ - 从 C++ 代码运行/Shell/Fork 程序 + 从基本类型构造字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17001971/