Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Вниз

Почему?   Найти похожие ветки 

 
serko ©   (2006-12-08 21:46) [0]

Здрасте всем!

Такой вот баг выскакивает. Есть код:

IniFile := TIniFile.Create(ExtractFileDir(Dir)+"\Options.ini");
Spinedit2.Value:=IniFile.ReadInteger("Zvuki", "Utro_2", 0);
Inifile.Free;

Так вот при OnButtonClick все пашет нормально, а при OnActivate выскакивает ошибка! ПОЧЕМУ? Что исправить?


 
Palladin ©   (2006-12-08 21:47) [1]

Тут у меня друг говорит, но я с ним не согласен, ПОЧЕМУ ОН ТАК ГОВОРИТ? Что исправить?


 
Anatoly Podgoretsky ©   (2006-12-08 21:49) [2]

> serko  (08.12.2006 21:46:00)  [0]

Секретная ошибка - секретный ответ


 
serko ©   (2006-12-08 22:09) [3]

....Raised exception class EAccessViolation with message ....


 
Loginov Dmitry ©   (2006-12-08 22:12) [4]

В [0] рабочий код. Ошибка в другом месте.


 
Loginov Dmitry ©   (2006-12-08 22:13) [5]

Что есть Dir и где оно инициализируется?


 
serko ©   (2006-12-08 22:22) [6]

Dir:=ParamStr(0) - OnCreate на главной форме!


> В [0] рабочий код. Ошибка в другом месте.

Если я убираю строку где Spinedit присваивается значение то все работает...


 
Desdechado ©   (2006-12-08 22:23) [7]

если его придавить, может еще чего скажет


 
Anatoly Podgoretsky ©   (2006-12-08 22:31) [8]

> serko  (08.12.2006 22:09:03)  [3]

Неверный указатель, что то не создано или наоборот уже уничтожено.


 
Anatoly Podgoretsky ©   (2006-12-08 22:31) [9]

> serko  (08.12.2006 22:09:03)  [3]

Это не полный текст сообщения об ошибке


 
Loginov Dmitry ©   (2006-12-08 22:37) [10]

Как объявлена переменная Spinedit2?


 
Anatoly Podgoretsky ©   (2006-12-08 22:40) [11]

> Loginov Dmitry  (08.12.2006 22:37:10)  [10]

Допрос продолжается.


 
serko ©   (2006-12-08 23:04) [12]


> Как объявлена переменная Spinedit2?

SpinEdit1: TSpinEdit;


> Это не полный текст сообщения об ошибке

Raised exception class EAccessViolation with message "Access violation at address 00AB34FB. Write of address 0052364C"


 
Anatoly Podgoretsky ©   (2006-12-08 23:06) [13]

> serko  (08.12.2006 23:04:12)  [12]

Вот теперь более понятно, видимо Spinedit2 имеет неверное значение, может быть удалена или вообще просто мусор.


 
serko ©   (2006-12-08 23:11) [14]


> > serko  (08.12.2006 23:04:12)  [12]

Ну как же удалена или мусор если мне в этот Spinedit из INI нужно загрузить сохраненное ранее значение? Все там есть... Но вот при загрузке такая ошибка...
Может есть другой ВАРИАНТ?


 
Palladin ©   (2006-12-08 23:17) [15]

ну как же портфеля нет у меня в руках? если мне нужно положить в него учебники? вчера ведь был... правда меня мама в школу собирала... Может есть другой ВАРИАНТ?


 
Anatoly Podgoretsky ©   (2006-12-08 23:25) [16]

> serko  (08.12.2006 23:11:14)  [14]

Что и где этот Spinedit остается загадкой


 
ProgRAMmer Dimonych ©   (2006-12-08 23:25) [17]

> serko ©   (08.12.06 23:11) [14]
Швырни сюда всю процедуру, на всякий случай...


 
Anatoly Podgoretsky ©   (2006-12-08 23:37) [18]

> ProgRAMmer Dimonych  (08.12.2006 23:25:17)  [17]

А толку, скажем объявление в одном месте, инициализация в другом.
Кидать надо значимую информацию, объявление, создание и значимую часть кода. Значимая часть кода приведена, а остальное большой, большой секрет, конечно от нас.


 
ProgRAMmer Dimonych ©   (2006-12-08 23:40) [19]

> Anatoly Podgoretsky ©   (08.12.06 23:37) [18]
ОК, рассуждаем логически в таком случае...

Т.к. нет цифр FFFFFFFF и 00000000, то делаем вывод, что создание//удаление объектов выполнено нормально. При любом глюке ReadInteger выдаёт третий параметр, т.е. 0. Значит AV возникает из-за SpinEdit1.Value. Почему? Случайно не в секретной ли части проблема?


 
serko ©   (2006-12-09 00:34) [20]

я на форму кинул PageControl на нем уже на разных страницах накидаж checkbox и spinedit. Все....
потом при изменении значения они сразу же сохраняются в INI, ну и вот хочу чтобы при активизации формы считывались данные с INI.
Я уже взял удалил этот Spinedit и кинул новый... Пару раз работало... А теперь снова таже беда....
Что от этого может меняться?


 
Германн ©   (2006-12-09 00:52) [21]


> serko ©   (09.12.06 00:34) [20]

Может покажешь весь код в OnActivate?
И кстати, чей этот OnActivate?


 
serko ©   (2006-12-09 00:57) [22]

Кароче разобрался я пацыки уже...

Оказывается прогон мой был в том что строка
Spinedit2.Value:=IniFile.ReadInteger("Zvuki", "Utro_2", 0);
вызывает событие OnChangeSpinedit в котором у меня сохраняются данные INIFILE.WRITEINTEGER....
Вот и усе... ХУХ


 
Германн ©   (2006-12-09 01:03) [23]


> вызывает событие OnChangeSpinedit в котором у меня сохраняются
> данные INIFILE.WRITEINTEGER....

Имхо, неудачное решение. Я предпочитаю для сохранения пользоваться событем OnExit.


 
MsGuns ©   (2006-12-09 01:38) [24]

Тихо сам с собою я веду беседу...


 
Германн ©   (2006-12-09 01:48) [25]


> MsGuns ©   (09.12.06 01:38) [24]
>
> Тихо сам с собою я веду беседу...
>

Ну да, тихо. Уже 4 часа спать не даёт почтенным людям! :-)


 
Loginov Dmitry ©   (2006-12-09 08:57) [26]

> вызывает событие OnChangeSpinedit в котором у меня сохраняются
> данные INIFILE.WRITEINTEGER


И чаго, ошибка только в этом? Интересный подход - объявляешь переменную как глобальную, и дальше то и дело создаешь и дестроишь объект. Тогда уж дестрой хотябы с помощью FreeAndNil() (в таком случае быстро бы все выяснилось).


 
Anatoly Podgoretsky ©   (2006-12-09 13:16) [27]

> Loginov Dmitry  (09.12.2006 8:57:26)  [26]

> в таком случае быстро бы все выяснилось

Да ну?
Потом будет долго искать где обнулено.
Не надо глобальности для подобной вещи.


 
Loginov Dmitry ©   (2006-12-09 14:01) [28]

> Да ну?


Ну да! Откуда нули - искать значительно проще.



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.12.31;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.51 MB
Время: 0.038 c
5-1145882537
Andrew_GUNski
2006-04-24 16:42
2006.12.31
Добавление своего класса Properties DevExpress Grid


1-1163407952
Corona
2006-11-13 11:52
2006.12.31
ошибка при работе с ListView


2-1165862534
Unleashed
2006-12-11 21:42
2006.12.31
Получить доступ к сетевому пути


8-1147592921
MasteR2
2006-05-14 11:48
2006.12.31
Многоугольник и окружность


15-1165089940
Cyrax
2006-12-02 23:05
2006.12.31
Java - это же не Yava...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский