精易模块v9.4.5部分新功能自使用例

1.文件_下载1
这个功能老生常谈,在原本的 文件_下载 命令中是调用shdocvw.dll中的DoFileDownload,会打开一个对话框提供下载的界面化操作,而在 文件_下载1 当中使用的是urlmon.dll中的URLDownloadToFileA,该功能具有一定的集成性,在精易模块中只需要提供下载地址、保存路径、任务类型三个参数即可,属于阉割了一部分,失去了可调整的LPUNKNOWN参数和LPBINDSTATUSCALLBACK参数,当然精易模块的源码是公开的,可以自行修改以达到想要的效果,这里我们不去追究这些,来讲讲用法:
参数一:下载地址
这个参数看名字就明白,填写你要下载的文件地址即可,这里更新日志标明了支持HTTP和HTTPS,这里我们测试精易模块的资源网页面:"https://www.eyuyan.la/post/18908.html"
参数二:保存路径
填写下载到本地文件的绝对路径,譬如:C:\test.txt,说明中明确提出是完整文件路径。
参数三:任务类型
这个任务类型属实离谱,它是一个整数型数值,可以有三个有效参数,0 = 覆盖 1 = 改名 2 = 跳过
经过测试和源代码解读,当参数值是0的时候如果保存路径已经存在文件,则会删除原有文件后再进行写入,当参数值为1时,如果保存位置文件存在,则会进行99次内的循环,直到找到不重复的文件名为止,比如保存位置 D:\test.txt 已经存在,那么会写入 D:\test(1).txt ,估计原作者是想要实现和浏览器保存时的诊断命名一样,然后就是当参数值为2时,如果这个文件存在,那么函数会直接返回真,不会进行其他操作,如果不存在则会正常写入。(此函数值可为空,默认为0)

2.时间_取NTP服务器时间戳
这个参数很容易理解,就是通过时间服务器来获取时间,这个函数在源代码中的协议很复杂,这里不做过多的解释,首先我们需要找到一个NTP服务器,这个目前网络上随便搜一下就可以找到很多,不过用的最多的还是 time.windwos.com ,在函数备注中也标明了此网络时间服务器,算是比较常用的了,这里推荐大家找几个进行尝试,比如ntp.aliyun.com之类的,还有部分支持IPv6的NTP服务器也可以使用。
推荐总结文章:https://blog.csdn.net/weixin_42588262/article/details/82501488
此函数只需要一个文本型的NTP服务器地址即可,所以我们主要讲他的返回值,他的返回值是长整数型,目前是十位数字构成,本身是一个用秒数表示时间的数据,具体时间应该是从1970年1月1日(UTC/GMT的午夜)开始所经过的秒数,具体转换也有对应的命令在精易模块中,只需要组合一下即可使用,转换参数不做过多介绍。

3.进程_创建W
为什么要讲这个函数呢。。。我也不知道,反正这个函数有三个,分别是 进程_创建、、进程_创建W、进程_创建Ex;
这三个函数大同小异,分别来看下三个函数的参数就能看出来。

前几个参数大致相同,主要区别是W定义的以挂起方式创建和挂起后的线程句柄两个参数,首先"以挂起方式创建"是个逻辑型,也就是说创建的时候要不要把进程挂起(看似暂停程序运行),"挂起后的线程句柄"和"以挂起方式创建"是关联的,只有当"以挂起方式创建"为真时"挂起后的线程句柄"才有意义,而且"挂起后的线程句柄"是个返回参数,我们可以用它来在挂起创建为真时获取线程句柄,源函数注明这个句柄不用时是需要释放的,所以最好挂起创建后,如果不用记得加上一句释放。(此外W和另两个函数的区别还有一个就是没有进程结构这个参数,但三个函数本身都会返回进程结构里的进程ID)
参考文章:
https://blog.csdn.net/weixin_42588262/article/details/82501488
https://baike.baidu.com/item/NTP%E6%9C%8D%E5%8A%A1%E5%99%A8/8633994?fr=aladdin
https://www.eyuyan.la/post/18908.html
https://bbs.125.la/thread-14700635-1-1.html