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地址") ...
随机推荐
- Android应用程序后台加载数据
从ContentProvider查询你需要显示的数据是比较耗时的.如果你在Activity中直接执行查询的操作,那么有可能导致Activity出现ANR的错误.即使没有发生ANR,用户也容易感知到一个 ...
- XV Open Cup named after E.V. Pankratiev. GP of America
A. Area of Effect 首先最优解中必有一个点在圆的边界上. 若半径就是$R$,则枚举一个点,然后把剩下的事件极角扫描即可,时间复杂度$O(m(n+m)\log(n+m))$. 否则圆必然 ...
- 小甲鱼Python第二十二讲课后习题
笔记: 斐波那契数列的两种实现方式: 迭代的方式: 自己写的: def fab(n): n1 =1 n2 =1 n3 =1 if n < 1: return -1 if n ==1: ret ...
- Node.js_express_route 路由
route 路由 (kiss my ass ヾ(゚∀゚ゞ) 请求方式 get / post / put / delete____查 / 增 / 改 / 删 路由路径 ...
- vue_条件渲染_v-if_v-else_v-show
data: { ok: true flag: false } 1. 成对出现的 v-if 和 v-else 原理是: 标签的删除与重新创建 ,有些情况必须用 v-if <p v-if=" ...
- cmd 命令 net start mongodb 启动不了,提示 net 不是内部命令或者外部命令
1.要管理员的身份进入 cmd 2.右击我的电脑-->属性-->高级系统设置 3.选择高级-->环境变量 4.找到系统变量-->Path-->编辑 5.把 C:\wind ...
- viewport的故事(二)
挑重点的翻译 自原文 https://www.quirksmode.org/mobile/viewports2.html 在这一页我们将聊一聊移动端的浏览器. 移动端的问题 最明显的问题 ...
- tomcat端口冲突,关闭端口方法
CMD打开控制台 输入:netstat -ano | findstr 8080 //最后一行的进程号PID 输入:taskkill /F /PID 所要关闭的PID号 如图所示 之后会补充
- 解决 AutoMapper ProjectTo 不起作用的问题
这两天在一个 ASP.NET Core 项目中遭遇了 AutoMapper ProjectTo 不起作用的奇怪问题,虽然在 ProjectTo 中指定了 DTO ,但 EF Core 生成的 SQL ...
- go 并发编程(3)
channel go语言提供的消息通信机制被称为channel. "不要通过共享内存来通信,而应该通过通信来共享内存". channel是go语言在语言级别提供的goroutine ...