In PureBasic bin ich noch Anfänger.
Ich bin heute dem PureBoard-Forum beigetreten, weil ich ein Problem habe, in dem ich nicht weiterkomme.

Ich habe in der DataSection eines Musterprogramms Programm1.exe einen Platzhalterstring, den ich bei Bedarf mit Hilfe einer Programm2.exe ersetzen möchte.
Beispiel:
Code: Alles auswählen
;=== Start von Programm1.exe ===
Restore Platzhalter
Read Austauschtext$
MessageRequester("Programm1.exe",Austauschtext$,0)
DataSection
Platzhalter:
Data.s "Dieser Text soll von Programm2.exe ersetzt werden"
PlatzhalterEnde:
EndDataSection
;=== Ende von Programm1.exe ===
;=== Start von Programm2.exe ===
Programm1$ = "Programm1.EXE"
If OpenFile(0,Programm1$)
laenge = Lof()
;Programm1.exe komplett in den Speicher einlesen
*MemoryID = AllocateMemory(laenge)
If *MemoryID
FileSeek(1)
zeichen = ReadData(*MemoryID, laenge)
EndIf
;Austauschtext im Speicher suchen und ersetzen
;?????????????????????????????????????????????
;Wie muss der Code hier aussehen, um im Speicher
;den gesuchten Platzhaltertext von Programm1.exe
;zu finden und zu ersetzen?
;Gibt es in PureBasic einen Befehl oder kennt
;jemand einen PureBasic-Code, die das ermöglicht?
;?????????????????????????????????????????????
;Speicherbereich wieder in Programm1.exe speichern
FileSeek(1)
WriteData(*MemoryID,laenge)
CloseFile(0)
EndIf
;=== Ende von Programm2.exe ===
Nach Aktualisierung schreibe ich den veränderten Speicherbereich zurück in die Programm1.exe.
Gibt es in PureBasic einen Befehl, der den Platzhalterstring im Speicher findet und ihn durch einen anderen String ersetzt oder kennt jemand einen Code, der dies ermöglicht?
Ich habe im Forum und in Codebibliotheken anderer PureBasic-Seiten schon nachgesehen, aber noch keine passende Lösung gefunden.
Kennt jemand eine einfache Lösung, die dies ermöglicht?[/code]