MFC调用批处理文件(.bat)

通过MFC 对话框的点击按钮打开 服务控制面板

方法一:

system("window命令")

比如: system("services.msc") 打开服务控制面板


方法二:

通过ShellExecute()函数

 <span style="white-space:pre">	</span>#include <shellapi.h>
<span style="white-space:pre">	</span>ShellExecute函数原型及参数含义如下:
<span style="white-space:pre">	</span>ShellExecute(
<span style="white-space:pre">	</span> hWnd: HWND; //{指定父窗口句柄}
<span style="white-space:pre">	</span> Operation: PChar; //{指定动作, 譬如: open、runas、print、edit、explore、find[2] }
<span style="white-space:pre">	</span> FileName: PChar; //{指定要打开的文件或程序}
<span style="white-space:pre">	</span> Parameters: PChar; //{给要打开的程序指定参数; 如果打开的是文件这里应该是 nil}
<span style="white-space:pre">	</span> Directory: PChar; //{缺省目录}
<span style="white-space:pre">	</span> ShowCmd: Integer //{打开选项}
<span style="white-space:pre">	</span>): HINST;

比如:ShellExecute(NULL,NULL,_T("XXX.bat"),NULL,NULL,SW_SHOW);


因为window命令都是通过 cmd.exe来执行的 所以这两种方法 在打开服务控制面板前 cmd窗口会一闪而过,希望有哪位高手可以解决并留下解决的方法。

版权声明:本文为博主原创文章,未经博主允许不得转载。

原文地址:https://www.cnblogs.com/lovelyx/p/4867132.html