typedef BOOL (WINAPI* FREELIBRARYPROC)(HINSTANCE hLibModule);
-#define SHIM_NS ForceDxSetupSuccess
+#define SHIM_NS ForceDXSetupSuccess
#include <setup_shim.inl>
return ShimLib_StringNDuplicateA(szString, lstrlenA(szString) + 1);
}
-BOOL ShimLib_StrAEqualsW(PCSTR szString, PCWSTR wszString)
+BOOL ShimLib_StrAEqualsWNC(PCSTR szString, PCWSTR wszString)
{
- while (*szString == *wszString)
+ while (toupper(*szString) == towupper(*wszString))
{
if (!*szString)
return TRUE;
{
if (ps->GetHookAPIs != NULL && ps->ShimName != NULL)
{
- if (ShimLib_StrAEqualsW(ps->ShimName, wszShimName))
+ if (ShimLib_StrAEqualsWNC(ps->ShimName, wszShimName))
{
pUsedShim shim = (pUsedShim)ShimLib_ShimMalloc(sizeof(UsedShim));
shim->pShim = ps;
VOID ShimLib_ShimFree(PVOID pData);
PCSTR ShimLib_StringDuplicateA(PCSTR szString);
PCSTR ShimLib_StringNDuplicateA(PCSTR szString, SIZE_T stringLength);
-BOOL ShimLib_StrAEqualsW(PCSTR szString, PCWSTR wszString);
+BOOL ShimLib_StrAEqualsWNC(PCSTR szString, PCWSTR wszString);
HINSTANCE ShimLib_Instance(VOID);
/* Forward events to generic handlers */
{ "KERNEL32.DLL", "VerifyVersionInfoW" },
}
},
+ /* Show that it is not case sensitive */
+ {
+ L"VeRiFyVeRsIoNInFoLiTe",
+ 0,
+ {
+ { "KERNEL32.DLL", "VerifyVersionInfoA" },
+ { "KERNEL32.DLL", "VerifyVersionInfoW" },
+ }
+ },
};
static DWORD count_shims(expect_shim_data* data)