A great guide for learning
to write plug-ins was published in 2005 by Steve Micallef, and covers build environment
configuration as well as many useful API functions. His plug-in writing tutorial is a
must read for anyone who wants to learn the nuts and bolts of IDA plug-ins.
Basic Plug-In Concept
First, the plug-in API is published as a set of C++ header (.hpp) files in the SDK??™s include
directory. The contents of these files are the ultimate authority on what is or is not available
to you in the IDA SDK. There are two essential files that each plug-in must include:
and . Ida.hpp defines the idainfo struct and the global idainfo
variable inf. The inf variable is populated with information about the current database,
such as processor type, program entry point, minimum and maximum virtual address
values, and much more. Plug-ins that are specific to a particular processor or file format
can examine the contents of the inf variable to learn whether they are compatible with
the currently loaded file. Loader.hpp defines the plugin_t structure and contains the
appropriate declaration to export a specific instance of a programmer-defined plugin_t.
This is the single most important structure for plug-in authors, as it is mandatory to
declare a single global plugin_t variable named PLUGIN.
Pages:
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591