Meus amigos,

Muito útil este artigo, não necessáriamente o uso da opção RunAsInvoker pode ser hacking ou prejorativo. Além disso conforme o site da própria Microsoft o RunAsInvoker não faz nenhuma elevação de privilégios, apenas inibe a elevação de privilégios que o software tenta executar, mantendo a execução no nível de privilégios que ele foi iniciado. Por exemplo ao executar este código no PC da Faculdade o software continuará a ser executado com permissões de usuário, não com permissões de administrador. Em relação a necessidade de criar uma pasta diferente onde o usuário logado tenha permissão se faz justamente pelo fato de não executar como administrador, pois não possuirá acesso full em todo o sistema. Com a exeriência que tenho ainda digo que isto pode ser até usado por equipes de suporte de T.I. para viabilizar a execução de softwares por clientes, sem ter a necessidade de conceder permissão de administrador ao usuário, mantendo assim o sistema mais seguro e evitando brechas de segurança. Referência Microsoft: https://devblogs.microsoft.com/oldnewthing/20161117-00/?p=94735