
Se traba mi computadora al ejecutar una aplicación VB
Publicado por Hugo (1 intervención) el 15/10/2014 17:32:08
Hola, hice una aplicacion que leyera lo que entra por el puerto serial y envia los datos en una URL, al ejecutar el programa se traba mi computadora y tengo que darle el botonazo. Tenia un error que decía "Se tuvo acceso al control '' desde un subproceso distinto a aquel en que lo creó" pero le puse CheckForIllegalCrossThreadCalls = False, no se si esto ocasione que se trabe.
Les pongo el codigo para ver si me pueden apoyar, el error me lo manda en la parque que pongo en negritas.
Saludos y gracias
Les pongo el codigo para ver si me pueden apoyar, el error me lo manda en la parque que pongo en negritas.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
buscapuerto()
CheckForIllegalCrossThreadCalls = False
End Sub
Private Sub buscapuerto()
Try
cmbport.Items.Clear()
For Each puerto As String In My.Computer.Ports.SerialPortNames
cmbport.Items.Add(puerto)
Next
If cmbport.Items.Count > 0 Then
cmbport.SelectedIndex = 0
Else
MsgBox("No hay puertos disponibles en tu sistema")
End If
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private Sub btnconectar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnconectar.Click
Try
With sppuerto
.BaudRate = 9600
.DataBits = 8
.Parity = IO.Ports.Parity.None
.StopBits = 1
.PortName = cmbport.Text
.Open()
If .IsOpen Then
lblestado.Text = "Conectado"
Else
MsgBox("Conexion fallida", MsgBoxStyle.Critical)
End If
End With
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Private Sub btndesconectar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btndesconectar.Click
sppuerto.Close()
lblestado.Text = "Desconecato"
End Sub
Private Sub sppuerto_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles sppuerto.DataReceived
Dim buffer As String
buffer = sppuerto.ReadLine
txtRecibe.Text = "Recibido>> " & buffer 'error aqui
End Sub
Private Sub btnenviar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnenviar.Click
Dim buffer As String
Dim protocolo As String
Dim servidor As String
Dim puerto As String
Dim peso As String
Dim transaccion As String
Dim urlMII As String
Dim signo As String
Dim arregloMensaje() As String
buffer = sppuerto.ReadLine
signo = buffer.Chars(6)
If signo = "+" Then
arregloMensaje = buffer.Split("+")
Else
arregloMensaje = buffer.Split("-")
End If
peso = arregloMensaje(1).Remove(7)
protocolo = "http://"
servidor = "<nombre del servidor>"
puerto = "<numero de puerto>"
transaccion = "/XMII/Runner?Transaction=GPorres/Bascula1&Peso_MII="
urlMII = protocolo & servidor & ":" & puerto & transaccion & peso & credenciales
'WebBrowser1.Navigate(urlMII)
End Sub
End Class
Saludos y gracias
Valora esta pregunta


0