Bezeichnung
DefineVirtualFile -- definiert eine virtuelle Datei in einer echten Datei (V4.0)
Übersicht
virtfile$ = DefineVirtualFile(file$, offset, size, name$)
Beschreibung
Mit diesem Befehl können Sie eine virtuelle Datei in einer anderen Datei definieren, die in verschiedenen Situationen hilfreich sein kann. Sie arbeiten an einem Spiel und Sie wollen in einer großen Ressource-Datei alle Daten des Spiels speichern. Nun müssen Sie einige Daten aus dieser großen Ressource-Datei laden und das ist der Punkt, wenn DefineVirtualFile() ins Spiel kommt.

Im Argument file$ übergeben Sie den Namen der Datei, die die Quelle der virtuellen Datei sein soll. In den Argumenten offset und size definieren Sie den Speicherort der virtuellen Datei in der Datei file$. Die virtuelle Datei beginnt innerhalb der Datei file$ vom Dateianfang mit einem Versatz offset und endet bei Dateianfang+offset+size. Im Argument name$ übergeben Sie schließlich den Dateinamen für die virtuelle Datei. Das einzige, was hier wichtig ist, ist die Dateierweiterung. Der Name spielt keine Rolle, aber die Dateierweiterung muss die richtige sein, weil nicht alle Dateien leicht durch ihren Header identifiziert werden können.

DefineVirtualFile() gibt eine Zeichenfolge zurück, die die virtuelle Datei beschreibt. Sie können diese Zeichenfolge an alle Hollywood-Befehle übergeben, die einen Dateinamen akzeptieren. Natürlich werden nur Lesezugriffe bei virtuellen Dateien unterstützt. Der Versuch zu schreiben, wird bei virtuellen Dateien nicht funktionieren.

Siehe auch DefineVirtualFileFromString(), GetTempFileName() und UndefineVirtualStringFile().

Eingaben
file$
Quellendatei, in der eine virtuelle Datei definiert wird
offset
Startposition der virtuellen Datei innerhalb der Quellendatei
size
Größe in Bytes der virtuellen Datei
name$
Name und Erweiterung der virtuellen Datei (siehe oben)
Rückgabewerte
virtfile$
Zeichenkette, die die virtuelle Datei beschreibt
Beispiel
vf$ = DefineVirtualFile("hugeresource.dat", 100000, 32768, "image.png")
LoadBrush(1, vf$, {LoadAlpha = True})
Der obige Code definiert eine virtuelle Datei in "hugeresource.dat". Die virtuelle Datei hat eine Größe von 32768 Bytes und beginnt bei der Position 100000 der Datei "hugeresource.dat". Die virtuelle Datei ist ein PNG-Bild. Nachdem die virtuelle Datei beschrieben wurde, wird das Bild mit einem einfachen Aufruf von LoadBrush() geladen.

Navigation zeigen