客服热线:18391752892

MetaTrader 4 Build 600及以上的数据结构

   日期:2019-01-12     浏览:790    
马上注册,结交更多好友,下载更多资源

您需要 登录 才可以下载或查看,没有帐号?注册 介绍metaTarder 4 build 600突出了新的结构和客户端文件的位置。现在,MQL4应用程序根据类型置于不同的目录中(EA交易,指标或脚本)。 在大多数情况下,程序端数据现在存储在不同于程序端安装位置的特殊的数据文件夹。在本文中,我们将详细描述数据如何传输,以及引入新存储系统的原因。
为什么实施新的数据存储系统
13年前发布的Microsoft Windows XP允许应用程序在其安装的位置写入它们自己的数据,即使其安装位置位于Program Files系统文件夹。用户只有拥有管理员权限才能向任何文件夹写入数据。当在64-位系统工作时,会为32和64-位程序提供单独的安装目录:Program Files和Program Files (x86)。本文描述的操作特性适用于这两个目录。
从Windows Vista开始,Microsoft 对写入Program Files目录就采用了一个限制。如果http://www.mql4.com/go?http://windows.microsoft.com/en- ... ser-account-control]用户账户控件 (UAC)系统已启用,那么程序不允许将它们的数据存储在Program Files文件夹中。所有数据都应该置于独立的用户目录中。这种限制的采用是为了保护用户免受恶意程序攻击和防止用户帐户下的应用程序改变或损坏另一个用户账户所需的相同程序的数据。自那时起,微软操作系统的安全要求已进一步收紧。特别是,从Windows 8开始,UAC系统无法禁用即使在其设置中选择了“从不通知”选项。
微软已经实施http://www.mql4.com/go?http://msdn.microsoft.com/en-us/library/bb756960.aspx]虚拟化进程为了在使用UAC时提供与旧应用程序的兼容性。如果某个程序试图将其数据保存到Program Files目录,数据实际上是(物理)保存到具有下面显示的一个单独的文件夹 - C:UsersAppDataLocalVirtualStoreProgram Files,而Windows资源管理器显示文件,好像它们被保存在安装目录一样。微软声称,提供这种模式只是为了兼容以及以后可以移除。为了符合微软的建议,metaTrader 4客户端的数据存储结构已经从build 600开始改变。现在,程序端也将其数据存储在用户目录。
用户数据目录
在新版本中,使用metaTrader 4客户端副本工作的某个用户的所有数据都存储在一个叫做程序端数据文件夹的特殊的地方。此文件夹可沿着以下路径在系统盘(安装Windows操作系统的磁盘)上找到
C:UsersUser_account_nameAppDataRoamingmetaQuotesTerminalInstance_id其中:
C:- 系统盘的名称;User_account_name - 在Windows上工作的用户帐户;Instance_id - 使用metaTrader 4程序端副本工作的所有用户的数据存储的文件夹的唯一名称。唯一名称由16个字符组成。这个名称是基于程序端安装目录的路径生成的,因为程序端安装目录的路径不能明确地用作文件夹名称。唯一名称的长度由程序端的多个副本可以在一台PC上安装的事实进行解释。
“打开数据文件夹”命令已被添加到程序端的文件菜单用来搜索和打开数据文件夹。
每个程序端数据文件夹的根目录还包含origin.txt文件,在这里您可以找到这些数据相关的程序端安装文件夹的路径。这使得用户能够匹配每个程序端的数据文件夹与某个程序端的安装目录,例如,在用户安装多个metaTrader 4程序端副本时,以备不时之需。这种数据文件夹与安装文件夹分离的程序端工作类型是主要模式。为了更多的便利,每次启动程序端时,程序端日志中有包含数据文件夹的路径的条目。例如:2014.02.10 12:48:28.477 数据文件夹: C:UsersJohnSmithAppDataRoamingmetaQuotesTerminal9F86138A4E27C7218E9EC98A5F8D8CA1
当更新到metaTrader 4 Build 600及以上时复制MQL4应用程序文件
当新更新的程序端启动后,它会检查数据文件夹是否存在。如果数据文件夹不存在,那么它会被创建。如果该文件夹不同于安装文件夹,程序端的常规数据(标准MQL4程序,历史数据,配置文件,模板等)会复制到其中。程序端操作过程中不会更改的文件(可执行文件,mql.dll编译器,声音文件等)都保留在了安装目录。在以下情况下程序端数据文件夹不同于安装文件夹:UAC系统处于开启状态。当程序端被安装在便携设备上(外接硬盘,USB闪存驱动器等)的除外。当前PC用户将数据写入到安装目录权限有限。用户通过远程连接(RDP)工作。
如果上述条件没有得到满足,程序端数据会存储在安装目录。
那么,用户文件会移动到数据文件夹。在此阶段,确定程序端的用户数据存储的目录。如果数据已经被存储在程序端的安装文件夹,它们按如下方式被复制:[td]在安装目录下的源文件夹内容在程序端数据目录的目标文件夹expertsEA交易(自动交易)
注释: 只复制来自根目录 experts的文件。不复制子目录,因为不能可靠地确定它们的内容MQL4Expertsexpertsindicators自定义指标MQL4Indicatorsexpertsscripts脚本(图表上单次运行的MQL4应用程序)MQL4scriptsexpertsinclude源代码MQH和MQ4 文件实施到其他程序MQL4IncludeexpertslibrariesMQ4 源代码格式的程序库和由此编译的EX4可执行文件。它们用于动态调用包含在其他MQL4程序的函数MQL4Librariesexperts iles特殊的“文件沙箱”。MQL4 应用程序只允许在该目录下执行文件操作。MQL4FilesexpertslogsMQL4应用程序的日志文件MQL4LogsexpertspresetsMQL4应用程序的预置文件MQL4Presetsexpertsimages资源中正在使用的图像文件MQL4Images
接着,检查该客户端是否已经将数据存储在虚拟目录(上述的操作系统的虚拟存储)。如果程序端已经安装在Program Files目录而操作系统是Windows Vista或更高时,程序端数据最有可能存储在该目录中。如果找到该数据,根据上表复制。该文件被复制并在迁移过程中不会移动。复制的文件从源文件夹不会被删除。
在迁移过程中,包含复制文件的源路径和目标路径条目在程序端的日志中完成。若要查看所有日志,则打开程序端窗口的日志选项卡,并在上下文菜单中执行打开命令。包含程序端日志文件的文件夹将被打开。
如果对当前程序端的副本迁移已成功完成,那么它就不用在后续的metaTrader 4程序端更新重复了。如果数据文件夹不同于安装文件夹,并且在迁移过程中自定义MQL4应用程序连同标准的文件已一起复制,那么会出现以下对话框:
便携模 式
便携式启动模式提供用于便携式设备和非系统目录的程序端操作,以及在Windows XP中的工作。在此模式下启动时,程序端尝试在安装文件夹保存其数据。然而,使用便携模式并不能保证操作系统将允许在安装文件夹存储数据(例如,如果程序端是安装在Program Files目录而UAC系统已启用)。便携模式工作应该满足下列情况:
安装目录操作系统要求Program Files或其他系统目录(例如,Windows)Windows XP写入到安装文件夹的权限另一个非系统目录Windows XP写入到安装文件夹的权限外部硬盘驱动器,USB闪存驱动器等。Windows XP将始终以便携模式启动程序端。Program Files或其他系统目录(例如,Windows)Windows VistaWindows 7作为管理员启动程序端并禁用UAC另一个非系统目录Windows VistaWindows 7写入到安装文件夹的权限外部硬盘驱动器,USB闪存驱动器等。Windows VistaWindows 7将始终以便携模式启动程序端。Program Files或其他系统目录(例如,Windows)Windows 8及以上不可能使用便携模式,因为UAC系统不能被禁用另一个非系统目录Windows 8及以上写入到安装文件夹的权限外部硬盘驱动器,USB闪存驱动器等。Windows 8及以上将始终以便携模式启动程序端。
如果您使用Windows Vista或以上系统,并且程序端被安装在Program Files,则不推荐您使用便携模式。此模式提供用于便携设备和Windows XP的程序端操作。如果您已经更新了程序端,所有的数据已被复制到一个单独的用户数据文件夹,也不推荐切换到便携模式。在复制用户数据文件夹中的数据后,您应该手动将数据复制到安装文件夹,以便使用便携模式。在便携模式启动程序端不会从数据文件夹复制到安装文件夹。
为了在便携模式下启动程序端,使用 /portable 键。为了更加方便,您可以在桌面上创建一个相应名称的额外程序端启动快捷方式,并添加直接到快捷方式的密钥:
结论
metaTrader 4程序端数据存储系统已经作出变化,以符合由微软开发的Windows操作系统的要求。这个数据存储系统本来已经在metaTrader 5实施,目前许多交易者们在成功地使用它。metaTrader 4程序端数据被自动传送到用户目录。大多数情况下无需用户的其他操作。有关复制操作的所有数据信息显示在metaTrader 4日志中。

外汇交易有很大的风险性,本站所有资源均来自网络,请选择使用,如若出现亏损,本站不承担任何责任!


特别提示:本信息由相关企业自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


0相关评论
相关行情
推荐行情
点击排行