powered by simpleCommunicator - 2.0.58     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Проблема MySQL и Visual C++ 6.0
7 сообщений из 7, страница 1 из 1
Проблема MySQL и Visual C++ 6.0
    #32382428
KILLI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопросы:

Если кто-нибудь работал в MySQL из Visual C++, то как вы их соеденили?
Как подключить mysql.h к проге? Если просто инклудом, то он находит в нем кучу ошибок типа

c:\mysql\include\mysql_com.h(116) : error C2146: syntax error : missing ';' before identifier 'fd'
c:\mysql\include\mysql_com.h(116) : error C2501: 'SOCKET' : missing storage-class or type specifiers
c:\mysql\include\mysql_com.h(116) : error C2501: 'fd' : missing storage-class or type specifiers
c:\mysql\include\mysql_com.h(180) : error C2065: 'SOCKET' : undeclared identifier
c:\mysql\include\mysql_com.h(180) : error C2146: syntax error : missing ')' before identifier 's'
c:\mysql\include\mysql_com.h(181) : error C2059: syntax error : ')'


Чего я только не делал, все бесполезно... Может кто сталкивался с этой проблемой, помогите плз!!!
...
Рейтинг: 0 / 0
Проблема MySQL и Visual C++ 6.0
    #32382637
MySQLdb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как использовать базу данных MySQL в своей программе ?
Если на С++ и Visual Studio 6.0, то указываеш в пути к библиотекам libMySql.lib , ложиш заголовочные файлы из поставки MySQL в директорию заголовочных фалов твоего компилятора, libmysql.dll в системный каталог Windows. И пользуешся функциями API MySQL, которые подробнейшим образом описаны в поставляемой вместе с сервером документации.

Либо давай я тебе так спою:......................................

Подключаеш к проекту libMySql.lib, ложиш заголовочные файлы из поставки MySQL в директорию заголовочных файлов своего компилятора, либо в каталог с программой, либо вообще куда душе угодно (лишь бы сами их не потерял), libmysql.dll в каталог с программой, и пользуешся функциями API MySQL, которые подробнейшим образом описаны в поставляемой вместе с сервером документацией. libmysql.lib и libmysql.dll берутся после установки дистрибутива MySQL в каталоге lib\opt.
libmysql.lib ОБЯЗАТЕЛЬНО должен работать с libmysql.dll ТОЙ ЖЕ поставки/версии. По этой причине НАСТОЯТЕЛЬНО НЕ рекомендую хранить libmysql.dll в системном каталоге WINDOWS! Храни свою libmysql.dll в каталоге со своей программой.
Для C++ Builder получить libmysql.lib нужно импортом из libmysql.dll:

> implib libmysql.lib libmysql.dll

Из заголовочных файлов требует:
mysql.h
mysql_com.h
mysql_version.h
В последних версиях ещё и my_alloc.h
Всё это добро берётся после установки дистрибутива MySQL в каталоге include.

Из всех в программе подключается только mysql.h. Перед ним обязательно должно быть подключен windows.h
#include <windows.h>
#include <mysql.h>

Особенности Билдеровского VCL: В программах, использующих VCL, компилятор ругается на my_socket, объявленную в mysql.h как
#define my_socket SOCKET.
Заменяем на
#define my_socket UINT_PTR
и всё работает.
(SOCKET в winsock.h объявлен как typedef UINT_PTR SOCKET).

Пробуй..............

/MySQLdb/
...
Рейтинг: 0 / 0
Проблема MySQL и Visual C++ 6.0
    #32383458
KILLI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Понимаешь тут проблема такого рода: если я пишу все ручками, то все пашет без проблем. Но я хочу писать прогу с использованием MFC, которая и будет работать с MySQL. Как только я генерирую пустой проект (MFC AppWizard), подключаю libmysql.lib инклюдю mysql.h (я просто прописал в инклудах визуала путь c:\mysql\include, так проще - не надо ничего никуда сбрасывать), так сразу и появляются эти дибильные ошибки. Повторюсь, когда писал ручками (причем полностью) прогу на API, все работало. Но полностью API меня не устраивает, т.к. я пишу диплом - а тут без MFC никуда.

Когда генерировал, windows.h не подключал (он там автоматом прописан), потом попробовал и его подключить - ничего не изменилось.

mysql.h был подключен в заголовочном файле диалога (там где описание класса диалога)

Вот такие пироги...
...
Рейтинг: 0 / 0
Проблема MySQL и Visual C++ 6.0
    #32383583
MySQLdb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я пока дорос все делать ручками через API,
иначе пока не умею.................................
Буду рад, если Вы поделитесь своим способом, буду вам признателен....


/MySQLdb/
...
Рейтинг: 0 / 0
Проблема MySQL и Visual C++ 6.0
    #32383820
KILLI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все я его победил...
Оказалось надо было подключить еще winsock2.h

На счет API - просто с MFC быстрее и компактнее работать, хотя и чуть медленнее работает сама прога. Там нету этого громадного switch в оконной процедуре. В тоже время при использовании MFC - API тоже доступен в полной мере (я как правило их совмещаю...)

Еще вопрос!
Где можно найти мануал по функциям MySQL API (можно на русском)?
Буду очень благодарен за ссылочку!
...
Рейтинг: 0 / 0
Проблема MySQL и Visual C++ 6.0
    #32385845
MySQLdb
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://www.mysql.com в разделе документации...........
http://www.mysql.ru в разделе документации...........

Да, можно еще вопрос: а что такое MFC ????
я в основном работаю с Delphi & Builder, а с VC ++ еще не работал.....
Это выглядит как windows форточка в конечном компаиле, или как
win32 console application ??????

/MySQLdb/
...
Рейтинг: 0 / 0
Проблема MySQL и Visual C++ 6.0
    #32386962
KILLI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MFC - Mircosoft Foundation Classes. Классы полностью созданы на основе API и заточенные для использования в Visual'е. Это на подобии VCL в Delphi и Builder'е, тока немного по другому и немного сложнее.
Объясню на примере: в API ты работаешь с файлом, через функции (наподобии юзания ресурса), а в MFC - файл это уже класс (читай объектно-ориентированное программирование), тоже самое и с кнопками - в API это компоненты (описываются в ресурсах), а в MFC - классы.

Схожесть их с VCL в том, что при двойном клике на кнопке, переходишь в функцию-обработчик нажатия на кнопку. На этом схожесть собственно говоря и заканчивается. Там нету как в VCL обжект манагера, в котором можно поменять (настроить) настройки VCL.

На счет платформы: где хочешь, там и используешь. Хочешь использовать в консоле - полжалуйста (там при создании консольного проекта спрашивает хочешь ли ты использовать MFC), но в основном, конечно же это для Windows-приложений.

Огромный плюс MFC - это MSDN. По-русски - хелп майкрософтовский, где можно найти все...

В общем, вещь неплохая. Но для начала юзания нужен хороший учебник (не столько хороший, сколько грамотный).
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Проблема MySQL и Visual C++ 6.0
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]