Ich muß den bisherigen Anmerkungen leider noch etwas hinzufügen. Irgendwie schade, daß viele einfach unvollständiges posten (bitte nicht persönlich nehmen).
Im Prinzip sollten Deine Programme, die unter Windows 2000 mit Delphi erstellt worden sind, unter Berücksichtigung folgender Punkte laufen:
- Routinen zum User und Rechtemanagement sind unter Win95 und Nachfolger (98/ME) nur rudimentär vorhanden. Wenn Du mehr als den aktuell angemeldeten Nutzer ermitteln/ändern möchtest läßt sich Dein Programm nicht mehr unter Win95/98/ME ausführen.
- Davon betroffen sind auch Routinen, die Prozesse steuern und regeln (sie auch nächsten Punkt).
- Viele andere und spezialisierte API Routinen sind möglicherweise nicht verfügbar. Möchtest Du jene nutzen, dann schaue besser in der Hilfedatei vom Win SDK nach ob die Routine auch unter Win 95/98/ME existiert (unter Quickinfo). Eine gute Quelle ist auch das MSDN unter
www.microsoft.com/msdn
- Win95/98/ME hat eine Handle-Beschränkung! Benutzt Du viele Komponenten, die einen Fensterhandle benötigen (wie z.B. Eingabefelder, etc), solltest Du Dein Programm testweise laufen lassen. Beachte aber auch, daß dieses ein globaler Wert ist. Wenn Dein Programm viele Fensterhandles benötigt stehen den restlichen Programmen nur noch wenige Handles zur Verfügung und lassen sich nicht mehr starten bzw. stürzen ab. Unter Win NT und Nachfolger stehen quasi unbegrenzt Handles zur Verfügung.
- Es gibt mehrere Delphi Bibliotheken, die spezielle NT Routinen kapseln. Wenn Du im Detail wissen möchtest welche Routinen Du unter Windows 95 & CO nicht nutzen darfst würde hier ein Blick nicht schaden. Normalerweise solltest Du bei Deiner Programmierung hier aber nie auf Probleme stoßen, so daß Du diesen Punkt vergessen kannst.
Natürlich lassen sich neue Features der neuen Windowsversionen nicht auf alten Systemen portieren. Dennoch liefert Microsoft manchmal einige Routinen mit neuen Patches nach (wie z.B. das Winsock 2 Update für Win95)
- Memoryleaks sind unter Windows 95/98/ME viel eher ersichtlich, da das System schnell instabil wird oder gar abschmiert. Unter Win NT/../.. passiert dies seltener, da im Prinzip ähnlich wie unter Java ein Garbage Collector verwendete Speicherblöcke beim Beenden oftmals eigenständig frei gibt (aber leider auch nicht immer!)
- Bei Deiner Programmierung solltest Du auch berücksichtigen, daß die Verzeichnisstruktur geändert ist. Du solltest z.B. Systempfade nie absolut setzen - verwende immer nur die Pfade, die von den Windows API Routinen zurückgegeben werden.
- Achte auch darauf, daß Du unter NT auf bestimmte Pfade ggf. keinen oder nur eingeschränkten Zugriff hast - unter Win95/98/ME gibt es solche Einschränkungen nicht. Oft ist es auch vorgekommen, daß unter Win NT Dateizugriffe geblockt worden sind, bei denen Windows 98 einfach abgeschmiert ist.
- Auch eher wichtiger im umgekehrten Fall ist, daß Du mit Deinem Programm nur eingeschränkten Zugriff auf die Systemregistrierung unter NT/2000/XP hast - unter Win95/98/ME gibt es so etwas nicht!
Ich hoffe, daß hilft. Falls ich etwas vergessen haben sollte ergänzt bitte - wenn möglich in mehr als einem Satz, damit auch Hintergrundwissen vermittelt wird. Ansonsten könnte man auch gleich nur noch Polls zulassen!!
MfG
GPF
Bart hat folgendes geschrieben: |
Hallo,
ich würde gerne von Windows98 auf Windows2000 umsteigen.
Würde sich das irgendwie auf die Entwicklung von Programmen mit Delphi auswirken?
Laufen unter Windows2000 entwickelte und compilierte Programme auch unter Windows95/98?
Habt vielen Dank |