在VS Community 2015中创建新项目或构建旧的有效项目时出错

时间:2016-08-25 07:51:21

标签: constructor

我有一个问题阻止我在VS Community 2015中创建新项目,甚至不允许我构建或调试任何以前的有效项目。

当我尝试创建新项目(File-> New-> Project)时,我得到一个MessageBox,错误"对象引用没有设置为对象的实例"。

当我尝试构建旧的有效项目时,我收到以下错误:

Severity    Code    Description Project File    Line    Suppression State
Error       at System.Security.Cryptography.SHA256Managed..ctor()   CopyTool            
Error       at Microsoft.CodeAnalysis.CommandLine.DesktopBuildClient.GetBasePipeName(String compilerExeDirectory)   CopyTool            
Error       at System.Reflection.RuntimeConstructorInfo.Invoke(BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture)    CopyTool            
Error       at System.Security.Cryptography.SHA256.Create() CopyTool            
Error       at System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)   CopyTool            
Error       at Microsoft.CodeAnalysis.BuildTasks.ManagedCompiler.ExecuteTool(String pathToTool, String responseFileCommands, String commandLineCommands)    CopyTool            
Error       --- End of inner exception stack trace ---  CopyTool            
Error       at Microsoft.CodeAnalysis.CommandLine.DesktopBuildClient.GetPipeNameForPath(String compilerExeDirectory)    CopyTool            
Error       Unexpected exception:   CopyTool            
Error       System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.  CopyTool            
Error       at System.Security.Cryptography.CryptoConfig.CreateFromName(String name, Object[] args) CopyTool            
Error       at Microsoft.CodeAnalysis.CommandLine.DesktopBuildClient.RunServerCompilation(RequestLanguage language, List`1 arguments, BuildPaths buildPaths, String keepAlive, String libEnvVariable, CancellationToken cancellationToken)  CopyTool"

任何帮助将不胜感激! 谢谢! 奥勒利安

1 个答案:

答案 0 :(得分:0)

我通过禁用FIPS模式解决了这个问题。以下是步骤:

  1. 按Windows键+ R打开“运行”对话框。

  2. 在“运行”对话框中键入“gpedit.msc”(不带引号),然后按Enter键。

  3. 导航到组策略编辑器中的“计算机配置\ Windows设置\安全设置\本地策略\安全选项”。

  4. 在右侧窗格中找到“系统加密:使用符合FIPS标准的算法进行加密,散列和签名”设置,然后双击它。

  5. 将设置设为“已禁用”,然后单击“确定”。

  6. 重新启动计算机。

  7. 来源:http://www.howtogeek.com/245859/why-you-shouldnt-enable-fips-compliant-encryption-on-windows/