A resposta vinculada está correta, você não pode usar arquivos em lote.
Eu criaria um arquivo de lote que executa um script do PowerShell (o PowerShell está aqui para permanecer pelo menos no futuro previsível). Aqui está o arquivo em lote:
set RESGENTOOLARCHITECTURE=Managed32Bit
powershell c:\temp\OpenVisualStudio.ps1
E aqui está o conteúdo do arquivo de script do PS1 PowerShell:
start-process "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\devenv.exe
Nomeie o que você quiser, mas eu os nomeei do mesmo (com exceção de extensão) e coloque-os no mesmo lugar. Eu queria combiná-los em um arquivo, mas era problemático definir a variável.
Eu testei isso, embora eu tenha usado para abrir o Word 2010.