Visual Studio 2010 "не может найти" C:\Users\[USERNAME]\AppData\Local\Temp\1 \.NETFramework, Version = v4.0.AssemblyAttributes.vb после каждой перезагрузки

Недавно я добавил некоторые из моих проектов Visual Studio 2010 в решение, и теперь каждый раз, когда я снова открываю программу, они перестают компилировать. Они жалуются "Не удается открыть файл модуля C:\Users [USERNAME]\AppData\Local\Temp\1.NETFramework, Version = v4.0.AssemblyAttributes.vb. Система не может найти указанный файл". Я проверил, файл существует и доступен из самого редактора VS!

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

Ответ 1

Да, это проблема, вызванная подключением к удаленному рабочему столу. RDC (по умолчанию) настраивается для использования, создавая новый каталог при каждом удаленном входе в систему. Кроме того, он устанавливает (отдельную настройку) для удаления этого каталога после выхода из системы. Реальное решение состоит в том, чтобы удалить эти два параметра, чтобы он просто использовал вашу стандартную папку Temp, а не удалял файлы при выходе из системы.

Существует также два способа обхода проблемы:

  • Временное решение 1: Удалите файл .suo для решения, прежде чем открывать решение или перестраивать.
  • Временное решение 2: Используйте параметр "Восстановить все" для исправления.

Примечание. Настройка RDC действительно может быть выполнена только в том случае, если вы вошли в систему как администратор в поле, таким образом, два обходных пути.

Ответ 2

Я перезапустил визуальную студию и сделал трюк...

Ответ 3

Другой вариант - создать нужные файлы в нужном месте. Это будет:

"C:\Users\user\appdata\local\temp\1.NETFramework, Version = v4.0, Profile = Client.AssemblyAttributes.cs" со следующим содержимым:

// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0,Profile=Client", FrameworkDisplayName = ".NET Framework 4 Client Profile")]

"C:\Users\user\appdata\local\temp\1.NETFramework, Version = v4.0.AssemblyAttributes.cs" со следующим содержимым:

// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0", FrameworkDisplayName = ".NET Framework 4")]

"C:\Users\user\appdata\local\temp\1.NETFramework, Version = v4.0.AssemblyAttributes.vb" со следующим содержимым:

Option Strict Off
        Option Explicit On

        Imports System
        Imports System.Reflection
        <Assembly: Global.System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.0", FrameworkDisplayName:=".NET Framework 4")>

для другой версии .NET, просто измените версию в содержимом файла, например.

[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.5", FrameworkDisplayName = ".NET Framework 4.5")]

Ответ 4

Это ошибка в Visual Studio 2010. Чистка и сборка работают для меня.

Ответ 5

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

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

Ответ 6

Я удалил файл AssemblyAttributes.vb, и он волшебным образом восстановился. как я решил.

Ответ 7

Не открывайте решение прямо из visual studio 2010. откройте решение, щелкнув файл решения проекта из папки, в которой был сохранен проект.

его решена моя проблема...

Ответ 8

Как и vcsjones, это похоже на проблему с RDC. Он исправил себя после того, как я закрыл сеанс RDC и reset сервер терминалов.