Ошибка средств компоновщика LNK1123

сбой при преобразовании в COFF: файл недопустим или поврежден

Входные файлы должны иметь формат COFF. Если входной файл не имеет формат COFF, компоновщик автоматически пытается преобразовать 32-разрядные объекты OMF в формат COFF или запускает программу CVTRES.EXE для преобразования файлов ресурсов. Это сообщение означает, что компоновщик не может преобразовать файл. Эта ошибка также может происходить при использовании несовместимой версии CVTRES.EXE из другой установки Visual Studio, пакета средств разработки программного обеспечения для Windows или платформы .NET Framework.

Примечание.

Если используется более ранняя версия Visual Studio, автоматическое преобразование может не поддерживаться.

Устранение проблемы

  • Примените все обновления и пакеты обновления для используемой версии Visual Studio. Это особенно важно для Visual Studio 2010.

  • Попробуйте выполнить сборку с отключенной инкрементной компоновкой. В строке меню выберите Проект, Свойства. В диалоговом окне "Страницы свойств" разверните раздел "Свойства конфигурации", компоновщик. Измените значение параметра Enable Incremental Linking to No.

  • Проверьте, соответствует ли версия CVTRES.EXE, указанная первой в переменной среды PATH, версии средств сборки или используемого проектом набора инструментов платформы,.

  • Попробуйте отключить параметр «Внедренный манифест». В строке меню выберите Проект, Свойства. В диалоговом окне "Страницы свойств" разверните свойства конфигурации, средство манифеста, входные и выходные данные. Измените значение манифеста внедрения на No.

  • Убедитесь в том, что тип файла является допустимым. Например, убедитесь в том, что объект OMF 32-разрядный, а не 16-разрядный. Дополнительные сведения см. в статье . Obj Files в качестве входных данных компоновщика и формата PE.

  • Убедитесь в том, что файл не поврежден. Заново выполните сборку, если нужно.

См. также

OBJ-файлы в качестве входных файлов компоновщика
Справочник ЕDITBIN
Справочник DUMPBIN