Hi,
My server side codes are below. When I click the button
first time at client side, data isnt going to server side. When I click
second and third times, data is going normally. Why data isnt going at
first click?
public void Form1_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
thread_dinleyici = new Thread(new ThreadStart(dinle));
thread_dinleyici.Start();
}
public void dinle()
{
tcp_listener = new TcpListener(4444);
tcp_listener.Start();
istemcisoketi = tcp_listener.AcceptSocket();
if (istemcisoketi.Connected)
{
while (true)
{
istemcisoketi = tcp_listener.AcceptSocket();
ag_akimi = new NetworkStream(istemcisoketi);
akim_okuyucu = new StreamReader(ag_akimi);
akim_yazici = new StreamWriter(ag_akimi);
try
{
gelen_veri = akim_okuyucu.ReadLine();
if (gelen_veri.EndsWith("??"))
{
yaz(gelen_veri);
}
}
catch
{
return;
}
}
}
}
public void yaz(string e)
{
sunucu_bag.Open();
OleDbCommand cmd_veriyi_yaz = new OleDbCommand("INSERT INTO notlar
(iletiler,tarih) VALUES ('" + e + "' , '" + DateTime.Now + "')",
sunucu_bag);
cmd_veriyi_yaz.ExecuteNonQuery();
sunucu_bag.Close();
}
Loading
Sam HobbsPosted Jan 11, 2010, 7:53 PM
yokzuPosted Jan 9, 2010, 4:20 PM
server
public void Form1_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
thread_dinleyici = new Thread(new ThreadStart(dinle));
thread_dinleyici.Start();
}
public void dinle()
{
tcp_listener = new TcpListener(IPAddress.Any,4444);
tcp_listener.Start();
istemcisoketi = tcp_listener.AcceptSocket();
karsi_ip = ((IPEndPoint)istemcisoketi.RemoteEndPoint).Address.ToString();
while (istemcisoketi.Connected)
{
ag_akimi = new NetworkStream(istemcisoketi);
akim_okuyucu = new StreamReader(ag_akimi);
akim_yazici = new StreamWriter(ag_akimi);
try
{
gelen_veri = akim_okuyucu.ReadLine();
if (gelen_veri.EndsWith("??"))
{
yaz_gonder(gelen_veri);
istemcisoketi.Close();
}
}
catch
{
return;
}
}
}
********************************************
client
private void Form1_Load(object sender, EventArgs e)
{
CheckForIllegalCrossThreadCalls = false;
thread_dinle = new Thread(new ThreadStart(dinle));
thread_dinle.Start();
}
public void dinle()
{
tcp_listener = new TcpListener(IPAddress.Any, 3333);
tcp_listener.Start();
istemcisoketi = tcp_listener.AcceptSocket();
while(istemcisoketi.Connected)
{
ag_akimi = new NetworkStream(istemcisoketi);
akim_okuyucu = new StreamReader(ag_akimi);
try
{
gelen_veri += akim_okuyucu.ReadLine();
textBox1.Text = gelen_veri;
}
catch
{
return;
}
}
}
private void button1_Click(object sender, EventArgs e)
{
textBox1.Text = "";
TcpClient gonder = new TcpClient("192.168.1.222", 4444);
NetworkStream ag_akimi = gonder.GetStream();
akim_yazici = new StreamWriter(ag_akimi);
akim_yazici.WriteLine(textBox2.Text+"??");
akim_yazici.Flush();
ag_akimi.Close();
akim_yazici.Close();
}