From 5e3e0660e75364a72f9af32a6e3641a552d7a053 Mon Sep 17 00:00:00 2001 From: Kai Tao <69313318+vanzue@users.noreply.github.com> Date: Wed, 12 Nov 2025 10:39:21 +0800 Subject: [PATCH] Revert hybrid crt to make powertoys quit safely (#43484) ## Summary of the Pull Request After enabling Hybrid CRT, the PowerToys process failed to properly unload some module interface DLLs when quit application. The root cause is still unclear, but this change reverts the behavior to ensure safe unloading. ## PR Checklist - [ ] Closes: #43413 - [ ] **Communication:** I've discussed this with core contributors already. If the work hasn't been agreed, this work might be rejected - [ ] **Tests:** Added/updated and all pass - [ ] **Localization:** All end-user-facing strings can be localized - [ ] **Dev docs:** Added/updated - [ ] **New binaries:** Added on the required places - [ ] [JSON for signing](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ESRPSigning_core.json) for new binaries - [ ] [WXS for installer](https://github.com/microsoft/PowerToys/blob/main/installer/PowerToysSetup/Product.wxs) for new binaries and localization folder - [ ] [YML for CI pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ci/templates/build-powertoys-steps.yml) for new test projects - [ ] [YML for signed pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/release.yml) - [ ] **Documentation updated:** If checked, please file a pull request on [our docs repo](https://github.com/MicrosoftDocs/windows-uwp/tree/docs/hub/powertoys) and link it here: #xxx ## Detailed Description of the Pull Request / Additional comments ## Validation Steps Performed Can unload dll safely when quit powertoys --- Cpp.Build.props | 52 +----------------- .../PowerToysSetupCustomActionsVNext.vcxproj | 2 + .../PowerToysSetupVNext/Directory.Build.props | 3 +- .../SilentFilesInUseBAFunction.vcxproj | 55 +++++++++++++++++-- .../SilentFilesInUseBAFunctions.cpp | 8 ++- .../CalculatorEngineCommon.vcxproj | 50 ++++++++++++++++- src/common/interop/PowerToys.Interop.vcxproj | 2 + .../BackgroundActivator.vcxproj | 10 ++++ .../CropAndLock/CropAndLock.vcxproj | 4 ++ .../FileLocksmithLibInterop.vcxproj | 2 + .../FindMyMouse/FindMyMouse.vcxproj | 2 + .../MouseHighlighter/MouseHighlighter.vcxproj | 2 + .../MouseUtils/MouseJump/MouseJump.vcxproj | 2 + .../MousePointerCrosshairs.vcxproj | 2 + .../NewShellExtensionContextMenu.vcxproj | 4 ++ .../WorkspacesLauncher.vcxproj | 2 + .../WorkspacesSnapshotTool.vcxproj | 2 + .../WorkspacesWindowArranger.vcxproj | 2 + src/modules/ZoomIt/ZoomIt/ZoomIt.vcxproj | 6 ++ .../AlwaysOnTop/AlwaysOnTop.vcxproj | 2 + .../CmdPalKeyboardService.vcxproj | 39 +++++++++++++ .../Microsoft.Terminal.UI.vcxproj | 24 ++++++++ ...icrosoft.CommandPalette.Extensions.vcxproj | 28 ++++++++++ .../fancyzones/FancyZones/FancyZones.vcxproj | 2 + .../KeyboardManagerEditor.vcxproj | 2 + .../PowerRename.FuzzingTest.vcxproj | 1 + .../ModuleTemplate/ModuleTemplate.vcxproj | 2 + .../ModuleTemplateCompileTest.vcxproj | 2 + 28 files changed, 255 insertions(+), 59 deletions(-) diff --git a/Cpp.Build.props b/Cpp.Build.props index 99738fd0dc..5a4538f940 100644 --- a/Cpp.Build.props +++ b/Cpp.Build.props @@ -1,56 +1,6 @@ - - - $(Configuration) - - - - - - - - - - - MultiThreadedDebug - - - - %(IgnoreSpecificDefaultLibraries);libucrtd.lib - %(AdditionalOptions) /defaultlib:ucrtd.lib - - - - - - MultiThreaded - - - - %(IgnoreSpecificDefaultLibraries);libucrt.lib - %(AdditionalOptions) /defaultlib:ucrt.lib - - - - - - - MultiThreadedDebugDLL - - - - - MultiThreadedDLL - - @@ -123,6 +73,7 @@ _DEBUG;%(PreprocessorDefinitions) Disabled + MultiThreadedDebug true @@ -132,6 +83,7 @@ NDEBUG;%(PreprocessorDefinitions) MaxSpeed + MultiThreaded true true diff --git a/installer/PowerToysSetupCustomActionsVNext/PowerToysSetupCustomActionsVNext.vcxproj b/installer/PowerToysSetupCustomActionsVNext/PowerToysSetupCustomActionsVNext.vcxproj index 21b0e75837..ae50cdcedb 100644 --- a/installer/PowerToysSetupCustomActionsVNext/PowerToysSetupCustomActionsVNext.vcxproj +++ b/installer/PowerToysSetupCustomActionsVNext/PowerToysSetupCustomActionsVNext.vcxproj @@ -110,6 +110,7 @@ Disabled _DEBUG;_WINDOWS;_USRDLL;CUSTOMACTIONTEST_EXPORTS;%(PreprocessorDefinitions) EnableFastChecks + MultiThreadedDebug true @@ -122,6 +123,7 @@ MaxSpeed true NDEBUG;_WINDOWS;_USRDLL;CUSTOMACTIONTEST_EXPORTS;%(PreprocessorDefinitions) + MultiThreaded true diff --git a/installer/PowerToysSetupVNext/Directory.Build.props b/installer/PowerToysSetupVNext/Directory.Build.props index 69a63832d1..505e3cf844 100644 --- a/installer/PowerToysSetupVNext/Directory.Build.props +++ b/installer/PowerToysSetupVNext/Directory.Build.props @@ -1,5 +1,4 @@ - @@ -9,4 +8,4 @@ $(BaseIntermediateOutputPath) - \ No newline at end of file + diff --git a/installer/PowerToysSetupVNext/SilentFilesInUseBA/SilentFilesInUseBAFunction.vcxproj b/installer/PowerToysSetupVNext/SilentFilesInUseBA/SilentFilesInUseBAFunction.vcxproj index d45e32f87c..3972c1b0f7 100644 --- a/installer/PowerToysSetupVNext/SilentFilesInUseBA/SilentFilesInUseBAFunction.vcxproj +++ b/installer/PowerToysSetupVNext/SilentFilesInUseBA/SilentFilesInUseBAFunction.vcxproj @@ -1,7 +1,30 @@ + + + + + Debug + ARM64 + + + Release + ARM64 + + + Debug + x64 + + + Release + x64 + + + {F8B9F842-F5C3-4A2D-8C85-7F8B9E2B4F1D} + DynamicLibrary + Unicode SilentFilesInUseBAFunction PowerToysSetupCustomActionsVNext bafunctions.def @@ -10,6 +33,7 @@ + DynamicLibrary true @@ -41,10 +65,7 @@ - - Use - precomp.h - + Create precomp.h @@ -71,5 +92,31 @@ + + + + _DEBUG;%(PreprocessorDefinitions) + Disabled + MultiThreadedDebug + + + true + + + + + NDEBUG;%(PreprocessorDefinitions) + MaxSpeed + MultiThreaded + true + true + + + true + true + true + + + diff --git a/installer/PowerToysSetupVNext/SilentFilesInUseBA/SilentFilesInUseBAFunctions.cpp b/installer/PowerToysSetupVNext/SilentFilesInUseBA/SilentFilesInUseBAFunctions.cpp index ceccde5f0d..9b9e5d570f 100644 --- a/installer/PowerToysSetupVNext/SilentFilesInUseBA/SilentFilesInUseBAFunctions.cpp +++ b/installer/PowerToysSetupVNext/SilentFilesInUseBA/SilentFilesInUseBAFunctions.cpp @@ -18,6 +18,7 @@ public: // IBootstrapperApplication BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "*** CUSTOM BA FUNCTION SYSTEM ACTIVE *** Running detect begin BA function. fCached=%d, registrationType=%d, cPackages=%u, fCancel=%d", fCached, registrationType, cPackages, *pfCancel); + LExit: return hr; } @@ -31,6 +32,12 @@ public: // IBAFunctions BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "*** CUSTOM BA FUNCTION SYSTEM ACTIVE *** Running plan begin BA function. cPackages=%u, fCancel=%d", cPackages, *pfCancel); + //------------------------------------------------------------------------------------------------- + // YOUR CODE GOES HERE + // BalExitOnFailure(hr, "Change this message to represent real error handling."); + //------------------------------------------------------------------------------------------------- + + LExit: return hr; } @@ -56,7 +63,6 @@ public: // IBAFunctions ) { HRESULT hr = S_OK; - UNREFERENCED_PARAMETER(source); BalLog(BOOTSTRAPPER_LOG_LEVEL_STANDARD, "*** CUSTOM BA FUNCTION CALLED *** Running OnExecuteFilesInUse BA function. packageId=%ls, cFiles=%u, recommendation=%d", wzPackageId, cFiles, nRecommendation); diff --git a/src/common/CalculatorEngineCommon/CalculatorEngineCommon.vcxproj b/src/common/CalculatorEngineCommon/CalculatorEngineCommon.vcxproj index ff9332cfc0..43f4749892 100644 --- a/src/common/CalculatorEngineCommon/CalculatorEngineCommon.vcxproj +++ b/src/common/CalculatorEngineCommon/CalculatorEngineCommon.vcxproj @@ -9,6 +9,12 @@ CalculatorEngineCommon false + + + true + false + + true @@ -19,9 +25,11 @@ true - false + true true Windows Store + false + @@ -140,5 +148,43 @@ - + + + + + + + MultiThreadedDebug + stdcpp17 + + + + %(IgnoreSpecificDefaultLibraries);libucrtd.lib + %(AdditionalOptions) /defaultlib:ucrtd.lib + + + + + + MultiThreaded + + + + %(IgnoreSpecificDefaultLibraries);libucrt.lib + %(AdditionalOptions) /defaultlib:ucrt.lib + + + \ No newline at end of file diff --git a/src/common/interop/PowerToys.Interop.vcxproj b/src/common/interop/PowerToys.Interop.vcxproj index 472119925e..ca29e69cce 100644 --- a/src/common/interop/PowerToys.Interop.vcxproj +++ b/src/common/interop/PowerToys.Interop.vcxproj @@ -63,12 +63,14 @@ + MultiThreadedDebug true true + MultiThreaded false true false diff --git a/src/common/notifications/BackgroundActivator/BackgroundActivator.vcxproj b/src/common/notifications/BackgroundActivator/BackgroundActivator.vcxproj index b2ebc7cb72..077333a664 100644 --- a/src/common/notifications/BackgroundActivator/BackgroundActivator.vcxproj +++ b/src/common/notifications/BackgroundActivator/BackgroundActivator.vcxproj @@ -46,6 +46,16 @@ notifications + + + MultiThreadedDebugDLL + + + + + MultiThreadedDLL + + $(IntDir)pch.pch diff --git a/src/modules/CropAndLock/CropAndLock/CropAndLock.vcxproj b/src/modules/CropAndLock/CropAndLock/CropAndLock.vcxproj index 71b535c629..c3e9e4f3f1 100644 --- a/src/modules/CropAndLock/CropAndLock/CropAndLock.vcxproj +++ b/src/modules/CropAndLock/CropAndLock/CropAndLock.vcxproj @@ -82,6 +82,8 @@ Disabled _DEBUG;%(PreprocessorDefinitions) + MultiThreadedDebug + MultiThreadedDebug false @@ -93,6 +95,8 @@ true true NDEBUG;%(PreprocessorDefinitions) + MultiThreaded + MultiThreaded true diff --git a/src/modules/FileLocksmith/FileLocksmithLibInterop/FileLocksmithLibInterop.vcxproj b/src/modules/FileLocksmith/FileLocksmithLibInterop/FileLocksmithLibInterop.vcxproj index 184eec3342..c4489cdad8 100644 --- a/src/modules/FileLocksmith/FileLocksmithLibInterop/FileLocksmithLibInterop.vcxproj +++ b/src/modules/FileLocksmith/FileLocksmithLibInterop/FileLocksmithLibInterop.vcxproj @@ -39,6 +39,7 @@ _DEBUG;%(PreprocessorDefinitions) + MultiThreadedDebugDLL true true @@ -48,6 +49,7 @@ NDEBUG;%(PreprocessorDefinitions) true true + MultiThreadedDLL false true false diff --git a/src/modules/MouseUtils/FindMyMouse/FindMyMouse.vcxproj b/src/modules/MouseUtils/FindMyMouse/FindMyMouse.vcxproj index 0f444134ec..d127de245e 100644 --- a/src/modules/MouseUtils/FindMyMouse/FindMyMouse.vcxproj +++ b/src/modules/MouseUtils/FindMyMouse/FindMyMouse.vcxproj @@ -64,6 +64,7 @@ true _DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreadedDebug stdcpplatest @@ -81,6 +82,7 @@ true NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreaded stdcpplatest diff --git a/src/modules/MouseUtils/MouseHighlighter/MouseHighlighter.vcxproj b/src/modules/MouseUtils/MouseHighlighter/MouseHighlighter.vcxproj index ecd6ea3ec4..df0df021da 100644 --- a/src/modules/MouseUtils/MouseHighlighter/MouseHighlighter.vcxproj +++ b/src/modules/MouseUtils/MouseHighlighter/MouseHighlighter.vcxproj @@ -48,6 +48,7 @@ true _DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreadedDebug stdcpplatest @@ -65,6 +66,7 @@ true NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreaded stdcpplatest diff --git a/src/modules/MouseUtils/MouseJump/MouseJump.vcxproj b/src/modules/MouseUtils/MouseJump/MouseJump.vcxproj index 89abed873a..29e8f444bf 100644 --- a/src/modules/MouseUtils/MouseJump/MouseJump.vcxproj +++ b/src/modules/MouseUtils/MouseJump/MouseJump.vcxproj @@ -48,6 +48,7 @@ true _DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreadedDebug stdcpplatest @@ -65,6 +66,7 @@ true NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreaded stdcpplatest diff --git a/src/modules/MouseUtils/MousePointerCrosshairs/MousePointerCrosshairs.vcxproj b/src/modules/MouseUtils/MousePointerCrosshairs/MousePointerCrosshairs.vcxproj index 7fef06e960..58668c663f 100644 --- a/src/modules/MouseUtils/MousePointerCrosshairs/MousePointerCrosshairs.vcxproj +++ b/src/modules/MouseUtils/MousePointerCrosshairs/MousePointerCrosshairs.vcxproj @@ -49,6 +49,7 @@ true _DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreadedDebug stdcpplatest @@ -66,6 +67,7 @@ true NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreaded stdcpplatest diff --git a/src/modules/NewPlus/NewShellExtensionContextMenu/NewShellExtensionContextMenu.vcxproj b/src/modules/NewPlus/NewShellExtensionContextMenu/NewShellExtensionContextMenu.vcxproj index c650439b65..7dade586e7 100644 --- a/src/modules/NewPlus/NewShellExtensionContextMenu/NewShellExtensionContextMenu.vcxproj +++ b/src/modules/NewPlus/NewShellExtensionContextMenu/NewShellExtensionContextMenu.vcxproj @@ -67,6 +67,8 @@ false dll.def runtimeobject.lib;$(CoreLibraryDependencies) + + del $(OutDir)\NewPlusPackage.msix /q @@ -98,6 +100,8 @@ MakeAppx.exe pack /d . /p $(OutDir)NewPlusPackage.msix /nv false dll.def runtimeobject.lib;$(CoreLibraryDependencies) + + del $(OutDir)\NewPlusPackage.msix /q diff --git a/src/modules/Workspaces/WorkspacesLauncher/WorkspacesLauncher.vcxproj b/src/modules/Workspaces/WorkspacesLauncher/WorkspacesLauncher.vcxproj index 7be5219a9f..9d4fc4bcab 100644 --- a/src/modules/Workspaces/WorkspacesLauncher/WorkspacesLauncher.vcxproj +++ b/src/modules/Workspaces/WorkspacesLauncher/WorkspacesLauncher.vcxproj @@ -29,6 +29,7 @@ _DEBUG;%(PreprocessorDefinitions) Disabled true + MultiThreadedDebug true @@ -39,6 +40,7 @@ NDEBUG;%(PreprocessorDefinitions) MaxSpeed false + MultiThreaded true true diff --git a/src/modules/Workspaces/WorkspacesSnapshotTool/WorkspacesSnapshotTool.vcxproj b/src/modules/Workspaces/WorkspacesSnapshotTool/WorkspacesSnapshotTool.vcxproj index ad7a96ec84..05e4241c1c 100644 --- a/src/modules/Workspaces/WorkspacesSnapshotTool/WorkspacesSnapshotTool.vcxproj +++ b/src/modules/Workspaces/WorkspacesSnapshotTool/WorkspacesSnapshotTool.vcxproj @@ -29,6 +29,7 @@ _DEBUG;%(PreprocessorDefinitions) Disabled true + MultiThreadedDebug true @@ -39,6 +40,7 @@ NDEBUG;%(PreprocessorDefinitions) MaxSpeed false + MultiThreaded true true diff --git a/src/modules/Workspaces/WorkspacesWindowArranger/WorkspacesWindowArranger.vcxproj b/src/modules/Workspaces/WorkspacesWindowArranger/WorkspacesWindowArranger.vcxproj index 4555f6257b..2451be2470 100644 --- a/src/modules/Workspaces/WorkspacesWindowArranger/WorkspacesWindowArranger.vcxproj +++ b/src/modules/Workspaces/WorkspacesWindowArranger/WorkspacesWindowArranger.vcxproj @@ -29,6 +29,7 @@ _DEBUG;%(PreprocessorDefinitions) Disabled true + MultiThreadedDebug true @@ -39,6 +40,7 @@ NDEBUG;%(PreprocessorDefinitions) MaxSpeed false + MultiThreaded true true diff --git a/src/modules/ZoomIt/ZoomIt/ZoomIt.vcxproj b/src/modules/ZoomIt/ZoomIt/ZoomIt.vcxproj index 0907ff3554..b1f91a5228 100644 --- a/src/modules/ZoomIt/ZoomIt/ZoomIt.vcxproj +++ b/src/modules/ZoomIt/ZoomIt/ZoomIt.vcxproj @@ -81,6 +81,7 @@ MaxSpeed __ZOOMIT_POWERTOYS__;_UNICODE;UNICODE;WINVER=0x602;NDEBUG;_WIN32_WINNT=0x602;_WIN32_WINDOWS=0x501;WIN32;_WINDOWS;MSVC6=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) true + MultiThreaded true @@ -102,6 +103,7 @@ MaxSpeed __ZOOMIT_POWERTOYS__;_UNICODE;UNICODE;WINVER=0x602;NDEBUG;_WIN32_WINNT=0x602;_WIN32_WINDOWS=0x501;WIN32;_WINDOWS;MSVC6=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) true + MultiThreaded true @@ -124,6 +126,7 @@ MaxSpeed __ZOOMIT_POWERTOYS__;_UNICODE;UNICODE;WINVER=0x602;NDEBUG;_WIN32_WINNT=0x602;_WIN32_WINDOWS=0x501;WIN32;_WINDOWS;MSVC6=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) true + MultiThreaded true @@ -145,6 +148,7 @@ Disabled __ZOOMIT_POWERTOYS__;_UNICODE;UNICODE;WINVER=0x0602;_DEBUG;_WIN32_WINNT=0x602.MSVC6;_WIN32_WINDOWS=0x600;WIN32;_WINDOWS;_WIN32_WINNT=0x602;MSVC6=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) EnableFastChecks + MultiThreadedDebug _DEBUG;_M_IX86;%(PreprocessorDefinitions) @@ -165,6 +169,7 @@ Disabled __ZOOMIT_POWERTOYS__;_UNICODE;UNICODE;WINVER=0x0602;_DEBUG;_WIN32_WINNT=0x602.MSVC6;_WIN32_WINDOWS=0x600;WIN32;_WINDOWS;_WIN32_WINNT=0x602;MSVC6=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) EnableFastChecks + MultiThreadedDebug _DEBUG;_M_X64;%(PreprocessorDefinitions) @@ -186,6 +191,7 @@ Disabled __ZOOMIT_POWERTOYS__;_UNICODE;UNICODE;WINVER=0x0602;_DEBUG;_WIN32_WINNT=0x602.MSVC6;_WIN32_WINDOWS=0x600;WIN32;_WINDOWS;_WIN32_WINNT=0x602;MSVC6=1;_CRT_SECURE_NO_DEPRECATE;%(PreprocessorDefinitions) EnableFastChecks + MultiThreadedDebug _DEBUG;_M_ARM64;%(PreprocessorDefinitions) diff --git a/src/modules/alwaysontop/AlwaysOnTop/AlwaysOnTop.vcxproj b/src/modules/alwaysontop/AlwaysOnTop/AlwaysOnTop.vcxproj index 5adad25bac..bf3e5c6851 100644 --- a/src/modules/alwaysontop/AlwaysOnTop/AlwaysOnTop.vcxproj +++ b/src/modules/alwaysontop/AlwaysOnTop/AlwaysOnTop.vcxproj @@ -29,6 +29,7 @@ _DEBUG;%(PreprocessorDefinitions) Disabled true + MultiThreadedDebug true @@ -39,6 +40,7 @@ NDEBUG;%(PreprocessorDefinitions) MaxSpeed false + MultiThreaded true true diff --git a/src/modules/cmdpal/CmdPalKeyboardService/CmdPalKeyboardService.vcxproj b/src/modules/cmdpal/CmdPalKeyboardService/CmdPalKeyboardService.vcxproj index 4e20f55383..f891ce96e6 100644 --- a/src/modules/cmdpal/CmdPalKeyboardService/CmdPalKeyboardService.vcxproj +++ b/src/modules/cmdpal/CmdPalKeyboardService/CmdPalKeyboardService.vcxproj @@ -141,4 +141,43 @@ + + + + + + + MultiThreadedDebug + + + + %(IgnoreSpecificDefaultLibraries);libucrtd.lib + %(AdditionalOptions) /defaultlib:ucrtd.lib + + + + + + MultiThreaded + + + + %(IgnoreSpecificDefaultLibraries);libucrt.lib + %(AdditionalOptions) /defaultlib:ucrt.lib + + + + \ No newline at end of file diff --git a/src/modules/cmdpal/Microsoft.Terminal.UI/Microsoft.Terminal.UI.vcxproj b/src/modules/cmdpal/Microsoft.Terminal.UI/Microsoft.Terminal.UI.vcxproj index 347b5a1bc6..6e474cf5f3 100644 --- a/src/modules/cmdpal/Microsoft.Terminal.UI/Microsoft.Terminal.UI.vcxproj +++ b/src/modules/cmdpal/Microsoft.Terminal.UI/Microsoft.Terminal.UI.vcxproj @@ -74,11 +74,35 @@ stdcpp20 + + + MultiThreadedDebug + + + + %(IgnoreSpecificDefaultLibraries);libucrtd.lib + %(AdditionalOptions) /defaultlib:ucrtd.lib /profile /opt:ref /opt:icf + stdcpp20 + + + MultiThreaded + + + + %(IgnoreSpecificDefaultLibraries);libucrt.lib + %(AdditionalOptions) /defaultlib:ucrt.lib /profile /opt:ref /opt:icf + diff --git a/src/modules/cmdpal/extensionsdk/Microsoft.CommandPalette.Extensions/Microsoft.CommandPalette.Extensions.vcxproj b/src/modules/cmdpal/extensionsdk/Microsoft.CommandPalette.Extensions/Microsoft.CommandPalette.Extensions.vcxproj index 92baf3dfa6..a6cad871ab 100644 --- a/src/modules/cmdpal/extensionsdk/Microsoft.CommandPalette.Extensions/Microsoft.CommandPalette.Extensions.vcxproj +++ b/src/modules/cmdpal/extensionsdk/Microsoft.CommandPalette.Extensions/Microsoft.CommandPalette.Extensions.vcxproj @@ -68,6 +68,34 @@ true false + + + + MultiThreadedDebug + + + + %(IgnoreSpecificDefaultLibraries);libucrtd.lib + %(AdditionalOptions) /defaultlib:ucrtd.lib /profile /opt:ref /opt:icf + + + + + + MultiThreaded + + + + %(IgnoreSpecificDefaultLibraries);libucrt.lib + %(AdditionalOptions) /defaultlib:ucrt.lib /profile /opt:ref /opt:icf + + diff --git a/src/modules/fancyzones/FancyZones/FancyZones.vcxproj b/src/modules/fancyzones/FancyZones/FancyZones.vcxproj index 7aab504830..b54ee19e34 100644 --- a/src/modules/fancyzones/FancyZones/FancyZones.vcxproj +++ b/src/modules/fancyzones/FancyZones/FancyZones.vcxproj @@ -26,6 +26,7 @@ _DEBUG;%(PreprocessorDefinitions) Disabled true + MultiThreadedDebug true @@ -36,6 +37,7 @@ NDEBUG;%(PreprocessorDefinitions) MaxSpeed false + MultiThreaded true true diff --git a/src/modules/keyboardmanager/KeyboardManagerEditor/KeyboardManagerEditor.vcxproj b/src/modules/keyboardmanager/KeyboardManagerEditor/KeyboardManagerEditor.vcxproj index 8a4fa95889..3c124d63e4 100644 --- a/src/modules/keyboardmanager/KeyboardManagerEditor/KeyboardManagerEditor.vcxproj +++ b/src/modules/keyboardmanager/KeyboardManagerEditor/KeyboardManagerEditor.vcxproj @@ -30,6 +30,7 @@ _DEBUG;%(PreprocessorDefinitions) Disabled true + MultiThreadedDebug true @@ -40,6 +41,7 @@ NDEBUG;%(PreprocessorDefinitions) MaxSpeed false + MultiThreaded true true diff --git a/src/modules/powerrename/PowerRename.FuzzingTest/PowerRename.FuzzingTest.vcxproj b/src/modules/powerrename/PowerRename.FuzzingTest/PowerRename.FuzzingTest.vcxproj index 0bfb8d2db1..16272dba69 100644 --- a/src/modules/powerrename/PowerRename.FuzzingTest/PowerRename.FuzzingTest.vcxproj +++ b/src/modules/powerrename/PowerRename.FuzzingTest/PowerRename.FuzzingTest.vcxproj @@ -44,6 +44,7 @@ true NotUsing /fsanitize=address /fsanitize-coverage=inline-8bit-counters /fsanitize-coverage=edge /fsanitize-coverage=trace-cmp /fsanitize-coverage=trace-div %(AdditionalOptions) + MultiThreaded stdcpplatest ..\;..\lib\;..\..\..\;%(AdditionalIncludeDirectories) diff --git a/tools/project_template/ModuleTemplate/ModuleTemplate.vcxproj b/tools/project_template/ModuleTemplate/ModuleTemplate.vcxproj index 39c656a6cc..028007de67 100644 --- a/tools/project_template/ModuleTemplate/ModuleTemplate.vcxproj +++ b/tools/project_template/ModuleTemplate/ModuleTemplate.vcxproj @@ -46,6 +46,7 @@ true _DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreadedDebug stdcpplatest @@ -63,6 +64,7 @@ true NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) true + MultiThreaded stdcpplatest diff --git a/tools/project_template/ModuleTemplate/ModuleTemplateCompileTest.vcxproj b/tools/project_template/ModuleTemplate/ModuleTemplateCompileTest.vcxproj index a1ef0522aa..297516b0d5 100644 --- a/tools/project_template/ModuleTemplate/ModuleTemplateCompileTest.vcxproj +++ b/tools/project_template/ModuleTemplate/ModuleTemplateCompileTest.vcxproj @@ -47,6 +47,7 @@ Disabled true _DEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + MultiThreadedDebug stdcpplatest @@ -63,6 +64,7 @@ true true NDEBUG;_WINDOWS;_USRDLL;%(PreprocessorDefinitions) + MultiThreaded stdcpplatest