|
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
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:Dim Ejec_1 As Object 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:Sub Main() ' Aqui, se supone que registro el Exe ActiveX, y aparentemente si lo hace, supongo yo... Shell ("C:\Documents and Settings\DeathWatch\Mis documentos\XEjecutor.exe /RegServer") ' Aqui llamo al Sub Prueba Prueba End Sub Sub Prueba() ' Aqui instancio al proyecto XProyEjec, a la clase XClsEjec, que se encuentran dentro del ActiveX XEjecutor Dim Ejec_1 As New XProyEjec.XClsEjec Set Ejec_1 = New XProyEjec.XClsEjec ' Llamo a un procedimiento llamado Proceso, dentro del ActiveX Ejec_1.Proceso 1 ' y despejo el objeto. Set Ejec_1 = Nothing 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:
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.
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): 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.
|
|
|
3
|
Programación / Scripting / [Batch] for /R y for /D
|
en: 1 Marzo 2009, 12:51 pm
|
Hola, que tal: 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
|
|
|
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.Ej: Set fso=CreateObject("Scripting.FileSystemObject") Set carpI=fso.GetFolder("C:\") Set carpsSub=carpI.SubFolders For Each c in carpsSub msgbox c 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:Option Explicit Dim Rutas Dim oArch, oLArc, oCarI, oCar, objNovCar, oDirTemp Dim archI, lecArc, carI, LecLin, novCar, subNCar, DirTemp Dim subsC Dim BucSkipLine, Conteo Dim Mensg Dim InboxA, InboxB Dim rutCorrect Dim verArch Dim ArchFnl Set oDirTemp=CreateObject("Scripting.FileSystemObject") Set DirTemp=oDirTemp.GetSpecialFolder(2) 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) If InboxA="" Then msgbox "Ha elegido Cancelar o no ha escrito texto alguno." & Chr(13) & Chr(13)& "La aplicación se cerrara." Else Set oCar=CreateObject("Scripting.FileSystemObject") rutCorrect=oCar.FolderExists(InboxA) If rutCorrect=False Then msgbox "La ruta indicada NO existe" Else 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") If Mensg=6 Then InboxB="C:\" Directs Else If Mensg=7 Then 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) If InboxB="" Then msgbox "Ha elegido Cancelar o no ha escrito texto alguno." & Chr(13) & Chr(13) & "La aplicación se cerrara." Else rutCorrect=oCar.FolderExists(InboxB) If rutCorrect=False Then msgbox "La ruta indicada NO existe" Else Directs End If End If End If End If End If End If Private Sub Directs() Set ArchFnl=CreateObject("WScript.Shell") InboxA=InboxA & "\dirs.txt" Rutas=array(InboxA, InboxB) Set oArch=CreateObject("Scripting.FileSystemObject") Set archI=oArch.CreateTextFile(Rutas(0), True) Set carI=oCar.GetFolder(Rutas(1)) archI.WriteLine(carI) archI.Close Set oLArc=CreateObject("Scripting.FileSystemObject") Set lecArc=oLArc.OpenTextFile(Rutas(0), 1) Set objNovCar=CreateObject("Scripting.FileSystemObject") Conteo=1 Do While lecArc.AtEndOfStream=False On Error Resume Next LecLin=lecArc.ReadLine lecArc.Close Set novCar=objNovCar.GetFolder(LecLin) Set subNCar=novCar.SubFolders For Each subsC in subNCar Set lecArc=oLArc.OpenTextFile(Rutas(0), 8) lecArc.WriteLine (subsC) lecArc.Close Next Set lecArc=oLArc.OpenTextFile(Rutas(0), 1) For BucSkipLine=1 to Conteo lecArc.SkipLine Next Conteo=Conteo+1 Loop verArch=msgbox ("Ha terminado el proceso" & Chr(13) & Chr(13) & "El archivo creado esta en" & Chr(13) & Chr(13) & InboxA,,"Archivo de directorios") 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
|
|
|
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: 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? 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 clsPrimero 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 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) , pero no lo consigo. El archivo de audio es de 300Kb, el problema es que no lo puedo llamar o ejecutar. 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???, 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?, , , 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)
|
|
|
|
|
|
|