From QB64.org wiki
In QB64 handles are created and used by various statements and functions to reference screen surfaces, images, sounds, fonts and IP users.
- handle& = _NEWIMAGE(800, 600, 32)
- _FREEIMAGE handle&
- SCREEN and image handles in use cannot be freed without error! Change screens or fonts before freeing the handle from memory!
- The actual value of the handle is only important if it fails to return a value in the range specified. A bad return value may create errors!
- Image: _NEWIMAGE creates a screen surface, _LOADIMAGE holds a file image and _FREEIMAGE releases valid handles from memory.
- TCP/IP: _OPENHOST, _OPENCLIENT and _OPENCONNECTION open access and CLOSE frees negative handle values from memory.
- Memory: _MEM and _MEMNEW create memory storage areas and _MEMFREE MUST release those areas for other uses.
- Sound: _SNDOPEN opens a sound file and _SNDCLOSE closes the file and releases valid handles above zero from memory.
- Fonts: _LOADFONT loads a font file and _FREEFONT releases valid handle values above zero from memory.
- Event: _FREETIMER finds a free TIMER event INTEGER value which is freed by TIMER FREE.
- Files: FREEFILE finds a free file INTEGER value which is used in OPEN statements and file functions and is freed by CLOSE