我正在使用 c++,并且我有一个适用于 winmain 的程序。我不希望 system() 调用打开和关闭窗口。
例子:
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd)
{
system("dir > nul 2> nul");
return 0;
}
我想使用系统调用,但我不希望它们打开一个新窗口。
提前致谢。
编辑:
我找到了这个解决方案:
要在不打开窗口的情况下执行 cmd 命令,我创建了一个 bat 文件(程序执行此操作),然后我使用以下代码:
ShellExecute(NULL, "open", "Directory_Of_Bat_File", NULL, NULL, 0);
这将打开 bat 文件并执行命令。我还注意到您不需要 system() 来删除 bat 文件,但您可以通过以下方式将其删除:
del Directory_Of_Bat_File
在 bat 文件中,这将在您执行 bat 文件时将其删除(它会自行删除)。这无需打开新窗口。