运行一个简单的shell命令

Pau*_*nta 6 winapi

当你只想运行一个简单的shell命令时,最好使用什么WinAPI函数hg > test.txt

Dea*_*nna 7

要简单地运行文件,那么ShellExecute()CreateProcess()是最好的选择.

由于您想将输出重定向到文件/运行shell命令,因此会使事情复杂化......

输出重定向是命令提示符的一个功能,因此,您要运行的命令需要传递给cmd.exe(在NT/XP +上)传递/c和您的命令作为参数(要么ShellExecuteCreateProcess将要做).

cmd /c "ipconfig >c:\debug\blah.txt"
Run Code Online (Sandbox Code Playgroud)

然而,最好的方法是使用CreateProcess()和创建自己的管道来与程序的stdin和stdout进行通信(这一切都cmd在内部完成)