none
Visual C++ - Shell32.dll APIs are loading profapi.dll from current process location instead of System32

    Question

  • Hi,

    'SHGetFolderLocation' is internally loading 'profapi.dll' from the current process location if available instead of loading it from system32 folder, even if shell32.dll was loaded from system32 folder. I tried using 'SetDllDirectory', but didn't work.

    Can someone help me to resolve this problem.

    SetDllDirectory(L"");

    SHFILEINFO shfi;  

    SHGetFileInfo(L"", 0, &shfi, sizeof(SHFILEINFO), 0);

    SHGetFolderLocation(0,35,0,0,&data);

    How can I ensure that the above APIs load their dependencies from System32 folder?

    Thanks

    m

    Thursday, November 19, 2015 2:30 PM

Answers