elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Arreglado, de nuevo, el registro del warzone (wargame) de EHN


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  (Solucionado) [VBS] como hacer este bucle?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: (Solucionado) [VBS] como hacer este bucle?  (Leído 10,882 veces)
Eleкtro
Ex-Staff
*
Conectado Conectado

Mensajes: 9.878



Ver Perfil
(Solucionado) [VBS] como hacer este bucle?
« en: 15 Enero 2012, 15:17 pm »

Hola

Necesito una ayudita con este script

Me surgen 3 problemas:

el primero es que no se como definir el "CurrentDir" osea para que el script trabaje en el directorio actual.
el segundo es que tampoco se como definir ParseName("*.TTF") para que se tome en cuenta todos los archivos .ttf del directorio corriente
Y el tercer problema es, que una vez resuelto los 2 primeros, no sabría como aplicarlo al For xD

Código
  1. set winsh = CreateObject("WScript.Shell")
  2. set winenv = winsh.Environment("Process")
  3. windir = winenv("WINDIR")
  4.  
  5. Set objShell = CreateObject("Shell.Application")
  6. Set objFolder = objShell.Namespace("%CURRENTDIR%")
  7. Set objFolderItem = objFolder.ParseName("*.TTF")
  8.  
  9. For each N in objFolderItem
  10.   N.InvokeVerb("Install")
  11. next

Gracias...


« Última modificación: 22 Febrero 2012, 10:36 am por EleKtro H@cker » En línea



Eleкtro
Ex-Staff
*
Conectado Conectado

Mensajes: 9.878



Ver Perfil
Re: [VBS] como se hace un bucle? xD
« Respuesta #1 en: 4 Febrero 2012, 19:28 pm »

Up!

Una ayudita porfavor  :-(


En línea



$Edu$


Desconectado Desconectado

Mensajes: 1.842



Ver Perfil
Re: [VBS] como hacer este bucle?
« Respuesta #2 en: 4 Febrero 2012, 23:05 pm »

Explica que es lo que queres hacer con el script porque me parece que estas haciendo cosas de mas.
En línea

Flamer


Desconectado Desconectado

Mensajes: 1.052


crack, crack y mas crack...


Ver Perfil WWW
Re: [VBS] como hacer este bucle?
« Respuesta #3 en: 5 Febrero 2012, 01:40 am »

hola hacker aver si te sirve este code ya que yo tengo xp y tu 7
Citar
set objarchivo=createobject("scripting.filesystemobject")
set objshell=createobject("wscript.shell")
carpeta=objshell.expandenvironmentstrings("%systemroot%")
set f=objarchivo.getfolder(carpeta)
set fc=f.files
for each f1 in fc
   if mid(f1.name,len(f1.name)-3,4)=".exe" then
   msgbox f1.name
   end if
next
saludos hacker espero que te sirva
el code que puse busca los exe tu modificalo para x formato
no todo telo boy a entregar en charola de plata
saludos flamer
En línea

Mi Canal De Youtube y Blog

https://elblogdeflamer.blogspot.com

Eleкtro
Ex-Staff
*
Conectado Conectado

Mensajes: 9.878



Ver Perfil
Re: [VBS] como hacer este bucle?
« Respuesta #4 en: 5 Febrero 2012, 09:27 am »

Explica que es lo que queres hacer con el script porque me parece que estas haciendo cosas de mas.

Lo que quiero hacer es un script que instale los archivos de fuentes de texto .ttf  a la carpeta fonts de windows.

El script original es casi identico solo le he modificado 3 palabras, porque el original trabajaba solamente sobre 1 archivo .ttf, osea, el script funcionaba, pero necesito que trabaje con todos los archivos .ttf del directorio donde ejecute el vbs.


hola hacker aver si te sirve este code ya que yo tengo xp y tu 7 saludos hacker espero que te sirva

Te lo agradezco pero tu script solo funciona con el primer archivo, es decir, solo muestra un msgbox del primer archivo que encuentra en "C:\Windows\archivo.ttf"

He intentado modificarlo pero es bastante dificil para mi:

Código:
carpeta=objshell.expandenvironmentstrings("C:\Users\Administrador\Desktop\Nueva carpeta")
De todas formas eso no me serviría, no estoy definiendo el directorio actual como se haría en batch por ejemplo así:
Código:
%CD%

Pero ahora viendo tu script al menos ya se como definir el tipo de archivo "ttf", gracias.

No pretendo que me lo hagan todo, si alguien me diera esta información podría intentar modificarlo yo:

- definir el "CurrentDir" osea para que el script trabaje en el directorio actual en vez de %systemroot% en tu script

- Y que el "FOR" no se detenga en el primer resultado, Aunque esta información creo que debe estar en el tutorial de novlucker, pero sin la primera información me quedo en las mismas :(


Gracias a los dos
« Última modificación: 5 Febrero 2012, 09:31 am por EleKtro H@cker » En línea



Eleкtro
Ex-Staff
*
Conectado Conectado

Mensajes: 9.878



Ver Perfil
Re: [VBS] como hacer este bucle?
« Respuesta #5 en: 5 Febrero 2012, 09:52 am »



Vale, he avanzado un poquito, ya no se como seguir ni corregir los errores que tengo:




Código
  1. Dim sCurPath
  2. sCurPath = CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(".")
  3.  
  4.  
  5. set winsh = CreateObject("WScript.Shell")
  6. set winenv = winsh.Environment("Process")
  7. windir = winenv("WINDIR")
  8.  
  9.  
  10. Set objShell = CreateObject("Shell.Application")
  11. carpeta=objshell.expandenvironmentstrings("sCurPath")
  12. set f=objarchivo.getfolder(carpeta)
  13. set fc=f.files
  14.  
  15. For each f1 in fc
  16. if mid(f1.name,len(f1.name)-3,4)=".ttf" then
  17.   f1.InvokeVerb("Install")
  18.   end if
  19. next
En línea



$Edu$


Desconectado Desconectado

Mensajes: 1.842



Ver Perfil
Re: [VBS] como hacer este bucle?
« Respuesta #6 en: 5 Febrero 2012, 16:35 pm »

Porque tiene que ser vbs? si lo sabes hacer en batch.

Digo esto porque yo haria simplemente esto:

Código
  1. Dim shell
  2.  
  3. Set shell = CreateObject("WScript.Shell")
  4.  
  5. shell.run "copy /Y *.ttf C:\*.ttf" , vbhide
  6.  
  7.  

O algo asi y listo xD a no ser que tenga que ser vbs puro, pero vamos que funcionar funciona, no se porque no lo pensaste, ya me diras xD

edit: Creo que no anda, pero ta el mensaje espero que te llegue xD
« Última modificación: 5 Febrero 2012, 16:39 pm por $Edu$ » En línea

Eleкtro
Ex-Staff
*
Conectado Conectado

Mensajes: 9.878



Ver Perfil
Re: [VBS] como hacer este bucle?
« Respuesta #7 en: 5 Febrero 2012, 17:16 pm »

Código:
[quote author=$Edu$ link=topic=350544.msg1715816#msg1715816 date=1328456136]
Porque tiene que ser vbs? si lo sabes hacer en batch.
shell.run "copy /Y *.ttf C:\*.ttf" , vbhide
[/quote]

Eso lo se hacer, pero no me sirve porque en batch no se pueden instalar fuentes (En windows 7 no) , con un "copy" no es suficiente, la única forma es dandole click derecho al archivo, o un programa o script vbs que haga el trabajo

:(

En línea



Flamer


Desconectado Desconectado

Mensajes: 1.052


crack, crack y mas crack...


Ver Perfil WWW
Re: [VBS] como hacer este bucle?
« Respuesta #8 en: 5 Febrero 2012, 20:22 pm »

modificastes la linea asi
Citar
carpeta=objshell.expandenvironmentstrings
("%systemroot%\fonts")
y aber si te entendi los archivos .ttf estan en esa carpeta y tu los quieres instalar
si estan en la carpeta fonts el script deve de funsionar y mostrarte el msgbox y sino es el windows
con respecto ala instalacion no se como see instalan o que comandos se usan pero si medises que comando los instala te podre ayudar eso creo
saludos flamer y sus angeles del infierno y sus traficantes de muerte
En línea

Mi Canal De Youtube y Blog

https://elblogdeflamer.blogspot.com

Eleкtro
Ex-Staff
*
Conectado Conectado

Mensajes: 9.878



Ver Perfil
Re: [VBS] como hacer este bucle?
« Respuesta #9 en: 5 Febrero 2012, 20:39 pm »

con respecto ala instalacion no se como see instalan o que comandos se usan pero si medises que comando los instala te podre ayudar eso creo

El comando del bucle:   N.InvokeVerb("Install")
En línea



Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Bucle FOR para copiar archivos[Solucionado]
Scripting
jsgc15 2 3,816 Último mensaje 15 Julio 2010, 18:05 pm
por jsgc15
[SOLUCIONADO] JExcel, con bucle para escribir.
Java
NetJava 1 4,709 Último mensaje 25 Mayo 2011, 14:06 pm
por NetJava
[Solucionado] Modificar el incremento del bucle for
Programación C/C++
Caster 6 13,270 Último mensaje 21 Febrero 2012, 16:23 pm
por Caster
Como hacer Bucle un determinado tiempo « 1 2 »
Programación C/C++
Alvaro.s 11 7,428 Último mensaje 14 Julio 2015, 16:59 pm
por x64core
[solucionado] Como puedo hacer este comando simple?
GNU/Linux
venadHD 8 4,074 Último mensaje 15 Agosto 2015, 20:32 pm
por venadHD
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines