CMD, iconos y archivos por lotes

CMD, iconos y archivos por lotes

Estoy tratando de mantener mis scripts y los inicios de usuario en dos carpetas diferentes (el objetivo final es ocultar los scripts del programa principal).

Así que puse los archivos por lotes en la carpeta de secuencias de comandos, creé accesos directos y los coloqué en "RunMe".

Eso funciona excepto por una condición. Los campos "Destino" e "Iniciar en" muestran la letra de unidad RELATIVA A MI MÁQUINA. Cuando copio carpetas a una memoria USB (que es "R:" en mi máquina), estoy bastante seguro de que la ruta no se actualizará. Más concretamente, cuando le entrego un USB a otro usuario final, ¿la letra de la unidad en el acceso directo será irremediablemente incorrecta?

Hace un par de semanas, alguien proporcionó un script por lotes 'independiente de la unidad' (%~d0\nombredecarpeta)... pero hasta donde yo sé, no se puede agregar un ícono a un archivo por lotes directamente, solo a un acceso directo. . (Quiero conservar los íconos con mi 'marca' si es posible)

¿Alguien tiene alguna solución?

Respuesta1

Si desea poder mantener la funcionalidad de un acceso directo pero también mantener las rutas portátiles, puede hacer que los enlaces de acceso directo sean relativos, como usar el método descrito.aquí:

%windir%\explorer.exe "..\my\files"

Por supuesto, el inconveniente de este método es que no se puede utilizar el mismo truco para proporcionar una ruta relativa al archivo del ícono, por lo que tiene que ser un ícono que esté disponible en la computadora del usuario.


Editar: en lugar de llamar al programa deseado directamente con explorer.exe, puede llamar a un script de inicio de Powershell personalizado que inicia, reposiciona y administra sus programas. De esa manera, puedes utilizar un método como el que se muestra.aquípara reposicionar su ventana.

información relacionada