Бросок WPF исключения, анализирующего XAML, который включает Пользовательский элемент управления Winforms

В ваших вычислениях есть небольшая ошибка

Поскольку в каждом блоке 512 бит, я знаю, что самые правильные 9 бит (2 ^ 9 = 512)

[ 113] Блоки имеют размер 64 байта. Младшие биты относятся к смещению, которое указывает позицию байта в блоке, и требуется только 6 бит. Вы учли количество бит (512 = 64x8), но адреса - это байтов, адресов, и это неверно.

Вы правы, 10 следующих битов - это индекс, который выбирает блок из 1024 в кеше прямой карты.

И тег состоит из оставшихся битов

Следовательно, смещение = 01 0000

index = 1001001011 = 587

Tag = 0101 1100 1000

7
задан Brian Stewart 22 October 2008 в 21:59
поделиться

4 ответа

Я испытал проблемы как этот (но не с тем же самым сообщением об ошибке). Кажется, как будто WPF не может инстанцировать Вашего Пользовательского элемента управления Winforms.

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

  1. Проверьте, включили ли Вы неуправляемую отладку (в Свойствах проекта-> Отладка)
  2. Узнайте, существуют ли какие-либо зависимости Ваш C++ / CLI DLL, где управление Winforms реализовано и если те зависимости не могут быть разрешены.
    Для обнаружения зависимостей от собственного DLLs необходимо использовать инструмент Dependency Walker (depends.exe). Отражатель.NET только исследует управляемые зависимости.
  3. Закомментируйте код своего Пользовательского элемента управления Winforms шаг за шагом и попробуйте еще раз.
  4. Используйте Gflags.exe для включения Снимков Загрузчика (cf. Отладка Отказов LoadLibrary)
10
ответ дан 6 December 2019 в 21:21
поделиться

У меня также были эта проблема и все, что я должен был сделать, был, входят в свойства проекта> безопасность и нажимают This, полное доверительное приложение. Я выполнил свой проект снова, и он работал!

0
ответ дан 6 December 2019 в 21:21
поделиться

Вы уверены, что у вас есть dll в папке system32 или в той же папке с exe. Я получил точно такое же сообщение об ошибке при запуске проекта WPF, созданного с помощью библиотеки DLL CLI, когда эта библиотека находилась в другой папке.

mike

0
ответ дан 6 December 2019 в 21:21
поделиться

I Я видел эту проблему при попытке использовать boost :: thread. Для поддержки локального хранилища потоков функция boost :: thread выполняет некоторые вызовы Win32 API, несовместимые с приложениями CLI. Проблема возникает, если вы пытаетесь # включить что-то из потоков в код CLI.

Решение состоит в том, чтобы либо полностью отказаться от использования boost :: threads, либо ограничить его использование файлами .cpp в собственном коде.

1
ответ дан 6 December 2019 в 21:21
поделиться
Другие вопросы по тегам:

Похожие вопросы: