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
y el archivo libreria1 es copiado, sobreescribiendo su original
Si uso el codigo VBS
marca un error en linea 6, Caracter 1 / Permiso Denegado
Mucho menos si quiero reemplazar la ruta destino por %Mi Variable%
Porfa,, me ayudan??
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


0