FatalExecutionEngineError при попытке отобразить простой файл RDLC

Я пытаюсь реализовать генератор отчетов для рабочего проекта, в какой-то момент мне удалось заставить его работать, но больше не могу, к сожалению, не могу понять, что привело к появлению проблемы. Даже создание простейшего файла RDLC больше не работает, если он содержит хотя бы один заполнитель.

Я использую Windows 10 с Visual Studio 2022. Версия CLR, отображаемая в выходных данных, — CLR v4.0.30319.

То, что я пытался сделать, это:

  • Обновите .NET до последней версии
  • Установите большое количество .NET Framework в установщике Visual Studio.
  • Начните новый проект и шаг за шагом пытайтесь заставить его работать. Но все безуспешно.

Вот ошибки, которые я получаю при запуске приложения:

Ошибка при запуске отчета, 1Ошибка при запуске отчета, 2

Вот шаги, которые я выполняю при попытке реализовать свой проект:

  • Создайте приложение Windows .NET Framework 4.7.2.
  • В диспетчере пакетов Nuget установите Microsoft.ReportingServices.ReportViewerControl.Winforms (я пробовал версии 150.1620.0 и 150.1586.0).
  • Он также просит установить Microsoft.SqlServer.Types, что я принимаю.
  • Я добавляю элемент управления reportViewer в свою форму, которую закрепляю.
  • Я создаю новый файл .RDLC, щелкнув правой кнопкой мыши проект > Добавить > Новый элемент > Отчет.
  • Я установил размер страницы и интерактивный размер отчета на 21 см, 29,7 см.
  • Я также установил для него размер страницы RDLC.
  • Я добавляю в верхний левый угол текстовое поле, содержащее текущую дату, с заполнителем, содержащим дату.
  • В reportViewer на форме я выбираю свой rdlc-файл
  • я запускаю приложение
  • Выдает ошибки, которые я показывал ранее

Теперь, если я удалю заполнитель, содержащий дату: [Изображение, показывающее, что оно работает без заполнителя] (https://i.sstatic.net/ErLLo.png)

Ребята, у вас уже была такая ошибка? Как это исправить? Пару месяцев назад у меня был полностью рабочий проект, но теперь даже самая простая страница не работает.

Кроме того, что мне кажется странным, так это то, что, хотя он попросил меня установить зависимость, она не отображается в диспетчере пакетов Nuget, но обнаруживает ее в консоли, потому что у меня есть предупреждение: NU1603: Microsoft.ReportingServices.ReportViewerControl.Winforms 150.1586.0 depends on Microsoft.SqlServer.Types (>= 14.0.0) but Microsoft.SqlServer.Types 14.0.0 was not found. An approximate best match of Microsoft.SqlServer.Types 14.0.314.76 was resolved.

Увидев это, я попытался добавить PackageReference для SqlServer.Types в файл csproj моего проекта: Csproj, содержащий PackageReference

И после этого он появляется в диспетчере пакетов Nuget и в ссылках моего проекта, но все равно не работает, хотя предупреждение больше не отображается.

Для большей точности я попытался использовать параметр для заполнителя, встроенных полей или даже простого текста (очевидно, с кавычками), но безуспешно.

Любая помощь будет оценена по достоинству, заранее спасибо.

Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
1
149
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Из ответа:Microsoft.ReportingServices.ReportViewerControl.Winform выдает FatalExecutionEngineError

Помощник по управляемой отладке FatalExecutionEngineError (MDA) активируется при обнаружении фатальной ошибки в среде CLR. Процесс будет прекращен. Чаще всего это вызвано повреждением данных, которое может быть вызвано рядом проблем, таких как вызовы некорректных функций вызова платформы и передача недопустимых данных в CLR. Для получения более подробной информации вы можете обратиться к этому документу: FatalExecutionEngineError MDA.

Для интеграции элементов управления средством просмотра отчетов и пакетов NuGet вы можете перейти по этим ссылкам:

Интеграция служб отчетов с помощью элементов управления средством просмотра отчетов — начало работы,

Microsoft.ReportingServices.ReportViewerControl.Winforms: https://www.nuget.org/packages/Microsoft.ReportingServices.ReportViewerControl.WinForms/.

Ответ принят как подходящий

Судя по тому, что я прочитал в сообщениях, которые вы переслали, проблема может быть связана с обновлением McAfee/Trellix, которое у меня было недавно. Я попытаюсь связаться со своей ИТ-командой, чтобы отключить ее для проверки, и вернусь, чтобы подтвердить, было ли это причиной, что, я думаю, так и есть, поскольку это вызвало другие проблемы в нашей команде разработчиков.

Обновление: действительно, причиной проблемы был Trellix. Судя по тому, что я видел, ошибку можно увидеть в 32-разрядных приложениях .NET, моей ИТ-команде пришлось добавить политику для отключения сканирования расширенных сценариев.

https://kcm.trellix.com/corporate/index?page=content&id=SB10405

Другие вопросы по теме