安装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的更多相关文章

  1. js获取本机的网络IP地址

    JavaScript是一门脚本语言,是不能操作文件,读取本地信息的,所以想要获取IP,还需要借助后端技术.方法如下: //获取本机的网络ip地址 function jsonpCallback(res) ...

  2. LabVIEW 获取本机多个ip地址

    图 1   网上见了好多设置的,都没讲清楚,在这里整理一下本机ip地址的获取问题.关键在"字符串向ip地址转换"函数的设置上面,见下图2,选择多输出就能获取本机的多个ip地址,若不 ...

  3. Delphi获取本机的MAC地址

    Delphi获取本机的MAC地址: uses   NB30; function GetAdaPterInfo(lana: Char): string; var   Adapter: TAdapterS ...

  4. java获取本机名称、IP、MAC地址和网卡名称

    java获取本机名称.IP.MAC地址和网卡名称 摘自:https://blog.csdn.net/Dai_Haijiao/article/details/80364370 2018年05月18日 1 ...

  5. delphi 获取本机IP地址和MAC地址

    unit NetFunc; interface uses SysUtils, Windows, dialogs, winsock, Classes, ComObj, WinInet, Variants ...

  6. delphi 获取本机IP地址和MAC地址 (转)

    unit NetFunc; interface uses SysUtils, Windows, dialogs, winsock, Classes, ComObj, WinInet, Variants ...

  7. Java 获取本机局域网内IP

    主要涉及NetworkInterface.Enumeration.InetAddress等类 /* 获取本机网内地址 */ public static InetAddress getInet4Addr ...

  8. Python获取本机的mac,ip,name

    Python获取mac 获取计算机名字和ip(内网ip) 指定网卡ip

  9. C# 获取本机的所有ip地址,并过滤内网ip

    private void Initialization_Load(object sender, EventArgs e) { cboxip.Items.Add("请选择IP地址") ...

随机推荐

  1. ng表单验证

    <angular>中form表单的验: 1.在form中加上 novalidate 2.利用ng-pattern验证 (*如果不匹配的话 ng-model是绑定不上数据的) 常用的表单验证 ...

  2. 复杂链表的复制(Hard)

    问题来源:选自LeetCode 138:复制带随机指针的链表 问题描述: 题目给定信息: 该链表中每一个节点的成员变量都有两个,一个是next指针指向该节点的下一个节点,一个是random指针指向不确 ...

  3. ajax 三种数据格式

    1.JSON(格式要正确,可以引jar包操作) servlet代码 package com.hsp.action; import java.io.IOException; import java.io ...

  4. Tips_利用padding实现高度可控的分隔线

    一.实现分隔线的方法(未理解:不是说span元素垂直方向设置怕padding不影响吗?) html: <div> 登陆<span></span>注册 </di ...

  5. windows 2008下IIS7 安装ASP.NET 遇到500.19

    windows 2008下IIS7 安装ASP.NET 遇到如下错误: HTTP 错误 500.19 - Internal Server Error 无法访问请求的页面,因为该页的相关配置数据无效. ...

  6. 剑指offer——python【第38题】二叉树的深度

    题目描述 输入一棵二叉树,求该树的深度.从根结点到叶结点依次经过的结点(含根.叶结点)形成树的一条路径,最长路径的长度为树的深度. 解题思路 想了很久..首先本渣渣就不太理解递归在python中的实现 ...

  7. python学习-01

    1.编程语言分类: 编译型:(由编译器将代码编译成计算机识别的二进制文件)C \C++ \C#    运行速度较解释型语言快 解释型:(在运行时进行编译)python.php.sheel.ruby.j ...

  8. convert(varchar(10),字段名,转换格式

    sql 时间转换格式 ) convert(varchar(10),字段名,转换格式) CONVERT(nvarchar(10),count_time,121)CONVERT为日期转换函数,一般就是在时 ...

  9. dtIntersectSegmentPoly2D 2D上的线段与多边形相交计算 产生结果:是否相交,线段跨越的开始和结束百分比,相交的边

    dtIntersectSegmentPoly2D(startPos, endPos, verts, nv, tmin, tmax, segMin, segMax): http://geomalgori ...

  10. QQ设置手机和pc qq群消息不同步

    作为开发人员QQ群很多,很正常,工作的时候才需要看qq信息和群消息,但是蛋疼qq在新版的qq必须设置同步,之前用的qq8.1版本可以设置不同步,但是现在突然不行 目前可以用的途径就是 QQ国际PC版2 ...