[logon scripts] - copiar ficheros al arrancar

10/03/2006 - 09:31 por Visperas | Informe spam
Hola, esta es una pregunta que creo q es tonta.
He empezado a mirar el tema de los scripts de inicio, quiero hacer uno que
me actualice los ficheros de windows\system32\drivers\etc\, como puedo
sustituir la ruta de la carpeta de Windows por la variable %systemroot%,
como pondria la ruta?, el script es este

Const OverwriteExisting = TRUE

Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists("c:\windows\system32\drivers\etc\") Then
objFSO.CopyFile "\\serv2\Host_services\*.*" ,
"c:\windows\system32\drivers\etc\" , OverwriteExisting
End If

Gracias.

Preguntas similare

Leer las respuestas

#1 Ramón Sola [MVP Windows - Shell/User]
11/03/2006 - 03:39 | Informe spam
Hash: SHA1

Crea una instancia del objeto WScript.Shell y utiliza su método
ExpandEnvironmentStrings para obtener el valor de la variable de entorno
SYSTEMROOT. También se puede usar la colección Environment (clase
WshEnvironment).

Tu script podría quedar así:

Const OverwriteExisting = TRUE

Set WshShell = WScript.CreateObject("WScript.Shell")
SystemRoot = WshShell.ExpandEnvironmentStrings("%SYSTEMROOT%")

Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists(SystemRoot & "\system32\drivers\etc\") Then

' Añado carácter de continuación (guión bajo) para evitar problemas
' con el corte de línea al copiar y pegar

objFSO.CopyFile "\\serv2\Host_services\*.*" , _
SystemRoot & "\system32\drivers\etc\" , OverwriteExisting
End If


¿Cómo obtener el valor de la variable SYSTEMROOT usando la colección
Environment?

Set WshShell = WScript.CreateObject("WScript.Shell")
Set Env = WshShell.Environment("Process")
SystemRoot = Env("SYSTEMROOT")


Más breve, sacrificando algo de claridad:

Set WshShell = WScript.CreateObject("WScript.Shell")
SystemRoot = WshShell.Environment("Process")("SYSTEMROOT")


Evidentemente, no hay que volver a usar
WScript.CreateObject("WScript.Shell") si ya se ha empleado antes (por
ejemplo como "cabecera" de un script más complejo) para almacenar una
referencia al objeto WScript.Shell en una variable global.

Te sugiero que le eches un vistazo a la documentación de Windows Script
(sólo en inglés) para comprender mejor todo esto:
http://www.microsoft.com/downloads/...x?FamilyID592c48-207d-4be1-8a76-1c4099d7bbb9&DisplayLang=en

Ramón Sola / / MVP Windows - Shell/User
Para obtener la dirección correcta no hacen falta los sellos.
Por favor, usar el correo sólo para cuestiones ajenas a los
grupos de noticias, gracias.

Qué hay, Visperas (), tú escribiste:
Hola, esta es una pregunta que creo q es tonta.
He empezado a mirar el tema de los scripts de inicio, quiero hacer uno
que me actualice los ficheros de windows\system32\drivers\etc\, como
puedo sustituir la ruta de la carpeta de Windows por la variable
%systemroot%, como pondria la ruta?, el script es este

Const OverwriteExisting = TRUE

Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists("c:\windows\system32\drivers\etc\") Then
objFSO.CopyFile "\\serv2\Host_services\*.*" ,
"c:\windows\system32\drivers\etc\" , OverwriteExisting
End If

Gracias.

Respuesta Responder a este mensaje
#2 Nacho MCT Valencia
12/03/2006 - 01:23 | Informe spam
Hola Visperas,
si te vas al botón de Inicio y luego "Ejecutar" y escribes %systemroot%
verás a dónde te lleva y así encontrarás la respuesta. ;-)
Saludos
Nacho Salvador
MCSE - MCSA - MCT


"Visperas" escribió:

Hola, esta es una pregunta que creo q es tonta.
He empezado a mirar el tema de los scripts de inicio, quiero hacer uno que
me actualice los ficheros de windows\system32\drivers\etc\, como puedo
sustituir la ruta de la carpeta de Windows por la variable %systemroot%,
como pondria la ruta?, el script es este

Const OverwriteExisting = TRUE

Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists("c:\windows\system32\drivers\etc\") Then
objFSO.CopyFile "\\serv2\Host_services\*.*" ,
"c:\windows\system32\drivers\etc\" , OverwriteExisting
End If

Gracias.



Respuesta Responder a este mensaje
#3 Daniel
12/03/2006 - 06:24 | Informe spam
utiliza esto
set fso = createobject("Scripting.Filesystemobject")
SET dirsystem = fso.GetSpecialFolder(0)
donde
Constante Valor Descripción
WindowsFolder 0 La carpeta de Windows contiene archivos instalados por
el sistema operativo Windows.
SystemFolder 1 La carpeta System contiene bibliotecas, fuentes y
controladores de dispositivos.
TemporaryFolder 2 La carpeta Temp se utiliza para almacenar archivos
temporales. Su ruta se encuentra en la variable de entorno TMP.


saludos
Daniel

"Visperas" escribió en el mensaje
news:
Hola, esta es una pregunta que creo q es tonta.
He empezado a mirar el tema de los scripts de inicio, quiero hacer uno que
me actualice los ficheros de windows\system32\drivers\etc\, como puedo
sustituir la ruta de la carpeta de Windows por la variable %systemroot%,
como pondria la ruta?, el script es este

Const OverwriteExisting = TRUE

Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists("c:\windows\system32\drivers\etc\") Then
objFSO.CopyFile "\\serv2\Host_services\*.*" ,
"c:\windows\system32\drivers\etc\" , OverwriteExisting
End If

Gracias.

Respuesta Responder a este mensaje
#4 Visperas
14/03/2006 - 12:25 | Informe spam
Hola,
parece q no me he explicado
lo que quiero es poner en un scrpit que me copie unos ficheros en
%systemroot%\system32\drivers\etc

la pregunta era como pongo esto en esta línea?
objFSO.CopyFile "\\serv2\Host_services\*.*" ,
"c:\windows\system32\drivers\etc\" , OverwriteExisting

para que me funcione en las diferentes rutas en las q puede estar el SO??.
Gracias

Vísperas
www.puntodeacceso.net



"Nacho MCT Valencia" escribió
en el mensaje news:
Hola Visperas,
si te vas al botón de Inicio y luego "Ejecutar" y escribes %systemroot%
verás a dónde te lleva y así encontrarás la respuesta. ;-)
Saludos
Nacho Salvador
MCSE - MCSA - MCT


"Visperas" escribió:

Hola, esta es una pregunta que creo q es tonta.
He empezado a mirar el tema de los scripts de inicio, quiero hacer uno
que
me actualice los ficheros de windows\system32\drivers\etc\, como puedo
sustituir la ruta de la carpeta de Windows por la variable %systemroot%,
como pondria la ruta?, el script es este

Const OverwriteExisting = TRUE

Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists("c:\windows\system32\drivers\etc\") Then
objFSO.CopyFile "\\serv2\Host_services\*.*" ,
"c:\windows\system32\drivers\etc\" , OverwriteExisting
End If

Gracias.



Respuesta Responder a este mensaje
#5 Visperas
14/03/2006 - 12:26 | Informe spam
hola,

mi problema es que no se jutar una variable a un texto, sigo teniendo el
mismo problema

en la línea
objFSO.CopyFile "\\serv2\Host_services\*.*" ,
"c:\windows\system32\drivers\etc\" , OverwriteExisting
como pongo dirsystem\system32\drivers\etc

"Daniel" escribió en el mensaje
news:eAgc$
utiliza esto
set fso = createobject("Scripting.Filesystemobject")
SET dirsystem = fso.GetSpecialFolder(0)
donde
Constante Valor Descripción
WindowsFolder 0 La carpeta de Windows contiene archivos instalados
por el sistema operativo Windows.
SystemFolder 1 La carpeta System contiene bibliotecas, fuentes y
controladores de dispositivos.
TemporaryFolder 2 La carpeta Temp se utiliza para almacenar archivos
temporales. Su ruta se encuentra en la variable de entorno TMP.


saludos
Daniel

"Visperas" escribió en el mensaje
news:
Hola, esta es una pregunta que creo q es tonta.
He empezado a mirar el tema de los scripts de inicio, quiero hacer uno
que
me actualice los ficheros de windows\system32\drivers\etc\, como puedo
sustituir la ruta de la carpeta de Windows por la variable %systemroot%,
como pondria la ruta?, el script es este

Const OverwriteExisting = TRUE

Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FolderExists("c:\windows\system32\drivers\etc\") Then
objFSO.CopyFile "\\serv2\Host_services\*.*" ,
"c:\windows\system32\drivers\etc\" , OverwriteExisting
End If

Gracias.





Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida