Buenas tardes!!
Queria hacer una consulta...
Tengo una DLL dinamica en CodeBlocks y me estoy volviendo loco tratando de hacer que obtenga la hora desde internet...
La misma, la llamo desde un ejecutable con loadlibrary y por si sola crea un hilo principal que hace lo que necesito, pero no logro obtener la hora!
En un servidor web, subi un PHP que lo unico que hace es imprimir la hora actual.
La idea es que la DLL pueda abrir ese PHP y guardar la hora en una variable...
Se cuelga en esta parte:
HINTERNET OpenAddress = InternetOpenUrl(connect,"http://www.google.com", 0, 0, 0, 0);
La verdad que no entiendo, el mismo codigo funciona en consola y me trae el fuente de google.com, pero en la DLL queda tildado en esa parte...
Alguna idea?
Gracias!
¿Que devuelve LoadLibrary? ¿Que devuelve GetLastError?
Disculpa Eternal Idol, voy a modificar el tema principal ya que cambie de libreria, ahora no tengo error en el LOADLIBRARY, mira...
Prueba a crear un hilo en la dll que ejecute el código de forma independiente.
Es decir, al llamar a la función de la dll, ésta crea un hilo y ejecuta en dicho hilo el código ( deberás moverlo a una segunda función ).
Cita de: eferion en 3 Septiembre 2013, 16:46 PM
Prueba a crear un hilo en la dll que ejecute el código de forma independiente.
Es decir, al llamar a la función de la dll, ésta crea un hilo y ejecuta en dicho hilo el código ( deberás moverlo a una segunda función ).
eferion sin palabras, jamas se me hubiese ocurrido! Funciono perfecto en otro hilo, mil gracias!
SOLUCIONADO!
Hay algunas llamadas a la api de windows que, por alguna razón que no termino de entender, necesitan que la aplicación que las llama responda de alguna forma. Si el hilo principal de la aplicación se queda "atascado" en la dll, se ve que la aplicación no responde correctamente a las "llamadas o lo que sea que haga la api" y entonces la ejecución se atasca.