Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

CBuilder 5 + DataSet

7.1K
28 апреля 2004 года
dedmorozzz
6 / / 28.04.2004
Проблема. Есть форма frmMain. Есть модуль Main.h На форме лежит ADODataSet, подключенный к ADOConection, в общем все работает. Я вызываю функцию из Main.h и передаю ей в кач-ве параметра указатель на этот самый dataset:

Call_Func(frmMain->DSTemp);

Вот код самой процедуры:

Call_Func(TADODataSet * DSOstatok)
{
//тут все нормально отрабатывает, а на строчке

DSTemp->CommandText = sql;

//кидает ошибку Access violation at address ....
//причем такая ошибка возникает при любом действии //с dataset'ом, даже при Close()

}

Стоит Builder 5 Update 1 и Builder 5 ADO Upgrade 1
2.0K
28 апреля 2004 года
Tristan
27 / / 17.10.2002
[QUOTE]
293
28 апреля 2004 года
SEDEGOFF
586 / / 06.10.2002
У меня была похожая проблема. Решилась она вот так
Call_Func(DSTemp);
7.1K
28 апреля 2004 года
dedmorozzz
6 / / 28.04.2004
Цитата:
Originally posted by SEDEGOFF
У меня была похожая проблема. Решилась она вот так
Call_Func(DSTemp);



А у меня немного сложнее: контрол находится на одной форме (frmMain), а функцию я вызываю с другой формы (frmOdin), как быть в такой ситуации?

358
28 апреля 2004 года
moonmike
423 / / 18.10.2002
Цитата:
Originally posted by dedmorozzz


А у меня немного сложнее: контрол находится на одной форме (frmMain), а функцию я вызываю с другой формы (frmOdin), как быть в такой ситуации?


А для чего TDataModule придуман?

7.1K
28 апреля 2004 года
dedmorozzz
6 / / 28.04.2004
Цитата:
Originally posted by moonmike

А для чего TDataModule придуман?



Дело в том что я не пишу программу "с нуля", а переделываю ее, так что все это весьма проблематично....

358
28 апреля 2004 года
moonmike
423 / / 18.10.2002
Цитата:
Originally posted by dedmorozzz


Дело в том что я не пишу программу "с нуля", а переделываю ее, так что все это весьма проблематично....


Тогда тем более, хотя все конечно зависит от того как программа написана и сколько этой программы. Но в большинстве ситуаций получается что проще потихонечку переделать все правильно, чем извращаться с неправильным.

7.1K
28 апреля 2004 года
dedmorozzz
6 / / 28.04.2004
Цитата:
Originally posted by moonmike

Тогда тем более, хотя все конечно зависит от того как программа написана и сколько этой программы. Но в большинстве ситуаций получается что проще потихонечку переделать все правильно, чем извращаться с неправильным.



Сделал DataModule, напихал туда все датасеты.... Теперь кидает Access violation при попытке обратиться к любому элементу на этом DataModule!

358
28 апреля 2004 года
moonmike
423 / / 18.10.2002
Тестовый проект в студию.
7.1K
28 апреля 2004 года
dedmorozzz
6 / / 28.04.2004
Цитата:
Originally posted by moonmike
Тестовый проект в студию.



Я боюсь что студия пошлет меня с моим тестовым проектом на 5 мегов! :))) Короче вот любопытная деталь: скопировал тело функции в модуль формы, на которой находятся эти DataSetы - все заработало! Все чудесится и чудесится....

358
28 апреля 2004 года
moonmike
423 / / 18.10.2002
Так нахрена же весь проект, конкретно две формы Дата модуль и табличку к которой этот датасет обращается.
10
29 апреля 2004 года
Freeman
3.2K / / 06.03.2004
Цитата:
Originally posted by dedmorozzz
Я боюсь что студия пошлет меня с моим тестовым проектом на 5 мегов! :))) Короче вот любопытная деталь: скопировал тело функции в модуль формы, на которой находятся эти DataSetы - все заработало! Все чудесится и чудесится....


У меня есть большое подозрение, что на момент вызова функции соответствующая форма (или модуль данных) попросту не существуют в памяти.

Они где создаются? В коде программы или как Auto-create?

7.1K
29 апреля 2004 года
dedmorozzz
6 / / 28.04.2004
Цитата:
Originally posted by smartsoft

У меня есть большое подозрение, что на момент вызова функции соответствующая форма (или модуль данных) попросту не существуют в памяти.

Они где создаются? В коде программы или как Auto-create?



Форма существует! Я же ее вижу! :) Она загружается в самом начале программе и при ее выгрузке из памяти программа останавливается....

Кто они? Что ты имеешь ввиду? Формы?

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог