home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 27 / IOPROG_27.ISO / SOFT / ADSDK.ZIP / Samples / WinNT / Computer / vb / Computer.bas next >
Encoding:
BASIC Source File  |  1999-03-16  |  5.9 KB  |  217 lines

  1. Attribute VB_Name = "Computer"
  2. Sub Main()
  3.  
  4. '----------------------------------------------------------------------------
  5. '
  6. '  Microsoft Active Directory 2.5 Sample Code
  7. '
  8. '  Copyright (C) Microsoft Corporation, 1996 - 1999
  9. '
  10. '  File:       computer.bas
  11. '
  12. '  Contents:   Computer, Services, FileShare, Resources and Sessions
  13. '
  14. '----------------------------------------------------------------------------
  15.  
  16.  
  17. Dim comp As IADsComputer
  18. Dim svc As IADsService
  19. Dim svcOp As IADsServiceOperations
  20. Dim fileShare As IADsFileShare
  21. Dim fileSvc As IADsFileService
  22. Dim session As IADsSession
  23. Dim resource As IADsResource
  24.  
  25.  
  26.  
  27.  
  28. '--- Defined in winnt.h ----------------
  29.  
  30. Const SERVICE_BOOT_START = &H0
  31. Const SERVICE_SYSTEM_START = &H1
  32. Const SERVICE_AUTO_START = &H2
  33. Const SERVICE_DEMAND_START = &H3
  34. Const SERVICE_DISABLED = &H4
  35. '
  36. ' Error control type
  37. '
  38. Const SERVICE_ERROR_IGNORE = &H0
  39. Const SERVICE_ERROR_NORMAL = &H1
  40. Const SERVICE_ERROR_SEVERE = &H2
  41. Const SERVICE_ERROR_CRITICAL = &H3
  42.  
  43. Const SERVICE_KERNEL_DRIVER = &H1
  44. Const SERVICE_FILE_SYSTEM_DRIVER = &H2
  45. Const SERVICE_ADAPTER = &H4
  46. Const SERVICE_RECOGNIZER_DRIVER = &H8
  47.  
  48. Const SERVICE_DRIVER = &HB
  49. Const SERVICE_WIN32_OWN_PROCESS = &H10
  50. Const SERVICE_WIN32_SHARE_PROCESS = &H20
  51. Const SERVICE_WIN32 = &H30
  52. Const SERVICE_INTERACTIVE_PROCESS = &H100
  53.                                         
  54.  
  55.  
  56.  
  57.  
  58. '-----------------------------------------
  59. '--- BINDING TO COMPUTER OBJECT
  60. '-----------------------------------------
  61. Set comp = GetObject("WinNT://SEATTLE,computer")
  62. 'OR----you can include the domain name
  63. Set comp = GetObject("WinNT://INDEPENDENCE/SEATTLE,computer")
  64.  
  65. Debug.Print comp.Division
  66. Debug.Print comp.OperatingSystem
  67. Debug.Print comp.OperatingSystemVersion
  68. Debug.Print comp.Owner
  69. Debug.Print comp.Processor
  70. Debug.Print comp.ProcessorCount
  71.  
  72.  
  73. '-------------------------------------------
  74. '--- ENUMERATE SERVICES IN A COMPUTER
  75. '-------------------------------------------
  76. Set comp = GetObject("WinNT://SEATTLE,computer")
  77. comp.Filter = Array("Service")
  78.  
  79. For Each svc In comp
  80.    Debug.Print svc.Name & "  " & svc.DisplayName
  81. Next
  82.  
  83. '----------------------------------------------
  84. '--- DISPLAY SERVICE'S PROPERTIES
  85. '-----------------------------------------------
  86. Set comp = GetObject("WinNT://SEATTLE,computer")
  87. Set svc = comp.GetObject("Service", "Browser")
  88. Debug.Print "Display Name: " & svc.DisplayName
  89. Debug.Print "Order Group: " & svc.LoadOrderGroup
  90. Debug.Print "Host Name: " & svc.HostComputer
  91.  
  92. s = "Startup: "
  93.  
  94. Select Case svc.StartType
  95.   Case SERVICE_BOOT_START
  96.      s = s + "Boot Start"
  97.   Case SERVICE_SYSTEM_START
  98.      s = s + "System Start"
  99.   Case SERVICE_AUTO_START
  100.     s = s + "Automatic"
  101.   Case SERVICE_DEMAND_START
  102.     s = s + "Manual"
  103.   Case SERVICE_DISABLED
  104.     s = s + "Disabled"
  105.   Case Else
  106.     s = s + "Unknown"
  107. End Select
  108. Debug.Print s
  109.  
  110. 'Dependencies
  111. Debug.Print "Dependencies: "
  112. For Each dpc In svc.Dependencies
  113.     Debug.Print "  " & dpc
  114. Next
  115.  
  116. 'Service Type
  117. s = "Service Type: "
  118. Select Case svc.ServiceType
  119.  
  120. Case SERVICE_KERNEL_DRIVER
  121.      s = s + "Kernel Driver"
  122. Case SERVICE_FILE_SYSTEM_DRIVER
  123.      s = s + "File System Driver"
  124. Case SERVICE_ADAPTER
  125.      s = s + "Adapter"
  126. Case SERVICE_RECOGNIZER_DRIVER
  127.      s = s + "Recognizer Driver"
  128. Case SERVICE_WIN32_OWN_PROCESS
  129.      s = s + "Win32 Process"
  130. Case SERVICE_WIN32_SHARE_PROCESS
  131.      s = s + "Win32 Share Process"
  132. Case SERVICE_WIN32
  133.      s = s + "Win32"
  134. Case SERVICE_INTERACTIVE_PROCESS
  135.      s = s + "Interactive Process"
  136. End Select
  137. Debug.Print s
  138.  
  139. 'Error Control
  140. s = "Error Control: "
  141. Select Case svc.ErrorControl
  142.  
  143. Case SERVICE_ERROR_IGNORE
  144.    s = s + "Service ignores error"
  145. Case SERVICE_ERROR_NORMAL
  146.    s = s + "No Error"
  147. Case SERVICE_ERROR_SEVERE
  148.    s = s + "Severe error"
  149. Case SERVICE_ERROR_CRITICAL
  150.   s = s + "Critical error"
  151. Case Else
  152.   s = s + "Unknown"
  153. End Select
  154. Debug.Print s
  155.  
  156. '----------------------------------------------
  157. '--- STOPPING, STARTING AND PAUSING A SERVICE
  158. '-----------------------------------------------
  159. Set comp = GetObject("WinNT://SEATTLE,computer")
  160. Set svcOp = comp.GetObject("Service", "Browser")
  161. 'Stopping
  162. svcOp.Stop
  163. 'Starting
  164. svcOp.Start
  165. 'Pausing
  166. svcOp.Pause
  167.  
  168.  
  169.  
  170.  
  171. '------------------------------------------
  172. '---- ENUMERATING FILE SHARES IN A COMPUTER
  173. '-------------------------------------------
  174. Set comp = GetObject("WinNT://SEATTLE,computer")
  175. Set svc = GetObject(comp.ADsPath & "/" & "LanmanServer")
  176. For Each fileShare In svc
  177.       Debug.Print fileShare.Name & " " & " " & fileShare.CurrentUserCount & " " & fileShare.Path
  178. Next
  179.  
  180. '------------------------------------------
  181. '---- CREATING A FILE SHARE IN A COMPUTER
  182. '-------------------------------------------
  183. Set comp = GetObject("WinNT://SEATTLE,computer")
  184. Set svc = GetObject(comp.ADsPath & "/" & "LanmanServer")
  185. Set fileShare = svc.Create("FileShare", "public")
  186. fileShare.Path = "c:\public"
  187. fileShare.SetInfo
  188.  
  189.  
  190. '------------------------------------------
  191. '---- DELETING A FILE SHARE IN A COMPUTER
  192. '-------------------------------------------
  193. Set comp = GetObject("WinNT://SEATTLE,computer")
  194. Set svc = GetObject(comp.ADsPath & "/" & "LanmanServer")
  195. svc.Delete "FileShare", "public"
  196.  
  197.  
  198. '--------------------------------------------
  199. '---- ENUMERATING SESSIONS IN A COMPUTER
  200. '---------------------------------------------
  201. Set comp = GetObject("WinNT://SEATTLE,computer")
  202. Set fileSvc = GetObject(comp.ADsPath & "/" & "LanmanServer")
  203. For Each session In fileSvc.Sessions
  204.    Debug.Print session.Name & " " & session.ConnectTime
  205. Next
  206.  
  207. '--------------------------------------------
  208. '---- ENUMERATING RESOURCES IN A COMPUTER
  209. '---------------------------------------------
  210. Set comp = GetObject("WinNT://SEATTLE,computer")
  211. Set fileSvc = GetObject(comp.ADsPath & "/" & "LanmanServer")
  212. For Each resource In fileSvc.Resources
  213.    Debug.Print resource.Name & " - " & resource.User
  214. Next
  215.  
  216. End Sub
  217.