HOWTO: Manipulate File Shares with ADSI (VB Sample)

ID: Q169398


The information in this article applies to:
  • Microsoft Visual Basic Learning, Professional, and Enterprise Editions for Windows, version 6.0
  • Microsoft Visual Basic Standard, Professional, and Enterprise Editions for Windows, version 4.0
  • Microsoft Windows 95
  • Microsoft Windows NT 4.0
    on the following platforms: Alpha, MIPS, x86


SUMMARY

You can use ADSI to manipulate file shares as shown in the Visual Basic sample code below.


MORE INFORMATION

You must install the ADSI runtime (ADS.EXE) available from www.microsoft.com/ntserver/info/adsi.htm, and then add a reference to Active DS Type Library.

The following code first gets a fileshare object on a server and reads its path property. Then it gets a fileservice object on a server, uses it to enumerate the shares on the server, creates a new share \\SERVER\newshare for C:\, and deletes the share it just created. You can omit the DOMAIN\ in the code below, but you may see some performance degradation caused by additional browsing to find the SERVER:


   Sub foo()

   Dim comp As IADsComputer
   Dim serv As IADsService
   Dim fserv As IADsContainer
   Dim share As IADsFileShare
   Dim shareNew As IADsFileShare
   Dim v As Variant

   ' Replace DOMAIN, SERVER & SHARE with the appropriate
   ' domain, server  and share names
   Set share = GetObject("WinNT://DOMAIN/SERVER/lanmanserver/SHARE")
   v = share.Path ' Gets directory path on server
   Set share = nothing

   ' Replace DOMAIN & SERVER with the appropriate domain and server names
   Set fserv = GetObject("WinNT://DOMAIN/SERVER/lanmanserver")

   ' Enumerate existing shares
   For Each share In fserv
     v = share.Class
     v = share.ADsPath
     v = share.HostComputer
     v = share.Path
   Next share

   ' Create share in fileservice container
   Set shareNew = fserv.Create("fileshare", "newshare")
   shareNew.Path = "C:\"
   shareNew.SetInfo  ' Commit new share

   ' Delete share
   fserv.Delete "fileshare", "newshare"

   ' Fails since share is gone
   shareNew.GetInfo

   End Sub 


REFERENCES

www.microsoft.com/ntserver/info/adsi.htm

ADSI specification document from the ADSI SDK

Additional query words: kbVBp400 kbVBp600 kbdse kbDSupport kbVBp

Keywords : kbGrpVBDB
Version : WINDOWS:4.0,6.0,95; winnt:4.0
Platform : WINDOWS winnt
Issue type : kbhowto


Last Reviewed: January 5, 2000
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.