学时安排: 实验教学1学时。
实验目的:
学习使用Windows API的ShellExecute函数,使VF表单直接发送电子邮件和开启网页.
实验要求:
1. 每人一机,独立完成实验。
2. 每次实验完成将结果存入自己的U盘,或上传至信息中心个人网络U盘中保存。
实验设备:
硬件配置:计算机实验教学示范中心机房计算机。
软件配置:Windows操作系统,Visual Foxpro6.0系统。
实验内容及步骤:
ShellExecute是用来打开特定格式的文件(如WORD文件、EXCEL表格)的函数。该函数存放在Shell32.DLL动态链接库中,通过查阅MSDN得到下述帮助:
HINSTANCE ShellExecute(HWND hwnd,LPCTSTR lpOperation,LPCTSTR lpFile,LPCTSTR lpParameters,LPCTSTR lpDirectory,INT nShowCmd);
其调用参数的含义如下:
hwnd:指明打开文件的窗口句柄。
lpOperation:指明操作类型,分别是“open”(打开)、“print”(打印)、“explore”(浏览)。
lpFile:欲打开文件的文件名。这里应该将文件的含义向更深层次理解。文件可以是本地文件,也可以是远程文件;文件的类型可以是文本文件,也可以是多媒体文件。
lpParameters:打开文件时所传递的参数。特别适合打开EXE文件。
lpDirectory:文件所在路径。
nShowCmd:打开文件时窗口的状态。0表示隐藏,1表示最大化,2表示最小化。
如果该函数能够成功打开文件,则该函数的返回值大于32。
有了上述认识之后,我们便能在VFP的程序开发中利用ShellExecute函数来实现发送电子邮件的功能。
在Label1中的MouseIcon设为一手型光标。
编写控件的CLICK事件代码:对Label1和Label2的CLICK事件设定相同,其他代码为:
*进行声明操作:
DECLARE INTEGER ShellExecute IN shell32.DLL INTEGER HWND,STRING,STRING lpszFile,STRING,STRING,INTEGER
在Label1的CLICK事件里,添加以下代码:
ShellExecute(0,″open″,″mailto:htbysj@tom.com?subject=你好″,0,0,1)
在Label2的CLICK事件里,将上述语句改为:
ShellExecute(0,”open”,″http:∥lab.cug.edu.cn″,0,0,1)
确认按钮的CLICK事件代码:thisform.release
运行上述表单,当鼠标移动到电子邮件或是作者主页区域时,鼠标便会变成一只手,点一下即可进行相应的操作:单击Label1,启动Outlook Express;单击Label2,启动IE,表单像一个小型的IE!