SYSTEM.NET.SOCKET命名空间之SOCKET类。。。

简介: 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.
 1 using System;
 2 using System.Collections.Generic;
 3 using System.ComponentModel;
 4 using System.Data;
 5 using System.Drawing;
 6 using System.Linq;
 7 using System.Text;
 8 using System.Threading.Tasks;
 9 using System.Windows.Forms;
10 using System.Net.Sockets;
11 using System.Net;
12 
13 namespace WindowsFormsApplication5
14 {
15     public partial class Form1 : Form
16     {
17         public Form1()
18         {
19             InitializeComponent();
20         }
21         private static Socket ConnectSocket(string server, int port)
22         {
23             Socket socket = null;
24             IPHostEntry iphostentry = null;
25             iphostentry = Dns.GetHostEntry(server);
26             foreach(IPAddress address in iphostentry.AddressList)
27             {
28                 IPEndPoint IPEPoint = new IPEndPoint(address,port);
29                 Socket newSocket = new Socket(IPEPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
30                 newSocket.Connect(IPEPoint);
31                 if(newSocket.Connected)
32                 {
33                     socket = newSocket;
34                     break;
35                 }
36                 else
37                 {
38                     continue;
39                 }
40             }
41             return socket;
42         }
43 
44         private static string SocketSendReveive(string server, int port)
45         {
46             string request = "GET/HTTP/1.1\n Host: " + server + "\n connetc: close\n";
47             Byte[] btSend = Encoding.ASCII.GetBytes(request);
48             Byte[] btReceived = new Byte[256];
49             Socket socket = ConnectSocket(server,port);
50             if(socket == null)
51                 return ("connect failed.");
52             socket.Send(btSend,btSend.Length,0);
53             int intContent = 0;
54             string strContent = server + " 's content :\n";
55             do
56             {
57                 intContent = socket.Receive(btReceived, btReceived.Length, 0);
58                 strContent += Encoding.ASCII.GetString(btReceived,0,intContent);
59             }
60             while(intContent > 0);
61             return strContent;
62         }
63 
64 
65 
66         private void button1_Click(object sender, EventArgs e)
67         {
68             string server = textBox1.Text;
69             int port = Convert.ToInt32(textBox2.Text);
70             string strContent = SocketSendReveive(server, port);
71             MessageBox.Show(strContent);
72 
73         }
74     }
75 }

目录
相关文章
|
1天前
muduo源码剖析之Socket类
封装了一个sockfd相关的设置。比较简单,已经编写注释。
18 0
|
6月前
|
存储 Cloud Native Linux
C++封装了socket通信类
C++封装了socket通信类
|
8月前
|
IDE API 开发工具
拦截|篡改|伪造.NET类库中不限于public的类和方法
本文除了回顾拦截.NET类库中的方法,实现方法参数的篡改、方法返回结果的伪造,再着重介绍.NET类库中非public类及方法如何拦截。
拦截|篡改|伪造.NET类库中不限于public的类和方法
|
7月前
|
安全 网络协议 Java
Thread类的用法 && 线程安全 && 多线程代码案例 && 文件操作和 IO && 网络原理初识 &&UDP socket
Thread类的用法 && 线程安全 && 多线程代码案例 && 文件操作和 IO && 网络原理初识 &&UDP socket
40 0
|
1天前
|
网络协议 Java
Java中如何使用Socket类检测端口是否存在
Java中如何使用Socket类检测端口是否存在
28 4
|
5月前
|
网络协议 Java
【零基础学Java】—Socket类(五十五)
【零基础学Java】—Socket类(五十五)
【零基础学Java】—Socket类(五十五)
|
7月前
|
缓存 移动开发 网络协议
TCP编写服务器,客户端以及遇到的两个问题,Socket,ServerScket 类,flush(),方法。以及多线程解决,及改进的线程池写法,IO多路复用的思想,C10K,C10M的阐述。万字超细
TCP编写服务器,客户端以及遇到的两个问题,Socket,ServerScket 类,flush(),方法。以及多线程解决,及改进的线程池写法,IO多路复用的思想,C10K,C10M的阐述。万字超细
|
11月前
|
C#
.NET Core反射获取带有自定义特性的类,通过依赖注入根据Attribute元数据信息调用对应的方法
.NET Core反射获取带有自定义特性的类,通过依赖注入根据Attribute元数据信息调用对应的方法
126 0
|
11月前
|
编译器
.Net命名空间和程序集
我们都知道using有三个作用:·引入命名空间,创建别名,强制资源清理。这次对using 的“引入命名空间”的作用有了一点小疑问:命名空间和程序集有什么关系?
|
开发框架 JSON 前端开发
【C#】.net core2.1,自定义全局类对API接口和视图页面产生的异常统一处理
在开发一个网站项目时,异常处理和过滤功能是最基础的模块 本篇文章就来讲讲,如何自定义全局异常类来统一处理
209 0

热门文章

最新文章