DLL => fstream => erst zwischen gespeichert und dann auf Festplatte?
-
Moin Leute
Also ich hab eine DLL in mehreren Prozessen und die schreibt was in ne Datei.
Allerdings wird das erst geschrieben wenn ich die DLL wieder unloade,vorher steht
nichts in der Datei.Sobald ich sie aber unloade ist die Datei voll o.O
Wird das irgendwie in nem Cache gespeichert und erst am ende auf die Platte geschrieben bei DLLs oder was?
Weiß jemand was ich da tun kann?
mfg Kounzn
-
Jo diese Klassen (std::fstream, usw) arbeiten mit einem sog. 'gepufferten Output' cachen also alles was man denen an Infos gibt. Abhilfe schafft hier die Methode flush mit der das Schreiben des aktuellen Inhalts in die Datei erzwungen wird.
Also in etwa so:std::fstream fsFile(...); fsFile << "BLAHHBLAHHBLAHH..."; fsFile.flush(); // danach steht "BLAHHBLAHHBLAHH..." sofort in der Datei.Hoffe, dass Du das meinst
.
-
Werd ich gleich mal ausprobieren sofern ich mich von meinem Bett (und meinem
Laptop) losreißen kann ;PAber ich hätt noch eine Frage:
In die Datei schreiben neben DLLs auch ein ganz normaler Prozess und dessen Output
steht sofort drinnen?!mfg
P.S:Warum is das Forum jetzt in so nem schwulem Lila?
