ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Other Software > Developer's Corner

Plugins

(1/1)

TaoPhoenix:

Can a good programmer create plugins for any application? Can you just hand someone an EXE and say "write a plugin for this" or do they need API's or such?

fenixproductions:
Good programmer may not need any API/SDK and create DLL which will inject its code on runtime into desired application (i.e. TWinKey) but this is not very secure way and it is prone to errors. In some scenarios may also be malicious.

Standard way is to have proper API from software developer: easier to maintain, debug and test. If such documentation does not exist: beg for it ;)
Or use macro tools/languages like AutoHotkey or AutoIt.

vlastimil:
If the application has an interface for plug-ins and the programmer has infinite time, then yes, they can create plug-ins for anything. In reality, the programmer needs something to guide them. Having documentation, API specification, or an example helps. Without them, it is like creating a key without knowing anything about a lock.

TaoPhoenix:
If the application has an interface for plug-ins and the programmer has infinite time, then yes, they can create plug-ins for anything. In reality, the programmer needs something to guide them. Having documentation, API specification, or an example helps. Without them, it is like creating a key without knowing anything about a lock.
-vlastimil (May 06, 2012, 05:13 AM)
--- End quote ---

So some applications don't have a plugin interface at all?

db90h:
So some applications don't have a plugin interface at all?
-TaoPhoenix (May 06, 2012, 05:19 AM)
--- End quote ---

Right. They have no plug-in interface. Most don't, in fact. I mean, that's something a programmer adds if there is a need, not by default.

However, the poster was expressing the possibility that with *MUCH WORK* an external programmer could come in and create such an interface. Without the source code, this requires massive amounts of work, reverse engineering, and even then it may have limitations or be imperfect. The mechanism would involve injection into the process, then modification of the applicable code, on the instruction set level -- making the whole thing also very prone to errors and other risks.

In the case of signed executables, other platforms, or certain protection schemes, creation of such a 'third-party API interface into a program that has no plug-in interface' could be infeasible.

Navigation

[0] Message Index

Go to full version