Ошибка два имени выходных файлов разрешаются в один и тот же выходной путь

Обновлено: 06.07.2024

Эта ошибка возникает при попытке запустить приложение формы Windows, которое я создал. Некоторые поисковые запросы показали, что это происходит из-за появления двух файлов .resx. У меня есть два файла .resx в моем приложении. Также у меня две формы в моем приложении. Я создал вторую форму, скопировав первую форму и переименовав ее и изменив ее. Два файла .resx: form1.resx и form2.resx. Как удалить эту ошибку?

8 Решение No Idea For Name [2013-09-12 11:24:00]

Хотя я не знаю, почему вы это сделаете, вы можете использовать эти инструкции для правильной копии формы. Это не рекомендуется. Лучше наследовать или использовать пользовательский контроль. Но если вы должны:

  • Удалить вторую форму.
  • Создайте его, создав форму
  • Скопируйте метод InitializeComponent из form1.designer в новую форму
  • Также скопируйте часть ниже InitializeComponent .
  • Скопируйте код form1 в новую форму, обязательно исправьте конструктор
  • Пожалуйста, не копируйте полную форму с помощью скопирования.

ИЗМЕНИТЬ

Когда кто-то нажимает кнопку смены страницы, вы можете сделать:

Теперь это очень простой синтаксис. вы можете захотеть иметь основную форму, которая содержит все формы, поэтому вы не будете создавать новые и новые формы.

Дизайн зависит от вас. этот пример даст вам основы о том, как открывать и закрывать формы.

Эта ошибка может также возникнуть, если вы используете Windows10, и у вас есть ресурсы локализации для культур CR-Cyrl-CS, CR-Latn-CS. Windows10 больше не поддерживает их.

0 Nick_F [2015-04-06 12:53:00]

0 Vikram [2014-05-01 22:26:00]

В моем случае он не показывал мне 2 копии файлов .resx. Я просто перезапустил Visual Studio 2010, и проблема исчезла.

Если вам не нужны файлы resx, вы можете просто удалить их, и эта проблема исчезнет.

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

У меня есть проект в VS2013, где я использую отчет от Telerik. В решении у меня есть один отчет и несколько классов. Если я скопирую первый отчет, переименую его, Visual Studio сообщит об ошибке:

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

Есть ли у вас кто-то с опытом и кто-то, кого вы не знаете, решение?

3 ответа

Это вопрос о том, как использовать Qt. У меня есть два пути, скажем c:\users\herbie\stuff\file1.txt и c:\users\HERBIE\stuff\file1.txt. Я хочу написать метод, который скажет мне, относятся ли эти два пути к одному и тому же файлу или нет. Этот метод должен работать под windows и linux. Поэтому я.

У меня есть два патча к одному и тому же коммиту в Gerrit . Первое было сделано явно как патч (поправка) к изменению, но второе пришло из другого изменения, которое было построено поверх этого изменения и было одобрено и объединено до этого изменения. Поэтому мне нужно создать diff между двумя.

Я получил эту ошибку при использовании первых миграций кода entity framework и имел одно и то же имя для двух моих миграций в папке Миграции.

Two output file names resolved to the same output path: "obj\Debug\***.resources

Я удалил дубликат файла migration.cs, и ошибка исчезла. повторный запуск надстройки с тем же именем вернул ее обратно.

У меня было три файла для userControl, все они имели общий частичный класс, и это вызвало мою проблему; они были названы ucPlate.cs, ucPlate.Map.cs и ucPlate.Graphics.cs. Когда я изменил ucPlate.Graphics userControl surface на DoubleBuffered, я получил ошибку компиляции: "Ошибка 21 Два имени выходных файлов разрешены в один и тот же путь вывода: "obj\Debug\ASMS.Controls.ucPlate.resources" Возврат к DoubleBuffered = false не исправил ее и не удалил файл .resx, который был создан, когда я включил DoubleBuffered (ранее не было файла .resx).

Основная причина заключалась в том, что включение DoubleBuffered в файле дочернего частичного класса автоматически добавило InitializeComponent() в нижнюю часть моего кода для этого файла. Этот метод указывал дубликат имени ucPlate, заставляя создание .resx, которое уже существовало для файла ucPlate.cs. Я ожидал, что это будет ucPlate.Graphics.resx.

перейдите к решению explorer (если вы переименуете форму e, попробуйте посмотреть на свою ошибку и удалить файл .resx , который был в вашей ошибке)

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

Как получить доступ к одному и тому же имени переменной внутри функции в javascript var xyz = Hello; console.log(outside function: + xyz) function abc() < var xyz = World!; console.log(inside.

Недавно я создал новый Form под названием WorkersScreen . Когда я пытаюсь запустить проект, я получил эту ошибку: Ошибка 1 Два имени выходных файлов разрешены в один и тот же выходной путь.

Это вопрос о том, как использовать Qt. У меня есть два пути, скажем c:\users\herbie\stuff\file1.txt и c:\users\HERBIE\stuff\file1.txt. Я хочу написать метод, который скажет мне, относятся ли эти.

У меня есть два патча к одному и тому же коммиту в Gerrit . Первое было сделано явно как патч (поправка) к изменению, но второе пришло из другого изменения, которое было построено поверх этого.

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

Я работаю в некоторых проектах жестких ссылок ntfs. Я хочу знать, как определить, принадлежат ли два файла (с полным путем) одному и тому же тому.

Я хочу проверить, есть ли два пути к одному и тому же файлу/каталогу с Boost.Filesystem. Например, /bin и/. /bin находятся в одном каталоге, но следующий код работает не так, как предполагалось.

Эта (довольно старая) статья , по-видимому, предполагает, что два основных процесса Unicorn могут привязываться к одному и тому же пути сокета Unix: Когда старый мастер получает QUIT, он начинает.


  • 10 убедитесь, что у вас нет двух файлов .resx
  • @WimOmbelets, я тоже получил эту ошибку, и спасибо, что сэкономили мне время на причину . Я бы сказал, вы должны вставить ее в качестве ответа
  • Проблема заключалась в двух миграциях с одинаковым именем (разница была в заглавных буквах).

Это может произойти, если два RESX-файла указывают на одну и ту же форму. В основном происходит при переименовании форм (могут быть другие причины, я не совсем уверен)

Если ваши конкретные файлы форм выглядят так:

тогда это обычно означает, что вы переименовали форму, но Visual Studio не удалила старый RESX-файл. После того, как вы удалите файл (в этом примере ) вручную, ошибка должна исчезнуть при следующей сборке.

  • 7 Также повторно откройте проект и удалите MyFormerFormName.resx из обозревателя решений. Visual Studio все еще может ссылаться на него. У меня это обычно работает.
  • 1 @XPecto Спасибо! Решение Вима не работало, пока я этого не сделал!
  • Почему это не выбрано в качестве решения ?!
  • Если он не исчезнет, ​​обязательно откройте .csproj и удалите ссылки на .resx.

По состоянию на 8.03.16 это работает для меня!

Сначала выгрузите проект, щелкнув его правой кнопкой мыши, затем щелкните выгрузить проект.


Щелкните правой кнопкой мыши свой проект еще раз и нажмите редактировать проект.


Он покажет вам код, найдите повторяющиеся значения, которые в моем случае выглядят так

Обратите внимание на эту часть, это дублировать!

удалять один из них, чтобы он выглядел так

Сохраните его, щелкните правой кнопкой мыши свой проект, затем щелкните перезагрузить проект. Вы сделали!

  • 1 Это именно то, что я сделал и работает как шарм !!
  • Что мне делать, если я не могу найти дубликаты? Я попробовал Ctrl + F с именем файла, указанным в ошибке, и похоже, что дубликатов нет.
  • У меня была эта проблема с файлом ресурсов. Я удалил все, что связано с ресурсами, а затем удалил сам файл ресурсов. после сохранения. Скомпилировано. Добавлен новый .resx. Все хорошо.

Обычно, если вы создаете такую ​​миграцию

Visual Studio создаст миграцию с именем класса, например UpdateProducts. Если вы добавите новую миграцию позже с тем же именем миграции, она будет генерировать миграцию с именем класса, например UpdateProducts1., Автоматически добавляя увеличивающуюся цифру в конце в качестве суффикса. Каждый раз, когда вы создаете новую миграцию, число увеличивается на единицу.

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

Простое изменение имени класса новой миграции устраняет проблему.

  • Я удалил проблемную миграцию и создал новую с другим именем

Я немного поискал, у меня была такая же проблема, вероятно, потому что в вашей форме два .resx, если вы попытаетесь удалить один, проблема исчезнет из моей формы:

я удалил Log_in.resx, и моя программа снова заработала

Убедитесь, что у вас нет двух файлов . Смотрите в вашем проекте под номером . У меня работает.

В моем случае проблема была вызвана тегом EmbeddedResource для файла designer.resx, который каким-то образом был добавлен в файл .csproj.

В частности, следующее:

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

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

Это случилось со мной, когда я скопировал форму, чтобы повторно использовать большую часть функциональности, а затем переименовал форму. Я зашел в указанный каталог, обнаружил, что на самом деле существует только один файл, скопировал этот файл, переименовал его, чтобы указать имя моей новой формы, а затем вставил новый файл обратно в каталог.

Копирование форм не кажется хорошей идеей.

  • это то, что я сделал (скопировал и вставил весь .cs в обозреватель объектов, переименовал .cs, а затем имя формы [свойство] в VS 2013) .. но сами файлы существуют и, кажется, названы правильно - я все еще появляется ошибка?
  • ах .. я думаю, что теперь вижу. Когда я переименовал форму в скопированном файле, она также переименовала форму в оригинале! И также отредактировал все ссылки. радость.
  • @daBich Да, вы поняли, я скопировал Form1.cs в Form1_Copy.cs, переименовал Form1_Copy в Form2, но затем обнаружил, что все ссылки на класс Form1 в Form1.cs и Form1.Designer.cs были изменены на Form2. svn revert сделал свое дело :-)

Это случилось со мной, когда я запустил команду и дал то же имя, что и имя моего проекта, в качестве класса миграции. Я удалил все классы миграции и добавил новый, снова построил решение.

В моем случае помогите удалить один * .resx для каждой формы, в которой возникла ошибка

В нашем проекте у нас есть 6 * .resx для каждой формы для локализации (DE, GB, SK, RU, SRB), и если я удалю (из VS) FormName.sr-Latn-CS.resx, ошибка исчезнет. Если я попробую удалить FormName.en-GB.resx, это не помогло. Ошибка исчезла только при удалении sr-Latn-CS.resx (возможно, дизайнер не может решить два -). Я впервые увидел эту ошибку, когда перенес проект с VS 2010 Win 7 на VS2010 Win 10.

Если эта проблема возникла, когда вы работали с EntityFramework и пытались выполнить , решение простое: удалите папку (в обозревателе решений) и выполните . При необходимости выполните резервные копии миграции.

У меня была проблема, и она была вызвана тем, что у меня частичный класс из настраиваемый контроль.

Я случайно создал RESX-файл для частичного

Думаю, я сделал это, нажав Shift F7 в частичном классе и создав пустую конструкторскую форму.

Удаление файла .resx в частичном классе разрешило это для меня. Я использовал контроль версий, и он показывал, что это новый файл.

Надеюсь это поможет

Для меня проблема заключалась в копировании и вставке .aspx, а не в переименовании кода файлов классов в соответствии с именем скопированного aspx-файла. Сработало изменение кода и имен классов дизайнера.

У меня была такая же проблема: я удалил файлы миграции (через студию) после обновления базы данных.

У меня только что возникла эта проблема с использованием версии сообщества VS 2019.

У меня не было дубликатов файлов .resx. У меня не было дубликатов файлов .cs. Я не мог найти решение в Интернете.

Чтобы решить проблему, я очищенный решение, а затем перезапущен VS. Не знаю почему, но это сработало. Надеюсь это поможет.

В моем случае мне пришлось открыть в Note ++ и искать файлы в тегах . Я обнаружил несколько странных со странным суффиксом языка , другие файлы были обычными файлами либо без суффикса языка, либо с суффиксом * .ar, я удалил файл жуткий встроенный тег ресурса, и это устранило проблему для меня.

Подтверждаю ответ WimOmbelets, данный в комментариях. Очевидно, это может произойти, если вы переименуете класс в VS2012 (у меня этого никогда не было в предыдущей версии).

Я не могу быть уверен, что это причина, но одна вещь, которую я сделал, отлична от моего обычного, - это я использовал F2 чтобы переименовать его, а не изменить, а затем нажать контроль-.

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

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

Затем ошибка возникла, когда я попытался взять код из 2-го файла и скопировать / вставить в новый файл без формы только с классом, как я и намеревался по существу превратить его в библиотеку и сделать код немного более правильным и удобочитаемый. Поскольку я не знал точно, что вызвало ошибку, когда она произошла, и внес небольшое количество изменений, мне потребовалось некоторое время, чтобы отследить. Даже после реверсирования кода мне удалось пропустить пару методов.

Методы для основной формы, содержащие класс Form с initializeComponent и конструктор формы (load). Вторая копия этих методов приводила к той же ошибке. Даже после удаления лишнего кода и лишних файлов формы и resx. Я даже попытался удалить законный файл resx, поскольку он не был активно нужен. Мне не удалось его эффективно отследить, поскольку любые ошибки указывали на допустимые версии этих сегментов кода. Ctrl + F и резервные копии - ваши друзья.

Надеюсь, это кому-то поможет

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

Затем я получил два класса с одинаковым именем в двух разных файлах (* .cs).

Два указывают на один и тот же файл ресурсов, который не должен использоваться одним из них.

Это тривиальная проблема, но иногда бывает трудно найти причину, потому что глядя на cs файлы просто не могу сказать, какой из них вам следует искать.

Если ваша конкретная форма файлов выглядит так:

Как из 8/03/16 это работы для меня!

Выгрузить первый проект, кликнув правой кнопкой мыши на ваш проект нажмите кнопку выгрузить проект.

Введите описание изображения здесь

Щелкните правой кнопкой мыши проект и выберите команду редактировать проект.

Введите описание изображения здесь

Он покажет вам некоторые код, искать повторяющиеся значения, которые в моем случае выглядят так

Заметили эту часть, это дубликат!

Удалить один из них, поэтому он будет выглядеть так

Сохранить его, щелкните правой кнопкой мыши на ваш проект нажмите кнопку Перезагрузить проект. Вы молодец!

Обычно, если вы создаете миграции такой

В Visual Studio создаст миграции с именем класса, как UpdateProducts. Если вы добавляете новую миграционную позже, используя то же имя миграции, он будет генерировать миграции с именем класса, как UpdateProducts1,. автоматически добавлять увеличивается цифра до конца в качестве суффикса. Каждый раз, когда вы создать новый миграции, число увеличивается на один.

В нашем случае по какой-то причине, против запуталась, и начал генерировать последующие переносы с тем же именем класса, как существующие миграции, так что это было два авто сгенерированные миграции с тем же именем.

Просто изменив имя класса нового миграционного очищает проблему.

я удалил Log_in.resx и моя программа снова работала

Поиск по всем проектам класса сообщается, в список ошибок, как в DryWash данном случае вопрос`.WorkersScreen это может повториться в другой файл с другим именем файла, но внутри же имя класса.

У меня такая проблема, когда я случайно вызвал миграцию с таким же именем, как бизнес-объекта. Раствор для удаления миграции, а затем создать новую с другим именем.

Это просто случилось со мной. Я случайно на "перетаскивания" а формы в другую. Он закончил делать копию называемый "копия наша". Я удалил его и проблема ушла.

В моем случае, проблема была вызвана тег EmbeddedResource для дизайнера.файл resx, который почему-то получил добавил .файл csproj.

В частности, следующие:

Я только что получил этот вопрос, используя против 2019 сообщества издание.

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

Это случилось со мной, когда я скопировал форму для использования большинства функций, а затем переименована в форме. Я зашел в каталог, ссылки, обнаружил, что там было на самом деле только один файл, скопировал файл, переименовал его, чтобы ссылаться на имя моей новой формы, а затем вставить новый файл обратно в директорию.

Копирование форм не кажется хорошей идеей.

Это случилось со мной, когда я выполнить команду "добавить" Миграция и дал же имя, как и мое имя проект класс миграции. Я удалил все классы миграции и добавил новый, решение вновь построить.

Если эта проблема возникла при работе с и EntityFramework и пытался добавить-миграция, Решение простое: удалите папку миграций (в обозревателе решений) и выполнить включить-миграций`. Резервное копирование миграции, если вам нужно.

У меня был вопрос и он был вызван тем, что у меня было разделяемого класса от таможенного контроля.

Я случайно создал .файл resx для частичного

Я думаю, что я сделал это, нажав Shift F7 на частичный класс и выпуск пустой конструктор форм.

Удаление .файл resx о частичном класса решена она для меня. Я был с использованием контроля версий, и это показывало, что это был новый файл.

Надеюсь, что это помогает

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

У меня был тот же вопрос, что я делал, было удалить мои файлы миграции (через студию), после того как я обновил базу данных.

Я подтверждаю WimOmbelets ответ дан в комментариях. Это, очевидно, может случиться при переименовании класса в VS2012 (я никогда не имел этого в предыдущей версии).

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

Методы для главной формы, содержащей форма класс с метод initializecomponent и конструктор формы (нагрузка). Появился 2-й экземпляр этих методов в результате та же ошибка. Даже после удаления дополнительный код и дополнительные формы и файлы resx. Я даже пытался удаление законные файл resx, поскольку он не был активно нужен. Я был не в состоянии эффективно отслеживать его, потому что любые ошибки указал на авторитетных версии этих сегментов кода. Сочетание клавиш Ctrl+F и резервные копии ваших друзей.

Читайте также: