
ShellExecute的功能是运行一个外部程序(或者是打开一个已注册的文件、打开一个目录、打印一个文件等等),并对外部程序有一定的控制。
ShellExecute函数原型及参数含义如下:
ShellExecute(
hWnd: HWND; {指定父窗口句柄}
Operation: PChar; {用于指定要进行的操作。其中“open”操作表示执行由FileName参数指定的程序,或打开由FileName参数指定的文件或文件夹;“print”操作表示打印由FileName参数指定的文件;“explore”操作表示浏览由FileName参数指定的文件夹。当参数设为nil时,表示执行默认操作“open”。}
FileName: PChar; {指定要打开的文件或程序}
Parameters: PChar; {给要打开的程序指定参数; 如果打开的是一个可执行程序,此参数指定命令行参数。如果打开的是文件该参数是 nil若}
Directory: PChar; {缺省目录}
ShowCmd: Integer {打开选项}
)
ShowCmd 参数可选值:
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}
调用计算器
ShellExecute(NULL,"open
调用记事本
ShellExecute(NULL,"open
打开网页
ShellExecute(Handle, "open", "http://www.myufe.com", NULL, NULL, SW_SHOWNORMAL);
打开邮件
ShellExecute(Handle,"open"mailto:",NULL,NULL,SW_SHOWNORMAL);
打开邮件件,并指定收件人
ShellExecute(Handle, "openmailto:***********",NULL,NULL,SW_SHOWNORMAL);
若指定多个收件人地址,则收件人地址之间必须用分号或逗号分隔开。
开邮件件,指定收件人、主题、正文
subject=邮件主题&body=邮件正文
ShellExecute(handle, "open", "mailto:who@163.com?subject=Hello&Body=This is a test",NULL, NULL, SW_SHOWNORMAL);
打开新邮件窗口,并自动填入收件人地址、邮件主题和邮件正文。若邮件正文包括多行文本,则必须在每行文本之间加入换行转义字符\\n。
