diff --git a/HISTORY.txt b/HISTORY.txt
index a47b260..62d3cee 100644
--- a/HISTORY.txt
+++ b/HISTORY.txt
@@ -2,6 +2,11 @@
Simple x264/x265 Launcher version history
-----------------------------------------
+Version 2.91 [2019-07-14]
+* Updated x265 to version 3.1+2
+* Updated build environment to Visual Studio 2019 with Update-1
+* Various improvements to Avisynth/VapourSynth detection
+
Version 2.90 [2019-05-02]
* Updated x265 to version 3.0+18
* Updated x264 to revision 2969 (API v157)
diff --git a/src/version.h b/src/version.h
index 3b25635..dd8bd61 100644
--- a/src/version.h
+++ b/src/version.h
@@ -25,8 +25,8 @@
#define VER_X264_MAJOR 2
#define VER_X264_MINOR 9
-#define VER_X264_PATCH 0
-#define VER_X264_BUILD 1157
+#define VER_X264_PATCH 1
+#define VER_X264_BUILD 1170
#define VER_X264_PORTABLE_EDITION (0)
diff --git a/x264_launcher_MSVC2019.sln b/x264_launcher_MSVC2019.sln
new file mode 100644
index 0000000..a9ce995
--- /dev/null
+++ b/x264_launcher_MSVC2019.sln
@@ -0,0 +1,38 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.27130.2036
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "x264_launcher", "x264_launcher_MSVC2019.vcxproj", "{563D953B-CBC3-4C75-AFC2-5BD87531C332}"
+ ProjectSection(ProjectDependencies) = postProject
+ {55405FE1-149F-434C-9D72-4B64348D2A08} = {55405FE1-149F-434C-9D72-4B64348D2A08}
+ EndProjectSection
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "MUtilities", "..\MUtilities\MUtilities_VS2019.vcxproj", "{55405FE1-149F-434C-9D72-4B64348D2A08}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Win32 = Debug|Win32
+ Release_Static|Win32 = Release_Static|Win32
+ Release|Win32 = Release|Win32
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {563D953B-CBC3-4C75-AFC2-5BD87531C332}.Debug|Win32.ActiveCfg = Debug|Win32
+ {563D953B-CBC3-4C75-AFC2-5BD87531C332}.Debug|Win32.Build.0 = Debug|Win32
+ {563D953B-CBC3-4C75-AFC2-5BD87531C332}.Release_Static|Win32.ActiveCfg = Release|Win32
+ {563D953B-CBC3-4C75-AFC2-5BD87531C332}.Release|Win32.ActiveCfg = Release|Win32
+ {563D953B-CBC3-4C75-AFC2-5BD87531C332}.Release|Win32.Build.0 = Release|Win32
+ {55405FE1-149F-434C-9D72-4B64348D2A08}.Debug|Win32.ActiveCfg = Debug|Win32
+ {55405FE1-149F-434C-9D72-4B64348D2A08}.Debug|Win32.Build.0 = Debug|Win32
+ {55405FE1-149F-434C-9D72-4B64348D2A08}.Release_Static|Win32.ActiveCfg = Release_Static|Win32
+ {55405FE1-149F-434C-9D72-4B64348D2A08}.Release_Static|Win32.Build.0 = Release_Static|Win32
+ {55405FE1-149F-434C-9D72-4B64348D2A08}.Release|Win32.ActiveCfg = Release|Win32
+ {55405FE1-149F-434C-9D72-4B64348D2A08}.Release|Win32.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {8D6A637C-785A-4DBF-9FBA-0781491C99BA}
+ EndGlobalSection
+EndGlobal
diff --git a/x264_launcher_MSVC2019.vcxproj b/x264_launcher_MSVC2019.vcxproj
new file mode 100644
index 0000000..9a6eb6c
--- /dev/null
+++ b/x264_launcher_MSVC2019.vcxproj
@@ -0,0 +1,540 @@
+
+
+
+
+ Debug
+ Win32
+
+
+ Release
+ Win32
+
+
+
+ {563D953B-CBC3-4C75-AFC2-5BD87531C332}
+ Win32Proj
+ x264_launcher
+ x264_launcher
+ 8.1
+
+
+
+ Application
+ true
+ Unicode
+ v142
+
+
+ Application
+ false
+ true
+ Unicode
+ v142
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ $(SolutionDir)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\obj\$(Platform)\$(Configuration)\$(ProjectName)\
+
+
+ false
+ $(SolutionDir)\bin\$(Platform)\$(Configuration)\
+ $(SolutionDir)\obj\$(Platform)\$(Configuration)\$(ProjectName)\
+
+
+
+
+
+ Level3
+ Disabled
+ WIN32;_DEBUG;QT_DEBUG;QT_DLL;QT_GUI_LIB;%(PreprocessorDefinitions)
+ $(SolutionDir)\..\MUtilities\include;$(SolutionDir)\tmp\$(ProjectName);$(SolutionDir)\..\Prerequisites\VisualLeakDetector\include;$(QTDIR)\include;$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtTest;%(AdditionalIncludeDirectories)
+ NoExtensions
+ false
+ Disabled
+ true
+
+
+ Windows
+ true
+ $(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Debug\lib;$(SolutionDir)\..\Prerequisites\VisualLeakDetector\lib\$(Platform);%(AdditionalLibraryDirectories)
+ QtCored4.lib;QtGuid4.lib;Winmm.lib;Psapi.lib;SensAPI.lib;%(AdditionalDependencies)
+ x264_entry_point
+
+
+ del /S /Q "$(TargetDir)\Qt*.dll"
+rmdir /S /Q "$(TargetDir)\toolset"
+rmdir /S /Q "$(TargetDir)\imageformats"
+
+mkdir "$(TargetDir)\toolset\common"
+mkdir "$(TargetDir)\toolset\x86"
+mkdir "$(TargetDir)\toolset\x64"
+mkdir "$(TargetDir)\toolset\x86\nvencc"
+mkdir "$(TargetDir)\toolset\x64\nvencc"
+mkdir "$(TargetDir)\imageformats"
+
+copy /Y "$(SolutionDir)res\toolset\common\*.exe" "$(TargetDir)\toolset\common\"
+copy /Y "$(SolutionDir)res\toolset\common\*.gpg" "$(TargetDir)\toolset\common\"
+copy /Y "$(SolutionDir)res\toolset\x86\*.exe" "$(TargetDir)\toolset\x86\"
+copy /Y "$(SolutionDir)res\toolset\x64\*.exe" "$(TargetDir)\toolset\x64\"
+copy /Y "$(SolutionDir)res\toolset\x86\*.dll" "$(TargetDir)\toolset\x86\"
+copy /Y "$(SolutionDir)res\toolset\x64\*.dll" "$(TargetDir)\toolset\x64\"
+copy /Y "$(SolutionDir)res\toolset\x86\nvencc\*.exe" "$(TargetDir)\toolset\x86\nvencc"
+copy /Y "$(SolutionDir)res\toolset\x64\nvencc\*.exe" "$(TargetDir)\toolset\x64\nvencc"
+copy /Y "$(SolutionDir)res\toolset\x86\nvencc\*.dll" "$(TargetDir)\toolset\x86\nvencc"
+copy /Y "$(SolutionDir)res\toolset\x64\nvencc\*.dll" "$(TargetDir)\toolset\x64\nvencc"
+
+for %%i in (QtCored4, QtGuid4, QtSvgd4, QtXmld4) do (
+ copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Debug\bin\%%i.dll" "$(TargetDir)"
+ copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Debug\bin\%%i.pdb" "$(TargetDir)"
+)
+
+for %%i in (qicod4, qsvgd4, qjpegd4, qtiffd4, qgifd4) do (
+ copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Debug\plugins\imageformats\%%i.dll" "$(TargetDir)\imageformats"
+ copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Debug\plugins\imageformats\%%i.pdb" "$(TargetDir)\imageformats"
+)
+
+copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\$(Platform)\*.dll" "$(TargetDir)"
+copy /Y "$(SolutionDir)\..\Prerequisites\VisualLeakDetector\bin\$(Platform)\*.manifest" "$(TargetDir)"
+
+
+
+ Copy Toolset
+
+
+ "$(SolutionDir)..\Prerequisites\AutoInc\auto_inc.exe" VER_X264_BUILD "$(SolutionDir)src\version.h" 30
+ Update Build Number
+
+
+
+
+ Level3
+ NotUsing
+ Full
+ true
+ true
+ WIN32;NDEBUG;QT_NO_DEBUG;QT_DLL;QT_GUI_LIB;%(PreprocessorDefinitions)
+ $(SolutionDir)\..\MUtilities\include;$(SolutionDir)\tmp\$(ProjectName);$(SolutionDir)\..\Prerequisites\VisualLeakDetector\include;$(QTDIR)\include;$(QTDIR)\include\QtCore;$(QTDIR)\include\QtGui;$(QTDIR)\include\QtTest;%(AdditionalIncludeDirectories)
+ AnySuitable
+ Speed
+ true
+ MultiThreadedDLL
+ NoExtensions
+ Fast
+ false
+ true
+ false
+ true
+ false
+ true
+
+
+ Windows
+ false
+ true
+ true
+ $(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\lib;%(AdditionalLibraryDirectories)
+ notelemetry.obj;QtCore4.lib;QtGui4.lib;Winmm.lib;dwmapi.lib;Psapi.lib;SensAPI.lib;%(AdditionalDependencies)
+ UseLinkTimeCodeGeneration
+ false
+ x264_entry_point
+
+
+ "$(SolutionDir)..\Prerequisites\AutoInc\auto_inc.exe" VER_X264_BUILD "$(SolutionDir)src\version.h" 30
+
+
+ Update Build Number
+
+
+
+
+
+
+
+
+
+
+ del /S /Q "$(TargetDir)\Qt*.dll"
+rmdir /S /Q "$(TargetDir)\toolset"
+rmdir /S /Q "$(TargetDir)\imageformats"
+
+mkdir "$(TargetDir)\toolset\common"
+mkdir "$(TargetDir)\toolset\x86"
+mkdir "$(TargetDir)\toolset\x64"
+mkdir "$(TargetDir)\toolset\x86\nvencc"
+mkdir "$(TargetDir)\toolset\x64\nvencc"
+mkdir "$(TargetDir)\imageformats"
+
+copy /Y "$(SolutionDir)res\toolset\common\*.exe" "$(TargetDir)\toolset\common\"
+copy /Y "$(SolutionDir)res\toolset\common\*.gpg" "$(TargetDir)\toolset\common\"
+copy /Y "$(SolutionDir)res\toolset\x86\*.exe" "$(TargetDir)\toolset\x86\"
+copy /Y "$(SolutionDir)res\toolset\x64\*.exe" "$(TargetDir)\toolset\x64\"
+copy /Y "$(SolutionDir)res\toolset\x86\*.dll" "$(TargetDir)\toolset\x86\"
+copy /Y "$(SolutionDir)res\toolset\x64\*.dll" "$(TargetDir)\toolset\x64\"
+copy /Y "$(SolutionDir)res\toolset\x86\nvencc\*.exe" "$(TargetDir)\toolset\x86\nvencc"
+copy /Y "$(SolutionDir)res\toolset\x64\nvencc\*.exe" "$(TargetDir)\toolset\x64\nvencc"
+copy /Y "$(SolutionDir)res\toolset\x86\nvencc\*.dll" "$(TargetDir)\toolset\x86\nvencc"
+copy /Y "$(SolutionDir)res\toolset\x64\nvencc\*.dll" "$(TargetDir)\toolset\x64\nvencc"
+
+copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\bin\QtCore4.dll" "$(TargetDir)"
+copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\bin\QtGui4.dll" "$(TargetDir)"
+copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\bin\QtSvg4.dll" "$(TargetDir)"
+copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\bin\QtXml4.dll" "$(TargetDir)"
+copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\plugins\imageformats\qico4.dll" "$(TargetDir)\imageformats"
+copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\plugins\imageformats\qsvg4.dll" "$(TargetDir)\imageformats"
+copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\plugins\imageformats\qjpeg4.dll" "$(TargetDir)\imageformats"
+copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\plugins\imageformats\qtiff4.dll" "$(TargetDir)\imageformats"
+copy /Y "$(ProjectDir)\..\Prerequisites\Qt4\$(PlatformToolset)\Shared\plugins\imageformats\qgif4.dll" "$(TargetDir)\imageformats"
+
+ Copy Toolset
+
+
+
+
+ Document
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+
+
+ Document
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+
+
+ Document
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+
+
+ Document
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+
+
+ Document
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+
+
+ Document
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+
+
+ Document
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ "$(QTDIR)\bin\uic.exe" -o "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h" "%(FullPath)"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ UIC "$(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h"
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\UIC_%(Filename).h;%(Outputs)
+
+
+ Document
+ "$(QTDIR)\bin\rcc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\QRC_%(Filename).cpp" -name "%(Filename)" "%(FullPath)"
+ RCC "$(SolutionDir)tmp\$(ProjectName)\QRC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\QRC_%(Filename).cpp;%(Outputs)
+ "$(QTDIR)\bin\rcc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\QRC_%(Filename).cpp" -name "%(Filename)" "%(FullPath)"
+ RCC "$(SolutionDir)tmp\$(ProjectName)\QRC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\QRC_%(Filename).cpp;%(Outputs)
+ Designer
+
+
+
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+
+
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+
+
+
+
+
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+
+
+
+
+
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+
+
+
+
+
+
+
+
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+ "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)"
+ MOC "$(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp"
+ $(SolutionDir)tmp\$(ProjectName)\MOC_%(Filename).cpp;%(Outputs)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {55405fe1-149f-434c-9d72-4b64348d2a08}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/x264_launcher_MSVC2019.vcxproj.filters b/x264_launcher_MSVC2019.vcxproj.filters
new file mode 100644
index 0000000..369a941
--- /dev/null
+++ b/x264_launcher_MSVC2019.vcxproj.filters
@@ -0,0 +1,397 @@
+
+
+
+
+ {4FC737F1-C7A5-4376-A066-2A32D752A2FF}
+ cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx
+
+
+ {93995380-89BD-4b04-88EB-625FBE52EBFB}
+ h;hpp;hxx;hm;inl;inc;xsd
+
+
+ {67DA6AB6-F800-4c08-8B7A-83BB121AAD01}
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms
+
+
+ {c2fedf5a-a6cd-4538-bbc1-269ebb2beb39}
+
+
+ {961e9f99-8107-45a2-984d-188819a67e8e}
+
+
+ {2c9c8836-2259-4412-894e-7cc32bef99de}
+
+
+
+
+ Resource Files
+
+
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Source Files
+
+
+ Generated Files
+
+
+ Generated Files
+
+
+ Source Files
+
+
+ Generated Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Source Files
+
+
+ Generated Files
+
+
+ Source Files
+
+
+ Generated Files
+
+
+
+
+ Header Files
+
+
+ Resource Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Dialogs
+
+
+ Header Files
+
+
+ Dialogs
+
+
+ Header Files
+
+
+ Dialogs
+
+
+ Header Files
+
+
+ Dialogs
+
+
+ Dialogs
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Dialogs
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Dialogs
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+ Header Files
+
+
+
+
+ Resource Files
+
+
+
+
+
+
+
+ Resource Files
+
+
+
\ No newline at end of file
diff --git a/z_build.bat b/z_build.bat
index d38415d..60e9ca3 100644
--- a/z_build.bat
+++ b/z_build.bat
@@ -2,8 +2,9 @@
REM ///////////////////////////////////////////////////////////////////////////
REM // Set Paths
REM ///////////////////////////////////////////////////////////////////////////
-set "MSVC_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build"
-set "TOOLS_VER=141"
+set "MSVC_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build"
+set "TOOLS_VER=142"
+set "SLN_FNAME=x264_launcher_MSVC2019.sln"
REM ###############################################
REM # DO NOT MODIFY ANY LINES BELOW THIS LINE !!! #
@@ -75,9 +76,9 @@ REM ///////////////////////////////////////////////////////////////////////////
echo ---------------------------------------------------------------------
echo BEGIN BUILD
echo ---------------------------------------------------------------------
-MSBuild.exe /property:Configuration=release /property:Platform=win32 /target:clean "%~dp0\x264_launcher_MSVC2017.sln"
+MSBuild.exe /property:Configuration=release /property:Platform=win32 /target:clean "%~dp0\%SLN_FNAME%"
if not "%ERRORLEVEL%"=="0" goto BuildError
-MSBuild.exe /property:Configuration=release /property:Platform=win32 /target:rebuild "%~dp0\x264_launcher_MSVC2017.sln"
+MSBuild.exe /property:Configuration=release /property:Platform=win32 /target:rebuild "%~dp0\%SLN_FNAME%"
if not "%ERRORLEVEL%"=="0" goto BuildError
REM ///////////////////////////////////////////////////////////////////////////
@@ -125,13 +126,19 @@ copy "%~dp0\*.txt" "%PACK_PATH%"
REM ///////////////////////////////////////////////////////////////////////////
REM // Copy dependencies
REM ///////////////////////////////////////////////////////////////////////////
-copy "%~dp0\..\Prerequisites\MSVC\redist\vc\v%TOOLS_VER%_xp\x86\*.dll" "%PACK_PATH%"
-copy "%~dp0\..\Prerequisites\Qt4\v%TOOLS_VER%_xp\Shared\bin\QtCore4.dll" "%PACK_PATH%"
-copy "%~dp0\..\Prerequisites\Qt4\v%TOOLS_VER%_xp\Shared\bin\QtGui4.dll" "%PACK_PATH%"
-copy "%~dp0\..\Prerequisites\Qt4\v%TOOLS_VER%_xp\Shared\bin\QtSvg4.dll" "%PACK_PATH%"
-copy "%~dp0\..\Prerequisites\Qt4\v%TOOLS_VER%_xp\Shared\bin\QtXml4.dll" "%PACK_PATH%"
-copy "%~dp0\..\Prerequisites\Qt4\v%TOOLS_VER%_xp\Shared\bin\QtXml4.dll" "%PACK_PATH%"
-copy "%~dp0\..\Prerequisites\Qt4\v%TOOLS_VER%_xp\Shared\plugins\imageformats\*.dll" "%PACK_PATH%\imageformats"
+if %TOOLS_VER% GEQ 142 (
+ set "PATH_REDIST_QT=%~dp0\..\Prerequisites\Qt4\v%TOOLS_VER%"
+ set "PATH_REDIST_VC=%~dp0\..\Prerequisites\MSVC\redist\vc\v%TOOLS_VER%"
+) else (
+ set "PATH_REDIST_QT=%~dp0\..\Prerequisites\Qt4\v%TOOLS_VER%_xp"
+ set "PATH_REDIST_VC=%~dp0\..\Prerequisites\MSVC\redist\vc\v%TOOLS_VER%_xp"
+)
+copy "%PATH_REDIST_VC%\x86\*.dll" "%PACK_PATH%"
+copy "%PATH_REDIST_QT%\Shared\bin\QtCore4.dll" "%PACK_PATH%"
+copy "%PATH_REDIST_QT%\Shared\bin\QtGui4.dll" "%PACK_PATH%"
+copy "%PATH_REDIST_QT%\Shared\bin\QtSvg4.dll" "%PACK_PATH%"
+copy "%PATH_REDIST_QT%\Shared\bin\QtXml4.dll" "%PACK_PATH%"
+copy "%PATH_REDIST_QT%\Shared\plugins\imageformats\*.dll" "%PACK_PATH%\imageformats"
del "%PACK_PATH%\imageformats\*d4.dll" 2> NUL
if %TOOLS_VER% GEQ 140 (
copy "%~dp0\..\Prerequisites\MSVC\redist\ucrt\DLLs\x86\*.dll" "%PACK_PATH%"