Tell me more ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I am providing plugins for a third-party application:

  • Is there a language (and API) I could use that would allow me to create an installer/program quickly and with the least headaches? The languages I know are C++, C# and Python.
  • Is there an industry-standard way to provide/install plugins for a third-party application (which only works on Windows 2000 and later)? The application developers encourage programmers to expand their application through plugins, so the expansions/plugins are legal. Is it best to use an installer, normal program or something else I'm not aware of?

What I am developing:

I am making a Windows installer (or any other program you think would be best) that will install plugin files for an existing third-party surveying application. The files should be stored in different directories depending on which version (version 2000, 2003, 2008) of the surveying application they have.

What I plan to do (but looking for advice):

I am thinking that I'll make this program as an installer in Python, because I think Python with give me the fastest development time compared to the other languages I am most experienced with (C++ and C#) and because AFAIK I can bundle the plugin files within the installer EXE file so the user only has to download one file.

I don't know if this is possible for an installer, but when the installation runs I will run a script that will determine where to place the plugin files (depending on the version I'll place them in either C:/program files/ThirdPartyApp2008 or C:/ThirdPartyApp2000) based on what version of the third-party application the user has.

share|improve this question

closed as not a real question by gnat, Glenn Nelson, MichaelT, Kilian Foth, Martijn Pieters Feb 24 at 16:33

It's difficult to tell what is being asked here. This question is ambiguous, vague, incomplete, overly broad, or rhetorical and cannot be reasonably answered in its current form. For help clarifying this question so that it can be reopened, see the FAQ.

1 Answer

I believe this is dependent upon how the original program is distributed. If the original program has an installer, then your plug-in should be an installer that is considered a sub-install of the original. For example, take a look at the NSIS Optional Values page, specifically the ParentKeyName and ParentDisplayName.

Also, if you do go the installer route, I'd use a true installer software such as NSIS or WiX. They are built for looking for pre-conditions of installed software, you just have to understand what you should actually be looking for.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.