# FormDump - Dumps HTML form data

FormDump - Form Decoder and Dumper

This sample is a Microsoft Internet Server extension, similar to CGI extensions common to many internet servers. FORMDUMP illustrates how to write a DLL that can be used to obtain form data from a web browser, and also how to build a reply to the form.

FORMDUMP first appeared in the first release of the Internet SDK. This version adds two useful features--output of the user account and a dump of all server variables.

FORMDUMP's HttpExtensionProc does the following:

1. Sends the header of the HTML response
2. Parses inbound form fields and send them back as HTML
3. Determines the security context in which the thread is running, and return the domain and user as HTML
4. Uses GetServerVariable to retrieve all server variables, and send them back as HTML
5. Sends the footer of the HTML resoponse
6. Returns control to IIS

Along with the basic HTML output functions found in the original version of FORMDUMP, this version adds HtmlPrintf(). See html.h and html.cpp for details.

To build this sample, you must have the Internet SDK installed, and the environment of your compiler properly set. A Visual C++ 4.0 makefile is also included for your convenience. See readme.txt for additonal build issues.

Here is an example of how this utility works. The following is a form used by the ISrvMon sample. If you submit this form to FormDump.Dll instead, it shows you the values that the various form parameters were decoded to.

You can use FormDump.Dll with any form. It is useful in understanding how data comes in from the web browser.

### This is a GET operation

System Information

Memory Status

Process Information

### This is a POST operation

System Information

Memory Status

Process Information