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

#8841
Hola,
Antes de nada, usa títulos descriptivos, no cosas como "ayuda" o "¿como se puede hacer esto?".






Utiliza un FOR para recorrer los archivos que quieras y efectuar cada acción con cada archivo del recorrido.

For %%# in ("C:\*.*") do (Echo %%#)

For %%# in ("C:\*.apk") do (
   java -Xmx1024m -jar baksmali.jar -c core.jar:core-junit.jar:bouncycastle.jar:ext.jar:framework.jar:framework2.jar:android.policy.jar:services.jar:apache-xml.jar:com.lge.core.jar -x "%%~f#"
)


...Lo mismo si necesitas automatizar algo con las carpetas, utiliza un FOR /D.

Saludos
#8842
Scripting / Re: ayuda comando At y msg*
31 Mayo 2013, 10:41 AM
No puedes, el comando AT no ofrece casi funcionalidades,
en su lugar usa el comando SCHTASKS para crear una taréa programada repetitiva de 5 minutos.

Código (dos) [Seleccionar]
schtasks /create /tn "Nombre de tarea" /tr "msg.exe * Texto" /sc minute /mo 5

Saludos.
#8843
Un archivo de texto plano no es un archivo binário, prueba así:

Código (dos) [Seleccionar]
open ftp.soportehosting.com.ar
usuario
password
ascii
put "c:\datos.txt"
quit


...O diréctamente sin definir el tipo de transferencia de datos (ascii/binary).
#8844
Hola El Benjo.

Una pregunta, ¿Tienes intención de compartir el source?.
#8845
Tienes algún tipo de código conflictivo en el form principal o el form secundario, un show/hide debería funcionar sin problemas, pero yo no te recomiendo que uses la propiedad visible ni que uses el método show/hide.

...En lugar de eso usa "Dispose" para liberar todos los recursos utilizados por el form secundario, así se pierde "el código conflictivo" y lo instancias desde cero la próxima vez al usar "Show".

Form2.Show()
Form2.Dispose()
Form2.Show()


Si eso te sigue sin funcionar, chungo... habría que fijarse entonces en el form principal.

Saludos!
#8846
Cancelar el evento OnMove

Código (vbnet) [Seleccionar]
    #Region " Cancel Move Form "
     
       ' Examples:
       ' Me.Moveable = False
       ' Me.Moveable = True
     
       Private Declare Function EnableMenuItem Lib "user32.dll" Alias "EnableMenuItem" (ByVal hMenu As IntPtr, ByVal uIDEnableItem As Int32, ByVal uEnable As Int32) As Int32
     
       Private bMoveable As Boolean = True
     
       Public Overridable Property Moveable() As Boolean
           Get
               Return bMoveable
           End Get
           Set(ByVal Value As Boolean)
               If bMoveable <> Value Then
                   bMoveable = Value
               End If
           End Set
       End Property
     
       Protected Overrides Sub WndProc(ByRef m As Message)
     
           If m.Msg = &H117& Then
               'Handles popup of system menu.
               If m.LParam.ToInt32 \ 65536 <> 0 Then 'divide by 65536 to get hiword.
                   Dim AbleFlags As Int32 = &H0&
                   If Not Moveable Then AbleFlags = &H2& Or &H1&
                   EnableMenuItem(m.WParam, &HF010&, &H0& Or AbleFlags)
               End If
           End If
     
           If Not Moveable Then
               'Cancels any attempt to drag the window by it's caption.
               If m.Msg = &HA1 Then If m.WParam.ToInt32 = &H2 Then Return
               'Redundant but cancels any clicks on the Move system menu item.
               If m.Msg = &H112 Then If (m.WParam.ToInt32 And &HFFF0) = &HF010& Then Return
           End If
     
           'Return control to base message handler.
           MyBase.WndProc(m)
     
       End Sub
     
    #End Region
#8847
.NET (C#, VB.NET, ASP) / Re: Mostrar/Ocultar
31 Mayo 2013, 09:24 AM
Cita de: SyntaxError404 en 30 Mayo 2013, 21:50 PM
Aprovecho de una ves... y como hago para no mover el form.. es decir bloquearlo

que cuando se abra no se pueda mover

La manera sencilla:

Código (vbnet) [Seleccionar]
    Dim Fixed_Location As Point ' = New Point(X, Y) ' Seteamos el valor por defecto.

    Private Sub Form1_Shown(sender As Object, e As EventArgs) Handles MyBase.Shown
        ' ...O seteamos el valor por defecto cuando la ventana se haya creado.
        Fixed_Location = New Point(Me.Location.X, Me.Location.Y)
    End Sub

    Private Sub Form1_Move(sender As Object, e As EventArgs) Handles MyBase.Move
        If Me.Visible Then Me.Location = Fixed_Location
    End Sub


Después de hacerlo me he encontrado con el problema de que el layer de la ventana se sigue dibujando por la pantalla si se mantiene el botón del mouse para intentar arrastrarlo, es una cosa sin importancia, pero como me gusta la eficacia, al final he buscado la manera de hacerlo usando los mensajes de Windows:

(Este código no es mío)
Código (vbnet) [Seleccionar]
#Region " Cancel Move Form "

    ' Examples:
    ' Me.Moveable = False
    ' Me.Moveable = True

    Private Declare Function EnableMenuItem Lib "user32.dll" Alias "EnableMenuItem" (ByVal hMenu As IntPtr, ByVal uIDEnableItem As Int32, ByVal uEnable As Int32) As Int32

    Private bMoveable As Boolean = True

    Public Overridable Property Moveable() As Boolean
        Get
            Return bMoveable
        End Get
        Set(ByVal Value As Boolean)
            If bMoveable <> Value Then
                bMoveable = Value
            End If
        End Set
    End Property

    Protected Overrides Sub WndProc(ByRef m As Message)

        If m.Msg = &H117& Then
            'Handles popup of system menu.
            If m.LParam.ToInt32 \ 65536 <> 0 Then 'divide by 65536 to get hiword.
                Dim AbleFlags As Int32 = &H0&
                If Not Moveable Then AbleFlags = &H2& Or &H1&
                EnableMenuItem(m.WParam, &HF010&, &H0& Or AbleFlags)
            End If
        End If

        If Not Moveable Then
            'Cancels any attempt to drag the window by it's caption.
            If m.Msg = &HA1 Then If m.WParam.ToInt32 = &H2 Then Return
            'Redundant but cancels any clicks on the Move system menu item.
            If m.Msg = &H112 Then If (m.WParam.ToInt32 And &HFFF0) = &HF010& Then Return
        End If

        'Return control to base message handler.
        MyBase.WndProc(m)

    End Sub

#End Region


Saludos...
#8848
Windows / Re: Net.Framework 3.5
30 Mayo 2013, 19:24 PM
Windows 8 trae instalado por defecto Framework 4.5,
esto quiere decir que incluye las librerías de Framework 2.0, 3.0, 3.5, 4.0 y 4.5.

En palabras simples: No necesitas instalar una versión inferior de Framework en Windows 8 para ejecutar utorrent o cualquier otro programa que necesite Framework.

¿Duda resuelta? :P

PD: Lo siento pero tengo que decirlo: No creo que te costase nada intentar instalar dichos programas en Windows 8 para ver que pasaba, en lugar de comerte la cabeza intentando instalar "X" versión de Framework, ya sé que ...bueno, que no es tu culpa, no lo sabías, pero podrías haberlo intentado en un fín de semana entero, digo yo :xD.

EDITO: Según un comentario de Simorg, es posible que en Windows XP esto no séa igual, puede que Windows XP esté mal gestionado en el tema "Framework" y séa más independiente obligando a tener varias versiones instaladas para ejecutar ciertos programas, pero al menos en Windows 7/8 esto es como lo he explicado.

EDITO 2:
Para ser más exactos (Sacado de MSDN):
Teniendo Framework 3.5 puedes ejecutar aplicaciones que requieran fw 2.0, 3.0 y 3.5.
Teniendo Framework 4.0 intalado no puedes ejecutar aplicaciones que requieran 2.0, 3.0 o 3.5.
Teniendo instalado Framework 4.5, puedes ejecutar todas las versiones anteriores.

Framework 3.5 incluye todas las librerías necesarias para ejecutar aplicaciones que requieran 2.0, 3.0 y 2.5, porque Framework 3.5 es un "2.0" en si mismo, por esa razón, yo pienso que es una tremenda tontería tener instalado al mismo tiempo framework 3.5 justo alguna de sus versiones anteriores.
Framework 4.0 es "el siguiente paso" del Framework, usa un nuevo "layering" y por eso no es compatible con las versiones anteriores. (Aunque no me atrevo a desmentir a Microsoft, pero yo sólamente con FW 4.0 instalado y el 3.5 capado en un Windows puedo ejecutar aplicaciones de 2.0 y 3.5)
Framework 4.5 es una actualización de la versión 4.0 (igual que la 3.5 es del 3.0), que incluye todo lo necesario para ejecutar todas las versiones (aunque no sé si la versión 1.0 y 1.1 están incluidas en el 4.5, sincéramente, no voy a buscar información de hace décadas)

EDITO 3:
Y según MSDN puedes instalar .NET Framework 3.5 SP1 (ServicePack 1) en Windows 8, pero no explican porqué, yo imagino que los propósitos estarán más bien relacionados con la programación o para testear compatibilidades etc... más que con la ejecución de aplicaciones que requieran FW 3.5, porque al estar el 4.5, se supone que no se requiere.

Un saludo!
#8849
.NET (C#, VB.NET, ASP) / Re: Mostrar/Ocultar
30 Mayo 2013, 19:17 PM
Usa el evento "MouseEnter" y "MouseLeave", es así de fácil.

Saludos!
#8850
Cita de: arts en 30 Mayo 2013, 16:57 PM¿ Sabéis como se le llama a esto o tenéis algún ejemplo que me pueda servir para usarlos ?
Se denomina "Array de controles", pero si nos ponemos tecnicistas y nos fijamos en el detalle de usar una variable de esa forma, eso se denomina "Variables dinámicas", y bueno, lo del índice ya te lo han explicado.

Cita de: arts en 30 Mayo 2013, 16:57 PM...hastable ...parece que se usan para meter dentro de ellos un grupo de botones o eso creo. ¿ Estoy equivocado ?.
¿Equivocado?, pues eso depende de como se mire, más bien confuso...

...Un hastable es un "contenedor" donde puedes meter objetos de cualquier tipo, pero no es algo que exprésamente existe para meter controles "indexados", de hecho si solo quieres crear un "contenedor" con objetos de un solo tipo (Botónes) entonces te recomiendo que mejor uses un "Dictionary".

El Hashtable es para meter distintos objetos sin que haya problemas (por ejemplo un objeto de un control, y aparte una variable "Integer", y otra de tipo "String"), pero si quisieras añadir un tipo de objeto, aunque puedes usar cualquiera de los dos, lo correcto sería usar la Class "Dictionary".

La diferencia es que en el Dictionary tienes que definir el tipo de objeto y valor, y en el hashtable no, lo puedes meter todo sin preocupaciones, así que si no tienes cuidado con el hashtable ...la puedes liar parda.

Te hago un ejemplo:

Código (vbnet) [Seleccionar]
        Dim MyDictionary As New Dictionary(Of Integer, Boolean)

        MyDictionary.Add(1, True)
        MyDictionary.Add(2, False)
        MyDictionary.Add(3, Nothing)

        ' Set value
        MyDictionary.Item(1) = False

        ' Get Value
        MsgBox(MyDictionary.Item(1))


Código (vbnet) [Seleccionar]
           Dim MyHashtable As New Hashtable
     
           MyHashtable.Add(1, True)
           MyHashtable.Add(Button1, False)
           MyHashtable.Add("1", Nothing)
     
           ' Set value
           MyHashtable.Item(1) = False
           MyHashtable.Item("1") = True
     
           ' Get Value
           MsgBox(MyHashtable.Item(1))
           MsgBox(MyHashtable.Item("1"))


Saludos.