Version 4, last updated by hollowlife1987 at Oct 15 18:34 2007 UTC
Introduction
-------------
The Generica project simplifies the process of adding specific functionality
to a Winsock 2 function by providing a custom dynamic link library which allows
developers to 'plug-in' functionality, before the original Winsock 2 function is
called by Generica.
Overview
---------
Technically this is possible due to the fact that Generica exports all the same
functions as the Winsock 2 DLL (ws2_32.dll), and allows intermediate processing
before eventually forwarding to the original function in ws2_32.dll.
Plugins must 'register' for a particular Winsock function and will subsequently
be called prior to the original Winsock function being called.
Example
--------
An application could link to Generica and make a call to the WSAStartup() function.
Before WSAStartup() is actually called in the original ws2_32.dll, Generica will
iterate through each plugin that has associated itself with this function and call
each plugin sequentially.
Once all the registered plugins have been invoked, Generica will finally call the
original WSAStartup() function in ws2_32.dll.
Technical Information
----------------------
Plugins are loaded at the same time as the host application loads Generica.
A host application may link to Generica dynamically or statically.
Plugin developers must add the following header files to their projects:
- PluginHost.h
- WinsockTypeDefs.h
Contact
--------
If you have any questions regarding the Generica project, please feel free to
contact me either on IRC (#coderzinc irc.rizon.net) or by the webchat on the
Generica project page (http://www.assembla.com/space/Generica).
The owner is hollowlife1987