Du får måske vist fejlmeddelelser, når du gennemser eller foretager fejlfinding i et ASP.NET-program, efter at du har installeret sikkerhedsopdatering 887219 (MS05-004)


Oversigt


Når du har installeret sikkerhedsopdatering MS05-004, og du derefter søger i eller prøver at foretage fejlfinding af visse ASP.NET-programmer, kan der opstå fejl. I denne artikel beskrives de forskellige fejlmeddelelser, du kan modtage. Den indeholder løsninger på disse problemer.

Symptomer


Når du har installeret sikkerhedsopdatering MS05-004, og du derefter søger i eller prøver at foretage fejlfinding af et Microsoft ASP.NET-program, hvor URL-adressen indeholder en afsluttende omvendt skråstreg (\), modtager du måske en af følgende fejlmeddelelser:
Ressourcen blev ikke fundet.


Beskrivelse: HTTP 404. Den ressource, du søger efter (eller en af ressourcens afhængigheder), er måske fjernet, omdøbt eller midlertidigt utilgængelig. Gennemse følgende URL-adresse, og kontrollér, at den er stavet korrekt.

Der opstod fejl under forsøg på at køre et projekt: Det lykkedes ikke at starte fejlfinding på webserveren. Fejlfinding ASP.NET- eller ATL-serveren kunne ikke startes. Kontrollér, at ASP.NET eller ATL-serveren er installeret på serveren.

Årsag


Problemet opstår, hvis den URL-adresse, der er angivet i Microsoft IIS-metabasen (Internet Information Services), indeholder en afsluttende omvendt skråstreg.

Løsning


Du kan løse dette problem ved at fjerne den afsluttende omvendte skråstreg i IIS-metabasen for den URL-adresse, der er angivet for det berørte webprogram. Det kan du gøre ved at bruge en af følgende metoder:

Metode 1: Bruge IIS Manager

  1. Klik på Start, klik på Kør, skriv cmd, og klik derefter på OK.
  2. Find mappen %systemroot%\system32\inetsrv.
  3. Ved kommandoprompten skal du skrive inetmgr for at åbne IIS Manager.
  4. Højreklik på webstedet for den URL-adresse, du vil ændre, og klik derefter på Egenskaber.
  5. Hvis det berørte program er en virtuel mappe under webstedet, skal du klikke på fanen Mappe og derefter fjerne den afsluttende omvendte skråstreg fra den sti, der er angivet i tekstboksen Lokal sti.

    Hvis det berørte program findes i rodmappen på webstedet, skal du klikke på fanen Hjemmemappe og derefter fjerne den afsluttende omvendte skråstreg fra den sti, der er angivet i tekstboksen Lokal sti.
  6. Klik på Anvend, og klik derefter på OK.

Metode 2: Bruge et .vbs-script

  1. Brug følgende kodeeksempel til at oprette et .vbs-script:
    Option Explicit

    Dim objWebService, objWebSite
    Dim objSite, objArgs, strServer
    Dim WshNetwork

    Set objArgs = WScript.Arguments

    If objArgs.Length = 1 Then
    strServer = objArgs(0)
    ElseIf objArgs.Length = 0 Then
    Set WshNetwork = CreateObject("WScript.Network")
    strServer = WshNetwork.ComputerName
    Else
    WScript.Echo "Usage: CScript ModifyVDir.vbs [servername]"
    WScript.Quit
    End If
    WScript.Echo "Connecting to " & strServer

    Set objWebService = GetObject("IIS://" & strServer & "/W3SVC")

    For Each objWebSite in objWebService
    Set objSite = GetObject(objWebSite.AdsPath)
    If objSite.Class = "IIsWebServer" Then
    WScript.Echo objSite.AdsPath
    EnumVDir objSite, 1
    End If
    Next

    WScript.Echo "Done processing."

    Sub EnumVDir(objVDir, i)
    Dim objSubVDir, objDir
    Dim strNewPath

    For Each objSubVDir in objVDir
    If objSubVDir.Class = "IIsWebVirtualDir" Then
    Set objDir = GetObject(objSubVDir.AdsPath)

    If ((Right(objDir.Path, 1) = "\") and (Right(objDir.Path, 2) <> ":\")) Then
    WScript.Echo Space(i*3) & objDir.AdsPath
    WScript.Echo Space(i*3) & "Path = " & objDir.Path

    strNewPath = Left(objDir.Path, Len(objDir.Path) - 1)
    WScript.Echo Space(i*3) & "New Path = " & strNewPath

    objDir.Put "Path", strNewPath
    objDir.SetInfo
    End If

    EnumVDir objDir, i + 1
    End If
    Next
    End Sub

  2. Kør .vbs-scriptet fra kommandolinjen. Det gør du ved at benytte følgende fremgangsmåde:
    1. Klik på Start, klik på Kør, skriv cmd, og klik derefter på OK.
    2. Ud for kommandoprompten skal du skrive

      cscript [file_name.vbs]
      .

      Bemærkfile_name er en pladsholder for navnet på dit .vbs-script.
    3. Hvis du vil lukke kommandoprompten, skal du skrive exit.

Flere oplysninger


Når du har installeret denne sikkerhedsopdatering, udfører ASP.NET en skærpet kontrol for at undersøge, om både de fysiske stier og de anmodede virtuelle stier er gyldige.

Referencer


Flere oplysninger om sikkerhedsopdatering MS05-004 finder du ved at klikke på nedenstående artikelnummer for at få vist artiklen i Microsoft Knowledge Base:

887219 MS05-004: Svaghed ved ASP.NET-stivalidering kan tillade uautoriseret adgang