Registriert seit: 1. Feb 2004
61 Beiträge
Delphi 6 Personal
|
Re: Access Violation bei Sendmessage nach einiger Zeit?!
2. Jan 2008, 16:43
Hallo und danke für die Antworten...
Um dem falschen Bild vorzubeugen...
Dass es nicht sinnvoll ist einfach etwas abzuschreiben ist mir klar - ich versuche auch stets derartiges zu vermeiden und die Beiträge zu kapieren anstatt sie blind anzuwenden.
Manchmal war mir aber kein anderer Weg möglich.
Zum "Sendmessage" habe ich hier im Forum auch zunächst gesucht und gelesen.
Dabei fiel es mir teilweise aber schwer aus der Vielzahl von Beispielen, die dann teilweise doch inhaltlich voneinander abweichen, die relevanten Dinge zu extrahieren.
Ausprobiert hatte ich auch verschiedene Varianten.
Es gibt auch Beispiele, die ein Unmap benutzen - aber eben auch welche ohne.
Es gibt welche mit Prüfungen - aber auch welche ohne.
Ich habe dabei aber kein Beispiel gefunden das (vielleicht liegt es an mir) hinreichend erklärt was z.B. das WM_User genau angibt oder warum bei dem CreateFileMapping($FFFFFFFF) und nicht etwas anderes steht.
Immer wenn ihr von der Hilfe scheibt, gehe ich davon aus, dass diejenige Hilfe gemeint ist, die ich vom Delphi-Editor über das Menu "Help/Delphi Help" über die passenden Links in der Programmgruppe "Start/Programme/Borland/Delphi6/Help" oder durch drücken von F1 auf dem Befehl aufrufen kann. Mir ist schon mehrfach aufgefallen, dass ich da verschiedene Begriffe nicht wiederfinde auf die verwiesen wird (z.B. MapViewOfFile).
Kann auch das an der Personal Edition liegen? - Wie dem auch sei.
Dass man schon auf die Datenvalidierung achten sollte ist mir auch klar. Ich war aber davon ausgegangen (da ich ihn selbst fülle), dass in dem String, den ich senden will immer etwas drin ist.
Dass das Mapping selbst auf NIL zu prüfen ist hatte ich nicht vermutet - muß man aber wohl bei solchen Arbeiten mit dem Speicher immer machen.
Ich lerne halt noch.
Ich habe nun Abfragen auf NIL implementiert und nutze ein Unmap an den entsprechenden stellen - mal sehen ob das hilft.
Vielen Dank.
|