Essa é uma pergunta muito boa, especialmente se você tiver muitos HTAs, como eu faço.
Minha solução foi associar a extensão de arquivo .hta a um script em vez de MsHta.exe. Este script obtém o nome Hta e args da linha de comando. Em seguida, ele cria uma cópia do MsHta.exe em uma pasta dedicada a essas cópias e fornece o nome do Hta. Finalmente, ele executa o arquivo .exe copiado com o nome e os argumentos hta.
Por exemplo, meu verificador de status do modem, ModemStatus.hta, é executado por uma cópia do MsHta.exe que é chamado ModemStatus.hta.exe - e é isso que aparece no Gerenciador de Tarefas.
Esse método necessariamente prolifera cópias de MsHta.exe, e é por isso que as coloco todas em uma pasta dedicada. Naturalmente, a pasta é verificada para ver se ela já possui uma cópia em vez de criar uma nova a cada vez que uma Hta é executada. Eu tentei originalmente usando links físicos, mas todos eles foram resolvidos para o MsHta.exe, então cópias são necessárias.
Eu digo "associe a extensão de arquivo .hta a um script", mas o meu é na verdade um exe compilado de um script AutoIt. O AutoHotKey funcionaria da mesma forma, e também pode ser compilado para um exe, mas você provavelmente também poderia fazer o trabalho usando algo escrito como um WScript.