首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

IPHostEntry 的有关问题 内有源码

2012-01-03 
IPHostEntry 的问题 内有源码usingSystemusingSystem.Collections.GenericusingSystem.ComponentModelu

IPHostEntry 的问题 内有源码
using   System;
using   System.Collections.Generic;
using   System.ComponentModel;
using   System.Data;
using   System.Drawing;
using   System.Text;
using   System.Windows.Forms;
using   System.IO;
using   System.Net;
using   System.Text.RegularExpressions;

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

                public   void   button1_Click(object   sender,   EventArgs   e)
                {
                      string   ip   =   this.textBox1.Text;


                      IPHostEntry   hostinfo   =   Dns.GetHostByName(textBox1.Text);
                     

                      //textBox1.Text   =   Convert.ToString(hostinfo);

               

                      bool   blnTest   =   false;
                      bool   _Result   =   true;

                      Regex   regex   =   new   Regex( "^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$ ");
                      blnTest   =   regex.IsMatch(textBox1.Text);
                      if   (blnTest   ==   true)
                      {
                              string[]   strTemp   =   this.textBox1.Text.Split(new   char[]   {   '. '   });   //   textBox1.Text.Split(new   char[]   {   '. '   });
                              for   (int   i   =   0;   i   <   strTemp.Length;   i++)
                              {
                                      if   (Convert.ToInt32(strTemp[i])   >   255)
                                      {               //大于255则提示,不符合IP格式      
                                              MessageBox.Show( "不符合IP格式 ");


                                              _Result   =   false;
                                      }
                              }
                      }
                      else
                      {
                              //输入非数字则提示,不符合IP格式      
                              MessageBox.Show( "不符合IP格式 ");
                              _Result   =   false;
                      }
                      host.Items.Add(textBox1.Text);
                }

                private   void   listBox1_SelectedIndexChanged(object   sender,   EventArgs   e)
                {
             
                     
                }

                private   void   textBox1_TextChanged(object   sender,   EventArgs   e)
                {
                     
                                                                         

                }


                }
        }


那里出错了   出来的总是是显示不出Dns的目标主机的信息   出现不是输入的ip就是system.iphostentry   这句话啊``
如果想要输入目标ip   就得目标电脑的各种信息是不是这样写的啊  
或着反过来输入计算机名   怎么解析得到多个ip

[解决办法]
出错的是这句:
IPHostEntry hostinfo = Dns.GetHostByName(textBox1.Text);

这是微软的一个Bug, 它有时会错误解析你的HostName, 用回下面的方式吧:
IPHostEntry hostinfo = Dns.Resolve(textBox1.Text);

热点排行