ShellexecuteInfo 函数在 windows Shell 中执行一个指定的命令。该函数可以执行各种类型的命令,包括:
ShellExecuteInfo 函数的语法如下:
DWORD ShellExecuteInfo(_In_ LPSHELLEXECUTEINFO pExecInfo
);
pExecInfo 参数是一个指向 SHELLEXECUTEINFO 结构体的指针,该结构体包含有关要执行的命令的信息。SHELLEXECUTEINFO 结构体的定义如下:
typedef struct _SHELLEXECUTEINFO {DWORD cbSize;ULONG_PTRInfo 函数将静默执行命令。SEE_MASK_NOASYNC: 指定命令应同步执行。如果未设置此标志,则 ShellExecuteInfo 函数将异步执行命令。 SEE_MASK_UNICODE: 指定 lpVerb、lpFile、lpParameters 和 lpDirectory 成员是 Unicode 字符串。如果未设置此标志,则这些成员是 ANSI 字符串。 hProcess 成员接收指向由 ShellExecuteInfo 函数启动的进程的进程句柄。如果 fMask 成员中未设置 SEE_MASK_NOCLOSEPROCESS 标志,则 ShellExecuteInfo 函数将在函数返回之前关闭进程句柄。
返回值:
- 如果函数成功,则返回值为 32。
- 如果函数失败,则返回值为零。要获取更多错误信息,请调用 GetLastError 函数。
示例
以下示例演示如何使用 ShellExecuteInfo 函数在 Windows Shell 中执行命令:
include
include int main()
{SHELLEXECUTEINFO sei = { 0 };sei.cbSize =sizeof(SHELLEXECUTEINFO);sei.fMask = SEE_MASK_NOCLOSEPROCESS;sei.hwnd = NULL;sei.lpVerb = _T("open");sei.lpFile = _T("notepad.exe");sei.lpParameters = NULL;sei.lpDirectory = NULL;sei.nShow = SW_SHOWNORMAL;sei.hInstApp = NULL;sei.lpIDList = NULL;sei.lpClass = NULL;sei.hkeyClass = NULL;sei.dwHotKey = 0;sei.DUMMYUNIONNAME.hIcon = NULL;if (ShellExecuteInfo(&sei)){// 命令已成功执行// 获取进程句柄HANDLE hProcess = sei.hProcess;// 与进程进行通信// 关闭进程句柄CloseHandle(hProcess);}else{
// 命令执行失败DWORD dwError = GetLastError();}return 0;
}
Shelly 的含义
Shelly 是一个常见的名字,既可以是男名也可以是女名。在英语中,Shelly 的意思是 "来自浅滩的",指的是靠近水源的地方。这个名字通常与和平、宁静和宁静联系在一起。Shelly 作为女性名字的变体通常拼写为 Shelley。作为男性名字的变体,通常拼写为 Shelly 或 Shelley。
本文地址:https://www.qianwe.com/article/273888340122224b75cb.html
上一篇:Shellexecuteinfo结构用于在进程中执行shel...
下一篇:使用jQuery创建功能强大的下拉菜单使用jQue...