Título: [VBS] Iniciación, dudas rutas. Publicado por: KZN en 28 Enero 2016, 17:25 pm Hola, estoy empezando con el lenguaje VBScript y quería saber como llego a las siguientes rutas %appdata%
%userprofile% También tengo un problema con las carpetas, por ejemplo hay una carpeta que tiene el nombre 123456.default esa carpeta independientemente del nombre siempre tiene el ".default" y yo en Batch usaba esta variable para entrar en la carpeta " cd "*.default" " y ahora nose como hacer lo mismo en VBS. Espero me ayuden, gracias futuros comentarios siempre es de agradecer la ayuda. (Si e cometido algún error lo siento, ya hacía bastante que no entraba al foro y no me acuerda si me salto alguna regla.) Título: Re: [VBS] Iniciación, dudas rutas. Publicado por: fary en 28 Enero 2016, 18:11 pm Código
Para las carpetas.... ¿Porqué no pones el nombre de la carpeta entera y listo?. Creo que no hay nada similar en VBS. Título: Re: [VBS] Iniciación, dudas rutas. Publicado por: Eleкtro en 28 Enero 2016, 22:50 pm yo en Batch usaba esta variable para entrar en la carpeta " cd " Para cambiar el directorio de trabajo actual puedes utilizar la siguiente propiedad:
Ejemplo: Código
Para expandir variables de entorno ya te explicaron como hacerlo, solo quiero añadir que se expandirá cualquier variable que exista en el string que recibe la función, es decir, para aprovechar esta funcionalidad y evitar código innecesario siempre puedes llamar a la función de la siguiente manera (en caso de que lo necesites): Código
Saludos Título: Re: [VBS] Iniciación, dudas rutas. Publicado por: KZN en 29 Enero 2016, 00:18 am No me e explicado bien, os voy enseñar el código batch para que me entendaís
Código Esa carpeta cada vez que cambio de ordenador es renombrada por ejemplo PC 1: 123456.default PC 2: 4fasdjkt.default PC 3: 57tgjtekl.default esa carpeta con nombre aleatorio (salvo el .default) tiene unos archivos que siempre recojo por extensión Código Y ahora busco hacer lo mismo en VBS e elaborado este pequeño code Código MsgBox "Operación completada",266304 Espero me podaís ayudar y gracias a los anteriores por su colaboración. Título: Re: [VBS] Iniciación, dudas rutas. Publicado por: Eleкtro en 29 Enero 2016, 01:00 am @KZN Usa las etiquetas Geshi para insertar código Me arriesgo a deducir que el problema real es querer averiguar el nombre de carpeta del perfil por defecto de Firefox ya que precisamente se generan con ese tipo de nombre bajo el mismo directorio principal, si me equivoco y no son tus intenciones entonces disculpa, pero si no me equivoco entonces no se por que motivo no mencionas ese detalle y deberias explicar el problema real para poder darte soluciones óptimas, ya que del modo en el que lo estás intentando hacer no es para nada una solución óptima, por que preguntando por otras cosas como averiguar el nombre de carpetas basándose en un patrón de búsqueda lo único que conseguirás es complicarlo todo (y sería una pérdida de tiempo para los demás). Puedes obtener el nombre de los directorios simplemente parseando la propiedad Path del archivo de inicialización (.ini) de perfiles de Firefox, ubicado exactamente en C:\Users\usuario\AppData\Roaming\Mozilla\Firefox\Profiles.ini. Por favor, específica si ese es tu propósito real para explicarte como parsear el archivo, o de lo contrario para explicarte otra solución distinta al problema que has mencionado con una solución de búsqueda de carpetas según un patrón de búsqueda... Saludos Título: Re: [VBS] Iniciación, dudas rutas. Publicado por: KZN en 29 Enero 2016, 01:06 am Si, como siempre Elektro me lees la mente, efectivamente, es hay a donde quiero acceder.
Título: Re: [VBS] Iniciación, dudas rutas. Publicado por: Eleкtro en 29 Enero 2016, 02:09 am Si, como siempre Elektro me lees la mente, efectivamente, es hay a donde quiero acceder. El siguiente algoritmo no es perfecto, he intentado tener en cuenta que las propiedades del archivo ini pueden estar cambiadas de posición, pero en un 99% de los casos te funcionará ya que no hay por que pensar que alguien manipule este archivo para añadir perfiles manualmente...: Código
Si fuese en otro lenguaje menos limitado (ej. Vb.Net) la tarea de lectura de la estructura ini sería más sencilla y mucho más eficiente, pero no quiero invertir más tiempo desarrollándolo en VBS, creo que con ese script es suficiente al menos para darte la idea inicial a pesar de los posibles fallos en ciertas circunstancias que ya mencioné. Lo cierto es que otra manera de hacerlo mucho más sencillo sería enumerando las carpetas del directorio de perfiles y con una expresión regular determinar el nombre completo de la carpeta con la expresión "^.+\.default$" (por ejemplo), esto sería mucho más simple, pero a la vez mucho más ineficiente, ya que con un RegEx no podrás determinar cua carpeta hace referencia al perfil por defecto, y aparte, el nombre de la carpeta no tiene por que acabar con ".default", mi carpeta de perfil por ejemplo se llama "Elektro" por que así lo especifiqué manualmente en el archivo ini, y creo que lo que tu buscas es eficiencia por que lo usarás en distintos PC's, así que yo te sugiero evitar la metodología del RegEx/patrones por que como ya he dicho usando el patrón de búsqueda "*.default" no resultará siempre, debes leer los valores del archivo INI para averiguar el nombre real de las carpetas de perfiles. Sin ir más lejos ni siquiera necesitas expresiones regulares suponiendo que en el 90% (por decir algo) de los casos el usuario seguramente solo tendrá una carpeta en el directorio de perfiles, y esa única carpeta será la carpeta de perfil de Firefox, eso es lo más común, pero no muy eficiente en términos de probabilidad, de todas formas te muestro un ejemplo para iterar las carpetas del directorio de perfiles: Código
Saludos Título: Re: [VBS] Iniciación, dudas rutas. Publicado por: KZN en 30 Enero 2016, 19:14 pm Me podrías ayudar, intento poner el copyfile pero no me doy cuenta como coger la información del path que has puesto
por cierto no me deja implementar el código GeShi, le doy clic en "Insertar código" y no se me ponen las etiquetas para poder meter cógido dentro Título: Re: [VBS] Iniciación, dudas rutas. Publicado por: Eleкtro en 31 Enero 2016, 08:14 am no me doy cuenta como coger la información del path que has puesto En el primer script, la ruta la tienes disponible en la variable profilePath al finalizar la ejecución del búcle. Citar Código
En el segundo script, la ruta la tienes disponible en la propiedad subDir.Path. Citar Código
intento poner el copyfile Código
Métodos: Código
Saludos |