As extensões e os filtros da interface ISAPI do IIS (Serviços de Informações da Internet) podem estender e modificar os recursos de processamento de solicitações do IIS. Os filtros da interface ISAPI necessitam de muito tempo para serem gravados, não oferecem suporte nativo para o tratamento das sessões e podem ser difíceis de manter. O IIS 6.0 e o IIS 8 executam aplicativos ISAPI em isolamento para aprimorar a estabilidade do servidor. Embora os filtros ISAPI ainda possam ser usados no IIS 8, é mais fácil para os desenvolvedores adicionar os módulos nativos ou gerenciados que se integram à nova arquitetura modular do IIS 8.
Corrija uma falha de carregamento na ISAPI
Se um filtro ISAPI falhar durante o carregamento, possíveis resoluções incluirão:
Entre em contato com o fornecedor da ISAPI sobre o erro. O fornecedor tem um conhecimento mais específico sobre os recursos e o comportamento do filtro.
Se a ISAPI não pôde carregar devido a um erro de incompatibilidade do processador, consulte o artigo 894435 da Base de dados de conhecimento.
Verifique na mensagem do log de eventos se há um número de erro específico. Este número de erro é diferente do ID do evento. Para isso, siga as etapas abaixo.
Verifique se há um número de erro específico
Para verificar um número de erro específico:
No Visualizador de Eventos, selecione o evento recebido.
Clique na guia Detalhes e em Exibição Amigável.
Se um número de erro específico estiver disponível, as palavras Dados binários: devem ser exibidas.
Abaixo das palavras, anote o número após os dois pontos.
Saiba mais sobre um número de erro específico
Para saber mais sobre um número de erro específico:
Baixe o utilitário Err.exe na página Pesquisa de código de erro do Microsoft Exchange Server.
Clique em Iniciar, Todos os Programas, Acessórios e Prompt de Comando.
No Prompt de Comando, navegue até o diretório em que o Err.exe foi baixado. Por exemplo, se o Err.exe foi baixado em C:\Err, digite cd C:\Err.
Digite o errornumber err para obter mais informações sobre o erro. Por exemplo, se o número de erro específico for 80070005, digite err 80070005.
No exemplo descrito na seção anterior, o erro foi determinado como ERROR_ACCESS_DENIED (erro de acesso negado), então, o próximo passo é verificar as permissões na DLL ISAPI.
Target | Microsoft.Windows.InternetInformationServices.6.2.WebServer |
Category | Alert |
Enabled | True |
Event Source | Microsoft-Windows-IIS-W3SVC-WP |
Alert Generate | False |
Remotable | True |
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
WA | WriteAction | Microsoft.Windows.Server.IIS.6.2.GenerateAlertAction.SuppressedByDescription | Default |
<Rule ID="Microsoft.Windows.InternetInformationServices.6.2.ISAPI.application.error.detected" Enabled="true" Target="Microsoft.Windows.InternetInformationServices.6.2.WebServer" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-IIS-W3SVC-WP</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(2274|2268|2220|2219|2214)$</Pattern>
</RegExExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WA" TypeID="Microsoft.Windows.Server.IIS.6.2.GenerateAlertAction.SuppressedByDescription">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.InternetInformationServices.6.2.ISAPI.application.error.detected.AlertMessage"]$</AlertMessageId>
</WriteAction>
</WriteActions>
</Rule>