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


199

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

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

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

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

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

Любые идеи?


1
Если вы нажмете на это, проверьте ответы и здесь: stackoverflow.com/questions/32180470/…
BlackICE

22
В 75% случаев перезапуск VS решает эту проблему.
Дон Чидл

2019 и до сих пор проблема, теперь в VS2017. Затруднительный
user5226582

Разгрузить и перезагрузить проект работает для меня.
Чжан

Ответы:


238

Вы пытались удалить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

@sergiol Вы пытались отключить какие-либо визуальные надстройки студии, которые вы, возможно, установили? Когда-нибудь они могут разбить IDE
Макс

4
@sergiol Попробуйте удалить все .suo. Я удаляю .suo, которые существуют в верхней части папки решения и не работают. Затем я ищу один в скрытой папке "\ .vs \ ci-ucsp \ v14" и, наконец, работает.
Эрик Асто Облитас

3
В Visual Studio 2015 решением было удалить файлы .user, которые идут вместе с файлом .xproj.
Sixones

Удаление файла .suo из папки .vs не сработало. Кроме того, у меня не было никакого файла .user для удаления.
Хорхе Кэбот

1
Я приехал сюда, видя схожие проблемы, здесь не было ответов. Я только что обнаружил, что моя проблема была вызвана тем, что мое решение находится на моем onedrive, Onedrive был обновлен и имеет новую функцию под названием файлы по запросу. Эта функция вызывает аналогичные проблемы, как описано здесь. Более подробную информацию можно найти здесь. developercommunity.visualstudio.com/content/problem/134518/…
Леон Дегелинг,

115

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

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

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

Это произойдет .

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

Также сбой компьютера, например, сбой питания и т. Д.

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


3
Это ужасная досадная ошибка (которая и решила эту проблему), способ обнаружения проблемы без фактической попытки проверки состоит в том, что окно вывода не отображается (нет окна вывода == перезапустите VS для исправления).
Томас Андреэ Ван

Я до сих пор предпочитаю 2013 год некоторым вещам, таким как Nuget, различным сетевым соединениям TFS и различным областям стабильности. В целом против 2015 фантастический, но, конечно, не без некоторых проблем.
Том Стиккель

У меня была другая проблема с VS 2015 на днях, когда я не мог загрузить страницу localhost. Скрипач делал тонны звонков на то, чего я раньше не видел. Не знаю почему, но я и другой разработчик перепробовали разные вещи, прежде чем я решил попробовать закрыть VS 2015. Затем он снова работал, открывая его заново. Немного раздражает, но на данный момент не возвращаюсь по сравнению с 2015 годом (также установлен sp1)
Том Стиккель,

У меня было VS 2015 Update 2 на компьютере, и я внезапно не смог создать НОВОЕ веб-приложение (консольные приложения и т. Д. Я мог). Я тратил слишком много времени, пытаясь выяснить проблему, в итоге я сделал ремонт, выбив VS 2015 plus update 2 bundle ... очень раздражает, так как перезагрузка и другие вещи не исправили. - Просто еще одна проблема, которую я решил добавить в комментарии. (Я установил предварительный просмотр версии 15 на этот компьютер, поэтому мне кажется, что эта установка вызвала проблему).
Том Стиккель

73

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

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


2
Вы также можете посмотреть файл Microsoft.VisualStudio.Default.err в этом каталоге, чтобы определить причину проблемы.
Крис Лант

1
@ChrisLunt Это предложение показало расширение, которое выдавало ошибки. Удаление только что решило это для меня.
Боггин

2
У меня это не сработало, удаление этих файлов не имеет абсолютно никакого эффекта. Кроме того, никакие дополнительные строки не появляются в .errфайле, когда я вижу проблему.
Алексей Петренко

Thnx. Это отлично сработало для меня. Удаление файла .suo и других вещей не работает. Это идеальное решение.
sapatelbaps

19

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

-

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


2
Я удалил все сайты в applicationhost.config и смог перезагрузить проект.
Скотт Манро

Да, у меня просто была эта проблема, когда я переключил ветки git на решение. Не смог построить, не смог отладить, ничего. Удаление файла * .user сделало это.
Кристиан

12

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

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

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

<configuration><system.applicationHost><sites>

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

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


1
Это больше походит на это. Самым странным было то, что в VS2015 произошла ошибка, но в VS2010 она прошла нормально. :)
армия

1
Если вы используете Visual Studio 2015, то удалите файл applicationhost.config из <Root-of-Solution> \. Vs \ config \, это сработало для меня, потому что я испортил привязки.
Richard.Davenport

7

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

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

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

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


Кажется, это КЛЮЧ к рабочему решению! Я, конечно, не умышленно закрывал окно «Вывод» и даже не думал посмотреть и посмотреть, был ли там «Выход». Независимо от того, что может быть основной причиной, отсутствующее окно вывода было частью проблемы. ПРИМЕЧАНИЕ: в моем случае View-> Output (ctrl + alt + O) было недостаточно, чтобы вызвать появление окна, мне пришлось ЗАТЕМ перезапустить Visual Studio 2015.
Cos Callis

Да. Если вы попытаетесь выполнить Ctrl-Alt-O или View-> Output после выполнения какой-либо операции, которая пытается записать в окно вывода (например, сборку), будет слишком поздно - вам придется перезапустить.
HiredMind

5

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

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


3

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

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

3

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


3

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


2

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


У меня была похожая проблема. Файл SLN имел веб-сайт (не веб-проект), который ссылался на проект, который был удален из решения. В моем случае я просто добавил недостающий проект, и все хорошо.
г-н Т.А.

2

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

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

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


2

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

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

1

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

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

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

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


0

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


0

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


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

0

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

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

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

Visual Studio 2005? ... Я даже не вижу такой опции в последних версиях Visual Studio ...
Морти

@ArielAltamirano Как я уже сказал, эта опция присутствует в Studio 2005, но не уверен насчет последних версий
Шри Мурти Упадхьяюла

0

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


0

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



0

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

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


0

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

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


0

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


0

Я удалил все файлы .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

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

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

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

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

Visual Studio Enterprise 2017


0

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



0

В нашем случае проблема появилась после внесения изменений в 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

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

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

0

У меня была похожая проблема в проекте iOS в версии 2019, он работает на ВМ в Mac, я закрываю и перезапускаю Visual Studio, проблема исчезла…

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.