Отправьте самописную программу запроса местоположения по IP-адресу C#, которая может использовать базу данных Qingzhen/CoralWry.dat (QQWry.dat/CoralWry.dat). Фактическая ценность программы может быть невелика, и она используется только в качестве базы данных. ссылка на этот тип программы C#.
Некоторые друзья используют конструктор/деструктор объектов динамического класса в C# для открытия/закрытия файлов данных при инициализации/выпуске объекта. Хотя это хорошая идея, время выпуска управляемого программного объекта не является определенным, особенно при использовании. С одной стороны, это приведет к пустой трате ресурсов, поскольку открытый файл не будет освобожден. Что еще более важно, это может вызвать конфликты совместного использования, вызванные параллелизмом потоков. Механизм увеличит сложность программы и снизит независимость и возможность повторного использования модуля.
По этим причинам в программе используются все статические методы. Фактически это программа на C#, переписанная из другой моей программы на C++. Вызов модуля очень простой. Например, используйте файл данных CoralWry.dat. текущий каталог для запроса IP-адреса 121.193.213.6, вы можете:
IpLocation ipl=IpLocation ipl=IpLocator.GetIpLocation("CoralWry.dat","121.193.213.246");
Console.WriteLine("Сегмент IP-адреса: "+IpLocator.IntToIpString(ipl.IpStart)+" - "+IpLocator.IntToIpString(ipl.IpEnd));
Console.WriteLine("IP-адрес: "+ipl.Country+" "+ipl.City);
Возвращаемое значение представляет собой структуру IpLocation, содержащую 4 атрибута: Страна, Город, IpStart/IpEnd Начальное/конечное значение IP-сегмента (тип uint, можно преобразовать в строку IP с точками с помощью функции IntToIpString()).
Расширять