讨论 "如何在10分钟内为MQL5编写一个DLL并交换数据"。 - 页 12

 
Seric29:


那么你能告诉我它是如何工作的吗?

#include <ctime>
而__time64_t是一种数据类型,与datetime相同。
 
Ihor Herasko:
而__time64_t是一种数据类型,与datetime相同。

所以你必须连接#include<ctime>并 在每个变量前面写上__time64_t ?

 

总之,伙计们,它的工作方式是这样的

#include <iostream>
#include <ctime>

#define _DLLAPI extern "C" __declspec(dllexport)
_DLLAPI __time64_t __stdcall Data_t(){return 3600;}
//результат вычисления 1970.01.01 00:00:00 + количество секунд(return 3600)
//получается 1970.01.01 01:00:00
 
Ihor Herasko:

Print()是一个仅在mql4和mql5中可用的函数。它不能被直接替换,因为它的输出设备是终端的一个日志文件。但它可以被间接调用,如果你向专家顾问(指标,脚本)发送相应的命令,该dll被连接到该顾问。这取决于dll和专家顾问之间的数据交换是如何实现的。

另外,如果有一个打印东西的任务,不一定是在终端的日记中,有很多可能性:文件、打印机、显示器,毕竟。

哎呀,你错了!

 
Алексей Тарабанов:

哎呀,你错了!

我试着从c++那边打印材料到控制台,但在程序运行 时,控制台没有打开,也许不是一切都像看起来那么简单,至于打印到文件,我知道你需要写一个函数来创建文件,并将数据输入其中,这个选项还没有尝试过,对文件还没有一点认识。

如果有人这样做了,请告诉我是否可以将dll中的信息打印到文件中以搜索无效的值。

如何用色彩和弦乐工作。我读到wchar_t 是用于字符串的,但如果在函数里面写上这样的表达式

_DLLAPI void fnReplaceString(wchar_t *text,wchar_t *from,wchar_t *to)
  {
   wchar_t Text1="Text1";//не работает значит для строк wchar_t 
//не подходит

  }