Español
Stammtisch & Café

TNT, Speicherobjekte y Handles

 
Lo va sólo una vez en folgenden Ver código fuente:
KompilierenMarcaSeparación
Def @LocalAlloc(2) !"KERNEL32","LocalAlloc"
Def @LocalFree(1) !"KERNEL32","LocalFree"
Declare HMEM&
LET HMEM&=@LocalAlloc($2 | $40,32)
PRINT HMEM&
Waitinput
@LocalFree(HMEM&)<

Como Profano algo verschwenderisch con Heaps umgeht, Yo el Ver código fuente el Einfachheit halber con Profano2Cpp compiliert.
Auf el Bildschirm se hier el Handle des con LocalAlloc erzeugten Speicherobjektes ausgegeben (en me 44564492):

[...] 

Zuerst liste Yo entonces con [...]  Heaps des con el Ver código fuente erzeugten Prozesses:

[...] 

Jetzt tue Yo veces así, como wäre el con LocalAlloc erlangte Handle una Adresse y lese con [...]  4 Bytes de dieser Adresse como dezimales Doubleword de:

[...] 

En me erhalte Yo el Zahl 38118320.

[...] 

Jetzt tue Yo otra vez veces así como wäre el erhaltene Zahl una Adresse. Wenn Yo ahora el vorher ausgelesenen Heapblöcke ansehe, finde Yo esta Adresse en me en el 1.Heap otra vez:

[...] 

Jetzt schaue Yo veces con [...]  el Inhalt dieses Heapblocks algo genauer a, y zwar como dezimale Doublewords:

[...] 

[...] 

Nach el Kopieren en el Zwischenablage kommt en me el heraus:
[box:60341a6031]
X1=0
X2=0
X3=0
X4=0
X5=0
X6=0
X7=0
X8=0
X9=0
X10=44564492
X11=393249
X12=524544
[/box:60341a6031]
Am Ende dieses Heapblockes es hier scheinbar el en el WIN32.HLP beschriebene Heapkontrollstruktur - y una Teil dieser Struktur es wiederum el Handle des vorher con LocalAlloc erzeugten Speicherbereichs (en me, como dijo, 44564492).

El todo Sache läßt se mittels folgendem Code auch nochmals näher überprüfen:
KompilierenMarcaSeparación
Def @LocalAlloc(2) !"KERNEL32","LocalAlloc"
Def @LocalFree(1) !"KERNEL32","LocalFree"
Def @LocalLock(1) !"KERNEL32","LocalLock"
Def @LocalUnlock(1) !"KERNEL32","LocalUnlock"
Declarar HMEM&
LET HMEM&=@LocalAlloc($2 | $40,32)
PRINT HMEM&
Imprimir @Locallock(HMEM&)
Waitinput
@LocalUnlock(HMEM&)
@LocalFree(HMEM&)

Und auch así funktioniert lo:
KompilierenMarcaSeparación
Def @GlobalAlloc(2) !"KERNEL32","GlobalAlloc"
Def @GlobalFree(1) !"KERNEL32","GlobalFree"
Declarar HMEM&
LET HMEM&=@GlobalAlloc($2 | $40,32)
PRINT HMEM&
Waitinput
@GlobalFree(HMEM&)

14 kB
Kurzbeschreibung: BILD 1
Hochgeladen:21.05.2006
Ladeanzahl87
Descargar
82 kB
Kurzbeschreibung: BILD 2
Hochgeladen:21.05.2006
Ladeanzahl73
Descargar
46 kB
Kurzbeschreibung: BILD 3
Hochgeladen:21.05.2006
Ladeanzahl76
Descargar
71 kB
Kurzbeschreibung: BILD 4
Hochgeladen:21.05.2006
Ladeanzahl88
Descargar
69 kB
Kurzbeschreibung: BILD 5
Hochgeladen:21.05.2006
Ladeanzahl85
Descargar
70 kB
Kurzbeschreibung: BILD 6
Hochgeladen:21.05.2006
Ladeanzahl84
Descargar
69 kB
Kurzbeschreibung: BILD 7
Hochgeladen:21.05.2006
Ladeanzahl83
Descargar
 
21.05.2006  
 



Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

946 Views

Untitledvor 0 min.
Christian Hahn14.12.2011
Klaus Ernst08.02.2011

Themeninformationen

Dieses Thema ha 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie