本文整理汇总了C#中System.Net.NetworkInformation.PingOptions类的典型用法代码示例。如果您正苦于以下问题:C# PingOptions类的具体用法?C# PingOptions怎么用?C# PingOptions使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
PingOptions类属于System.Net.NetworkInformation命名空间,在下文中一共展示了PingOptions类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。
示例1: InternalSendAsync
private async void InternalSendAsync(IPAddress address, byte[] buffer, int timeout, PingOptions options)
{
AsyncOperation asyncOp = _asyncOp;
SendOrPostCallback callback = _onPingCompletedDelegate;
PingReply pr = null;
Exception pingException = null;
try
{
if (RawSocketPermissions.CanUseRawSockets())
{
pr = await SendIcmpEchoRequestOverRawSocket(address, buffer, timeout, options).ConfigureAwait(false);
}
else
{
pr = await SendWithPingUtility(address, buffer, timeout, options).ConfigureAwait(false);
}
}
catch (Exception e)
{
pingException = e;
}
// At this point, either PR has a real PingReply in it, or pingException has an Exception in it.
var ea = new PingCompletedEventArgs(
pr,
pingException,
false,
asyncOp.UserSuppliedState);
Finish();
asyncOp.PostOperationCompleted(callback, ea);
}
开发者ID:IharBury,项目名称:corefx,代码行数:34,代码来源:Ping.Unix.cs
示例2: ping
public static string[] ping(string host)
{
try
{
Ping pingSender = new Ping();
PingOptions options = new PingOptions();
// Use the default Ttl value which is 128, e
// but change the fragmentation behavior.
options.DontFragment = true;
// Create a buffer of 32 bytes of data to be transmitted.
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 120;
PingReply reply = pingSender.Send(host, timeout, buffer, options);
string[] ping = new string[2];
if (reply.Status == IPStatus.Success)
{
ping[0] = reply.RoundtripTime.ToString();
ping[1] = reply.Options.Ttl.ToString();
}
else { ping[0] = "Error"; }
return ping;
}
catch
{
string[] err = new string[1];
err[0] = "Error\n Possibly you entered a malformed IP or domain.";
return err;
}
}
开发者ID:xandout,项目名称:libnettools,代码行数:35,代码来源:icmp.cs
示例3: PingServer
static void PingServer()
{
using (StreamReader reader = new StreamReader("guiConfig.json"))
{
string serverJson = reader.ReadToEnd();
ServerModel serverModel = JsonConvert.DeserializeObject<ServerModel>(serverJson);
if (serverModel != null && serverModel.configs != null && serverModel.configs.Count > 0)
{
foreach (Server server in serverModel.configs)
{
string strIp = server.server;
Ping ping = new Ping();
PingOptions options = new PingOptions();
options.DontFragment = true;
//测试数据
string data = "test data abcabc";
byte[] buffer = Encoding.ASCII.GetBytes(data);
//设置超时时间
int timeout = 2000;
//调用同步 send 方法发送数据,将返回结果保存至PingReply实例
PingReply reply = ping.Send(strIp, timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
Console.WriteLine(string.Format("{0}---delay: {1}ms", server.remarks, reply.RoundtripTime));
}
}
}
}
}
开发者ID:zcsscfc,项目名称:vic_demo,代码行数:30,代码来源:Program.cs
示例4: checkInternetConnection
public static bool checkInternetConnection()
{
Ping myPing = new Ping();
String host = "google.com";
byte[] buffer = new byte[5];
int timeout = 50;
PingOptions pingOptions = new PingOptions();
try
{
PingReply reply = myPing.Send(host, timeout, buffer, pingOptions);
if (reply.Status == IPStatus.Success)
{
return true;
}
}
catch (PingException exp)
{
Logs.system("Intenet connection not available: " + exp.Message, Logs.TYPE_ERROR, exp);
return false;
}
catch (Exception exp)
{
Logs.system("Internet connection not available: " + exp.Message, Logs.TYPE_ERROR, exp);
return false;
}
return false;
}
开发者ID:sonrac,项目名称:wincc_tags_parser,代码行数:28,代码来源:RequestSend.cs
示例5: launchPing
public void launchPing(string IPAddress, string Hostname)
{
Ping newPing = new Ping();
PingOptions options = new PingOptions();
string data = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 120;
bool shouldLoop = true;
while (shouldLoop == true)
{
PingReply reply = newPing.Send(IPAddress, timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
Console.Title = Hostname;
Console.WriteLine("Reply from Address: {0} with a round trip time of {1}ms", IPAddress, reply.RoundtripTime.ToString());
System.Threading.Thread.Sleep(1000);
}
else
{
Console.WriteLine("Destination host unreachable or is not responding.");
System.Threading.Thread.Sleep(1000);
}
}
}
开发者ID:kaelscion,项目名称:ping-labeler,代码行数:26,代码来源:PingClass.cs
示例6: Main
public static int Main(string[] args)
{
try {
Arguments CommandLine=new Arguments(args);
if (CommandLine["ip"]!=null) {
string pingIP = CommandLine["ip"];
Ping pingSender = new Ping();
PingOptions options = new PingOptions();
options.DontFragment=true;
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 120;
PingReply reply = pingSender.Send(pingIP,timeout,buffer,options);
if (reply.Status==IPStatus.Success) {
WriteToConsole("RoundTrip time: "+reply.RoundtripTime);
} else if (reply.Status==IPStatus.TimedOut) {
return (int) ExitCode.Timeout;
}
} else {
printHelp();
}
return (int) ExitCode.Success;
} catch (Exception) {
return (int) ExitCode.Error;
}
}
开发者ID:nilsonmorais,项目名称:ping-app-net,代码行数:26,代码来源:Program.cs
示例7: buttonPing_Click
private void buttonPing_Click(object sender, EventArgs e)
{
this.listBoxResult.Items.Clear();
//远程服务器IP
string ipString = this.textBoxRemoteIp.Text.ToString().Trim();
//构造Ping实例
Ping pingSender = new Ping();
//Ping选项设置
PingOptions options = new PingOptions();
options.DontFragment = true;
//测试数据
string data = "test data abcabc";
byte[] buffer = Encoding.ASCII.GetBytes(data);
//设置超时时间
int timeout = 120;
//调用同步send方法发送数据,将返回结果保存至PingReply实例
PingReply reply = pingSender.Send(ipString, timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
listBoxResult.Items.Add("答复的主机地址: " + reply.Address.ToString());
listBoxResult.Items.Add("往返时间: " + reply.RoundtripTime);
listBoxResult.Items.Add("生存时间(TTL): " + reply.Options.Ttl);
listBoxResult.Items.Add("是否控制数据包的分段: " + reply.Options.DontFragment);
listBoxResult.Items.Add("缓冲区大小: " + reply.Buffer.Length);
}
else
{
listBoxResult.Items.Add(reply.Status.ToString());
}
}
开发者ID:muupu,项目名称:IpAddress-and-NetworkInterface,代码行数:30,代码来源:MainForm.cs
示例8: isValidDomain
public static void isValidDomain()
{
try
{
Ping pingsender = new Ping();
PingOptions options = new PingOptions(128, true);
string data = "aaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(data);
/*PingReply reply = pingsender.Send(Classes.variablen.domain);
if (reply.Status == IPStatus.Success)
{
Console.ForegroundColor = ConsoleColor.Green;
Console.WriteLine("Domain wurde gefunden!");
Console.ForegroundColor = ConsoleColor.Gray;
}
else if (reply.Status == IPStatus.TimedOut)
{
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("Domain wurde nicht gefunden!");
Console.ForegroundColor = ConsoleColor.Gray;
}*/
}
catch (Exception ex)
{
Classes.logger._elogger(ex);
}
}
开发者ID:MadsDocs,项目名称:ADUser,代码行数:28,代码来源:misc.cs
示例9: Ping
bool Ping(string host)
{
Ping pingSender = new Ping();
PingOptions options = new PingOptions();
// Use the default Ttl value which is 128,
// but change the fragmentation behavior.
options.DontFragment = true;
// Create a buffer of 32 bytes of data to be transmitted.
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 500;
PingReply reply = pingSender.Send(host, timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
Console.WriteLine("Ping successful, getting HTTP response code");
return true;
}
else
{
Console.WriteLine("Ping Failed, server is either down or took too long to respond.");
return false;
}
}
开发者ID:Archived-Repos-Tknoguy,项目名称:Hosty,代码行数:25,代码来源:NetworkHandler.cs
示例10: isAlive
public static bool isAlive(string IP)
{
try
{
Ping pingSender = new Ping();
PingOptions options = new PingOptions();
options.DontFragment = true;
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 10;
PingReply reply = pingSender.Send(IP, timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
return (true);
}
else
{
Settings.SetLog("Failed to ping " + IP);
return (false);
}
}
catch (Exception e)
{
Settings.SetLog("Failed to ping " + IP);
return (false);
}
}
开发者ID:dannyboy997,项目名称:Doorbell-Monitor,代码行数:27,代码来源:TCPClient.cs
示例11: CheckConnectionIpInformations
/// <summary>
/// Permet de tester la bonne connectivité avec une adresse IP.
/// </summary>
/// <param name="IP"></param>
/// <returns></returns>
public static Boolean CheckConnectionIpInformations(string IP)
{
if (!String.IsNullOrEmpty(IP))
{
using (Ping pingSender = new Ping())
{
PingOptions options = new PingOptions();
options.DontFragment = true;
String data = new String('a', 32);
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 20;
try
{
PingReply reply = pingSender.Send(IP, timeout, buffer, options);
if (reply.Status != IPStatus.Success)
{
Notifier.ShowMessage("Adresse IP du serveur MySQL (ou MariaDB) est injoignable.", "Serveur MySQL injoignable", "error", 3);
return false;
}
}
catch
{
Notifier.ShowMessage("Impossible d'établir un test sur l'adresse IP du serveur MySQL (ou MariaDB).", "Adresse IP non testable", "error", 3);
return false;
}
return true;
}
}
else
{
Notifier.ShowMessage("Adresse IP serveur MySQL (ou MariaDB) incorrecte.", "Format de l'adresse IP", "error", 3);
return false;
}
}
开发者ID:0ups,项目名称:dOnuts-InterfaceTablette,代码行数:40,代码来源:GestionConnection.cs
示例12: Ping
public static async Task<PingReply> Ping(string hostNameOrIPAddress, int ttl = 0)
{
var pinger = new Ping();
var options = new PingOptions(ttl, dontFragment: true);
return await pinger.SendTaskAsync(hostNameOrIPAddress, 0x1388, DefaultSendBuffer, options);
}
开发者ID:bhuvak,项目名称:NuGetOperations,代码行数:7,代码来源:NetworkHelpers.cs
示例13: PingHost
public static PingResult PingHost(string host, int timeout = 1000, int pingCount = 4, int waitTime = 100)
{
PingResult pingResult = new PingResult();
IPAddress address = GetIpFromHost(host);
byte[] buffer = new byte[32];
PingOptions pingOptions = new PingOptions(128, true);
using (Ping ping = new Ping())
{
for (int i = 0; i < pingCount; i++)
{
try
{
PingReply pingReply = ping.Send(address, timeout, buffer, pingOptions);
if (pingReply != null)
{
pingResult.PingReplyList.Add(pingReply);
}
}
catch (Exception e)
{
DebugHelper.WriteException(e);
}
if (waitTime > 0 && i + 1 < pingCount)
{
Thread.Sleep(waitTime);
}
}
}
return pingResult;
}
开发者ID:noscripter,项目名称:ShareX,代码行数:34,代码来源:PingHelper.cs
示例14: Ping
public PingReply Ping(string hostOrIp)
{
Ping pingSender = new Ping();
//Ping 选项设置
PingOptions options = new PingOptions();
options.DontFragment = true;
//测试数据
string data = "test data abcabc";
byte[] buffer = Encoding.ASCII.GetBytes(data);
//设置超时时间
int timeout = 1200;
//调用同步 send 方法发送数据,将返回结果保存至PingReply实例
var reply = pingSender.Send(hostOrIp, timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
return reply;
/*lst_PingResult.Items.Add("答复的主机地址:" + reply.Address.ToString());
lst_PingResult.Items.Add("往返时间:" + reply.RoundtripTime);
lst_PingResult.Items.Add("生存时间(TTL):" + reply.Options.Ttl);
lst_PingResult.Items.Add("是否控制数据包的分段:" + reply.Options.DontFragment);
lst_PingResult.Items.Add("缓冲区大小:" + reply.Buffer.Length); */
}
else
throw new ApplicationException("Can't find the arrive at target " + hostOrIp.ToString());
}
开发者ID:luqizheng,项目名称:Qi4Net,代码行数:25,代码来源:PingHost.cs
示例15: ReadAndPing
public void ReadAndPing(string path)
{
File.OpenRead(path);
ConsoleKeyInfo btn;
do // Начала цикла
{
string ip = File.ReadLines(path);
while (true) //читаем в ip строки из файла в path
{
//Console.WriteLine(ip);
Ping pingSender = new Ping();
PingOptions options = new PingOptions();
options.Ttl = 60; //Продолжительность жизни пакета в секундах
int timeout = 120; //Таймаут выводется в ответе reply.RoundtripTime
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"; //Строка длиной 32 байта
byte[] buffer = Encoding.ASCII.GetBytes(data); //Преобразование строки в байты, выводится reply.Buffer.Length
PingReply reply = pingSender.Send(ip, timeout, buffer, options);
Console.WriteLine("Сервер: {0} Время={1} TTL={2}", reply.Address.ToString(), reply.RoundtripTime, reply.Options.Ttl); //Выводим всё на консоль
//ConsoleKeyInfo btn = Console.ReadKey(); //Создаём переменную которая хранит метод Описывающий нажатую клавишу консоли
//if (btn.Key == ConsoleKey.Escape) break;
}
// ConsoleKeyInfo btn = Console.ReadKey(); //Создаём переменную которая хранит метод Описывающий нажатую клавишу консоли
// if (btn.Key == ConsoleKey.Escape) break;
btn = Console.ReadKey(); //Переенная для чтения нажатия клавиши
}
while (btn.Key == ConsoleKey.Escape); //Чтение нажатия клавиши.
}
开发者ID:Kubig,项目名称:Projects,代码行数:34,代码来源:ReadFile.cs
示例16: Ping
public Ping()
{
this.InitializeComponent();
this.DoUpdateForm = this.UpdateForm;
// Create a buffer of 32 bytes of data to be transmitted.
this.buffer = Encoding.ASCII.GetBytes(new String('.', 32));
// Jump though 50 routing nodes tops, and don't fragment the packet
this.packetOptions = new PingOptions(50, true);
this.InitializeGraph();
this.dataGridView1.SuspendLayout();
this.dataGridView1.Columns.Add("1", "Count");
this.dataGridView1.Columns.Add("2", "Status");
this.dataGridView1.Columns.Add("3", "Host name");
this.dataGridView1.Columns.Add("4", "Destination");
this.dataGridView1.Columns.Add("5", "Bytes");
this.dataGridView1.Columns.Add("6", "Time to live");
this.dataGridView1.Columns.Add("7", "Roundtrip time");
this.dataGridView1.Columns.Add("8", "Time");
this.dataGridView1.ResumeLayout(true);
}
开发者ID:RSchwoerer,项目名称:Terminals,代码行数:25,代码来源:Ping.cs
示例17: PingServer
private void PingServer(string server)
{
string result = "Test failed!";
var pingSender = new Ping();
var options = new PingOptions();
options.DontFragment = true;
// Create a buffer of 32 bytes of data to be transmitted.
const string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(data);
const int timeout = 120;
try
{
var reply = pingSender.Send(server, timeout, buffer, options);
if (reply != null && reply.Status == IPStatus.Success)
{
result = String.Format("Address: {0}\n", reply.Address.ToString());
result += String.Format("RoundTrip time: {0}\n", reply.RoundtripTime);
result += String.Format("Buffer size: {0}\n", reply.Buffer.Length);
result += Environment.NewLine;
result += "Test successful!\n";
}
}
catch (Exception) { }
MessageBox.Show(result, "Test Result");
}
开发者ID:mlaitinen,项目名称:qvsvnlogconnector,代码行数:28,代码来源:Login.xaml.cs
示例18: frm_wait_Shown
private void frm_wait_Shown(object sender, EventArgs e)
{
frm_main frm = (frm_main)this.Owner;
address = frm.current_pos;
curr_pos = address;
//Ping POS
Ping png = new Ping();
PingOptions opt = new PingOptions();
opt.DontFragment = true;
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes (data);
int timeout = 800;
PingReply reply = png.Send(address, timeout, buffer, opt);
if (reply.Status == IPStatus.Success)
{
if (Directory.Exists(@"\\" + address + @"\POS\Command\"))
{
address = @"\\" + address + @"\POS\Command\req18";
using (File.Create(address)) { }
}
else
{
MessageBox.Show("Нету связи с POS терминалом или папка Command не доступна", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
this.Close();
}
}
else
{
MessageBox.Show("Нету связи с POS терминалом или папка Command не доступна", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
this.Close();
}
bg_worker.WorkerSupportsCancellation = true;
bg_worker.RunWorkerAsync();
}
开发者ID:sylion,项目名称:SMarketSettings,代码行数:34,代码来源:frm_wait.cs
示例19: TestConnection
public static bool TestConnection(string smtpServerAddress, int port)
{
Ping pingSender = new Ping();
PingOptions options = new PingOptions();
options.DontFragment = true;
PingReply reply = null;
try
{
reply = pingSender.Send(smtpServerAddress, 12000, Encoding.ASCII.GetBytes("SHIT"), options);
}
catch (System.Net.NetworkInformation.PingException)
{
return false;
}
if (reply.Status == IPStatus.Success)
{
IPHostEntry hostEntry = Dns.GetHostEntry(smtpServerAddress);
IPEndPoint endPoint = new IPEndPoint(hostEntry.AddressList[0], port);
using (Socket tcpSocket = new Socket(endPoint.AddressFamily, SocketType.Stream, ProtocolType.Tcp))
{
tcpSocket.Connect(endPoint);
if (!CheckResponse(tcpSocket, 220))
return false;
SendData(tcpSocket, string.Format("HELO {0}\r\n", Dns.GetHostName()));
if (!CheckResponse(tcpSocket, 250))
return false;
return true;
}
}
else
return false;
}
开发者ID:RenzoBit,项目名称:SIGRE,代码行数:32,代码来源:Correo.cs
示例20: TargetFound
public string TargetFound(string target)
{
try
{
Ping pingSender = new Ping();
PingOptions options = new PingOptions();
// Use the default Ttl value which is 128,
// but change the fragmentation behavior.
options.DontFragment = true;
// Create a buffer of 32 bytes of data to be transmitted.
string data = "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
byte[] buffer = Encoding.ASCII.GetBytes(data);
int timeout = 120;
PingReply reply = pingSender.Send(target, timeout, buffer, options);
if (reply.Status == IPStatus.Success)
{
return "targetfound";
}
else { return "targetnotfound"; }
}
catch(Exception e)
{
string CaughtException = e.ToString();
return CaughtException.Substring(0, CaughtException.IndexOf(Environment.NewLine));
}
}
开发者ID:jeremysiebers,项目名称:Siebwalde-Source,代码行数:28,代码来源:PingTarget.cs
注:本文中的System.Net.NetworkInformation.PingOptions类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论