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


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


  Mostrar Mensajes
Páginas: 1 ... 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 [805] 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 ... 1254
8041  Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets) en: 13 Noviembre 2013, 06:23 am
Quiero compartir con ustedes este SystemMenu Manager, como su nombre indica, es un ayudante para manejar el SystemMenu, le añadi infinidad de métodos y el uso de eventos para manejar de forma sencilla los items que agreguemos... además lo he documentado todo muy bien, aunque me he dejado bastantes comentarios XML (es bastante tedioso), a pesar de las 1.600 lineas de código, aun le faltaría añadir bastantes métodos más, pero bueno, por el momento así está muy bien, espero que lo disfruten.


Unas imágenes:

   

   




Un ejemplo de uso:

( Nótese que todos los métodos tienen su overload para utilizar una posición de item en lugar de un item predefinido. )

Código
  1. Public Class Form1
  2.  
  3.     Private WithEvents SystemMenu As New SystemMenuManager(Me)
  4.  
  5.     Private Shadows Sub Shown() Handles MyBase.Shown
  6.  
  7.        ' Gets the total amount of menu items.
  8.        ' MsgBox(SystemMenu.GetItemCount())
  9.  
  10.        ' Sets the menu background color.
  11.         SystemMenu.SetMenuBackColor(Color.Teal)
  12.  
  13.        ' Sets the menu style.
  14.        ' SystemMenu.SetMenuStyle(SystemMenuManager.MenuStyle.AUTODISMIS)
  15.  
  16.        ' Sets the state of the Close button and menu item.
  17.        ' SystemMenu.SetItemState(SystemMenuManager.Item.Close, SystemMenuManager.ItemState.Disabled)
  18.  
  19.        ' Sets the Bitmap image of the Move menu item.
  20.        ' SystemMenu.SetItemBitmap(SystemMenuManager.Item.Move, New Bitmap("C:\File.png"))
  21.  
  22.        ' Gets the Bitmap image of the Move menu item.
  23.        ' Dim bmp As Bitmap = SystemMenu.GetItemBitmap(SystemMenuManager.Item.Move)
  24.  
  25.        ' Removes the Bitmap image of the Move menu item.
  26.        ' SystemMenu.RemoveItemBitmap(SystemMenuManager.Item.Move)
  27.  
  28.        ' Adds a separator at the bottom.
  29.         SystemMenu.AddSeparator(SystemMenuManager.DefaultPositions.Last)
  30.  
  31.        ' Adds an item at the bottom.
  32.         SystemMenu.AddItem("Hello World!", 666, SystemMenuManager.DefaultPositions.Last)
  33.  
  34.        ' Gets the ID of an item.
  35.        ' MsgBox(SystemMenu.GetItemState(SystemMenuManager.Item.Move).ToString)
  36.  
  37.        ' Gets the text of an item.
  38.        ' MsgBox(SystemMenu.GetItemText(SystemMenuManager.Item.Move))
  39.  
  40.        ' Gets the state of an item.
  41.        ' MsgBox(SystemMenu.GetItemState(SystemMenuManager.Item.Move).ToString)
  42.  
  43.        ' Sets the text of an item.
  44.        ' SystemMenu.SetItemText(SystemMenuManager.Item.Move, "Muéveme")
  45.  
  46.        ' Checks if a handle is a menu handle.
  47.        ' MsgBox(SystemMenu.IsMenuHandle(IntPtr.Zero))
  48.  
  49.        ' Disable all the menu items.
  50.        ' SystemMenu.DisableAllItems()
  51.  
  52.        ' Re-enable all the menu items.
  53.        ' SystemMenu.EnableAllItems()
  54.  
  55.        ' Remove all the menu items.
  56.        ' SystemMenu.RemoveAllItems()
  57.  
  58.        ' Restore the menu to defaults.
  59.        '  SystemMenu.Restore_Menu()
  60.  
  61.        ' Dispose the SystemMenuManager Object.
  62.        ' SystemMenu.Dispose()
  63.  
  64. End Sub
  65.  
  66.         ' SystemMenu [MenuItemClicked]
  67.        Private Sub SystemMenu_MenuItemClicked(
  68.                ByVal MenuHandle As IntPtr,
  69.                ByVal e As SystemMenuManager.ItemClickedEventArgs
  70.        ) Handles SystemMenu.ItemClicked
  71.  
  72.            Dim sr As New System.Text.StringBuilder
  73.  
  74.            sr.AppendLine(String.Format("Item ID   : {0}", CStr(e.ID)))
  75.            sr.AppendLine(String.Format("Item Text : {0}", e.Text))
  76.            sr.AppendLine(String.Format("Item Type : {0}", e.Type.ToString))
  77.            sr.AppendLine(String.Format("Item State: {0}", e.State.ToString))
  78.  
  79.            MessageBox.Show(sr.ToString, "SystemMenuManager", MessageBoxButtons.OK, MessageBoxIcon.Information)
  80.  
  81.     End Sub
  82.  
  83. End Class


La Class la pueden ver en ESTE enlace de pastebin (no cabe en este post).
8042  Programación / Scripting / Re: como hacer para que el archivo encuentre la letra de la usb automáticamente? en: 13 Noviembre 2013, 03:55 am
creo que es mejor un bat.

Tu script (y tu pregunta) es sobre VBS,
de todas formas en los dos lenguajes es igual de sencillo, aunque en Batch tienes que limpiar el output (para variar).

-> Re: [AYUDA][VBS] Duda sobre la copia y renombrado automatico de archivos
-> Re: bat que detecte automaticamente usb???

En el buscador del foro puedes encontrar más ejemplos mios tanto en VBS como en Batch, además supongo que también habrá ejemplos de otros usuarios, y luego está Google.

Saludos!
8043  Programación / Scripting / Re: como hacer para que el archivo encuentre la letra de la usb automáticamente? en: 12 Noviembre 2013, 21:02 pm
Como hacer para que el archivo encuentre la letra de la usb automáticamente?

Con una solicitud a -> WMI

Saludos

8044  Programación / .NET (C#, VB.NET, ASP) / Re: Librería de Snippets !! (Posteen aquí sus snippets) en: 12 Noviembre 2013, 18:22 pm
Devuelve un Array con las ocurrencias que se encuentren de una Value en un Diccionario

Código
  1. #Region " Match Dictionary Values "
  2.  
  3.    ' [ Match Dictionary Values ]
  4.    '
  5.    ' // By Elektro H@cker
  6.    '
  7.    ' Examples :
  8.    '
  9.    ' MsgBox(Match_Dictionary_Values(New Dictionary(Of Integer, String) From {{1, "Hello World!"}},
  10.    '                                "hello", False, StringComparison.CurrentCultureIgnoreCase).First.Value)
  11.  
  12.    Private Function Match_Dictionary_Values(Of K)(
  13.                     ByVal Dictionary As Dictionary(Of K, String),
  14.                     ByVal Value As String,
  15.                     ByVal MatchWholeWord As Boolean,
  16.                     ByVal IgnoreCase As StringComparison) As KeyValuePair(Of K, String)()
  17.  
  18.        If MatchWholeWord Then
  19.  
  20.            Return (From kp As KeyValuePair(Of K, String) In Dictionary
  21.                    Where String.Compare(kp.Value, Value, IgnoreCase) = 0).ToArray
  22.        Else
  23.  
  24.            Return (From kp As KeyValuePair(Of K, String) In Dictionary
  25.                    Where kp.Value.IndexOf(Value, 0, IgnoreCase) > -1).ToArray
  26.  
  27.        End If
  28.  
  29.    End Function
  30.  
  31. #End Region





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

Código
  1. #Region " Match Dictionary Keys "
  2.  
  3.    ' [ Match Dictionary Keys ]
  4.    '
  5.    ' // By Elektro H@cker
  6.    '
  7.    ' Examples :
  8.    '
  9.    ' MsgBox(Match_Dictionary_Keys(New Dictionary(Of String, Integer) From {{"Hello World!", 1}},
  10.    '                              "hello", False, StringComparison.CurrentCultureIgnoreCase).First.Key)
  11.  
  12.    Private Function Match_Dictionary_Keys(Of V)(
  13.                     ByVal Dictionary As Dictionary(Of String, V),
  14.                     ByVal Key As String,
  15.                     ByVal MatchWholeWord As Boolean,
  16.                     ByVal IgnoreCase As StringComparison) As KeyValuePair(Of String, V)()
  17.  
  18.        If MatchWholeWord Then
  19.  
  20.            Return (From kp As KeyValuePair(Of String, V) In Dictionary
  21.                    Where String.Compare(kp.Key, Key, IgnoreCase) = 0).ToArray
  22.        Else
  23.  
  24.            Return (From kp As KeyValuePair(Of String, V) In Dictionary
  25.                    Where kp.Key.IndexOf(Key, 0, IgnoreCase) > -1).ToArray
  26.  
  27.        End If
  28.  
  29.    End Function
  30.  
  31. #End Region





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

Código
  1. #Region " Find Dictionary Value "
  2.  
  3.    ' [ Find Dictionary Value ]
  4.    '
  5.    ' // By Elektro H@cker
  6.    '
  7.    ' Examples :
  8.    '
  9.    '  MsgBox(Find_Dictionary_Value(
  10.    '         New Dictionary(Of Integer, String) From {{1, "ABC"}},
  11.    '         "abc", True, StringComparison.CurrentCultureIgnoreCase))
  12.  
  13.    Private Function Find_Dictionary_Value(Of K)(
  14.                     ByVal Dictionary As Dictionary(Of K, String),
  15.                     ByVal Value As String,
  16.                     ByVal MatchWholeWord As Boolean,
  17.                     ByVal IgnoreCase As StringComparison) As Boolean
  18.  
  19.        If MatchWholeWord Then
  20.  
  21.            Return (From kp As KeyValuePair(Of K, String) In Dictionary
  22.                    Where String.Compare(kp.Value, Value, IgnoreCase) = 0).Any
  23.        Else
  24.  
  25.            Return (From kp As KeyValuePair(Of K, String) In Dictionary
  26.                    Where kp.Value.IndexOf(Value, 0, IgnoreCase) > -1).Any
  27.  
  28.        End If
  29.  
  30.    End Function
  31.  
  32. #End Region




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

Código
  1. #Region " Find Dictionary Key "
  2.  
  3.    ' [ Find Dictionary Key ]
  4.    '
  5.    ' // By Elektro H@cker
  6.    '
  7.    ' Examples :
  8.    '
  9.    ' MsgBox(Find_Dictionary_Key(
  10.    '        New Dictionary(Of String, Integer) From {{"ABC", 1}},
  11.    '        "abc", True, StringComparison.CurrentCultureIgnoreCase))
  12.  
  13.    Private Function Find_Dictionary_Key(Of V)(
  14.                     ByVal Dictionary As Dictionary(Of String, V),
  15.                     ByVal Key As String,
  16.                     ByVal MatchWholeWord As Boolean,
  17.                     ByVal IgnoreCase As StringComparison) As Boolean
  18.  
  19.        If MatchWholeWord Then
  20.  
  21.            Return (From kp As KeyValuePair(Of String, V) In Dictionary
  22.                    Where String.Compare(kp.Key, Key, IgnoreCase) = 0).Any
  23.        Else
  24.  
  25.            Return (From kp As KeyValuePair(Of String, V) In Dictionary
  26.                    Where kp.Key.IndexOf(Key, 0, IgnoreCase) > -1).Any
  27.  
  28.        End If
  29.  
  30.    End Function
  31.  
  32. #End Region
8045  Programación / .NET (C#, VB.NET, ASP) / Re: Modificar el contenido de una linea de un archivo de texto en c# en: 12 Noviembre 2013, 07:21 am
Podrias 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!
8046  Programación / Scripting / Re: [Batch] Error en codigo. Ayuda! en: 12 Noviembre 2013, 05:08 am
Código:
@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 "%":
Código:
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
  1. @Echo OFF
  2.  
  3. :pregunta
  4. SET /p "hola=Bucle Infinito?:"  
  5.  
  6. IF /I "%hola%" EQU "SI" (goto :pregunta)
  7.  
  8. Pause&Exit

batch.
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!
8047  Programación / Scripting / Re: Copiar archivos de D: a F:, creados desde una fecha determinada hasta hoy .bat en: 11 Noviembre 2013, 07:41 am
Código
  1. Xcopy "D:\*" "F:\" /S /I /E /Y /d:06-01-2013

Saludos
8048  Programación / Scripting / Re: Modificacion de texto en batch en: 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
Código:
%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.

Queria 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
  1. If Wscript.Arguments.Count <> 0 Then
  2.   WScript.StdOut.Write(Jugador(Wscript.Arguments(0)))
  3.   WScript.Quit(0)
  4. Else
  5.   WScript.Quit(1)
  6. End If
  7.  
  8. Function Jugador(str)
  9.   Set regEx = New RegExp
  10.  
  11.   regEx.Pattern = "^\D+"
  12.   name = regEx.Execute(str).Item(0)
  13.  
  14.   regEx.Pattern = "\[\D+\]$"
  15.   pos = Mid(regEx.Execute(str).Item(0), 2, 3)
  16.  
  17.   cosa = "%t%%%c"
  18.  
  19.   Jugador = (name & cosa & "%" & pos  & "%")
  20. End Function

Saludos!
8049  Programación / Scripting / Re: Ayuda para reemplazar palabras en un .txt con batch usando Sed en: 11 Noviembre 2013, 06:01 am
Es suficiente con obtener la representación correcta.

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

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

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

Saludos
8050  Programación / Scripting / Re: como elimino espacio entre letras sin eliminar espacios entre palabras? en: 11 Noviembre 2013, 05:28 am
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".

Eso 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
  1. @Echo OFF
  2.  
  3. 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"
  4. set "str=%str:   ={^_^}%"
  5. set "str=%str: =%"
  6. set "str=%str:{^_^}= %"
  7.  
  8. Echo "%str%"
  9.  
  10. Pause&Exit


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

Código
  1. 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"
  2. arr = split(str,"   ")
  3.  
  4. for each item in arr
  5. output = output & replace(item, " ", "") & " "
  6. next
  7.  
  8. msgbox(output)

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

Saludos
Páginas: 1 ... 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 [805] 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 ... 1254
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines