From a58c5fa04d14745790847a7c5e427061404c4eb3 Mon Sep 17 00:00:00 2001
From: cjee21 <77721854+cjee21@users.noreply.github.com>
Date: Wed, 13 May 2026 15:15:49 +0800
Subject: [PATCH 1/3] Windows CLI: Enable Segment Heap
---
Project/CMake/CLI/CMakeLists.txt | 1 +
Project/CMake/CLI/segmentheap.manifest | 7 +++++++
Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj | 24 ++++++++++++++++++++++
Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj | 24 ++++++++++++++++++++++
4 files changed, 56 insertions(+)
create mode 100644 Project/CMake/CLI/segmentheap.manifest
diff --git a/Project/CMake/CLI/CMakeLists.txt b/Project/CMake/CLI/CMakeLists.txt
index 0a48b42d49..78dcde70d8 100644
--- a/Project/CMake/CLI/CMakeLists.txt
+++ b/Project/CMake/CLI/CMakeLists.txt
@@ -33,6 +33,7 @@ set(CLI_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/../../../Source/CLI/Help.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../../../Source/Common/Core.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../../MSVC2022/CLI/MediaInfo_CLI.rc
+ ${CMAKE_CURRENT_SOURCE_DIR}/segmentheap.manifest
)
add_executable(mediainfo_cli ${CLI_SOURCES})
diff --git a/Project/CMake/CLI/segmentheap.manifest b/Project/CMake/CLI/segmentheap.manifest
new file mode 100644
index 0000000000..f9dd5c1f6e
--- /dev/null
+++ b/Project/CMake/CLI/segmentheap.manifest
@@ -0,0 +1,7 @@
+
+
+
+ SegmentHeap
+
+
+
\ No newline at end of file
diff --git a/Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj b/Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj
index 2ee5923dc8..26e0e3ed38 100644
--- a/Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj
+++ b/Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj
@@ -138,6 +138,9 @@
Console
true
+
+ true
+
@@ -152,6 +155,9 @@
Console
true
+
+ true
+
@@ -167,6 +173,9 @@
Console
true
+
+ true
+
@@ -182,6 +191,9 @@
Console
true
+
+ true
+
@@ -202,6 +214,9 @@
true
true
+
+ true
+
@@ -220,6 +235,9 @@
No
true
+
+ true
+
@@ -240,6 +258,9 @@
true
true
+
+ true
+
@@ -259,6 +280,9 @@
true
true
+
+ true
+
diff --git a/Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj b/Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj
index 9107a66600..a2f425651b 100644
--- a/Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj
+++ b/Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj
@@ -138,6 +138,9 @@
Console
true
+
+ true
+
@@ -152,6 +155,9 @@
Console
true
+
+ true
+
@@ -167,6 +173,9 @@
Console
true
+
+ true
+
@@ -182,6 +191,9 @@
Console
true
+
+ true
+
@@ -202,6 +214,9 @@
true
true
+
+ true
+
@@ -220,6 +235,9 @@
No
true
+
+ true
+
@@ -240,6 +258,9 @@
true
true
+
+ true
+
@@ -259,6 +280,9 @@
true
true
+
+ true
+
From 0c02618074cbb53df59ae1383f6681444457a8de Mon Sep 17 00:00:00 2001
From: cjee21 <77721854+cjee21@users.noreply.github.com>
Date: Wed, 13 May 2026 16:06:53 +0800
Subject: [PATCH 2/3] Windows CLI: Unify resource file
---
Project/CMake/CLI/CMakeLists.txt | 2 +-
Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj | 2 +-
Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj | 2 +-
Project/MSVC2026/CLI/MediaInfo_CLI.rc | 32 -------------------
.../MSVC2022 => Source}/CLI/MediaInfo_CLI.rc | 0
5 files changed, 3 insertions(+), 35 deletions(-)
delete mode 100644 Project/MSVC2026/CLI/MediaInfo_CLI.rc
rename {Project/MSVC2022 => Source}/CLI/MediaInfo_CLI.rc (100%)
diff --git a/Project/CMake/CLI/CMakeLists.txt b/Project/CMake/CLI/CMakeLists.txt
index 78dcde70d8..653caa5c8b 100644
--- a/Project/CMake/CLI/CMakeLists.txt
+++ b/Project/CMake/CLI/CMakeLists.txt
@@ -32,7 +32,7 @@ set(CLI_SOURCES
${CMAKE_CURRENT_SOURCE_DIR}/../../../Source/CLI/CommandLine_Parser.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../../../Source/CLI/Help.cpp
${CMAKE_CURRENT_SOURCE_DIR}/../../../Source/Common/Core.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/../../MSVC2022/CLI/MediaInfo_CLI.rc
+ ${CMAKE_CURRENT_SOURCE_DIR}/../../../Source/CLI/MediaInfo_CLI.rc
${CMAKE_CURRENT_SOURCE_DIR}/segmentheap.manifest
)
diff --git a/Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj b/Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj
index 26e0e3ed38..ba7aff38f2 100644
--- a/Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj
+++ b/Project/MSVC2022/CLI/MediaInfo-CLI.vcxproj
@@ -300,7 +300,7 @@
-
+
diff --git a/Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj b/Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj
index a2f425651b..ec5a1dfaa4 100644
--- a/Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj
+++ b/Project/MSVC2026/CLI/MediaInfo-CLI.vcxproj
@@ -300,7 +300,7 @@
-
+
diff --git a/Project/MSVC2026/CLI/MediaInfo_CLI.rc b/Project/MSVC2026/CLI/MediaInfo_CLI.rc
deleted file mode 100644
index 12e6a7828d..0000000000
--- a/Project/MSVC2026/CLI/MediaInfo_CLI.rc
+++ /dev/null
@@ -1,32 +0,0 @@
-#include
-
-VS_VERSION_INFO VERSIONINFO
- FILEVERSION 25,10,0,0
- PRODUCTVERSION 25,10,0,0
- FILEFLAGSMASK 0x3fL
-#ifdef _DEBUG
- FILEFLAGS 0x1L
-#else
- FILEFLAGS 0x0L
-#endif
- FILEOS 0x40004L
- FILETYPE 0x1L
- FILESUBTYPE 0x0L
-BEGIN
- BLOCK "StringFileInfo"
- BEGIN
- BLOCK "040904B0" // U.S. English (0x0409, 1033), Unicode (0x04B0, 1200)
- BEGIN
- VALUE "CompanyName", "MediaArea.net"
- VALUE "FileDescription", "MediaInfo"
- VALUE "FileVersion", "25.10.0.0"
- VALUE "LegalCopyright", "Copyright (C) 2002-2025 MediaArea.net SARL"
- VALUE "ProductName", "MediaInfo"
- VALUE "ProductVersion", "25.10.0.0"
- END
- END
- BLOCK "VarFileInfo"
- BEGIN
- VALUE "Translation", 0x409, 1200
- END
-END
diff --git a/Project/MSVC2022/CLI/MediaInfo_CLI.rc b/Source/CLI/MediaInfo_CLI.rc
similarity index 100%
rename from Project/MSVC2022/CLI/MediaInfo_CLI.rc
rename to Source/CLI/MediaInfo_CLI.rc
From 5ba038ae9b3189970457349916b640a0a1bf9600 Mon Sep 17 00:00:00 2001
From: cjee21 <77721854+cjee21@users.noreply.github.com>
Date: Wed, 13 May 2026 16:09:30 +0800
Subject: [PATCH 3/3] Qt GUI: Enable Segment Heap
---
Project/QMake/GUI/MediaInfoQt.pro | 1 +
Project/QMake/GUI/segmentheap.manifest | 7 +++++++
2 files changed, 8 insertions(+)
create mode 100644 Project/QMake/GUI/segmentheap.manifest
diff --git a/Project/QMake/GUI/MediaInfoQt.pro b/Project/QMake/GUI/MediaInfoQt.pro
index 14a2033e82..344132f6e9 100644
--- a/Project/QMake/GUI/MediaInfoQt.pro
+++ b/Project/QMake/GUI/MediaInfoQt.pro
@@ -90,6 +90,7 @@ unix {
win32 {
QMAKE_CXXFLAGS += /MP /guard:cf
QMAKE_LFLAGS += /guard:cf /CETCOMPAT
+ QMAKE_LFLAGS += /MANIFESTINPUT:$$_PRO_FILE_PWD_\segmentheap.manifest
contains(UWP, yes|1) {
diff --git a/Project/QMake/GUI/segmentheap.manifest b/Project/QMake/GUI/segmentheap.manifest
new file mode 100644
index 0000000000..f9dd5c1f6e
--- /dev/null
+++ b/Project/QMake/GUI/segmentheap.manifest
@@ -0,0 +1,7 @@
+
+
+
+ SegmentHeap
+
+
+
\ No newline at end of file