Delphi ищет файл базы данных в папке system32
Delphi ищет файл базы данных в папке system32
Утановлена Delphi 2009, на компьютер под управлением Windows 7.
В дизайн тайме вываливает вот такое сообщение:
В рантайме все нормально.
Суть проблемы заключается в том, что делфи начинает искать файл базы данных в папке system32, хотя если в пути к базе прописать только имя файла, должно искаться в папке с программой,
собсно на всех предыдущих версиях делфи было так. А вот тут почему то иначе все обстоит.
Такое сообщение вылетает и на айбииксах и фибах.
В дизайн тайме вываливает вот такое сообщение:
В рантайме все нормально.
Суть проблемы заключается в том, что делфи начинает искать файл базы данных в папке system32, хотя если в пути к базе прописать только имя файла, должно искаться в папке с программой,
собсно на всех предыдущих версиях делфи было так. А вот тут почему то иначе все обстоит.
Такое сообщение вылетает и на айбииксах и фибах.
Re: Delphi ищет файл базы данных в папке system32
с чего это Вы взяли? Вовсе не должно.хотя если в пути к базе прописать только имя файла, должно искаться в папке с программой,
чудовищное заблуждение.собсно на всех предыдущих версиях делфи было так.
а) никакие "версии Дельфи", или IBX/FIBPlus не имеют отношения к тому, как СУБД ищет файл БД. Это клиент-сервер, а не файл-сервер. Т.е. файл открывает сервер, и только сервер. Дельфи и прочее - это клиент. Который указывает серверу, какой файл открыть. Не указали путь - получите черт знает что, в зависимости от того, где установлен СЕРВЕР.
б) никогда, ни в InterBase, ни в Firebird, нельзя было указывать имя БД без пути.
Re: Delphi ищет файл базы данных в папке system32
Ну, как с чего взял, потому что всегда работало, даже сейчас после перезапуска компьютера первое соединение происходит так как надо, а потом, при реконекте, происходит ошибка.kdv писал(а):с чего это Вы взяли? Вовсе не должно.хотя если в пути к базе прописать только имя файла, должно искаться в папке с программой,
чудовищное заблуждение.собсно на всех предыдущих версиях делфи было так.
а) никакие "версии Дельфи", или IBX/FIBPlus не имеют отношения к тому, как СУБД ищет файл БД. Это клиент-сервер, а не файл-сервер. Т.е. файл открывает сервер, и только сервер. Дельфи и прочее - это клиент. Который указывает серверу, какой файл открыть. Не указали путь - получите черт знает что, в зависимости от того, где установлен СЕРВЕР.
б) никогда, ни в InterBase, ни в Firebird, нельзя было указывать имя БД без пути.
Re: Delphi ищет файл базы данных в папке system32
работало потому, что каталог по умолчанию после логина один, а стоит открыть какой-нибудь файл в другом каталоге, и каталог по умолчанию меняется.Ну, как с чего взял, потому что всегда работало
Короче, не разбираетесь - читайте ответы или ищите в гугле. Для IB и FB НИКОГДА не допускалось не указывать путь к базе. Потому что путь по умолчанию зависит от ОС и от действий, которые выполняются в ОС под конкретным аккаунтом.
Re: Delphi ищет файл базы данных в папке system32
да уяснил уже, забыл просто отписать, что в принципе глупая затея - не прописывать путь, тем более, что в реальных проектах база всегда отдельно от программы лежит.
А за пояснение почему все таки работало,отдельное спасибо. Действительно если проект открыть из папки работает и без прописывания пути. Но, как я уже сказал, делать так не стоит
А за пояснение почему все таки работало,отдельное спасибо. Действительно если проект открыть из папки работает и без прописывания пути. Но, как я уже сказал, делать так не стоит
Re: Delphi ищет файл базы данных в папке system32
ChDir(ExtractFileDir(Application.ExeName)); - как-то так...
Re: Delphi ищет файл базы данных в папке system32
в реальных проектах база обычно лежит на отдельном компе, да еще и с неизвестно какой операционкойтем более, что в реальных проектах база всегда отдельно от программы лежит.