Os nomes %AppData%
e %LocalAppData%
contêm a palavra "Data", dando a você a dica de que esses diretórios devem ser não usados para armazenar arquivos executáveis. Por favor, não faça isso.
Eu mudaria o design da coisa toda.
-
Coloque o aplicativo no local padrão dos aplicativos:
- se tiver um instalador, use
%ProgramFiles%\My_App\
ou%ProgramFiles(x86)%\My_App\
- se for sem o instalador , eu usaria algo como
C:\Tools\My_App\
- se tiver um instalador, use
-
Inserção de entradas de execução automática na subárvore HKCU Registry (para usuário individual) ou na subárvore HKLM (para máquina local = todos os usuários)
-
Quando o aplicativo é iniciado, ele tem acesso completo ao nome do usuário, caminhos de todos os diretórios do usuário, etc. Portanto, comece a fazer seus itens dependentes do usuário apenas depois que o aplicativo foi iniciado. Dessa forma, você não depende mais da localização do arquivo EXE ou da mágica semelhante.