it-roy-ru.com

Всплывающее окно Visual Studio: "операция не может быть завершена"

Когда я пытаюсь открыть проект, локальный или на Team Foundation Server (TFS), я получаю модальное окно, сообщающее, что:

Операция не может быть завершена: ошибка не указана

Или то же сообщение, но с «Класс не определен ..» вместо «Неуказанная ошибка».

Эти ошибки начали происходить ранее сегодня, когда я попытался зарегистрировать некоторые из моих работ на сервере Team Foundation. Я пытался использовать Visual Studio 2008 на том же компьютере, но все равно получаю ту же ошибку. Я также гуглил это, но ни одно из решений, кажется, не помогает мне.

Я также установил последние обновления из Центра обновления Windows.

Есть идеи?

185
nbon

Вы пытались удалить файл Your_Solution_FileName.suo

Файл .suo должен находиться в той же папке, что и файл .sln, или в папке .vs для более новых версий Visual Studio. Папка .vs может быть скрыта.


Обновление для Visual Studio 2017
В VS 2017 файлы .suo находятся в другой папке: файл .suo находится вYourSolutionFolder\.vs\YourSolutionName\v15\.suo 

Папка .vs скрыта, а файлы .suo - это файлы без имени, имеющие только расширение .suo


 
Объяснение

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

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

Чтобы оставаться в безопасности, вы можете переименовать файл .suo, а затем повторить попытку, чтобы запустить решение, чтобы посмотреть, поможет ли это.

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


При удалении .suo файл не работает
Вот список других вещей, которые вы можете попробовать, если удаление файла .suo не решает проблему:

  • Перезагрузите компьютер
  • Очистить временную папку Windows
  • Очистите решение от IDE (Меню\Построить\Очистить решение)
  • Очистите решение вручную (удалите скомпилированную DLL/EXE в папке /bin/ и очистите временные файлы, которые VS создает в процессе сборки, в папке /obj/ (у каждого проекта, составляющего решение, есть эти папки, поэтому очистите их все))
  • Попробуйте открыть каждый отдельный проект, составляющий решение 1: 1, и постройте его, чтобы понять, какой конкретный проект вызывает проблему.
  • Понять, что такое изменение/редактирование/модификация, вызвавшее ошибку, и отменить ее (инструмент контроля версий может помочь ...)
  • Если у вас есть пользовательские элементы управления: проверьте код в конструкторе. VS IDE будет вызывать конструктор ваших пользовательских элементов управления даже во время разработки, и могут произойти странные вещи (во время разработки некоторые свойства не работают, ваша строка подключения, вероятно, не заполнена ...)

В крайнем случае... 

  • Попробуйте установить любое обновление VS
  • Попробуйте отключить VS расширения (если вы установили какие-либо ...)
  • Попробуйте обновить любую внешнюю DLL/Control, указанную в вашем решении
  • Попробуйте обновить Windows
217
Max

Иногда это просто вопрос закрытие Visual Studio 2015 и затем снова открыть.  

Обновление: Visual Studio 2017, видимо, также.

У меня такое было на нескольких машинах. 

Это происходит случается .

"Вы пытались удалить файл" Your_Solution_FileName.suo "?" 

Также сбой компьютера, как, например, отключение электричества и т.д ... 

Применяется к Обновлению 2 и Обновлению 3 а также к свежей базе без каких-либо обновлений ...

114
Tom Stickel

VS 2015 -> Удаление все файлы в ComponentModelCache работали для меня:

C:\Users\**username**\AppData\Local\Microsoft\VisualStudio\14.0\ComponentModelCache

71
Niels Filter

Я столкнулся с этой же проблемой, но удаление файла .suo не помогло. Единственный способ загрузить проект - удалить "Your_Project_FileName.csproj.user" .

-

Я снова столкнулся с этой проблемой несколько месяцев спустя, но на этот раз удаление файла "Your_Project_FileName.csproj.user" не помогло, как в прошлый раз. Мне, наконец, удалось отследить проблему с IIS Express. Я удалил сайт из своего applicationhost.config и позволил Visual Studio воссоздать его, что позволило наконец загрузить проект.

19
QAZZY

Для меня эта проблема была вызвана конфликтующими конфигурациями <site> в следующем файле.

C:\Users\smunro\Documents\IISExpress\config\applicationhost.config

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

<configuration><system.applicationHost><sites>

Обратите внимание, что я оставил там элементы <siteDefaults>, <applicationDefaults> и <virtualDirectoryDefaults>.

Когда я перезагрузил проект, новый элемент <site> был создан автоматически.

11
Scott Munro

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

Простое исправление: 1. Перезапустите Visual Studio 2. ДО создания проекта используйте View-> Output Window

Теперь, когда вы строите, это должно работать.

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

7
HiredMind

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

Это может дать вам реальное сообщение об ошибке, которое является более полезным.

5
munnster79

Мне пришлось удалить веб-проект. Внутри был старый ссылочный файл DLL, и мне пришлось очистить этот веб-проект, и он заработал.

3
Emmanuel

У меня была похожая проблема при открытии Razor Views

  • Я вошел в свою учетную запись Azure, которая просила повторно ввести мои кредитные данные.
  • Restart VS 2015, обновление 1
3
Stefano Nepa

У меня была такая же ошибка. Я не мог открыть ни один класс и компонент моего решения. Я удалил ComponentModelCache и протестировал любые другие решения .. но безрезультатно. Наконец-то это помогло мне: просто закройте визуальную студию и снова откройте ее!

3
Elnaz

Это относится и к Windows 2017. да, вы можете закрыть Visual Studio и начать заново. Но почему эта проблема существует - и почему она еще не исправлена ​​?!

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

Microsoft, перестань вести нас на путь темной стороны! Устраните эти неприятности раз и навсегда и восстановите мир в галактике!

2
gimlichael

Я удалил старый проект из решения, после этого произошла ошибка. Мне пришлось открыть файл .sln в блокноте и удалить ссылку .dll на старый проект, который я удалил. После этого это сработало.

2
Christo Carstens

Я думаю, что StyleCop является причиной этой проблемы. Так, 

  1. Закрыть VS.
  2. Я удалил все файлы StyleCop.Settings и StyleCop.Cache во всех проектах решения.
  3. Я удалил также все проекты * .csproj.user файл.
  4. Перезагрузите VS. 
2
SOAL ABDELDJALLIL

Решение: Я получал этот диалог при попытке собрать/перестроить/очистить мой .sln. Чтобы это исправить, мне нужно было остановить сайт IIS, связанный с приложением, и перезапустить Visual Studio. (Затем запустите свой сайт снова).

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

Решения по удалению всех сайтов являются своего рода подходом «Nuke it from orbit», который следует использовать в качестве крайней меры.

2
Les McCutcheon

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

Обычно при удалении проекта из решения Visual Studio удаляет любые ссылки на него из других проектов в решении.

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

Использование Visual Studio 2012.

1
Martin Connell

Больше никаких файлов .SUO, но удаление файлов .user работает . К вашему сведению: я отлаживаю проект Silverlight

0
Andy Li

Перезапуск Visual Studio решил мою проблему :)

0
cahit beyaz

Перейдите в меню «Выполнить» и введите «inetmgr», т. Е. Откроется IIS и в правом углу окна действий выберите вариант изменения «Версия .NET Framework». Измени это. 

После этого переустановите Visual Studio 2010. Он работает на моем компьютере, и поэтому делитесь.

0
xxxx

Работая над проектами VB.Net в Visual Studio 2005, я сталкивался с этой проблемой много раз. Обычно отключение параметра «Включить процесс размещения Visual Studio» в свойствах отладки приложения решает проблему для меня. Обычно, когда включен процесс хостинга, это может повлиять на вызовы определенных API.

Чтобы снять этот флажок, вам необходимо выполнить следующие шаги:

  • Щелкните правой кнопкой мыши ваш проект в обозревателе решений.
  • Выберите свойства
  • На вкладке «Отладка» вы найдете флажок для Включить процесс размещения Visual Studio . Снимите этот флажок.
  • Сохраните ваши изменения
0
Sri Murthy Upadhyayula

Для решения этой проблемы я решил ее, удалив файл .user, содержащий пользовательские параметры проекта Visual Studio. Этот файл можно найти в том же месте, где находится ваш файл .sln. Кроме того, после удаления этого файла из проекта обязательно перезагрузите решение, чтобы оно вступило в силу.

0
CesarB

Работал для меня после того, как я закрыл Visual Studio (Community Edition 2015), открыл его и снова открыл проект. Это случилось со мной, потому что я использовал этот проект как зависимость в другом проекте, и он был открыт в другом экземпляре, но изменения не были имитированы ,.

0
tk26

Я удалил все файлы .suo и .user и перезапустил VS 2008. Но у меня это не сработало .. У меня сработали следующие шаги.

Open project file (.csproj) in notepad.
Removed all configurations from <Configurations></COnfigurations> tag.
Then add one by one configuration and reload project in VS.
Build the project or view project properties.
0
Pabitra Dash

Для проектов Visual C++ это может быть вызвано неправильно отформатированным файлом vcsproj.filters.

В моем случае кто-то выполнил слияние веток вручную и неправильно слил файл фильтров. Visual Studio по-прежнему загружал и создавал файл без каких-либо предупреждений, но выдает предупреждение «неопределенная ошибка» при попытке добавить или удалить файлы из проекта.

Сканируйте файл vcsproj.filters на наличие дубликатов записей или строк, которые выглядят так, и удалите их. Закройте и снова откройте проект.

<ClInclude Include="..\..\path\to\sourcefile.h" />

Visual Studio Enterprise 2017

0
Dan Q

Ни одно из решений выше не сработало для меня. Но следующее сделал:

  1. Откройте текущую папку в проводнике Windows
  2. Переместите папку вручную в нужное место
  3. Откройте файл .csproj. VS автоматически создаст файл .sln.
0
Sukhi

В моем случае «Silverlight 5 SDK» отсутствовал, и поэтому мои проекты Silverlight не загружаются. При попытке перезагрузить проект отображается сообщение «Операция не может быть завершена». После того, как я установил, проблема решена. 

0
sijovw

В нашем случае проблема появилась после внесения изменений в Debug -> myProject Properties -> Web, в частности, изменив URL проекта и затем закрыв VS. После повторного открытия VS столкнулся с трудностями при разборе нового URL-адреса и поэтому выдал ошибку. К сожалению, дальнейшая настройка через интерфейс VS не была возможна, поскольку проект не загружается. 

Поскольку изменения конфигурации файла сохраняются в файле myProject.csproj.user, который находится в корневой папке проекта, проблему легко исправить, просто удалив файл myProject.csproj.user. В этот момент проект загрузится, и пользовательский файл будет заново создан при следующем запуске проекта в режиме отладки. 

Обратите внимание, что URL-адрес проекта в сгенерированном файле пришлось изменить со значения по умолчанию http: // localhost: 58995 на исходное https: // localhost: 44302 до того, как все приложение будет доступно, так как мы заблокировать приложение под SSL. Ваши порты могут быть разными. Это было сделано через VS в Debug -> myProject Properties -> Web после запуска проекта.

0
spadelives

 enter image description here Перезапустите Visual Studio, так как администратор будет работать во многих случаях.

0
IP Kaal

Для меня это было потому, что я добавил запись для привязки сайта в IISExpress к определенному IP-адресу, и мой IP-адрес изменился. Я получил подсказку из журнала событий.

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

0
Ian Grainger

Я обновлялся до .NET4.6 из стороннего приложения (unity3d). Я получаю это сообщение, когда пытаюсь перезагрузить решение, когда оно не загружается при запуске. Моим решением было щелкнуть правой кнопкой мыши решение и выбрать «установить недостающие функции», что побудило меня загрузить то, что мне нужно. Загрузка всплывающего окна не работала, поэтому я просто установил пакет таргетинга .NET для того, что у меня было (4.6), и это исправило это.

0
hydrix

Если вы используете Visual Studio 2015 и работаете в ASP.NET, создайте новый веб-сайт, скопируйте предыдущие файлы на новый сайт и создайте свой сайт. Ваш старый проект все еще ссылается на некоторые старые параметры запуска.

0
James Wanyeki