Ошибка: Бок о бок конфигурационная информация в “BLAH.EXE” содержит ошибки

Указатель NULL - это тот, который указывает на никуда. Когда вы разыскиваете указатель p, вы говорите «дайте мне данные в месте, хранящемся в« p ». Когда p является нулевым указателем, местоположение, хранящееся в p, является nowhere, вы говорите «Дайте мне данные в месте« нигде ». Очевидно, он не может этого сделать, поэтому он выбрасывает NULL pointer exception.

В общем, это потому, что что-то не было правильно инициализировано.

15
задан Roger Lipscombe 28 May 2010 в 08:00
поделиться

5 ответов

Откройте лист свойств для своего проекта, перейдите к Свойствам Конфигурации-> C/C++-> страница Code Generation и измените выбор Библиотеки времени выполнения на / MT или/MTd так, чтобы Ваш проект не пользовался библиотеками времени выполнения DLL.

время выполнения DLL C/C++, используемое VS2003 и, автоматически не распределяется с последней версией ОС и является реальной болью, чтобы установить и получить работу без этого вида проблемы. статически свяжите c-время-выполнения и просто избегайте общей путаницы, которая является декларациями и версией определенное время выполнения dlls.

14
ответ дан 1 December 2019 в 02:38
поделиться

Event Viewer выполнения: это будет иметь больше информации.

, Вероятно, Вы попытались запустить свою программу на машине, которой не установили распространяемые файлы VC, или Вы пытаетесь выполнить отладочную сборку на машине, которая не имеет Visual Studio установленной (библиотеки отладки не являются распространяемым файлом).

3
ответ дан 1 December 2019 в 02:38
поделиться

У меня была эта проблема. Решение имеет два шага:
1. Скомпилируйте свою программу в режиме "Release" вместо режима "Debug" (обычно существует поле комбинированного списка на панели инструментов)
2. Загрузите с Microsoft их Распространяемый Пакет из компонентов во время выполнения. Удостоверьтесь, что загрузили x86 выпуск для 32-разрядных компьютеров и x64 выпуск для 64-разрядных компьютеров/Ose. Установите этот пакет на целевом компьютере, и Ваше приложение должно хорошо работать

P.S. Это вещь SxS
P.P.S. С другой стороны, используйте другой компилятор (как GCC, например, с Dev-Cpp) для компиляции источника программы, и головные боли исчезнут.

4
ответ дан 1 December 2019 в 02:38
поделиться

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

Даже после установки Распространяемые библиотеки DLL Microsoft Я получал эту ошибку, исправление заключалось в копировании папки

C:\Program Files\Microsoft Visual Studio 8\VC\redist\x86\Microsoft.VC80.CRT

в каталог приложения на целевом ПК. После этого больше никаких проблем.

Кстати, DLL, которая доставляла мне проблемы, была сторонней DLL, у которой никогда раньше не было проблем на более чем 100 других компьютерах ... поймите.

5
ответ дан 1 December 2019 в 02:38
поделиться

У меня была такая же проблема с бинарными файлами отладки VS 2008 на других машинах с winxp sp3.

  1. Сначала я попытался установить клиентскую машину с пакетом vc redist, так как это казалось разумным. К сожалению, он не работал .
  2. Я попытался скопировать все зависимые библиотеки DLL в каталог приложения - все равно не сработало
  3. После того, как я часами обдумывал эту проблему, я обнаружил, что последние сборки VS требуют манифестов и политик для связи с dll. После копирования их в соответствующие папки "C: \ WINDOWS \ WinSxS \" я получил рабочий .

Проблема возникла из-за того, что пакет vc redist не устанавливал отладочные версии dll, они почему-то думали, что это решать программисту.

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

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