none
traducir programacion de c# a vb.net (obtiene grupos de un dominio) RRS feed

  • Pregunta

  • Hola buenas tardes como dice el titulo e conseguido un ejemplo en C# para una funcionalidad, mostrar los grupos de un servidor de dominio, pero cuando voy a los traductores de codigo c# a vb.net me da error, me podrían ayudar?

    El primer ejemplo si lo pude llevar a vb.net, pero los 3 últimos no

    https://msdn.microsoft.com/es-es/library/ms180909(v=vs.90).aspx

    jueves, 12 de mayo de 2016 20:08

Respuestas

  • Hola,

    Pero son casi lo mismo los 3 últimos :

    Ya agregaste las referencias ?

    Y luego las importas :

    Imports System.DirectoryServices
    Imports ActiveDs

    Y el código :

    El Segundo :

       'Bloque 2
            Dim ou As New DirectoryEntry
            Dim src As New DirectorySearcher(ou, "(objectCategory=group)")
            Dim val As Integer = CInt(ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_SECURITY_ENABLED)
            Dim query As String = "(&(objectCategory=group)(groupType:1.2.840.113556.1.4.804:=" + val.ToString() + "))"
            src.Filter = query
    
            For Each res As SearchResult In src.FindAll
                Console.WriteLine(res.Path)
            Next

    El Tercero :

            'Bloque 3
            Dim src3 As New DirectorySearcher(ou, "(objectCategory=group)")
            Dim val3 As Integer = CInt(ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_GLOBAL_GROUP)
            Dim query3 As String = "(&(objectCategory=group)(groupType:1.2.840.113556.1.4.804:=" + val.ToString() + "))"
            src.Filter = query
            For Each res3 As SearchResult In src3.FindAll()
                Console.WriteLine(res3.Path)
            Next

    El Cuarto :

            Dim src4 As New DirectorySearcher(ou, "(objectCategory=group)")
            Dim val4 As Integer = CInt(ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_GLOBAL_GROUP Or ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_SECURITY_ENABLED)
            Dim query4 As String = "(&(objectCategory=group)(groupType=" + val.ToString() + "))"
            src.Filter = query
            For Each res4 As SearchResult In src.FindAll()
                Console.WriteLine(res4.Path)
            Next

    Ahora solo tienes que buscar como crear :

    Dim ou As New DirectoryEntry

    Ya que en los ejemplos solo reciben un ou de ese Tipo.

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    jueves, 12 de mayo de 2016 20:39

Todas las respuestas

  • Hola,

    Pero son casi lo mismo los 3 últimos :

    Ya agregaste las referencias ?

    Y luego las importas :

    Imports System.DirectoryServices
    Imports ActiveDs

    Y el código :

    El Segundo :

       'Bloque 2
            Dim ou As New DirectoryEntry
            Dim src As New DirectorySearcher(ou, "(objectCategory=group)")
            Dim val As Integer = CInt(ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_SECURITY_ENABLED)
            Dim query As String = "(&(objectCategory=group)(groupType:1.2.840.113556.1.4.804:=" + val.ToString() + "))"
            src.Filter = query
    
            For Each res As SearchResult In src.FindAll
                Console.WriteLine(res.Path)
            Next

    El Tercero :

            'Bloque 3
            Dim src3 As New DirectorySearcher(ou, "(objectCategory=group)")
            Dim val3 As Integer = CInt(ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_GLOBAL_GROUP)
            Dim query3 As String = "(&(objectCategory=group)(groupType:1.2.840.113556.1.4.804:=" + val.ToString() + "))"
            src.Filter = query
            For Each res3 As SearchResult In src3.FindAll()
                Console.WriteLine(res3.Path)
            Next

    El Cuarto :

            Dim src4 As New DirectorySearcher(ou, "(objectCategory=group)")
            Dim val4 As Integer = CInt(ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_GLOBAL_GROUP Or ActiveDs.ADS_GROUP_TYPE_ENUM.ADS_GROUP_TYPE_SECURITY_ENABLED)
            Dim query4 As String = "(&(objectCategory=group)(groupType=" + val.ToString() + "))"
            src.Filter = query
            For Each res4 As SearchResult In src.FindAll()
                Console.WriteLine(res4.Path)
            Next

    Ahora solo tienes que buscar como crear :

    Dim ou As New DirectoryEntry

    Ya que en los ejemplos solo reciben un ou de ese Tipo.

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    jueves, 12 de mayo de 2016 20:39
  • Gracias, había colocado la primera referencia, pero esta segundo no, con razón...     :-/ 

    Muchas gracias mi pana! Saludos!

    jueves, 12 de mayo de 2016 20:51