Meu método preferido, dois aplicativos. O aplicativo principal que você já tem. O segundo é um lançador / atualizador. Faça um atalho para o lançador, ele verifica uma configuração configuração (criptografada ininteligível, xml, texto simples, codificado diretamente no lançador, qualquer que seja) para o caminho do executável para lançar, em seguida, lança-lo. Quando o aplicativo principal for iniciado, o carregador será encerrado.
Sempre que você obtiver uma nova versão, você atualizará o arquivo de configuração do lançador e lançamentos de futuros programas abrirão a nova versão.
É o processo de estilo "boot loader". Tenha um pequeno aplicativo de assistência que aponte para o aplicativo de tamanho completo. Os clientes iniciam o minúsculo aplicativo e os direciona para o aplicativo completo adequado.
Pontos de bônus se o seu lançador verificar impressões digitais ou assinaturas de hash nos aplicativos de tamanho completo para garantir que ninguém seja criativo e tente vincular a outro aplicativo a partir do iniciador.