GlobalAlloc(memBlockSize) , ab Adresse mit Daten befüllen

OP #7388535

Hallo, guten Tag.

hSArray = GlobalAlloc(memBlockSize) ptrSarray = GlobalLock( hSArray )

Ich möchte bitte ab Adresse von memBlockSize mit ASM Daten dort reinbringen. Es ist eine DLL.

Wie geht das bitte mit ASM?

Danke.


Function GlobalAlloc( dwBytes ) CallDLL #kernel, "GlobalAlloc", _GMEM_MOVEABLE As long, dwBytes As ulong, GlobalAlloc As long End Function

Function GlobalLock( hMem ) CallDLL #kernel, "GlobalLock", hMem As long, GlobalLock As long End Function

Function GlobalFree( hMem ) CallDLL #kernel, "GlobalFree", hMem As ulong, GlobalFree As long End Function

OP #7388550

Natürlich ist das nicht die Adresse. Es geht um die Adresse vom Speicher.

Warum die Gegenfrage? Wenn du eine Toilette suchst bei mir dann Frage ich auch nicht : dünne Soße oder harte Sachen auf meine Toilette. Ich helfe dann Einfach.

#7388596

Peter B. schrieb:

Es geht um die Adresse vom Speicher.

Ja? Und? Wenn Du verstehen würdest, was die beiden Funktionen GlobalAlloc und GlobalLock machen, dann müsstest Du diese Frage nicht stellen.

Du kannst ja mal in die /Dokumentation/ reinsehen:

https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-globalalloc

und

https://learn.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-locallock

Wie jemand, der das nicht von selbst auf die Reihe bekommt, dann irgendwas "mit ASM dort reinbringen" will, ist mir wirklich vollkommen schleierhaft.

#7389023

funkheld schrieb:

Warum die Gegenfrage? Wenn du eine Toilette suchst bei mir dann Frage ich auch nicht : dünne Soße oder harte Sachen auf meine Toilette.

Selbst wenn ich dabei ne knatternde Kettensäge in der Hand habe?

Was du fragst klingt so abstrus, da kann man nur Antworten "ergibt keinen Sinn". Und nicht alle haben Lust dazu, dir die Salamischeiben einzeln aus der Nase zu ziehen, insb wenn sie den Eindruck haben, dass du das Problem/die Antworten eh nicht verstehen würdest.

Die Funktion, um eine DLL in den Speicher zu bekommen, heißt LoadLibrary. Wenn du die nachprogrammieren willst, schau in den Quellcode von Wine.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 3 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.