AllocateAndInitializeSid: unresolved external symbols (PlatformSDK)

When linking with 8.0 beta I find these symbols are unresolved:

AllocateAndInitializeSid
FreeSid

In 7.1 they were in PlatformSDK\Lib\AdvAPI32.lib.

8.0 has a library of that name, but apparently no such function definitions

In both 7.1 and 8.0, there are declarations for them in PlatformSDK\include\winbase.h.

Is there a workaround / fix   I need them.


Answer this question

AllocateAndInitializeSid: unresolved external symbols (PlatformSDK)

  • Keidy Sakamoto

    Thank you Ronald,

    You're right -- dumpbin finds them.

    My bad -- I needed to add AdvAPI32.lib to the 'Linker/Input/Additional Dependencies' property field.

    That wasn't necessary in my MSVC++7.1 builds, for some reason, which confused me. I'm still unclear why it suddenly is, in 8.0, as my source code dependencies on winbase.h have not changed.

    Thanks again for your prompt response.


  • lordmenace

    I upgraded my projects, so perhaps the wizard missed this one.

    Thanks again.

  • ogiepogi

    In 7.1 I think this lib was added by default. If you upgraded your project, let me know sicnce the upgrade wizard should have migrated this for you. If you created a new project, then the change in default is what caused this.

    Thanks.

    Ronald

  • BJ2000

    Hi,

    They are in my copy of the library.

    Can you try

    dumpbin /all AdvAPI32.lib > AdvAPI32.txt

    and then search the text file for the 2 functions names, they are in my copy of the lib.

    Ronald Laeremans
    Visual C++ team

  • AllocateAndInitializeSid: unresolved external symbols (PlatformSDK)