Archive: Entry point not found (ADVAPI32.DLL/LsaLookupNames2)


Entry point not found (ADVAPI32.DLL/LsaLookupNames2)
Hi all,

We have an installer that fails to run on Win2k Server edition (not sure which service pack yet, waiting on a reply from the customer). When they attempt to run the installer, they're getting an "Entry Point Not Found" error: "The procedure entry point LsaLookupNames2 could not be located in the dynamic link library ADVAPI32.DLL." This same installer has worked just fine on other versions of Windows (XP and NT4).

I googled and searched the forums for NSIS-specific information about this problem, but didn't turn up anything that looked helpful. Are there any tweaks that can be made to the installer script to avoid this sort of thing, or am I going to have to build a custom version of NSIS that doesn't use LsaLookupNames2?

Note: In case somebody is going to suggest it, the customer can't install new Windows service packs or move up to XP; there's too much red tape and paperwork involved for them to do that.


MSDN:

LsaLookupNames2

Requirements
Client: Included in Windows XP.
Server: Included in Windows Server 2003.
Header: Declared in Ntsecapi.h.
Library: Use Advapi32.lib.
LsaLookupNames

Requirements
Client: Included in Windows XP, Windows 2000 Professional, Windows NT Workstation 4.0 SP3 and later.
Server: Included in Windows Server 2003, Windows 2000 Server, Windows NT Server 3.51 and later.
Header: Declared in Ntsecapi.h.
Library: Use Advapi32.lib.

NSIS doesn't use LsaLookupNames2. Your customer has probably installed some system DLL of a newer version of Windows. Installing UxTheme.dll from Windows XP on Windows 2000 or older versions of Windows XP is a common error, if I remember correctly.