Delphi 域名解析为IP地址
花生壳:
1.LJSZForm-Lable1-Caption改成 “IP地址或域名:”
2.LJSZForm-BitBtn1Click-注释掉--else if IsIP(Trim(IPEdit.Text))=False then
TLShowMessage('IP地址错误',False)
3.DataM-DLDataSrvr-fmLJWait.Label1.Caption:='正在连接数据服务器,请稍候....';
fmLJWait.Update;-后面SConn.Address:=ZJIPAdd;改成
if IsIP(Trim(ZJIPAdd)) then
begin
SConn.Address:=ZJIPAdd;
end else
begin
SConn.Address:=HostToIP(ZJIPAdd);
end;
4.DataM加一个函数解析花生壳域名
function HostToIP(Name: string):STRING;
var
wsdata : TWSAData;
hostName : array [0..255] of char;
hostEnt : PHostEnt;
addr : PChar;
begin
WSAStartup ($0101, wsdata);
try
gethostname (hostName, sizeof (hostName));
StrPCopy(hostName, Name);
hostEnt := gethostbyname (hostName);
if Assigned (hostEnt) then
if Assigned (hostEnt^.h_addr_list) then begin
addr := hostEnt^.h_addr_list^;
if Assigned (addr) then begin
Result := Format ('%d.%d.%d.%d', [byte (addr [0]),
byte (addr [1]), byte (addr [2]), byte (addr [3])]);
end
else
Result := '';
end
else
Result := ''
else begin
Result := '';
end;
finally
WSACleanup;
end
end;
5.DataM-uses-加上 ,WinSock
改变服务端:
1.tljxcwj-MainForm.Caption:=DMName+iif(m_RegFlags=0,'(未注册)','');改成 MainForm.Caption:=DMName;
2.DataM-SConn
Port:5927
ServerGUID:{F64E160D-552B-4C8B-9428-3C850B53A6F9}
3.DataM-DLDataSrvr-
Function TDataM.DLDataSrvr():Boolean; // 登录数据服务器
Var Re:String;
RegFlags:Integer;
HWndCalc:HWnd;
XFFlags:Boolean;
IPSvr:String;
begin
Result:=True;
if DataM.SConn.Connected then
DataM.SConn.Close;
CSPath:=Extractfiledir(application.ExeName);
InstProc('midas.dll');
InstProc('dbclient.dll');
InstProc('intrcpt.dll');
GetZJLJFS();
if ZJLJFS=0 then
begin
if (FileExists(CSPath+'\'+ServerFileName)) then
begin
HWndCalc:=FindWindow(nil,ServerRunFlags);
if HWndCalc=0 then
WinExec(PChar(CSPath+'\'+ServerFileName),SW_RESTORE);
SConn.Address:='127.0.0.1';
end
else
begin
Application.CreateForm(TLJSZForm, LJSZForm);
if LJSZForm.ShowModal=mrCancel then
begin
ExitFlags:=True;
Result:=False;
LJSZForm.Free;
exit;
end;
LJSZForm.Free;
end;
end;
fmLJWait.Label1.Caption:='正在查找数据服务器,请稍候....';
fmLJWait.Show;
fmLJWait.Update;
XFFlags:=True;
While XFFlags do
begin
XFFlags:=False;
if ZJLJFS=1 then
begin
fmLJWait.Label1.Caption:='正在连接数据服务器,请稍候....';
fmLJWait.Update;
if IsIP(Trim(ZJIPAdd)) then
begin
SConn.Address:=ZJIPAdd;
end else
begin
SConn.Address:=HostToIP(ZJIPAdd);
end;
end
else
begin
fmLJWait.Label1.Caption:='正在读取数据服务器的IP地址,请稍候....';
fmLJWait.Update;
Re:=DIPHttp1.GetSrvrIP(ZJDLZH,ZJDLMM);
if Re='Error' then
begin
XFFlags:=True;
end
else
begin
fmLJWait.Label1.Caption:='正在连接数据服务器,请稍候....';
fmLJWait.Update;
SConn.Address:=Re;
end;
end;
if Not XFFlags then
begin
try
DataM.SConn.Connected:=True;
except
XFFlags:=True;
end;
end;
if XFFlags then
begin
fmLJWait.Close;
Application.CreateForm(TLJSZForm, LJSZForm);
if LJSZForm.ShowModal=mrCancel then
begin
XFFlags:=False;
ExitFlags:=True;
Result:=False;
LJSZForm.Free;
exit;
end
else
begin
LJSZForm.Free;
fmLJWait.Show;
fmLJWait.Update;
end;
end;
end;
YGDAListCDS.Open;
fmLJWait.Close;
end;
4.Pubsub-Const
SJtmpFileName='tlclienttmpN.exe'; // 升级时的临时文件
JKFileName='TLJK.exe'; // 鸿鹏监控文件
RegTabeBoot='\Software\TaiLaiSoft\'; // 在注册表中根
RegTableWZ='TLWJGL' ; // 注册表目录的文件名
ServerFileName='TLWJSrvr.exe'; // 服务端程序名称
ServerRunFlags='tlwjglsrvr'; // 服务端已运行的标识
m_SoftName='商务E点通五金版';
m_SoftCaption='商务E点通五金版';
AdminRunFlags = 'TLJXCWJAdmin'; // 客户端系统管理员运行标识
ClientRunFlags = 'TLJXCWJClient'; // 客户端运行标识
FXiniFileName='TLJXCWJ' ; // INI文件的文件名
m_SoftVer='1.00';
5.Pubsub-procedure GetSysOption;-IniFileName:=CSPath+'\'+FXiniFileName+'.ini';
Delphi 域名解析为IP地址的更多相关文章
- Python实现将网站域名解析为ip地址
起因 因为一些事情,需要将域名解析为ip地址,想到Python作为万能语言,就用Python来实现这个功能 代码 import socket url = 'shiyixirui.cn' res = s ...
- Delphi获取公网IP地址函数
uses IdHTTP; function GetPublicIP: string; var strIP, URL: string; iStart, iEnd: Integer; MyIdHTTP: ...
- Delphi开发的IP地址修改工具
用Delphi进行开发的,直接修改注册表,需重启电脑后才生效
- 万网域名解析到IP地址
进入https://home.console.aliyun.com/#/的阿里云控制台 再自己购买的域名列表里进行操作 添加一个A解析
- IP地址、域名、域名解析系统相关
IP地址(Internet Protocol Address) 它来自TCP/IP协议,存在于其中的IP层,用于实现不同计算机之间的通信,类似于门牌号. 设计之处,IP地址是准备给地球上每一台计算机一 ...
- 爬虫实现:根据IP地址反查域名
域名解析与IP地址 域名解析是把域名指向网站空间IP,让人们通过注册的域名可以方便地访问到网站的一种服务:IP地址是网络上标识站点的数字地址,为了方便记忆,采用域名来代替IP地址标识站点地址.域名解析 ...
- 解析远程域名主机的IP地址
我们知道,计算机在访问远程主机的时候,本质上是通过IP地址来进行访问的,但我们实际在使用的时候,例如我们想访问百度的主页,我们是通过在浏览器的地址栏输入百度的域名来进行访问的,因此,计算机需要将百度的 ...
- 什么是ip地址、子网掩码、网关和DNS?
什么是ip地址? IP是32位二进制数据,通常以十进制表示,并以“.”分隔.IP地址是一种逻辑地地址,用来标识网络中一个个主机,IP有唯一性,即每台机器的IP在全世界是唯一的. IP地址=网络地址+主 ...
- Delphi使用JSON解析调用淘宝IP地址库REST API 示例
淘宝IP地址库:http://ip.taobao.com,里面有REST API 说明. Delphi XE 调试通过,关键代码如下: var IdHTTP: TIdHTTP; RequestURL: ...
随机推荐
- PAT 甲级 1041 Be Unique (20 分)
1041 Be Unique (20 分) Being unique is so important to people on Mars that even their lottery is desi ...
- kubernetes核心组件kube-proxy 学习总结
一. kube-proxy 和 service kube-proxy是Kubernetes的核心组件,部署在每个Node节点上,它是实现Kubernetes Service的通信与负载均衡机制的重 ...
- Mongodb 批量Upsert
List<UpdateOneModel<Entity>> requests = new List<UpdateOneModel<Entity>>(ent ...
- 优秀WordPress版微信小程序推荐(二)
随着使用WordPress版微信小程序的用户越来越多,其中涌现不少优秀的小程序,无论UI设计还是功能上都远远超过我开源的程序.这次是推荐第二批优秀Wordpress版微信小程序,希望有更多的小程序的爱 ...
- Python全栈开发记录_第一篇(循环练习及杂碎的知识点)
Python全栈开发记录只为记录全栈开发学习过程中一些难和重要的知识点,还有问题及课后题目,以供自己和他人共同查看.(该篇代码行数大约:300行) 知识点1:优先级:not>and 短路原则:a ...
- redis-缓存失效三种策略(FIFO 、LRU、LFU)
缓存失效策略(FIFO .LRU.LFU三种算法的区别) 当缓存需要被清理时(比如空间占用已经接近临界值了),需要使用某种淘汰算法来决定清理掉哪些数据.常用的淘汰算法有下面几种: FIFO:First ...
- 面向对象开发C++快速入门视频教程 C++基础加实战视频教程
课程目录: ├<C++面向对象高级开发(上)> │ ├1.C++编程简介.mp4 │ ├2.头文件与类的声明.mp4 │ ├3.构造函数.mp4 │ ├4.参数传递与返回值.mp4 │ ├ ...
- python爬虫之解析库Beautiful Soup
为何要用Beautiful Soup Beautiful Soup是一个可以从HTML或XML文件中提取数据的Python库.它能够通过你喜欢的转换器实现惯用的文档导航,查找,修改文档的方式, 是一个 ...
- java后台解析前端传来的json
@RequestMapping(value = {"save"}) @ResponseBody public Result save(TBaseInterventionPlan m ...
- MySql:SELECT 语句(二)排序 ORDER BY 的使用
1.按单列排序 语句: SELECT col FROM tablename ORDER BY col; ( 一般情况下, ORDER BY 子句中使用的列为选择的列,但也可以使用其他列) 2.按 ...