文章 "应用网络函数,或无需 DLL 的 MySQL:第 II 部分 - 监视信号属性变化的程序" - 页 3

 
leonerd #:

在一个正在运行的实例(旧版 mysql)上,我时不时会遇到这种情况:

Here on data[ptr]:

到目前为止,我根本无法连接到 MySQL 8.0.23(错误 1045:"用户拒绝访问......")。

正在想办法。

关于第 (367, 37) 行的错误 - 很奇怪。你应该在那里设置一个断点检查,并查看变量的值。我的这个程序库昼夜不停地工作,不是第一年了,每 30 秒请求一次(时间不短,有数据)。它从未崩溃过一次。我真希望知道是什么查询导致了崩溃。

 
Я пока что вообще не смог подключиться к MySQL 8.0.23 (ошибка 1045: "access denied for user ... ").
从图形用户界面?
 

По поводу ошибки в строке (367, 37) - странно. Поставить бы там проверку с брейкпойнтом, посмотреть на значения переменных. У меня эта библиотека работает круглосуточно не первый год, запросы каждые 30 секунд (не короткие, с данными). И ни разу не падала. Знать бы, какой запрос её сносит.



不易复制。
 

当我在 EA 的 OnDeInit 中进行查询时,mySql 返回POINTER_INVALID,但当我在 OnInit 函数中执行相同代码时,它却能正常工作,有人知道这可能是什么原因吗?

 
Vinicius Oliveira POINTER_INVALID,但当我在 OnInit 函数中执行相同代码时,它却能正常工作,有人知道这可能是什么原因吗?
请在调试器中运行代码,并告诉我们错误发生在哪个函数中。
 
Serhii Shevchuk #:
请在调试器中运行代码,并告诉我们错误发生在哪个函数中

错误的可能位置


显然,错误可能发生在这里。在MySQLTransaction.mqh 文件中的"bool CMySQLTransaction::Query(string q)"函数中

 
2022.02.19 13:09:10.266      array out of range in 'MySQLTransaction.mqh' (471,11)


 

2022.02.19 13:22:44.346 'MySQLTransaction.mqh' 中的数组超出范围(501,11)



 

2022.02.19 14:24:31.882         CMySQLTransaction::PacketDataHandler: m_responses=1
2022.02.19 14:24:31.882         array out of range in 'MySQLTransaction.mqh' (502,11)

 

下面是日志中关于数组大小的 更多信息。总的来说,在某个地方它没有正确改变,或者 m_responses 是错误的....。

2022.02.19 14:28:59.455         CMySQLTransaction::PacketDataHandler: m_responses=1
2022.02.19 14:28:59.455         CMySQLTransaction::PacketDataHandler: m_rbuf size=1
2022.02.19 14:28:59.455         array out of range in 'MySQLTransaction.mqh' (503,11)


如果有必要,我让数组手动扩展到 m_responses+1。