Radim dvije aplikacije koje će radit na ručnom terminalu (WIN CE) i PC-u.
Testirao sam aplikacije na dva PC-a, i SVE radi savršeno.
Za finalnu verziju, jedna aplikacija treba biti na terminalu...
E sad tu postoje problemi, terminal može slati ali nemože primati, odnosno nakon traženja greške zašto to radi otkrio sam da je port zatvoren pa stoga nitko se nemože spojit na njega i nemože primati...
Moja aplikacija otvara port, ali zbog nekog razloga na WIN Mobile odnosno CE neće ga otvorit. (Nema nikakvog exceptiona) provjerio sam sa www.whatsmyip.org/port ( spojio sam se preko GPRS-a, sa ručnog terminala i upiso port koji je trebo otvorit i rezultat je "Port is closed")
Ovo je taj kod koji otvara port i osluškuje nadolazeće podatke: (aplikacija ne stvara nikakve greške u ovom djelu, ovaj kod se izvrši bez problema, ali port ne otvori)
Code:
Public Sub slusajPort()
Dim ipHostInfo As IPHostEntry = Dns.GetHostEntry(Dns.GetHostName())
Dim localEP As New IPEndPoint(ipHostInfo.AddressList(0), networkPort)
Try
If Not IsNothing(listener) Then
If IsNothing(listener.LocalEndPoint) Then
listener = New Socket(localEP.Address.AddressFamily, SocketType.Stream, ProtocolType.Tcp)
registrirajIpAdresu()
listener.Bind(localEP)
listener.Listen(10)
listener.BeginAccept(New AsyncCallback(AddressOf acceptCallback), listener) '-- Pocni asinkrono primat nadolazece podatke
Else
Exit Sub
End If
Else
listener = New Socket(localEP.Address.AddressFamily, SocketType.Stream, ProtocolType.Tcp)
registrirajIpAdresu()
listener.Bind(localEP)
listener.Listen(10)
listener.BeginAccept(New AsyncCallback(AddressOf acceptCallback), listener) '-- Pocni asinkrono primat nadolazece podatke
End If
Catch ex As Exception
errHandler(ex)
stanje = enumStanja.greska
End Try
End Sub
Public Sub slusajPort()
Dim ipHostInfo As IPHostEntry = Dns.GetHostEntry(Dns.GetHostName())
Dim localEP As New IPEndPoint(ipHostInfo.AddressList(0), networkPort)
Try
If Not IsNothing(listener) Then
If IsNothing(listener.LocalEndPoint) Then
listener = New Socket(localEP.Address.AddressFamily, SocketType.Stream, ProtocolType.Tcp)
registrirajIpAdresu()
listener.Bind(localEP)
listener.Listen(10)
listener.BeginAccept(New AsyncCallback(AddressOf acceptCallback), listener) '-- Pocni asinkrono primat nadolazece podatke
Else
Exit Sub
End If
Else
listener = New Socket(localEP.Address.AddressFamily, SocketType.Stream, ProtocolType.Tcp)
registrirajIpAdresu()
listener.Bind(localEP)
listener.Listen(10)
listener.BeginAccept(New AsyncCallback(AddressOf acceptCallback), listener) '-- Pocni asinkrono primat nadolazece podatke
End If
Catch ex As Exception
errHandler(ex)
stanje = enumStanja.greska
End Try
End Sub
Jel imate kakvu sugestiju?
I dali znate za kakav Port Scanner (program) za Windows Mobile 2003? Da ja to malo bolje provjerim...
Hvala unaprijed!