MiBiciPublica (monitorizador de bicicletas públicas)

y programas personales para otros como tu, puede que te corrijan ;)
Avatar de Usuario
Chefito
Profesional del Autoit
Mensajes: 2035
Registrado: 21 Feb 2008, 18:42
Ubicación: Albacete/Cuenca (España)

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por Chefito »

Pues no se chico. A mi no se me ocurre nada que ya no se haya dicho aquí :smt017 . Creo recordar que el comando ping actua un nivel por debajo del tcp. Con esto digo que no es lo mismo consultar una página con un protocolo que hacerlo con un ping (supongo). Puede que a causa de esto pasen estas cosas :smt017 . En resumen, no tengo ni idea :smt005 . Habría que analizar la red, el ordenador,el router y demás. Puede que esnifando los paquetes que mandas con un sistema u otro se pueda averiguar algo :smt017 .

Por cierto, no te encierres con el ping. Hay muchísimas formas de averiguar si una dirección te contesta o no. Has mirado la api que te puse en el enlace del foro ingles (internetcheckconnection)? Utiliza inet y seguramente te vale. Puedes tratar el error de inetget (creo que me estoy repitiendo no?). Puedes utilizar tcpsend, _INetGetSource y todo lo que rodea a inet, winhttp, http, etc etc. Recuerda que hay udfs para estos objetos con funciones que te pueden ayudar.

Lo dicho, no te encierres en el ping si ves que en algún momento te puede dejar tirado. Si no hubiesen otras soluciones........pero habiendo todo lo que hay, intenta otra cosa.

Saludos.
Cita vista en algún lugar de la red: En este mundo hay 10 tipos de personas, los que saben binario y los que no ;).
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por Ximorro »

Para mí la conclusión es que tiene algo capado en la empresa. Es rarísimo que sí tenga acceso web pero no en el Ping (y al menos ya queda claro que no es problema de tu programa, pues también falla en DOS).
Será cosa de puertos, se han puesto a capar puertos y habrán dejado el 80 del http y poco más, por eso no irá Ping.

Me sumo al comentario de Chefito para comprobar internet. En vez de un Ping haz un InetGet de una página, por ejemplo la de google o microsoft, y mira a ver si lo que descargas no es un error (aunque devuelva un html habrá que comprobar que no sea un html diciendo que no se puede conectar)
Quizás mejor que InetGet sea _INetGetSource en INet.au3 (o equivalente en tu librería), que lee directamente la página en memoria.

La ventaja de este sistema es que lo que compruebas es que tenga acceso http al exterior, que es lo que necesitas, y no el acceso Ping, que aunque falle te da lo mismo. En realidad igual sí tiene acceso internet pero no http así que el error pasa de "No tienes internet" a "No tienes acceso web a páginas externas".

Pero qué raro que no le funcione el ping, mira que bloquear una cosa tan básica...

Ah, lo de @ScriptLineNumber pone en la ayuda "Not significant in compiled script", o sea que no, tendrás que poner un identificador a mano.
Tampoco veo ningún parámetro de compilación que añada información de debugging a los scripts compilados.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
jamaro
Hacker del Foro
Mensajes: 253
Registrado: 03 Nov 2010, 23:04

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por jamaro »

Seguimos con amigos-testeadores y ahora me encuentro con el error que muestro en la imagen adjunta.

Autoit Error: Unable to open the script file.

El usuario tiene Windows XP.

¿alguna sugerencia?
Adjuntos
Captura del error
Captura del error
Clipboard01.jpg (42.5 KiB) Visto 5161 veces
Avatar de Usuario
BasicOs
Site Admin
Mensajes: 2085
Registrado: 21 Nov 2006, 19:24
Ubicación: El Internet - (Canarias, España)
Contactar:

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por BasicOs »

Hola mira la respuesta que pongo aquí sobre antivirus, (puede que el antivirus borre o impida la ejecución del programa). Puede añadirlo en las excepciones o lista de programas buenos en la configuración del antivirus. También puedes enviar un mail al fabricante del antivirus para que te incluya en su próxima actulización como programa bueno.

Aquí hay un post más amplio sobre el tema: :smt027 :smt027 :smt027

http://www.emesn.com/autoitforum/viewto ... RUS#p12755

Puede desactivar el AV para probar que es esto, si no hay que mirar si está en mal estado el programa, :smt021 :smt021

Salu22:)
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por Ximorro »

Por si sirve de algo lo he ejecutado en un XP y va perfectamente (no sé qué versión tiene tu usuario, he ejecutado la beta que hay en el primer post).

También pienso que puede ser cosa del antivirus. Puedes probar a enviarle una versión sin comprimir con upx. Sinceramente no creo que sea eso pero es por probar algo, pues los exe comprimidos son sospechosos para los antivirus.

Por supuesto entiendo que no le estás pasando ninguna versión de 64 bits ni nada de eso...

Si no puede o no quiere deshabilitar el antivirus quizás lo pueda poner como excepción. Seguramente tendrás que volver a pasárselo y que lo descargue sin antivirus, porque igual lo ha "limpiado" incluso antes de ejecutarlo, al guardarlo en disco desde internet.

Por cierto, que se asegure de tener actualizado el antivirus, ya hubo quejas y probablemente han añadido algunas excepciones.
Yo he tenido problemas con scripts ofuscados (a los que les paso el obfuscator con algo que no sea /striponly). Si estás usando eso prueba a no usar Obfuscator a ver.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
jamaro
Hacker del Foro
Mensajes: 253
Registrado: 03 Nov 2010, 23:04

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por jamaro »

Pues ni virus, ni sistema operativo....

Resulta que le envié el archivo .exe por Gmail, pero como no permite enviar ejecutables, renombré el .exe a .exek y lo envié. Al ejecutarlo, le daba el error mencionado anteriormente.
Ayer estuvimos probando (hablando por teléfono) y comprobamos que el archivo que le había llegado no tenia el mismo tamaño en KB que el que tenía yo. Lo reenvié del mismo modo y tampoco. Al final el archivo .exek lo metí en un 7zip (porque si metes un .exe en un zip tampoco te deja enviarlo Gmail) y ese lo descomprimió, lo renombró a .exe y ¡funcionó! :smt017

Son esas cosas que nos aturden a la vez que nos maravilla de la informática, las redes y los bits :-)
Avatar de Usuario
BasicOs
Site Admin
Mensajes: 2085
Registrado: 21 Nov 2006, 19:24
Ubicación: El Internet - (Canarias, España)
Contactar:

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por BasicOs »

;) es asi. Al final fue algo
Puedes subir al foro .exe creo si te es mas facil o a un ftp cualquier, pero el navegador tambien puede BLOQUEARLO,
Salu22:)
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por Ximorro »

Pues no era virus pero sí era tratado como tal por el gmail, que lo paraba como si lo fuera.

Lo extrañísimo es que en vez de bloquear el archivo ¡lo modificaba! porque llegar sí llegaba, pero diferente al original. Así que sospecho que sí ha sido "limpiado de virus" por el antivirus del servidor.

Es más, el exe se ejecutaba, ¡pero no encontraba el script!, así que el antivirus había quitado la info extra al final del exe, que es ni más ni menos que el a3x (au3 compilado) que se añade al final del intérprete.

Así que el 7zip aún no lo miran, bueno es saberlo, pero siendo gratuito y multiplataforma ya veremos lo que dura.

Efectivamente tal como te ofrece BasicOS puedes poner el ejecutable en la entrada del foro y en el mail le pones el enlace al foro, a menos que quieras enviar una versión personalizada.

Estaba pensando en que podríamos hacer en autoit un programa para ocultar exes de alguna manera, pero ese sería un programa autoit en sí mismo, con lo que tendría el mismo problema, je, je.
Si es para gente hábil quizás sea fácil modificar los dos primeros bytes del ejecutable, que lo identifican (cambiar la extensión no es suficiente como ves), y el receptor con un editor hexadecimal sólo tiene que restaurarlos...

Editado: Qué tontería, se me acaba de ocurrir algo fácil, el zip o rar pueden tener contraseña, así se supone que el antivirus no puede entrar dentro a modificar nada ¿no?. Se le manda la contraseña en el propio mail y ya está.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
jamaro
Hacker del Foro
Mensajes: 253
Registrado: 03 Nov 2010, 23:04

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por jamaro »

No sé si es algo general con Gmail, porque he enviado de este modo otros programas de autoit a otra gente y no ha tenido problema. Incluso a este mismo amigo le envié otros programas y le funcionaban. Aunque también puede ser que Gmail haga algo ahora que no hacía hace unas semanas ¿?

Ya que estoy en este hilo, aunque creo que se ha comentado alguna vez. Ahora envío el exe y la carpeta "iconos" que tiene los iconos de los botones ¿hay manera de crear el exe con los iconos en su interior para que sea "totalmente portable e independiente" con un único archivo?
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por Ximorro »

Se puede hacer con directivas del wrapper.
El icono normal del programa se pone con lo que ya has usado:
#AutoIt3Wrapper_Icon=archivo.ico

Y luego puedes añadir más con uno o varios:
#AutoIt3Wrapper_Res_Icon_Add=icono2.ico

Eso sí, pongas icono de programa o no, estos iconos adicionales empiezan contando en el número cinco (Autoit añade 4, del -1 al -4). Así si añades un icono extra para ponerlo en un botón será:
$btn = GUICtrlCreateButton("", $x, $y, 32, 32, $BS_ICON)
GUICtrlSetImage(-1, @ScriptFullPath, -5)


Te puedo decir que yo lo intenté y no me cogía todos los tamaños del icono, así que al final lo instalé con FileInstall, que es una opción que siempre tienes, aunque mola menos porque hay que sacar los archivos al temporal y borrarlos al cerrar la aplicación.
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
jamaro
Hacker del Foro
Mensajes: 253
Registrado: 03 Nov 2010, 23:04

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por jamaro »

Según leo, entonces, en lugar de ponerlo como ahora hago, con el nombre del icono:

GUICtrlSetImage($BConfig, @ScriptDir& "\Iconos\preferences-system.ico")

debo ponerlo con @ScriptFullPath (que es el nombre del propio exe) y con el número de orden, con símbolo negativo, (de -5 en adelante):

GUICtrlSetImage($BConfig, @ScriptFullPath, -5)

¿sérá distinta la versión que se ejecuta desde SciTE que la compilada o al ejecutarla en SciTE ya toma los iconos de ahí?

Probaré...

EDITO: Ya he probado, con el primer icono del programa que se coloca en el botón de configuración y, efectivamente, sólo se puede poner con los números. Si pongo el nombre del icono .ico, se ve que lo toma como un número, y me pone el del propio programa.
Por otro lado, es cierto que ocurre algo con la resolución, ya que ha puesto el icono más grande de lo que está en la opción anterior (con los iconos en su carpeta)
Avatar de Usuario
Ximorro
Profesional del Autoit
Mensajes: 1500
Registrado: 10 Jul 2009, 12:35
Ubicación: Castellón, España

Re: MiBiciPublica (monitorizador de bicicletas públicas)

Mensaje por Ximorro »

Efectivamente, se usa el nombre del archivo donde está el icono (aquí como es el propio exe pues @ScriptFullPath es ideal) y el índice del icono (en negativo).
También se puede poner el nombre del icono, cuando se lo han dado al hacer los "resources" del exe. Eso lo puedes ver en un visor de resources, como el famoso Reshacker.
Ese mecanismo se usa en GUICtrlSetImage, GUICtrlCreateIcon, TraySetIcon, etc.

Scite y AutoIt ya se encargan de gestionar los iconos de tal manera que no hay que hacer cambios en el programa. Lógicamente cuando esté compilado cogerá los iconos del exe y cuando no lo esté directamente del archivo ico que pones en la directiva, pero para el programador no hay diferencia. Ojo, creo que leí que hace falta el Scite completo, no la versión básica que viene en la instalación mínima de AutoIt.
Pasa algo parecido que con los FileInstall, si compilado lo saca del exe y si no simula la extracción de la fuente original.

Respecto al tamaño es porque un archivo ico puede (y suele) guardar diferentes tamaños dentro del mismo archivo. Puedes seleccionar el tamaño con el cuarto parámetro de GUICtrlSetImage:
0 = pequeño
1 = normal (por defecto, igual por eso te sale grande, intenta poner un cero para que salga el pequeño)
2 y 4 son valores para iconos de listviews, pero puedes probar a ver si sale algo.

A mí no me seleccionaba de ninguna manera el tamaño que yo quería (¿bug?) y por eso pasé del asunto y usé un FileInstall pues directamente del archivo ICO sí funcionaba...
"¿Y no será que en este mundo hay cada vez más gente y menos personas?". Mafalda (Quino)
Responder