Seite 1 von 1

Binärdaten in eine Datasection einlesen?

Verfasst: 15.07.2017 20:14
von funkheld
Hallo,guten Tag.

Wie kann man eine Binärdatei in eine Datasection einlesen und mit Read auslesen ?
Diese soll dann in der Exe enthalten sein ohen sie neu laden zu müssen.

Wie geht das bitte.

Danke.
Gruss

Re: Binärdaten in eine Datasection einlesen?

Verfasst: 15.07.2017 20:42
von Bisonte
Das kommt ganz auf die Binärdatei an... bzw. was am Ende damit angestellt werden soll.

Normalerweise reicht ein

Code: Alles auswählen

DataSection
MeinFile:
IncludeBinary "EinBild.jpg"
MeinFile_Ende:
EndDataSection
Wenn man ein Bild einbinden möchte. Ausgelesen für das Programm wird es dann mit
CatchImage(#BildNummer, ?MeinFile, ?MeinFile_Ende - ?MeinFile)

Mit Programmen ("*.exe Dateien") macht es meist weniger Sinn, es sei denn man möchte sie auslesen
und auf Platte speichern. Ausführen solcher Programme ist aufwendig zu realisieren.

Re: Binärdaten in eine Datasection einlesen?

Verfasst: 15.07.2017 21:54
von funkheld
Kann man dann so etwas mit Read auslesen ?

Code: Alles auswählen

DataSection
MeinFile:
IncludeBinary "bindatei.bin"
MeinFile_Ende:
EndDataSection
Danke.
Gruss

Re: Binärdaten in eine Datasection einlesen?

Verfasst: 15.07.2017 22:23
von mk-soft
Braucht man nicht mit Read lesen. Kann mit Pointer verbinden...

Code: Alles auswählen

EnableExplicit

Structure udtData
  b.b[0] ; <-- 0 = keine prüfung vom Compiler auch maximalen Index
EndStructure

Define *MeinFile.udtData

*MeinFile = ?MeinFile

Define index, cnt 

cnt = ?MeinFile_Ende - ?MeinFile - 1
For index = 0 To cnt
  Debug *MeinFile\b[index]
Next

DataSection
  MeinFile:
  ;IncludeBinary "bindatei.bin"
  Data.b 1,2,3,4,5,6,7,8,9,10
  MeinFile_Ende:
EndDataSection

Re: Binärdaten in eine Datasection einlesen?

Verfasst: 16.07.2017 10:10
von funkheld
Danke für die Info.

Gruss