3

我想知道如何使用 c++ 编程在 Windows 中打开任何应用程序,我使用的是 dev c++。我使用过system(),但性能不佳,或者我没有正确使用它。请告诉我system()打开应用程序或告诉另一个功能的语法。

4

2 回答 2

4

使用 shell 执行而不是 windows 的系统。

#include <Windows.h>
//Link with library: Shell32.lib  or  libshell32.a

ShellExecute(
   NULL,            //handle to the parent window
   "open",          //Action to take 
   "Notepad.exe",   //Program path
   "arg1 arg2",     //Command line arguments
   "C:\\",           //Start in what directory
  SW_SHOWMAXIMIZED  //Window state
);

至于 system(),它只需要一个与您在控制台 (cmd.exe) 中键入的参数相同的参数,例如 与键入cmd.exesystem("dir /a");完全相同dir /a

如果您在构建devC++时遇到问题,请检查项目属性。

从“项目选项”>目录>

  • 图书馆目录\MinGW64\x86_64-w64-mingw32\lib32
  • 包括目录: \MinGW64\x86_64-w64-mingw32\include

从“项目选项”>参数>链接器

  • -lshell32
于 2013-06-27T08:39:20.270 回答
0

您尝试过 CreateProcess 吗?

CreateProcess(lpApplicationName
               NULL, NULL, NULL,
               NULL, NULL, NULL, NULL,
               lpStartupInfo,
               lpProcessInformation
              )
于 2013-06-27T08:37:56.223 回答