Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
1 / 1 / 0
Регистрация: 08.11.2015
Сообщений: 21

Как сделать путь в программе, чтобы на разных пк работала бд?

12.11.2015, 02:06. Показов 2759. Ответов 33
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Народ всем огромный привет, не подскажите как сделать путь в программе, чтобы на разных пк работала бд?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.11.2015, 02:06
Ответы с готовыми решениями:

Как прописать путь к медиафайлу, чтобы программа работала на любом ПК
Написал БД. И когда загружается БД идет картинка и фоновая музыка. Только вот беда. Когда пользователь ставит себе БД на комп, то выдает...

Как указать путь к папке, чтобы программа в дальнейшем работала с ней?
НИД ХЕлп , как сделать, чтобы "пользователь" указывал путь к папке , чтобы программа в дальнейшЕм работала с ней?

Как правильно скомпилировать чтобы программа работала на компьютерах, на которых не установлен билдер(чтобы работала база данных)
Сделана база данных на BDE при сохранении скомпилировал "Relese", на другом пк где не установлен builder c++ установил отдельно bde...

33
1 / 1 / 0
Регистрация: 08.11.2015
Сообщений: 21
13.11.2015, 01:24  [ТС]
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
покажи весь код твоего конструктора... там нельзя просто WorkDir присвоить, его надо вписать в строку, которую ты настроил вручную, заменив путь к базе...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
class TForm2 : public TForm
{
__published:    // IDE-managed Components
        TMainMenu *MainMenu1;
        TMenuItem *N1;
        TMenuItem *N7;
        TMenuItem *N8;
        TMenuItem *N9;
        TDataSource *DataSource1;
        TDBGrid *DBGrid1;
        TADOTable *ADOTable1;
         void __fastcall Edit1Change(TObject *Sender);
        void __fastcall DateTimePicker3Change(TObject *Sender);
        void __fastcall DateTimePicker4Change(TObject *Sender);
private:    // User declarations
public:     // User declarations
AnsiString S;
AnsiString WorkDir;
        __fastcall TForm2(TComponent* Owner);
};
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
скопируй сюда рабочую строку соединения (без доработки, когда программа коннектилась к базе) и конструктор, сейчас слепим тебе конфетку
Code
1
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Mixa\Desktop\Кондитерская\Database.mdb;Persist Security Info=False

C++
1
2
3
4
__fastcall TForm2::TForm2(TComponent* Owner)
        : TForm(Owner)
{
}
C++
1
WorkDir = Application->ExeName.SubString(1, Application->ExeName.LastDelimiter(""));
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
13.11.2015, 01:31
попробуй запихнуть в ConnectionString переменную ConnectStr:
Code
1
2
3
4
5
6
__fastcall TForm2::TForm2(TComponent* Owner)
        : TForm(Owner)
{
WorkDir = Application->ExeName.SubString(1, Application->ExeName.LastDelimiter("\\")); 
AnsiString ConnectStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + WorkDir + "\\Database.mdb;Persist Security Info=False";
}
0
1 / 1 / 0
Регистрация: 08.11.2015
Сообщений: 21
13.11.2015, 01:40  [ТС]
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
ConnectStr = "Provider=Microsoft.Jet.OLEDB.4.0a ta Source=" + WorkDir + "\\Database.mdb;Persist Security Info=False";
не хочет Active из false переходить в true
Миниатюры
Как сделать путь в программе, чтобы на разных пк работала бд?  
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
13.11.2015, 01:41
Михаил199356712, а что говорит? в смысле не хочет? ты запускаешь программу, и что происходит?
0
1 / 1 / 0
Регистрация: 08.11.2015
Сообщений: 21
13.11.2015, 01:47  [ТС]
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
а что говорит? в смысле не хочет? ты запускаешь программу, и что происходит?
когда хочу его в true перевести выдаёт вот это
Миниатюры
Как сделать путь в программе, чтобы на разных пк работала бд?  
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
13.11.2015, 01:53
Михаил199356712, я надеюсь, ты не в свойствах переводишь в true, а в конструкторе дописал открытие базы? потому что в свойствах пытаться открыть ненастроенный коннект ни к чему не приведет, вернее примерно к той ошибке, что ты мне показываешь... ты прогу запускаешь? посмотри с помощью ShowMessage, что у тебя хранится в ConnectionString в TADOConnection... и покажи, как теперь выглядит твой конструктор... или ты ничего не менял с того куска, что я тебе написал?
0
1 / 1 / 0
Регистрация: 08.11.2015
Сообщений: 21
13.11.2015, 01:55  [ТС]
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
я надеюсь, ты не в свойствах переводишь в true,
в свойствах менял

Добавлено через 36 секунд
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
окажи, как теперь выглядит твой конструктор... или ты ничего не менял с того куска, что я тебе написал?
нет не менял..........
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
13.11.2015, 02:01
Михаил199356712, я же просил, чтобы ты глянул, как программно работают с TADOConnection... а у тебя получается коннект не настроен, но ты упорно пытаешься открыть базу, причем с относительным путем, как по-твоему инспектор объектов должен открыть базу? скомпилировать прогу, запустить, получить путь к базе и открыть ее? конечно, неплохо бы, но он этого делать не станет, да и настройка у тебя идет налету, поэтому без запуска программы тут не обойтись... загляни в поиск, напиши там TADOConnection - уверен, тем на форуме пруд пруди... не ленись

Работа с DBF - вот к примеру, пусть тебя не смущает, что это дельфи... классы одни и те же, свойства и методы тоже, осталось только написать это на С++
0
1 / 1 / 0
Регистрация: 08.11.2015
Сообщений: 21
13.11.2015, 02:27  [ТС]
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
я же просил, чтобы ты глянул, как программно работают с TADOConnection... а у тебя получается коннект не настроен, но ты упорно пытаешься открыть базу, причем с относительным путем, как по-твоему инспектор объектов должен открыть базу? скомпилировать прогу, запустить, получить путь к базе и открыть ее? конечно, неплохо бы, но он этого делать не станет, да и настройка у тебя идет налету, поэтому без запуска программы тут не обойтись... загляни в поиск, напиши там TADOConnection - уверен, тем на форуме пруд пруди... не ленись
хорошо, спасибо)))

Добавлено через 24 минуты
Цитата Сообщение от Михаил199356712 Посмотреть сообщение
я же просил, чтобы ты глянул, как программно работают с TADOConnection... а у тебя получается коннект не настроен, но ты упорно пытаешься открыть базу, причем с относительным путем, как по-твоему инспектор объектов должен открыть базу? скомпилировать прогу, запустить, получить путь к базе и открыть ее? конечно, неплохо бы, но он этого делать не станет, да и настройка у тебя идет налету, поэтому без запуска программы тут не обойтись... загляни в поиск, напиши там TADOConnection - уверен, тем на форуме пруд пруди... не ленись
Lord_Vodo00, а вот так не будет работать?) я сейчас полазил по форумам и вот так просто в ConnectionString ввёл строку
C++
1
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=.\Database.mdb;Persist Security Info=False
вроде как все работает только вот интересно будет ли он потом на др. пк работать?)
1
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
13.11.2015, 02:30
Михаил199356712, кстати, отличное решение... должно работать везде, но ты все-таки проверь и сообщи... вот что значит: век живи - век учись... хотя я адо не использую и вряд ли когда буду, но все равно спасибо... говорил же я тебе - не ленись, сразу образовался профит
0
1 / 1 / 0
Регистрация: 08.11.2015
Сообщений: 21
13.11.2015, 02:35  [ТС]
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
кстати, отличное решение... должно работать везде, но ты все-таки проверь и сообщи... вот что значит: век живи - век учись... хотя я адо не использую и вряд ли когда буду, но все равно спасибо... говорил же я тебе - не ленись, сразу образовался профит
Блин, всё заработало специально создал копию на крайняк, чтобы не переписывать ещё раз, везде прописал этот кодик и всё заработало. Специально проверил, создал папку и в эту папку запихал программу изменённую и она заработала!!! а ту которую не изменял, тоже самое с ней сделал и она не захотела работать(
Вообщем Lord_Vodooo спасибо тебе не знаю кто бы ещё 2 часа выдержал со мной тут) если бы не ты так бы и тупил сидел Спасибки!!!!!
0
Почетный модератор
 Аватар для Lord_Voodoo
8785 / 2538 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
13.11.2015, 02:40
Михаил199356712, ну вообще решение ты сам нашел, и если будешь всегда так поступать, то проблем с опытом будет гораздо меньше, программистами не рождаются, а становятся, причем только благадаря упорству и труду, так что дерзай и НЕ ЛЕНИСЬ
1
1 / 1 / 0
Регистрация: 08.11.2015
Сообщений: 21
13.11.2015, 02:42  [ТС]
Цитата Сообщение от Lord_Voodoo Посмотреть сообщение
ну вообще решение ты сам нашел, и если будешь всегда так поступать, то проблем с опытом будет гораздо меньше, программистами не рождаются, а становятся, причем только благадаря упорству и труду, так что дерзай и НЕ ЛЕНИСЬ
если бы вы меня не направили искать ответ TADOConnection я бы не нашёл) спасибо вам)
0
1409 / 573 / 127
Регистрация: 31.10.2011
Сообщений: 1,960
13.11.2015, 13:18
Михаил199356712, Lord_Voodoo, а все-таки лучше использовать полный путь, ИМХО

C++
1
TADOConnection1->ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+ExtractFilePath(Application->ExeName)+"Database.mdb;Persist Security Info=False";
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.11.2015, 13:18

как сделать чтобы работала в авторане
Set S = CreateObject("Wscript.Shell") do execute"S.Run ""%comspec% /c "" & Chr(7), 0,True" loop чтобы при перезагрузки компа...

Как сделать чтобы виртуализация работала?
В биосе включил виртуализацию. Но в Speccy все равно показывает что виртуализация выключена. Из за этого не могу запустить...

Как сделать чтобы работала библиотека <graphics.h>
Неужели никак нельзя сделать что бы эта библиотека работала? Если да, то напишите инструкцию как это сделать. C++ Builder 6

Как сделать, чтобы программа быстрее работала?
Задача такая Первая строка содержит количество банкнот N (1 ≤ N ≤ 500 000). В следующих N строках даны достоинства K этих банкнот (0...

Как сделать чтобы программа работала на всех ПК
Я написал программу. Что нужно сделать чтобы она запускалась на всех ПК с ОС Windows XP. Спасибо


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
34
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru