Remova a interface do usuário do suplemento na desinstalação
-
19-09-2019 - |
Pergunta
Eu tenho um suplemento do Outlook que é executado apenas na primeira startup do Outlook, momento em que cria uma caixa de ferramentas e a adiciona à barra de comando do Outlook. Usei essa abordagem em vez de criar uma interface temporária em cada startup, porque quero que as decisões do usuário sobre o controle sejam persistentes; Se o usuário desativar o controle ou mover, ele deve permanecer movido.
No entanto, ao desinstalar o aplicativo, a interface do usuário fica para trás, mesmo que a DLL não seja registrada e excluída. Atualmente, a única idéia que tenho para corrigir esse problema é para a DLL de suplemento (ou uma DLL separada) para, depois de desinstalar, permanecer para trás, ser desencadeada mais um no modo de desinstalação e remova a barra de ferramentas na próxima vez que o Outlook iniciar .
Existem alguns problemas com esta abordagem:
- Não tenho certeza, com falta de despachar e registrar a DLL, como forçar a DLL que fiz para executar novamente na próxima vez em que as perspectivas iniciarem.
- Não tenho certeza se meus pensamentos sobre uma abordagem são uma boa ideia.
- Essa coisa toda me parece hacky.
Qual seria a melhor maneira de remover essa interface do usuário após uma desinstalação?
Solução
Bem, vou postar a resposta real para isso, que é o que todo mundo diz para fazer, mas não é o que eu queria ouvir. A solução correta é apenas torná -la uma barra de ferramentas temporária e salvar/carregar os dados de posicionamento eu mesmo manualmente (por exemplo, algo como isto).