what the difference between the isapi6webagent.dll and IIS7webagent.dll modules are for the web agent?
isapi6webagent.dll is the “Previous” ISAPI web agent which is the same style used back to IIS 5 and 6. With those generations of IIS, the ISAPI type of module would load in and be able to extend the functionality of the web server, basically it is an API if you will, like the NSAPI API which the iPlanet server uses for its plugins to allow custom or extended functionality.
The isapi module is still used for “modern” instances of IIS 7 and 8 if the web servers application pool is set to Classic mode. Starting with IIS7, Microsoft introduced the “integrated” or “pipeline” application pool mode which changed the architecture such that while ISAPI filters can still be used, it doesn’t prevent other new native pipeline modules from intercepting or handling the request before an ISAPI filter or extension. As a security module, that is no good.
So IIS7webagent.dll is the new module we wrote which loads when IIS is in Integrated application pool mode, and handles the requests “natively” in that application pool assuring via the new architecture and API that we can intercept all requests and properly secure the web server.