Asked by:
Custom SHIM no longer works on Windows 2016/2019

Question
-
I'm following this example here, it works on Windows 7-2012:
gist.github.com/w4kfu/95a87764db7029e03f09d78f7273c4f4
But on Windows 2016/2019, the DLL is not injected into calc.exe (or win32calc.exe, I've modified the EXE tag).
From the output of procmon, Windows never tried to read the custom SDB file / dll file.Any ideas?
All replies
-
Hi,
Thanks for posting here.
Can you confirm that the .sdb file has been install into the %WindowsDir%Apppatch?
After you deploy and store the customized databases on each of your local computers, you must register the database files. Until you register the database files, the operating system is unable to identify the available compatibility fixes when starting an application.
Also attention that, in the following document, Windows server 2019 is not included.
https://docs.microsoft.com/en-us/windows/deployment/planning/using-the-sdbinstexe-command-line-tool
Best Regards,
Drake
MSDN Community Support Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.
-
-
Hi,
You can try to use the Compatibility Administrator Toolkit to check the Databases that installed in system.
The toolkit can be downloaded in the Windows ADK.
https://docs.microsoft.com/en-us/windows-hardware/get-started/adk-install#adkwin10
Then test run the program.
In addtion, Could you share your specific steps in details? Thanks.
Best Regards,
Drake
MSDN Community Support Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.
-
The database is installed for sure, it's visible in compat manager 10.1.
1. Create shim database with apphelp.dll
2. use sdbinst to install the DB, no error reported
The exact same steps works on Windows 2008 / 2012, just not working on Windows 2016 and later.
-
Hi Dev,
Thanks for the detailed info for this issue.
Does the Compatibility Fix created by manually can works on Windows 2016? You can follow the docs below to Creating a New Compatibility Fix from Compatibility Administrator tool:
And here is article about using Compatibility Administrator utility in Windows:
MSDN Community Support
Please remember to click "Mark as Answer" the responses that resolved your issue, and to click "Unmark as Answer" if not. This can be beneficial to other community members reading this thread. If you have any compliments or complaints to MSDN Support, feel free to contact MSDNFSF@microsoft.com.