madmax55
Cadet 4th Year
- Registriert
- Dez. 2004
- Beiträge
- 116
Sers,
bin gernade dabei ein programm in Assembler (MASM) zu schreiben, dass ein bitmap einliest und auswertet, also muss ich auf jeden einzelnen pixel zugreifen können
zuerst hab ich die datei eingelesen, größe bestimmt und in den ram geladen. soweit so gut...
nun zu meinem problem: wie kann ich auf den speicherbereich zugreifen, den pointer hab ich, nur iss der ein DWORD?? da kann ich ja nur auf 64K zugreifen? und mit welchen befehlen kann ich auf jedes einzelne byte des speicherbereichs zugreifen?
hier ein ausschnit aus meinem code:
schonmal thx
PS: hab mind. 4 stunden im inet rungekramt un nix nützliches gefunden...
bin gernade dabei ein programm in Assembler (MASM) zu schreiben, dass ein bitmap einliest und auswertet, also muss ich auf jeden einzelnen pixel zugreifen können
zuerst hab ich die datei eingelesen, größe bestimmt und in den ram geladen. soweit so gut...
nun zu meinem problem: wie kann ich auf den speicherbereich zugreifen, den pointer hab ich, nur iss der ein DWORD?? da kann ich ja nur auf 64K zugreifen? und mit welchen befehlen kann ich auf jedes einzelne byte des speicherbereichs zugreifen?
hier ein ausschnit aus meinem code:
PHP:
invoke CreateFile,ADDR pathCaptureBitmap,\
GENERIC_READ,\
FILE_SHARE_READ,\
NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,\
NULL
mov hFile,eax
invoke GetFileSize,hFile,NULL
mov maxSize,eax
invoke GlobalAlloc,GMEM_MOVEABLE or GMEM_ZEROINIT,maxSize
mov hMemory,eax
invoke GlobalLock,hMemory
mov pMemory,eax
invoke ReadFile,hFile,pMemory,maxSize,ADDR SizeReadWrite,NULL
invoke Sleep,200
;push dword ptr [pMemory]
mov eax,[pMemory] ; geht das so? um die ersten 4 byte auszulesen.
mov dtest,eax
schonmal thx
PS: hab mind. 4 stunden im inet rungekramt un nix nützliches gefunden...
Zuletzt bearbeitet: