问题是这样的,希望大家可以试试,看是什么原因造成的。
我用ShellExecute(0,'open','conf.EXE',nil,nil,SW_SHOWNORMAL);执行打开netmeeting的操作,conf.exe是NetMeeting的可执行文件,一开始执行没问题。然后我又考虑如果该执行文件不存在会怎样,我将现有的conf.exe改名为conf1.exe,再次执行shellexecute操作,发现其可以自己新建一个conf.exe,可是当我删除原来的conf1.exe,再次执行shellexecute时,发现不能执行打开操作,我查看shellexecute的返回值为2,查看是文件名错误,可是我现在有conf.exe。我再次将conf.exe改名为conf1.exe,在有无conf.exe的情况下都可执行,即现在要想执行必须有一个conf1.exe,但是调用时我还是用conf.exe,这是什么原因呢?希望大家探讨一下。
我用ShellExecute(0,'open','conf.EXE',nil,nil,SW_SHOWNORMAL);执行打开netmeeting的操作,conf.exe是NetMeeting的可执行文件,一开始执行没问题。然后我又考虑如果该执行文件不存在会怎样,我将现有的conf.exe改名为conf1.exe,再次执行shellexecute操作,发现其可以自己新建一个conf.exe,可是当我删除原来的conf1.exe,再次执行shellexecute时,发现不能执行打开操作,我查看shellexecute的返回值为2,查看是文件名错误,可是我现在有conf.exe。我再次将conf.exe改名为conf1.exe,在有无conf.exe的情况下都可执行,即现在要想执行必须有一个conf1.exe,但是调用时我还是用conf.exe,这是什么原因呢?希望大家探讨一下。
解决方案 »
- CheckBox用sql勾选查询多个条件!
- 请问DbGrid中如何一直显示DbcheckBox?
- 网站自动登陆、数据下载问题!紧急求助
- 【动态数组→流→数据库】求助
- 紧急求教----请问书店的图书管理系统和防盗系统(磁处理)一套价格是多少?开发周期多长?磁处理使用的是贴磁条,还是其他方法?
- 怎么设置dxDBGrid1的只读属性?
- ehlib 2.0表格为什么导出到Excel中是空表的?
- 能不能获取ftp站点下的某一目录下的文件列表?
- 如何在程序中为数据库表(.DB)建立字段索引??
- 如何从自定义的Form(例如:Dialog等CustomerForm)中换取指定类型的数据呢?
- 如何返回sqlserver 中存储过程的select的结果集
- 新的一年,对D版,或者CSDN提一些新的建议
//声明
WinExec(
lpCmdLine: LPCSTR; {文件名和参数; 如没指定路径会按以下顺序查找: 程序目录/当前目录/System32/Windows/PATH环境变量}
uCmdShow: UINT {启动选项}
): UINT;//返回值:
大于 31 {调用成功}
等于 0 {内存不足}
ERROR_FILE_NOT_FOUND = 2; {文件名错误}
ERROR_PATH_NOT_FOUND = 3; {路径名错误}
ERROR_BAD_FORMAT = 11; {EXE 文件无效}//uCmdShow 参数可选值:
SW_HIDE = 0; {隐藏, 并且任务栏也没有最小化图标}
SW_SHOWNORMAL = 1; {用最近的大小和位置显示, 激活}
SW_NORMAL = 1; {同 SW_SHOWNORMAL}
SW_SHOWMINIMIZED = 2; {最小化, 激活}
SW_SHOWMAXIMIZED = 3; {最大化, 激活}
SW_MAXIMIZE = 3; {同 SW_SHOWMAXIMIZED}
SW_SHOWNOACTIVATE = 4; {用最近的大小和位置显示, 不激活}
SW_SHOW = 5; {同 SW_SHOWNORMAL}
SW_MINIMIZE = 6; {最小化, 不激活}
SW_SHOWMINNOACTIVE = 7; {同 SW_MINIMIZE}
SW_SHOWNA = 8; {同 SW_SHOWNOACTIVATE}
SW_RESTORE = 9; {同 SW_SHOWNORMAL}
SW_SHOWDEFAULT = 10; {同 SW_SHOWNORMAL}
SW_MAX = 10; {同 SW_SHOWNORMAL}
--------------------------------------------------------------------------------//举例, 启动记事本:
procedure TForm1.Button1Click(Sender: TObject);
begin
WinExec('notepad.exe', SW_SHOWNORMAL);
end;