Soviel ändert sich gar nicht, wie man meint. Schaut euch mal Windows 2000 an. 12 Jahre alt. So viel Interfaceänderungen zu Windows 7 z.b. hat es gar nicht gegeben.
Is nicht dein Ernst, oder?
Hier ein paar Stichworte:
Das kratzt zwar nur an der Oberfläche, ist aber auch nur was mir so einfiel. Versuch mal eine
GINA oder einen Mirror-Treiber zu schreiben der auf all diesen Betriebssystemen läuft. Dir könnte mit Schrecken auffallen, daß es GINAs nicht mehr gibt seit Vista und das bei den Treibern ein wenig mehr Vorkehrungen notwendig sind als deine Äußerungen vermuten ließen.
Über die Details am Kernel die sich sonst noch so geändert haben, bzw. dazugekommen sind, wollen wir mal nicht weiter reden, denn dort sind die Änderungen zum Teil noch gravierender. Und nur um mal ein schönes Beispiel zu geben:
MmGetSystemRoutineAddress war unter Windows 2000 verbuggt. Auch wenn die zurückgegebene Adresse nicht aufrufbar war, wurde manchmal
nicht NULL zurückgegeben. Solcherlei APIs sind es die man nur bedingt verwenden kann wenn der Treiber auf verschiedenen Systemen laufen muß.
Ich sehe zwischen den beiden OSen kaum einen Unterschied. Klar, Quickie-Bunti hat sich verändert, aber der technische Rest unter der Haube ist fast gleich geblieben.
Dann hast du leider nicht genau genug hingeguckt.
Fazit: nur weil du nicht in der Lage oder gewillt bist dir die Änderungen "unter der Haube" anzuschauen, verschwinden diese Änderungen nicht einfach
Ich kannte bis Windows 2003 die meisten APIs aus dem Bereich user32, kernel32, advapi32, shell32 und diversen anderen Bereichen, sowie diverse Interfaces nahezu auswendig. Vielleicht muß man dann erstmal die Liste der mit Vista und 7 hinzugekommenen Funktionen anschauen um zu begreifen wie weitgehend die Änderungen sind. Wohlgemerkt, die Grundlagen sind oft noch gültig - an sehr vielen Stellen haben sich aber auch einfach zusätzliche Einschränkungen ergeben. Es ist also wahrscheinlicher, daß ein Programm welches auf Windows 7 abzielt mit ein paar Vorkehrungen auch auf Windows 2000 läuft, umgekehrt aber vielfach fehlschlagen oder dank
Application Compatibility Shims (sowas wie Krücken) am Laufen gehalten werden - das übrigens bereits seit XP.
Ignorance is bliss? Ich denke eher
nicht