平时在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 没有关联不论什么应用程式。
 

ShellExecute函数简单说明的更多相关文章

  1. 转:ShellExecute函数与ShellExecuteEx函数

    ShellExecute函数 ShellExecute函数原型及參数含义例如以下: function ShellExecute(hWnd: HWND; Operation, FileName, Par ...

  2. VC API常用函数简单例子大全(1-89)

    第一个:FindWindow根据窗口类名或窗口标题名来获得窗口的句柄,该函数返回窗口的句柄 函数的定义:HWND WINAPI FindWindow(LPCSTR lpClassName ,LPCST ...

  3. 一个不错的PHP二维数组排序函数简单易用存用

    一个不错的PHP二维数组排序函数简单易用存用 传入数组,传入排序的键,传入排序顺序 public function array_sort($arr,$keys,$type='asc') { $keys ...

  4. 【转】JS回调函数--简单易懂有实例

    JS回调函数--简单易懂有实例 初学js的时候,被回调函数搞得很晕,现在回过头来总结一下什么是回调函数. 我们先来看看回调的英文定义:A callback is a function that is ...

  5. Clock()函数简单使用(C库函数)

    Clock()函数简单使用(转) 存在于标准库<time.h> 描述 C 库函数 clock_t clock(void) 返回程序执行起(一般为程序的开头),处理器时钟所使用的时间.为了获 ...

  6. C语言。自定义函数简单版

    #include <stdio.h> //函数声明 void sayHi(); //函数实现 void sayHI() { printf("大家好!!\n"); } i ...

  7. CG之refract函数简单实现

    CG的refract函数定义如下: refract(I, N, eta) 根据入射光线方向I,表面法向量N和折射相对系数eta,计算折射向量.如果对给定的eta,I和N之间的角度太大,返回(0,0,0 ...

  8. day4_函数简单介绍

    一.函数是什么? 函数一词来源于数学,但编程中的「函数」概念,与数学中的函数是有很大不同的,编程中的函数在英文中也有很多不同的叫法.在BASIC中叫做subroutine(子过程或子程序),在Pasc ...

  9. MYSQL的存储过程和函数简单写法

    存储过程 MySQL中,创建存储过程的基本形式如下: CREATE PROCEDURE sp_name ([proc_parameter[,...]]) [characteristic ...] ro ...

随机推荐

  1. 复制(6)——分发者(Distributor)

    如简介中提到,分发者(Distributor)是SQLServer 复制过程的核心组件.因为它是控制和执行实际的数据移动的过程,并且存放了发布(Publications)和订阅(Subscriptio ...

  2. 介绍4种HTML5 Canvas库

    1.bHive.js Library http://www.bhivecanvas.com/ bHive能创建丰富的用户体验.动画.游戏,能够使开发更简单. demo: http://www.bhiv ...

  3. Visual Studio Team Services使用教程--默认团队checkin权限修改

  4. iOS 执行ScrollView在空白空间-解

    iOS7 中间UIViewControllers配置automaticallyAdjustsScrollViewInsets.假设YES.scrollview它会根据status bar, navig ...

  5. android 简单的登录

    一直都知道WEB通过登录后session拿着回答,如今,安卓不知道怎么弄的. 研究了一下,它记录.直接在代码: server结束: index.jsp <%@page import=" ...

  6. github中origin和upstream的区别(转)

    Fork,本身并不是git工具中的一个命令,也不是对git的扩展,它是在GitHub上的概念,是另一种clone方式——在服务器端的clone.而我们通常意义上的clone,是将远程repo 复制一份 ...

  7. 公布一个基于 Reactor 模式的 C++ 网络库

    公布一个基于 Reactor 模式的 C++ 网络库 陈硕 (giantchen_AT_gmail) Blog.csdn.net/Solstice 2010 Aug 30 本文主要介绍 muduo 网 ...

  8. cocos2d-x3.2中map的基本操作和使用

    在游戏开发中,我们有时候会用到map,而map的使用方法我简单给大家介绍一下.Map是c++的一个标准容器,她提供了非常好一对一的关系,在一些程序中建立一个map能够起到事半功倍的效果,总结了一些ma ...

  9. Ubuntu 15.10 x64 安装 Android SDK(转)

    操作系统:Ubuntu 15.10 x64 目标:安装 Android SDK 本文最后更新时间:2015-11-3 安装32位库文件 2013年9月的iPhone 5s是第一款64位手机,而Andr ...

  10. java 中类的加载顺序(转)

    1.虚拟机在首次加载Java类时,会对静态初始化块.静态成员变量.静态方法进行一次初始化 2.只有在调用new方法时才会创建类的实例 3.类实例创建过程:按照父子继承关系进行初始化,首先执行父类的初始 ...