| |
|
|
Alloziert einen Speicherblock aus dem Heap, d.h. weist einem Block virtuellem Prozessspeicher real existierenden Speicher zu.
Deklaration:
Def GlobalAlloc(2) !"kernel32", "GlobalAlloc"
Parameter:
P:L1 Eine Kombination folgender Konstanten: ~GMEM_FIXED = $0 Die Adresse des zugewisenen Speicherbereichs im virtuellen Prozessspeicher kann sich nicht ändern und das Handle enspricht der Adresse des zugewiesenen Speichers. Kann nicht mit ~GMEM_MOVEABLE oder ~GMEM_DISCARDABLE kombiniert werden
~GMEM_MOVEABLE = $2, kann nicht mit ~GMEM_FIXED kombiniert werden. Die Adresse des virtuellen Prozessspeichers kann sich ändern und das Handle verweist auf die aktuelle Afresse.
~GPTR = $40 ~GHND = $42 ~GMEM_DDESHARE = $2000 ~GMEM_DISCARDABLE = $100, kann nicht mit ~GMEM_FIXED kombiniert werden
~GMEM_NOCOMPACT = $10 ~GMEM_NODISCARD = $20 ~GMEM_SHARE = $2000 ~GMEM_ZEROINIT = $40, Initialisiert den Speicherinhalt mit Null
P:L2 Size& (Größe des Speichers in Byte) Aus Sicherheitsgründen ist virtueller Prozessspeicher in 32-Bit Windows immer lokaler Speicher und nicht global zugänglich. Es besteht deshalb kein Unterschied zwischen Speicher, der mit LocalAlloc und Speicher der mit GlobalAlloc zugewiesen wurde!
|
|
|
| |
|
|