Artigo: 825791 - Última revisão: quarta-feira, 17 de Janeiro de 2007 - Revisão: 2.3

PROBLEMA: CS0013 ou erros de compilação CS0016 em aplicações Web do ASP.NET

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.

Nesta página

Expandir tudo | Reduzir tudo

Sintomas

Quando visualiza uma aplicação do ASP.NET Microsoft num Web browser, poderá receber as seguintes mensagens de erro:

Para o Microsoft .NET Framework versão 1.1, a mensagem de erro é a seguinte:
CS0016: Não foi possível escrever para exportar o ficheiro 'c:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temporary Files\application1\c11b43f6\cf3ec03\rizcntet.dll ASP.NET'. O nome de directório é inválido.
Para o .NET Framework 1.0, a mensagem de erro é a seguinte:
CS0013: Erro inesperado ao escrever metadados para o ficheiro 'C:\WINDOWS\Microsoft.NET\Framework\v1.0.3705\Temporary ASP.NET Files\application2\3fc72f26\eb731247\ev2bslce.dll'. O nome de directório é inválido.

Causa

As variáveis TEMP e TMP do sistema apontam para uma pasta que não existe. O compilador gera ficheiros temporários na pasta onde as variáveis TMP e TEMP apontarem para antes os ficheiros são copiados para a pasta ficheiros temporários de ASP.NET. No entanto, a pasta onde as variáveis do sistema aponte para é eliminada quando reinicia o computador. Por conseguinte, o compilador não pode gerar os ficheiros temporários.

Resolução

  1. Crie uma pasta temporária em %Systemroot% e, em seguida, o nome Temp .
  2. Conceder permissões totais na pasta Temp à conta de utilizador aspnet no .NET Framework 1.0 ou para o NETWORK SERVICE conta de utilizador do .NET Framework 1.1.
  3. Clique com o botão direito do rato em Meu computador e, em seguida, clique em Propriedades .
  4. No separador Avançadas , clique em Variáveis de ambiente .
  5. Seleccione a variável TEMP em variáveis do sistema e, em seguida, clique em Editar .
  6. Tipo %SystemRoot% \Temp em Valor da variável e, em seguida, clique em OK .
  7. Repita os passos 5 e 6 para editar a variável TMP . Clique duas vezes em OK .
  8. Clique em Iniciar e, em seguida, clique em Executar .
  9. Para repor os serviços de informação Internet (IIS), escreva iisreset a linha de comandos.

    Nota Se a mensagem de erro mencionada na secção "Sintomas" deste artigo persistir, reinicie o computador.

Mais Informação

Passos para reproduzir o comportamento

  1. Inicie o Microsoft Visual Studio NET..
  2. Criar um novo projecto ASP.NET Web Application utilizando o Microsoft Visual C# .NET ou Microsoft Visual Basic .NET e, em seguida, nome do projecto CompileTest .
  3. No menu criar , clique em criar soluções .
  4. Clique com o botão direito do rato em Meu computador e, em seguida, clique em Propriedades .
  5. No separador Avançadas , clique em Variáveis de ambiente .
  6. Seleccione a variável TEMP em sistema variáveis e, em seguida, clique em Editar .
  7. Tipo %SystemRoot% \TEMP1 na caixa Valor da variável à aponte para a pasta TEMP1 não existente e, em seguida, clique em OK .
  8. Repita os passos 6 e 7 para editar a variável TMP para apontar para a pasta TEMP1 inexistente.
  9. Clique duas vezes em OK .
  10. Para o aviso de uma das mensagens de erro mencionadas na secção "Sintomas" deste artigo, visite o seguinte URL: http://localhost/CompileTest/WebForm1.aspx

Referências

Para obter mais informações sobre como conceder permissões para uma pasta, visite o seguinte Web site da Microsoft Developer Network (MSDN):
Proteger a aplicação do ASP.NET e serviços Web
http://msdn2.microsoft.com/en-us/library/aa302435.aspx (http://msdn2.microsoft.com/en-us/library/aa302435.aspx)

A informação contida neste artigo aplica-se a:
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
Palavras-chave: 
kbmt kberrmsg kbcompiler kbwebforms kbdeployment kbprb KB825791 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: 825791  (http://support.microsoft.com/kb/825791/en-us/ )