Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

how do you configure your windows iis to map a virtual directory to an isapi extension you've created. In other words my iis should recognize an url from that vd has to be processed by the isapi extension I've developed.

Alternatively to state my objective, I am looking for something on the following lines: Like for e.g. for asp.net applications the iis forwards the inbound request to some routines in the aspnet_isapi.dll which interacts with corresponding managed processes to do the job (viz serve the request). Here I am thinking the iis understands that the vd (corresponding to the inbound request) belongs to an asp.net application pool and hence forwards to the aspnet_isapi.dll

I am trying to achieve the same thing, but the iis should forward requests to my isapi extension...

share|improve this question

1 Answer 1

up vote 0 down vote accepted

The URL you use should evaluate to a physical ISAPI DLL on the machine on all IIS versions before 6. Since IIS6, configuring ISAPI is done as an application : more orderly but also more complicated.

I'll need to know which IIS version you're using in order to give a better comment. However, there are also some very good tutorials and books available for ISAPI. A full treaty of the question would be rather long.

EDIT

A typical installation for IIS 5.1 on XP is:

Enable scripts

  1. Open Control Panel / Add or Remove Programs / Add remove Windows components
  2. Click on Internet Information Services / Details
  3. Click on World Wide Service / Details
  4. Check Scripts virtual directory
  5. OK all the way thru.

Ensure Permissions

The above created the directory C:\Inetpub\Scripts. Now:

  1. Copy your dll to this directory (I normally link it directly into there).
  2. Open IIS Management, drill into the Scripts directory, right-click and then Properties, and ensure that Execute permissions are "Scripts and Executables".
  3. In Windows Explorer ensure that in the Scripts directory the IIS user account has read and execute permissions (IUSR_).

Usage

Use the isapi extension by a URL of the format:
http://localhost/scripts/yourdll.dll?parameters

Some sources you might like to have a look at:

How to debug ISAPI DLLs in IIS 4.0, IIS 5.0, IIS 5.1, and IIS 6.0
Appendix 7: Debugging web application

share|improve this answer
    
go ahead n gimme iis 5.1 for a start. Provide links for higher versions –  deostroll Jan 20 '10 at 18:12
    
@deostroll: Done. –  harrymc Jan 20 '10 at 20:38
    
say I've created a vd like "samplevd". My browser sends the request like "localhost/samplevd/home/products";. I want this to be processed by my "yourdll.dll"... –  deostroll Jan 21 '10 at 8:42
    
In this case you must use an ISAPI filter, not an extension. This will treat ALL requests and decide which to handle. –  harrymc Jan 21 '10 at 8:52
    
need more info on the use of isapi filter. Does it generally work on all inbound requests to the iis? –  deostroll Jan 21 '10 at 15:16

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.