FAER писал(а):И ещё вопрос - возможно ли в VB6 реализовать многопоточность?
FAER писал(а):А какие для этого необходимо использовать компоненты?
Private Function GetObjList(DomainName As String, obj As IAdsObj) As Variant
Dim MylistName() As String
Dim MyIADs As ActiveDs.IADs
Dim MyContainer As ActiveDs.IADsContainer
Dim MyObj As Object
Set MyContainer = GetObject("WinNT://" + DomainName)
Select Case obj
Case 1
MyContainer.Filter = Array("User")
Case 2
MyContainer.Filter = Array("Computer")
Case 3
MyContainer.Filter = Array("Group")
End Select
ReDim MylistName(0)
For Each MyIADs In MyContainer
Set MyObj = MyIADs
ReDim Preserve MylistName(UBound(MylistName) + 1)
MylistName(UBound(MylistName)) = MyObj.Name
Next MyIADs
GetObjList = MylistName
Set MyObj = Nothing
Set MyContainer = Nothing
End Function
Private Sub Command1_Click()
Dim MyUsers As Variant
MyUsers = GetObjList("MyDomen", User)
MsgBox UBound(MyUsers)
End Sub
ConnectionString="Provider=ADsDSOObject;Encrypt Password=False;Mode=Read;Bind Flags=0;ADSI Flag=-2147483648"
120 Set cn = New ADODB.Connection
130 cn.ConnectionString = ConnectionString
cn.CursorLocation = adUseClient
140 cn.Open
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
Set Rs.ActiveConnection = cn
Rs.Open SQL, , adOpenStatic, adLockReadOnly, adCmdText
160 Set Me.DataGrid1.DataSource = Rs
select name FROM 'LDAP://DC=mydomain,DC=msk' WHERE objectClass = 'computer'
select * FROM 'LDAP://DC=mydomain,DC=msk' WHERE objectClass = 'group'
FAER писал(а):Кроме того, как видно из кода, помимо числа компов в сети, прога должна показывать ещё и количество групп.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 50