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 - Eleкtro

#7731
Cita de: binario010101 en 12 Noviembre 2013, 20:29 PMComo hacer para que el archivo encuentre la letra de la usb automáticamente?

Con una solicitud a -> WMI

Saludos

#7732
Devuelve un Array con las ocurrencias que se encuentren de una Value en un Diccionario

Código (vbnet) [Seleccionar]
#Region " Match Dictionary Values "

    ' [ Match Dictionary Values ]
    '
    ' // By Elektro H@cker
    '
    ' Examples :
    '
    ' MsgBox(Match_Dictionary_Values(New Dictionary(Of Integer, String) From {{1, "Hello World!"}},
    '                                "hello", False, StringComparison.CurrentCultureIgnoreCase).First.Value)

    Private Function Match_Dictionary_Values(Of K)(
                     ByVal Dictionary As Dictionary(Of K, String),
                     ByVal Value As String,
                     ByVal MatchWholeWord As Boolean,
                     ByVal IgnoreCase As StringComparison) As KeyValuePair(Of K, String)()

        If MatchWholeWord Then

            Return (From kp As KeyValuePair(Of K, String) In Dictionary
                    Where String.Compare(kp.Value, Value, IgnoreCase) = 0).ToArray
        Else

            Return (From kp As KeyValuePair(Of K, String) In Dictionary
                    Where kp.Value.IndexOf(Value, 0, IgnoreCase) > -1).ToArray

        End If

    End Function

#End Region







Devuelve un Array con las ocurrencias que se encuentren de una Key en un Diccionario

Código (vbnet) [Seleccionar]
#Region " Match Dictionary Keys "

    ' [ Match Dictionary Keys ]
    '
    ' // By Elektro H@cker
    '
    ' Examples :
    '
    ' MsgBox(Match_Dictionary_Keys(New Dictionary(Of String, Integer) From {{"Hello World!", 1}},
    '                              "hello", False, StringComparison.CurrentCultureIgnoreCase).First.Key)

    Private Function Match_Dictionary_Keys(Of V)(
                     ByVal Dictionary As Dictionary(Of String, V),
                     ByVal Key As String,
                     ByVal MatchWholeWord As Boolean,
                     ByVal IgnoreCase As StringComparison) As KeyValuePair(Of String, V)()

        If MatchWholeWord Then

            Return (From kp As KeyValuePair(Of String, V) In Dictionary
                    Where String.Compare(kp.Key, Key, IgnoreCase) = 0).ToArray
        Else

            Return (From kp As KeyValuePair(Of String, V) In Dictionary
                    Where kp.Key.IndexOf(Key, 0, IgnoreCase) > -1).ToArray

        End If

    End Function

#End Region







Devuelve True si se encuentra alguna ocurrencia de un Value en un Diccionario.

Código (vbnet) [Seleccionar]
#Region " Find Dictionary Value "

    ' [ Find Dictionary Value ]
    '
    ' // By Elektro H@cker
    '
    ' Examples :
    '
    '  MsgBox(Find_Dictionary_Value(
    '         New Dictionary(Of Integer, String) From {{1, "ABC"}},
    '         "abc", True, StringComparison.CurrentCultureIgnoreCase))

    Private Function Find_Dictionary_Value(Of K)(
                     ByVal Dictionary As Dictionary(Of K, String),
                     ByVal Value As String,
                     ByVal MatchWholeWord As Boolean,
                     ByVal IgnoreCase As StringComparison) As Boolean
                     
        If MatchWholeWord Then

            Return (From kp As KeyValuePair(Of K, String) In Dictionary
                    Where String.Compare(kp.Value, Value, IgnoreCase) = 0).Any
        Else

            Return (From kp As KeyValuePair(Of K, String) In Dictionary
                    Where kp.Value.IndexOf(Value, 0, IgnoreCase) > -1).Any

        End If

    End Function

#End Region






Devuelve True si se encuentra alguna ocurrencia de una Key en un Diccionario.

Código (vbnet) [Seleccionar]
#Region " Find Dictionary Key "

    ' [ Find Dictionary Key ]
    '
    ' // By Elektro H@cker
    '
    ' Examples :
    '
    ' MsgBox(Find_Dictionary_Key(
    '        New Dictionary(Of String, Integer) From {{"ABC", 1}},
    '        "abc", True, StringComparison.CurrentCultureIgnoreCase))

    Private Function Find_Dictionary_Key(Of V)(
                     ByVal Dictionary As Dictionary(Of String, V),
                     ByVal Key As String,
                     ByVal MatchWholeWord As Boolean,
                     ByVal IgnoreCase As StringComparison) As Boolean

        If MatchWholeWord Then

            Return (From kp As KeyValuePair(Of String, V) In Dictionary
                    Where String.Compare(kp.Key, Key, IgnoreCase) = 0).Any
        Else

            Return (From kp As KeyValuePair(Of String, V) In Dictionary
                    Where kp.Key.IndexOf(Key, 0, IgnoreCase) > -1).Any

        End If

    End Function

#End Region
#7733
Cita de: monal en 12 Noviembre 2013, 05:38 AMPodrias mandarme el codigo que utilzaste?:D

¿Podrías leer las normas?.

Has revivido un tema de hace 3 años para formular una pregunta irrelevante a alguien que ni siquiera va a leer tu mensaje.

CitarÚltima vez activo:    12 Septiembre 2010, 00:57

Fíjense un poco mejor en los detalles importantes.

PD: La manipulación de texto es algo muy sencillo, en Google y en el buscador del foro encontrarás cientos de ejemplos, y aquí encontrarás algún que otro código de ayuda el cual puedes convertir online a C#: http://foro.elhacker.net/net/libreria_de_snippets_posteen_aqui_sus_snippets-t378770.0.html

Si sigues teniendo dudas, formula una pregunta en un nuevo post.

Cierro el tema,
saludos!
#7734
Scripting / Re: [Batch] Error en codigo. Ayuda!
12 Noviembre 2013, 05:08 AM
Cita de: Fran2013 en 12 Noviembre 2013, 03:19 AM@echo off
:pregunta
set /p %hola% = Bucle Infinito? :  
if %hola%==SI goto pregunta

El fallo principal es que al setear debes escribir el nombre de la variable sin el operador "%":
set /p hola

Aparte de eso no debes dejar ningún espacio antes ni después del operador "=", y la escritura del código en general sigue los malos hábitos de los que empiezan a programar en Batch, te suegiero que te acostumbres a escribir de la manera que te muestro a continuación porque de lo contrario te van a salir muchos errores a menudo:

Código (dos) [Seleccionar]
@Echo OFF

:pregunta
SET /p "hola=Bucle Infinito?:"  

IF /I "%hola%" EQU "SI" (goto :pregunta)

Pause&Exit


Cita de: Fran2013 en 12 Noviembre 2013, 03:19 AMbatch.
me pareció un buen lenguaje de scripting
por las incontables maneras de interactuar con el  propio sistema operativo.

Solo puedo decirte que a la larga te darás cuenta de que es todo lo contrario y que estás perdiendo el tiempo (sobretodo viniendo de Python),
Batch es práctico para tareas simples, muy simples, y sobre lo de las incontables maneras de... se quedan en un par de comandos internos útiles, el resto son aplicaciones (llamados comandos externos) que no forman parte del lenguaje y los puedes llamar desde cualquier otro lenguaje,
en resumen cualquier lenguaje es capaz de hacer lo mejor que se pueda llegar a programar en Batch, en la mitad de tiempo, y con las incontables mejoras que esto supone, sobretodo en velocidad de ejecución, Batch es MUY lento.

Saludos!
#7735
Código (dos) [Seleccionar]
Xcopy "D:\*" "F:\" /S /I /E /Y /d:06-01-2013

Saludos
#7736
Scripting / Re: Modificacion de texto en batch
11 Noviembre 2013, 06:59 AM
Hola.

¿Tenemos que adivinar cual es la lógica usada para que en el resultado aparezcan estos caracteres?:
Citar%t%0%%c
%t%%%c
...Yo no le veo relación alguna con los números.

De todas formas este es el tipo de operación que sería tan sencillo de realizar en cualquier otro lenguaje, pero que acabaría siendo demasiado engorroso en Batch y consumiría más dedicación de lo que realmente debería necesitar la escritura de dicha rutina.

Cita de: santi810 en  9 Noviembre 2013, 16:30 PMQueria ayuda para que al ejecutar un comando quedara asi:

Te muestro la manera de hacerlo usando VBScript, la salida la puedes capturar con un For /F en Batch.

Así queda el resultado, como en tu ejemplo, no se si tendrá mucha lógica o no, pero puedes adaptar lo necesario del código, desde luego creo que con esto tu duda quedará resuelta,
El resultado lo mando al output estándar, entonces puedes utilizar un For /F desde Batch para obtener dicho output, el string formateado del jugador, y utilizarlo cmoo quieras utilizarlo.



Código (vb) [Seleccionar]
If Wscript.Arguments.Count <> 0 Then
   WScript.StdOut.Write(Jugador(Wscript.Arguments(0)))
   WScript.Quit(0)
Else
   WScript.Quit(1)
End If

Function Jugador(str)
   Set regEx = New RegExp
   
   regEx.Pattern = "^\D+"
   name = regEx.Execute(str).Item(0)

   regEx.Pattern = "\[\D+\]$"
   pos = Mid(regEx.Execute(str).Item(0), 2, 3)

   cosa = "%t%%%c"

   Jugador = (name & cosa & "%" & pos  & "%")
End Function


Saludos!
#7737
Es suficiente con obtener la representación correcta.

Para la é de Miércoles:
sed.exe -e "s/Miércoles/Dimecres/" "File.txt" > "Output.txt"

Para la á de Sábado:
sed.exe -e "s/Sábado/Disabte/" "File.txt" > "Output.txt"

Para futuras necesidades:
iconv -f latin1 -t utf-8 "File.txt" | sed "s/Sábado/Disabte/" | iconv -f utf-8 -t latin1
-> iconv

Saludos
#7738
Por curiosidad, ¿Eso lo has sacado de un archivo de texto con codificación Unicode?, porque en ese caso debería ser suficiente con convertir el archivo a UTF o ANSI (1252) para eliminar los whitespaces "duplicados".

Cita de: Almapa en  4 Noviembre 2013, 17:43 PMEso si, el texto no debe contener en este caso el caracter "-" para su buen funcionamiento, de lo contrario puedes cambiarlo a cualquier otro.

Eso tiene un facil apaño,
Puedes usar una serie de caracteres, así la posibilidad de conflicto con los caracteres del string disminuye al 99,9%, yo he usado una carita:

Código (dos) [Seleccionar]
@Echo OFF

set "str=C l i c k   o n   t h e   N e w   P r o f i l e   b u t t o n   t o   o p e n   t h e   P r o f i l e"
set "str=%str:   ={^_^}%"
set "str=%str: =%"
set "str=%str:{^_^}= %"

Echo "%str%"

Pause&Exit



Una solución en cualquier otro lenguaje (ej: vbs) sería hacerle un Split a la cadena, y concatenar:

Código (vb) [Seleccionar]
str = "C l i c k   o n   t h e   N e w   P r o f i l e   b u t t o n   t o   o p e n   t h e   P r o f i l e"
arr = split(str,"   ")

for each item in arr
output = output & replace(item, " ", "") & " "
next

msgbox(output)


O diréctamente usar un regex para reemplazar los 3 espacios por 1, y el resto de espacios por nada.

Saludos
#7739
Cita de: Almapa en 10 Noviembre 2013, 19:17 PMDe esto ya había una sección abierta, has preguntado si sigue activa o si se tiene intención de seguir? La verdad es que yo también estoy interesado, pues es una buena forma de practicar.

Cita de: Fran2013El ultimo registro de temas como este es de junio del 2012 ...  ;D

Aquél post está con chincheta, por algo será, no importa que el último reto sea del año pasado, que la gente no haya querido aportar no significa que la zona de retos haya dejado de existir.

Es más, mientras haya gente que se dedique a crear nuevos recopilatorios de retos y/o rankings por su cuenta (como este), jamás se podrá llevar a cabo una estructura ni una zona de retos con suficiente sensatez, pues este post con el paso dle tiempo habría quedado en el olvido como todos los demás, por ese motivo se creó un post con chincheta, para permanecer y no crear decenas de posts sobre la misma temática.

Siento decirtelo, @Fran2013, pero deberías haber preguntado como ya te han dicho, el foro es libre, pero preguntar es lo mínimo que podrías haber hecho símplemente por respeto hacia las iniciativas de las demás personas.

He estado ausente unos dias y me encuentro con esto.

Siento ser un aguafiestas chavales, quizás alguno me vaya a ver como una especie de monstruo por esto pero voy a tener que imponer una nueva norma en las normas ya impuestas del subforo de Scripting para que no se publiquen más rankings de retos existiendo ya una sección totálmente dedicada por y para los retos. (La próxima vez fijarse un poco más los temas con chinchetas, o preguntar)

Imagino que muchos os agradecerán la iniciativa y la participación, sobretodo yo, de verdad, gracias, pero esta no ha sido la mejor manera @Fran2013.

Aquí pueden leer las nuevas normas del foro de Scripting:
http://foro.elhacker.net/scripting/normas_del_tablon_leer_antes_de_postear-t201567.0.html;msg957615#msg957615








Para todos los interesados, la zona de retos sigue abierta para todos aquellos que quieran participar y contribuir, solo tienen que hacerlo, considero que la estructura del juego es muy sencilla.

Espero que no dejeis de contribuir con vuestros aportes y vuestros retos, podeis crear posts con retos, porsupuesto, pero sólamente un post por reto y yo me encargaré de añadirlo a los retos de Scripting, ...no plagieis una recopilación de retos con un ranking, eso ya existe y ya forma parte del foro.

Y porfavor, al publicar un reto en solitario, hacerlo siguiendo las reglas de participación del siguiente hilo, que para eso fue creado por un servidor:

http://foro.elhacker.net/scripting/zona_de_retos_scripting-t360782.0.html



Cierro el tema,
cualquier cosa me la pueden comentar por mensaje privado.

Saludos!
#7740
Scripting / Re: Pequeños Proyectos Python...
11 Noviembre 2013, 03:12 AM
Cita de: Fran2013 en 10 Noviembre 2013, 19:36 PMCreo este tema para que se propongan pequeños proyectos en python...

¿Que hay que no se haya inventado ya? :P

Algún WebSpider para alguna página en concreto no estaría nada mal... siempre me han gustado, este tipo de proyectos suelen estar infravalorados (o al menos eso pienso, depende que tipo de página sea quizás solo lo usen 4 gatos, si haces uno relacionado con Facebook quien sabe...) pero la verdad es que son muy útiles y ahorran mucho tiempo, aquí tienes un muy buen ejemplo en Python con GUI por el compañero @0x5d (aunque no es un código muy extenso, según lo que intuyo por la sintaxis y los keywords solo hace una única petición a la url y parsea el source de la respuesta):

http://foro.elhacker.net/scripting/codigopyqt4_iconfinder_jaavier_0x5d-t401819.0.html

PD: Python no es lo mio, que tengas suerte!