Zitat von
OregonGhost:
Mit
greifst du auf das Element e_lfanew in doshdr zu, und dann dereferenzierst du dieses Element. Du derefenzierst mit dem Sternchen e_lfanew, nicht doshdr, und e_lfanew ist vermutlich kein Zeiger, sondern ein long (rate ich jetzt mal, ohne die Struktur zu kennen). Der Pfeil in C++ bewirkt bereits eine Derefenzierung. Um auf ein Element einer Struktur zuzugreifen, die du als Objekt und nicht als Zeiger hast, benutzt man in C++ den Punkt. Korrekt wäre also entweder
, oder umständlicher
.
Edit:
Das, was Muetze01 schreibt, hat zwar nichts mit deinem Problem zu tun, ist aber ebenfalls etwas, was dir Kopfschmerzen ersparen könnte, weil du so ein Memory-Leak hast
hi oregonghost,
das was du vorgeschlagen hast habe ich auch schon probiert. leider produziert er da eine
Access violatio, die genau hier auftritt: ( e_lfanew = (*doshdr).e_lfanew; ).