elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Campo managedby sin CN
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 Ir Abajo Respuesta Imprimir
Autor Tema: Campo managedby sin CN  (Leído 7,302 veces)
palophp

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #10 en: 18 Octubre 2016, 23:01 pm »

Que va, poniendo eso solo me saca:

MIO1    No se ha podido apagar
MIO2    No se ha podido apagar


En línea

okik


Desconectado Desconectado

Mensajes: 462


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #11 en: 18 Octubre 2016, 23:05 pm »

Que va, poniendo eso solo me saca:

MIO1    No se ha podido apagar
MIO2    No se ha podido apagar


claro, fallo mio

Código
  1.  For Each obj In ou
  2.        If obj.managedby <> vbNullString Then '<- Si obj.managedby  es distinto de nada
  3.         Dim sN() As String
  4.         sN = Split(obj.managedby, ",")
  5.         sN = Split(sN(0), "=")
  6.  
  7.            objConsulta_PING2.WriteLine (StrEquipo & TabStop & UCase(sN(1)) _
  8.            & " " & _
  9.            "Hace PING" & vbNewLine)
  10.        End If
  11.    Next


« Última modificación: 18 Octubre 2016, 23:08 pm por okik » En línea

palophp

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #12 en: 18 Octubre 2016, 23:14 pm »

Nada.
Lo he metido en el IF y no me saca los equipos a los que hace ping.
Directamente se va al ELSE y me saca los que no hace el ping.
En línea

okik


Desconectado Desconectado

Mensajes: 462


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #13 en: 18 Octubre 2016, 23:16 pm »

Nada.
Lo he metido en el IF y no me saca los equipos a los que hace ping.
Directamente se va al ELSE y me saca los que no hace el ping.

yo entiendo que  obj.managedby devuelve esto tal cual
Código:
CN=paloma,CN=Users,DC=palo,DC=age

sin espacios... ¿me lo puedes confirmar?
« Última modificación: 19 Octubre 2016, 16:00 pm por okik » En línea

palophp

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #14 en: 18 Octubre 2016, 23:19 pm »

Cierto, así es.
Y quiero que me saque únicamente "paloma"
En línea

okik


Desconectado Desconectado

Mensajes: 462


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #15 en: 18 Octubre 2016, 23:23 pm »


De todos modos aunque tuviera espacios funcionaría igual. quizás es que usé vbnullstring prueba con ""

Código
  1. If obj.managedby <> "" Then '

Fijate esta emulación devuelve el nombre.

Código
  1. Dim managedby As String
  2. managedby = "CN = paloma ,CN = Users, DC = palo, DC = age"
  3.  If managedby <> vbNullString Then '<- Si Sn es distinto de nada
  4. Dim sN() As String
  5. sN = Split(managedby, ",")
  6. sN = Split(sN(0), "=")
  7.  
  8.  MsgBox (UCase(sN(1)))
  9.  End If

si obj.managedby devuelve algún valor, que entiendo que es como esto: "CN = paloma ,CN = Users, DC = palo, DC = age"

Entonces tiene que mostrar
Equipo Nombre  Hace PING
« Última modificación: 18 Octubre 2016, 23:25 pm por okik » En línea

palophp

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #16 en: 18 Octubre 2016, 23:33 pm »

Lo he probado, pero es que directamente si lo meto donde el IF, no me saca ni siquiera ningún equipo al que hace PING...
Y si lo dejo como estaba, si que me saca todo pero con el CN=....

Código
  1. If responde_al_ping(StrEquipo) then
  2.  For Each obj In ou
  3.        If obj.managedby <> "" Then '<- Si obj.managedby  es distinto de nada
  4.         Dim sN()
  5.         sN = Split(obj.managedby, ",")
  6.         sN = Split(sN(0), "=")
  7.  
  8.            objConsulta_PING2.WriteLine (StrEquipo & TabStop & UCase(sN(1)) _
  9.            & " " & _
  10.            "Hace PING" & vbNewLine)
  11.        End If
  12.    Next
  13. else
  14.    objConsulta_PING2.WriteLine StrEquipo & TabStop & " No se ha podido apagar"
  15. end if
  16. Loop
  17.  
  18.  
En línea

palophp

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #17 en: 18 Octubre 2016, 23:37 pm »

Código
  1. If responde_al_ping(StrEquipo) then
  2. 'Fichero Log que almacena los Equipos que se van apagando
  3. For Each obj In ou
  4. objConsulta_PING2.WriteLine (StrEquipo & TabStop & obj.managedby & " " & "SIIIIII PING")
  5. Next
  6.  
  7.  For Each obj In ou
  8.        If obj.managedby <> "" Then '<- Si obj.managedby  es distinto de nada
  9.         Dim sN()
  10.         sN = Split(obj.managedby, ",")
  11.         sN = Split(sN(0), "=")
  12.  
  13.            objConsulta_PING2.WriteLine (StrEquipo & TabStop & UCase(sN(1)) & " " & "Hace PING" & vbNewLine)
  14.        End If
  15.    Next
  16. else
  17.    objConsulta_PING2.WriteLine StrEquipo & TabStop & " No se ha podido apagar"
  18. end if
  19. Loop
  20.  

Me saca esto directamente:
MIO   CN=paloma,CN=Users,DC=palo,DC=age SIIIIII PING
MIO   CN=Dani Alejo,CN=Users,DC=palo,DC=age SIIIIII PING
MIO   CN=Dani Alejo,CN=Users,DC=palo,DC=age SIIIIII PING
MIO1    No se ha podido apagar
MIO2    No se ha podido apagar



Ves? No hace ni siquiera tu codigo





En línea

okik


Desconectado Desconectado

Mensajes: 462


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #18 en: 18 Octubre 2016, 23:54 pm »

Lo he probado, pero es que directamente si lo meto donde el IF, no me saca ni siquiera ningún equipo al que hace PING...
Y si lo dejo como estaba, si que me saca todo pero con el CN=....

Código
  1. If responde_al_ping(StrEquipo) then
  2.  For Each obj In ou
  3.        If obj.managedby <> "" Then '<- Si obj.managedby  es distinto de nada
  4.         Dim sN()
  5.         sN = Split(obj.managedby, ",")
  6.         sN = Split(sN(0), "=")
  7.  
  8.            objConsulta_PING2.WriteLine (StrEquipo & TabStop & UCase(sN(1)) _
  9.            & " " & _
  10.            "Hace PING" & vbNewLine)
  11.        End If
  12.    Next
  13. else
  14.    objConsulta_PING2.WriteLine StrEquipo & TabStop & " No se ha podido apagar"
  15. end if
  16. Loop
  17.  
  18.  


que raro jeje.

Código
  1. For Each obj In ou
  2.        If obj.managedby <> vbNullString Then '<- Si Sn es distinto de nada
  3.            Dim sN() As String
  4.            sN = Split(obj.managedby, ",")
  5.            sN = Split(sN(0), "=")
  6.        End If
  7.        Dim Nombre As String
  8.          Nombre = UCase(sN(1))
  9.        If Nombre = "" Then Nombre = "NULO"
  10.  
  11.            objConsulta_PING2.WriteLine (StrEquipo & TabStop & Nombre _
  12.            & " " & _
  13.            "Hace PING" & vbNewLine)
  14.    Next

a ver que te saca esto

con el ejemplo del Split ya tienes como sacar el nombre el porqué luego no se te ve, no entiendo, no se. Ya que como he dicho si antes te salía :

MIO   CN=paloma,CN=Users,DC=palo,DC=age Hace PING
MIO    Hace PING
MIO   CN=Dani ,CN=Users,DC=palo,DC=age Hace PING
MIO1    No se ha podido apagar
MIO2    No se ha podido apagar

solo dos de estas líneas deberían devolver un nombre "paloma" y "Dani", y debería devolver
MIO   PALORMA  Hace PING
MIO   DANI Hace PING

al haber puesto la condición de solo  If obj.managedby <> "" Then solo debería escribir  en el archivo si devuelve algún valor.

solo se me ocurre quitar la codición (quitar la condición if then implica un error con el Split si obj.managedby es nulo);

Código
  1. If responde_al_ping(StrEquipo) Then
  2.    'Fichero Log que almacena los Equipos que se van apagando
  3.      For Each obj In ou
  4.       ' If CStr(obj.managedby) <> "" Then '<- Si obj.managedby  es distinto de nada
  5.         Dim sN()
  6.         sN = Split(obj.managedby, ",")
  7.         sN = Split(sN(0), "=")
  8.  
  9.            objConsulta_PING2.WriteLine (StrEquipo & TabStop & UCase(sN(1)) & " " & "Hace PING" & vbNewLine)
  10.      '  End If
  11.    Next
  12. Else
  13.    objConsulta_PING2.WriteLine StrEquipo & TabStop & " No se ha podido apagar"
  14. End If
  15. Loop

y ya en plan desesperado, es establecer el tipo a STRING porque puede ser que no se pueda comparar el objeto como string. añade Cstr()

Código
  1. If CStr(obj.managedby) <> "" Then

o bien
Dim objManagedby as String
objManagedby = obj.managedby



Código
  1. If responde_al_ping(StrEquipo) Then
  2.    'Fichero Log que almacena los Equipos que se van apagando
  3.      For Each obj In ou
  4.      Dim objManagedby As String
  5.      objManagedby = obj.managedby
  6.        If CStr(objManagedby) <> "" Then '<- Si obj.managedby  es distinto de nada
  7.         Dim sN()
  8.         sN = Split(objManagedby, ",")
  9.         sN = Split(sN(0), "=")
  10.  
  11.            objConsulta_PING2.WriteLine (StrEquipo & TabStop & UCase(sN(1)) & " " & "Hace PING" & vbNewLine)
  12.        End If
  13.    Next
  14. Else
  15.    objConsulta_PING2.WriteLine StrEquipo & TabStop & " No se ha podido apagar"
  16. End If
  17. Loop


Se me olvidaba y también

Código
  1. sN = Split(Cstr(obj.managedby), ",")

Es como si vb no puediera trabajar con obj.managedby  como string. Por eso te comento lo de Cstr() o meterlo en una variable String primero, antes de trabajar con su valor.


« Última modificación: 19 Octubre 2016, 00:25 am por okik » En línea

palophp

Desconectado Desconectado

Mensajes: 23


Ver Perfil
Re: Campo managedby sin CN
« Respuesta #19 en: 19 Octubre 2016, 19:48 pm »

Hola!
He estado mirando otra vez y poniendo los codigos que me pasaste y nada.
En línea

Páginas: 1 [2] 3 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Campo de texto
PHP
Kizar 2 2,362 Último mensaje 17 Octubre 2007, 18:48 pm
por Kizar
Internet en el campo
Redes
martinillou 1 2,517 Último mensaje 2 Junio 2013, 21:05 pm
por HdM
Bloquear campo
Desarrollo Web
datab 8 2,969 Último mensaje 16 Junio 2015, 00:00 am
por [u]nsigned
Campo id en dig
GNU/Linux
0xCAFEBABE 0 1,684 Último mensaje 2 Agosto 2015, 20:25 pm
por 0xCAFEBABE
Estudio de campo
Foro Libre
greygrey2 2 1,511 Último mensaje 4 Septiembre 2019, 22:59 pm
por B€T€B€
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines