ShellExecute函数简单说明

平时在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 没有关联不论什么应用程式。
 
posted @ 2015-03-06 12:03  mengfanrong  阅读(3778)  评论(0编辑  收藏  举报