Compartir a través de


Cómo: Configurar IIS 5.0 e IIS 6.0 para implementar aplicaciones WPF

Puede implementar una aplicación de Windows Presentation Foundation (WPF) desde la mayoría de los servidores web, siempre que estén configurados con los tipos de Extensiones de correo multipropósito de Internet (MIME) adecuados. De forma predeterminada, Microsoft Internet Information Services (IIS) 7.0 está configurado con estos tipos MIME, pero Microsoft Internet Information Services (IIS) 5.0 y Microsoft Internet Information Services (IIS) 6.0 no lo son.

En este tema se describe cómo configurar Microsoft Internet Information Services (IIS) 5.0 y Microsoft Internet Information Services (IIS) 6.0 para implementar aplicaciones WPF.

Nota:

Puede comprobar la cadena UserAgent en el Registro para determinar si un sistema tiene instalado .NET Framework. Para obtener más información y un script que examine la cadena UserAgent para determinar si .NET Framework está instalado en un sistema, consulte Detección de si está instalado .NET Framework 3.0.

Ajustar la configuración de expiración del contenido

Debe ajustar la configuración de expiración del contenido a 1 minuto. En el procedimiento siguiente se describe cómo hacerlo con IIS.

  1. Haga clic en el menú Inicio, seleccione Herramientas administrativas y haga clic en Administrador de Internet Information Services (IIS). También puede iniciar esta aplicación desde la línea de comandos con "%SystemRoot%\system32\inetsrv\iis.msc".

  2. Expanda el árbol de IIS hasta que encuentre el nodo Sitio web predeterminado .

  3. Haga clic con el botón derecho en Sitio web predeterminado y seleccione Propiedades en el menú contextual.

  4. Seleccione la pestaña Encabezados HTTP y haga clic en "Habilitar expiración de contenido".

  5. Establezca el contenido para que expire después de 1 minuto.

Registrar tipos MIME y extensiones de archivo

Debe registrar varios tipos y extensiones de archivo MIME para que el explorador del sistema del cliente pueda cargar el controlador correcto. Debe agregar los siguientes tipos:

Extensión Tipo MIME
.manifiesto aplicación/manifiesto
.xaml application/xaml+xml
.aplicación application/x-ms-application
.xbap application/x-ms-xbap
.desplegar application/octet-stream
.xps application/vnd.ms-xpsdocument

Nota:

No es necesario registrar tipos MIME ni extensiones de archivo en sistemas cliente. Se registran automáticamente al instalar Microsoft .NET Framework.

El siguiente ejemplo de Microsoft Visual Basic Scripting Edition (VBScript) agrega automáticamente los tipos MIME necesarios a IIS. Para usar el script, copie el código en un archivo .vbs en el servidor. A continuación, ejecute el script ejecutando el archivo desde la línea de comandos o haciendo doble clic en el archivo en el Explorador de Microsoft Windows.

' 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

Nota:

Al ejecutar este script varias veces, se crean varias entradas de mapa MIME en la metabase 5.0 de Microsoft Internet Information Services (IIS) 5.0 o Microsoft Internet Information Services (IIS) 6.0.

Después de ejecutar este script, es posible que no vea tipos MIME adicionales de Microsoft Internet Information Services (IIS) 5.0 o Microsoft Internet Information Services (IIS) 6.0 Microsoft Management Console (MMC). Sin embargo, estos tipos MIME se han agregado a la metabase de Microsoft Internet Information Services (IIS) 5.0 o Microsoft Internet Information Services (IIS) 6.0. El siguiente script mostrará todos los tipos MIME en la metabase 5.0 de Microsoft Internet Information Services (IIS) o 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

Guarde el script como un archivo .vbs (por ejemplo, DiscoverIISMimeTypes.vbs) y ejecútelo desde la línea de comandos mediante el siguiente comando:

cscript DiscoverIISMimeTypes.vbs