ShellExecute函数简单说明

来源:互联网 发布:阿里云的虚拟主机 编辑:程序博客网 时间:2024/04/25 08:01
平时在delphi写代码的过程中总是能遇到ShellExecute函数,于是索性将它的用法整理一下,因为我在微软的网站上也没能查到个详细解释(当然我查的中文版,俺菜嘛)

ShellExecute函数原型及参数含义如下:

  function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,Directory: PChar; ShowCmd: Integer): HINST; stdcall;

  ●hWnd:用于指定父窗口句柄。当函数调用过程出现错误时,它将作为Windows消息窗口的父窗口。例如,可以将其设置为应用程序主窗口句柄,即 Application.Handle,也可以将其设置为桌面窗口句柄(用GetDesktopWindow函数获得)。

   ●Operation:用于指定要进行的操作。
其中“open”操作表示执行由FileName参数指定的程序,或打开由FileName参数指定的文件或文件夹;
“print”操作表示打印由FileName参数指定的文件;
“explore”操作表示浏览由FileName参数指定的文件夹。
当参数设为nil时,表示执行默认操作“open”;
edit  编辑;
find  搜寻
最后这两个是在别的网站上找到的,没有验证是不是这样。

  ●FileName:用于指定要打开的文件名、要执行的程序文件名或要浏览的文件夹名。

  ●Parameters:若FileName参数是一个可执行程序,则此参数指定命令行参数,否则此参数应为nil或PChar(0)。

  ●Directory:用于指定默认目录。

  ●ShowCmd:若FileName参数是一个可执行程序,则此参数指定程序窗口的初始显示方式,否则此参数应设置为0
此参数可为下列值之一
DisplayState 含义 HIDE 0 隐藏窗口并激活其他窗口 SHOWNORMAL 1 激活并显示一个窗口
如果窗口是最小化或最大化, 将其还原到其原始大小和位置 (同 RESTORE)
SHOWMINIMIZED 2 激活窗口并最小化 SHOWMAXIMIZED 3 激活窗口并最大化 SHOWMINNOACTIVATE 4 以最近的大小和位置显示窗口
当前活动窗口保持活动
SHOW 5 激活窗口并显示其当前大小和位置中 MINIMIZE 6 最小化指定窗口并激活系统列表中顶层窗口 SHOWMINNOACTIVE 7 以最小化模式显示窗口
当前活动窗口保持活动
SHOWNA 8 以最近的状态显示窗口
当前活动窗口保持活动
RESTORE 9 激活窗口并显示
如果窗口是最小化或最大化,还原到其原始大小和位置 (同SHOWNORMAL)
补充:
MAXIMIZE : 最大化窗口

  若ShellExecute函数调用成功,则返回值为被执行程序的实例句柄。若返回值小于32,则失败,有下列几种回应值:
   2 错误的关联 (例如:不合法的 URL)
  29 关联失败
  30 关联应用程式忙碌中...
  31 没有关联任何应用程式。