VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 数据库 > VF教程 >
  • vfp教程之怎样在Visual FoxPro 中增加与去除网络联接

概述
在 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" 帮助主题 
相关教程