C#获取ip的示例

 

界面

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace TestIP
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
this.richTextBox1.Clear();
string iphostname = System.Net.Dns.GetHostName();
//会警告GetHostByName()已过期,我运行时且只返回了一个IPv4的地址
//System.Net.IPAddress[] ipaddress = System.Net.Dns.GetHostByName(iphostname).AddressList;
// //会返回所有地址,包括IPv4和IPv6
System.Net.IPAddress[] ipaddress = System.Net.Dns.GetHostAddresses(iphostname);
if (ipaddress != null && ipaddress.Length > 0)
{
foreach (System.Net.IPAddress ip in ipaddress)
{
this.richTextBox1.Focus();
SendKeys.Send(ip.ToString());
SendKeys.Send("{ENTER}");
}
}
}

private void button2_Click(object sender, EventArgs e)
{
this.richTextBox1.Clear();
string iphostname = System.Net.Dns.GetHostName();
System.Net.IPHostEntry iphostentry = System.Net.Dns.GetHostEntry(iphostname);
System.Net.IPAddress[] ipaddress = iphostentry.AddressList;
if (ipaddress != null && ipaddress.Length > 0)
{
foreach (System.Net.IPAddress ip in ipaddress)
{
this.richTextBox1.Focus();
SendKeys.Send(ip.ToString());
SendKeys.Send("{ENTER}");
}
}
}

private void button3_Click(object sender, EventArgs e)
{
this.richTextBox1.Clear();
System.Diagnostics.Process process = new System.Diagnostics.Process();
process.StartInfo.FileName = "ipconfig.exe";
process.StartInfo.Arguments = "/all";
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardInput = true;
process.StartInfo.RedirectStandardOutput = true;
process.StartInfo.RedirectStandardError = true;
process.StartInfo.CreateNoWindow = true;
//process.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
//关于:ProcessWindowStyle.Hidden隐藏后如何再显示?
//hwndWin32Host = Win32Native.FindWindow(null, win32Exinfo.windowsName);
//Win32Native.ShowWindow(hwndWin32Host, 1);
//先FindWindow找到窗口后再ShowWindow
process.Start();
string xx = process.StandardOutput.ReadToEnd();
process.WaitForExit();
process.Close();
this.richTextBox1.Text = xx;
}

private void button4_Click(object sender, EventArgs e)
{
this.richTextBox1.Clear();
string urlLink = "http://ip138.com/";
//www.ip138.com
System.Uri url = new Uri(urlLink);
System.Net.WebRequest request = System.Net.WebRequest.Create(url);
//System.Net.WebRequest request1 = System.Net.HttpWebRequest.Create(url);
System.IO.Stream respon = request.GetResponse().GetResponseStream();
System.IO.StreamReader read = new System.IO.StreamReader(respon, Encoding.GetEncoding("gb2312"));
string xxx = read.ReadToEnd();
int cc = xxx.IndexOf("[");
int cc1 = xxx.IndexOf("]");
this.richTextBox1.Text = xxx;
}
}
}

转载于:https://www.cnblogs.com/1175429393wljblog/p/5656357.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/490352.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

硬盘序列号查询软件_【西数硬盘购买指南】干货——西数移动硬从购买到验证体会心得...

玩摄影有两年多了,所以照片和视频越来越多。上个月618活动,有入手了一块移动硬盘。买多是:西部数据My Passport Ultra移动硬盘4T下面从购买到验证全过程来说图片来源网络图片来源网络一、天猫截图上一篇文章:【希捷硬盘购买指南】…

多角度解析特斯拉电动车技术到底领先了多少?|厚势

来源:Astroys厚势按:不管是豪华车、传统车还是新造车势力造的电动车,都以对标特斯拉为荣。是什么让特斯拉成为电动车的图腾?特斯拉的电动车技术到底领先多少?本文 8000 余字,多个角度进行分析解读。在人们的…

Logistic回归的牛顿法及DFP、BFGS拟牛顿法求解

牛顿法 1 # coding:utf-82 import matplotlib.pyplot as plt3 import numpy as np4 5 def dataN(length):#生成数据6 x np.ones(shape (length,3))7 y np.zeros(length)8 for i in np.arange(0,length/100,0.02):9 x[100*i][0]110 x[100*i][1]…

vim复制一个文件的多行到另一个文件

vim打开一个文件后复制多行,退出这个文件之后,打开另一个文件想复制到这个文件,却发现在上一个文件中复制的内容不见了 所以vim复制一个文件的多行到另一个文件的正确做法是要同时打开两个文件 比如要把add.cpp的内容复制到main.cpp 首先v…

memcached客户端_分布式算法真是吊炸天 – memcached - 第287篇

相关历史文章(阅读本文之前,您可能需要先看下之前的系列 )色谈Java序列化:女孩子慎入 - 第280篇烦不烦,别再问我时间复杂度了:这次不色,女孩子进来吧 - 第281篇双向链表,比西天还远&…

2018年中国人工智能100强研究报告

来源:前瞻产业研究院《崛起的超级智能》一书主要阐述当今天人类为人工智能的春天到来而兴奋,为人工智能是否超越人类而恐慌的时候,一个更为庞大、远超人类预期的智能形态正在崛起,种种迹象表明50年来,互联网正在从网状…

事务的隔离性

1、事务隔离级别 事务有四大特性:原子性、一致性、隔离性、持久性。其中事务的隔离比较重要,事务隔离性处理在数据并发量较大的系统显得比较重要。 数据库在事务隔离这块提供了四种事务隔离级别,分别是:读取未提交内容&#xff08…

印度首次挑战登月告败,一步之遥≈多大差距?

来源:三体引力波(the-3body)最坏消息还是来了。今天凌晨,印度探测器首次登月尝试,只差一步之遥,距离月表不到2100米,月船2号着陆器与班加罗尔控制中心失去联系,信号中断,…

word交叉引用插入文献后更新域之后编号未更新

这篇文章不教怎么设置交叉引用,这篇文章说的是设好了交叉引用,在某一条文献后面添加了一个文献后,选中全文,右键更新域,编号项仍然没有改变!! 这是因为刚刚在插入文献时是在上一条文献的编号项…

python项目画幅好画_python基础教程总结15——2 画幅好画

标签:要求:从Internet上下载数据文件; 分析数据文件并提取感兴趣的部分工具:图形生成包(ReportLab,PYX等)数据:太阳黑子和射电辐射流量(http://services.swpc.noaa.gov/text/predicted-sunspot-radio-flux…

耐能团队论文登上《自然·电子学》:集成忆阻器与CMOS以实现更好的AI

《自然电子学》杂志封面(资料图,来源:《自然》官网)来源:Kneron耐能近日,《自然》杂志子刊《自然电子学》(Nature Electronics)发表论文《集成忆阻器与CMOS以实现更好的AI》&#xf…

出发

在五点闹铃响的那一刻,小美醒了,叫醒还在熟睡的我,看着窗外已经透亮。快速洗漱,跟小美拥抱,妈妈也起床,“高兴去,平安归”带着每次出门时妈妈的祝福走出家门,坐上昨晚小美预订的滴滴…

word交叉引用多条文献

有时候需要引用多条连续的文献,例如[1][2][3]需要把它变为[1-3],更新域后不受影响仍然正确。 4、选中这两个代码域,右键->切换域代码,再选中这两个代码域,右键->更新域,引用号码变为[13],…

pppcloud云主机内LINUX用户安全管理2

◆超级用户权限与授权 ●建立多个超级用户 不少新系统管理员认为root用户是唯一的超级用户,其实root只是系统默认的超级用户的名称,root并非因为它叫root而成为超级用户的。随便打开一个/etc/passwd文件的例子,你就会发现如下几行&#xff1a…

一份完全解读:是什么使神经网络变成图神经网络?

图1:来自(Bruna等人,ICLR,2014)的图,描绘了3D领域内的MNIST图像。虽然卷积网络很难对球面数据进行分类,但是图网络可以很自然地处理它。可以把它当做是一个处理工具,但在实际应用程序中会出现许多类似的任务…

linux的exec函数

在用fork函数创建子进程后,子进程往往要调用一个exec函数以执行另一个程序 当进程调用一种exec函数时,该进程完全由新程序代换,而新程序则从其main函数开始执行。因为调用exec并不创建新进程,所以前后的进程I D并未改变。exec只是…

python中get函数作用_python get函数有什么作用?示例解析

这篇文章之中我们来了解一下关于python字典之中的pythonget函数的相关知识,get函数是什么意思,他有什么作用都将会在接下来的文章之中得到解答。描述Python 字典(Dictionary) get() 函数返回指定键的值,如果值不在字典中返回默认值。语法get(…

C++vector的reserve和resize比原来的容量小

vector的resize()函数的作用是改变vector元素个数 reverse()函数的作用是改变容量 如果v.reserve(n)函数的n的大小比vector原来的容量小。容量没有变化。size也没有变: 如果v.resize(n)函数的n比vector原来的size小,结果是size…

sql server 游标的使用方法

数据库游标:是面向行来取数据集合的标识,可以很好的弥补面向表或数据集合阅读数据的不便之处;游标的内存消耗也很大,所以使用有标签还要衡量是否值得使用游标标识。 游标举例: declare test_cursor cursor --定义游标…

中国芯片将靠此超车!RISC-V架构神在哪全解构【附下载】

来源: 智东西RISC-V(发音为“risk-five”)是一个基于精简指令集(RISC)原则的开源指令集架构(ISA),简易解释为开源软件运动相对应的一种“开源硬件”。该项目2010年始于加州大学伯克利…