Windows Server 2012 executa o serviço na inicialização sem êxito

1

Eu tenho uma instância do EC2 com o Windows Server 2012 R2 com todas as atualizações mais recentes.

Eu fiz um serviço no início e, em seguida, uma tarefa para executar um arquivo em lotes para criar um relatório do Microsoft Word (usando meu programa personalizado C #). Eu configurei a tarefa para ser executada com privilégios mais altos e para ser executada como Administrador. Enquanto meu arquivo de lote é chamado, ele falha. Meu arquivo de lote:

C:/WordGenerator.exe C:/report.docx > C:/word.log 2>&1

Erros com exceção do exe:

Failure
System.NullReferenceException: Object reference not set to an instance of an object.
    at InteropFunctions.Save(String opath)
    at Reporting.Report.generate()
    at Reporting.WordGenerator.run()

Se eu executar o arquivo em lote manualmente, ele será concluído.

A exceção acima ocorre quando a função de interoperabilidade do C # Word tenta abrir um relatório feito para processamento adicional (para que ele efetivamente não tenha permissões - não é possível encontrá-lo).

  1. O que eu aprendi até agora é que o Windows ainda pode executar todos os serviços como a conta do SISTEMA LOCAL e efetuar login no determinado usuário (se houver) na hora.

  2. Também aprendi que os serviços podem ser executados em um contexto diferente de sessões / segurança como comandos regulares do Administrador.

Alguém pode ajudar a encontrar uma solução que funcione? Eu preciso executar um arquivo em lotes na inicialização como administrador (sem login). Estou disposto a ir tão longe quanto simular um login. Estamos enfrentando outros problemas devido a isso não ser realmente executado como administrador (o que eu dei foi um caso simples). Imagens para configuração:

    
por jn1kk 20.09.2014 / 03:47

1 resposta

1

O motivo pelo qual isso falhou foi devido ao DCOM no Windows. Eu defini o meu para ser executado como administrador (na seção Identidade).

link

    
por 29.09.2014 / 21:14