# Qt VS Tools - Project format versions ## Contents * [Project format v1.0](#project-format-v1.0) * [Project format v2.0](#project-format-v2.0) * [Project format v3.0](#project-format-v3.0) * [Project format v3.1](#project-format-v3.1) * [Project format v3.2](#project-format-v3.2) * [Project format v3.3](#project-format-v3.3) * [Project format v3.4](#project-format-v3.4) * [Example projects](#example-projects) * [v1.0](#v1.0) * [v2.0](#v2.0) * [v3.0](#v3.0) * [v3.1](#v3.1) * [v3.2](#v3.2) * [v3.3](#v3.3) * [v3.4](#v3.4) ## Project format v1.0 Output of `qmake` using the VC template: qmake -tp vc ### Project file outline - ItemGroup **ProjectConfiguration** - PropertyGroup **Globals** - Keyword **Qt4VSv1.0** - Import **Microsoft.Cpp.Default.props** - PropertyGroup **Configuration** - Import **Microsoft.Cpp.props** - ImportGroup **ExtensionSettings** - ImportGroup **PropertySheets** - PropertyGroup **UserMacros** - PropertyGroup - Property **OutDir** - Property **IntDir** - ... - ItemDefinitionGroup - **ClCompile** - **Link** - ... - ItemGroup - **CustomBuild** (*MOC header*) - *N* x **ClCompile** (*MOC-generated CPP source*), where N = number of configurations - (*N* - 1) x **ExcludedFromBuild** (*configuration*) - **CustomBuild** (*QRC resources*) - *N* x **ClCompile** (*RCC-generated CPP source*), where N = number of configurations - (*N* - 1) x **ExcludedFromBuild** (*configuration*) - **CustomBuild** (*UI form*) - **ClInclude** (*UIC-generated header*) - **ClInclude** (*other headers*) - **ClCompile** (*other CPP sources*) - ... - Import **Microsoft.Cpp.targets** - ImportGroup **ExtensionTargets** ## Project format v2.0 **[Qt Visual Studio Tools v2.1.1](https://download.qt.io/official_releases/vsaddin/2.1.1/)** ### Project file outline - ItemGroup **ProjectConfiguration** - PropertyGroup **Globals** - Keyword **Qt4VSv1.0** - Import **Microsoft.Cpp.Default.props** - PropertyGroup **Configuration** - Import **Microsoft.Cpp.props** - ImportGroup **ExtensionSettings** - ImportGroup **Shared** - ImportGroup **PropertySheets** - PropertyGroup **UserMacros** - PropertyGroup - Property **OutDir** - Property **IntDir** - ... - ItemDefinitionGroup - **ClCompile** - **Link** - ... - ItemGroup - **CustomBuild** (*MOC header*) - *N* x **ClCompile** (*MOC-generated CPP source*), where N = number of configurations - (*N* - 1) x **ExcludedFromBuild** (*configuration*) - **CustomBuild** (*QRC resources*) - *N* x **ClCompile** (*RCC-generated CPP source*), where N = number of configurations - (*N* - 1) x **ExcludedFromBuild** (*configuration*) - **CustomBuild** (*UI form*) - **ClInclude** (*UIC-generated header*) - **ClInclude** (*other headers*) - **ClCompile** (*other CPP sources*) - ... - Import **Microsoft.Cpp.targets** - ImportGroup **ExtensionTargets** - ProjectExtensions / VisualStudio - UserProperties - **MocDir** - **UicDir** - **RccDir** - **lupdateOptions** - **lupdateOnBuild** - **lreleaseOptions** - **Qt5Version_x0020_x64** - **MocOptions** ## Project format v3.0 **[Qt Visual Studio Tools v2.4.0](https://download.qt.io/official_releases/vsaddin/2.4.0/)** **`Edit Qt settings in property pages (V3 format)`** `commit 805e9ed6f14fb0a4d9dd8ce6a23631ca215b304a` `Author: Miguel Costa ` `Date: Thu Jun 20 13:54:49 2019 +0200` Qt settings are now configured in the project property pages. This includes the possibility to have different versions of the Qt settings per project configuration. Previously, the Qt settings were edited in a custom dialog, allowing only a single version of the settings that would apply to all project configurations. This change breaks the current version of the support for Qt VS Tools projects. A new version (V3) of the project format is introduced. This new format allows Qt settings to be stored in the same way as other project properties. Previous versions will still work and a later change will introduce the possibility to convert from previous versions to V3. ### Project file outline - ItemGroup **ProjectConfiguration** - PropertyGroup **Globals** - Keyword **QtVS_v300** - Import **Microsoft.Cpp.Default.props** - PropertyGroup **Configuration** - Import **Microsoft.Cpp.props** - PropertyGroup **if %QTMSBUILD% undefined** - Property **QtMsBuild** = $(MSBuildProjectDirectory)\QtMsBuild - PropertyGroup - Property **OutDir** - Property **IntDir** - ... - Target **QtMsBuildNotFound** - Import **qt.props** - PropertyGroup **QtSettings** - ImportGroup **ExtensionSettings** - ImportGroup **Shared** - ImportGroup **PropertySheets** - PropertyGroup **UserMacros** - ItemDefinitionGroup - **ClCompile** - **Link** - **QtMoc** - **QtRcc** - **QtUic** - ... - ItemGroup - **QtMoc** (*MOC header*) - **QtRcc** (*QRC resources*) - **QtUic** (*UI form*) - **ClInclude** (*other headers*) - **ClCompile** (*other CPP sources*) - ... - Import **Microsoft.Cpp.targets** - Import **qt.targets** - ImportGroup **ExtensionTargets** ## Project format v3.1 **[Qt Visual Studio Tools v2.4.2](https://download.qt.io/official_releases/vsaddin/2.4.2/)** **`Implement project format v3.1`** `commit fdbec35c590f524f6f9ce8f2e6a7328f2f3df508` `Author: Miguel Costa ` `Date: Wed Sep 18 18:47:30 2019 +0200` This change introduces a revision of the v3 project format, which will now allow Qt settings to reference user macros defined in imported property sheets. This includes the following changes to the order of property evaluation: - "QtSettings" property group moved to after the import of user property sheets; - QtInstall property moved from the "Configuration" property group to the "QtSettings" property group; - Import of qt.props moved to after the "QtSettings" property group. ### Project file outline - ItemGroup **ProjectConfiguration** - PropertyGroup **Globals** - Keyword **QtVS_v301** - Import **Microsoft.Cpp.Default.props** - PropertyGroup **Configuration** - Property **QtInstall** - Import **Microsoft.Cpp.props** - PropertyGroup (*if `%QTMSBUILD%` undefined*) - Property **QtMsBuild** = $(MSBuildProjectDirectory)\QtMsBuild - PropertyGroup - Property **OutDir** - Property **IntDir** - ... - Target **QtMsBuildNotFound** - ImportGroup **ExtensionSettings** - ImportGroup **Shared** - ImportGroup **PropertySheets** - PropertyGroup **UserMacros** - Import **qt.props** - PropertyGroup **QtSettings** - ItemDefinitionGroup - **ClCompile** - **Link** - **QtMoc** - **QtRcc** - **QtUic** - ... - ItemGroup - **QtMoc** (*MOC header*) - **QtRcc** (*QRC resources*) - **QtUic** (*UI form*) - **ClInclude** (*other headers*) - **ClCompile** (*other CPP sources*) - ... - Import **Microsoft.Cpp.targets** - Import **qt.targets** - ImportGroup **ExtensionTargets** ## Project format v3.2 **[Qt Visual Studio Tools v2.5.1](https://download.qt.io/official_releases/vsaddin/2.5.1/)** **`Fix incompatibilities with property sheets`** `commit 1a93741cadaa26b49cc4dc02d09ea7249cbea6fe` `Author: Miguel Costa ` `Date: Thu Nov 21 16:21:35 2019 +0100` Updated the format of Qt projects to better match the requirements for Visual Studio C++ projects (*) that enable integrating with the IDE, in particular, that allow external property sheets to be referenced. (*) https://docs.microsoft.com/en-us/cpp/build/reference/cxproj-file-structure#per-configuration-propertygroup-elements ### Project file outline - ItemGroup **ProjectConfiguration** - PropertyGroup **Globals** - Keyword **QtVS_v302** - Property (*if `%QTMSBUILD%` undefined*) **QtMsBuild** = $(MSBuildProjectDirectory)\QtMsBuild - Import **Microsoft.Cpp.Default.props** - PropertyGroup **Configuration** - Property **QtInstall** - Import **Microsoft.Cpp.props** - Target **QtMsBuildNotFound** - ImportGroup **ExtensionSettings** - ImportGroup **Shared** - ImportGroup **PropertySheets** - PropertyGroup **UserMacros** - Import **qt_defaults.props** - PropertyGroup **QtSettings** - Import **qt.props** - ItemDefinitionGroup - **ClCompile** - **Link** - **QtMoc** - **QtRcc** - **QtUic** - ... - ItemGroup - **QtMoc** (*MOC header*) - **QtRcc** (*QRC resources*) - **QtUic** (*UI form*) - **ClInclude** (*other headers*) - **ClCompile** (*other CPP sources*) - ... - Import **Microsoft.Cpp.targets** - Import **qt.targets** - ImportGroup **ExtensionTargets** ## Project format v3.3 **[Qt Visual Studio Tools v2.6.0](https://download.qt.io/official_releases/vsaddin/2.6.0/)** **`Fix ignoring VC property changes (project format v3.3)`** `commit 621efbcc92be6e1a9869a15a850b9bd8cccf2e97` `Author: Miguel Costa ` `Date: Tue Jun 9 10:24:54 2020 +0200` This change introduces project format version 3.3, which fixes issues related to modified values of VC properties (e.g. $(IntDir)) being ignored when evaluating Qt build settings. MSBuild evaluates properties by order of definition; dependencies are resolved by using the latest evaluation of referred properties. As such, any subsequent changes to the value of dependencies will not be reflected in previously evaluated properties. Redefinitions of VC properties are stored in uncategorized property groups (i.e. elements without a Label attrib) inside the MSBuild project file; if no available group is found, Visual Studio will create a new one. The incorrect evaluation of Qt properties happens when new property groups are created after the definition of Qt properties, such that the evaluation of Qt properties will be using outdated values of VC properties. Project format version 3.3 addresses this issue by adding property groups for VC property storage in a correct location, with respect to Qt build settings definitions. ### Project file outline - ItemGroup **ProjectConfiguration** - PropertyGroup **Globals** - Keyword **QtVS_v303** - Property (*if `%QTMSBUILD%` undefined*) **QtMsBuild** = $(MSBuildProjectDirectory)\QtMsBuild - Import **Microsoft.Cpp.Default.props** - PropertyGroup **Configuration** - Property **QtInstall** - Import **Microsoft.Cpp.props** - Target **QtMsBuildNotFound** - ImportGroup **ExtensionSettings** - ImportGroup **Shared** - ImportGroup **PropertySheets** - PropertyGroup **UserMacros** - Import **qt_defaults.props** - PropertyGroup - Property **OutDir** - Property **IntDir** - ... - PropertyGroup **QtSettings** - Import **qt.props** - ItemDefinitionGroup - **ClCompile** - **Link** - **QtMoc** - **QtRcc** - **QtUic** - ... - ItemGroup - **QtMoc** (*MOC header*) - **QtRcc** (*QRC resources*) - **QtUic** (*UI form*) - **ClInclude** (*other headers*) - **ClCompile** (*other CPP sources*) - ... - Import **Microsoft.Cpp.targets** - Import **qt.targets** - ImportGroup **ExtensionTargets** ## Project format v3.4 **>= [Qt Visual Studio Tools v2.7.1](https://download.qt.io/official_releases/vsaddin/2.7.1/)** **`Integrate Qt.props in the VS Property Manager`** `commit cb9ec156845a9efc163a9c67d7a54c8ca790e805` `Author: Miguel Costa ` `Date: Fri Dec 11 16:58:06 2020 +0100` The Qt property definitions file (Qt.props) will now be shown in the evaluation list of the Property Manager window. This allows the user to customize the order of evaluation of Qt.props in relation to other property files loaded during the build, thereby defining the correct dependency between Qt properties and other build settings. Previously, the order of evaluation of Qt.props was fixed and could only be changed by manually editing the project file's XML. Allowing Qt.props to be manipulated in the Property Manager window will enable the user to define properties and default metadata within the Qt.props itself. To ensure these custom definitions are not lost when installing Qt/MSBuild files, the Qt.props file will no longer be replaced during start-up. ### Project file outline - ItemGroup **ProjectConfiguration** - PropertyGroup **Globals** - Keyword **QtVS_v304** - Property (*if `%QTMSBUILD%` undefined*) **QtMsBuild** = $(MSBuildProjectDirectory)\QtMsBuild - Import **Microsoft.Cpp.Default.props** - PropertyGroup **Configuration** - Property **QtInstall** - Import **Microsoft.Cpp.props** - Import **qt_defaults.props** - PropertyGroup **QtSettings** - Target **QtMsBuildNotFound** - ImportGroup **ExtensionSettings** - ImportGroup **Shared** - ImportGroup **PropertySheets** - Import **Qt.props** - PropertyGroup **UserMacros** - PropertyGroup - Property **OutDir** - Property **IntDir** - ... - ItemDefinitionGroup - **ClCompile** - **Link** - **QtMoc** - **QtRcc** - **QtUic** - ... - ItemGroup - **QtMoc** (*MOC header*) - **QtRcc** (*QRC resources*) - **QtUic** (*UI form*) - **ClInclude** (*other headers*) - **ClCompile** (*other CPP sources*) - ... - Import **Microsoft.Cpp.targets** - Import **qt.targets** - ImportGroup **ExtensionTargets** ## Example projects ### v1.0 #### `.vcxproj` ```xml Release x64 Debug x64 {E5EA0EEF-BDC2-3484-A4F0-BA6C71E224CF} QtProjectV100 Qt4VSv1.0 10.0.19041.0 10.0.19041.0 v142 release\ false NotSet Application release\ QtProjectV100 v142 debug\ false NotSet Application debug\ QtProjectV100 release\ release\ QtProjectV100 true false debug\ debug\ QtProjectV100 true .;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include\QtWidgets;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include\QtGui;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include\QtANGLE;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include\QtCore;release;.;/include;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\mkspecs\win32-msvc;%(AdditionalIncludeDirectories) -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 %(AdditionalOptions) release\ false None 4577;4467;%(DisableSpecificWarnings) Sync release\ MaxSpeed _WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;QT_NO_DEBUG;QT_WIDGETS_LIB;QT_GUI_LIB;QT_CORE_LIB;%(PreprocessorDefinitions) false MultiThreadedDLL true true Level3 C:\lib\Qt\5.15.10\msvc2019_64\lib\Qt5Widgets.lib;C:\lib\Qt\5.15.10\msvc2019_64\lib\Qt5Gui.lib;C:\lib\Qt\5.15.10\msvc2019_64\lib\Qt5Core.lib;C:\lib\Qt\5.15.10\msvc2019_64\lib\qtmain.lib;shell32.lib;%(AdditionalDependencies) C:\openssl\lib;C:\Utils\my_sql\mysql-5.7.25-winx64\lib;C:\Utils\postgresql\pgsql\lib;%(AdditionalLibraryDirectories) "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions) true false true false true $(OutDir)\QtProjectV100.exe true Windows true Unsigned None 0 _WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;NDEBUG;QT_NO_DEBUG;QT_WIDGETS_LIB;QT_GUI_LIB;QT_CORE_LIB;%(PreprocessorDefinitions) .;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include\QtWidgets;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include\QtGui;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include\QtANGLE;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\include\QtCore;debug;.;/include;..\..\..\..\lib\Qt\5.15.10\msvc2019_64\mkspecs\win32-msvc;%(AdditionalIncludeDirectories) -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 %(AdditionalOptions) debug\ false ProgramDatabase 4577;4467;%(DisableSpecificWarnings) Sync debug\ Disabled _WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;QT_WIDGETS_LIB;QT_GUI_LIB;QT_CORE_LIB;%(PreprocessorDefinitions) false MultiThreadedDebugDLL true true Level3 C:\lib\Qt\5.15.10\msvc2019_64\lib\Qt5Widgetsd.lib;C:\lib\Qt\5.15.10\msvc2019_64\lib\Qt5Guid.lib;C:\lib\Qt\5.15.10\msvc2019_64\lib\Qt5Cored.lib;C:\lib\Qt\5.15.10\msvc2019_64\lib\qtmaind.lib;shell32.lib;%(AdditionalDependencies) C:\openssl\lib;C:\Utils\my_sql\mysql-5.7.25-winx64\lib;C:\Utils\postgresql\pgsql\lib;%(AdditionalLibraryDirectories) "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" %(AdditionalOptions) true true true $(OutDir)\QtProjectV100.exe true Windows true Unsigned None 0 _WINDOWS;UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;QT_WIDGETS_LIB;QT_GUI_LIB;QT_CORE_LIB;_DEBUG;%(PreprocessorDefinitions) QtProjectV100.h;release\moc_predefs.h;C:\lib\Qt\5.15.10\msvc2019_64\bin\moc.exe;%(AdditionalInputs) C:\lib\Qt\5.15.10\msvc2019_64\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DWIN64 -DNDEBUG -DQT_NO_DEBUG -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB --compiler-flavor=msvc --include C:/dev/tests/formats/100/release/moc_predefs.h -IC:/lib/Qt/5.15.10/msvc2019_64/mkspecs/win32-msvc -IC:/dev/tests/formats/100 -IC:/lib/Qt/5.15.10/msvc2019_64/include -IC:/lib/Qt/5.15.10/msvc2019_64/include/QtWidgets -IC:/lib/Qt/5.15.10/msvc2019_64/include/QtGui -IC:/lib/Qt/5.15.10/msvc2019_64/include/QtANGLE -IC:/lib/Qt/5.15.10/msvc2019_64/include/QtCore -I"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\ATLMFC\include" -I"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\include" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\winrt" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt" QtProjectV100.h -o release\moc_QtProjectV100.cpp MOC QtProjectV100.h release\moc_QtProjectV100.cpp;%(Outputs) QtProjectV100.h;debug\moc_predefs.h;C:\lib\Qt\5.15.10\msvc2019_64\bin\moc.exe;%(AdditionalInputs) C:\lib\Qt\5.15.10\msvc2019_64\bin\moc.exe -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DWIN64 -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB --compiler-flavor=msvc --include C:/dev/tests/formats/100/debug/moc_predefs.h -IC:/lib/Qt/5.15.10/msvc2019_64/mkspecs/win32-msvc -IC:/dev/tests/formats/100 -IC:/lib/Qt/5.15.10/msvc2019_64/include -IC:/lib/Qt/5.15.10/msvc2019_64/include/QtWidgets -IC:/lib/Qt/5.15.10/msvc2019_64/include/QtGui -IC:/lib/Qt/5.15.10/msvc2019_64/include/QtANGLE -IC:/lib/Qt/5.15.10/msvc2019_64/include/QtCore -I"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\ATLMFC\include" -I"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\VC\Tools\MSVC\14.29.30133\include" -I"C:\Program Files (x86)\Windows Kits\NETFXSDK\4.8\include\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\ucrt" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\um" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\winrt" -I"C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\cppwinrt" QtProjectV100.h -o debug\moc_QtProjectV100.cpp MOC QtProjectV100.h debug\moc_QtProjectV100.cpp;%(Outputs) true true Document true ..\..\..\..\lib\Qt\5.15.10\msvc2019_64\mkspecs\features\data\dummy.cpp;%(AdditionalInputs) cl -BxC:\lib\Qt\5.15.10\msvc2019_64\bin\qmake.exe -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus -Zi -MDd -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -wd4467 -E ..\..\..\..\lib\Qt\5.15.10\msvc2019_64\mkspecs\features\data\dummy.cpp 2>NUL >debug\moc_predefs.h Generate moc_predefs.h debug\moc_predefs.h;%(Outputs) Document ..\..\..\..\lib\Qt\5.15.10\msvc2019_64\mkspecs\features\data\dummy.cpp;%(AdditionalInputs) cl -BxC:\lib\Qt\5.15.10\msvc2019_64\bin\qmake.exe -nologo -Zc:wchar_t -FS -Zc:rvalueCast -Zc:inline -Zc:strictStrings -Zc:throwingNew -Zc:referenceBinding -Zc:__cplusplus -O2 -MD -W3 -w34100 -w34189 -w44996 -w44456 -w44457 -w44458 -wd4577 -wd4467 -E ..\..\..\..\lib\Qt\5.15.10\msvc2019_64\mkspecs\features\data\dummy.cpp 2>NUL >release\moc_predefs.h Generate moc_predefs.h release\moc_predefs.h;%(Outputs) true true true Document QtProjectV100.ui;C:\lib\Qt\5.15.10\msvc2019_64\bin\uic.exe;%(AdditionalInputs) C:\lib\Qt\5.15.10\msvc2019_64\bin\uic.exe QtProjectV100.ui -o ui_QtProjectV100.h UIC QtProjectV100.ui ui_QtProjectV100.h;%(Outputs) QtProjectV100.ui;C:\lib\Qt\5.15.10\msvc2019_64\bin\uic.exe;%(AdditionalInputs) C:\lib\Qt\5.15.10\msvc2019_64\bin\uic.exe QtProjectV100.ui -o ui_QtProjectV100.h UIC QtProjectV100.ui ui_QtProjectV100.h;%(Outputs) Document QtProjectV100.qrc;C:\lib\Qt\5.15.10\msvc2019_64\bin\rcc.exe;%(AdditionalInputs) C:\lib\Qt\5.15.10\msvc2019_64\bin\rcc.exe -name QtProjectV100 QtProjectV100.qrc -o release\qrc_QtProjectV100.cpp RCC QtProjectV100.qrc release\qrc_QtProjectV100.cpp;%(Outputs) QtProjectV100.qrc;C:\lib\Qt\5.15.10\msvc2019_64\bin\rcc.exe;%(AdditionalInputs) C:\lib\Qt\5.15.10\msvc2019_64\bin\rcc.exe -name QtProjectV100 QtProjectV100.qrc -o debug\qrc_QtProjectV100.cpp RCC QtProjectV100.qrc debug\qrc_QtProjectV100.cpp;%(Outputs) ``` ### v2.0 #### `.vcxproj` ```xml Debug x64 Release x64 {B12702AD-ABFB-343A-A199-8E24837244A3} Qt4VSv1.0 Application v140 Application v140 $(SolutionDir)$(Platform)\$(Configuration)\ $(SolutionDir)$(Platform)\$(Configuration)\ UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;QT_DLL;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;%(PreprocessorDefinitions) .\GeneratedFiles;.;$(QTDIR)\include;.\GeneratedFiles\$(ConfigurationName);$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtWidgets;%(AdditionalIncludeDirectories) Disabled ProgramDatabase MultiThreadedDebugDLL true Windows $(OutDir)\$(ProjectName).exe $(QTDIR)\lib;%(AdditionalLibraryDirectories) true qtmaind.lib;Qt5Cored.lib;Qt5Guid.lib;Qt5Widgetsd.lib;%(AdditionalDependencies) UNICODE;_UNICODE;WIN32;_ENABLE_EXTENDED_ALIGNED_STORAGE;WIN64;QT_DLL;QT_NO_DEBUG;NDEBUG;QT_CORE_LIB;QT_GUI_LIB;QT_WIDGETS_LIB;%(PreprocessorDefinitions) .\GeneratedFiles;.;$(QTDIR)\include;.\GeneratedFiles\$(ConfigurationName);$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtWidgets;%(AdditionalIncludeDirectories) MultiThreadedDLL true Windows $(OutDir)\$(ProjectName).exe $(QTDIR)\lib;%(AdditionalLibraryDirectories) false qtmain.lib;Qt5Core.lib;Qt5Gui.lib;Qt5Widgets.lib;%(AdditionalDependencies) true true $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing QtProjectV200.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DWIN64 -DQT_DLL -DQT_CORE_LIB -DQT_GUI_LIB -DQT_WIDGETS_LIB "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtWidgets" $(QTDIR)\bin\moc.exe;%(FullPath) Moc%27ing QtProjectV200.h... .\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp "$(QTDIR)\bin\moc.exe" "%(FullPath)" -o ".\GeneratedFiles\$(ConfigurationName)\moc_%(Filename).cpp" -DUNICODE -D_UNICODE -DWIN32 -D_ENABLE_EXTENDED_ALIGNED_STORAGE -DWIN64 -DQT_DLL -DQT_NO_DEBUG -DNDEBUG -DQT_CORE_LIB -DQT_GUI_LIB -DQT_WIDGETS_LIB "-I.\GeneratedFiles" "-I." "-I$(QTDIR)\include" "-I.\GeneratedFiles\$(ConfigurationName)\." "-I$(QTDIR)\include\QtCore" "-I$(QTDIR)\include\QtGui" "-I$(QTDIR)\include\QtWidgets" $(QTDIR)\bin\uic.exe;%(AdditionalInputs) Uic%27ing %(Identity)... .\GeneratedFiles\ui_%(Filename).h;%(Outputs) "$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)" $(QTDIR)\bin\uic.exe;%(AdditionalInputs) Uic%27ing %(Identity)... .\GeneratedFiles\ui_%(Filename).h;%(Outputs) "$(QTDIR)\bin\uic.exe" -o ".\GeneratedFiles\ui_%(Filename).h" "%(FullPath)" %(FullPath);%(AdditionalInputs) Rcc%27ing %(Identity)... .\GeneratedFiles\qrc_%(Filename).cpp;%(Outputs) "$(QTDIR)\bin\rcc.exe" -name "%(Filename)" -no-compress "%(FullPath)" -o .\GeneratedFiles\qrc_%(Filename).cpp %(FullPath);%(AdditionalInputs) Rcc%27ing %(Identity)... .\GeneratedFiles\qrc_%(Filename).cpp;%(Outputs) "$(QTDIR)\bin\rcc.exe" -name "%(Filename)" -no-compress "%(FullPath)" -o .\GeneratedFiles\qrc_%(Filename).cpp ``` ### v3.0 #### `.vcxproj` ```xml Debug x64 Release x64 {B12702AD-ABFB-343A-A199-8E24837244A3} QtVS_v300 10.0 Application v142 msvc2019_64 Application v142 msvc2019_64 $(MSBuildProjectDirectory)\QtMsBuild $(SolutionDir)$(Platform)\$(Configuration)\ $(SolutionDir)$(Platform)\$(Configuration)\ core;gui;widgets core;gui;widgets true Disabled ProgramDatabase MultiThreadedDebugDLL true Windows $(OutDir)\$(ProjectName).exe true true MultiThreadedDLL true Windows $(OutDir)\$(ProjectName).exe false ``` ### v3.1 #### `.vcxproj` ```xml Debug x64 Release x64 {B12702AD-ABFB-343A-A199-8E24837244A3} QtVS_v301 10.0 Application v142 Application v142 $(MSBuildProjectDirectory)\QtMsBuild $(SolutionDir)$(Platform)\$(Configuration)\ $(SolutionDir)$(Platform)\$(Configuration)\ msvc2019_64 core;gui;widgets msvc2019_64 core;gui;widgets true Disabled ProgramDatabase MultiThreadedDebugDLL true Windows $(OutDir)\$(ProjectName).exe true true MultiThreadedDLL true Windows $(OutDir)\$(ProjectName).exe false ``` ### v3.2 #### `.vcxproj` ```xml Debug x64 Release x64 {10A7CC05-6663-4C63-906F-E56EDF8218CA} QtVS_v302 10.0.19041.0 10.0.19041.0 $(MSBuildProjectDirectory)\QtMsBuild Application v142 Application v142 msvc2019_64 core;gui;widgets debug msvc2019_64 core;gui;widgets release true true ProgramDatabase Disabled MultiThreadedDebugDLL Windows true true true None MaxSpeed MultiThreadedDLL Windows false ``` ### v3.3 #### `.vcxproj` ```xml Debug x64 Release x64 {812E4050-B861-4918-A0DC-53053B848372} QtVS_v303 10.0.19041.0 10.0.19041.0 $(MSBuildProjectDirectory)\QtMsBuild Application v142 Application v142 msvc2019_64 core;gui;widgets debug msvc2019_64 core;gui;widgets release true true ProgramDatabase Disabled MultiThreadedDebugDLL Windows true true true None MaxSpeed MultiThreadedDLL Windows false ``` ### v3.4 #### `.vcxproj` ```xml Debug x64 Release x64 {923588D5-2AA5-4B0F-8110-56BEEBB531D5} QtVS_v304 10.0.19041.0 10.0.19041.0 $(MSBuildProjectDirectory)\QtMsBuild Application v143 Application v143 5.15.10_msvc2019_64 core;gui;widgets debug 5.15.10_msvc2019_64 core;gui;widgets release true true ProgramDatabase Disabled MultiThreadedDebugDLL Windows true true true None MaxSpeed MultiThreadedDLL Windows false ```