Helpers - компьютеры, интернет, программирование

Миграция VS с 2005 на 2010, LNK1316: повторяющееся имя управляемого ресурса

Я переношу решение С++ .NET с версии 2005 на версию 2010. Я получаю в управляемом проекте ошибку компоновщика: ССЫЛКА: фатальная ошибка LNK1316: повторяющееся имя управляемого ресурса\

Спасибо за вашу помощь


Ответы:


1

У меня тоже была такая же проблема, но замена $(InputName) на $(FileName) или $(ProjectName) не помогла. Что помогло, так это перемещение файла ресурсов в корневой каталог проекта и оставление поля «Логическое имя ресурса» пустым в «Свойства» -> «Управляемые ресурсы» -> «Общие».

10.08.2012

2

Похоже на ошибку в Visual Studio 2010. В в этом случае это было

проблема с системой проекта, не удаляющей дополнительный Form2.resx, который вы меняете form2.h с типа заголовка на тип Winform.

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

22.02.2011

3

Это это? :

Ссылка...

РЕДАКТИРОВАТЬ: я резюмирую ответ ниже, чтобы не читать все комментарии:

Когда VS2010 преобразовал файл проекта из VS2005, он обнаружил макрос $(InputName), который больше не используется. Он заменяет его на %FILENAME. Чтобы решить эту проблему, перейдите в «Свойства», «Управляемый ресурс», «Логическое имя ресурса» и измените его на %(FileName).

20.02.2011
  • Эта ссылка от 2005 года, я думаю, что она не актуальна. Но большое спасибо. 21.02.2011
  • Извините, я этого не заметил. Открыли ли вы файл .csproj в текстовом редакторе и посмотрели, есть ли .resx, указанный дважды? 22.02.2011
  • файл .resx появляется только один раз, но .resource появляется дважды, один раз в \‹Конфигурации› ‹Конфигурация... ‹Имя инструмента=VCManagedResourceCompilerTool ResourceFileName=$(IntDir)\$(RootNamespace).$(InputName).resources /› и в другом месте под ‹Имя фильтра=Файлы ресурсов... ‹Имя инструмента=VCManagedResourceCompilerTool ResourceFileName=$(IntDir)\$(RootNamespace).$(InputName).resources /› это проблема, какую из них я могу удалить? 24.02.2011
  • Ни один. Вы используете %(Filename) для указания пути? См. здесь, где у кого-то возникла проблема. cmdtqna. ком/вопросы/c6feba2e18f211e09dbc/ 24.02.2011
  • это кажется похожей проблемой, но у них нет ответа. Макрос VS 2005 был $(InputName), это автоматическое преобразование изменилось на% FILENAME, и я попытался изменить его на $(ProjectName). ни один из них не работает. насколько я понимаю, $(InputName) отменяется, преобразование помещает туда %FILENAME, чтобы указать, что его необходимо изменить. %FILENAME не макрос, верно? 24.02.2011
  • Для теста, что произойдет, если вы замените %Filename фактическим именем файла. После этого ваша ошибка исчезает? 24.02.2011
  • привет, большое спасибо за вашу помощь. если я заменю %FILENAME фактическим именем файла для каждого файла resx в свойствах, управляемом ресурсе, логическом имени ресурса, тогда это сработает. Но это не кажется хорошим решением. У тебя есть какие-либо идеи? 02.03.2011
  • Олег не ответил на этот вопрос здесь? stackoverflow.com/questions/5064793/ 03.03.2011
  • В текстовом поле Логическое имя ресурса нажмите стрелку вниз и выберите ‹Редактировать...›. Нажмите Макросы›› и введите % в появившееся новое текстовое поле. Вы увидите несколько вариантов %(xxxx). Тот, который называется %(Filename), должен иметь нужное вам значение. 03.03.2011
  • Новые материалы

    Интуитивное понимание тензоров в машинном обучении
    Тензор является важной концепцией во многих научных областях, таких как математика, физика, обработка сигналов и компьютерное зрение, и это лишь некоторые из них. В математике тензор — это..

    Использование машинного обучения для диагностики болезни Альцгеймера, часть 4
    Маркеры семантической согласованности для ранней диагностики болезни Альцгеймера (arXiv) Автор: Давиде Колла , Маттео Дельсанто , Марко Агосто , Бенедетто Витиелло , Даниэле Паоло Радичони..

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

    Анимированный математический анализ
    Использование Manim для создания математических анимированных визуализаций Визуализация данных помогает понять скрытые закономерности в данных, которые невозможно визуализировать..

    Создание простого слайдера изображений с помощью JavaScript
    Узнайте, как создать базовый слайдер изображений с помощью HTML, CSS и JavaScript. Введение В этом уроке мы создадим удобный слайдер изображений, используя JavaScript, HTML и CSS. Ползунок..

    Создание базы данных с помощью супергероя «Python»
    В этом посте мы узнаем, как создать «базу данных SQLite с помощью модуля python sqlite3, создав простую функцию входа и регистрации. Готовы ли вы к этому путешествию? Если да , давайте приступим..

    ИИ для чайников: руководство для начинающих по пониманию будущего технологий
    Вы чувствуете, что остались позади в мире ИИ? Не волнуйтесь, вы не одиноки! Со всей этой шумихой вокруг искусственного интеллекта может быть трудно понять, с чего начать. Но не позволяйте сленгу..