«Неправильная конфигурация приложения» и «неправильная конфигурация» при запуске VS2008 64-bit debug build

Я работаю на 64-битной ОС Windows 7 конечной машине VS2008 с 64-битным аддоном.

Я успешно собрал свои проекты в 32- и 64-битной конфигурации, отладке и выпуске. 64-битная отладка не запускается; это дает ошибку:

Невозможно запустить программу xxx Это приложение не удалось запустить из-за неправильной конфигурации приложения. Просмотрите файл манифеста на предмет возможных ошибок. Переустановка приложения может решить проблему. Для большего количества розничных продаж смотрите журнал событий приложения.

Я побежал ходок зависимости. В пути для повторного использования C: \ Program Files (x86) \ Microsoft Visual Studio 9.0 \ VC \ redist \ Debug_NonRedist \ amd64 \ Microsoft.VC90.DebugCRT я добавил Microsoft.VC90.DebugCRT.manifest msvcm90d msvcp90d msvcr90d Microsoft.VC90.DebugMPpen. sll в папке bin \ debug моего решения.

Наконец, у обходчика зависимостей не осталось желтых меток (отсутствующих файлов), но все равно он выдавал ошибки вроде:

Ошибка: не найдена хотя бы одна необходимая неявная или перенаправленная зависимость. Ошибка: по крайней мере один модуль имеет неразрешенный импорт из-за отсутствия функции экспорта в неявно зависимом модуле. Ошибка: Обнаружены модули с разными типами ЦП. Ошибка: информация о конфигурации Side-by-Side в «e: \ xyz.EXE» содержит ошибки. Не удалось запустить приложение, поскольку его параллельная конфигурация неверна. Пожалуйста, смотрите журнал событий приложения или используйте инструмент командной строки sxstrace.exe для более подробной информации (14001).

32-битный манифест говорит:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
      <requestedPrivileges>
        <requestedExecutionLevel level="asInvoker" uiAccess="false"></requestedExecutionLevel>
      </requestedPrivileges>
    </security>
  </trustInfo>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC90.DebugCRT" version="9.0.21022.8" **processorArchitecture="x86"** publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>
</assembly>

Принимая во внимание, что 64-битный манифест отладки имеет:

 <dependency>
    <dependentAssembly>
      <assemblyIdentity type="win32" name="Microsoft.VC90.DebugCRT" version="9.0.21022.8" processorArchitecture="amd64" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
    </dependentAssembly>
  </dependency>

Я не понимаю, почему отладочная 32-разрядная сборка выполняется успешно?

Пожалуйста, помогите мне, так как я уже проверил много вопросов, но не нашел никакого приемлемого решения.

Ответы на вопрос(4)

Ваш ответ на вопрос