Em última análise, depende de quão seguro você deseja seu ambiente. Para máxima segurança, um usuário nunca deve ter acesso administrativo. Assim, a melhor maneira de fazer isso é fazer com que um administrador execute o aplicativo elevando como administrador local (NÃO usando credenciais de administrador de domínio para impedir o despejo de senhas) e criando um serviço ou algo que é iniciado como administrador e depois executa o aplicativo . Dessa forma, você tem controle de granularidade e pode permitir que o aplicativo seja executado como administrador, sem conceder direitos de administrador ao usuário e expor-se a todos os tipos de ataques que exigem privilégios de administrador, como envenenamento por ARP MITM, NBT-NS spoofing e NTLMv2 MITM, despejo de senhas, etc.
Schtasks deve ser capaz de fazer isso: link