Visual Studio 11 Ultimate Static Analysis Shows No Output - c++

So Microsoft released a trial version of Visual Studio 11 Ultimate Developer Preview. I decided to try out the static code analysis feature.
I successfully updated my solution to 2011 and get my project file to build.
However when I try to run the 'Run Code Analysis For Solution' it then proceeds to simply build the solution/project but display no output in the code analysis window (even if I've hacked the code to make sure it should show some errors).
I did have Visual Studio 2010 previously installed and I wonder if that's affecting it?
Any help or anyone ran into similar issue?
*EDIT:
I made a sample project and in it the code analysis works... I'm not sure what I'm missing from my old migrated project to enable it. (I've done the obvious and enabled Static Analysis in the configuration properties menu)

First check which build toolset do you use.
For upgraded project it is Visual Studio 2010 by default.
However when I did similar exercise with my project it didn't compile after switching to VC11 compiler - there were some issues with include paths I had to resolve.

Related

Using legacy toolset from VS2005 in VS2019

I ran into the rare situation that I have to use static libraries in a project which were compiled with Visual Studio 2005.
As I do not want to get into trouble at runtime as mentioned in this post or here,
I think it's reasonable to use the original toolset.
As far as I have seen, using toolsets down to VS2008 is straightforward. For VS2005 this seems to be more challenging, only Daffodil might be an option.
Is there any chance to get the toolset v80 (VS2005) into the dropdown menu of VS2019 ?
After playing around, I don't know exactly understand how daffodil works or how a feasible approach looks like.
Maybe one could create wrapper-DLLs with a plain C-API and the help of VS2005. Using one IDE with various toolsets feels advantageously to me.
Daffodil works only in earlier versions of Visual Studio 2012/2013/2015.
For using daffodils, check out the related thread: How to move old VC6 project to VS2010 using Daffodil.
To build your project in VS 2010:
Make sure the VC 6 build tools are installed and working. Make sure VS
2010 and Daffodil are installed and working. Open your VS 6 workspace
in VS 2010. A. In Explorer, right-click on your VS 6 workspace (*.dsw)
file. B. Choose Open With -> Microsoft Visual Studio 2010. C. Perform
the migration when prompted. Change the Platform Toolset to v60. A.
Right click on the project(s) and select Properties. B. On the General
page, set Platform Toolset to v60. Build.

Visual Studio 2013, error MSB8020: The build tools for Visual Studio 2010 cannot be found

At the start I'd like to note that I've spent some time researching this issue and suggested solutions for similar questions like this one didn't help me.
Problem background
I need to migrate a Firebreath plugin project (which I haven't worked on previously) from PC_1 to PC_2.
As far as I'm aware the project was started on PC_1 on Visual Studio 2010 and later moved to Visual Studio 2013 Pro. There's one solution consisting of 19 projects. I have an instruction which says that in order to get the plugin installer I should first Build project_x and after that Build project_y_WiXInstall. Both steps work without any issues on this machine.
Then there's PC_2 which had Visual Studio 2015 Community installed before I started working on it. I've removed it, installed Visual Studio 2013 Pro (version 12.0.21005.1 REL - exactly the same as on PC_1), moved all of the needed files and I'm trying to get rid of all of the compilation errors. So far I figured out I had to install Cmake 2.8, Windows Driver Toolkit 7.1 and manually override an incorrect VCTargetsPath MSBuild variable
Problem description
Currently when I try to compile the project on the new machine I get these two errors (this is an image link since I can't embed images yet on this account). I'm not sure what's going on with the first error message since it looks incomplete and the file CUSTOMBUILD doesn't exist, but I'm not bothered by it too much since the previous compilation error I fixed also had a similar "artifact" as the first error and it disappeared after fixing the second one.
The covered part of the second error message is the project path. The error origin (Microsoft.Cpp.Platform.targets file, line 64) looks like this:
<!-- Error out if toolset does not exists in Visual Studio 2010 or 2012 -->
<VCMessage Code="MSB8020" Type="Error" Arguments="$(_CurrentPlatformToolsetShortName);$(PlatformToolset)" Condition="'$(ToolsetTargetsFound)' != 'true'" />
What didn't help
The error description suggests using an Upgrade Solution... option, but there's no such thing when I right-click the solution
As an accepted answer for the question I've posted at the start of my post suggests, I've checked the Properties of all 19 of my projects (including the project ZERO_CHECK) but their Platform Toolset is already set to Visual Studio 2013 (v120).
I've also tried changing the Platform Toolset to inherit from parent or project defaults for all of the projects. This resulted in it switching to Visual Studio 2010 (v100) (not installed) and after that I've right-clicked on the projects and chose Upgrade VC++ compiler and libraries. After this the Platform Toolset was back to the Visual Studio 2013 (v120) but it didn't help with the compilation error.
As a NON-accepted answer for the question I've posted at the start of my post suggests, I've tried searching for all of the occurrences of 10.0 and V100 in all of my .vcxproj files to replace them but I haven't found any occurrences of them.
[EDIT]
I just got an idea to try building the project with MSBuild from the command line. There's a bit more info compared to errors inside Visual Studio, so maybe it will help with resolving the issue: https://pastebin.com/JhN3dXM3
So the thing you're missing here is that FireBreath projects are built using CMake -- the actual contents of the build directory should always be completely temporary and never stored in source control. To build the project on a new computer you need to run the prep command again from scratch.
If the previous maintainer changed the build files manually and/or migrated it to a newer version of visual studio without using cmake to do it then they did some very ugly things and all bets are off... good luck.
This is why all the firebreath documentation (I wrote most of it) strongly urges that the build directory be transient and you always do project file updates in cmake.
Hope that helps!

Unhandled exception at 0x74E733AB (ucrtbase.dll) in OpenClaw.exe

I wanted to tinker this open source remake of the famous Claw.
Visit https://github.com/pjasicek/OpenClaw
Before I start with how I've cloned this game and tried to build it, I'm new to the open source community. I did the following things.
I cloned the repository.
Opened the project using Visual Studio 2017 Community edition and I changed the Configuration to Release and platform to Win32.
I then built the libwap solution without any errors.
Then I used CMake 3.11.0 to generate the required files for the Box2D solution and then generated it and then the Box2D build was a success.
I built the Midiproc manually and finally, I tried building the entire solution.
It threw a MSVCR120D.dll missing error and I copied all the .dlls from the game's release folder https://github.com/pjasicek/OpenClaw/releases
Now the game runs just fine when I launch it from the File explorer, but when I try to launch it from Visual Studio 2017, it throws the following error.
Check out this image:
How do I run the game from Visual Studio? Have I misconfigured the Visual Studio?
If you need any more details on what I did, please let me know.
[EDIT] I want to configure Visual Studio to be able to run the release and modify the source code so I can tinker it and try to understand how the game works internally.
I cloned the repository again and did a clean compilation of all the solutions. Turns out there was a problem when I copied/overwritten all dlls from the release build. Now, the game builds and executes fine.
Thanks for the help.

Visual Studio doesn't recognize Unreal Engine

I'm a student in Videogame Development, and just starting out looking at Unreal.
And no, none of my teachers know anything about this.
I have installed Unreal Engine 4.13 and Visual Studio Community 2013 now 2015.
I'm trying to make a C++ project using Unreal Engine (using blueprints is out of question so this didn't help)
Now, when I make a basic C++ project, Visual Studio shows the following error message:
Unsupported
This version of Visual Studio is unable to open the following projects. The project types may not be installed or this version of Visual Studio may not support them.
For more information on enabling these project types or otherwise migrating your assets, please see the details in the "Migration Report" displayed after clicking OK.
- UE4, "C:\Users\Gebruiker\MEGA\Unreal\Disposable\Intermediate\ProjectFiles\UE4.vcxproj"
- Disposable, "C:\Users\Gebruiker\MEGA\Unreal\Disposable\Intermediate\ProjectFiles\Disposable.vcxproj"
No changes required
These projects can be opened in Visual Studio 2015, Visual Studio 2013, Visual Studio 2012, and Visual Studio 2010 SP1 without changing them.
- Engine, "Engine"
- Games, "Games"
- Disposable, "C:\Users\Gebruiker\MEGA\Unreal\Disposable\Disposable.sln"
Then my browser opens showing a Migration Report telling me that VS had an error with Project.vcxproj and UE4.vcxproj, although it copes with Engine, Games and Project.sln.
After this VS does show up without any further action, and it does automatically open *.h and *.cpp files for newly added classes in UE4.
Though it does edit and save these, it claims that all UE's code is wrong (with squiggles), and for compiling UE4 gives errors on pieces of code that apparently don't give errors on other's machines.
It would be much appreciated to be helped out, and I'm sure it would help others too who would have the same problem.
EDIT
A screenshot of the problem and configuration
EDIT 2
A screenshot of the Help -> About Visual Studio page, VS 2015 C++ highlighted
Starting with both the Unreal Engine Editor and Visual Studio closed, right click your .uproject file and select Generate Visual Studio project files, and then launch visual studio from the .sln file.
Once Visual Studio is open check your Solution Configuration is set to Development Editor. Then go to Debug > Start without Debugging (or Ctrl-F5). If everything compiles and the Editor opens again then you're good to go.
I uninstalled VS2013, installed VS2015 with all additional options checked, made a blank, new project with Unreal with just VS2015 on my pc, and now everything works fine.
Perhaps my VS2013 installation was broken, deprecated or switching version wasn't a good idea, but I can work with VS in any case now.
Also thanks to jeevcat for mentioning it!
Install newer version of the Visual Studio. VS2013 is not the latest one, VS2015 is. People report that even updating VS2013 from Update 2 to Update 4 helps resolving similar issues.

Missing MSVCP120D.dll but don't have Visual Studios anymore

I dug up an old project of mine from college when we exclusively used Visual Studios, and I'm looking to run it again. I don't have the exe anymore, just the debug version. When I run the debug version, I get the missing MSVCP120D.dll error. I have no way to recompile this into the release version. Is there a way for me to download the missing dlls, without downloading Visual Studios?
Incase you didn't know, MSVCP120D.dll is a dynamic link library for the IDE "Microsoft Visual C++ 12.0", which I believe is from Visual Studio 2013.
If you know the version of Visual Studio that you used (You specified 2010 and 2012 in the tags), you can use the following link to download the toolchain, Visual C++: https://support.microsoft.com/en-gb/kb/2977003
Another option is reverse-engineering, but this will be an incredibly difficult process and cannot give you the source that you originally used to create the debug version. Your best bet is to find the version you're after, if not re-writing it.
This installation, should you have the administrator privileges to perform it, should cause the error to cease, as your system will be able to find it in Sys32/Syswow64.
Edit: I would be vary wary to download a .dll from any other site other than Microsoft's official site, malicious DLLs are readily available from dodgy sites.