Archive: Doesn't call plugin.


Doesn't call plugin.
Hi,

I've made a plugin and I've saved it in "C:\Program Files\NSIS\Plugins" (in attach there's the source code).

In my NSI I call the function "GetDrive" (ePass1k::GetDrive), but every so often my installer doesn't call the function. I don't see the file debug.txt. If I change PC the installer works fine.

Have you any suggestions?

Thanks,
Lorenzo.


You can try to use simple DllMain entry point. Might be CRT libs problem. And last VS use msvcr80.dll (and mfc80), available in VS redist folder, this is why I (and other plug-in-writers :) ) removed all crt dependencies from the code. Or build your plug-in in VS 6.


Can you help me to rewrite my DLL without use mfc80.
How to can I remove crt dependencies?

Thanks,
Lorenzo.


Use lstrcpy (kernel.dll) instead of strcpy (vcrt), the same with other functions. You can see what to replace using DependencyWalker (not sure VS 2005 has it). Also you can use /nodefaultlibs or exclude msvcr80.lib only in your project. Build final release in VS 6 - it uses mfc4 or use static linking. Sorry, I have not time for long explanations :(