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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Como usar variables de entorno con vbs script?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Como usar variables de entorno con vbs script?  (Leído 5,089 veces)
Instalador

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Como usar variables de entorno con vbs script?
« en: 8 Octubre 2014, 21:50 pm »

 :huh: Buenas tardes:

Estoy tratando de usar las variables de entorno de Windows en un vbs script, mediante Environment.

Para crear, copiar, mover, eliminar, etc, archivos y carpetas.

Ya use la opción buscar y no encontré algún manual de uso de Environment.

Podría alguien ayudarme a aprender el uso y aplicación de Environment?

Gracias.


En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.411


ASMático


Ver Perfil WWW
Re: Como usar variables de entorno con vbs script?
« Respuesta #1 en: 8 Octubre 2014, 22:28 pm »

Se te olvidó buscar bien: http://lmgtfy.com/?q=variables+entorno+vbs

Citar
Código
  1. Set WshShell = WScript.CreateObject("WScript.Shell")
  2. Set WshSysEnv = WshShell.Environment("SYSTEM")
  3. WshSysEnv("VariableSystem") = "valor1"
  4. Set WshUserEnv = WshShell.Environment("USER")
  5. WshUserEnv("VariableUser") = "val"


En línea

Instalador

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: Como usar variables de entorno con vbs script?
« Respuesta #2 en: 8 Octubre 2014, 22:33 pm »

Por lo que veo, tienes razón.

Aunque no creo que se me HAYA OLVIDADO buscar bien, mejor dicho no busque bien.

Mil gracias por tu ayuda

Editando:

Como podrás darte cuenta todas las opciones aparecen como visitadas, leídas y es porque ya me pase 2 dias leyendo incluso buscando en ingles y no logro encontrar nada.

Nuevamente mil gracias.
« Última modificación: 8 Octubre 2014, 22:36 pm por Instalador » En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.411


ASMático


Ver Perfil WWW
Re: Como usar variables de entorno con vbs script?
« Respuesta #3 en: 8 Octubre 2014, 23:39 pm »

Realmente no sé por qué iba a saber las 'opciones' que visitaste ·_·
En línea

Instalador

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: Como usar variables de entorno con vbs script?
« Respuesta #4 en: 8 Octubre 2014, 23:43 pm »

Mil gracias
En línea

Instalador

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: Como usar variables de entorno con vbs script?
« Respuesta #5 en: 8 Octubre 2014, 23:53 pm »

Leo Gutiérrez:

En otra ocasion me orientaste con una duda que tenia, nuevamente solicito tu ayuda, podrias decirme que estoy haciendo mal en estos scripts? :

Código
  1. Set oShell = CreateObject("WScript.Shell")
  2. strHomeFolder = oShell.ExpandEnvironmentStrings("%USERPROFILE%")
  3. Set objfso = createobject("scripting.filesystemobject")
  4. Objfso.copyfile "C:\archivo.txt", "strHomeFolder", true
  5.  
  6. Set objShell = CreateObject("WScript.Shell")
  7. userProfilePath = objShell.ExpandEnvironmentStrings("%UserProfile%")
  8. Set objfso = createobject("scripting.filesystemobject")
  9. Objfso.copyfile "C:\archivo.txt", "userProfilePath", true

Cuando los ejecuto por separado, ambos me crean los archivos strHomeFolder y userProfilePath respectivamente en la carpeta donde tengo el archivo vbs, pero no me realizan la copia de archivo.txt a %UserProfile%

Gracias.
« Última modificación: 9 Octubre 2014, 03:10 am por Eleкtro » En línea

engel lex
Colaborador
***
Desconectado Desconectado

Mensajes: 15.347



Ver Perfil
Re: Como usar variables de entorno con vbs script?
« Respuesta #6 en: 9 Octubre 2014, 00:15 am »

usa las etiquetas GeSHi cuando publiques codigo en este caso puedes usar visual basic creo yo

no se realmente nada de vbs pero veo esto
Código
  1. Set WshSysEnv = WshShell.Environment("SYSTEM")

y tu tienes
Código
  1. strHomeFolder = oShell.ExpandEnvironmentStrings("%USERPROFILE%")

me huele que es sin los "%"
En línea

El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
Instalador

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: Como usar variables de entorno con vbs script?
« Respuesta #7 en: 9 Octubre 2014, 00:44 am »

engel lex:

Lo intente de las 2 formas y no lo logre, gracias por tu interes.

Sin embargo encontré otra forma de hacerlo, este es el código, espero le sea útil a alguien mas.

Aquí el código para copiar el archivo C:\archivo.txt a %UserProfile% y finalmente abrir archivo.txt, esta probado y funciona perfectamente, deshabilite el On Error Resume Next para en caso de que presentara un error, poder ubicarlo.

Código
  1. 'On Error Resume Next
  2. dim path
  3. path=CreateObject("WScript.Shell").ExpandEnvironmentStrings("%UserProfile%")
  4. dim objFSO
  5. set objFSO=CreateObject("Scripting.FileSystemObject")
  6. If objFSO.FileExists(path & ("\archivo.txt")) = False Then
  7. objFSO.CopyFile "C:\archivo.txt", path & "\"
  8. Set WshShell = WScript.CreateObject("WScript.Shell")
  9. WshShell.Run(""""&path & "\archivo.txt""")
  10. End If

Probare con las demás variables de entorno.

No omito mencionar que la información (orientación) la obtuve de esta pagina:

http://community.spiceworks.com/scripts/show/732-copy-and-run-a-file-if-doesn-t-exist-in-userprofile

Saludos a todos.

Edito:

Lo probé con "%UserProfile%", "%PROGRAMFILES%", "%WINDIR%" y "%ALLUSERSPROFILE%"
Funciona perfectamente.
« Última modificación: 9 Octubre 2014, 03:20 am por Eleкtro » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.709



Ver Perfil
Re: Como usar variables de entorno con vbs script?
« Respuesta #8 en: 9 Octubre 2014, 03:20 am »

Ya te han explicado que debes utilizar las etiquetas GeShi, porfavor, respeta las normas.



Código
  1. Option Explicit
  2.  
  3. Dim objFSO, objShell, fullpath
  4.  
  5. Set objFSO   = CreateObject("Scripting.FileSystemObject")
  6. Set objShell = CreateObject("WScript.Shell")
  7. fullpath     = objShell.ExpandEnvironmentStrings("%UserProfile%\Archivo.txt")
  8.  
  9. Select Case objFSO.FileExists(fullpath)
  10.  
  11. Case False ' El archivo no existe.
  12. objFSO.CopyFile "C:\Archivo.txt", fullpath
  13. objShell.Run(fullpath)
  14.  
  15. Case else ' El archivo existe.
  16. ' Do Nothing
  17.  
  18. End Select
  19.  
  20. WScript.Quit(0)
  21.  

Saludos!
« Última modificación: 9 Octubre 2014, 03:22 am por Eleкtro » En línea


Instalador

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: Como usar variables de entorno con vbs script?
« Respuesta #9 en: 9 Octubre 2014, 03:48 am »

Eleкtro:

Perdón por lo de las etiquetas, prometo no repetirlo.

Gracias por el código.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda con variables de entorno
Scripting
MK-Ultra 2 1,319 Último mensaje 10 Febrero 2008, 20:49 pm
por MK-Ultra
Variables de entorno
Programación Visual Basic
.;. 2 1,677 Último mensaje 10 Abril 2009, 20:50 pm
por .;.
[SHELL Linux] Cómo definir muchas variables de entorno en base a un archivo?
Scripting
Skeletron 2 1,441 Último mensaje 14 Enero 2014, 22:02 pm
por Eleкtro
Script Corre con otro usuario y con el mío no. ¿Serán las variables de entorno?
Scripting
IraisGossow 2 1,454 Último mensaje 30 Abril 2015, 17:49 pm
por IraisGossow
Como exportar variables de un script a la shell principal.
Scripting
mario290386 3 1,077 Último mensaje 15 Octubre 2018, 00:09 am
por EdePC
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines