Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Cuasar en 9 Octubre 2010, 05:30 am



Título: VBS variables
Publicado por: Cuasar en 9 Octubre 2010, 05:30 am
Geste esto va a ser rapido supongo.

tengo esto en un bat  en el server para los usuarios.

Código
  1. net use U: \\server\Homes\%username%

y va bien

como hago lo mismo en un VBS?

gracias salu2


Título: Re: VBS variables
Publicado por: Shell Root en 9 Octubre 2010, 05:43 am
Supongo que sería así,

Código
  1. Set objShell = WScript.CreateObject("WScript.Shell")
  2. objShell.Run "cmd.exe /c net use U: \\server\Homes\" & objShell.Environment("USERNAME")


Título: Re: VBS variables
Publicado por: Cuasar en 9 Octubre 2010, 06:00 am
gracias pero me responde con error 53 se esparaba final de la instruccion.



Título: Re: VBS variables
Publicado por: Novlucker en 9 Octubre 2010, 19:29 pm
Con la siguiente modificación tiene que funcionar

Código
  1. Set objShell = WScript.CreateObject("WScript.Shell")
  2. objShell.Run "cmd.exe /c net use U: \\server\Homes\" & objShell.expandenvironmentstrings("%USERNAME%"), vbhide

El vbhide del final es para que no se vea la consola de ms-dos

Sino también puedes hacerlo de la manera "correcta"
Código
  1. Set objnet = createobject("wscript.network")
  2. Set objshell = createobject("wscript.shell")
  3. objnet.mapnetworkdrive "U:", "\\server\Homes\" & objshell.expandenvironmentstrings("%USERNAME%")

Saludos


Título: Re: VBS variables
Publicado por: Cuasar en 10 Octubre 2010, 06:18 am
Hola muchas gracias por tu ayuda.

bueno el codigo no funciona asi tal cual me lo pasaste.

pero jugando un poco con el me di cuenta que no agregaba la variable al final de la ruta

cuando ponemos:

Código:
 "\\server\Homes\" & objshell.expandenvironmentstrings("%USERNAME%") 

no se porque pero no arma la ruta completa.

despues de un rato de tratar de entender el porque no funcionaba intente este condigo. uniendo toda la ruta en una variable y mapeando asignando una sola variable en lugar de una suma de ellas.


Código:
Set objnet = createobject("wscript.network")
Set objshell = createobject("wscript.shell")
USUARIO = "\\server\Homes\" & objShell.expandenvironmentstrings("%USERNAME%")

objnet.mapnetworkdrive "U:", USUARIO

asi me funciona perfecto.

Gracias nuevamente por la ayuda.

Salu2


Título: Re: VBS variables
Publicado por: leogtz en 10 Octubre 2010, 07:04 am
@scrngs, utiliza las etiquetas de código o tu tema será bloqueado.