版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/MT4Develop/article/details/51251465
插件为dll格式,需要导出以下三个方法
DsCreate();
DsDestroy();
DsVersion();
主要是要在 DsCreate 方法返回一个MT4要求的CFeedInterface类的子类。
插件内部通过实现该类来提供相关数据源。
CFeedInterface声明如下
class CFeedInterface
{
public:
//---- virtual methods
virtual int Connect(LPCSTR server,LPCSTR login,LPCSTR password)=0;
virtual void Close(void) =0;
virtual void SetSymbols(LPCSTR symbols) =0;
virtual int Read(FeedData *data) =0;
virtual int Journal(char *buffer) =0;
//----
};
MT4服务端加载插件后,首先会调用Connect方法,并将管理端设置的插件参数传递进来,如下图中的服务器,登录名,密码会传到Connect
Connect返回TRUE则连接成功。
连接成功后MT4服务端会循环调用Read方法获取报价数据,插件只需要在Read方法中把报价数据填于FeedData结构中即可。