Home des SQED32

Press to see this page in english

SQED Bugs

Damit sollte man Messages immer und nur dann senden, wenn die damit zu erreichende Aufgabe gelöst sein muß, bevor man selbst fortsetzen kann. Messages sind immer dann zu posten, wenn man für die weitere Bearbeitung der aktuellen Message nicht auf das Ergebnis angewiesen ist. Wer sicher gehen will, daß die Message auch irgendwann mal ausgeführt wird, überprüft den von WinPostMsg() zurückgegebenen Wert. Achtung: Das Übergeben von Pointern auf automatic Variable ist ein gefährliches Spiel. Auch wenn man die Message sendet ist dies keine defensive Programmierung und damit höchst störanfällig. Niemand kann garantieren, daß die empfangene Windowprozedure nicht ausgerechnet diesen Parameter mit einer weiteren Message postet und damit dann auf nicht mehr gültigen Speicher zugegriffen wird.

Achtung: Speicherbereiche, deren Adressen als Parameter an irgendwelche Messages übergeben werden, dürfen niemals der Speicherklasse auto angehören. Wenn irgenwelche Werte, die nicht in die 2 x 32 Bit der Messageparameter passen, übergeben weden müssen, dann ist entweder der Speicher mit malloc()/DosAllocMem() oder mit sonst einer Systemfunktion zu besorgen. oder die Speicherklasse static oder extern zu benutzen. Die Verwendung von auto Variablen führt später unter Garantie zu dem seltsamstem Programmverhalten, wobei ein sys3175 dann noch das harmloseste ist. Vorsicht: Speicherbereiche, die über Pointer mit Messages verschickt werden, sollten für diese Messages immer auf die selbe Art besorgt werden, also entweder static/extern - und damit nie ein free() mit malloc() - und damit immer ein free() mit einer anderen Systemfunktion - und damit eine den Spezifikationen dieser Funktion gemäße Freigabe des Speichers zur Folge haben.

Im Frühjahr 1997 verließ Joerg Stefan Sell, der Autor des SQED32 FIDO. Nachdem er diesen Entschluß gefaßt hatte, dachte er an seine vielen Anwender und suchte jemanden, der in der Lage ist, den SQED32 weiterhin zu pflegen und weiter zu entwickeln. Da ich mir keinen besseren Maileditor vorstellen kann, habe ich dann ganz laut "hier!" geschrien. :-) Seitdem haben sich einige einschneidende Änderungen ergeben. So bin ich seit nunmehr über einem Jahr freiberuflich tätig. Daruter hat leider die Weiterentwicklung des SQED ziemlich gelitten.