- 17.01.2023
- 4
- 1
- 27
- Награды
- 4
- 35
Репутация:
- Автор темы
- #1
InternetCheck:
public static async System.Threading.Tasks.Task<bool> IsNetConnectAsync(string url)
{
try
{
using System.Net.NetworkInformation.Ping pingClient = new();
System.Net.NetworkInformation.PingReply pingReply = await pingClient.SendPingAsync(url, 1000);
System.Console.WriteLine("ok Net");
return pingReply.Status.HasFlag(System.Net.NetworkInformation.IPStatus.Success);
}
catch
{
System.Console.WriteLine("fail Net");
return false;
}
}
public static async Task<bool> CheckInternetConnection(string url)
{
try
{
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.Method = "GET";
using HttpWebResponse response = await request.GetResponseAsync() as HttpWebResponse;
System.Console.WriteLine("ok Net");
return response.StatusCode == HttpStatusCode.OK;
}
catch
{
System.Console.WriteLine("fail Net");
return false;
}
}
public static async Task<bool> CheckInternetConnectionWithSockets()
{
try
{
using TcpClient client = new();
await client.ConnectAsync("8.8.8.8", 53);
System.Console.WriteLine("ok Net");
return true;
}
catch
{
System.Console.WriteLine("fail Net");
return false;
}
}
public static async Task<bool> IsAvailableNetworkActive()
{
if (System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable())
{
NetworkInterface[] interfaces = System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces();
var tasks = interfaces.Select(async face =>
{
if (face.OperationalStatus == OperationalStatus.Up && (face.NetworkInterfaceType != NetworkInterfaceType.Tunnel) && (face.NetworkInterfaceType != NetworkInterfaceType.Loopback))
{
var statistics = face.GetIPv4Statistics();
return await Task.FromResult((statistics.BytesReceived > 0) && (statistics.BytesSent > 0));
}
return await Task.FromResult(false);
});
var results = await Task.WhenAll(tasks);
System.Console.WriteLine("ok Net");
return results.Any(result => result);
}
System.Console.WriteLine("fail Net");
return false;
}
C#:
public static async Task<bool> CheckInternetConnectionWithSockets()
{
try
{
using TcpClient client = new();
await client.ConnectAsync("8.8.8.8", 53);
System.Console.WriteLine("ok Net");
return true;
}
catch
{
System.Console.WriteLine("fail Net");
return false;
}
}
Последние темы в этом разделе:
- TGwDS - объединение телеграм группы и дискорда
- SF-SPN - Оповещения при входе / выходе игрока с сервера.
- Скрипт Телеграм бот для отслеживания статистики игры в Dota 2
- Кража данных из буфера обмена с записью в файл
- Запрет на запуск дубликат программы (Mutex)
- Dotabuff Parser - Парсер статистики пиков Dota 2
- Простой чат-спамер для Twitch
- Скрипт Telegram бот для отправки NSFW в публичные чаты
- Простой спамер для анонимных чатов Telegram
- JCorePanel - Удобная панель для управления большим количеством аккаунтов Steam