Debugging with Qt 4.8.7 in Visual Studio 2017 - debugging

I have a fairly large project built using Qt 4.8.7.
Up until recently I have ben using Visual Studio 2010 for development and debuging (using the qt add-in).
I have upgraded to Visual Studio 2017 now and am not able to properly, for example, inspect the value of a QString (only partially, like the first letter of the string) anymore.
I tried installing the "new" qt tools thing without success.
Any advice on that topic?
Is this even possible with Qt 4.8.7 and VS2017 or do I have to upgrade the whole project to Qt 5 in order to properly debug?

A more detailed answer for people who will pass-by. You can download qt4.natvis from here, and add it to the system-wide Natvis directory (%VSINSTALLDIR%\Common7\Packages\Debugger\Visualizers).

I found a compatible .natvis file for Qt 4 on the net, directing VS17 to the file fixed my problem

Related

Target Framework not installed when opening a Unity project with Visual Studio 2022

I am trying to open a C# solution that has been generated from a Unity v2020.3.19f project with Visual Studio 2022. Opening it with Visual Studio 2019 works just fine, but there are reasons I'd like to be able to open it with v2022 (such as GitHub Copilot). I did not have issues with this on my previous install of Windows 10.
Upon opening the solution in VS2022, I get the following pop-up prompt for every project in the solution:
Choosing the first option updates the target project to .NET Framework 4.8 and loads the project, but the whole file appears with red lines. When hovering over an underlined bool Property, the error shows as: `CS0518: Predefined type 'System.Boolean' is not defined or imported.
Choosing the second option opens this URL in my browser, prompting me to install .NET Framework 4.7.1 targeting pack (which was already installed via the Visual Studio Installer). When I try to install the .NET Framework 4.7.1 runtime, the installer responds with .NET Framework 4.7.1 or a later update is already installed on this computer. When I try to install the .NET Framework 4.7.1 Developer Pack, the installer allows me to choose from "Repair", "Uninstall", or "Cancel". Repairing has no effect.
I installed both versions of Visual Studio (2019 & 2022) the usual way through the Visual Studio Installer, along with the "Game Development with Unity" workload, which tells me it's installed all dependencies just fine:
Here's what I've tried so far:
Uninstall & reinstall all versions of Visual Studio through the Visual Studio Installer
Uninstall & reinstall Unity, with the Visual Studio module installed through Unity Hub (which just opens the Visual Studio Installer for me to choose which version I want to install)
Regenerate project files through the Unity Editor
Uninstall any references to .NET Framework through the Control Panel
Try reinstalling .NET Framework targeting pack 4.7.1 either from the Visual Studio Installer or manually through the Microsoft SDK website from the prompt
Nothing works for me. Any help on how to make VS2022 stop complaining is greatly appreciated.
Update 1: I found a couple of threads where people suggested simply pressing the Regenerate project files button in "Edit -> Preferences -> External Tools`. This has not helped me.
Update 2: I've tried everything I can possibly imagine, in different orders and different combinations. I even reinstalled Windows 10 to no avail. It's like Visual Studio just doesn't want to accept that the .NET Framework 4.7.1 targeting pack is installed. Please help :(
check this
https://learn.microsoft.com/en-us/answers/questions/733018/visual-studio-2022-cannot-locate-installed-net-fra.html
If you modified the value of ProgramFilesDir(x86), just to modify it back to C:\ProgramFiles(x86) can solve the problem
That is a very interesting problem, my main solution for you to first try is to make sure you are even targeting the correct .net framework in UNITY before you even build the solution. You are using the .NET 4.x, you need to go into your configuration settings and player settings in unity and ensure its not on a different version, for me, unity still defaults to .net standard 2.0. Follow the steps located here. To do so.
Another solution is to see if that first option actually gives you errors that prevent you from using unity, because I know that Visual Studio Code has problems occasionally where it tells me im wrong, my program is wrong, every life choice I have made was poor and I am poor, yet in unity, there are no errors showing in the console and I can hit play no problem. In that case I just had to rebuild a few times and fiddle with vs code until omnisharp stopped yelling at me.
Apperently I have been in a similar situation as when you were getting the error "Predefined type 'System.Object' is not defined or imported" because looking into it, I already have clicked on some of the links, try this one if that error persists. If you cannot prevent the errors to begin with, I would recommend you trying to fix the upgraded version from option one as that is more than likely going to get you the closest to a solution.

What is background build in Qt VS tools

Relates to Error while using Qt in Visual Studio 2019
I have the same error. Unfortunately I cannot still fix it, as Qt VS Tools for VS 2015 aren't updated. But my question is not how to avoid background build.
My question: what is background build?
Oh, I believe you are running into the 32767 names for this.
Let me preface this by stating that 2015 may have been the last time I used Visual Studio or developed anything for a Microsoft platform.
Part of your answer is in this discussion.
I believe the latest (or more current) name for "background build" is "live code compilation."
This is a resource robbing, highly annoying, syntax checking thing Microsoft thought would be great. It ranks right up there with Microsoft Clippy as far as tragic ideas go.
Basically, as you type, visual studio tries to build your stuff, puts squiggles under errors and generally consumes a whole lot of resources.
If you are using that Qt plug-in to build a QMake project this can cause all kinds of hardship, especially when you have UI files that need to MOC compile and are in the designer modifying the .UI file.
Whatever version of Visual Studio I was forced to use for that project, the first thing I did was find out how to turn that off.
Qt appears to not play well with Visual Studio it seems.
Here is a more complete description if you happen to have the plug-in.
BuildOnSave is an extension for Visual Studio 2019 and 2017 that
builds the current solution as soon a file is saved, and in
combination with the the extension SaveAllTheTime, enables a live,
background build experience while you type.

files disappear from VS 2015 solution after saving

After installing VS 2015 Pro (14.0.25... with Update 3, licence key has been succesfully added), and creating a new project (especially in Javascript or TypeScript with Ionic 2 templates), when I open a file, (modified it or not), I save it and it disappear from Solution Explorer. Just before it disappear, the icon of the file is updated with a warning icon.
However, if I try to create a C++ project, there is no problem !
In a typescript project, after building, ts files appear again at the end of the build.
All my projects are located in c: disk. I've tried with and without using git.
The two extensions I've installed are : Ionic 2 templates and NPM Task runner. I uninstalled them, but the problem is still here.
When I restart VS, I can see again the files. But the problem is still here.
How to fix it ?
I had same issue on Windows 10.
It seems caused by windows update version 1709.
After I recovered my windows version to 1703, the problem was solved.
I can confirm that the 1709 (aka Fall Creator's Update) caused this. I was too low on space to keep the rollback. In another thread someone suggested that visual studio 2017 does not have this problem. I can confirm that is true; but this solution came (for me) with a few different problems. First, I can no longer deploy direct to my android phone. Second, my team-mates still on VS 2015 can no longer open the project at all! If you can move forward to VS 2017, you'll also need to install TypeScript SDK for Visual Studio 2017 before you can compile again.

Avoiding merge problems when sharing solution between Xamarin Studio and Visual Studio

When sharing a solution between Xamarin Studio and Visual Studio, changes to solution/projects leads to unexpected results. The source text of the .sln/.project files has unexpected modifications, e.g.
UUIDs changed from lower to upper case
Reordering of lines in the .sln file
Changed "ToolsVersion"
Changed "Visual Studio" version
Other changes, like changing line break, changed "true" to "True", ...
This e.g. happens when changing the startup project, adding referenced projects, building the solution.
These changes lead to a "commit ping pong" between Xamarin Studio and Visual Studio users, and make merging harder. We experienced this problem with Xamarin Studio 5.5.4 and Visual Studio 2013 Update 4. The https://github.com/perpetual-mobile/SharingXamarinSolution repository contains examples. The http://forums.xamarin.com/discussion/comment/95851 thread also describes this issue.
How can this problem be avoided? Is it possible to prevent this from happening when using only Xamarin Studio and Visual Studio? Or do we need an additional tool (like e.g. cmake)?
One answer is to wait for version 6 of Xamarin Studio.
According to the bug report filed by Stephan Palmer, the issues raised above have been resolved in that version.
Are you seeing the same behavior if the project starts in Xamarin for Visual Studio versus Xamarin standalone versions?
The fastest workaround that comes to mind would be to use vcproj2cmake (uses Ruby)
http://sourceforge.net/projects/vcproj2cmake/
and use CMake scripting.
I highly recommend contacting Kitware and asking them for cross-compiling assistance - - they may already have a CMake script to resolve this issue since Xamarin is so popular.
kitware#kitware.com
Hope that helps,
ClaireW

Using Visual Studio with TWL/Nitro SDK

Is there any way I can use Nintendo TWL or Nitro SDK on Visual Studio, along with their IS-NITRO-DEBUGGER? I know there're some workaround, since I heard people using Visual Studio to work on DS/DSi games. I don't want to use CodeWarrior for this.
PS: I have Visual Studio 2010 and 2012 express edition.
It should be pretty easy, I wrote a little wizard that creates projects for use on the devkitPro toolchain (supports the DS among others) that could probably be modified for use with the official devkit. VS 10 is a bit more friendly with this sort of setup but it works on VS12 as well.
http://pern.drunkencoders.com/
The wizard is here and you will have to install it then open and edit the javascript files...no access to the official devkit so can't comment on how much of an undertaking this might be.
You may simply be able to edit the libnds template makefiles to point at the official toolchain and the wizard will just work as is (other than having to create a debug association).
There are also some good debugging tools if the toolchain that is based on gcc that will let you debug directly in visual studio with memory watches and custom viewers.

Resources