Advertisement
Guest User

Untitled

a guest
Mar 18th, 2019
139
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.76 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.IO;
  7. using System.Linq;
  8. using System.Net.Sockets;
  9. using System.Text;
  10. using System.Threading.Tasks;
  11. using System.Windows.Forms;
  12.  
  13. namespace zuccengerClient {
  14. public partial class Form1 : Form {
  15. public Form1() {
  16. InitializeComponent();
  17. }
  18.  
  19. TcpClient client;
  20. StreamWriter streamWriter;
  21. StreamReader streamReader;
  22. private void btConnect_Click(object sender, EventArgs e) {
  23. string host = tbHostAddress.Text;
  24. int port = System.Convert.ToInt16(nUDPort.Value);
  25. try {
  26. client = new TcpClient(host, port);
  27. lbClient.Items.Add("Nawiązano połączenie z " + host + " na porcie: " + port);
  28. btDisconnect.Enabled = true;
  29. btConnect.Enabled = false;
  30. bwConnect.RunWorkerAsync();
  31. //client.Close();
  32. } catch (Exception ex) {
  33. lbClient.Items.Add("Błąd: Nie udało się nawiązać połączenia!");
  34. MessageBox.Show(ex.ToString());
  35. }
  36. }
  37.  
  38. private void bwConnect_DoWork(object sender, DoWorkEventArgs e) {
  39. var stream = client.GetStream();
  40. streamWriter = new StreamWriter(stream);
  41. streamWriter.Write("hello from fifiszym.ga\n");
  42. streamWriter.Flush();
  43. streamReader = new StreamReader(stream);
  44. while (true) {
  45. try {
  46. var line = streamReader.ReadLine();
  47. if (line != null) {
  48. lbClient.Invoke((MethodInvoker)delegate { lbClient.Items.Add(line); });
  49. if (line.StartsWith("disconnect")) {
  50. btConnect.Invoke((MethodInvoker)delegate { btConnect.Enabled = true; });
  51. btDisconnect.Invoke((MethodInvoker)delegate { btDisconnect.Enabled = false; });
  52. break;
  53. }
  54. }
  55. } catch {
  56. break;
  57. }
  58.  
  59. }
  60. }
  61.  
  62. private void btDisconnect_Click(object sender, EventArgs e) {
  63. streamWriter.Write("disconnect\n");
  64. streamWriter.Close();
  65. client.Close();
  66. btDisconnect.Enabled = false;
  67. btConnect.Enabled = true;
  68. }
  69.  
  70. private void btSendMessage_Click(object sender, EventArgs e) {
  71. if (streamWriter.BaseStream != null) {
  72. streamWriter.Write(tbMessage.Text + "\n");
  73. streamWriter.Flush();
  74. }
  75. }
  76. }
  77. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement