Ms-Dos - sintaxis de COPY con variables y permisos

 
Vista:
sin imagen de perfil
Val: 27
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

sintaxis de COPY con variables y permisos

Publicado por Blas (16 intervenciones) el 01/08/2021 08:52:21
Hola !!! como andan los filosofos de las pantallas ambar ??
que tiempos aquellos en que el monitor era ambar o de letritas verdes ...

Chicos. Me ayudan?
Estoy haciendo un bat para automatizar un proceso pequeño
necesito lo siguiente
tengo el archivo bat en la carpeta Origen y en la misma carpeta se encuentra el archivo libreria1.dll que debo copiar a la carpeta Destino. Hasta ahi todo parece facil. Pero ahora me la complico...

en mi PC yo se donde esta la carpeta destino, ya que cuando instale asigne la ruta. Por ejemplo "C:\Archivos de Programa\Mi Programa\Destino\" aunque cuando algun amigo instale el programa "Mi Programa" quizas elija otra ruta. Por Ejemplo "D:\Instalaciones\Carlitos\Destino\". Por cierto, es de apreciar que, revisando las variables de sistema y de usuario, noto que "Mi Programa" asigna una variable de usuario. Eso me parecio genial porque define en el sistema un path a una carpeta de ese programa. Coloque, para probarla, en un acceso directo la variable "%Mi Variable" y efectivamente el acceso directo me teletransporto a la carpeta Destino. con ese dato, ya sabria que colocar en el segundo argumento de la funcion COPY en mi BATCH.

El otro inconveniente que encuentro es que el archivo"libreria1.dll" ya existe en la carpeta Destino por lo cual me pedira permisos para sobreescribir al original, lo cual se solucionaría con el modificador adecuado. También observo que en unos equipos luego de la autorizacion para sobreescribir, windows me señala que debo tener permisos de administrador para continuar. Oprimo "Continuar" y procede, ya que soy administrador.

En este panorama, les pido ayuda para escribir correctamente mi sintaxis de copy ya que probe varias formas y no me funciono

Datos:

Carpeta "Origen" con archivo "Copiador.bat" y con "libreria.dll"
Carpeta "Destino" (cualquiera sea su ubicacion" = "%Mi Variable%"

Como escribo mi sintaxis dentro de "copiador.bat"??

COPY "libreria.dll" /ModificadorSobreescritura /PermisosdeAdministrador "Mi Variable"

Por ahi lei que los batch no servian para accesos de administrador.

En un archivo .VBS puse este codigo

1
2
3
4
5
6
Option Explicit
Dim objFSO
Dim sobreescribir
sobreescribir = true
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFile "libreria1.dll", "libreria1.dll", sobreescribir

y el archivo libreria1 es copiado, sobreescribiendo su original
Si uso el codigo VBS

1
2
3
4
5
6
Option Explicit
Dim objFSO
Dim sobreescribir
sobreescribir = true
Set objFSO = CreateObject("Scripting.FileSystemObject")
objFSO.CopyFile "libreria1.dll", "C:\Program Files (x86)\Mi Programa\Destino\libreria1.dll", sobreescribir

marca un error en linea 6, Caracter 1 / Permiso Denegado
Mucho menos si quiero reemplazar la ruta destino por %Mi Variable%

Porfa,, me ayudan??
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 1.419
Oro
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

sintaxis de COPY con variables y permisos

Publicado por Antoni Masana (811 intervenciones) el 02/08/2021 17:38:17
Te traduzco esto:

COPY "libreria.dll" /ModificadorSobreescritura /PermisosdeAdministrador "Mi Variable"

1
2
3
echo off
COPY /Y "libreria.dll" "%Mi_Variable%"
pause

El pause es para ver que funciona la copia, también puedes cambiarlo para que espere 10 segundos antes de cerrar la ventana o menos al gusto.

1
2
3
echo off
COPY /Y "libreria.dll" "%Mi_Variable%"
TIMEOUT /T 10

Y para ejecutar desde el explorador de archivos te pones encima del BAT, botón derecho del ratón y "Ejecutar como administrador" y problema resuelto.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 27
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

sintaxis de COPY con variables y permisos

Publicado por Blas (16 intervenciones) el 04/08/2021 16:29:57
Hola Antoni , muchas gracias !!
La sintaxis propuesta la probe en primera instancia pero no me funciono, por eso realice la consulta.
estoy verificando si "Mi variable" incluye una barra "\" al final que pueda crear conflicto o si la carpeta "Destino" tiene alguna restriccion de acceso. pero, hasta ahora no pude automatizarlo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 27
Ha mantenido su posición en Ms-Dos (en relación al último mes)
Gráfica de Ms-Dos

sintaxis de COPY con variables y permisos

Publicado por Blas (16 intervenciones) el 06/08/2021 15:24:11
el modificador /Y obliga la sobreescritura.
existe alguno que fuerce la gestion como administrador.. porque a quien le mande el archivo me dira. "lo hago, pero no me funciona"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar