Archive: New Plugin API


New Plugin API
Hello,

I just saw that the new release brings a modified plug-in api. I´m the developer the Simple Service Plugin and the Simple Firewall Plugin which are written in Delphi. I check the Examples\Plugin Directory, but the delphi "headers" (NSIS.PAS) are not changed. So must I change this or should I change this?

I tried to create a setup with my current versions of the plugin (old plugin api) and it seemed to be ok! Other plugins I used e.g. "KillProc" or "GetVersion" are running without any problems.

What is the big change and what exactly should/must I do to rewrite the plugin?

Kind regards

Rainer

BTW: Is there any newletter system to get infos about new releases?


You don't HAVE to do anything, older plugins will continue to work just like they used to, but if you want to get rid of /NOUNLOAD and unloading problems, you could implement the new message callback (the delphi header has not been updated as you said, I don't think any of the devs use delphi)


What exactly are the unloading problems? Are plugins not unloaded after a plugin-function call? What is the default behaviour?

Kind regards

Rainer


some plugins need to stay loaded after the call returns, /NOUNLOAD does that, but when you do that you have to remember to call the plugin again without that flag so it does not stay in memory when nsis is going to delete $instdir