www.MicrosoftBob.com

(Back to Home)

FPCOUNT - An ISAPI-based Hit Counter Replacement for FrontPage
(Back to Main)

FrontPage's built-in hit counter for Windows is still inexplicably a CGI (*.EXE) application instead of an ISAPI application. This causes serious problems if you use a tool like URLSCAN to block *.EXE files from executing. With that in mind, I built an ISAPI replacement that works on IIS for Windows, and FrontPage doesn't even realize that a switch has been made.

Click here to download the file.

This ISAPI-based version consists of two parts:

  1. An ISAPI filter (fpcntexe.dll) that modifies inbound fpcount.exe requests to fpcount.dll
  2. An ISAPI extension (fpcount.dll) that functions in place of the CGI-based fpcount.exe counter

NOTE - This uses source code from Hit Counter sample that was provided in the FrontPage 97 Software Development Kit (SDK), therefore portions of this ISAPI filter contain the following copyright:

Copyright (c) 1996 Vermeer Technologies, Inc., a wholly owned subsidiary of Microsoft Corp. All Rights Reserved

To implement the ISAPI counter, you need to do the following:

On IIS 5.0 and 5.1:

  1. Browse to the following folder using Windows Explorer:

    %CommonProgramFiles%\Microsoft Shared\web server extensions\50\isapi

  2. Copy the "fpcount.dll" into to the folder.
  3. Rename the existing "fpcount.exe" file in that folder to "fpcount.old".
  4. Copy the "fpcntexe.dll" to your INETSRV folder.
  5. Add "fpcntexe.dll" as an ISAPI filter in the Internet Services Manager.

    NOTE - If you are running something like URLSCAN that blocks .EXE files from being browsed, you will need to raise the priority of fpcntexe.dll so that it has a chance to process requests first.

  6. Recycle IIS.

On IIS 6.0:

  1. Perform all the same steps from for IIS 5.0 and 5.1.
  2. Open the Internet Services Manager and bring up the properties for the Web Service Extension named "FrontPage Server Extensions 2002".
  3. Add the "fpcount.dll" file to the Web Service Extension.

    NOTE - This step allows the ISAPI-based counter to work, otherwise by default it would be blocked from executing by IIS.

  4. Recycle IIS.
Copyright © 2008
The information contained within this site is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and non-infringement. In no event shall the authors or copyright holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with microsoftbob.com or the use or other dealings in the content provided.