File öffnen, welches sich in einem anderen File befindet, ...
-
... ohne dabei ein temporäres File anzulegen. Ist sowas möglich?
Also sagen wir, dass ich ein File habe, nennen wir es datafile. In diesem datafile sind verschiedene Daten gespeichert. Nun möchte ich einen Teil dieser Daten als File öffnen. Zum Beispiel ist es ein JPEG. Kann ich nun irgendwie mitteilen, dass es dieses JPEG öffnen soll und dass es sich im File datafile befindet an der Stelle x und die Länge y besitzt?
Ich habe sowas noch nie gesehen ohne temporäre Files, daher habe ich leichte Zweifel, dass sowas möglich ist, aber fragen schadet ja nicht

Grüssli
-
Mit der MFC würde ich das als CMemFile lösen.
Defakto ist das aber keine echte Datei sondern eben nur eine entsprechende Überlagerung bestimmter virtuelle Funktionen, aber es wäre eine CFile
-
Martin Richter schrieb:
Mit der MFC würde ich das als CMemFile lösen.
Defakto ist das aber keine echte Datei sondern eben nur eine entsprechende Überlagerung bestimmter virtuelle Funktionen, aber es wäre eine CFile
Naja, aber es würde nur einem Programm gehören. Ich würde es ja gerne von einem anderen Programm aus, quasi über ShellExecute mit dem Standardprogramm dafür öffnen lassen oder mit sonst einem Programm, welches der Anwender ausgesucht hat

Die einzige Möglichkeit, welche ich sehe, ist das Mounten eines virtuellen Datenträgers. Leicht umständlich und da x64 Windows nun verdammt teure Treiberlizenzen benötigt, befindet es sich auch nicht in meinem Budgetrahmen

Muss ich es am Ende dann doch noch mit Linux versuchen, aber zuerst muss ich mit dem Linuxkernel Frieden schliessen. Der mag mich irgendwie nicht so, womöglich weil ich ein C++ Programmierer bin

Grüssli
-
Wenn Du die Datei (als Datei) systemweit brauchst (auch in anderen Prozessen), dann brauchst Du ein Dateisystem.
-
Martin Richter schrieb:
Wenn Du die Datei (als Datei) systemweit brauchst (auch in anderen Prozessen), dann brauchst Du ein Dateisystem.
Schon klar, ich hatte nur gehofft, dass man dies irgendwie "einfach" emulieren könnte. Also quasi Windows oder vielleicht eher dem NTFS vorgaukeln, dass da ein File ist.
Grüssli