Delphi获取本机所有的IP
安装Indy
uses IdStackWindows;
var
Isw:TIdStackWindows;
slist:TStringList;
begin
Isw:=TIdStackWindows.Create;
slist:=TStringList.Create;
try
Isw.AddLocalAddressesToList(slist);//这个方法可以取出IP
finally
FreeAndNil(Isw);
FreeAndNil(slist);
end;
end;
另外一种方法:
var
sck: TIdStackWindows;
address: TIdStackLocalAddressList;
begin
sck := TIdStackWindows.Create;
address := TIdStackLocalAddressList.Create;
try
sck.GetLocalAddressList(address);
for i := to address.Count - do
begin
if address[i].IPVersion in [Id_IPv4] then //过滤IP_V6
begin
Item.Caption := address[i].IPAddress; //item是其他变量
end;
end;
finally
FreeAndNil(sck);
FreeAndNil(address);
end;
end
XE10.x 使用正常
D2010
function GetLocalIP(Multi: Boolean = False): string;
type
PPInAddr = ^PInAddr; //取本机IP,可取多个(分行列出)
var
wsaData: TWSAData;
HostInfo: PHostEnt;
HostName: array[..] of Char;
Addr: PPInAddr;
begin
Result := '';
if WSAStartup($, wsaData) <> then
exit;
try
if gethostname(HostName, SizeOf(HostName)) <> then Exit; HostInfo := gethostbyname(HostName);
if HostInfo = nil then Exit; Addr := Pointer(HostInfo^.h_addr_list);
if (Addr = nil) or (Addr^ = nil) then Exit; Result := StrPas(inet_ntoa(Addr^^));
inc(Addr);
while (Addr^ <> nil) and Multi do begin
Result := Result + ^M^J+ StrPas(inet_ntoa(Addr^^));
inc(Addr);
end;
finally
WSACleanup;
end;
end;
Delphi获取本机所有的IP的更多相关文章
- js获取本机的网络IP地址
JavaScript是一门脚本语言,是不能操作文件,读取本地信息的,所以想要获取IP,还需要借助后端技术.方法如下: //获取本机的网络ip地址 function jsonpCallback(res) ...
- LabVIEW 获取本机多个ip地址
图 1 网上见了好多设置的,都没讲清楚,在这里整理一下本机ip地址的获取问题.关键在"字符串向ip地址转换"函数的设置上面,见下图2,选择多输出就能获取本机的多个ip地址,若不 ...
- Delphi获取本机的MAC地址
Delphi获取本机的MAC地址: uses NB30; function GetAdaPterInfo(lana: Char): string; var Adapter: TAdapterS ...
- java获取本机名称、IP、MAC地址和网卡名称
java获取本机名称.IP.MAC地址和网卡名称 摘自:https://blog.csdn.net/Dai_Haijiao/article/details/80364370 2018年05月18日 1 ...
- delphi 获取本机IP地址和MAC地址
unit NetFunc; interface uses SysUtils, Windows, dialogs, winsock, Classes, ComObj, WinInet, Variants ...
- delphi 获取本机IP地址和MAC地址 (转)
unit NetFunc; interface uses SysUtils, Windows, dialogs, winsock, Classes, ComObj, WinInet, Variants ...
- Java 获取本机局域网内IP
主要涉及NetworkInterface.Enumeration.InetAddress等类 /* 获取本机网内地址 */ public static InetAddress getInet4Addr ...
- Python获取本机的mac,ip,name
Python获取mac 获取计算机名字和ip(内网ip) 指定网卡ip
- C# 获取本机的所有ip地址,并过滤内网ip
private void Initialization_Load(object sender, EventArgs e) { cboxip.Items.Add("请选择IP地址") ...
随机推荐
- laravel之构造器操作数据库
使用构造器来查询的优点是可以方式sql注入 1.插入 2.修改数据库 3.删除 4.查询
- Centos7 编译安装 Nginx PHP Mariadb Memcache扩展 ZendOpcache扩展 (实测 笔记 Centos 7.0 + Mariadb 10.1.9 + Nginx 1.9.9 + PHP 5.5.30)
环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G,双网卡) 系统版本:CentOS-7-x86_64-Minimal-1503-01.iso 安装步骤: 1.准备 1.1 ...
- Python基础之集合
一.定义: 二.基本操作: 三.运算: 交集&, 并集|, 补集-, 对称补集^, 子集< 超集> 四.集合推导式: 五.固定集合 frozenset 六.基本代码: # 1. ...
- mysql 查询 练习题及答案
CREATE DATABASE school;USE school;/*1.创建student表格*//*id为主键 非空 唯一 */CREATE TABLE student (id INT(10) ...
- 理解es6 中 arrow function的this
箭头函数相当于定义时候,普通函数.bind(this)箭头函数根本没有自己的this,导致内部的this就是定义时候的外层代码块中的this.外层代码块中的this,则取决于执行时候环境上下文cont ...
- MySQL 的安装
MySQL的全部安装步骤. 1::本案例要求熟悉MySQL官方安装包的使用,快速构建一台数据库服务器: 安装MySQL-server.MySQl-client软件包 修改数据库用户root的密码 确认 ...
- MongoDB安全使用指引
MongoDB社区版有三大主要安全措施,分别是安全认证.角色授权和TLS/SSL传输加密.当然除此之外,定期做数据库备份,也是很好的安全防范手段.另外,本文还将对一些提升MongoDB安全性的细节做阐 ...
- npm run dev没反应
npm config set registry https://registry.npm.taobao.org npm install npm run dev
- hibernate学习(缓存)
缓存,介于应用程序和永久数据存储源之间,作用是为了降低应用程序对物理数据源访问的频率,从而提高应用的运行性能. 例如我们cpu执行效率每秒处理的数据高达上千兆,而我们的硬盘读取速度却没那么高,读取几百 ...
- Java学习之--List和ArrayList
首先明确: List是一个接口,不能被创造实例对象 ArrayList是List 接口的一个实现类,ArrayList类实现了List接口(List接口有多个实现类,例如ArrayList,Linke ...