最近在 Win7 64 位中使用 Visual Studio 2010 Ultimate,C#,编译任何项目时都会出现以下错误。解决方法是添加<TrackFileAccess>false</TrackFileAccess>
到项目文件。如果我没有记错的话,这将禁用增量构建,所以我想远离这个解决方法。
有人知道永久可靠的修复方法是什么吗?我确实重新安装了 .NET Framework 4 和 VS 2010。我没有 4.0 框架文件夹的测试版或早期版本。
Error 1 The "GenerateResource" task failed unexpectedly.
System.TypeInitializationException: The type initializer for 'Microsoft.Build.Utilities.FileTracker' threw an exception. ---> System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.Build.Utilities.FileTracker..cctor()
--- End of inner exception stack trace ---
at Microsoft.Build.Utilities.FileTracker.ForceOutOfProcTracking(ExecutableType toolType, String dllName, String cancelEventName)
at Microsoft.Build.Tasks.GenerateResource.Execute()
at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext
我通过反映 Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Build.Utilities.v4.0.dll 找到了适合我的环境的解决方案
我的 TEMP/TMP 环境变量指向 ram 驱动器根文件夹 (T:\),没有任何进一步的目录嵌套!
这行 s_tempPath = Path.GetDirectoryName(Path.GetTempPath());Microsoft.Build.Utilities.FileTracker 的静态构造函数中的结果为 null,这导致了您提到的异常。
现在我的 TEMP/TMP 环境变量指向 T:\TEMP 并且一切正常。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)