Alte Borland DOS Anwendung als Win32 Konsolenanwendung
-
Hallo zusammen,
ich habe folgendes vor:
Es gibt eine DOS Anwendung die Anfang der 90er Jahre mit Borland erstellt wurde (sogar mit farbigen Fehlerfenstern usw) und diese Anwendung benutzt eine .lib, in der verschiedene Funktionen (keine graphischen) hinterlegt sind, die in der main() verwendet werden.Diese lib soll nun mit Visual Studio erneuert werden. Dann sollen die alten Sourcen mit der neuen lib in VS2005 neu übersetzt werden und daraus soll eine unter Windows lauffähige Konsolenanwendung erzeugt werden.
Kann dies funktionieren?? Habe zB festgestellt, dass Borland ganz offensichtlich andere Standardheader hatte als nun VisualStudio. Ausserdem fiel mir auf, dass Borland bestimmte Syntax zulässt, die VS nicht mag und Borland #pragma Anweisungen akzeptiert, die VS auch ned kennt. Auf einem modernen WindowsPC auf dem das alte Borland installiert ist, läuft die alte DOS-Anwendung sogar. Aber wird das mit der neuen lib noch gehen?
Hat jemand Erfahrungen damit?
Danke.
-
Hallo Student,
Erfahrung habe ich damit nicht. Aber kann Dir einige Hinweise geben.
zunächst einmal etwas Grundlegendes:
-Echte MS-DOS-Programme konnte Visual C nur noch bis einschließlich Version 1.52 erzeugen. Das ist für heutige Zeiten schon ein Uralt-Relikt.
-Mit aktuellen Tools (egal ob Visual Studio oder anderes) müßtest Du eher eine Win32 Consolen Anwendung erzeugen. Das sieht ähnlich aus bei den alten MS-DOS.Des weiteren muß ich stillschweigend annehmen, daß Du von Borlands Turbo C++ sprichst (es gibt nämlich auch Borlands Turbo Pascal usw.). Spätestens mit Deinem erwähnten main() dürfte ich wohl richtig liegen.
Die Verwendeten Fenster-Bibliotheken (farbige Fehlerfenster usw.) bauten damals vermutlich auf direkte VGA-Speicherzugriffe auf. Das ist heute natürlich "verboten", da Windows sowas nicht mehr zuläßt.
Insofern wird es sicher ein immens größerer Aufwand werden, die alten Sourcen mit dem damaligen Erscheinungsbild auf heutige Entwicklungssysteme anzupassen.
Deshalb meine Empfehlung: Prüfe mal, ob es vielleicht sinnvoller ist, nur Deine nicht-graphische Library an heutigen Tools anzupassen. Und drumherum eine komplett neue und zeitgemäße Win32-Applikation daraus zu machen?
Just my 5 cents
Martin