vb6 — C API — встроенный сервер MySQL — ошибка утверждения

#mysql #vb6

#mysql #vb6

Вопрос:

Согласно документации, в то время как нравится libmysqld.dll после вызова функции через vb6 сначала mysql_server_init, а затем вызова mysql_init

  argv = {
           "test",
           "--datadir=" amp; Replace(App.Path, "", "/") amp; "/sql/data",
           "--basedir=" amp; Replace(App.Path, "", "/") amp; "/sql",
           "--no-defaults",
           "--skip-networking"
       }     

  groups   = {
                "embedded",
                "server",
                "test_SERVER"
             }

 if mysql_server_init ( argc , argv , groups ) then
       mysql = mysql_init(0)   <==  Causing problem [ pic error message]
 else
     MsgBox "Init not Done".
 end if
  

Версия MySQL: 5.1.32

libmysqld.dll [Debug] — выдает следующее сообщение

libmysqld.dll [выпуск] — Сбой без сообщения об ошибке

Публичная функция объявления mysql_init Lib «libmySQLd» (обычно lMYSQL до тех пор) до тех пор, пока

Ошибка утверждения не удалась

Комментарии:

1. Как mysql_init объявляется?

2. @GSerg добавлен как

3. Кажется правильным и должно работать 0 . Что не должно работать, так это вызов mysql_server_init , по крайней мере, потому, что он возвращает ненулевое значение для сбоя, и вы обрабатываете этот случай как успех (и вам вообще не нужно его вызывать, потому что он устарел в пользу mysql_library_init , который вызывается по mysql_init мере необходимости).

4. @gserg в версии 5.1.32 mysql_library_init недоступен, и, кроме того, ошибка log.cc ошибка утверждения, которую я не понимаю, почему показывает