2012-04-02 10 views
8

Estoy escribiendo una sencilla aplicación de monitor basada en WMI que envía datos de supervisión a través de un socket de red TCP a una aplicación de Android. No tengo ningún problema en escribir la aplicación de Android con Titanium Mobile (JavaScript) para que cree un socket y acepte los datos. Sin embargo, estoy buscando la mejor (más fácil y rápida) forma de obtener los datos de WMI y enviarlos a través del socket TCP, pero con una MUY GUI básica de Windows. La única razón para la GUI es que el usuario sepa que el software se está ejecutando, y posiblemente ingresen IP aquí para conectarse al android a través de wifi. Aquí está mi situación hasta ahora:El mejor lenguaje de script para Windows GUI EXE

  • PHP y JavaScript son mis idiomas más fuertes (siendo un desarrollador web). Puedo escribir scripts WMI/COM con PHP y compilar con Bamcompile en una línea de comando de Windows EXE. Solo es compatible con PHP4 y no estoy seguro de qué kit de herramientas GUI (si hay alguno) funcionará con él, ya que es muy viejo, pero aún así lo prefiero para mis cosas básicas de Windows.
  • He estado jugando con Perl (Strawberry Perl) y dándome cuenta de su potencial. Pero dado que mi PC de programación principal está en un proxy, tengo problemas para instalar Tk, así que de nuevo estoy sin las cosas de la GUI. He intentado con "ppm install Tk" y "cpan Tk" y he incluido todos mis datos de proxy, incluso estoy descargando muchos datos/módulos pero obtengo errores que no tengo ni idea de cómo resolverlos, ya que no soy sin embargo, una persona Perl.
  • He probado WinBinder para PHP y al hacer doble clic en Windows. Los archivos .phpw parecen funcionar, pero tendría que empaquetar todo de alguna manera y también la ventana del símbolo del sistema en el fondo parece desordenada.
  • Podría usar AutoIT 3 - hace GUI, sockets, todo ese tipo de cosas, y compila a EXE, pero realmente preferiría PHP o Perl para la experiencia de aprendizaje y estoy más acostumbrado a su sintaxis.
  • Python se ve bien pero es un poco diferente a PHP o Perl, así que no voy a perder el tiempo para aprenderlo por el momento. Probablemente cambie a lo largo de la línea, ya que parece tener una estructura muy interesante.

Supongo que el problema principal al que me enfrento es que podría escribir esta aplicación para PHP y solo Bamcompilarla, pero necesito que los usuarios ingresen y les haga saber que algo se está ejecutando. También supongo que usar algo como Wapache para mostrar un navegador web sin una barra de herramientas no funcionaría porque el PHP tiene que ejecutarse en un bucle continuo y eso podría bloquear cualquier "navegador". esto funcionara?

set_time_limit(0); // 0 means never timeout 

ignore_user_abort(true); // continue running when browser closes 

¿Alguna idea? Jscript y JSC?

Tenga en cuenta que no quiero aprender ningún material de Microsoft .Net o lenguajes C complejos, o Java.

Estoy seguro de que puedo hacer algo como esto con mis habilidades actuales en PHP/JavaScript? ¿No?

+0

No, PHP no sería la mejor respuesta en mi humilde opinión. – Shoe

+0

Sé que no es la mejor respuesta. ¿Pero es una respuesta posible? :-D – TheDavil

+0

No lo creo. E incluso si fue (haciendo algunos hacks), PHP no está diseñado para eso. PHP no es como C++ u otros lenguajes de línea de comandos. Se supone que PHP se ejecuta una vez y envía HTML al navegador. Últimamente se agregó AJAX (con Javascript), pero aún así Javascript hace una solicitud, el script PHP se ejecuta una vez y luego la salida se envía al navegador. PHP no es una opción posible en mi honesta opinión. – Shoe

Respuesta

1

Yo también tuve problemas para instalar the Tk module para mi Strawberry Perl, pero encontré que se instala correctamente. Eche un vistazo a

perldoc permodinstall 

para comprender el proceso.

Tal vez la forma más simple - si su CPAN está descargando paquetes correctamente - es ejecutar el shell de CPAN y decir

cpan> look Tk 

la que se descarga y descomprimir el módulo para usted y luego pagar a un símbolo del sistema con el directorio desempaquetar como su ubicación actual.Aquí usted puede seguir adelante y decir

perl MAKEFILE.pl 
dmake 
dmake test 
dmake install 

como se describe en perlmodinstall. (dmake es el sabor de la marca utilizada por Strawberry Perl.)

Mi preferencia personal por una biblioteca de interfaz gráfica de usuario es el wxWindows API Wx que está diseñado desde cero para ser portátil y tiene una mirada y sentir que depende de la plataforma donde se está ejecutando Pero es probable que obtenga más ayuda usando Tk, por lo que la elección es suya.

+0

Gracias por sus comentarios ... Voy a echar un vistazo a esto ahora! (aunque no es un linux head, make da miedo) – TheDavil

+0

¡Señor, es una leyenda! Ahora todo lo que tengo que hacer es aprender Perl y encontrar una manera de ejecutarlo todo. – TheDavil

+0

Me alegro de estar de servicio; Perl será un arma muy útil en tu arsenal. Recomiendo mucho la lista de correo [Learn Perl site] (http://learn.perl.org/) y [[email protected]] (http://lists.perl.org/list/beginners.html). – Borodin

1

La mayoría de los idiomas que ha dado allí van a utilizar bibliotecas de GUI multiplataforma, y ​​eso es una molestia innecesaria cuando dice que quiere una GUI de Windows. Usted terminará haciendo más trabajo para usted.

Todo el mundo va a querer venderle su idioma aquí. No lo usarían si no pensaran que era el mejor. Así que supongo que también podría intervenir (descargo de responsabilidad: escrito por un MVP de AutoIt):

AutoIt le permitirá hacer pequeñas aplicaciones de Windows muy rápidamente, es una de las cosas que realmente destaca. También es completamente nativo, lo que en la mayoría de los casos significa que es mucho más fácil trabajar con él, siempre que no tenga la intención de pasar a Linux en el corto plazo.

Cuestiones relacionadas