No necesariamente se tiene que pasar por cada máquina , si existe un usuario comun a todas y que tenga permisos de escritura en c$.
Mira este script ( nogames.vbs) en vbs, sirve para borrar los 4 juegos de nt , pero lo puedes modificar para que en lugar de la función borra ejecute una función de copia del fichero que desees en %ALLUSERSPROFILE%Menú Inicio\Programas\Inicio ( normalmente C:\Documents and Settings\All Users\Menú Inicio\Programas\Inicio )
--- nogames.vbs ---
http://ficus.pntic.mec.es/~fcag0023/scripts/nogames.vbs
Código:
dim ipa , ipb , ipc , ipd
dim compartido
dim cont , aipc
dim fso
dim tuvar
dim p
'el rango de IPs de la red (por ejemplo 10.0.0.1-10.1.2.255, red de clase A)
ipa = 10 '1º octeto de la dirección ip, 10 en este ejemplo
ipb = 0
ipc = 0
ipd = 1
p="."
on error resume next
cont=0
tuvar = msgbox (" Este script habrá que ejcutarlo desde un host iniciado con permisos de administrador del dominio")
tuvar = msgbox (" El script mapea una ud remota h: a c$ de cada host, y luego borra pinball.exe,sol.exe,MSHEARTS.EXE y FREECELL.EXE")
tuvar = msgbox (" habria que delimitar bién el rango de ip's. Es por esto que debe revisarlo y ejecutarlo un administrador")
'el rango de IPs de la red (por ejemplo 10.0.0.1-10.1.2.255)
for aipb = 0 to 1 '2º octeto de la dirección ip desde 0 a 1 para este caso
for aipc = 0 to 2 '3º octeto de la dirección ip desde 0 a 2 para este caso
for cont = 1 to 254 '4º octeto, excluimos 0 y 255(direccion de red y broadcast)
ipb=aipb
ipc = aipc
ipd = cont
conecta()
borra()
desconecta()
next
next
next
function borra()
Set FICHERO = CreateObject("Scripting.FileSystemObject")
FICHERO.deletefile "h:\winnt\system32\sol.exe"
FICHERO.deletefile "h:\Archivos de Programa\Windows NT\pinball.exe"
FICHERO.deletefile "h:\Program Files\Windows NT\pinball.exe"
FICHERO.deletefile "h:\winnt\system32\mshearts.exe"
FICHERO.deletefile "h:\winnt\system32\frecell.exe"
end function
function conecta()
set wshnetwork = wscript.createobject("wscript.network")
compartido = "\\" & ipa & p & ipb & p & ipc & p & ipd & "\C$"
wshnetwork.mapnetworkdrive "h:", compartido
end function
function desconecta()
wshnetwork.removenetworkdrive "h:"
end function
el cmd o bat a copiar seria
Código:
if exist x:\*.* net use x: /del
net use x: \\servidor_o_ip\recurso_compartido
otro ejemplo de script de inicio de sesión en
http://www.forosdelweb.com/f89/problemas-listar-equipos-red-375224/