programa por para lotes hacer ejemplos ejecutar desde crear como codigo bat automaticamente autoejecutable archivos archivo abrir windows batch-file cmd shortcut

windows - para - Ejecuta un atajo con un archivo por lotes



ejecutar archivo bat automaticamente (1)

La ayuda para start contiene este tidbit:

START ["title"] [/D path] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED] [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL] [/NODE <NUMA node>] [/AFFINITY <hex affinity mask>] [/WAIT] [/B] [command/program] [parameters] "title" Title to display in window title bar.

En otras palabras, la primera cadena citada se usará para el título. Para lanzar algo con comillas, debe proporcionar una cadena entre comillas antes, como esta:

start "" "C:/Program Files (x86)/Steam/user1.lnk"

Como no es un programa con una ventana de consola, los contenidos no importan, no se usarán.

Estoy intentando configurar varias cuentas de Steam, y puedes abrir una cuenta al instante haciendo un atajo, bla, bla, bla. Los accesos directos funcionan bien, pero quiero crear un archivo por lotes para seleccionar qué cuenta usar y luego abrir el acceso directo para esa cuenta. Por algún motivo, no puedo encontrar la manera de abrir un acceso directo desde un archivo por lotes. He buscado y buscado pero no puedo encontrar cómo. Todo parece funcionar hasta lanzar el atajo que no hace nada.

Aquí está mi código

@echo off echo Which steam account to use? echo --------------------------- cd "C:/Program Files (x86)/Steam" TIMEOUT 2 >null echo 1. user1 TIMEOUT 2 >null echo 2. user2 set /p account="Select a number. " echo %account% TIMEOUT 2 >null if %account%==1 ( echo Account "user1" selected. TIMEOUT 3 >null start "C:/Program Files (x86)/Steam/user1.lnk" ) IF %account%==2 ( echo Account "user2" selected. TIMEOUT 3 >null start "C:/Program Files (x86)/Steam/user2.lnk" )

Ejecutando Windows 8.