Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - z3nth10n

#921
A ver te explico lo de las MsgBox que es lo que más me incumbe...

Se supone que por cada reemplazo que haga se tiene que registrar luego en un log, como en el Anti-malware bytes... Pero claro... Si le meto aquí: Case Result.StartsWith("""") AndAlso Result.EndsWith("""") algún Value o un File append, StreamWriter que luego vaya al Log, por cada cual que empiece y termine por comillas, lo va a registrar en el Log como que se ha reemplazado, pero claro, y si no hubiese hecho el reemplazo?

Meto un If Result.Was Replaced Then nananana.TofileAppend etc etc

Como saco yo si lo ha hecho o no... Por eso lo de las MsgBox... A ver si ahora lo pillas... :P
#922
Ala con la tontería me has hecho la app... :P

Código (vbnet,8,9,11,12) [Seleccionar]
           For Each Result As String In Regex.Split(Line, ",|\n")

               Select Case True

                   Case Result.StartsWith("'") AndAlso Result.EndsWith("'")
                       MsgBox(String.Format("'{0}'", Result.Substring(1, Result.Length - 2).Replace("'", "\'")))

                   Case Result.StartsWith("'") AndAlso Not Result.EndsWith("'")
                       MsgBox(Result & "'")

                   Case Result.EndsWith("'") AndAlso Not Result.StartsWith("'")
                       MsgBox("'" & Result)

                   Case Else
                       MsgBox(Result)

               End Select
           Next Result


Ahora ya solo me falta enumerar los errores y varias cosillas más pa meterlas en un Log... :P (Entre las cosillas, hay una que puede que a lo mejor no sepa hacer o puede que si, y es buscar la String original y sustituirla por la nueva dentro de un archivo... Veré lo que hago... :P

Por cierto, se me olvidaba...

¡Muchas gracias! :D




Tengo una mini-duda...

Código (vbnet) [Seleccionar]
MsgBox(String.Format("'{0}'", Result.Substring(1, Result.Length - 2).Replace("'", "\'")))

En caso de que se tuviese que reemplazar algo, como hago para mostrar una MsgBox... ??




Otra duda que me ha asaltado... En caso de que fuese unas "" lo que hubiese que reemplazar, tengo que hacer otro Select Case o dentro del mismo?... Bueno en realidad, no se ni porque no lo hago >:D Estoy modo l33t no te puedo fallar. :P

Ya lo he arreglado con:

Código (vbnet) [Seleccionar]
               Select Case True

                   Case Result.StartsWith("'") AndAlso Result.EndsWith("'")
                       MsgBox(String.Format("'{0}'", Result.Substring(1, Result.Length - 2).Replace("'", "\'")))

                   Case Result.StartsWith("'") AndAlso Not Result.EndsWith("'")
                       MsgBox(Result & "'")

                   Case Result.EndsWith("'") AndAlso Not Result.StartsWith("'")
                       MsgBox("'" & Result)

                       '-----------------------

                   Case Result.StartsWith("""") AndAlso Result.EndsWith("""")
                       MsgBox(String.Format("""{0}""", Result.Substring(1, Result.Length - 2).Replace("""", "\""")))

                   Case Result.StartsWith("""") AndAlso Not Result.EndsWith("""")
                       MsgBox(Result & """")

                   Case Result.EndsWith("""") AndAlso Not Result.StartsWith("""")
                       MsgBox("""" & Result)

                   Case Else
                       MsgBox(Result)

               End Select


Pero la duda de las MsgBox me sigue asaltando... :-\
#923
Foro Libre / Re: -Videos youtube- elhacker.net
2 Agosto 2013, 22:50 PM
Nuevo vídeo curioso:

[youtube=640,360]https://www.youtube.com/watch?v=y39D4529FM4[/youtube]

Un saludo.
#924
Cita de: EleKtro H@cker en  2 Agosto 2013, 22:18 PM
¿Hay que escapar cualquier comilla que esté dentro de la primera y última comilla...

Hay le has dao. :D

Cita de: EleKtro H@cker en  2 Agosto 2013, 22:18 PM...hay que escapar las comillas impares?

Nope.




Claro, lo que tu dices, hay que escapar las comillas que estén dentro de esas subcomillas... Es decir, lo primero que tu has preguntado.. :P

Es decir:

1: 'bla 'bla' bla' -> 'bla \'bla\' bla'

2: 'bla bla' bla' -> 'bla bla\' bla'

3: 'bla 'bla' 'bla' -> 'bla 'bla' \'bla'

Correción para el 3º: 3: 'bla 'bla' 'bla' -> 'bla \'bla\' \'bla'
#925
Syntax, no quiero que te cabrees conmigo, pero:

Timer1.Start()

Que pinta un Timer hay, si hemos acordado todo el mundo del Topic que un Timer es lo peor que puedes hacer, es decir, te relentiza todo y además te come mucha barra, etc etc etc...

Juas... Espero que no te cabrees... :P

Cita de: WHK en  1 Agosto 2013, 19:36 PM
Además no deberias usar un timer, ...

Que sucede si abusas del timer?... si haces un timer muy rapido y la barra no se ha movido en 5 minutos entonces tendras un uso de CPU bastante considerable sin hacer nada, mientra mas rapido sea el timer mas CPU va a utilizar...

Cita de: EleKtro H@cker en  1 Agosto 2013, 19:50 PMUna barra de progreso sin un thread es una chapuza muy grande, ya que ralentiza globálmente el Form, y bastante.

Espero que sepas aceptar criticas... ;)
Pero por igual, gracias por la molestia. :)
#926
Cita de: EleKtro H@cker en  2 Agosto 2013, 20:37 PM
Pues intenta no escribir if's anidados... -> Select Case

Te las he visto usar varias veces... Voy a ver lo que puedo sacar...

Cita de: EleKtro H@cker en  2 Agosto 2013, 20:37 PM
Yo aquí sólo veo dos posts largos y ninguna pregunta... ¿Y si explicas de una manera decente específica lo que intentas hacer con todo esto?...quizás así, y sólo quizás, te podamos ayudar...

Bueno a ver te lo explico... Mi app lo que hace es limpiar las strings, como puedes ver hay una string mal hecha que si la abres con el Sublime text en SQL:

http://pastebin.com/Siy0gK67

Puedes ver lo que pasa... :P

Cita de: EleKtro H@cker en  2 Agosto 2013, 20:37 PM
¿Porque intentas buscar las comillas al principio o al final de cada token?

Para ver si la string está formulada correctamente...

Cita de: EleKtro H@cker en  2 Agosto 2013, 20:37 PM¿Porque intentas contar las comillas que tiene cada token?

Para así poder saber si por igual está bien hecha, es decir, puede que a veces haya una string así:

un token, 'otro token con algo de texto, error' y más texto', otro token

Si en ese token: 'otro token con algo de texto, error' y más texto' hay 3 (numero impar) o más de 3 comillas ya significa que algo no está bien. :P

Cita de: EleKtro H@cker en  2 Agosto 2013, 20:37 PM¿Cual es el fín de tu código?

Ya lo he explicado, y bueno, pues la finalidad es limpiar Strings de un SQL que se haya exportado mal desde otro programa...

Cita de: EleKtro H@cker en  2 Agosto 2013, 20:37 PM¿Que narices intentas hacer en realidad?

Ya te lo he explicado... xD


Cita de: EleKtro H@cker en  2 Agosto 2013, 20:37 PM¿Porque pones "trampas" a posta?

Trampas, quien ha dicho trampas, si me lo explicases a que te refieres, no veo trampas... O si? No se... xD

Cita de: EleKtro H@cker en  2 Agosto 2013, 20:37 PM...y lo más importante, ¿Que maldito resultado es el que esperas obtener?, porque yo no entiendo que resultado quieres obtener, no sé si quieres obtener el string dentro de las comillas o que coj*nes...

Pues por ejemplo uno de los resultados es Escapar la String, por ejemplo en ese tan bonito token 'otro token con algo de texto, error' y más texto', pues:

'otro token con algo de texto, error\' y más texto'

Ale ya te he explicao lo que quiero hacer... Seguro que ahora los de la CIA me cogen la patente... :( xD




Código (vbnet) [Seleccionar]
Select Case Result
                    Case Regex.IsMatch(Result, "^'|'$") = False Or Regex.IsMatch(Result, "^""|""$") = False
                        MsgBox("Error: #1")
                    Case CountCharacter(Result, "'") Mod 2 = True Or CountCharacter(Result, """") Mod 2 = True
                        MsgBox("Error: #2")
                    Case Else
                        MsgBox(Result)
                End Select


Joder, pos si que es verdad que se ahorra texto, pero por igual no me muestra que sean errores... :(
#927
Foro Libre / Re: La Historia Interminable
2 Agosto 2013, 15:57 PM
vamos a rapear? ;D

Oh si yeah, nanana ou yeah xDDD
#928
Nope, lo que pides cuesta money... :-\
Los dominios no son gratis... :rolleyes:
#929
Perdón por hacer Triple post... Si queréis unirlo a mi me da igual.. ;)

A ver... No se si es problema mío o que es lo que es...

Código (vbnet) [Seleccionar]
For Each Result As String In Line.Split(",")
               If Result.Contains("'") Or Result.Contains("""") Then
                   If Not Regex.IsMatch(Result, "^'|'$") Then
                       MsgBox("Error", MsgBoxStyle.Critical, "Error")
                   Else
                       If Not CountCharacter(Result, "'") Or CountCharacter(Result, """") Mod 2 = 0 Then
                           MsgBox(Result)
                       Else
                           MsgBox("Error", MsgBoxStyle.Critical, "Error")
                       End If
                   End If
               Else
                   MsgBox(Result)
               End If
           Next


Archivo txt:

CitarINSERT INTO Videos VALUES(13455,1,9,NULL,'Correcto','dhdhfh,NULL,NULL,NULL,NULL,NULL,NULL,NULL,''dfdfdfd',NULL,NULL,429060,NULL);

Hasta aquí todo correcto, el problema es cuando empieza a Splitear, he comprobado de que no me pone nada tal que " NULL", o cualquier cosa con:

Código (vbnet) [Seleccionar]
MsgBox("""" & Result & """")

Ostias, ahora me estoy dando cuenta de que no hay espacios entre las comas... xD
PD: Así que no es problema del Spliteo... ;D




Pero por igual me sigue fallando la clasificatoria...

A ver... Todos me los muestra y ninguno me sale como Error, y hay 2 errores intencionados...

'dhdhfh y el otro ''dfdfdfd'

Deberían saltar 2 errores pero en vez de eso, saltan las MsgBox como si nada pasase....

Que estoy haciendo mal? Que alguien me lo explique...

PD: CountCharacter(Result, "'") cuenta cuantas ' y " hay... Hay no hay problema hay he probado sin el MsgBox Result y me muestra que en uno hay 1 y en el otro hay 3

Código (vbnet) [Seleccionar]
   Public Function CountCharacter(ByVal value As String, ByVal ch As Char) As Integer
       Dim cnt As Integer = 0
       For Each c As Char In value
           If c = ch Then cnt += 1
       Next
       Return cnt
   End Function





He probado el Operador Mod con:

Código (vbnet) [Seleccionar]
MsgBox(3 Mod 2 = 0)

y nada, si que lo hace bien... Según he leido por ahí, esto lo usan pa saber si es Par o Impar... En caso de que fuese Impar saltaría el error... Pero no salta... Creo que lo clasifica en:

Código (vbnet) [Seleccionar]
For Each Result As String In Line.Split(",")
               If Result.Contains("'") Or Result.Contains("""") Then
                   If Not Regex.IsMatch(Result, "^'|'$") Then
                       '... Todo este contenido se lo salta D:
                   Else
                       MsgBox(Result)
                   End If
               Else
                   MsgBox(Result)
               End If


Que puedo hacer? D:




He probado a poner:

Código (vbnet) [Seleccionar]
MsgBox("Esta cadena contiene "" o ' en su interior...") Y parece que si salta la advertertencia... Es decir que el error esta si o si, al final cuando lo va a detectar... :(

Código (vbnet,4,9) [Seleccionar]
For Each Result As String In Line.Split(",")
               If Regex.IsMatch(Result, "'") Or Regex.IsMatch(Result, """") Then
                   MsgBox("Esta cadena contiene "" o ' en su interior...")
                   If Not Regex.IsMatch(Result, "^'|'$") Then
                       MsgBox("Esta cadena contiene "" o ' en su interior...3")
                       MsgBox("Error", MsgBoxStyle.Critical, "Error")
                   Else
                       MsgBox("Esta cadena contiene "" o ' en su interior...2")
                       If Not CountCharacter(Result, "'") Or CountCharacter(Result, """") Mod 2 = 0 Then
                           MsgBox("Esta cadena contiene "" o ' en su interior...5")
                           MsgBox(Result)
                       Else
                           MsgBox("Esta cadena contiene "" o ' en su interior...6")
                           MsgBox("Error", MsgBoxStyle.Critical, "Error")
                       End If
                   End If
               Else
                   MsgBox(Result)
               End If


Siempre es lo mismo 1, 2, 5... Es decir que el error por descarte para 'dhdhfh está en la línea 4 y el otro ''dfdfdfd' está en la línea 9... :(

Lo estoy haciendo de alguna forma en la que los Ifs se los pasan por el Forro... :(




Si le cambio el orden, a esto:

Código (vbnet) [Seleccionar]
                       If Not CountCharacter(Result, "'") Or CountCharacter(Result, """") Mod 2 = 0Then
                           MsgBox("Esta cadena contiene "" o ' en su interior...5")
                           MsgBox(Result)
                       Else
                           MsgBox("Esta cadena contiene "" o ' en su interior...6")
                           MsgBox("Error", MsgBoxStyle.Critical, "Error")
                       End If


Por esto:

Código (vbnet) [Seleccionar]
                       If Not CountCharacter(Result, "'") Or CountCharacter(Result, """") Mod 2 = 0 Then
                           MsgBox("Esta cadena contiene "" o ' en su interior...6")
                           MsgBox("Error", MsgBoxStyle.Critical, "Error")
                       Else
                           MsgBox("Esta cadena contiene "" o ' en su interior...5")
                           MsgBox(Result)
                       End If


Tira todo el rato para 1,2,6 :( p**a lógica... :(
#930
Chacho, me creo que los únicos Hostings gratuitos son los TK... :P
Siempre puedes probar a encontrar, .com.net, o algo así... :P