使用 C++ 在 Windows 中执行“运行”命令?
Posted
技术标签:
【中文标题】使用 C++ 在 Windows 中执行“运行”命令?【英文标题】:Execute a "Run" command in Windows using C++? 【发布时间】:2016-01-29 21:40:58 【问题描述】:在 Windows 7 上,我可以点击开始,然后输入“运行”,它会给我一个 windows 经典运行对话框,我可以在其中输入各种程序和命令。
如果我想使用 C++ 程序执行 Run 操作,我该怎么做?
例如:如果我打开“运行”对话框并键入“mspaint”,它会打开 Paint。如何使用 C++ 运行“mspaint”并获得与“运行”对话框本身相同的结果?
【问题讨论】:
Execute another program in C++的可能重复 @mah 是一样的吗?除了打开程序之外,Run 还能做一些事情,是吗? ShellExecute() 应该这样做。 @jros 您还想做什么?如果它不是一个程序,它可能是可以通过使用发送到 cmd 程序的参数来完成的。 @jros:你可以使用批处理文件或快捷方式,无需为它创建 C++ 程序。 【参考方案1】:std::system("program call");
是一种方法,以防您不需要与已打开程序的进程进行交互。
system()
返回被调用程序的返回值。
【讨论】:
【参考方案2】:首先,一个方便的快捷方式:不必在开始菜单中键入“运行”,您可以使用 Windows+R(按住 Windows 键并按 R)。
其次,ShellExecute 可以工作,但 Windows 上的system 实际上可以处理非程序文件,而且它肯定比 ShellExecute 更易于使用,除非您需要一些特定的东西,例如最小化运行应用程序。
唯一需要注意的是 system() 不能被 Windows 应用程序调用。它只能从控制台应用程序调用。
【讨论】:
以上是关于使用 C++ 在 Windows 中执行“运行”命令?的主要内容,如果未能解决你的问题,请参考以下文章
使用 windows api 和 C++,我如何从硬盘驱动器加载 exe 并在自己的线程中运行它?