¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?

Post Reply
User avatar
José Vicente Beltrán
Posts: 279
Joined: Mon Oct 10, 2005 8:55 am
Location: Algeciras, España
Contact:

¿Que hace exactamente ResAllFree() y PostQuitMessage(0)?

Post by José Vicente Beltrán »

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
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

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
User avatar
José Vicente Beltrán
Posts: 279
Joined: Mon Oct 10, 2005 8:55 am
Location: Algeciras, España
Contact:

Post by José Vicente Beltrán »

Gracias por tu respuesta Antonio, ahora lo tengo mas claro

saludos :shock:
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Post by karinha »

Antonio, y GlobalFree()??
João Santos - São Paulo - Brasil
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

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
User avatar
karinha
Posts: 4882
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Post by karinha »

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
User avatar
Antonio Linares
Site Admin
Posts: 37481
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain
Contact:

Post by Antonio Linares »

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
Post Reply