VC++.运行EXE

int main()
{
	/************************************************************************/
	/*
	int system(_In_opt_z_ char const* _Command);
	等待目标程序退出才返回
	*/
	/************************************************************************/
	system("C:/Using/winmine.exe");

	/************************************************************************/
	/*
	UINT WINAPI WinExec(
	_In_ LPCSTR lpCmdLine, //目标程序路径+命令行参数
	_In_ UINT   uCmdShow //打开方式,比如SW_SHOW
	);
	只能运行EXE文件
	*/
	/************************************************************************/
	WinExec("C:/Using/winmine.exe", SW_SHOW);

	/************************************************************************/
	/*
	HINSTANCE ShellExecute(
	_In_opt_ HWND    hwnd, //父窗口句柄,无则NULL
	_In_opt_ LPCTSTR lpOperation, //要执行的操作,比如open
	_In_     LPCTSTR lpFile, //目标程序名称
	_In_opt_ LPCTSTR lpParameters, //命令行参数
	_In_opt_ LPCTSTR lpDirectory, //程序目录,如果此值为空则使用当前工作目录
	_In_     INT     nShowCmd //打开方式,比如SW_SHOW
	);
	通常lpFile设置为程序全路径,lpDirectory设置为NULL
	不仅可以运行EXE文件,也可以运行系统已经关联的文件
	*/
	/************************************************************************/
	ShellExecuteA(0, "open", "C:/Using/winmine.exe", "", "", SW_SHOW); /*打开一个同系统程序相关联的文档*/
	//ShellExecuteA(0, "open", " http://www.baidu.com", "", "", SW_SHOW); /*打开一个网页*/
	//ShellExecuteA(0, "print", "c:/temp.txt", "", "", SW_HIDE); /*用系统打印机打印文档*/

	/************************************************************************/
	/*
	BOOL WINAPI CreateProcess(
	_In_opt_    LPCTSTR               lpApplicationName, //目标程序名称或路径
	_Inout_opt_ LPTSTR                lpCommandLine, //目标程序命令行参数
	_In_opt_    LPSECURITY_ATTRIBUTES lpProcessAttributes, //指向安全属性结构的指针,该结构确定子进程是否可以继承返回给新进程对象的句柄
	_In_opt_    LPSECURITY_ATTRIBUTES lpThreadAttributes, //指向安全属性结构的指针,该结构确定子进程是否可以继承返回给新线程对象的句柄
	_In_        BOOL                  bInheritHandles, //如果此参数为TRUE,则调用进程中的每个可继承句柄都由新进程继承
	_In_        DWORD                 dwCreationFlags, //控制优先级类和进程创建的标志
	_In_opt_    LPVOID                lpEnvironment, //指向新进程的环境块的指针。如果此参数为空,则新进程将使用调用进程的环境
	_In_opt_    LPCTSTR               lpCurrentDirectory, //目标程序目录
	_In_        LPSTARTUPINFO         lpStartupInfo, //返回信息结构指针
	_Out_       LPPROCESS_INFORMATION lpProcessInformation //返回信息结构指针
	);
	*/
	/************************************************************************/
	STARTUPINFO si;
	ZeroMemory(&si, sizeof(si));
	si.cb = sizeof(si);
	PROCESS_INFORMATION pi;
	ZeroMemory(&pi, sizeof(pi));
	CreateProcess(_T("C:/Using/winmine.exe"), 0, 0, 0, 0, 0, 0, 0, &si, &pi);

	return 0;
}
posted @ 2020-03-11 07:39  N.everever  阅读(539)  评论(0)    收藏  举报