When I install my application using the setup executable (generated using NSIS) on certain computers a particular DLL does not get the ACL for the the local Users group in its security permissions. The result is that loading the DLL in question only works for administrators.
It is always the same DLL that is affected. All the other DLLs install perfectly. The DLL is properly signed.
The DACL for a DLL usually contains these entries:
- SYSTEM
- John Doh (john@doe.local)
- Administrators (PC-NAME\Administrators)
- User (PC-NAME\Users) --- this one is missing on the affected DLL
What could cause this, and how can I fix it?