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地址") ...
随机推荐
- 潭州课堂25班:Ph201805201 tornado 项目 第五课 增加用户系统-用户中心(课堂笔记)
tornado 相关说明 在 users 表中创建记录,做测试 在项目根目录下创建 test.py # -*- coding: utf-8 -*- # 斌彬电脑 # @Time : 2019/2/27 ...
- js来判断设备类型
function deviceType(){ var ua = navigator.userAgent; var agent = ["Android", "iPhone& ...
- Oracle命令行中显示:ORA-04076: 无效的 NEW 或 OLD 说明
Oracle命令行进行操作时可能出现"ORA-04076: 无效的 NEW 或 OLD 说明" 需要在条件语句中JOB前面添加“old.”即可(因为是在when条件里面,所以不用“ ...
- wamp 环境安装php_mongo 或 mongodb的扩展
特别注意:momgo 与mondb 是两个不同的扩展,不是同一个,这是一个坑 1.查看你的php版本,Compiler,Thread safety版本 2.下载地址 https://pecl.php. ...
- Ehcache 3.7文档—基础篇—JCache aka JSR-107
一. 概述JCache Java临时缓存API(JSR-107),也被称为JCache,它是一个规范在javax.cache.API中定义的.该规范是在Java Community Process下开 ...
- 测试自动化学习3-python3简单操作
1.列表操作 增 stu = []stus.append('lili') #在list的末尾增加一个元素 stus.insert(9,'yjk') #在指定的位置插入元素, 查 print('单个取, ...
- Python全局变量和局部变量相关知识点
知识点一: #在函数外面定义的变量叫全局变量 num = 100 def AAA(): ''' 如果在函数中直接修改全局变量,那么会产生异常 如果真的需要修改,可以在函数中进行声明(前面加入globa ...
- 2018-2019-2-20175303 实验一 《Java开发环境的熟悉》实验报告
2018-2019-2-20175303 实验一 <Java开发环境的熟悉>实验报告 一.实验内容及步骤 实验1 1.用mkdir建立“20175303exp1”的目录 2.在“20175 ...
- inux中ifreq 结构体分析和使用(转)
标签: it 分类: socket 结构原型: struct ifreq{#define IFHWADDRLEN 6 union { char ifrn_name[IFNAMSIZ]; } if ...
- 记录请求的耗时(拦截器、过滤器、aspect)
文章前言 记录控制器请求的耗时处理通常有三种实现方式,分别是:过滤器.拦截器.aspect:下文将逐一实现. 1.Filter 过滤器 1.1.方法说明 需要实现 Filter 类,主要涉及三个方法: ...