mk-soft hat geschrieben:In Deiner Structure ist es doch ein ganz normaler String.
Wenn du die Structure frei gibst, darf du auch nicht mehr darauf zugreifen. Ist doch normal.
Warum solltest du auf den String als Pointer zugreifen?
Mit FreeStructure wird auch der String in der Structure freigeben. Somit kommt es auch nicht zu einen Speicherleck.
Also alles Gut.
Oder hast du Angst das jemand im Arbeitsspeicher Dein Programm hackt
Nein, das nicht. Es geht mir eigentlich darum, dass WENN sensible Daten in einem String stecken, das man diese dann auch aus dem Speicher
wirklich entfernt, oder halt unlesbar macht. Das kein Speicherleck entsteht ist mir klar.
Z.b. nimm ein Datenbank Programm. Du hast ein verschlüsseltes Passwort. Dieses musst du entschlüsseln, damit du auf die Datenbank zugreifen kannst. Nach dem "Login" Vorgang würde aber bei einem "nichtfreigeben" das unverschlüsselte Passwort noch im Speicher stehen.
Und daher wollt ich nun wissen, ob bei FreeStructure() oder auch FreeMemory() mit einem String passiert.
Fazit : Der String ist noch unverändert im Speicher. Ergo : Unlesbar machen wenn sensible Daten. (natürlich VOR dem freigeben
)
Im Grunde das gleiche Prinzip wie bei Festplatten. Das File ist solange "rettbar", solange es nicht überschrieben wurde.