Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
 Аватар для Aleator
102 / 87 / 17
Регистрация: 04.05.2011
Сообщений: 1,330

Ошибка при создании новой компоненты (External exception eefface + code 87)

24.09.2015, 23:41. Показов 2200. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Никогда не создавал компоненты. Но вот пришлось, и не удачно... Видимо, из-за неправильного конструктора
Класс компоненты в HDump.h, реализация в HDump.cpp.
Буду очень признателен за помощь...
Вложения
Тип файла: 7z hexeditor.7z (487.1 Кб, 3 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.09.2015, 23:41
Ответы с готовыми решениями:

External exception EEFFACE при открытие файла в браузере
Подскажите плиз, первый раз сохранение и открытие отрабатывает, на второй раз ошибка, все виснет, помогает только перезапуск RAD. if...

External exception EEFFACE
Доброго вечера, ребята - кто может объяснить из - за чего бывает ошибка External exception EEFFACE Примерно знаю из за какого кода, но...

External exception EEFFACE
Доброго времени суток. У меня такая проблемка, установил недавно Rad Studio 2010 (Delphi), начал работать... все вроде нормально, но по...

4
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33376 / 21500 / 8236
Регистрация: 22.10.2011
Сообщений: 36,896
Записей в блоге: 11
25.09.2015, 00:19
Aleator, для начала все exit-ы на return-ы поменяй, потом дальше поговорим Это совсем не одно и то же...

Добавлено через 17 минут
Да, и от циклов типа
C++
1
2
    for (i = 0; (hdEndAdr / 8); i++) {
        CompareBuffer[i] = 255;
избавиться было бы очень неплохо. Потому что этот цикл - вечный, условие окончания не выполняется, и вылет за границы массива обеспечен (этот цикл есть в HideMismatch)
1
 Аватар для Aleator
102 / 87 / 17
Регистрация: 04.05.2011
Сообщений: 1,330
25.09.2015, 02:36  [ТС]
volvo, Вы правы. Работы там ещё выше крыши. Но у меня не создавался сам компонент (о его корректной работе речь не шла) и форма. Ошибка возникает при запуске программы. Даже форма не выводится... Может не в циклах дело (на этом этапе). Может всё таки конструктор?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33376 / 21500 / 8236
Регистрация: 22.10.2011
Сообщений: 36,896
Записей в блоге: 11
25.09.2015, 09:51
Цитата Сообщение от Aleator Посмотреть сообщение
Но у меня не создавался сам компонент
Разумеется, ведь при попытке установить Capacity (то есть, при вызове метода SetEndAdr), вызывается тот самый HideMismatch(), в котором вылетающий за пределы массива цикл. И что должно произойти? Конечно, программа вылетает.

А можно посмотреть на дельфийский код этого компонента?
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33376 / 21500 / 8236
Регистрация: 22.10.2011
Сообщений: 36,896
Записей в блоге: 11
25.09.2015, 10:48
Лучший ответ Сообщение было отмечено BRcr как решение

Решение

Так. Значит, делаешь 3 шага:
1.
C++
1
2
__fastcall virtual THexDump(TComponent* Owner); // ВИРТУАЛЬНЫЙ конструктор
__fastcall virtual ~THexDump(void); // ВИРТУАЛЬНЫЙ деструктор
несмотря на то, что можно пропускать слово virtual - не нужно этого делать. Дисциплинирует.
2. Метод CreateParams переписываешь:
C++
1
2
3
4
void __fastcall THexDump::CreateParams(TCreateParams &Params) {
  TCustomControl::CreateParams(Params); // сначала вызывается inherited, только потом - собственные действия
  Params.Style |= WS_CLIPCHILDREN; // вот именно так, а не то, что у тебя было.
}
3. Комментируешь временно (пока не исправишь все циклы) назначение Capacity в OnCreate формы.

Пересобираешь проект, запускаешь:
Миниатюры
Ошибка при создании новой компоненты (External exception eefface + code 87)  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.09.2015, 10:48
Помогаю со студенческими работами здесь

External exception EEFFACE из за ShellExecute
не могу найти альтернативу запуска любого обьекта из приложения,в данном случае проект компилируется и создаёт ехе,но билдер виснет ....

ошибка "external exception eefface"
Здравствуйте! Пишу программу на С++ builder (Embarcadero XE2) при компиляции вылетает ошибка "external exception eefface",...

"External exeption EEFFACE" при попытке выделить большой объем памяти
Добрый день. Мне надо выделить очень много памяти, под массив и двумерный массив. Но если указать на один ноль больше, будет ошибка...

Ошибка при создании новой формы
Здравствуйте. У меня вопрос может не по теме. Просто работаю с БД при создании новой формы вот такая ошибка Unable to rename...

ошибка "external exception C0000025" при закрытии формы Form1->Close();
Кто знает почему при закрытии формы выбивает эту ошибку: external exception C0000025 ???? Буду признателен за помощь!!!!!!


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru