Unterschiede API-Aufrufe Windows 9x und NT?

Hallo,

ich muß dafür sorgen, daß mein Programm auch unter Windows NT läuft.

Gibt es irgendwo eine Liste, bei welchen API-Aufrufen es dort Probleme geben wird? Oder muß ich mich für jede Funktion einzelnd durch die MSDN-CD wühlen?

Gruß,
Martin Eckel

Hallo Martin.

Schau mal hier 'rein:

http://msdn.microsoft.com/library/en-us/dnnt40/html/…

http://msdn.microsoft.com/library/en-us/win32/hh/win…

Beide Seiten findest Du auch in der MSDN-Library. Suche nach „Avoiding Conflicts When Running Windows 95 Applications on Windows NT 4.0“ bzw. nach „Windows 95/98/Me Limitations“.

Wahrscheinlich lohnt sich auch weiteres Stöbern im Umfeld dieser Artikel.

Das Problem, eine (große) Windows95-Anwendung auf NT zu übertragen, hatte ich auch schon.
Meine Erfahrung ist, daß Probleme vor allem mit den Sicherheitsmechanismen von WinNT auftreten (Filesystem, Registry, direkter Hardwarezugriff). Da gehen plötzlich viele Sachen nicht mehr, weil man unter Win98/ME „einfach so“ programmieren kann, ohne sich über Leserechte, Schreibrechte etc. Gedanken zu machen. (Da rächen sich dann die Sünden der Vergangenheit.)

Ganz übel ist es, wenn das W95-Programm direkt auf Hardware zugreift. In unserem Fall war es so, daß das Win95-Programm externe Hardware via Parallelport ansteuerte, wobei nach einem proprietären Protokoll an den einzelnen Leitungen herumgewerkelt wurde (mittels _inp() und outp()). Unter NT geht da *nix* mehr, und wir mußten einen eigenen ParPort-Treiber für NT basteln :stuck_out_tongue:.

Probleme mit Datentypgrößen gibt es nicht, wenn die Anwendung sauber mit den Win32-Typen entwickelt wurde.

Viel Spaß beim werkeln wünscht

Ralf