Ler em inglês

Compartilhar via


Como configurar o IIS 5.0 e o IIS 6.0 para implantar aplicativos WPF

Você pode implantar um aplicativo Windows Presentation Foundation (WPF) da maioria dos servidores Web, desde que eles estejam configurados com os tipos MIME (Extensões de Email da Internet para Múltiplos Propósitos) apropriados. Por padrão, o Microsoft Internet Information Services (IIS) 7.0 é configurado com esses tipos MIME, mas o Microsoft Internet Information Services (IIS) 5.0 e o Microsoft Internet Information Services (IIS) 6.0 não são.

Este tópico descreve como configurar o Microsoft Internet Information Services (IIS) 5.0 e o Microsoft Internet Information Services (IIS) 6.0 para implantar aplicativos WPF.

Observação

Você pode verificar a cadeia de caracteres UserAgent no registro para determinar se um sistema tem o .NET Framework instalado. Para obter detalhes e um script que examina a string do UserAgent para determinar se o .NET Framework está instalado em um sistema, consulte Detectar se o .NET Framework 3.0 está instalado.

Ajustar a configuração de expiração de conteúdo

Você deve ajustar a configuração de expiração de conteúdo para 1 minuto. O procedimento a seguir descreve como fazer isso com o IIS.

  1. Clique no menu Iniciar , aponte para Ferramentas Administrativas e clique no Gerenciador de Serviços de Informações da Internet (IIS) . Você também pode iniciar esse aplicativo na linha de comando com "%SystemRoot%\system32\inetsrv\iis.msc".

  2. Expanda a árvore do IIS até encontrar o site padrão nó.

  3. Clique com o botão direito do mouse em Site Padrão e selecione Propriedades no menu de contexto.

  4. Selecione a guia Cabeçalhos HTTP e clique em "Habilitar Expiração de Conteúdo".

  5. Defina o conteúdo para expirar após 1 minuto.

Registrar tipos MIME e extensões de arquivo

Você deve registrar vários tipos mime e extensões de arquivo para que o navegador no sistema do cliente possa carregar o manipulador correto. Você precisa adicionar os seguintes tipos:

Extensão Tipo MIME
.manifesto aplicativo/manifesto
.xaml application/xaml+xml
.aplicação application/x-ms-application
.xbap application/x-ms-xbap
.Implantar application/octet-stream
.xps application/vnd.ms-xpsdocument

Observação

Você não precisa registrar tipos MIME ou extensões de arquivo em sistemas cliente. Eles são registrados automaticamente quando você instala o Microsoft .NET Framework.

O exemplo de VBScript (Microsoft Visual Basic Scripting Edition) a seguir adiciona automaticamente os tipos MIME necessários ao IIS. Para usar o script, copie o código para um arquivo .vbs em seu servidor. Em seguida, execute o script executando o arquivo na linha de comando ou clicando duas vezes no arquivo no Microsoft Windows Explorer.

VB
' 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

Observação

Executar esse script várias vezes cria várias entradas de mapa MIME na metabase do Microsoft IIS (Serviços de Informações da Internet) 5.0 ou do Microsoft Internet Information Services (IIS) 6.0.

Depois de executar esse script, talvez você não veja tipos MIME adicionais do Microsoft Internet Information Services (IIS) 5.0 ou do Microsoft Internet Information Services (IIS) 6.0 Microsoft Management Console (MMC). No entanto, esses tipos MIME foram adicionados à metabase do Microsoft Internet Information Services (IIS) 5.0 ou do Microsoft Internet Information Services (IIS) 6.0. O script a seguir exibirá todos os tipos MIME na metabase do Microsoft Internet Information Services (IIS) 5.0 ou do Microsoft Internet Information Services (IIS) 6.0.

VB
' 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

Salve o script como um arquivo de .vbs (por exemplo, DiscoverIISMimeTypes.vbs) e execute-o no prompt de comando usando o seguinte comando:

Console
cscript DiscoverIISMimeTypes.vbs