Página 1 de 1

Es DEMASIADO!

Publicado: 15 Feb 2012, 19:16
por GZM
Hola muchachos! :smt100
Les cuento que he decidido comenzar a programar, ya que es mi pasión, y tengo muchas ideas útiles que no se cómo implementar...
Pasé mucho tiempo leyendo incontables hojas de tutoriales y libros de C-C++ entre otros lenguajes, pero me he decantado por Autoit ya que es muuuy versátil hasta donde he visto, y posee una comunidad de usuarios - desarrolladores muy atenta y creativa... No les estoy chupando las medias (bueno, un poco sí) :smt023
Lo que necesitaría saber, si son tan amables, son dos cosas:
1) ¿Es posible manipular datos a nivel de bits, o manejar memoria dinámica en Autoit? Porque es un lenguaje de alto nivel, digo, que se suele comparar con VB...
2) ¿Qué posibilidades hay de controlar gráficamente un programa de consola, puntualmente un compresor (no archivador, sólo codificador de los bytes de un archivo a otro), sabiendo que las transacciones en stdin y stdout corresponden casi exactamente con la cantidad de datos que va procesando? Adjunto un screenshot para explicarme mejor...
Imagen
En realidad esto forma parte de un proyecto mucho más grande: Crearía un pseudo-archivador para los datos comprimidos, incluiría entre ellos directivas automatizadas para instalaciones desatendidas, instalaciones con intervención del usuario, programas portables que se distribuyan en un único archivo pero aún así guarden sus propias configuraciones, y muchísimo más que si lo describo se aburren... Sería una idea como la de los *.msi de MS pero mucho más potente y flexible. Inclusive se podría hacer un repositorio de aplicaciones que facilitaría muchísimo el trabajo de administradores y técnicos como nosotros a la hora de instalar y mantener un sistema...
Pero vamos de a poco. No les pido que me escriban un programa, le hagan una bonita GUI, lo compilen y le fabriquen un instalador para luego pasarme el link, sólo que me tiren ideas y algunas líneas de código porque no sé por dónde empezar, y esto, por lo pronto, es demasiado para mi...
Muchísimas gracias desde ya. :smt104 :smt120

PD: Uso este compresor, no de terco que soy, sino porque es relativamente rápido, mucho menos exigente de recursos que sus competidores e incluso tiene un mejor ratio de compresión en casi todos los casos que 7-Zip, UHArc, SQX, CAB, RAR y en fin, casi todos los compresores "convencionales" aún en sus mejores configuraciones (de verdad que he testeado decenas que sólo conoce un 0.1% de la población, y los que le ganan en ratio demoran un año en comprimir 1 MB al 100% de la CPU y la RAM). Lástima que no liberen el fuente... :smt089

Re: Es DEMASIADO!

Publicado: 16 Feb 2012, 15:19
por Jonny
Pues vas a estar de enhorabuena :).

Así resumiendo, con AutoIt puedes hacer todo. Perdón, casi todo :).

Lo bueno (para mi) de este lenguaje, entre otras cosas claro, es, que allá donde no llega por si mismo, llega tirando de recursos externos...

Lo de manipular bits, supongo que podrás hacer todo lo que necesites con las funciones de AutoIt, porque tiene varias para ello (mira la ayuda).
Lo de gestionar la memoria... no se exactamente a qué te refieres, pero hay alguna librería que creo que incluye AutoIt, que aunque no he mirado nunca, debe tener funciones interesantes para la memoria.

En cualquier caso, si no son las que necesitas, seguro que en la API de Windows encuentras alguna para lo que quieras, y si no, un recurso del que creo que se habla poco y es cuanto menos interesante conocer, aunque sea un poco (yo lo estoy empezando a tocar ahora) es WMI. Así muy resumido por si no sabes de que hablo, son clases de Windows... Podríamos decir que es como ... otra API de Windows, aunque no tiene nada que ver con las APIS, claro. Por cierto, Las mismas clases que pueden usarse como objetos COM, pueden usarse a través de una DLL de Windows, así que si eso se considera API...
Eso sí, no se si podría usarse esa DLL con AutoIt.

Y si todo esto no te sirve para lo que pretendas hacer con la memoria, siempre puedes buscar una DLL que haga lo que quieres, y usarla desde AutoIt.

Ya ves, que por posibilidades no será... Así, es casi imposible que algo no pueda hacerse con AutoIt, aunque muchas veces no sea realmente AutoIt quien haga ese algo :).

Lo de la consola, sin problema. Puedes hacer lo que quieras con ella, con la función Run() y la macro @Comspec (mira la ayuda).

Salu2!

Re: Es DEMASIADO!

Publicado: 16 Feb 2012, 17:10
por GZM
Gracias Jonny! Me revivió tu respuesta...
Ahora que ya me aseguré de lo que ya suponía me voy a dedicar a leer la ayuda y... ¡a escribir código se ha dicho!