Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Встроенный embedded сервер, (hell_admin) 25/02/2006 - 16:00:10
      Re: Встроенный embedded сервер, (Alexx) 05/03/2006 - 13:44:33
      Re: Встроенный embedded сервер, (Alexx) 05/03/2006 - 13:45:24

> Original message text:
> From: hell_admin - 25/02/2006 - 16:00:10
> Subject:Встроенный embedded сервер,
> -----------------
> Не как не могу разабратся, в библиотеках для работы с MySQL, скачал версию 4.1.13 покапался в документации, под VC++ скомпилировал даже клиентский проект с libmysql.lib.
>
> Но мне надо использовать встроенный сервер. В документации это libmysqld. Но в полной инсталяции я не нашел в директории MySQL ничего что мне нужно там есть:
>
> 1.
> Mysql\lib\libmysql.lib
> Mysql\lib\libmysql.dll
> Mysql\lib\mysqlclient.lib
>
> 2.
> Mysql\embedded\DLL\libmysqld.dll
> Mysql\embedded\DLL\libmysqld.lib
> Mysql\embedded\DLL\libmysqld.exp
>
> 3.
> Myqsl\embedded\static\mysqlserver.lib
>
> Я так понял что 1. это просто клиентская библиотека.
>
> 2 - это динамическая библиотека встроенного сервера, которую нужно грузить с ImportLibrary, но тогда зачем там .lib и .exp файлы?
>
> 3. Это статическая библиотека встроенного сервера,
> в доке по MySQL как раз говорится что лучше юзать статические библиотеки с с++ builder.
>
> Подключаю 3 библиотеку, при линковке выдает
> invalid OMF...
>
> [CODE]
> MYSQLSERVER.LIB' contains invalid OMF record, type 0x21 (possibly COFF)
> [/CODE]
>
> хорошо нашел что нужно сначала преобразовать, использую тулзу coof2omf которая идет с борландом
>
> [CODE]
> coof2omf mysqlserver.lib mysqld.lib
> [/CODE]
>
> получаю файл размером 12!!! килобайт, хотя исходный файл 10метров? Думаю вряд ли это она..
>
> пробую вариант 2 добавляю к проекту libmysqld.lib, там та же тема с OMF опять с помощью той же утилиты преобразую .lib файл добавляю его к проекту.. все компилится.
>
> Нафиг нужен .exp файл?
>
> Как только пытаюсь вызвать какуюнить функцию, то при запуске програмы выбрасывает в отладчик причем в ассемблер.
>
> Ставлю брейк перед первой вызываемой функцией. До него даже не доходит. Т.е. при самом запуске вылетает.
>
> Ничерта не пойму что нужно подключать, и как.
>
> вот исходник:
>
> [CODE]
>
> static char *server_args[] = {
> "this_program", /* this string is not used */
> "--datadir=./data",
> "--key_buffer_size=32M"
> };
>
> static char *server_groups[] = {
> "embedded",
> "server",
> "this_program_SERVER",
> (char *)NULL
> };
>
> void somefunct()
> {
> MYSQL * mysql;
> MYSQL_RES * result;
> MYSQL_ROW row;
>
> if (mysql_server_init(sizeof(server_args)/sizeof(char *),server_args, server_groups))
> ShowMessage("Error on init");
>
> if(mysql = mysql_init(NULL))
> ShowMessage("Can't init ");
> mysql_server_end();
> }
> [/CODE]
>
> Зарание спасибо, очень надо просто.
>


From: Alexx - 05/03/2006 - 13:45:24
Subject:Встроенный embedded сервер,
-----------------
Заодно вместе и разберемся :)


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
26808



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |