FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour ¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?
Posts: 282
Joined: Mon Oct 10, 2005 08:55 AM
¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?
Posted: Mon Jul 10, 2006 09:58 AM

Hola a todos,

HAce algún tiempo leí algo en el foro referente a estas dos funciones, pero ahora no soy capaz de encontrar de nuevo la referencia.

Tengo entendido que colocada ResAllFree() al final del programa se asegura uno de liberar todos los recursos usados.

Respecto a PostQuitMessage(0) lo tengo menos claro, porque la referencia en la ayuda de FW no aclara gran cosa.

¿Alguna luz?

Saludos
José Vicente Beltrán
Algeciras
España :shock:

FWH 2.7 Build Junio, Harbour 46.2

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?
Posted: Mon Jul 10, 2006 11:34 AM

Jose Vicente,

ResAllFree() es una función diseñada para FW 16 bits. En 32 bits no es necesaria. Se utilizaba para forzar la liberación de los recursos en caso de que no se hubiesen liberado, pero en 32 bits esto lo hace Windows automaticamente.

PostQuitMessage( 0 ) es una función del API de Windows que le indica a Windows que una aplicación debe terminar la ejecución de su bucle de recogida de mensajes y salir (terminar). No es preciso que la llames directamente, ya que FWH la llama automaticamente cuando se sale de la ventana principal.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 282
Joined: Mon Oct 10, 2005 08:55 AM
¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?
Posted: Mon Jul 10, 2006 11:59 AM

Gracias por tu respuesta Antonio, ahora lo tengo mas claro

saludos :shock:

Posts: 8523
Joined: Tue Dec 20, 2005 07:36 PM
¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?
Posted: Mon Jul 10, 2006 12:00 PM

Antonio, y GlobalFree()??

João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?
Posted: Mon Jul 10, 2006 05:09 PM

João,

GlobalFree() es una función del API de Windows para liberar un bloque de memoria previamente reservado con GlobalAlloc(). Con Harbour/xHarbour debemos usar hb_xgrab() y hb_xfree() en vez de esas funciones, para que Harbour/xHarbour hagan las comprobaciones internas necesarias.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 8523
Joined: Tue Dec 20, 2005 07:36 PM
¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?
Posted: Mon Jul 10, 2006 08:40 PM
Antonio Linares wrote:João,

GlobalFree() es una función del API de Windows para liberar un bloque de memoria previamente reservado con GlobalAlloc(). Con Harbour/xHarbour debemos usar hb_xgrab() y hb_xfree() en vez de esas funciones, para que Harbour/xHarbour hagan las comprobaciones internas necesarias.



Gracias Antonio, Otra Pregunta:

Cuando Usar Estas Funciones?
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?
Posted: Mon Jul 10, 2006 10:46 PM

João,

No es preciso usarlas para nada, salvo que sepas exactamente lo que haces y para qué las quieres.

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion