Browse Source

Start10: Remove the need to CoInitialize() in PatchStartTileData()

pull/3235/head 22621.3527.65.1_0976666
Amrsatrio 2 years ago
parent
commit
097666676a
  1. 4
      CHANGELOG.md
  2. 4
      ExplorerPatcher/StartMenuSettings.cpp
  3. 8
      ExplorerPatcher/dllmain.c

4
CHANGELOG.md

@ -9,8 +9,8 @@ Tested on OS builds 22621.3296, 22621.3447, and 22621.3527. (Note: 22621 and 226 @@ -9,8 +9,8 @@ Tested on OS builds 22621.3296, 22621.3447, and 22621.3527. (Note: 22621 and 226
##### 1
* Taskbar10: The Windows 10 taskbar option is now no longer available on 26002+. (#3053, e57a6b0)
* This is to comply with Microsoft's removal of the stock Windows 10 taskbar in explorer.exe of said builds.
* Start10: Fixed Pin to Start with a 50/50 chance of success on 226xx.3420+ (22H2, 23H2) and 25169+ (24H2). (232fe6b)
* This is to comply with Microsoft's removal of the stock Windows 10 taskbar in `explorer.exe` of said builds.
* Start10: Fixed Pin to Start on 226xx.3420+ (22H2, 23H2) and 25169+ (24H2). (232fe6b)
* Start10: Reverted the menu closing delay fix when EP is injected only into `StartMenuExperienceHost.exe` for now. (e59c34c)
## 22621.3296.64

4
ExplorerPatcher/StartMenuSettings.cpp

@ -634,6 +634,7 @@ namespace ABI::WindowsInternal::Shell::UnifiedTile::CuratedTileCollections @@ -634,6 +634,7 @@ namespace ABI::WindowsInternal::Shell::UnifiedTile::CuratedTileCollections
};
}
#if 0
HRESULT StartTileData_Windows__Internal__ApplicationModel__StartPinnableSurface__GetUnifiedIdentifierForAumid(
void* _this,
const WCHAR* pszAumid,
@ -898,6 +899,7 @@ HRESULT PatchStartPinnableSurface(HMODULE hModule, ABI::Windows::Internal::Appli @@ -898,6 +899,7 @@ HRESULT PatchStartPinnableSurface(HMODULE hModule, ABI::Windows::Internal::Appli
return S_OK;
}
#endif
namespace VerbGlyphs::SegoeMDL2Assets
{
@ -1208,7 +1210,7 @@ extern "C" { @@ -1208,7 +1210,7 @@ extern "C" {
void PatchStartTileDataFurther(HMODULE hModule, BOOL bSMEH)
{
// ComPtr<ABI::Windows::Internal::ApplicationModel::IPinnableSurfaceFactory> pPinnableSurfaceFactory;
PatchStartPinnableSurface(hModule, nullptr /*&pPinnableSurfaceFactory*/); // We might not need to patch this but just in case
// PatchStartPinnableSurface(hModule, nullptr /*&pPinnableSurfaceFactory*/);
// if (bSMEH)
// pPinnableSurfaceFactory->AddRef(); // Pin in memory so that StartTileData.dll doesn't get unloaded

8
ExplorerPatcher/dllmain.c

@ -11048,10 +11048,14 @@ static void PatchStartTileData(BOOL bSMEH) @@ -11048,10 +11048,14 @@ static void PatchStartTileData(BOOL bSMEH)
VnPatchIAT(hStartTileData, "api-ms-win-core-winrt-l1-1-0.dll", "RoGetActivationFactory", AppResolver_StartTileData_RoGetActivationFactory);
if (!bSMEH)
return;
if ((global_rovi.dwBuildNumber >= 22621 && global_rovi.dwBuildNumber <= 22635) && global_ubr >= 3420
|| global_rovi.dwBuildNumber >= 25169)
{
HRESULT hr = CoInitialize(NULL);
PatchStartTileDataFurther(hStartTileData, bSMEH);
/*HRESULT hr = CoInitialize(NULL);
if (SUCCEEDED(hr))
{
PatchStartTileDataFurther(hStartTileData, bSMEH);
@ -11059,7 +11063,7 @@ static void PatchStartTileData(BOOL bSMEH) @@ -11059,7 +11063,7 @@ static void PatchStartTileData(BOOL bSMEH)
if (hr == S_OK)
{
CoUninitialize();
}
}*/
}
}
#endif

Loading…
Cancel
Save