错误、漏洞、问题 - 页 427 1...420421422423424425426427428429430431432433434...3184 新评论 Alexander Puzikov 2011.06.19 20:52 #4261 uncleVic:获取EMPTY_VALUE,因为如果文件没有打开,我们会返回它。如果得到0.0更方便,就返回0.0。而且我需要归还一些东西。读取一个没有打开的文件是不好的。关于开放性错误。这样写吧。下面是测试器的截图。在终点站也是如此吗?是的,在终端是相同的,并且错误这是它说的。文件大小为20mb,约250万个数值。在测试的最开始,在开放期间有20次成功。在测试开始时,大约20次当我打开文件时,它成功地得到了我想要的值,然后错误5004不断出现--文件无法打开。我试着用2mb的大约400k的值--它打开了,但没有人愿意得到更多,我看了看数据任务管理器,2.5GB的内存足够了。(又有500MB免费的!) Alexander Puzikov 2011.06.19 21:19 #4262 CODE POLTERGHEIST已经在我的电脑上启动了,如果之前它没有打开一个 20mb的文件。目前,有一个38MB的开放文件的测试,有550万个值(2005年的数据)。但自2001年以来--大约10百万的价值,并且大小低于65兆,它不会打开。这很有趣--也不清楚为什么? Документация по MQL5: Файловые операции / FileOpen www.mql5.com Файловые операции / FileOpen - Документация по MQL5 [删除] 2011.06.20 00:05 #4263 Renat: 不幸的是,没有什么能对指定的卡片有所帮助了。如果是笔记本电脑,情况就没有希望了。否则,只要花1000-1500卢布,就可以买到一块相当强大的显卡,可以消除所有的性能问题。因此,告诉我mt4 (mt5)通过DirectX 2D加速工作或什么 ...?上述哪些参数对矢量图形加速很重要......或全部?还有一个问题...嵌入在处理器中的HD2000的驱动程序,官方不支持 Windows Server 2008 r2 SP1 64位,----。 但只有Vista和7ka 64位 ....这种不完整的兼容性可能有一些影响...?(尽管驱动程序已经启动,工作甚至在高清游戏中运行...)2.在Windows Server 2008 r2 SP1 64bit上具有2D视频硬件兼容性的mt4/mt5平台如何?选择哪个厂家最好...辐射学...nVidia ?对MT4/MT5进行的任何速度和适配器兼容性测试 ....?谢谢。 Aleksandr Chugunov 2011.06.20 05:06 #4264 Im_hungry:是的,在终端中也是如此,并且出现了错误,这就是它所说的。文件大小为20mb,约250万个值在测试开始时,大约有20次在开场时有可能在测试的开始阶段,打开文件大约20次是成功的,然后错误5004不断出现--文件无法打开。我试着用2mb.大约40万个值--它打开了,但它不会打开更大的,我看了看数据任务管理器,2.5GB的内存足够了(还有500MB的空闲!)。(又有500MB免费的!)我没读多少,但突出显示的文字引起了我的注意......你在关闭文件吗?你完全正确地处理了它的描述符吗? Victor Kirillin 2011.06.20 07:34 #4265 AlexSTAL:我没读多少,但突出显示的文字引起了我的注意......你在关闭文件吗?一般来说,正确处理其描述符?这个逻辑(从给出的代码判断)几乎是正确的。除了它在检查句柄后进行读写(然后也关闭文件)。我认为这里的问题是不同的。1.指标在每个tick上打开文件,写入数据,关闭文件。2.专家顾问(我认为是在每个tick上)打开文件,读取数据,关闭文件。由于它发生在不同的流程中,文件的大小越大,打开的文件被指标打开的可能性就越大。由于 没有使用 开放标志FILE_SHARE_READ ,所以会有一些后果。在我看来,对问题的处理可以如下。1) 在OnInit中用 FILE_SHARE_READ标志打开文件(包括在指标和专家顾问中) 。2.写完后在指标中调用 FileFlush(handle)。3.在OnDeinit中关闭该文件。像这样。 Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов www.mql5.com Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов - Документация по MQL5 Renat Fatkhullin 2011.06.20 08:31 #4266 tester_el_pro:因此,告诉我mt4 (mt5)通过DirectX 2D加速工作或什么 ...?终端使用正常的Windows GDI,需要一个2D加速器。在选择卡片时,获得任何外部的3D,即使是最低的价格水平 - 它将是足够的。 而且你不必比较基本的显卡能力点。 Alexander Puzikov 2011.06.20 14:51 #4267 uncleVic:这个逻辑(从给出的代码来看)几乎是正确的。除了它在检查句柄后进行读写(然后也关闭文件)。在我看来,解决问题的方法可以是这样的。1.在OnInit中用 FILE_SHARE_READ标志打开文件(包括在指标和专家顾问中) 。2.写完后在指标中调用 FileFlush(handle)。3.在OnDeinit中关闭该文件。像这样。谢谢你在未来的实时使用中这样做我将在未来使用您的建议来处理专家顾问和指标的文件。 Alexander Puzikov 2011.06.20 14:52 #4268 AlexSTAL:我没读多少,但突出显示的文字引起了我的注意......你会关闭文件吗?你对描述符的处理完全正确吗? 是的,当然--它看到了文件,但由于打开错误5004而不想读它。 Alexander Puzikov 2011.06.20 14:53 #4269 uncleVic:这个逻辑(从给出的代码判断)几乎是正确的。除了它在检查句柄后进行读写(然后也关闭文件)。我认为这里的问题是不同的。1.指标在每个tick上打开文件,写入数据,关闭文件。2.专家顾问(我认为是在每个tick上)打开文件,读取数据,关闭文件。由于它发生在不同的流程中,文件的大小越大,打开的文件被指标打开的可能性就越大。由于 没有使用 开放标志FILE_SHARE_READ ,所以会有一些后果。在我看来,对问题的处理可以如下。1) 在OnInit中用 FILE_SHARE_READ标志打开文件(包括在指标和专家顾问中) 。2.写完后在指标中调用 FileFlush(handle)。3.在OnDeinit中关闭该文件。大约如此。对不起,指标的工作是不同的。1.在终端测试之前,我运行指标2.它保存了每个条形的时间和它的相关值3.我把文件放在测试者文件夹中,它应该是C:{Program Files\MetaTrader 5\tester\Agent-127.0.0.1-3000\MQL5\Files。4.我启动了一个专家顾问,它通过打开条形图来工作 - 自2005年以来,它读取了所有记录的数据它读取了(38Mb),但自2002年以来,它没有读取(67Mb)。 Alexander Puzikov 2011.06.20 18:10 #4270 试图在同一工具中记录相同的内容,但在mt4中。我把bin文件转移到mt5的测试文件夹中 - 没有任何文件它不能打开--错误5004,在MT5中它仍然可以打开一些东西。我在MT4指标中实现了数据记录(所有数据都正确写入),具体如下。 Corr = GetCorrelation(); Pos = iBarShift(Symbol(), Period(), Times[CurrPos]); Buffer[Pos] = NormalizeDouble(Corr,3); //------ datetime bar2 = iTime(Symbol1, 0, Pos); Print("Buffer[Pos]...",Buffer[Pos],"...bar2...",bar2); handle= FileOpen("kor.bin", FILE_BIN|FILE_READ|FILE_WRITE, ";"); if(handle<1) Print("can't open file error-",GetLastError()); if (handle>=1) { FileSeek(handle,0,SEEK_END); FileWriteDouble(handle,bar2,DOUBLE_VALUE); FileSeek(handle,0,SEEK_END); FileWriteDouble(handle,Buffer[Pos],DOUBLE_VALUE); FileClose(handle); } //------ CurrPos++;但在mt5中由EA读取的数据仍然是一样的。double proverka() { if (FileIsExist("kor.bin",0)==true) Print("ФАЙЛ ОБНАРУЖЕН = ..."); handle= FileOpen("kor.bin", FILE_BIN|FILE_READ); if(handle < 0) Print("-----Неоткрывается :- Почему? Потому что произошла ошибка ",GetLastError()); ulong file=FileSize(handle); ulong N = 0.0; double kor = 0.0; datetime bar[1]; CopyTime(Symbol_1,NULL,0,1,bar); ulong New = (ulong) bar[0]; while (N < file) { kor=FileReadDouble(handle); N = FileTell(handle); //Print("1...kor=",kor,"N=",N,"file=",file,"New=",New); if (kor == New) { double ss = FileReadDouble(handle); FileClose(handle); Print("2...ss=",ss); return (ss); break; } if (New < kor) { Print ("New=",New,"kor=",kor); return (0.0); break; } } Print("ВСЕЕЕЕЕЕ",kor); FileClose(handle); return (kor); } //=mt5中的EA有可能打开 mt4中创建的文件 吗? 1...420421422423424425426427428429430431432433434...3184 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
获取EMPTY_VALUE,因为如果文件没有打开,我们会返回它。如果得到0.0更方便,就返回0.0。
而且我需要归还一些东西。读取一个没有打开的文件是不好的。
关于开放性错误。这样写吧。
下面是测试器的截图。在终点站也是如此吗?
是的,在终端是相同的,并且错误这是它说的。
文件大小为20mb,约250万个数值。
在测试的最开始,在开放期间有20次成功。
在测试开始时,大约20次当我打开文件时,它成功地得到了我想要的值,然后错误5004不断出现--文件无法打开。
我试着用2mb的大约400k的值--它打开了,但没有人愿意得到更多,我看了看数据
任务管理器,2.5GB的内存足够了。(又有500MB免费的!)
CODE POLTERGHEIST已经在我的电脑上启动了,如果之前它没有打开一个 20mb的文件。
目前,有一个38MB的开放文件的测试,有550万个值(2005年的数据)。
但自2001年以来--大约10百万的价值,并且大小低于65兆,它不会打开。这很有趣--也不清楚为什么?
不幸的是,没有什么能对指定的卡片有所帮助了。如果是笔记本电脑,情况就没有希望了。否则,只要花1000-1500卢布,就可以买到一块相当强大的显卡,可以消除所有的性能问题。
因此,告诉我mt4 (mt5)通过DirectX 2D加速工作或什么 ...?
上述哪些参数对矢量图形加速很重要......或全部?
还有一个问题...嵌入在处理器中的HD2000的驱动程序,官方不支持 Windows Server 2008 r2 SP1 64位,----。
但只有Vista和7ka 64位 ....
这种不完整的兼容性可能有一些影响...?
(尽管驱动程序已经启动,工作甚至在高清游戏中运行...)
2.在Windows Server 2008 r2 SP1 64bit上具有2D视频硬件兼容性的mt4/mt5平台如何?
选择哪个厂家最好...辐射学...nVidia ?
对MT4/MT5进行的任何速度和适配器兼容性测试 ....?
谢谢。
是的,在终端中也是如此,并且出现了错误,这就是它所说的。
文件大小为20mb,约250万个值
在测试开始时,大约有20次在开场时有可能
在测试的开始阶段,打开文件大约20次是成功的,然后错误5004不断出现--文件无法打开。
我试着用2mb.大约40万个值--它打开了,但它不会打开更大的,我看了看数据
任务管理器,2.5GB的内存足够了(还有500MB的空闲!)。(又有500MB免费的!)
我没读多少,但突出显示的文字引起了我的注意......你在关闭文件吗?
你完全正确地处理了它的描述符吗?
我没读多少,但突出显示的文字引起了我的注意......你在关闭文件吗?
一般来说,正确处理其描述符?
这个逻辑(从给出的代码判断)几乎是正确的。除了它在检查句柄后进行读写(然后也关闭文件)。
我认为这里的问题是不同的。
1.指标在每个tick上打开文件,写入数据,关闭文件。
2.专家顾问(我认为是在每个tick上)打开文件,读取数据,关闭文件。
由于它发生在不同的流程中,文件的大小越大,打开的文件被指标打开的可能性就越大。由于 没有使用 开放标志FILE_SHARE_READ ,所以会有一些后果。
在我看来,对问题的处理可以如下。
1) 在OnInit中用 FILE_SHARE_READ标志打开文件(包括在指标和专家顾问中) 。
2.写完后在指标中调用 FileFlush(handle)。
3.在OnDeinit中关闭该文件。
像这样。
因此,告诉我mt4 (mt5)通过DirectX 2D加速工作或什么 ...?
终端使用正常的Windows GDI,需要一个2D加速器。
在选择卡片时,获得任何外部的3D,即使是最低的价格水平 - 它将是足够的。
而且你不必比较基本的显卡能力点。
这个逻辑(从给出的代码来看)几乎是正确的。除了它在检查句柄后进行读写(然后也关闭文件)。
在我看来,解决问题的方法可以是这样的。
1.在OnInit中用 FILE_SHARE_READ标志打开文件(包括在指标和专家顾问中) 。
2.写完后在指标中调用 FileFlush(handle)。
3.在OnDeinit中关闭该文件。
像这样。
谢谢你在未来的实时使用中这样做
我将在未来使用您的建议来处理专家顾问和指标的文件。
我没读多少,但突出显示的文字引起了我的注意......你会关闭文件吗?
你对描述符的处理完全正确吗?
这个逻辑(从给出的代码判断)几乎是正确的。除了它在检查句柄后进行读写(然后也关闭文件)。
我认为这里的问题是不同的。
1.指标在每个tick上打开文件,写入数据,关闭文件。
2.专家顾问(我认为是在每个tick上)打开文件,读取数据,关闭文件。
由于它发生在不同的流程中,文件的大小越大,打开的文件被指标打开的可能性就越大。由于 没有使用 开放标志FILE_SHARE_READ ,所以会有一些后果。
在我看来,对问题的处理可以如下。
1) 在OnInit中用 FILE_SHARE_READ标志打开文件(包括在指标和专家顾问中) 。
2.写完后在指标中调用 FileFlush(handle)。
3.在OnDeinit中关闭该文件。
大约如此。
对不起,指标的工作是不同的。
1.在终端测试之前,我运行指标
2.它保存了每个条形的时间和它的相关值
3.我把文件放在测试者文件夹中,它应该是C:{Program Files\MetaTrader 5\tester\Agent-127.0.0.1-3000\MQL5\Files。
4.我启动了一个专家顾问,它通过打开条形图来工作 - 自2005年以来,它读取了所有记录的数据
它读取了(38Mb),但自2002年以来,它没有读取(67Mb)。
试图在同一工具中记录相同的内容,但在mt4中。
我把bin文件转移到mt5的测试文件夹中 - 没有任何文件
它不能打开--错误5004,在MT5中它仍然可以打开一些东西。
我在MT4指标中实现了数据记录(所有数据都正确写入),具体如下。
但在mt5中由EA读取的数据仍然是一样的。
mt5中的EA有可能打开 mt4中创建的文件 吗?