2000系统下API实现目录共享/删除

原创 2004年01月04日 10:13:00

'共享类型
Private Const STYPE_ALL       As Long = -1
Private Const STYPE_DISKTREE  As Long = 0
Private Const STYPE_PRINTQ    As Long = 1
Private Const STYPE_DEVICE    As Long = 2
Private Const STYPE_IPC       As Long = 3
Private Const STYPE_SPECIAL   As Long = &H80000000

'共享权限
Private Const ACCESS_READ     As Long = &H1
Private Const ACCESS_WRITE    As Long = &H2
Private Const ACCESS_CREATE   As Long = &H4
Private Const ACCESS_EXEC     As Long = &H8
Private Const ACCESS_DELETE   As Long = &H10
Private Const ACCESS_ATRIB    As Long = &H20
Private Const ACCESS_PERM     As Long = &H40
Private Const ACCESS_ALL      As Long = ACCESS_READ Or _
                                        ACCESS_WRITE Or _
                                        ACCESS_CREATE Or _
                                        ACCESS_EXEC Or _
                                        ACCESS_DELETE Or _
                                        ACCESS_ATRIB Or _
                                        ACCESS_PERM

'共享信息
Private Type SHARE_INFO_2
  shi2_netname       As Long        '共享名
  shi2_type          As Long        '类型
  shi2_remark        As Long        '备注
  shi2_permissions   As Long        '权限
  shi2_max_uses      As Long        '最大用户
  shi2_current_uses  As Long        '
  shi2_path          As Long        '路径
  shi2_passwd        As Long        '密码
End Type
 
'设置共享
Private Declare Function NetShareAdd Lib "netapi32" _
                           (ByVal ServerName As Long, _
                            ByVal level As Long, _
                            buf As Any, _
                            parmerr As Long) As Long

'删除共享
Private Declare Function NetShareDel Lib "netapi32.dll" _
                           (ByVal ServerName As Long, _
                            ByVal ShareName As Long, _
                            ByVal dword As Long) As Long
                    
'设置共享
Private Sub Command1_Click()

   Dim success As Long
              
   success = ShareAdd("//XP","C:/","DOWNLOAD","资源目录","") 
                     
End Sub

'删除共享
Private Sub Command2_Click()
   Dim success As Long
              
   success = DelShare("//XP","DOWNLOAD")
  
End Sub

'设置共享(返回0 为成功)
'参数:
'sServer          计算机名
'sSharePath       要共享路径
'sShareName       显示的共享名
'sShareRemark     备注
'sSharePw         密码
Private Function ShareAdd(sServer As String, _
                          sSharePath As String, _
                          sShareName As String, _
                          sShareRemark As String, _
                          sSharePw As String) As Long
  
   Dim lngServer   As Long
   Dim lngNetname  As Long
   Dim lngPath     As Long
   Dim lngRemark   As Long
   Dim lngPw       As Long
   Dim parmerr    As Long
   Dim si2        As SHARE_INFO_2
  
   lngServer = StrPtr(sServer)      '转成地址
   lngNetname = StrPtr(sShareName)
   lngPath = StrPtr(sSharePath)
  
   '如果有备注信息
   If Len(sShareRemark) > 0 Then
      lngRemark = StrPtr(sShareRemark)
   End If
  
   '如果有密码
   If Len(sSharePw) > 0 Then
      lngPw = StrPtr(sSharePw)
   End If
     
  '初始化共享信息
   With si2
      .shi2_netname = lngNetname
      .shi2_path = lngPath
      .shi2_remark = lngRemark
      .shi2_type = STYPE_DISKTREE
      .shi2_permissions = ACCESS_ALL
      .shi2_max_uses = -1
      .shi2_passwd = lngPw
   End With
                         
  '设置共享(用户名,共享类型,共享信息,)
   ShareAdd = NetShareAdd(lngServer, _
                          2, _
                          si2, _
                          parmerr)
                         
End Function

'删除共享(返回0 表示成功)
'参数:
'sServer       计算机名
'sShareName    共享名
Private Function DelShare(sServer As String, _
                          sShareName As String) As Long
  
   Dim lngServer   As Long       '计算机名
   Dim lngNetname  As Long       '共享名

   lngServer = StrPtr(sServer)      '转成地址
   lngNetname = StrPtr(sShareName)

   '删除共享
   DelShare = NetShareDel(lngServer, lngNetname, 0)

End Function

 

使用NFS实现AIX之间文件网络共享

http://www.cnblogs.com/macrohu/archive/2013/05/27/3101179.html
  • zhanggdi
  • zhanggdi
  • 2014年04月15日 14:08
  • 1077

在CentOS上配置SAMBA共享目录

SAMBA 是linux下的一个服务,在Linux服务器上设置一个共享目录,让windows主机可以访问(rw)这个目录 首先查看系统上有没有安装samba服务器端,使用命令rpm -qa | gr...
  • qiumei1101381170
  • qiumei1101381170
  • 2016年11月21日 23:21
  • 4602

Linux(Ubuntu版本)下配置samba实现文件夹共享的方法:

虽然有很多这方面的资料,但是都存在很大的缺陷,要不就是太过于简单,要不就是存在错误。自己亲身实践过的,遇到的问题也附有相应的解决方法。 首先需要先安装samba: A、 sudo apt-get i...
  • chencangui
  • chencangui
  • 2015年09月14日 20:46
  • 2289

调用hadoop api实现文件的上传、下载、删除、创建目录和显示功能

(1)添加必要的hadoop jar包。 A、首先将Hadoop1.1.2.tar.gz解压到某一个磁盘下。 B、右键选择工程,选择build path...., build config...
  • menghuannvxia
  • menghuannvxia
  • 2015年03月26日 15:56
  • 3606

使用NFS在linux之间共享目录与文件

今天练习一下NFS的配置。NFS是做什么的呢,百度都有说,是network file system的缩写,也就是网络文件系统。用于linux与linux之间共享文件夹。 从网上摘了一段文字说明怎么配置...
  • onebigday
  • onebigday
  • 2013年10月07日 19:23
  • 4820

基于SVG的web页面图形绘制API介绍

一:什么是SVG SVG是1999由W3C发布的2D图形描述语言,纯基于XML格式的标记语言,SVG的 全称是可扩展的矢量图形跟传统的Raster方式的图形(JPG, PNG, GIF等)有很大的...
  • jia20003
  • jia20003
  • 2013年06月27日 10:41
  • 9887

使用SecureCRT进行共享文件

注意:本文是两台linux系统电脑之间的连接,windows系统操作有些许不同!!! 一、连接 1、打开软件,点击连接 2、选择新建会话 3、点击下一步 4、输入需要远程连接的主机的IP地址...
  • goodsfriend
  • goodsfriend
  • 2016年12月29日 16:41
  • 590

VirtualBox 共享文件夹设置为开机自动挂载

VirtualBox 共享文件夹设置为开机自动挂载
  • u013594514
  • u013594514
  • 2016年12月06日 13:53
  • 226

apache 配置共享目录

刚刚装了apache,就是简单的作为一个httpserver服务器使用,安装过程不需要多说,只是要记录一下如何更改默认的共享目录 在安装目录下的文件conf/httpd.conf中,找到下面...
  • wzzfeitian
  • wzzfeitian
  • 2013年04月21日 17:38
  • 1967

Win32 删除非空目录

Win32 删除非空目录 DeleteFile();  //这是删除文件的win32 API RemoveFile();  //这是删除空目录的win32 API(注意,如果目录...
  • qq_33266987
  • qq_33266987
  • 2016年07月08日 16:56
  • 662
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:2000系统下API实现目录共享/删除
举报原因:
原因补充:

(最多只允许输入30个字)