ShellExecute函数介绍

喜欢而已 提交于 2019-12-26 23:45:00

功能:ShellExecute的功能是运行一个外部程序

头文件:#include <shellapi.h>

函数原型:

ShellExecute(HWND hWnd,LPCSTR lpOperation,LPCSTR lpFileName,LPCSTR lpParameters,

LPCSTR lpDirectory,int nShowCmd)

  HWND   hWnd: {用于指定父窗体句柄。当函数调用过程出现错误时,它将作为Windows消息窗体的父窗体。比如,能够将其设置为应用程序主窗体句柄,即 Application.Handle,也能够将其设置为桌面窗体句柄(用GetDesktopWindow函数获得}

  LPCSTR  lpOperation:用于指定要进行的操作: open、print、edit、explore、find 

  • “open”操作表示运行由FileName參数指定的程序,或打开由FileName參数指定的文件或目录;
  • “print”操作表示打印由FileName參数指定的文件;
  • “explore”操作表示浏览由FileName參数指定的目录。
  • edit  编辑;
  • find  搜寻;
  • 当參数设为nil时,表示运行默认操作“open”;

  LPCSTR lpFileName: 用于指定要打开的文件名称、要运行的程序文件名称或要浏览的目录名。

  LPCSTR lpParameters:若FileName參数是一个可运行程序,则此參数指定命令行參数,否则此參数应为nil或PChar(0)

  LPCSTR lpDirectory: 用于指定默认目录

  int nShowCmd: 若FileName參数是一个可运行程序,则此參数指定程序窗体的初始显示方式,否则此參数应设置为0
此參数可为下列值之中的一个(例:SW_HIDE(要加SW_))

返回值:
  执行成功会返回应用程序句柄

  返回的HINSTANCE可以将它转换为一个整数(%d),并比较它的值大于还是小于32或比较它的错误代码

  返回值大于32表示执行成功

  返回值小于32表示执行错误

  返回值可能的错误有: = 0 {内存不足}

  ERROR_FILE_NOT_FOUND = 2; {文件名错误}

  ERROR_PATH_NOT_FOUND = 3; {路径名错误}

  ERROR_BAD_FORMAT = 11; {EXE 文件无效}

  SE_ERR_SHARE = 26; {发生共享错误}

  SE_ERR_ASSOCINCOMPLETE = 27; {文件名不完全或无效}

  SE_ERR_DDETIMEOUT = 28; {超时}

  SE_ERR_DDEFAIL = 29; {DDE 事务失败}

  SE_ERR_DDEBUSY = 30; {正在处理其他 DDE 事务而不能完成该 DDE 事务}

  SE_ERR_NOASSOC = 31; {没有相关联的应用程序}

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!