Dela via


Anvisningar: Konfigurera IIS 5.0 och IIS 6.0 för att distribuera WPF-program

Du kan distribuera ett WPF-program (Windows Presentation Foundation) från de flesta webbservrar, så länge de har konfigurerats med lämpliga MIME-typer (Multipurpose Internet Mail Extensions). Som standard är Microsoft Internet Information Services (IIS) 7.0 konfigurerat med dessa MIME-typer, men Microsoft Internet Information Services (IIS) 5.0 och Microsoft Internet Information Services (IIS) 6.0 är inte det.

Det här avsnittet beskriver hur du konfigurerar Microsoft Internet Information Services (IIS) 5.0 och Microsoft Internet Information Services (IIS) 6.0 för att distribuera WPF-program.

Anmärkning

Du kan kontrollera UserAgent-strängen i registret för att avgöra om ett system har .NET Framework installerat. Mer information och ett skript som undersöker UserAgent sträng för att avgöra om .NET Framework är installerat på ett system finns i Identifiera om .NET Framework 3.0 är installerat.

Justera inställningen för förfallodatum för innehåll

Du bör justera förfalloinställningen för innehåll till 1 minut. I följande procedur beskrivs hur du gör detta med IIS.

  1. Klicka på menyn Starta, peka på Administrationsverktygoch klicka på IIS-hanteraren (Internet Information Services). Du kan också starta det här programmet från kommandoraden med "%SystemRoot%\system32\inetsrv\iis.msc".

  2. Expandera IIS-trädet tills du hittar standardwebbplats nod.

  3. Högerklicka på Standardwebbplats och välj Egenskaper på snabbmenyn.

  4. Välj fliken HTTP-huvuden och klicka på "Aktivera förfallodatum för innehåll".

  5. Ange att innehållet ska upphöra att gälla efter 1 minut.

Registrera MIME-typer och filnamnstillägg

Du måste registrera flera MIME-typer och filnamnstillägg så att webbläsaren i klientens system kan läsa in rätt hanterare. Du måste lägga till följande typer:

Förlängning MIME-typ
.manifestera applikation/manifest
.xaml application/xaml+xml
.applikation application/x-ms-application
.xbap application/x-ms-xbap
.gruppera application/octet-stream
.xps application/vnd.ms-xpsdocument

Anmärkning

Du behöver inte registrera MIME-typer eller filnamnstillägg på klientsystem. De registreras automatiskt när du installerar Microsoft .NET Framework.

Följande Exempel på Microsoft Visual Basic Scripting Edition (VBScript) lägger automatiskt till nödvändiga MIME-typer i IIS. Om du vill använda skriptet kopierar du koden till en .vbs-fil på servern. Kör sedan skriptet genom att köra filen från kommandoraden eller dubbelklicka på filen i Microsoft Windows Explorer.

' This script adds the necessary Windows Presentation Foundation MIME types
' to an IIS Server.
' To use this script, just double-click or execute it from a command line.
' Running this script multiple times results in multiple entries in the IIS MimeMap.

Dim MimeMapObj, MimeMapArray, MimeTypesToAddArray, WshShell, oExec
Const ADS_PROPERTY_UPDATE = 2

' Set the MIME types to be added
MimeTypesToAddArray = Array(".manifest", "application/manifest", ".xaml", _
    "application/xaml+xml", ".application", "application/x-ms-application", _
    ".deploy", "application/octet-stream", ".xbap", "application/x-ms-xbap", _
    ".xps", "application/vnd.ms-xpsdocument")

' Get the MimeMap object
Set MimeMapObj = GetObject("IIS://LocalHost/MimeMap")

' Call AddMimeType for every pair of extension/MIME type
For counter = 0 to UBound(MimeTypesToAddArray) Step 2
    AddMimeType MimeTypesToAddArray(counter), MimeTypesToAddArray(counter+1)
Next

' Create a Shell object
Set WshShell = CreateObject("WScript.Shell")

' Stop and Start the IIS Service
Set oExec = WshShell.Exec("net stop w3svc")
Do While oExec.Status = 0
    WScript.Sleep 100
Loop

Set oExec = WshShell.Exec("net start w3svc")
Do While oExec.Status = 0
    WScript.Sleep 100
Loop

Set oExec = Nothing

' Report status to user
WScript.Echo "Windows Presentation Foundation MIME types have been registered."

' AddMimeType Sub
Sub AddMimeType (Ext, MType)

    ' Get the mappings from the MimeMap property.
    MimeMapArray = MimeMapObj.GetEx("MimeMap")

    ' Add a new mapping.
    i = UBound(MimeMapArray) + 1
    ReDim Preserve MimeMapArray(i)
    Set MimeMapArray(i) = CreateObject("MimeMap")
    MimeMapArray(i).Extension = Ext
    MimeMapArray(i).MimeType = MType
    MimeMapObj.PutEx ADS_PROPERTY_UPDATE, "MimeMap", MimeMapArray
    MimeMapObj.SetInfo

End Sub

Anmärkning

Om du kör det här skriptet flera gånger skapas flera MIME-mappningsposter i Microsoft Internet Information Services (IIS) 5.0 eller Microsoft Internet Information Services (IIS) 6.0-metabasen.

När du har kört det här skriptet kanske du inte ser fler MIME-typer från Microsoft Internet Information Services (IIS) 5.0 eller Microsoft Internet Information Services (IIS) 6.0 Microsoft Management Console (MMC). Dessa MIME-typer har dock lagts till i metabasen Microsoft Internet Information Services (IIS) 5.0 eller Microsoft Internet Information Services (IIS) 6.0. Följande skript visar alla MIME-typer i metabasen Microsoft Internet Information Services (IIS) 5.0 eller Microsoft Internet Information Services (IIS) 6.0.

' This script lists the MIME types for an IIS Server.
' To use this script, just double-click or execute it from a command line
' by calling cscript.exe

dim mimeMapEntry, allMimeMaps

' Get the MimeMap object.
Set mimeMapEntry = GetObject("IIS://localhost/MimeMap")
allMimeMaps = mimeMapEntry.GetEx("MimeMap")

' Display the mappings in the table.
For Each mimeMap In allMimeMaps
    WScript.Echo(mimeMap.MimeType & " (" & mimeMap.Extension + ")")
Next

Spara skriptet som en .vbs -fil (till exempel DiscoverIISMimeTypes.vbs) och kör det från kommandotolken med hjälp av följande kommando:

cscript DiscoverIISMimeTypes.vbs