Přesně tak, kreslící tabule jde snadno předělat na "ICQ". Když už jsme u toho, rád bych se zeptal na jednu drobnost, předělávám kod z kreslící tabule (chci to udělat od začátku abych pochopil posloupnosti) a snažím se ho zjednodušit (také proto že se chci pokusit ho předělat na windows mobile) a zasekl jsem se na jedné věci. Pokud příjmu klienta a chci změnit text v labelu,hodnota se sice změní, ale nezobrazí (testoval jsem to pomocí msgboxu kam jsem si načetl hodnotu labelu,byla změněná ale změna se nezobrazila). Přikládám kod:
Module mdlSpojeni
Sub zalozitServer()
'====zadání portu s ošetřením nulové nebo špatně zadané hodnoty====
Try
Port = Int32.Parse(InputBox("Zadejte číslo portu", "Port", Port))
If Port < 1 Or Port > 65535 Then zprava = MsgBox("Číslo portu musí být celé číslo v rozmezí od 1 do 65535", MsgBoxStyle.Information, "Port")
Catch
zprava = MsgBox("Číslo portu musí být celé číslo v rozmezí od 1 do 65535", MsgBoxStyle.Information, "Port")
Exit Sub
End Try
'=====================================
TcpOdposlech = New Net.Sockets.TcpListener(System.Net.IPAddress.Any, Port) 'vytvořím TCP listener který bude poslouchat na zvoleném portu
Try
TcpOdposlech.Start() 'zapnu poslouchání na zvoleném portu
Catch ex As Exception
zprava = MsgBox("Na portu " & Port & " nelze poslouchat (port je zřejmě využíván jinou aplikací).", MsgBoxStyle.Information, "Nelze poslouchat")
Form1.slStav.Text = "Založení serveru se nezdařilo"
Exit Sub
End Try
Form1.slStav.Text = "Server uspěšně založen. Naslouchám na portu " & Port & ". Čekám na připojení klienta..."
TcpOdposlech.BeginAcceptTcpClient(AddressOf klientSePripojil, Nothing) 'pokud se klient připojí je zavolána procedura klientSePripojil
End Sub
Sub klientSePripojil(ByVal klient As System.IAsyncResult)
Try
TcpOdposlech.EndAcceptTcpClient(klient) 'příjmutí klienta
'TcpOdposlech.Stop() 'zastavení poslouchání na zvoleném portu
Catch
MsgBox("Připojení se nezdařilo", MsgBoxStyle.Critical, "Připojení") 'chyba připojení
Form1.slStav.Text = "Připojení se nezdařilo"
Exit Sub
End Try
Form1.slStav.Text = "Spojeno s klientem"
MsgBox(Form1.slStav.Text)
Form1.Refresh()
End Sub
End Module
Pro doplnění kod je v samostatném modulu (příjde mi to přehlednější) a je to začátek (vytvoření spojení) Pokud se klient připojí chci zobrazit v labelu text "Spojeno s klientem" bohužel se nápis nepřekreslí, ale hodnota se do labelu uloží. Můžete mě prosím někdo nakopnout (nebo alespoň dát pohlavek:) ) Abych nalezl chybu?:)
|