API:ShellExecuteEx (LPSHELLEXECUTEINFO lpExecInfo )
ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等)
首先:填充SHELLEXECUTEINFO结构体,然后调用该函数即可,因为和PC上有所不同,所以很多人不知道如何正确填充结SHELLEXECUTEINFO构体。
示例:
1:打开EXE
SHELLEXECUTEINFO lpExecInfo = {0};
lpExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
lpExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
lpExecInfo.lpVerb = L"Open";
lpExecInfo.hwnd = NULL;
lpExecInfo.lpFile = L"calc.exe";
lpExecInfo.lpDirectory = L"\\windows";
lpExecInfo.nShow = SW_SHOW;
lpExecInfo.lpParameters = NULL;
lpExecInfo.hInstApp = NULL;
ShellExecuteEx(&lpExecInfo);
2:打开指定文件夹
SHELLEXECUTEINFO lpExecInfo = {0};
lpExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
lpExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
lpExecInfo.lpVerb = L"Open";
lpExecInfo.hwnd = NULL;
lpExecInfo.lpFile = L"fexplore.exe";
lpExecInfo.lpDirectory = NULL;//L"\\windows";
lpExecInfo.nShow = SW_SHOW;
lpExecInfo.lpParameters = L"\\Windows\\“开始”菜单\\程序";
lpExecInfo.hInstApp = NULL;
ShellExecuteEx(&lpExecInfo);