如何通过C++运行.exe文件

how can I run a .exe file through C++?

本文关键字:exe 文件 运行 C++ 何通过      更新时间:2023-10-16

我的.exe应用程序需要在控制台窗口中打开。然后,我必须在控制台应用程序中键入.txt的名称才能读取。如何一次在我的代码中执行所有这些操作?
我曾经能够用system("name.exe")运行它(而不是让它阅读.txt),但突然它给出了,

错误:输入"name.exe"不是有效的 Windows 应用程序

您可以让应用程序将文件名作为命令行参数读取,然后可以使用 system("name.exe name.txt") 运行应用程序。

在 Windows 中使用 CreateProcess API 执行此操作 - http://msdn.microsoft.com/en-us/library/windows/desktop/ms682425(v=vs.85).aspx。请勿使用系统

1-键入"名称.txt" 2-按回车键 3-键入名称2.exe 4-按回车键。如何通过我的 c++ 代码做到这一点?

std::string appName, fileName
std::cin >> appName >> fileName;
system(std::string(appName + " " + filename).c_str())

如果名称包含空格,您可能需要使用 getline 而不是 >> 来读取它们。

--编辑--

基本上,我希望一旦我的应用程序被调用,输入也会自动提供给它。

使用重定向输入创建子进程 (msdn)

_popen文档

管道到子进程 (GNU)