Artigo: 823409 - Última revisão: terça-feira, 25 de Outubro de 2005 - Revisão: 4.5

CORRECÇÃO: Transferência de ficheiros de grandes dimensões devido a uma perda de grande memória e faz com que o processo Aspnet_wp.exe para Reciclagem

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.
Para obter uma Microsoft .NET Framework 1.0 versão deste artigo, consulte 821387  (http://support.microsoft.com/kb/821387/ ) .
Expandir tudo | Reduzir tudo

Sintomas

Quando utiliza o método Response.BinaryWrite para transferir ficheiros de 400 MB ou superior a partir de uma página ASP.NET, Aspnet_wp.exe pode reciclar o processo. Poderá ver o seguinte evento registado no registo de aplicação do Visualizador de eventos:

Tipo de evento: erro

Origem do evento: ASP.NET 1.1.4322.573

Categoria do evento: nenhum

ID do evento: 1000

Data: 5/16/2002

Hora: 11: 01: 11

Utilizador: N/d

Computador: ComputerName

Descrição: Aspnet_wp.exe (PID: 9999) parou inesperadamente.

Causa

Neste cenário, ocorrem os seguintes procedimentos:
  1. O código normalmente provoque o aparecimento a caixa de transferência.
  2. O processo Inetinfo.exe começa a exaustão bastante memória.
  3. Bytes privados em Inetinfo.exe aumente até ficar sem memória virtual.
  4. Quando tiver falta de memória virtual, detectar uma Reciclagem inesperada do processo Aspnet_wp.exe. ( Bytes privados em aspnet_wp.exe não são afectados. O número de aspnet_wp.exe Bytes privados não significativamente aumenta.)
  5. Inetinfo.exe não liberta memória até que a transferência esteja concluída ou cancelada.
Nota Se efectuar transferências em simultâneo, poderá composto o problema.

Resolução

importante Esta correcção contém dois tipos de pacotes: um pacote do Microsoft Windows Installer e um pacote de Gestor de componentes opcionais (OCM). Se o computador está a executar o sistema operativo Microsoft Windows Server 2003, tem de especificar o Windows Server 2003 (OCM) actualizar porque a protecção de ficheiros do Windows Server 2003 monitoriza os ficheiros do .NET Framework 1.1. Se o computador tiver um sistema operativo diferente do Windows Server 2003, terá de continuar utilizar o pacote do Windows Installer.

Agora é disponibilizada pela Microsoft uma correcção suportada, mas destina-se apenas a corrigir o problema descrito neste artigo. Aplique-a apenas em sistemas que tenham este problema específico. Esta correcção poderá submetida a testes adicionais. Por conseguinte, se não estiver a ser gravemente afectado por este problema, recomendamos que aguarde pelo próximo service pack do .NET Framework 1.1 que contenha esta correcção.

Para resolver este problema imediatamente, contacte o suporte técnico da Microsoft para obter a correcção. Para obter uma lista completa de números de telefone do suporte técnico da Microsoft e informações sobre os custos de suporte, visite o seguinte Web site da Microsoft:
http://support.microsoft.com/contactus/?ws=support (http://support.microsoft.com/contactus/?ws=support)
Nota Em casos especiais, os custos normalmente inerentes às chamadas de suporte poderão ser anulados, se um técnico de suporte da Microsoft determinar que uma actualização específica resolverá o problema. Os custos normais do suporte serão aplicados a problemas adicionais e questões de suporte que não se enquadrem na atualização específica em questão.

A versão inglesa desta correcção tem os atributos de ficheiro (ou posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são indicadas no formato de universal hora (UTC) coordenada Coordinated. Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador fuso horário na ferramenta Data e hora no painel de controlo.
   Date         Time   Version       Size       File name
   ------------------------------------------------------------------------
   01-Aug-2003  19:47  1.1.4322.930    253,952  Aspnet_isapi.dll
   01-Aug-2003  19:47  1.1.4322.930     20,480  Aspnet_regiis.exe
   01-Aug-2003  19:47  1.1.4322.930     32,768  Aspnet_wp.exe
   16-May-2003  01:49                   33,522  Installpersistsqlstate.sql
   16-May-2003  01:49                   34,150  Installsqlstate.sql
   01-Aug-2003  19:38  1.1.4322.930     94,208  Perfcounter.dll
   02-Aug-2003  08:54  1.1.4322.930  1,216,512  System.dll
   02-Aug-2003  08:54  1.1.4322.930    323,584  System.runtime.remoting.dll
   02-Aug-2003  08:55  1.1.4322.930  1,253,376  System.web.dll
   02-Aug-2003  08:55  1.1.4322.930    819,200  System.web.mobile.dll
   02-Aug-2003  08:55  1.1.4322.930    569,344  System.web.services.dll
   02-Aug-2003  08:55  1.1.4322.930  1,335,296  System.xml.dll
   01-Aug-2003  19:42                   14,472  Webuivalidation.js

Ponto Da Situação

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".

Mais Informação

Esta correcção adiciona uma função adicional ao objecto de resposta ( Response.TransmitFile ). Pode utilizar a função em vez da função BinaryWrite ou em vez de outras funções para enviar ficheiros para o cliente. Além disso, esta função pode ser utilizada independentemente do tamanho do ficheiro que pretende transmitir. Para testar esta nova funcionalidade, cole o seguinte código numa página ASPX vazia depois de transferir e instalar a correcção. Tem de alterar a linha "c:\\repro\\z.zip" o código para reflectir um caminho e um ficheiro ZIP que existe num computador.
<script runat=server language=C#>
    void Page_Load() {
        Response.ContentType="application/x-zip-compressed";
        Response.AddHeader("Content-Disposition", "attachment;filename=z.zip");
        Response.TransmitFile("c:\\repro\\z.zip");
    } 
</script>

A informação contida neste artigo aplica-se a:
  • Microsoft ASP.NET 1.1
  • Microsoft Visual Studio .NET 2003 Professional Edition
  • Microsoft Visual Studio .NET 2003 Enterprise Architect
  • Microsoft Visual Studio .NET 2003 Enterprise Developer
Palavras-chave: 
kbmt kbhotfixserver kbqfe kbnetframe100presp3fix kbqfe kbfix kbcodesnippet kbbug KB823409 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 823409  (http://support.microsoft.com/kb/823409/en-us/ )