Programm A bekommt Bilder (TBitmap) von einer WebCam.
Programm B lässt eine Art Gesichtserkennung über eine
dll drüber laufen.
Die
dll exportiert eine Funktion, über die ein Bild per
Bitmap Handle geladen wird:
"LoadImageFromHBitmap(BitmapHandle: HBitmap)"
Die
dll ist nicht von mir und hat Speicherlecks + produziert nach einigen Aufrüfen hier und da frühlige Zugriffsverletzungen.
Da ein dynamischen einbinden (mit LoadLibrary, FreeLibrary) Probleme gemacht hat (FreeLibrary hing immer so ca. 5Sekunden) sah ich mich gezwungen den Teil mit der
dll in eine kleine Konsolenanwendung auszulagern, die dann vom Hauptprogramm mit Parametern aufgerufen wird.
Da die ganze Geschichte relativ zeitkritisch ist, wollte ich mir die Zeit sparen, das
Bitmap auf die Festplatte zu speichern und anschließend wieder zu laden, da ich es ja eh schon im
Speicher habe.
Da es von der WebCam kommt ist es ja auch erstmal nicht auf der Platte...
Kann ich nicht das
Bitmap über SaveToStream per MemoryStream oder so als MemoryMappedFile im
Speicher sichern und dann in dem anderen Prog wieder laden?
Am liebsten wäre mir natürlich, wenn ich die Daten direkt über Assign oder so zuweisen könnte.