SHELLEXECUTEINFO 结构详解,SHELLEXECUTEINFO 是一个结构体,用于在 Windows 操作系统中执行一个或多个命令行程序,它提供了一个简单的方法来启动外部程序,并可以获取程序的输出和错误信息,本文将详细介绍 SHELLEXECUTEINFO 结构及其成员变量。,,1、cbSize:DWORD 类型,表示结构体的字节大小,通常设置为 sizeof(SHELLEXECUTEINFO)。,2、hInstApp:HINSTANCE 类型,表示应用程序实例句柄,如果设置为 NULL,则与调用进程关联。,3、lpFile:LPSTR 类型,表示要执行的程序的文件名,如果设置为 NULL,则使用命令行运行程序。,4、lpParameters:LPSTR 类型,表示传递给程序的参数,如果设置为 NULL,则不传递任何参数。,5、lpDirectory:LPSTR 类型,表示程序的工作目录,如果设置为 NULL,则使用调用进程的当前工作目录。,,6、nShowCmd:int 类型,表示窗口显示样式,常用的值有 sw_HIDE、SW_MAXIMIZE、SW_MINIMIZE、SW_RESTORE、SW_SHOW、SW_SHOWDEFAULT、SW_SHOWMAXIMIZED、SW_SHOWMINIMIZED、SW_SHOWMINNOACTIVE、SW_SHOWNA、SW_SHOWNOACTIVATE、SW_SHOWNORMAL,这些值可以在 Win32 API文档中找到。,7、dwFlags:SW_HIDE 类型,表示一些特殊的标志位,常用的值有 SEE_MASK_NOCLOSEPROCESS、SEE_MASK_NOASYNC、SEE_MASK_NOCHANGEDIR、SEE_MASK_NOWAITFORINPUT、SEE_MASK_NOWRITECACHE、SEE_MASK_OPENDEFERRED、SEE_MASK_WAITFORINPUTIDLE、SEE_MASK_WAITNOTIFY,这些值可以在 Win32 API文档中找到。,8、hProcess:HPROCESS 类型,表示新创建的进程句柄,如果不需要等待新进程完成,可以设置为 NULL。,9、hStdInput:HSTREETERMINATOR 类型,表示标准输入句柄,如果不需要重定向标准输入,可以设置为 NULL。,10、hStdOutput:HSTREETERMINATOR 类型,表示标准输出句柄,如果不需要重定向标准输出,可以设置为 NULL。,,11、hStdError:HSTREETERMINATOR 类型,表示标准错误句柄,如果不需要重定向标准错误,可以设置为 NULL。,1、如何获取 SHELLEXECUTEINFO 结构中的输出和错误信息?,答:可以使用 GetExitCodeProcess() 函数获取新创建的进程的退出代码,然后根据需要处理输出和错误信息。
SHELLEXECUTEINFO 结构详解
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《SHELLEXECUTEINFO 结构详解》
文章链接:https://zhuji.vsping.com/480526.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
文章名称:《SHELLEXECUTEINFO 结构详解》
文章链接:https://zhuji.vsping.com/480526.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。