Eu tenho uma caixa remota do Windows Embedded (basicamente uma cópia de recurso limitado do WinXPSP3), na qual eu tenho um serviço do Windows cuja única finalidade na vida é garantir que uma cópia de um aplicativo específico esteja em execução. Caso contrário, ele usa uma chamada .NET Process.Start () no código para iniciar uma cópia.
Temos este serviço e programa em execução em quase 1300 caixas semelhantes a este sem problemas. No entanto, com essa caixa específica, quando o serviço (executado como "sistema local") tenta iniciar o software, um aviso de Aviso de Segurança é exibido e o software não é iniciado. O serviço repete o comando (porque o software não foi iniciado) e o resultado final é um bloco de 100 caixas de diálogo de aviso de segurança e nenhum software em execução. Obviamente, isso é um problema, já que não podemos tomar conta dessa caixa (ou qualquer outra, na verdade) e o software é fundamental para nossas operações comerciais, que envolvem saúde e segurança de vida.
Ao iniciar o software como o usuário conectado padrão, o software é iniciado corretamente. O software reside no disco rígido da caixa em questão e não em qualquer compartilhamento de rede, portanto, a zona deve ser "Meu computador". O arquivo foi "bloqueado", mas foi "desbloqueado" sem alterações.
Suponha que nenhuma alteração no serviço ou software seja possível, mas que eu possa fazer qualquer coisa no próprio ambiente do Windows, como alterar a conta de usuário que está executando o serviço, modificar Opções da Internet, Diretiva de Grupo etc. são listados como arquivos de baixo risco "seguros" no GP, que as configurações de segurança da Intranet não solicitarão ao iniciar um aplicativo e que não há sites / domínios confiáveis. Basicamente, tentei tudo o que uma pesquisa do Google diz para desativar os avisos de segurança de todos os aplicativos, e o problema persiste.