Hola... con un poco más de tiempo...
pense q seria como el msgbox... pero se ve q no xD jejej alguna idea de como hacerlo? aca no puedo usar el On Error Goto xq lo use para el caso de q en el puerto pongan una palabra...
Al parecer, no!
Puerto = InputBox("Ingrese Puerto para Escuchar:", "Share Escuchar", "200")
If Puerto = vbCancel Then' <--- ???
Exit Sub
End If
Cuando se presiona el botón Cancelar o se cierra el imputBox usando la X, el programa devuelve una cadena de caracteres igual a 0, por lo tanto --> Puerto = "" y la comparación deberia ser:
If Puerto <> "" Then
'Hago algo...
End If
'ó asi:
If Puerto = "" Then
'Hago algo...
End If
Usando tu code, yo lo haria asi:
Option Explicit
'----------------------------------- _
Controlando entradas de un ImputBox _
------------------------------------
Private Sub Form_Load()
Dim Puerto As String 'Almacenará el puerto de escucha
Repetir: 'Repetir hasta que se presione cancelar, se cierre la ventanita "X" ó hasta _
que el valor devuelto sea valido
'Almacenamos el valor
Puerto = InputBox("Ingrese Puerto para Escuchar:", "Share Escuchar", "200")
'Si "Puerto" tiene algun valor, es porque NO se ha cancelado
If Puerto <> "" Then
'En ese caso, verificamos que sea un valor de puerto válido, sino repetimos
If IsNumeric(Puerto) Then
'Tu code
WS.Close 'Cerrando el socket
WC.Close
WC.LocalPort = Puerto 'Asignando puerto
WC.Listen 'Escuchando...
Command1.Enabled = False
Form1.Caption = "Share - Esperando Conexión"
Color (3)
Else
GoTo Repetir
End If
Else
'Si cancelamos, nos vamos... :-[
MsgBox "¡Se cancelo!...", vbInformation, "Share Escuchar"
Exit Sub
End If
'Mostramos el número de puerto...
MsgBox "El número de puerto introducido es el '" & Puerto & "'"
End Sub
Saludos! espero que te sea de utilidad...
