Skip to content
⌘ NSIS Forum Archive

Install plugin using NSIS for third party product.

8 posts

GBizas#

Install plugin using NSIS for third party product.

Hi,

I am using Visual studio Express C# (VSE) to create a plugin for a third party application called PMILL.
Unfortunately VSE can not create an install file to install the plugin. I was told that NSIS would be able to do it.
My ...\bin\release directory in VSE project creates .dll and .pdb files.
What is the best way to create an executable and install my plugin so it links with my software (PMILL)?
If someone can point me to the right direction I would really appreciate it.

George
Anders#
Just taking a look at the examples should give you an idea of how NSIS works. You would then have to find out how to locate the plugin directory so you know where to install the .dll. This information might be stored in the registry? Or maybe PMILL has a SDK or some type of developer documentation?
GBizas#
Originally Posted by Anders View Post
Just taking a look at the examples should give you an idea of how NSIS works.
Certainly, there are enough examples to work with.

Originally Posted by Anders View Post
You would then have to find out how to locate the plugin directory so you know where to install the .dll.
I have several dll's in my bin\result directory
So NSIS has to direct the dll files to be installed to the correct directory right? Probably where PMILL stores all the other plugins?

Originally Posted by Anders View Post
This information might be stored in the registry?
Do I have to instruct NSIS how to do that?

Originally Posted by Anders View Post
Or maybe PMILL has a SDK or some type of developer documentation?
What is an SDK? 😱 OMG I have to do a lot of reading. 🙂
GBizas#
Originally Posted by Anders View Post
...PMILL has a SDK or some type of developer documentation?
OK found what an SDK is. I am looking if PMILL has something like that.🙂

George
GBizas#
Originally Posted by Anders View Post
You would then have to find out how to locate the plugin directory so you know where to install the .dll. This information might be stored in the registry?
Found the directory where another plugin is stored. Similar dlls exist there.
I would imagine I can not just copy my dll's to a similar directory by cut/paste. I would imagine that they will have to be linked with registry values right?
Anders#
I don't even know what PMILL is let alone how to install a plugin so I don't know if you have to register the .dll anywhere.

If you are lucky then all you have to do is to put the .dll in the correct directory.

You can read from the registry using ReadRegStr and the information might be under Software\CompanyName\PMill\Plugins or something like that...
JasonFriday13#
Originally Posted by GBizas View Post
Found the directory where another plugin is stored. Similar dlls exist there.
I would imagine I can not just copy my dll's to a similar directory by cut/paste.
You don't have to cut/paste files, they are included inside the installer. So to install a file:
Section "Foo label"
  SetOutPath "$plugin_dir" ; $plugin_dir contains the path, probably read from the registry in .onInit
  File "yourDll1.dll"      ; source file, destination folder is set with SetOutPath
  File "yourDll2.dll"
  File "yourDll3.dll"
SectionEnd