开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 4218|回复: 25
打印 上一主题 下一主题
收起左侧

[易语言纯源码] 取TIME_protocol日期时间信息

[复制链接]
跳转到指定楼层
楼主
发表于 2024-8-19 16:17:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式   广西壮族自治区柳州市
分享源码
界面截图: -
是否带模块: -
备注说明: -
本帖最后由 真冬 于 2024-8-19 16:42 编辑
  
信息框 (取TIME_protocol日期时间信息 (“time.nist.gov”), 0, , )
子程序名返回值类型公开备 注
取TIME_protocol日期时间信息日期时间型 时间协议(英语:TIME protocol)是一个在RFC868内定义的网络传输协议。它用作提供机器可读的日期时间信息。
参数名类 型参考可空数组备 注
参数_地址文本型
参数_时区字节型留空则默认8
变量名类 型静态数组备 注
局_返回消息字节集 
局_i1整数型 
局_返回时间日期时间型 
局_句柄整数型 
局_返回消息 = 取空白字节集 (444)
WSAStartup_取Internet时间 (1, 局_返回消息)  ' 初始化版本1并写入套接字信息
局_句柄 = socket_取Internet时间 (2, 1, 6)  ' 2,IPV4协议。1,字节流类型,6,TCP协议,
connect_取Internet时间 (局_句柄, { 2, 0, 0, 37 }指针到字节集 (指针到整数 (指针到整数 (gethostbyname_取Internet时间 (参数_地址) + 12)), 4), 16)  ' 37端口和IP地址,16大小结构
局_返回消息 = 取空白字节集 (9)
recv_取Internet时间 (局_句柄, 局_返回消息, 4, 0)  ' 取服务器返回消息
closesocket_取Internet时间 (局_句柄)  ' 关闭句柄
判断 (局_返回消息 [1] = 0)
局_返回时间 = 到时间 (0)  ' 服务器返回消息为空
计次循环首 (2, 局_i1)  ' 将获取到的消息倒序前4字节
局_返回消息 [9] = 局_返回消息 [局_i1]
局_返回消息 [局_i1] = 局_返回消息 [4 - (局_i1 - 1)]
局_返回消息 [4 - (局_i1 - 1)] = 局_返回消息 [9]
计次循环尾 ()
局_i1 = 取字节集sj (局_返回消息, #长整数型, ) - 36524 × 24 × 60 × 60  ' 减掉100年的时间
局_i1 = 局_i1 + 选择 (是否为空 (参数_时区), 8, 参数_时区) × 3600
局_返回时间 = 增减时间 (到时间 (“2000年1月1日”), #秒, 局_i1)
WSACleanup_取Internet时间 ()
返回 (局_返回时间)
DLL命令名返回值类型公开备 注
WSACleanup_取Internet时间整数型 卸载Winsocket服务
DLL库文件名:
ws2_32.dll
在DLL库中对应命令名:
WSACleanup
参数名类 型传址数组备 注
DLL命令名返回值类型公开备 注
WSAStartup_取Internet时间整数型 
DLL库文件名:
ws2_32.dll
在DLL库中对应命令名:
WSAStartup
参数名类 型传址数组备 注
wVersionRequested整数型
lpWSAData字节集
DLL命令名返回值类型公开备 注
socket_取Internet时间整数型 Socket又称套接字,应用程序通常通过套接字向网络发出请求或者应答网络请求。
DLL库文件名:
ws2_32.dll
在DLL库中对应命令名:
socket
参数名类 型传址数组备 注
af整数型
type整数型SOCK_STREAM or SOCK_DGRAM
protocol整数型
DLL命令名返回值类型公开备 注
connect_取Internet时间整数型 连接到服务器(TCP)
DLL库文件名:
ws2_32.dll
在DLL库中对应命令名:
connect
参数名类 型传址数组备 注
网络通讯标识符整数型s
名称结构字节集套接字地址addr
名称结构长度整数型namelen(16)
DLL命令名返回值类型公开备 注
inet_addr_取Internet时间整数型 
DLL库文件名:
ws2_32.dll
在DLL库中对应命令名:
inet_addr
参数名类 型传址数组备 注
IP文本型
DLL命令名返回值类型公开备 注
recv_取Internet时间整数型 
DLL库文件名:
ws2_32.dll
在DLL库中对应命令名:
recv
参数名类 型传址数组备 注
socket整数型
buf字节集__out_data_source(NETWORK) char *buf,
len整数型
flag整数型
DLL命令名返回值类型公开备 注
closesocket_取Internet时间整数型 
DLL库文件名:
ws2_32.dll
在DLL库中对应命令名:
closesocket
参数名类 型传址数组备 注
s整数型0
DLL命令名返回值类型公开备 注
gethostbyname_取Internet时间整数型 成功返回内存指针
DLL库文件名:
ws2_32.dll
在DLL库中对应命令名:
gethostbyname
参数名类 型传址数组备 注
name文本型机器名称




之前有人发13和123端口的取网络时间,我这个是37端口的。
调试输出 (增减时间 (到时间 (“1970年1月1日”), #秒, 时间_取NTP服务器时间戳 ())) ‘精易模块里也有通过123端口获取时间的





评分

参与人数 1精币 +2 收起 理由
光影魔术 + 2 支持开源~!感谢分享

查看全部评分


结帖率:99% (68/69)

签到天数: 11 天

沙发
发表于 2024-8-19 16:26:35 | 只看该作者   福建省宁德市
回复 支持 反对

使用道具 举报

板凳
发表于 2024-8-19 19:22:52 | 只看该作者   广东省广州市
回复 支持 反对

使用道具 举报

结帖率:97% (571/589)

签到天数: 17 天

地板
发表于 2024-8-19 19:31:15 | 只看该作者   河北省沧州市
Internet时间服务器端口并不是13端口。‌  Internet时间服务器通常使用TCP端口37和UDP端口37,这些端口被DATE、RDATE、SDATE和其他使用“时间”协议的程序使用。为了成功访问NIST时间服务器,防火墙必须允许通过将使用的远程端口和协议组合进行出站连接。系统上的端口号可能会因一个请求而异,并且如果消息寻址到NIST系统上的特定端口之一,则可能必须允许来自系统上任何端口号的消息通过防火墙,如果消息从这些特定时间服务端口之一返回,则允许发送到系统上任何端口的消息通过防火墙‌1。  此外,不同的端口号用于不同的网络服务,例如:  端口13用于daytime服务,给请求主机发送日期和时间‌2。 端口37专门用于时间协议‌1。 因此,将Internet时间服务器端口与13端口关联是不准确的,正确的端口号是37,用于TCP和UDP通信,以提供时间同步服务‌1。
回复 支持 反对

使用道具 举报

结帖率:80% (4/5)
地下
发表于 2024-8-19 19:50:37 | 只看该作者   河南省鹤壁市
路过看看
回复 支持 反对

使用道具 举报

签到天数: 15 天

6
发表于 2024-8-19 20:48:43 | 只看该作者   广东省惠州市
感谢老大,太好了
回复 支持 反对

使用道具 举报

签到天数: 9 天

7
发表于 2024-8-19 21:03:39 | 只看该作者   江苏省连云港市

感谢分享
回复 支持 反对

使用道具 举报

结帖率:80% (4/5)

签到天数: 3 天

8
发表于 2024-8-20 01:21:20 | 只看该作者   山东省潍坊市
已经顶贴,感谢您对论坛的支持!
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)

签到天数: 8 天

9
发表于 2024-8-20 04:16:25 | 只看该作者   江西省上饶市
这也是不错 的思路
回复 支持 反对

使用道具 举报

结帖率:97% (120/124)

签到天数: 23 天

10
发表于 2024-8-20 07:45:56 | 只看该作者   山东省青岛市
感谢发布原创作品,精易因你更精彩!6666666666666
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报QQ: 793400750,邮箱:[email protected]
网站简介:精易论坛成立于2009年,是一个程序设计学习交流技术论坛,隶属于揭阳市揭东区精易科技有限公司所有。
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表