Debugging IIS ISAPI modules

Før jeg begynner vil jeg påpeke at dette ikke er et produkt gjennomgang. Jeg har funnet en utmerket måte å feilsøke ISAPI DLL-filer, og det skjer for å kreve en svært billig verktøy. Jeg ville bare dele denne informasjonen som det har vært så nyttig!
jeg har skrevet noen webtjenester nylig som bruker Delphi 7 og IIS 5 og det har vært en reell smerte å feilsøke dem.
Jeg pleide å ha en referanse til en virkelig god artikkel som forklarer hvordan du setter opp IIS som en prosess i stedet for en tjeneste og deretter bruke Inetinfo.exe som vert app for DLL, men jeg kunne ikke lenger finne den. Jeg prøvde diverse andre artikler /verktøy osv, men var ikke fornøyd med noen av dem. De fleste artikler fungerte (takk og lov for XP Systemgjenoppretting) og de fleste verktøy er målrettet på nettsider så returnerte text /html i stedet for tekst /xml, som forvirret min webtjeneste går
klient. Jeg kom over en ISAPI debugger HER. Jeg har bare brukt det i 10 minutter så langt, og jeg må si det er utmerket! Jeg trengte ikke å endre registeret i det hele tatt, og de ber om fortsatt gå gjennom IIS. Her er hvordan det fungerer. Setup
Server


    Jeg opprettet en virtuell mappe som heter "Debug" med manus tilgang.
  1. Jeg plasserte ISAPIfwd.dll inn i den mappen, som er en fil som følger med verktøyet.
    Det er det for serveren!
    Client oppsett

      Åpne min ISAPI prosjektet i min IDE (Delphi i dette tilfellet). Anmeldelser
      Angi vertsprogrammet som ClientISAPI.exe, en annen fil som følger med verktøyet.

      Sett kjøre parametere av prosjektet mitt til hele banen + filnavnet til min ISAPI DLL.

      Igjen, det er det!
      Debugging ISAPI

        Jeg driver mitt ISAPI prosjektet, går ClientISAPI.exe.

        ClientISAPI.exe laster min DLL (som er grunnen til at runtime parameter er . nødvendig)

        Min webtjeneste testapplikasjon kaller deretter følgende url http: //localhost/debug/isapifwd.dll/wsdl/IMyWebService

        ISAPIfwd.dll mottar forespørselen, passerer den. til ClientISAPI.exe.

        ClientISAPI.exe deretter kjører nødvendige koden i min ISAPI DLL, noe som betyr at jeg kan gå gjennom koden.

        ClientISAPI returnerer Response til ISAPIfwd.dll, som i turn reagerer på Clie

        nt
        Det jeg virkelig liker med denne tilnærmingen er:..

          Ingen register modifikasjoner kreves

          Du kan eksternt feilsøke på selve IIS distribusjonsserver.

          Det er ikke vektet mot nettsider, noe som går gjennom IIS + ISAPI kan feilsøkes.

          er ditt ISAPI ikke lagret, slik at ingen trenger å holde på å starte /stoppe IIS.