- Operating system: Windows 10 Enterprise, 10.0.19042
- SonarLint plugin version: 6.16.0.69538
- Programming language: C/C++
- Is connected mode used: Yes
- Connected to: SonarQube Developer Edition 9.9.0.65466
I have a C/C++ driver project which SonarLint is unable to scan. I get the following error message (the full log output is at the end of this post):
[CFamily Analysis] Error retrieving VCX configuration. File: D:\ExampleProject\ProjectFile1.cpp, Error: Microsoft.VisualStudio.ProjectSystem.ProjectException: Could not recognize the MSBuild value ‘Driver’ for property ‘ConfigurationType’ when converting to a VCProjectEngine legacy enumeration.
In the windows ConfigurationType Enum there is no ‘Driver’ option as seen here:
For a driver project the configuration type has to be ‘Driver’ as shown by Microsoft in a driver sample as seen here:
Is this a bug or is SonarLint not being able to scan windows drivers? Is there anything I can do on my end?
I am very grateful for any help!
Full log output:
[CFamily Analysis] Error retrieving VCX configuration. File: D:\ExampleProject\ProjectFile1.cpp, Error: Microsoft.VisualStudio.ProjectSystem.ProjectException: Could not recognize the MSBuild value 'Driver' for property 'ConfigurationType' when converting to a VCProjectEngine legacy enumeration.
at Microsoft.VisualStudio.ProjectSystem.ProjectErrorUtilities.ThrowProjectExceptionHelper(Exception innerException, String unformattedMessage, Object[] args)
at Microsoft.VisualStudio.ProjectSystem.ProjectErrorUtilities.ThrowProjectException(String message, Object arg0, Object arg1)
at Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationShim.<GetConfigurationTypeAsync>d__277.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.VCConfigurationShim.<<get_ConfigurationType>b__56_0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.ApartmentMarshaler.<>c__DisplayClass9_0`1.<<Invoke>b__0>d.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at Microsoft.VisualStudio.Threading.JoinableTask.CompleteOnCurrentThread()
at Microsoft.VisualStudio.Threading.JoinableTask`1.CompleteOnCurrentThread()
at Microsoft.VisualStudio.Project.VisualC.VCProjectEngine.ApartmentMarshaler.Invoke[TResult](Func`1 method)
at SonarLint.VisualStudio.Integration.Vsix.CFamily.VcxProject.FileConfig.GetVcFileSettings(ILogger logger, String absoluteFilePath, VCConfiguration vcConfig, VCFile vcFile)
at SonarLint.VisualStudio.Integration.Vsix.CFamily.VcxProject.FileConfig.TryGet(ILogger logger, ProjectItem dteProjectItem, String absoluteFilePath)
at SonarLint.VisualStudio.Integration.Vsix.CFamily.VcxProject.FileConfigProvider.Get(ProjectItem projectItem, String analyzedFilePath, CFamilyAnalyzerOptions analyzerOptions)
Unable to retrieve the configuration for file 'D:\ExampleProject\ProjectFile1.cpp'.
Check the file is part of a supported project type in the current solution.