Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#34

Re: Sinn der Windows Fensternachrichten

  Alt 29. Jan 2007, 23:14
Kommen wir noch mal auf die Geschichte zurück. Unter 16-Bit Windows konnte jeder Prozess auf den gesamten Adressraum zugreifen. Auch auf den Adressraum von fremden Prozessen, weil es nur einen Adressraum gab. Nachrichten wie MSDN-Library durchsuchenWM_SETTEXT oder MSDN-Library durchsuchenWM_GETTEXT konnten also von sich aus auch auf den Speicher anderer Prozesse zugreifen, weil es einfach keine Barrieren gab. Mit 32-Bit Windows (Windows 95 und insbesondere Windows NT 3) hat sich das geändert. Jeder Prozes lief nun in einen eigenen Prozess und in Prozess übergreifender ugriff auf fremden Speicher ist nun nicht mehr möglich. Nun gan es aber viele Programme, die genau darauf aufgebaut haben, dass sie prozessübergreifen funktioniert haben. Dswegen hat Microsoft in seinen 32-Bit Betriebssystemen diese "alten" Nachrichten in einen gemeinsamen Adressbereich gemappt, damit diese Programme noch funktionierten. Darauf bauen selbst heute noch viele Programme auf. Bei den unter 32-Bit neu dazu gekommenen Steuerelemnten ist das nicht mehr so einfach möglich und Microsoft hat es auch nicht möglich gemacht, weil auf keine alten Programme Rücksicht genommen werden musste. OK, so viel dazu.

Windows ist ein kommerzielles Betriebssystem und die Firma Microsoft ist bestrebt Gewinn zu machen. Was meinst du wäre oder würde passieren, wenn sie diesen oben beschriebenen Mechanismuss nicht implementiert hätten oder jetzt plötzlich abschalten würden? Eine vile Zahl von Programmen und kleinen Tools würde nicht mehr laufen. Jetzt überleg mal, wie hoch die Akzeptanz bei den Käufern gewesen wäre, wenn sie erfahren würden, dass weder Programm A, B und C auf den neuen Windiows laufen würden?

Ich will gar nicht abstreiten, dass dieses System mit den Nachrichten nicht das sicherste ist. Aber das ist der Preis den man eben für die Bequemlichkeit und schönen Tools bezahlen muss. Aber es ist noch lange nicht so schlimm, wie uns glauben machen willst. Ein Dienst muss erstmal installiert werden und das geht nur mit Administratorenrechten. Auf Linux kann ich dir genauso ein Programm unterjubeln, dass auf Port 80 mit dem Internet kommuniziert, dazu muss ich keinen Browser fernsteuern. Das nur mal so als zwei Beispiele.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat