Artigo: 867466 - Última revisão: sexta-feira, 30 de Novembro de 2007 - Revisão: 1.5

"Acesso negado" mensagem de erro quando executar uma tarefa batch num computador baseado no Windows Server 2003

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 executa um processo é executado no contexto de uma conta de utilizador normal num computador baseado no Microsoft Windows Server 2003, o script não pode ser executado. Se executar a rotina utilizando a funcionalidade tarefas agendadas, poderá ser registada a seguinte mensagem de erro no ficheiro de registo de tarefas agendadas (Schedlgu.txt):
mensagem de erro 0 x 80070005: acesso negado.
Se utilizar um programa de depurador para tentar determinar porque é que o processo não funciona, a seguinte mensagem de erro poderá aparecer na saída de depuração:
Acesso negado (Error 5)

Causa

Este problema ocorre caso se verifiquem as seguintes condições:
  • Executar o processo num servidor membro baseado no Windows Server 2003.
  • O processo é executado como um processo não interactivo.
  • O processo está configurado para executados no contexto de uma conta que não é um membro do grupo Administradores.
No Windows Server 2003, o grupo de utilizadores não têm de ler e executar permissões para o processador de comandos (Cmd.exe). Por predefinição, o programa Cmd.exe tem as seguintes definições de permissões:
  • Grupo interactivo implícito e o grupo implícito de serviço têm permissões de ler e executar.

    Nota Num servidor membro, no grupo TelnetClients também tem as permissões Ler e executar. Num controlador de domínio, o grupo implícito secção também tem as permissões Ler e executar.
  • O grupo de administradores e o grupo implícito de sistema têm permissões de controlo total.

Resolução

Para resolver este problema, utilize um dos seguintes métodos.

Método 1

Do programa Cmd.exe conceda permissões de leitura e execução da conta de utilizador que o processo é executado. Para o fazer, siga estes passos:
  1. Clique em Iniciar e, em seguida, clique em Explorador do Windows .
  2. Localize e, em seguida, com o botão direito do rato no ficheiro de cmd.exe . O ficheiro cmd.exe está localizado na pasta % Windir%\System32.
  3. Clique em Propriedades .
  4. Clique no separador segurança .
  5. Clique em Adicionar .
  6. Na caixa Introduza os nomes de objecto a seleccionar , escreva o nome de utilizador que seja executado o processo e, em seguida, clique em OK duas vezes.

    Nota Quando adiciona o utilizador, o utilizador é automaticamente concedido permissões Ler e executar.
  7. Clique em Sim quando lhe for pedido para continuar.

Método 2

Conceder permissões de ler e executar para o ficheiro cmd.exe ao grupo de secção. Isto permite que todos os processos em lotes para executar o processador de comandos. Para o fazer, siga estes passos:
  1. Clique em Iniciar e, em seguida, clique em Explorador do Windows .
  2. Localize e, em seguida, com o botão direito do rato no ficheiro de cmd.exe . O ficheiro cmd.exe está localizado na pasta % Windir%\System32.
  3. Clique em Propriedades .
  4. Clique no separador segurança .
  5. Clique em Adicionar .
  6. Na caixa Introduza os nomes de objecto a seleccionar , escreva secção e, em seguida, clique duas vezes em OK .
  7. Clique em Sim quando lhe for pedido para continuar.

Mais Informação

O comportamento descrito neste artigo é diferente do comportamento predefinido do Microsoft Windows 2000 Server. Por predefinição, o Windows 2000 Server concede permissões de leitura e permissões de execução ao grupo utilizadores.

Para mais informações sobre grupos implícitas, visite os seguintes Web sites da Microsoft:
http://technet.microsoft.com/en-us/library/bb726980.aspx (http://technet.microsoft.com/en-us/library/bb726980.aspx)
http://technet.microsoft.com/en-us/library/Bb726982.aspx (http://technet.microsoft.com/en-us/library/Bb726982.aspx)

A informação contida neste artigo aplica-se a:
  • Microsoft Windows Server 2003 Web Edition
  • Microsoft Windows Server 2003 Standard Edition
  • Microsoft Windows Server 2003 Enterprise Edition
  • Microsoft Windows Server 2003 Datacenter Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows Server 2003, 64-Bit Datacenter Edition
Palavras-chave: 
kbmt kbtshoot kbprb KB867466 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: 867466  (http://support.microsoft.com/kb/867466/en-us/ )