使用MINGW在窗口应用程序中压制系统("command")控制台窗口
Supressing system("command") console window in a window application with MINGW
我有一个WINMAIN应用程序说你好世界。
我用了
-mwindows
链接器中的切换选项,以确保它执行 GUI 应用程序。但是当我执行一些系统命令时,例如
system("dir");
从 C 代码中,它会弹出一个控制台。
是否有按下控制台窗口的选项?
请指导。以下是使用Mingw GCC的hello world代码
#include <windows.h>
int WINAPI
WinMain (HINSTANCE hInstance, HINSTANCE hPrevInst, LPTSTR lpCmdLine, int nShowCmd)
{
MessageBoxW (NULL, L"Hello World!", L"hello", MB_OK | MB_ICONINFORMATION);
system("dir");
system("dir");
system("dir");
system("dir");
Sleep(1000);
return 0;
}
你正在调用dir
,但dir不像Unix中的ls
那样的程序。这是一个命令。
因此,要执行dir
,必须生成一个CMD.exe
,因此控制台窗口。
按照@carl的建议使用FindFirstFile
列出目录中的文件。
相关文章:
- Visual Studio 2017 停止工作,并在打开后显示许多控制台窗口
- 如何从 Win32 C++ 应用程序输出到父控制台窗口?
- 如何获取控制台窗口的宽度?
- 是否可以从控制台应用程序使用 C++/WinRT 创建窗口?
- 在C++中隐藏键盘记录器的控制台窗口
- 如何在 Win32 控制台应用程序中注册不可见的窗口类?
- C++ 如何在 OpenGL 程序中远程调用控制台窗口
- 为什么调试时没有显示控制台窗口
- 有没有办法像动画一样移动控制台窗口?
- 如何在C++中居中输出控制台窗口
- 控制台窗口未在开发C++中打开?即使也有 getch() ?
- QTextEdit 提升为构建控制台窗口
- 如何拒绝一个叫做的过程以写入继承的控制台窗口
- Visual C 关闭文本文件和打开新的控制台窗口
- 有没有办法为使用 Boost 生成的进程创建新的控制台窗口
- C++:显示控制台窗口的输出
- C++:如何在控制台窗口中显示结果
- (C++)控制台窗口保持立即关闭,即使我在Visual Studio中是CTRL + F5
- 在 C 语言中将窗口控制台大小调整为全屏
- 将文本输出到窗口控制台.c++