Пожалуйста, выполните следующие действия:ошибка сегментации класса (11)
- Создать новую
Firemonkey Moblie Application
- Добавить
TGeustureManager
компонент в форме Добавить 2
TButton
компоненты в форме- Button1.Text: «Button1: Сделайте что-нибудь ...»
- Button2.Text: «Butt on2: Выход приложения ...»
Двойной щелчок по Button2 компонент и написать следующий код для
OnClick
Событие:procedure TForm1.Button2Click(Sender: TObject); begin if MessageDlg('Are you sure you want to Exit?', TMsgDlgType.mtWarning, [TMsgDlgBtn.mbYes, TMsgDlgBtn.mbNo], 0) = mrYes then SharedActivity.finish; end;
- Запуск приложения в режиме отладки.
на устройстве, нажмите кнопку 2, затем нажмите «Да», чтобы выскочить. Исключение появится:
Почему возникает это исключение?
Я думал, что это связано с неиспользованным компонентом TGeustureManager
. но НЕТ это НЕ:
- Если открыть
Location
демонстрационный проект, который поставляется с Delphi xe5. - Добавить
TButton
компонент вLocation
этикетки, как показано на изображении ниже: - Добавьте один и тот же код, как и выше, чтобы
OnClick
Event. - Запустите приложение и нажмите кнопку Button5, вы получите то же исключение.
Это ошибка, о которой я должен сообщить? или я делаю что-то неправильно?
У меня точно такое же исключение повсюду, не связанное с прекращением моего приложения. Грустный, я не могу найти много информации об этом. Это происходит только в Firemonkey, который не является Windows. Windows работает нормально, все остальные терпят неудачу. Некоторые из них я понял (например, мне нужно было использовать generics 'TList <>', а не старый 'TList'), но теперь библиотека' XSuperObject' делает это при разборе файла (который является правильно отформатированным JSON-файлом в правильное местоположение). –