欢迎访问 外汇EA下载与MT4/MT5自动交易资源 - 聚合外汇EA、黄金EA、量化交易工具与自动化交易实战内容。
登录 注册

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

author emer | 350 人阅读 | 0 人评论 |

MQL5 Program Packer - script for MetaTrader 5

MQL5 Program Packer - script for MetaTrader 5

MQL5 Program Packer - script for 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 Program Packer - script for MetaTrader 5

通过连接点(符号链接)从 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

🔐
请登录后参与评论
注册满12小时后评论,即可解锁附件下载
立即登录