Валерий, Красноярск
23.1.2012, 19:39
Проблема в следующем:
Написал клиент-серверное кроссплатформенное приложение с использованием QtSql. Сервер на линухе, клиент на винде. На линухе все работает прекрасно, на винде7 пока не знаю - не было возможности протестировать, знаю только, что базу данных создает, а вот когда попытался запустить клиент на ХР, то он не смог создать базу данных. Все нужные библиотеки положил рядом с ехе-шником, иначе не заработало бы, больше даже не предположу, в чем может быть проблема. Кто-нибудь подскажет??
Ошибки хоть какие выводятся?
Вывод ошибок для того и существует, чтобы сообщать, что произошло та или иноя бяка...
Валерий красноярск
27.1.2012, 20:22
Цитата(ViGOur @ 23.1.2012, 22:16)
Ошибки хоть какие выводятся?
Вывод ошибок для того и существует, чтобы сообщать, что произошло та или иноя бяка...
Пишет, что не может подключиться к драйверу, теперь вопрос, получается, в следующем:
Как эти драйвера поставить, явно они немного весят, мне для распространения ПО нужно..
Валерий Красноярск
5.2.2012, 12:28
Решил проблему. Оказалось, что не работает все это дело на тех машинах, где не установлены драйверы SQL, например, если SQL server виндовсовский поставить, то должно заработать, не проверял. Просто в PATH-е нет нужных деректив, вот он и не может ничего найти. Кроме PATH-а, ехе-шник ищет драйверы в своей папке, а именно в поддирективе sqldrivers. Таким образом, нужно рядом с ехе-шником кинуть папку sqldrivers, а в нее закинуть драйвера. Лежат драйвера по адресу ...QtSDK\QtCreator\bin\sqldrivers . Правда по умолчанию QT ставит только sqlite , а если хотите использовать что-то другое, например, MySql, то нужно соответствующие библиотеки прикручивать. На сколько я помню, в платной версии QT все есть.
Цитата(Валерий Красноярск @ 5.2.2012, 15:28)
в PATH-е нет нужных деректив...
а именно в поддирективе sqldrivers.
не "дерективе", а директории (поддиректории и т.п.). "деректива" - такого слова нет вообще. есть дИректива, но это совсем другое, не относящееся к файловой системе: это команда или распоряжение, грубо говоря.