




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
WinAPI: ShellExecute - 打开外部程序或文件ShellExecute( hWnd: HWND; 指定父窗口句柄 Operation: PChar; 指定动作, 譬如: open、print FileName: PChar; 指定要打开的文件或程序 Parameters: PChar; 给要打开的程序指定参数; 如果打开的是文件这里应该是 nil Directory: PChar; 缺省目录 ShowCmd: Integer 打开选项): HINST; 执行成功会返回应用程序句柄; 如果这个值 = 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; 没有相关联的应用程序/ShowCmd 参数可选值:SW_HIDE = 0; 隐藏SW_SHOWNORMAL = 1; 用最近的大小和位置显示, 激活SW_NORMAL = 1; 同 SW_SHOWNORMALSW_SHOWMINIMIZED = 2; 最小化, 激活SW_SHOWMAXIMIZED = 3; 最大化, 激活SW_MAXIMIZE = 3; 同 SW_SHOWMAXIMIZEDSW_SHOWNOACTIVATE = 4; 用最近的大小和位置显示, 不激活SW_SHOW = 5; 同 SW_SHOWNORMALSW_MINIMIZE = 6; 最小化, 不激活SW_SHOWMINNOACTIVE = 7; 同 SW_MINIMIZESW_SHOWNA = 8; 同 SW_SHOWNOACTIVATESW_RESTORE = 9; 同 SW_SHOWNORMALSW_SHOWDEFAULT = 10; 同 SW_SHOWNORMALSW_MAX = 10; 同 SW_SHOWNORMAL-/举例说明更多问题(别忘了 uses ShellAPI;):譬如用记事本打开一个文件begin ShellExecute(Handle, open, notepad.exe, C:WINDOWSSchedLgU.Txt, nil, SW_SHOWNORMAL);end;-第一个参数是用来当作错误提示窗口的父窗口的, 不能是 nil, 可以是 0(也就是桌面窗口)begin ShellExecute(0, open, notepad.exe, C:WINDOWSSchedLgU.Txt, nil, SW_SHOWNORMAL);end;-第二个参数如果是 nil, 也会默认位 openbegin ShellExecute(0, nil, notepad.exe, C:WINDOWSSchedLgU.Txt, nil, SW_SHOWNORMAL);end;-文件路径可以放在参数五begin ShellExecute(0, nil, notepad.exe, SchedLgU.Txt, C:WINDOWS, SW_SHOWNORMAL);end;-把参数三直接指定为要打开的文件, 文件将用对应默认程序打开; 次数参数四应为 nilbegin ShellExecute(0, nil, SchedLgU.Txt, nil, C:WINDOWS, SW_SHOWNORMAL);end;-如果文件在: 程序目录/当前目录/System32/Windows/PATH环境变量中, 参数五也可以 nilbegin ShellExecute(0, nil, SchedLgU.Txt, nil, nil, SW_SHOWNORMAL);end;-如果参数三是个文件, 可以用参数二命令打印begin ShellExecute(0, print, SchedLgU.Txt, nil, nil, 1);end;-用 IE 打开网页begin ShellExecute(Handle, open, IExplore.EXE, about:blank, nil, SW_SHOWNORMAL);end;-用火狐打开网页begin ShellExecute(Handle, open, firefox.exe, about:blank, nil, SW_SHOWNORMAL);end;-来源:(/s/blog_4b05f08e0100h5py.html) - Delphi打开外部程序或文件_漂忆_新浪博客用默认浏览器打开网页begin ShellExecute(Handle, open, Explorer.exe, about:blank, nil, SW_SHOWNORMAL);end;-还是用默认浏览器打开网页begin ShellExecute(0, nil, , nil, nil, 1);end; Delphi技巧集六 (等待执行完一个外部程序再执行另一个程序)Posted on 2008-08-10 23:20 清枫&明月 阅读(80) 评论(0) 编辑 收藏 网摘 所属分类: Delphi编程资料 unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private Private declarations public Public declarations end;var Form1: TForm1;implementationuses ShellAPI; /注意$R *.dfmfunction ExecAppWait(AppName, Params: string): Boolean;var ShellExInfo: TShellExecuteInfo;begin FillChar(ShellExInfo, SizeOf(ShellExInfo), 0); with ShellExInfo do begin cbSize := SizeOf(ShellExInfo); fMask := see_Mask_NoCloseProcess; Wnd := Application.Handle; lpFile := PChar(AppName); lpParameters := PChar(Params); nShow := sw_ShowNormal; end; Result := ShellExecuteEx(ShellExInfo); if Result then while WaitForSingleObject(ShellExInfo.HProcess, 100) = WAIT_TIMEOUT do begin Application.ProcessMessages; if Application.Terminated then Break; end;end;procedure TForm1.Button1Click(Sender: TObject);const 连续运行下面这四个EXE文件 EXEFILES : array1.4 of string = (calc.exe, mspaint.exe, Notepad.exe, wordpad.exe);var Success: Boolean; InstanceID: THandle; I : integer;begin for I := Low(EXEFILES) to High(EXEFILES) do begin Application.Minimize;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年办公A3纸张租赁协议书及损耗补偿条款
- 2025年餐饮企业员工综合素质培养及特色服务输出合作协议
- 2025年专用压路机租赁与现场施工进度跟踪管理合同
- 2025年健康主题餐厅知识产权及综合经营权转让合同
- 2025小型企业合同数字化管理平台建设与运营合同
- 2025年度互联网数据中心IDC云平台租赁合作协议
- 2025年专业医疗康复设备引进与医护人员培训合同
- 2025年绿色能源采购协议:光伏发电项目专用采购合同
- 2025年企业员工创新思维与团队协作能力培训服务合同
- 2025高端医疗设备技术引进与本地化生产合作协议
- GB/T 43137-2023土方机械液压破碎锤术语和商业规格
- 京东集团员工手册-京东
- 2023年苏州市星海实验中学小升初分班考试数学模拟试卷及答案解析
- GB/T 37915-2019社区商业设施设置与功能要求
- GB/T 31298-2014TC4钛合金厚板
- GB/T 27746-2011低压电器用金属氧化物压敏电阻器(MOV)技术规范
- GB/T 22237-2008表面活性剂表面张力的测定
- GB/T 13667.3-2003手动密集书架技术条件
- 导轨及线槽项目投资方案报告模板
- 复旦大学<比较财政学>课程教学大纲
- 书法的章法布局(完整版)
评论
0/150
提交评论