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

 

 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


  Mostrar Temas
Páginas: [1]
1  Programación / Programación Visual Basic / Exe ActiveX: Componente ActiveX no puede crear... No se ha definido el tipo... en: 8 Febrero 2010, 09:03 am
Que onda, como estan  :)

Yo aca con una consulta  :P

Miren, tengo creado un Exe ActiveX, llamado XEjecutor.

Tengo otro Exe normal que hace uso del ActiveX, pero estoy teniendo una serie de problemas:

Dentro de este exe normal, si escribo:

Código
  1. Dim Ejec_1 As Object
  2.  
  3. Set Ejec_1 = CreateObject("C:\Documents and Settings\DeathWatch\Mis documentos\XEjecutor.exe")

me arroja Error '429' en tiempo de ejecucion :
El componente ActiveX no puede crear el objeto.
Pero igual si en lugar de XEjecutor.exe le cambio el nombre a lasdjflk.exe, me da el mismo error, asi que creo que no este haciendo referencia al archivo.

Por otro lado si escribo:

Código
  1. Sub Main()
  2. ' Aqui, se supone que registro el Exe ActiveX, y aparentemente si lo hace, supongo yo...
  3. Shell ("C:\Documents and Settings\DeathWatch\Mis documentos\XEjecutor.exe /RegServer")
  4. ' Aqui llamo al Sub Prueba
  5. Prueba
  6. End Sub
  7.  
  8.  
  9. Sub Prueba()
  10. ' Aqui instancio al proyecto XProyEjec, a la clase XClsEjec, que se encuentran dentro del ActiveX XEjecutor
  11. Dim Ejec_1 As New XProyEjec.XClsEjec
  12. Set Ejec_1 = New XProyEjec.XClsEjec
  13.  
  14. ' Llamo a un procedimiento llamado Proceso, dentro del ActiveX
  15. Ejec_1.Proceso 1
  16.  
  17. ' y despejo el objeto.
  18. Set Ejec_1 = Nothing
  19.  
  20. End Sub

Pero obtengo Error de compilacion:
No se ha definido el tipo definido por el usuario.

Donde esta mi falla?

Les comento que la idea NO es entrar en VB, a Proyecto - Referencias, porque este exe normal y el exe activex, siempre se van a ejecutar en una maquina diferente.

Me pueden ayudar por favor?

Gracias de antemano  ;)
Un saludo...
2  Programación / Programación Visual Basic / Consulta: Api ejecutar programa devolviendo hwnd, obtener sus ventanas... en: 30 Noviembre 2009, 06:06 am
Hola, como estan:  ;D

Vengo en busca de su ayuda, pues llevo varias semanas buscando y leyendo sobre lo que a continuacion les consultaré, y no consigo resolverlo.  :-[

Estoy haciendo una aplicacion en VB para automatizar bastantes procesos, con la intencion de ahorrarnos a un cuate y a mi, un tiempo considerable, en un procedimiento que hacemos muy a menudo, alla en el trabajo.  :P  :P

Ya llevo una buena parte del codigo, el problema es que estoy atorado con las api's, porque aunque me encuentro una e investigo como se usa, no se cuales son las que realmente necesito.

Los detalles estan asi: (mas adelante pondre algunos ejemplos, de varias pruebas que he hecho, pero que no le he encontrado el resultado que busco)

1.- Estoy buscando una api que ejecute un programa, y al mismo tiempo, me devuelva su hwnd, su classname, o de a perdis, su caption.
2.- Una vez que esa api me regreso alguno de los 3 valores que comente antes, que api debo usar, que me permita visualizar sus botones, controles, y demas, para manipularlos, x ej, presionar el boton Aceptar, u obtener o asignar texto a una caja de texto determinada.
3.- Obtener la(s) subventana(s), de la ventana (o programa que se ejecuto), para manipular los controles de tales subventanas.

Como adicional:
4.- Muchos de esos programas a ejecutar, estan en una unidad de red, y quiero hacer un proceso que me este monitoreando si todavia esta "conectada" la unidad de red. Que me recomiendan: usar el filesystemobject y DriveExists, o una api como el winsock, u otra, si consideran mas efectiva?

5.- Tomando en cuenta el punto anterior, tengo el programa en VB que esta ejecutando todos los procesos que debe. Ahora, si a ese programa le agrego un modulo con Do While para que monitoree la conexion con la unidad de red, y lo llamo en algun punto, se va a quedar dentro del Do While, por siempre, a menos que se pierda la conexion con la unidad de red.
Por otro lado, puedo hacer un script u otro mini-programa que este checando lo de la conexion, y que cuando se pierda la conexion, termine el programa principal, pero si lo termina, no sabria que procesos concluyo y cuales faltaron.
Mi pregunta es: como puedo hacer que un modulo, dentro del programa principal, o un 2do programa este checando la conexion con la unidad, y que en el momento en el que se haya perdido tal, le envie el aviso al programa principal, de forma que éste, al recibirlo, muestre un status (ej msgbox o archivo de texto { para esto no es necesario que me indiquen como }), y se finalice el programa principal, o en su caso los 2 programas.

Ejemplos (punto 1, 2, 3):  :P  :P  :P
Me encontre con findwindow, para obtener la ventana (el programa) a trabajar, indicando el caption, y me funciono por ejemplo si tengo la calculadora abierta, pero muchos programas son externos, por lo que no se si me vaya a devolver una ventana diferente a la que requiero.
Tambien me encontre shellexecute, y probe con la calculadora, y me devolvio un 42 (???). Usando getwindowtext, en el parametro hwnd, le pase el valor obtenido con shellexecute, y al hacer un msgbox de la variable que guardo getwindowtext, me regreso 0. (Espero haberme explicado).
Estas fueron unas, de varias pruebas sin logro, que he realizado.


Espero me puedan ayudar...
Por favor, no me malentiendan. No estoy solicitando el progama ya hecho, sino una idea de que apis y opciones puedo seguir.
No soy muy novato en esto de la programacion, e incluso, le dedico mucho tiempo, por lo que les puedo decir que leo e investigo mucho, pero realmente estoy perdido en este momento, con los puntos que les comenté.

Les agradezco de antemano su ayuda.  ;)

Les envio un cordial saludo.
 ;D  ;D  ;D
3  Programación / Scripting / [Batch] for /R y for /D en: 1 Marzo 2009, 12:51 pm
Hola, que tal: :D

Antes que nada, disculpen la pregunta tan basica, pero no he encontrado la respuesta...  :-[

Para que sirve for /R y for /D en batch?  :-[

He buscado en el foro y en google, pero he encontrado ejemplos o ejercicios usando tales metodos, mas no su uso. Si me pudieran ayudar, por favor?

De antemano, muchas gracias..

Un saludo  :D
4  Programación / Scripting / Script para obtener las subcarpetas de las subcarpetas de una carpeta en: 28 Diciembre 2008, 06:03 am
Hola como están  ;)

Como ustedes saben, Visual Basic Script tiene la opción de devolvernos las subcarpetas que se encuentran en la carpeta que le hayamos indicado.


Código
  1. Ej:
  2. Set fso=CreateObject("Scripting.FileSystemObject")
  3. Set carpI=fso.GetFolder("C:\")
  4. Set carpsSub=carpI.SubFolders
  5.  
  6. For Each c in carpsSub
  7. msgbox c
  8. Next

Esto nos mostraría:

Carpeta C:
         |__Subcarpetas.


El detalle es que no tiene un metodo (que yo sepa) para devolvernos las subcarpetas de las subcarpetas, es decir:

Carpeta C:
         |___Subcarpetas

                        |_____Subcarpetas
                                          |_____Subcarpetas


El siguiente Script permite obtener todas las subcarpetas, de las subcarpetas, de la carpeta que le hayamos indicado, esto es:

Carpeta Inicial (la que se quiera)
      |
      |____Subcarpeta 1          Subcarpeta 2

                      |                        |
                ___|____                  |___Subcarpetas
                |            |                                 |___etc...
                |__etc...  |_etc...


Funcionamiento:
Primero hace una serie de preguntas para que indiquemos sobre que carpeta querermos obtener sus subcarpetas, ademas de la ruta donde se va a crear un archivo de texto.
Se crea un archivo de texto con el nombre dirs.txt.
En la primera linea el script escribe la ruta de la carpeta inicial que indicamos.
Despues el script va a leer la primera linea y anexará en dicho archivo, las subcarpetas dentro de la carpeta que indicamos.
Asi, el script ira leyendo linea por linea, y tomará cada linea (ruta) como carpeta inicial, anexando al archivo, las subcarpetas contenidas en la ahora carpeta inicial.
Si encuentra mas subcarpetas, las va anexando al archivo; si no encuentra mas en la carpeta inicial actual, no anexa nada y lee la siguiente linea del archivo.
* Una vez terminado el proceso del script, se mandará un mensaje indicandolo. Si se tarda es porque han seleccionado una carpeta con muchas carpetas. Tengan paciencia y esperen a que aparezca el mensaje.

Para que nos puede servir:
Dependiendo de lo que quieran hacer, y con el codigo indicado
Puede funcionar como buscador de carpetas o archivos.
Nos puede permitir obtener todos los archivos (por ej jpg, mpg, etc) dentro de cada subcarpeta, para copiarlos a una carpeta en particular.
Realmente el codigo lo hice para ver si lo podía hacer, pero no pense en alguna utilidad en especifico, asi que espero que les sea util, y cualquier funcionalidad que le encuentren, agradecería que lo comentaran.

Aqui está el código:



Código
  1. Option Explicit
  2. Dim Rutas
  3. Dim oArch, oLArc, oCarI, oCar, objNovCar, oDirTemp
  4. Dim archI, lecArc, carI, LecLin, novCar, subNCar, DirTemp
  5. Dim subsC
  6. Dim BucSkipLine, Conteo
  7. Dim Mensg
  8. Dim InboxA, InboxB
  9. Dim rutCorrect
  10. Dim verArch
  11. Dim ArchFnl
  12.  
  13.  
  14. Set oDirTemp=CreateObject("Scripting.FileSystemObject")
  15. Set DirTemp=oDirTemp.GetSpecialFolder(2)
  16.  
  17. InboxA=inputbox("Indique la ruta del archivo, el cual tendra la lista de carpetas y subcarpetas" & Chr(13) & Chr(13) & "Use el fomato X:\Carpeta." & Chr(13)& "NO la escriba entre comillas", "Ruta del Archivo", DirTemp)
  18.  
  19.  
  20. If InboxA="" Then
  21. msgbox "Ha elegido Cancelar o no ha escrito texto alguno." & Chr(13) & Chr(13)& "La aplicación se cerrara."
  22. Else
  23.  
  24. Set oCar=CreateObject("Scripting.FileSystemObject")
  25.  
  26. rutCorrect=oCar.FolderExists(InboxA)
  27.  
  28.          If rutCorrect=False Then
  29.          msgbox "La ruta indicada NO existe"
  30.          Else
  31.  
  32.          Mensg=msgbox("Seleccione una de las siguientes opciones:" & Chr(13) & Chr(13) & "Seleccione SI, si quiere que la carpeta inicial sea C:\" & Chr(13) & "Esto incluiria cada carpeta y subcarpetas dentro de C:\" & Chr(13) & "NOTA: Dependiendo de cuantas carpetas tenga su sistema," & Chr(13) & "esto podria tomar varios minutos"& Chr(13) & Chr(13) & "Seleccione NO, si desea seleccionar una ruta en particular" & Chr(13) & Chr(13) & "Seleccione CANCELAR para terminar el programa", 323, "SELECCIONE LA CARPETA INICIAL")
  33.  
  34.                    If Mensg=6 Then
  35.  
  36.                    InboxB="C:\"
  37.                    Directs
  38.  
  39.                    Else
  40.  
  41.                             If Mensg=7 Then
  42.                             InboxB=inputbox("Indique la ruta del archivo, el cual tendra la lista de carpetas y subcarpetas" & Chr(13) & Chr(13) & "Use el fomato X:\Carpeta." & Chr(13)& "NO la escriba entre comillas" & Chr(13) & Chr(13) & "Recuerde que puede incluir C:\", "Ruta del Archivo", DirTemp)
  43.  
  44.  
  45.                                      If InboxB="" Then
  46.                                      msgbox "Ha elegido Cancelar o no ha escrito texto alguno." & Chr(13) & Chr(13) & "La aplicación se cerrara."
  47.                                      Else
  48.  
  49.                                      rutCorrect=oCar.FolderExists(InboxB)
  50.  
  51.                                                  If rutCorrect=False Then
  52.                                                  msgbox "La ruta indicada NO existe"
  53.                                                  Else
  54.                                                  Directs
  55.  
  56.                                                  End If
  57.  
  58.                                      End If
  59.  
  60.                             End If
  61.  
  62.                    End If
  63.  
  64.          End If
  65.  
  66. End If
  67.  
  68. Private Sub Directs()
  69. Set ArchFnl=CreateObject("WScript.Shell")
  70.  
  71. InboxA=InboxA & "\dirs.txt"
  72. Rutas=array(InboxA, InboxB)
  73.  
  74. Set oArch=CreateObject("Scripting.FileSystemObject")
  75. Set archI=oArch.CreateTextFile(Rutas(0), True)
  76.  
  77. Set carI=oCar.GetFolder(Rutas(1))
  78. archI.WriteLine(carI)
  79. archI.Close
  80.  
  81.  
  82. Set oLArc=CreateObject("Scripting.FileSystemObject")
  83. Set lecArc=oLArc.OpenTextFile(Rutas(0), 1)
  84. Set objNovCar=CreateObject("Scripting.FileSystemObject")
  85.  
  86. Conteo=1
  87.  
  88. Do While lecArc.AtEndOfStream=False
  89.  
  90.     On Error Resume Next
  91.  
  92.     LecLin=lecArc.ReadLine
  93.     lecArc.Close
  94.  
  95.     Set novCar=objNovCar.GetFolder(LecLin)
  96.     Set subNCar=novCar.SubFolders
  97.  
  98.          For Each subsC in subNCar
  99.          Set lecArc=oLArc.OpenTextFile(Rutas(0), 8)
  100.          lecArc.WriteLine (subsC)
  101.          lecArc.Close
  102.          Next
  103.  
  104.     Set lecArc=oLArc.OpenTextFile(Rutas(0), 1)
  105.  
  106.          For BucSkipLine=1 to Conteo
  107.          lecArc.SkipLine
  108.          Next
  109.  
  110.     Conteo=Conteo+1
  111. Loop
  112.  
  113. verArch=msgbox ("Ha terminado el proceso" & Chr(13) & Chr(13) & "El archivo creado esta en" & Chr(13) & Chr(13) & InboxA,,"Archivo de directorios")
  114.  
  115. End Sub


Comentarios:
El script funciona aunque no se tengan privilegios de administrador.

Detalles/Errores:
(* UNICAMENTE SI LA CARPETA QUE INDICARON CONTIENE LA DE ADMINISTRADOR O USUARIO TIPO ADMINISTRADOR)
Si la carpeta inicial contiene las carpetas de un usuario administrador, teniendo contraseña en tal, y lo ejecutaran en un usuario que no sea del tipo administrador,, o si lo ejecutaran en un usuario tipo administrador, pero en el usuario Administrador (el que sale cuando presionamos la tecla F8 -> modo seguro) y este tuviera contraseña, se generaría un error de tipo Acceso denegado y se terminaría el script antes de haber acabado su proceso.

Por tal motivo agregué la linea On Error Resume Next, lo que hace al Script totalmente funcional, con un pequeño detalle:
Al generarse el error, va dejando lineas en blanco, dentro del archivo, que corresponden a las carpetas que no nos permite acceder.
Este detalle es insignificante y no afecta en la obtencion de las subcarpetas (a las que tengamos acceso, que son la mayoría, incluyendo Windows, System32, Archivos de programa, etc).
De todos modos quise comentarselos, porque si les sirve y le agregan codigo, y su codigo tiene un error, este no se mostraría.


Dudas:

Un favor: he buscado y buscado, y buscado y buscado, información acerca de manipulación de errores en VB en general, y no he encontrado nada, y lo que he encontrado no le he entendido lo suficiente para aplicarlo.

Por ejemplo en este script, agregue if err.Number=x (el de tipo acceso denegado) then, etc... y los tres primeros errores de ese tipo, los podía manipular, pero al cuarto error me volvio a saltar Acceso Denegado.

Alguien conoce una pagina, una liga, o sobre todo si tienen un tutorial, donde se pueda conocer cada tipo de error, su numero, y como manipularlo?


Por otro lado, les quiero pedir que lean el post en http://foro.elhacker.net/dudas_generales/que_lenguajes_recomiendan_para_hacer_programas_de_hacking-t239873.0.html. Quien mejor que programadores para que me puedan ayudar a resolver tal duda.
Es referente a que lenguajes me recomiendan para hacer programas de hacking, tanto que se pueda programar en Windows y Linux al mismo tiempo, y que pueda funcionar tanto en Windows y en Linux.


Pues despues de tanto rollo, me despido y espero que le encuentren buena utilidad al script.

Un saludo a todos
  :laugh:
5  Seguridad Informática / Hacking / Solucion: Saber nuestra IP PUBLICA real (no privada, no ipconfig, no pagina web) en: 28 Diciembre 2008, 05:26 am
Hola como estan:

Lo siguiente que describo es una forma de obtener nuestra IP PUBLICA real (no privada, ipconfig, ni nada de eso), es decir, la que se muestra desde internet, y de una forma muy sencilla.

El metodo utilizado es ftp por linea de comandos (ms-dos) en windows.
No requiere que tengan privilegios de administrador.
Requiere que estén frente a la pc de la cual quieren saber su IP pública.


Permitanme comentar en forma muy muy breve algo de FTP, porque no quisiera que los masters no le encontraran utilidad, y peor aún, que los newbies, tampoco entendieran que es lo que están haciendo...

Como saben FTP es un protocolo (medio de comunicación entre computadoras) que permite la transferencia de archivos, de una forma más rápida en comparación a otros protocoloes.

Existen Servidores FTP y Clientes FTP.

Los Servidores FTP permiten conectarse a ellos para descargar archivos, programas, etc. También permiten editar, agregar archivos a su servidor, y demás, dependiendo de los permisos que den tales servidores.

Hay servidores publico que nos permiten conectarnos sin ser usuarios registrados de dichos servidores. El usuario con el que nos conectamos a ellos es anonymous, y no requiere contraseña.

Los Clientes FTP permiten conectarnos a tales servidores, y descargar lo que contengan.

Antes se usaba (y no se si todavía se haga) el comando ftp en ms-dos, para conectarnos a algun servidor FTP.


A lo que voy...
(mas abajo esta resumido, sin tanta explicación)

Antes que nada habría que buscar servidores ftp publicos. Les dejo 2 buenos ejemplos:
ftp.microsoft.com (su ip 207.46.236.102)
ftp.opera.com (su ip 213.236.208.156)

* No quiero decir que vamos a hackear estos 2 sitios. Digo, no destruyamos nada, y menos si nos están siendo de utilidad. Unicamente nos conectaremos a ellos para obtener nuestra IP publica.

1.- Primero abren ms-dos (botón inicio -> ejecutar -> y escriben cmd {command para win9x})

2.- Escriben ftp
Aparece ftp>
Si escriben help, les aparecerá una lista de comandos (entre ellos, literal, que es el que ocuparemos).
Si escriben help "comando", por ejemplo, help open ó help get, les mostrará una breve descripcion de lo que hace el comando.

3.- Estando en ftp>, escriben open
Les aparecerá A (si windows esta en español) o To (si esta en ingles).

4.- Pueden escribir ftp.opera.com o 213.236.208.156 (su ip), es igual.
Les aparecerá algo como:
Conectado a get1.opera.com.
220 (vsFTPd 2.0.3)
Usuario (get1.opera.com:(none)):

5.- Pide un usuario. Ingresaremos la palabra anonymous, y damos Enter.
Les aparecerá algo como:
331 Please specify the password.
Contraseña:

6.- Como es un servidor publico y nos estamos registrando como usuario anonymous, no se requiere una contraseña, por lo que, sin escribir nada, daremos Enter.
Les aparecerá algo como:
230 Login successful.

Ya estamos conectados!!!

Como comentaba antes, si estando en ftp> escribimos help, aparecen varios comandos, y entre ellos uno que se llama literal, y si escribimos help "comando" muestra una descripción.

Ahora, si escribimos literal help, se mostrará otra lista de comandos, como pwd, cwd, list, STAT, pass. (A mi parecer, son los comandos que usan la mayoría de los programas FTP actuales, para manipular la transferencia via linea de comandos)

Si escriben literal, les mostrará: Línea de comando a enviar>, en la cual podemos escribir los comandos que les comenté con literal help.
(esto es solo como información adicional)

7.- Nos encontramos en ftp>, y como ya estamos conectados, solo escribiremos literal stat y... LISTO!!! Ya tenemos nuestra IP pública. Que sencillo, no???

En caso de haberlo probado con ftp.opera.com, les mostrará algo asi:
211-FTP server status:
     Connected to xxx.xxx.xxx.xxx (esta es su IP publica)
     Logged in as ftp
     TYPE: ASCII
     No session bandwidth limit
     Session timeout in seconds is 300
     Control connection is plain text
     Data connections will be plain text
     At session startup, client count was 14
     vsFTPd 2.0.3 - secure, fast, stable
211 End of status

En caso de haberlo probado con ftp.microsoft.com, les mostrará algo asi:
211-Microsoft FTP Service status:
     Connected to dsl-xxx-xxx-xxx-xxx.prod-infinitum.com.mx
(lo que esté en lugar de las x, es su IP pública)
     Logged in as Anonymous
     TYPE: ASCII, FORM: Nonprint; STRUcture: File; transfer MODE: STREAM
     No data connection
211 End of status.

8.- Ahora, unicamente nos desconectamos del servidor, con el comando close.
9.- Y salimos de ftp, con el comando quit.



En resumen:
Entramos a ms-dos
C:\Windows\System32>           Escribimos ftp y damos Enter
ftp>                                      Escribimos open y damos Enter
A                                          Escribimos ftp.opera.com y damos Enter
Usuario (get1.opera.com:(none)):           Escribimos anonymous y damos Enter
Contraseña:                            Sin escribir nada damos Enter
ftp>                                      Escribimos literal stat
(aqui vemos la informacion que quieremos)
ftp>                                      Escribimos close para cerrar la conexion
ftp>                                      Escribimos quit para salir del modo ftp
C:\Windows\System32>           Hemos regresado a donde empezamos :)


Lo siguiente es adicional, para que no tengan que estar escribiendo cada linea.

A)
Abren el bloc de notas y escriben lo siguiente:

open
ftp.opera.com
anonymous
(se deja esta linea en blanco que corresponde al password)
literal stat
close
quit


y lo guardamos con el nombre que sea, por ej, ftpOp.txt. Lo guardamos en C:\Documents and Settings\All Users\Escritorio, por ejemplo.

Abrimos ms-dos y escribimos:
ftp -s:"C:\Documents and Settings\All Users\Escritorio\ftpOp.txt"
* No olviden las comillas

El proceso antes comentado se ejecuta automaticamente, sin tener que escribir cada comando, a razón de lo siguiente:

El contenido del archivo son comandos de ftp (como se puede observar)
El comando ftp -s: permite ejecutar los comandos contenidos en el archivo indicado.

B)
Mas rapido todavia...

ftp -s:"C:\Documents and Settings\All Users\Escritorio\ftpOp.txt" >> "C:\Documents and Settings\All Users\Escritorio\miIp.txt"

Primero ejecutamos los comandos contenidos en ftpOp.txt con la opción -s: y con >> hacemos que en lugar de que se muestren los resultados en pantalla, se guarden en un archivo (en este caso miIp.txt)

Que les pareció este truco... Está bueno no?
Bueno, en si, ojala que les guste y que les sea de ayuda.

Sin mas por el momento, me despido.

Un saludo.
6  Programación / Scripting / VBScript-> Set fso=Create... ->Set x=fso.OpenTextFile-> x.Line=3 ??? en: 15 Diciembre 2008, 02:15 am
Hola, como estan:  :)

Estoy haciendo un script en VBScript, que despues he de postear aqui a ver que opinan o si les sirve de algo.

Pero tengo una duda, que espero que me puedan orientar:  :huh:

Set fso=CreateObject("Scripting.FileSystemObject")

Set arch=fso.OpenTextFile("C:\Scripts\archivo.txt", 1)
' archivo.txt tiene + de 5 lineas.

' En esta linea esta todo el problema.
arch.Line=2

lec=arch.ReadLine

arch.close

msgbox lec

Lo que quiero es que se pase a la linea 2, para que la lea y la guarde en la variable lec, pero me manda el siguiente error:

Wrong number of arguments or invalid property assignment: 'arch.Line'

No existe el metodo var.Line=# como tal?

Gracias de antemano.

Un saludo y Feliz Navidad.................. ;)  ;)  ;)
7  Programación / Scripting / Batch: For X do (varios comandos)... No me esta funcionando... en: 18 Noviembre 2008, 05:08 am
Hola, que tal:

Antes que nada, disculpen la pregunta tan "basica" que hago, que pareciera que no he leido ni buscado nada.

El problema radica en lo siguiente:

for /L %%x in (#, #, #) do (
comando
comando
)

Llevo dias y dias buscando, en google, en un buen de paginas. Aqui, en la sección de programacion->scripting, ya me eche casi las 18 pags (con sus links y sus paginas del tema), buscando todo lo relacionado con batch y el comando for, pero no he encontrado la solución  >:(.

Por otro lado, tengo un poco de conocimiento en javascript, vb, macros en excel, y empece con C. No lo digo como presumiendo, porque no tengo el nivel de conocimiento que tienen aqui, sino que como es posible que teniendo un poco de practica y conocimiento, esté batallando con esto  >:(  >:(.

El primer ejemplo con el que estoy batallando es el siguiente:
@echo off
cls
for /L %%c in (0, 1, 7) do (
color %%c
echo hola%%c
)
pause > nul
cls


(digo, este ejemplo puede sonar muy tonto, pero de esta estructura parto para realizar un script que me interesa hacer)

Segun yo, en el primer bucle (for), el color es 0, e imprime hola con tal color, no? Luego, el color es 1, e imprime hola con el color correspondiente a color 1, cierto?
Pero solo me muestra hola1, hola2, hola3, etc con el mismo color.
Por que rayos no me funciona? que estoy haciendo mal?  :P

Pongo otro ejemplo, con el mismo problema:

@echo off
set x=0
for /L %%c in (1, 1, 8) do (
set /a x=%x%+1
echo %x%
)
pause > nul
cls


Primero x vale 0. Entra al for y x, que vale 0, es igual a 0 + 1, y debería valer ahora 1, mostrando 1 (segun yo). Luego pasa al siguiente bucle (for) (por asi decirlo) y ahora x que vale 1, es igual a 1 + 1, mostrando 2, si me estoy explicando?
Pero lo que me muestra son puros ceros.

Donde esta el problema? esta mal la estructura? no se puede escribir de esa forma?
Igual podría pensar en una solución alternativa, con :menus y demas, pero esa no es la idea.

Alguien tiene alguna solución?

Gracias  ;D

Saludos
8  Programación / Programación Visual Basic / Ejecutar archivo de sonido en: 13 Abril 2008, 05:46 am
Hola que tal:

Tengo una pregunta, que quiza sea muy sencilla, pero no encuentro la respuesta.

Estoy intentando hacer un programa en VB6, y necesito que cuando se oprima un boton, por ejemplo, se ejecute un pequeño archivo de audio (wav, avi o wma) :P, pero no lo consigo. :-\

El archivo de audio es de 300Kb, el problema es que no lo puedo llamar o ejecutar. :huh:

He intentado por medio de:
Id=Shell("C:\Carpeta\audio.wav")
Id=Shell("C:\Carpeta\audio.avi")

Open archivo for Input as #1
pero obviamente no me lo abre, porque no es un archivo de texto y demás.

He checado que hay un control llamado MMControl, pero por mas que busco, no lo encuentro en la galeria de objetos en mi VB6, y en internet no encuentro el nombre del control (por ej, Microsoft Common Control).

Alguien me podría dar una pista, por favor?
9  Foros Generales / Sugerencias y dudas sobre el Foro / RECLAMACION a los foros en: 20 Enero 2008, 07:20 am
RECLAMACION A LAS RESPUESTAS DADAS EN LOS FOROS  >:( >:( >:(

Para los que contestan:
INVESTIGA...
LEE, NO SEAS FLOJO...
O QUE, QUIERES QUE SE TE DE TODO RESUELTO?...

Escrito por BlaKore_Alpha

Antes que nada, quiero dar cierta información de mi, para que no digan que soy uno de tantos flojos, y que creen ustedes que todos, o muchos, lo somos.

Me dedico al Mantenimiento, Reparación y Ensamble de máquinas, Redes, y sobre todo a la Programación.
Le dedico muchísimo tiempo a la programación: horas, días, meses, porque me fascina. Leo muchos manuales y tutoriales, los cuales me llevan hasta meses en terminarlos, porque voy haciendo cada ejercicio que ahí muestran, con la idea de aprender, y realmente lo disfruto.

Ahora, después de este rollito, quiero decirles a todos los de los foros, que acostumbran contestar así:
INVESTIGA...
LEE, NO SEAS FLOJO...
O QUE, QUIERES QUE SE TE DE TODO RESUELTO?...


y que muchos contestan así, estan MAL, MUY MAL. >:(

He descargado y leído varios " manuales/tutoriales de hacking ", y en la mayoría, los grandes super hackers que escribieron su gran super manual, escriben, por ejemplo:

El comando net sirve para esto...
Las opciones para este comando son: net acconts, net computer, ...
Ahora investiguen... PERDON??? INVESTIGUEN???:huh:

Es como si yo les digo:
Los signos matemáticos son: +, -, *, /, ahora, INVESTIGUEN???, NO!!! Si estamos leyendo e investigando es por algo, no?

Mejor sería si dijera:
Los signos matemáticos son: +, -, *, /.
+ sirve para sumar. ejemplo: 1+1=2
- sirve para restar. ejemplo: 1-1=0
Existen números negativos, que son...
Por lo que si encuentran 1+ -1, esto sería = 0...

Lo que quiero decir con estos ejemplos, es que, NO es que quiera que nos den una tabla a seguir, como:
1+1=2, 1+2=3, 1+3=4...
o que nos digan: si pasa esto, hagan esto, si pasa lo otro, hagan esto otro.

Únicamente, es que nos enseñen las herramientas y opciones que exiten, para poder ponerlas en práctica, y aprender, tal y como lo hicieron ustedes en un inicio. No me refiero a manuales con mucho rollo, sino manuales con ejemplos prácticos.

Y luego:
Entramos a los foros, buscando más información que las que nos encontramos en los manuales y las FAQ's, y nos salen con lo mismo de INVESTIGUEN, NO SEAN FLOJOS?:huh::huh:>:(

Perdón, pero me parece una respuesta hasta GROSERA de su parte contestar así. Parece que ya se las saben de memoria, y contestan asi, automáticamente, en lugar de preguntar:
Dime que has investigado, para poder ayudarte. A.Y.U.D.A.R.T.E !!! Que diferencia, no?

Y ya para terminar:
No crean que hablo, nada más por hablar:
1.- Yo también entro a los chats de Mantenimiento, para intentar ayudar a alguien que lo necesite, en agradecimiento a los buenos manuales de Programación y Mantenimiento, que muchos han dedicado su tiempo en hacerlos. Por lo menos para contribuir y regresar algo, mucho o poco, de lo que he aprendido gracias a esos manuales.

2.- Todo este rollo que me aventé, no soy el único que lo piensa.
Así que, si van a contestar: ¡¡¡ INVESTIGUEN, NO SEAN FLOJOS!!!... ¡¡¡LEAN!!!...
Mejor ni contesten.

Fin

Gracias a los que se hayan tomado el tiempo de leer el texto.
Si eres como yo, que esta buscando respuestas, y te responden así, apoyame.
Si eres uno de los que escribe los manuales, no te enojes, ayudame.

Mi correo, si es que no me betan de aquí por ser sincero, está a la vista de todos, asi que si hay alguien quiere preguntarme algo, o necesita ayuda, en lo que yo pueda hacerlo, estaré gustoso de poder ayudar (pero no de hacking, porque por no se practicamente nada. Por algo escribí este post)
Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines