HOWTO: Manipulate File Shares with ADSI (VB Sample)

Last reviewed: June 2, 1997
Article ID: Q169398
The information in this article applies to:
  • Microsoft Visual Basic Standard, Professional, and Enterprise Editions for Windows, version 4.0
  • Microsoft Windows 95
  • Microsoft Windows NT version 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


Keywords : vb4win kbhowto
Version : 4.0 95
Platform : NT Win95 WINDOWS
Hardware : ALPHA MIPS x86
Issue type : kbhowto


THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Last reviewed: June 2, 1997
© 1998 Microsoft Corporation. All rights reserved. Terms of Use.