我用 Visual Studio 2010 用 C++ 编写了一个 Windows 窗体应用程序项目。我需要打开 cmd,然后键入特殊命令并运行其他程序。
我使用这个功能:
system("cmd.exe /c dir c:\\");
但是通过这个函数我只看到了 cmd 一秒钟,然后它就消失了。 然后我添加这一行:
cin.get();
但是没有成功。
我也使用这个功能:
char program[] = "C:\Windows\System32\cmd.exe";
WinExec((LPCSTR)program, SW_SHOWMINIMIZED);
但它也不起作用!你能帮我一下吗?
最佳答案
您尝试过以下方法吗?
system("cmd/k dir c:\\");
/k
在执行进程终止后保持 cmd 提示窗口打开。
但是,说实话,如果您愿意的话,使用 Windows 终端服务 API 进行更精细的控制可能会更好。但是,取决于您想做什么 - 这可能有点矫枉过正。
而且,关于你的第二个问题:不要忘记转义反斜杠:
const char program[] = "C:\\Windows\\System32\\cmd.exe";
WinExec((LPCSTR)program, SW_SHOWMINIMIZED);
关于c++ - 如何在 C++ 中的 Windows 窗体应用程序中保持打开命令提示符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18160012/