VS2008: "Файл ресурсов открыт в другом редакторе"

Но это ложь!

Добрый день всем! У меня следующая проблема: при попытке открыть файл ресурса PriceCalculationUI.rc Visual Studio 2008 сообщает мне, что файл открывается в другом редакторе (в версии 2008 у меня есть только 1 открытая вкладка с файлом.cpp). Я проверил эту информацию: запустить Process Explorer и искал PriceCalculationUI справиться. В результате я не нашел ничего, кроме devenv.exe, который использует каталог PriceCalculationUI.

Что я могу делать дальше?

Спасибо за любую помощь!

Дополнительная информация: когда я перестраиваю (не собираю) проект, я вижу диалоговое окно с информацией об этом файле PriceCalculationUI.rc был отредактирован другой программой.

15 ответов

Решение

У меня были проблемы с этой ошибкой (также в Visual Studio 2010), даже когда у меня нет открытого файла.rc file / resource.h.

Единственный способ исправить это для меня - вручную открыть оба файла в текстовом редакторе (иногда я получаю сообщение msg: "Документ '[path]\resource.h' уже открыт. Вы хотите закрыть его?", Который я ответьте Да), закройте оба файла и попробуйте открыть файл ресурсов в представлении ресурсов.

На этой странице MS Connect предлагается закрыть решение, удалить файл.suo и снова открыть решение.

Если вы столкнулись с этой проблемой, вам необходимо:

  1. закрыть файлы.rc, resource.h, открытые внутри Visual Studio и снаружи.
  2. сворачивать элементы во вкладке "Resource View" VS, чтобы дать VS возможность обновить.
  3. Попробуйте снова развернуть.rc на вкладке "Просмотр ресурсов".

Я считаю, что причина того, что VS дает эту ошибку, заключается в том, что VS автоматически обновит эти файлы. Если вы откроете какой-либо из этих файлов в редакторе, VS считает, что есть вероятность конфликта. Так что это дает вам ошибку. Иногда это немного вводит в заблуждение, потому что VS, кажется, не знает.rc, и файлы resource.h открываются сами по себе. VS стреляет себе ногой в этом случае.

Задача решена:PriceCalculationUI.rcбыл открыт в текстовом редакторе VS2008 (щелчок правой кнопкой мыши по файлу в обозревателе решений -> Просмотреть код), затем был сохранен и закрыт. Это все! Когда я перезагружаю VS2008 проблема возвращается, но я знаю, что делать. Может быть, это из-за Visual Assist X? Я не знаю.

PS: Спасибо за ваши ответы: общение ведет к действию!

Закройте все открытые файлы в VS. Тогда я могу открыть файл RC.

Это единственный способ, который работает для меня (Visual Studio 2015)
1) Открыть проект с заблокированным файлом ресурсов
2) Закройте все открытые файлы проекта в Visual Studio.
3) Закрыть Visual Studio
4) Запустите Visual Studio и снова откройте проект
5) Готово. Файл ресурса разблокирован...

Просто откройте .rc файл вручную в visual studio

Щелкните правой кнопкой мыши на файле .rc и нажмите Открыть

  1. Закройте все проекты в VS.
  2. Закройте VS.
  3. Откройте VS с пустым проектом.
  4. Открыть файл ресурсов исключительно.

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

Основная причина: я открыл файл Resource.h из моего решения, и он в настоящее время находится в открытом состоянии в редакторе VS. Когда этот файл открыт, он не может позволить мне получить доступ к файлу.rc в представлении ресурсов.("Открытое в другом редакторе выдается сообщение)

Решение: Просто я закрыл файл Resource.h на вкладке редактора VS, после чего файл.rc открылся правильно.

Надеюсь, это поможет, если у вас есть такая же проблема.

Для тех, кто только что столкнулся с этой проблемой: если вы безуспешно попробовали все вышеперечисленные обходные пути, просто закройте все документы и откройте их снова. проблема должна быть решена

Оказывается, что связанные файлы ресурсов (например, resource1.h) также должны быть закрыты, так что...

  • убедитесь, что VersionResource.rc не открыт
  • убедитесь, что все связанные файлы ресурсов не открыты
  • свернуть дерево на панели просмотра ресурсов
  • повторно разверните дерево на панели просмотра ресурсов
  • (надеюсь) заметить, что ошибка исчезла

Вот еще одна возможность - вы вручную отредактировали файл resource.h, скажем, чтобы добавить новый #define, но не обновили _APS_NEXT_CONTROL_VALUE, например, чтобы определить новый элемент управления, я добавил строку

#define IDC_LIST_MAINWIN 1003

но забыл изменить строку

#define _APS_NEXT_CONTROL_VALUE 1003

в

#define _APS_NEXT_CONTROL_VALUE 1004

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

Что-то, не упомянутое ни в одном ответе, но с которым я столкнулся сегодня:

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

Для меня простой способ (VS2022) — щелкнуть правой кнопкой мыши вкладку источника и выбрать опцию «Закрыть все, кроме этой вкладки». Затем Visual Studio правильно закрывает файл. Но у меня проблема возникает только тогда, когда я редактирую .rc-файл... .

У меня была эта проблема.

Решение CoderMarks решило это для меня.

Это сработало для меня:

  1. закройте все экземпляры Visual Studio
  2. удалить файл.aps проекта.
  3. заново открыть проект.

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

Другие вопросы по тегам