Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 47
1

Сразу после компиляции вываливается access violation

12.05.2012, 12:19. Показов 1465. Ответов 16
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
В общем ситуация такая: компиляция при стандартных настройках проходит без проблем, все работает и без ошибок, программа тоже работает без багов. После того как делаю, как написано вот тут сразу после компиляции вылетает ошибка access violation. В чем может быть проблема? Он даже не успевает создать форму, как вылетает эта фигня =(
Очень нужно решить... Сроки поджимают, а переделывать все уже просто нет времени
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.05.2012, 12:19
Ответы с готовыми решениями:

Access violation при компиляции, нерегулярно
Создаю программу в C++ Builder XE7. При компиляции выходит странная ошибка (Project...

Проблема. После компиляции, вылезает злосчастный "access violation at address"
Проблема вот в чем. В моей программе организован обмен между editми с двух разных форм. Обмен...

Ошибка после компиляции Access violation at address 0047B00D in module 'lab2.exe'/ Read of address 00000024
После компиляции программы (она выполнена без ошибок), при запуске .ехе выводится ошибка Access...

Задача на массивы. После компиляции всё запускается, но при попытке выполнить вываливается ошибка...
Сама задача: Элементы каждого из массивов x и y упорядочены по неубыванию. Объединить элементы...

16
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
12.05.2012, 12:22 2
сколько форм в проекте используете?
0
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 47
12.05.2012, 12:57  [ТС] 3
nick42, 3 формы. Но откровенно говоря, есть одна непонятка. У меня была создана форма из шаблона в rad studio - Tabbed pages называется, так вот она почему-то использует непонятный ресурс TABPGDLG.CPP, ну вернее он был непонятно подключен. Он был сохранен где-то в папках rad studio. Все что касается формы с этими tabbed pages у меня отдельно в UNIT2. Его нельзя удалить, потому что его использует форма в UNIT2 только как она его использует - это загадка.

Добавлено через 1 минуту
nick42, может быть попробовать удалить и unit2 и этот tabpgdlg из проекта и создать заново?

Добавлено через 16 минут
возможно не очень понятно объяснил. просто на самом деле сам не понимаю что это.
В общем ситуация была такая: это программа тестирования. unit2 - это форма для вывода результатов тестирования и эти вкладки нужны чтобы просто смотреть по отдельности оценку за каждое тестирование. Я еще на ранних этапах добавил в форму этот шаблон, потом его удалил и создал новый. В итоге при новом открытие у меня появилось http://s2.ipicture.ru/uploads/... T6Ug49.jpg
при том, что все сохранял в папке с проектом...
Я раньше практически никогда не работал с билдером серьезно, поэтому извините за мою некомпетентность. Это первое что делаю на нем серьезное.
0
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
12.05.2012, 13:04 4
я думаю, TABPGDLG.CPP - это не страшно. В Билдере иногда добавляются какие-то штатные диалоги (которых можно и не увидеть ни разу) при использовании некоторых контролов. Ваша ошибка скорее всего от того, что что-то удалили из файла *.cpp, а заголовок остался в файле *.h.
0
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 47
12.05.2012, 13:06  [ТС] 5
nick42, но ведь компиляция проходит, если не выставляю настройки... *.h проверял...
0
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
12.05.2012, 13:12 6
Цитата Сообщение от d.bevz Посмотреть сообщение
. *.h проверял...
ну, если не секретно, то выложите эти три пары (cpp и h) в архиве.
0
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 47
12.05.2012, 13:20  [ТС] 7
nick42, сейчас удалил этот unit2 заменил на TABPGDLG.CPP
вот файлы, если найдете ошибки в заголовках буду очень благодарен
Файлики
0
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
12.05.2012, 15:34 8
не..., сложно очень; в глазах рябит. Я, когда пишу программу, не ленюсь компилировать и проверять работу после каждого шага, - избавляет от необходимости выискивать ошибку (или "ошибки", что гораздо труднее). Да еще goto используется... .
0
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 47
12.05.2012, 18:59  [ТС] 9
nick42, вы думаете не проверял программу на каждом шагу? Практический каждую строку компилировал... Пишу на С++ что-то серьезное первый раз, поэтому не все так гладко написано (в смысле стилистики), и старался проверять но работало все и правильно
В чем причина того что она работает в обычном режиме, но когда компилирую для того, чтобы запускать на других компьютерах не работает? Компилятор даже не успевает до кода-то дойти, который Я писал сам. Проблема мне кажется не в том, что Я писал сам, а в том что возможно настройки какие-то неправильные.
Ну а goto - не вижу в нем ничего ужасного.

Добавлено через 3 минуты
Ставлю брейкпойнты в начале каждого файла - эффекта ноль, не останавливается нигде
0
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
12.05.2012, 19:27 10
ну, не знаю. Рад бы помочь, да не представляю - как. У меня порой тоже случалось, что при перестройке на VCL-поддержку (я наоборот, - работаю обычно в режиме "совместимости" с безбилдерными компьютерами) программа вдруг переставала работать, а то и ошибку выдавала на стадии компиляции. Почему так происходит - я не разобрался; видимо конфликт библиотек или их отсутствие в проекте (по крайней мере для некоторых компонентов приходится принудительно включать в проект некоторые либы). Может у кого-нибудь здесь больше опыта по этой части.
0
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 47
12.05.2012, 19:40  [ТС] 11
nick42, версий программы у меня много (часто сохранял на каком-то этапе то что уже сделал) ни один из них не работает, т.е. все проблемы пошли с самого начала... А если бы знал с самого начала, что так можно делать, то делал бы... Все таки программу изначально писал для других компов
Видимо придется переделывать программу занов... =(
0
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
12.05.2012, 19:46 12
зачем переделывать. Раз программа "сваливает" на этапе создания форм, - попробуйте локализовать ошибку, исключая из проекта форму за формой, комментируя фрагменты текста, где это можно; может даже убирать компоненты... - важно найти, где возникает ошибка. Особое внимание заголовочным файлам и функциям, связанным с созданием формы.
0
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 47
12.05.2012, 20:28  [ТС] 13
nick42, сейчас создал новый проект и в него добавил все файлы с кодом. После run'а выдал туже ошибку, но открыл какую-то System.Generics.Collections и выделил строчку: http://s2.ipicture.ru/uploads/... 4R5z6L.jpg

Добавлено через 26 минут
nick42, удалил вообще все, кроме cpp самого проекта - по прежнему не работает =)
может дело в rad studio? сейчас переустановлю
0
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
12.05.2012, 20:47 14
Я пробовал на RAD XE2 Ваши файлы. Если убираю PagesDlg, то с ошибками, вроде, можно бороться (у меня нет dfm-файлов).
0
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 47
12.05.2012, 21:01  [ТС] 15
nick42, писал выше, что заменил его, он же в привязке с этим непонятным файлом идет, Я их оба убрал и добавил новую форму - ничего не поменялось =(
0
Практикантроп
4838 / 2724 / 532
Регистрация: 23.09.2011
Сообщений: 5,789
12.05.2012, 21:17 16
я вот это исключал...
C++
1
2
3
4
5
6
7
8
//#include <TABPGDLG.h>
#include <Vcl.ComCtrls.hpp>
#include <Vcl.ExtCtrls.hpp>
// ---------------------------------------------------------------------------
class TFormForResults : public TForm {     // PagesDlg
 
<>
//#pragma link "TABPGDLG"
(в Unit2)
1
1 / 1 / 0
Регистрация: 12.05.2012
Сообщений: 47
13.05.2012, 01:04  [ТС] 17
nick42, это автоматически восстанавливается
C++
1
2
3
#include <TABPGDLG.h>
#include <Vcl.ComCtrls.hpp>
#include <Vcl.ExtCtrls.hpp>
а вот с классом не очень понял... там в коде:
C++
1
class TFormForResults : public TPagesDlg { и дальше все элементы формы
Это тоже восстановилось
C++
1
#pragma link "TABPGDLG"
Добавлено через 2 часа 27 минут
В общем решения проблемы не найдено. Единственное, что можно сказать - делайте с самого начала настройку для того, чтобы можно было запускать на других компах. Переписал программу копи-пастом из своей и все заработало без плясок с бубном. Элементы на формах тоже вставлял копи пастом.

nick42, спасибо большое за уделенное время =)
1
13.05.2012, 01:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
13.05.2012, 01:04
Помогаю со студенческими работами здесь

Ошибка при компиляции: "Access violation"
когда открываю проект, и хочу его прокомпилировать, выскакивает ошибка? как мне ее убрать и как...

Ошибка при компиляции: "Access violation at adress 32F7E924 in module 'CC32150MT.DLL'"
При попытке считывания с файла вылетает ошибка. Access violation at adress 32F7E924 in module...

После выхода из процедуры сортировки Access violation
Доброго времени суток, жители КиберФорума! Надеюсь на вашу помощь. Мне нужно срочно реализовать...

После сборки в Release краш с Access Violation
Имеется Dll, собранная в Release /MT. На Win8 все прекрасно работает, а на 7ке крашится с...


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

Или воспользуйтесь поиском по форуму:
17
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru