认识VF--Visual FoxPro 漫谈
2007-11-11 11:37:25 来源:WEB开发网
概述
在 FoxPro for Windows 2.x 中用 Foxtools.fll 和在 Visual FoxPro 中用 DECLARE DLL 命令定义相关的 Windows API(应用程序编程接口)函数, 可以在 FoxPro 中增加与去除网络联接.
仅管 Visual FoxPro 仍然支持 FOXTOOLS 库作为向后兼容, DECLARE 命令是调用 DLL 函数的更好的方法.
更多信息
以下章节包括 FoxPro 2.x 和 Visual FoxPro 用法约定.
FoxPro 2.x
在 FoxPro 2.x 中用 FOXTOOLS 库, 按以下步骤添加和移除网络连接.
用以下命令载入库:
SET LIBRARY TO SYS(2004)+'FOXTOOLS.FLL' ADDITIVE
注册你要调用的 Windows API 函数. 在目前情况下我们要用到的是 WNetAddConnection() 和 WNetCancelConnection().
addconn=RegFn('WNetAddConnection','CCC','I')
delconn=RegFn('WNetCancelConnection','CI','I')
要连接到网络设备, 发布以下命令:
=CallFn(addconn,"\\SERVER\SHARE","password","<drive>:")
要断开网络连接, 发布以下命令:
=CallFn(delconn,"<drive>:",0)
Visual FoxPro
使用 DECLARE DLL 命令定义要调用的 DLL 函数:
**-- DLL 定义
Declare integer WNetAddConnection in WIN32API string,string,string Declare integer Declare integer WNetCancelConnection in WIN32API String,integer
**-- 添加网络连接
=WNetAddConnection("\\SERVER\SHARE", "", "DriveLetter:")
**-- 移除网络连接
=WNetCancelConnection("DriveLetter:",0)
以下信息提供了这两个 API 调用的附加的参考材料.
WNetAddConnection()
WNetAddConnection() 函数重定向指定的本地设备 (磁盘或打印端口) 为给定的共享设备或远程设备. 它使用以下参数:
lpszNetPathName
指向以 null 结尾的字符串,该字符串指定了要连接的网络资源,如 \\Server\Share.
注意: 通常 Novell 用户不使用 :: 符号来引用服务器和目录. 例如, 不要试着用以下方法来引用一个目录:
\\server\volume::\mydirectory.
而应使用以下方法:
\\server\volume\mydirectory
lpszPassword
指向以 null 结尾的字符串,该字符串指定了要用来进行连接操作的口令. 该参数通常是与当前用户相关的口令,如果该参数为 null ,那么使用缺省口令. 如果该字符串为空,则不使用口令(使用一介空串作为占位符):
=CallFn(addconn,"\\SERVER\SHARE","","<drive>:")
lpszLocalName
指向以 null 结尾的字符串,该字符串指定了要被重定向的本地设备.所有 lpszLocalName 串 (如 LPT1) 是要区分大小写的. 只使用了设备名 A: 到 Z: 和 设备名 LPT1 到 LPT3.
WNetCancelConnection()
WNetCancelConnection() 函数取消网络连接.它使用以下参数:
lpszName
指向以 null 结尾的字符串,该字符串指定了重定向的本地设备名 (如 LPT1: 或 D:)或解除连接的远程网络资源。当该参数指定了一个重定向的本地设备,则该指定的设备的重定向被解除。若该参数指定了 一个远程网络资源,那么只有该远程资源的连接而不是设备被解除。
fForce
指定即使在连接上有打开的文件或任务时,是否任进行中断连接。 如果该参数为 FALSE ,那么在有打开的文件或任务时,调用该函数失败.
参考
关于 WNetAddConnection() 和 WNetCancelConnection() API 调用的更多信息, 请参阅 Microsoft Windows Software Development Kit (SDK) "程序员参考, 第二卷: 函数,".
注意: API 调用返回值不会被 FoxPro for Windows 转换.
关于 Visual FoxPro DECLARE 命令细节, 请参阅 "DECLARE - DLL" 帮助主题
原作者: James
- ››Visual Basic 2008 数学函数
- ››Visual Studio2005中Smart Device的问题
- ››Visual Studio 中根据数据库字段动态生成控件
- ››Visual Studio 11全新黑色主题
- ››Visual Studio 2011 Beta新特性(一):安装VS201...
- ››Visual Studio自定义调试窗体两个小技巧
- ››Visual Studio 2005 Team Edition for Database P...
- ››Visual C#两分钟搭建BHO IE钩子
- ››Visual C++优化对大型数据集合的并发访问
- ››VISUAL C++中的OCX控件的使用方法
- ››Visual C++实现视频图像处理技术
- ››Visual C++制作一个Sniffer实例
更多精彩
赞助商链接