Tente um script em lote simples como o abaixo. Não sei qual é o seu script VB, mas se você me mostrar a lógica, adicionarei a esse script para que possa ser iniciado com o script em lote. . .
Isso deve fazer exatamente o que você listou, mas esclarecer o material do script VB para mim e eu adicionarei isso; soa bastante simples. . .
1. Verifique se o iTunes está sendo executado na memória (se estiver em execução, faça o número 3)
2. Inicie o iTunes se ele não estiver em execução e aguarde 30 segundos e verifique se ele está sendo executado novamente na memória
3. Verifique se o iTunes está sendo executado na memória e, se estiver, vá para a rotina VB Script para finalizar a lista de reprodução, etc. e, em seguida, termine o script.
@ECHO OFF
:CheckiTunesRunning
TASKLIST | FINDSTR /I "iTunes.exe"
IF ERRORLEVEL 1 (GOTO StartiTunes) ELSE (GOTO OpenPlayList)
:StartiTunes
START "iTunes" "C:\Program Files\iTunes\iTunes.exe"
::: 30 second pause
PING -n 30 127.0.0.1 > nul
GOTO CheckiTunesRunning
:OpenPlayList
<Open PlayList Logic VB, etc.>
GOTO EOF