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

Подключиться к БД при загрузке формы через *.ini файл

07.01.2015, 16:16. Показов 1838. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! В папке с .ехе файлом программы создал файл Config.ini, прописал в нем:
Code
1
2
3
[Base]
#path=127.0.0.1:C:\DataBaseTestConnect\WORK201_A.GDB
path=C:\DataBaseTestConnect\WORK201_A.GDB
Теперь пытаюсь при создании формы, подключиться по этому адресу в *.ini файле.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#include <vcl.h>
#pragma hdrstop
#include <inifiles.hpp>
#include "Unit1.h"
#include "Unit2.h"
// ---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
AnsiString path;
TIniFile *FineFile; //Объевление переменной для работы с ini файлом
 
// ---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) {
}
 
// ---------------------------------------------------------------------------
void __fastcall TForm1::FormCreate(TObject *Sender) {
 
    try {
        FineFile = new TIniFile(ExtractFilePath(Application->ExeName) +
            "Config.ini"); подключаюсь к файлу.
           String str=FineFile->ReadString("Base","path",str);
            DataModule2->DatabaseWork201_A->DatabaseName =
                FineFile->ReadString("Base", "path", " ");//считываю с файла данные и передаю в IBDataBase
            FineFile->Free();
            DataModule2->DatabaseWork201_A->Connected = true;
            DataModule2->QueryTabel->SQL->Add("select *from personal");
            DataModule2->QueryTabel->Active = true;
 
 
    }
    catch (...) {
        Application->MessageBox(L"ХЗ!", L"Ошибка", MB_OK);
    }
 
}
// ---------------------------------------------------------------------------
выполнение доходит до строки
C++
1
2
FineFile = new TIniFile(ExtractFilePath(Application->ExeName) +
            "Config.ini")
и выдает ошибку:
First chance exception at $004033EE. Exception class $C0000005 with message 'access violation at 0x004033ee: read of address 0x00000074'. Process Project1.exe (5508)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.01.2015, 16:16
Ответы с готовыми решениями:

Локализовать приложение не через dll файл, а через обычный xml или ini файл
Добрый вечер дамы и господа, у меня возникла такой вопросик. Как можно локализовать приложение Windows Forms не через dll файл а через...

Ошибка при загрузке настроек из ini-файла
помогите решить проблему, у меня есть программа заставка которая отображает аналоговые часы, в настройках два чекбокса, включающие...

Сохрание настроек формы в ini файл
Скажите пожалуйста, как создать и сохранить в ini файл местоположение формы на экране? (с++) Заранее спасибо

6
164 / 49 / 27
Регистрация: 04.06.2013
Сообщений: 636
07.01.2015, 23:17
C++
1
2
TIniFile *FineFile = new TIniFile(ExtractFilePath(Application->ExeName) +
            "Config.ini")
нужно так
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33399 / 21509 / 8236
Регистрация: 22.10.2011
Сообщений: 36,907
Записей в блоге: 12
08.01.2015, 00:34
С чего бы это так нужно? "Можно" и "нужно" - разные вещи. Я что, не могу сначала объявить указатель, а потом его использовать? Могу. Проверил. Работает приведенный в первом посте фрагмент, но, разумеется, это опять я виноват, все всегда не так делаю...
0
164 / 49 / 27
Регистрация: 04.06.2013
Сообщений: 636
08.01.2015, 10:55
да незаметил, зато нашел ошибку
C++
1
2
FineFile = new TIniFile(ExtractFilePath(Application->ExeName) +
            "//Config.ini")
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33399 / 21509 / 8236
Регистрация: 22.10.2011
Сообщений: 36,907
Записей в блоге: 12
08.01.2015, 15:16
Цитата Сообщение от mish_k98 Посмотреть сообщение
зато нашел ошибку
Ошибка - у тебя в последнем посте. ExtractFilePath оставляет разделитель, так что не нужно добавлять его руками, это не ExtractFileDir (кстати, слеши у тебя тоже направлены не в ту сторону, так что даже с ExtractFileDir работать не будет)... Все правильно у ТС-а, еще раз повторяю... Без понятия, почему не работает.
0
164 / 49 / 27
Регистрация: 04.06.2013
Сообщений: 636
08.01.2015, 18:04
да действительно спутал.попробывал у себя - все работает
0
1 / 1 / 1
Регистрация: 22.12.2010
Сообщений: 128
09.01.2015, 10:54  [ТС]
Если не трудно проект скиньте. Попробовал на другой машине, результат тот же!!! Не хочет коннектить!

Добавлено через 16 часов 45 минут
Блин! Разобрался. Моя ошибка была в том, что мои компоненты для связи с БД были на DataModule. А связаться пытался при создании FormCreate. То есть я так понимаю, сам модуль еще не создан, а я уже пытаюсь подключиться. Перекинул все на DataModuleCreate, подключив библиотеки, и все заработало!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.01.2015, 10:54
Помогаю со студенческими работами здесь

Как сохранить property формы в ini файл?
Здравствуйте! Имею дело с Delphi 6. В процессе работы сохраняю состояние формы в ini файл - это Top, Left, Width, Height. procedure...

Нужно при загрузке формы загружать рандомный беграунд формы
Нужно при загрузке формы загружать рандомный беграунд формы. Все беграунды сохранены в отдельной папке. Пытался сделать сам не очень...

Проверка через ini - файл
Помогите пожалуйста кодом к курсовой, а то скоро сдавать программу человеку и надо реализовать, то что опишу. 1)Необходимо при входе в...

MDI-формы. Максимизация окна при загрузке формы
Товарищи программисты! Случилась следующая проблема: я делаю приложение, использующее MDI-формы. Условия их работы таковы: 1. В один...

Коннект через ini файл с ip сервера
подскажите пожалуйста как можно сделать так чтобы с проектом рядом лежал ini файл с ip (то есть его можно было бы менять) мне просто...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru