Новости
Документация
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



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]

Зарание спасибо, очень надо просто.


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

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

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



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