MQL5 程序打包程序 - MetaTrader 5 脚本


这个
脚本允许您自动组装包含所有依赖项的 MQL5 程序的 zip 文件。
依赖项是:
该脚本基于文章中最初发布的文件扫描器微量润滑 通过 MQL 进行解析。
为了使脚本正常工作,用户应该进行一个简单但重要的准备步骤。
在中创建文件 makelink.batMQL5/文件文件夹中包含以下命令并运行它:
mklink /J MQL5 "..\..\MQL5\"
该文件随脚本一起提供(绑定),但具有 txt 扩展名,因为 MQL5 资源中禁止使用 bat 文件。你应该复制生成链接.txt到生成链接文件手动。
该命令将创建虚拟伪文件夹“MQL5”(所谓的文件系统交界处 点) 真实内部MQL5/文件文件夹。伪文件夹实际上是到真实文件夹的链接/跳转MQL5文件夹,可从 MQL5 沙箱访问。不要混淆真实的MQL5文件夹和“MQL5”链接(通常标有快捷方式 覆盖在图标上)。
上述命令中第一次出现的“MQL5”是假名。您可以选择另一种,但需支付非标准费用 生成的 ZIP 文件中的目录结构(ZIP 中的顶级文件夹将具有此名称)。 “MQL5”第二次出现在 命令是真实的名称MQL5文件夹 - 这部分应保持完整。运行命令在MQL5/文件文件夹。

通过连接点(符号链接)从 MQL5/Files 文件夹访问 MQL5 沙箱
重要的!请注意,该命令从下级文件夹创建循环引用MQL5/文件到 上层MQL5文件夹。如果您使用的软件不够智能,无法检测路径中的递归,这可能会很危险。对于 例如,编写松散的备份程序、防病毒软件或文件管理器可能会陷入无限循环,并可能损坏您的计算机。 操作系统。检查您的软件的兼容性,包括MQL5进入例外列表,或删除链接/跳转 完成包装任务后。
伪文件夹“MQL5”链接只是一个特殊文件,如果您不再需要它,可以随意删除它,只需确保删除该文件即可 里面有链接MQL5/文件文件夹,而不是终端数据路径中的真实 MQL5 文件夹。
该 zip 文件将包含 MQL5 中子文件夹和文件的完整结构,这些子文件夹和文件是从 MQL5 程序中引用的。
该脚本利用文章中发布的 ZIP 库处理 ZIP 档案 在纯 MQL5 中,但有一些小的修复和改进。
这是日志的示例:
处理 MQL5/Scripts/mql5pack.mq5
#属性图标“mql5pack.png”
包括 MQL5/Scripts/mql5pack.png
#resource "\\Files\\makelink.txt" 作为字符串 __cmd1Folder
包括 MQL5/Files/makelink.txt
#resource "\\Files\\mql5pack.txt" 作为字符串 __exceptionListExample
包括 MQL5/Files/mql5pack.txt
#include
包括 MQL5/Include/mql5/FileReader.mqh
#include“RubbArray.mqh”
包括 MQL5/Include/mql5/RubbArray.mqh
#include“HashMapTemplate.mqh”
包括 MQL5/Include/mql5/HashMapTemplate.mqh
#include
包括 MQL5/Include/Zip/Zip.mqh
#include <对象.mqh>
包括 MQL5/Include/Object.mqh
#include“StdLibErr.mqh”
包括 MQL5/Include/StdLibErr.mqh
#include
包括 MQL5/Include/Arrays/ArrayObj.mqh
#include“数组.mqh”
包括 MQL5/Include/Arrays/Array.mqh
#include <对象.mqh>
包括 MQL5/Include/Object.mqh
#include <字典.mqh>
包括 MQL5/Include/Dictionary.mqh
#include <对象.mqh>
包括 MQL5/Include/Object.mqh
#include
包括 MQL5/Include/Arrays/List.mqh
#include <对象.mqh>
包括 MQL5/Include/Object.mqh
#include“ZipDefines.mqh”
包括 MQL5/Include/Zip/ZipDefines.mqh
#include“ZipHeader.mqh”
包括 MQL5/Include/Zip/ZipHeader.mqh
#include“ZipDefines.mqh”
包括 MQL5/Include/Zip/ZipDefines.mqh
#include“ZipDirectory.mqh”
包括 MQL5/Include/Zip/ZipDirectory.mqh
#include“ZipDefines.mqh”
包括 MQL5/Include/Zip/ZipDefines.mqh
#include“ZipContent.mqh”
包括 MQL5/Include/Zip/ZipContent.mqh
#include <对象.mqh>
包括 MQL5/Include/Object.mqh
#include“ZipDefines.mqh”
包括 MQL5/Include/Zip/ZipDefines.mqh
#include“ZipHeader.mqh”
包括 MQL5/Include/Zip/ZipHeader.mqh
#include“ZipFile.mqh”
包括 MQL5/Include/Zip/ZipFile.mqh
#include“ZipDefines.mqh”
包括 MQL5/Include/Zip/ZipDefines.mqh
#include“ZipContent.mqh”
包括 MQL5/Include/Zip/ZipContent.mqh
处理的文件:19
来源长度:152757
+ MQL5/脚本/mql5pack.mq5
+ MQL5/脚本/mql5pack.png
+ MQL5/文件/makelink.txt
+ MQL5/文件/mql5pack.txt
+ MQL5/包含/mql5/FileReader.mqh
+ MQL5/包含/mql5/RubbArray.mqh
+ MQL5/包含/mql5/HashMapTemplate.mqh
+ MQL5/包含/Zip/Zip.mqh
- MQL5/包含/Object.mqh
- MQL5/包含/StdLibErr.mqh
- MQL5/包含/数组/ArrayObj.mqh
- MQL5/包含/数组/Array.mqh
+ MQL5/包含/字典.mqh
- MQL5/包含/数组/List.mqh
+ MQL5/Include/Zip/ZipDefines.mqh
+ MQL5/Include/Zip/ZipHeader.mqh
+ MQL5/包含/Zip/ZipDirectory.mqh
+ MQL5/包含/Zip/ZipContent.mqh
+ MQL5/包含/Zip/ZipFile.mqh
保存的打包文件:MQL5/Scripts/mql5pack.mq5.zip
添加“+”标记的文件,跳过“-”标记的文件,因为它们来自例外列表。
附件下载
📎 dictionary.mqh (19.27 KB)
📎 rubbarray.mqh (3.7 KB)
📎 hashmaptemplate.mqh (3.17 KB)
📎 filereader.mqh (17.36 KB)
📎 zipfile.mqh (6.32 KB)
📎 zipcontent.mqh (11.81 KB)
📎 zip.mqh (17.46 KB)
📎 zipheader.mqh (12.47 KB)
📎 zipdefines.mqh (1.17 KB)
📎 zipdirectory.mqh (1.85 KB)
📎 mql5pack.txt (0.37 KB)
📎 mql5pack.mq5 (6.31 KB)
Source: MQL5 #27955
💡 精彩内容推荐
✍️ 楼主最新发布
- •
- •
- •
- •
- •
- •
🔗 您可能感兴趣
- •
- •
- •
- •
- •
- •
