Criando um arquivo em lotes para identificar a conexão ativa com a Internet

Estou tentando gravar um arquivo em lotes que permitirá ao usuário selecionar sua conexão ativa com a Internet, se houver mais de um na lista gerada pelo comando netsh, e depois alterar as configurações de DN

No entanto, não consigo descobrir como usar o comando choice quando o número de opções é conhecido até que o script seja executado. Sem o uso de matrizes, tentei criar uma variável de string 'escolhas' para conter a sequência que representa as escolhas numéricas e passá-la ao comando de escolhas, mas não consigo fazê-la funcionar. Não posso deixar de sentir que deve haver uma maneira muito mais fácil de fazer isso, mas minha pesquisa não mostra isso. Qualquer ajuda será muito bem recebida

@echo off
setlocal
Set active=0
Set choices=1
set ConnnectedNet=
FOR /F "tokens=2,3* " %%j in ('netsh interface show interface ^| find "Connected"') do Set /A active+=1
FOR /L %%G IN (2,1,%active%) do (set choices=%choices%%%G)
if %active% lss 2 goto :single
if %active% gtr 1 goto :multiple
:single
FOR /F "tokens=2,3* " %%j in ('netsh interface show interface ^| find "Connected"') do set ConnnectedNet=%%l
netsh interface IPv4 set dnsserver "%ConnnectedNet%" static 0.0.0.0 both
goto :eof
:multiple
echo You have more than one active interface. Please select the interface which you are using to connect to the Internet
FOR /F "tokens=2,3* " %%j in ('netsh interface show interface ^| find "Connected"') do echo %%l
CHOICE /C:%choices% /N /T:1,10

questionAnswers(1)

yourAnswerToTheQuestion