Acabei indo com a opção # 1, um script de logon do usuário, e isso vem funcionando de forma confiável há algum tempo. Eu colocaria o script inteiro aqui, mas ele está cheio de detalhes de aplicativos internos que o tornariam inútil para uso geral. O detalhe mais interessante é que estamos usando o wmic para obter o número da versão interna do aplicativo instalado localmente e usá-lo para nos referirmos ao diretório de versão correto em nosso servidor de implementação. Esse código define uma variável chamada Version para corresponder ao valor retornado do wmic.exe
set "myfile=c:\progra~2\%AppFolder%\AppName.exe"
for /f "tokens=*" %%f in ('wmic datafile where "name='%myfile%'" get version /value ^| findstr "="') do set "%%f"