Hallo, ich habe ein altes Projekt mit dem Borland C++ Builder 4 erstellt. (Ein nicht all zu Komplexe grafische Anwendung) Die damals übersetzte Software läuft noch bis Win2000. Ich wollte mal von euch wissen, ob man die alten Sourcen evt. für Win7 einfach neu Übersetzen kann? Oder ob da gar nichts mehr passt, und man die Benutzeroberfläche neu erstellt und nur noch die alte Programmlogik verwendet?
RudiRatlos schrieb: > Die damals übersetzte Software läuft noch bis Win2000. die Frage ist warum? Ist es etwas noch eine 16Bit Anwendung? Wenn es schon 32bit ist, dann sollte sie sogar unter Windows 8 laufen.
Das ist ziemlich sicher eine 16 Bit Anwendung. Die aber komischerweise noch auf Win2000 läuft.
RudiRatlos schrieb: > Die aber komischerweise noch auf Win2000 läuft. dann müsste sie auch unter WinXp laufen. Erst bei Win7 wurde die 16bit Unterstützung ausgebaut.
Mein Turbo Pascal für Win 3.x läuft im WinXP-Modus von Win7-Pro x64. Ist teilw. ruckelig und bei Dateinamen mit Leerzeichen ist eh alles zu spät.
Danke werds nochmal versuchen. Müsste man für eine saubere Portierung nur die Variablen und Zeiger anpassen? Sind die ganzen alten Grafikfunktionen zu win7/8 Kompatibel, da ja heute alles mit grafischen Formeditoren gemacht wird.
RudiRatlos schrieb: > Müsste man für eine saubere Portierung nur die Variablen und Zeiger > anpassen? wenn es sauber Programmiert ist, dann musst gar nichts angepasst werden. Die Frage ist welche API für die Grafik verwendet wird.
Peter II (Gast) schrieb: RudiRatlos schrieb: >> Die aber komischerweise noch auf Win2000 läuft. > dann müsste sie auch unter WinXp laufen. Erst bei Win7 wurde die 16bit > Unterstützung ausgebaut. Die 16-bit Unterstützung ist auch in Win7 noch vorhanden, nämlich in der 32-bit Version, ganz ohne XP-Modus (wie bei der Win7 64-bit).
RudiRatlos schrieb: > Das ist ziemlich sicher eine 16 Bit Anwendung. > Die aber komischerweise noch auf Win2000 läuft. Sicher? Zumindest in der Dokumentation des C++ Builders 1 steht nichts davon, dass das Teil 16-Bit-Anwendungen erzeugen könnte und ich kann mich nicht daran erinnern, dass das jemals mit dem C++Builder möglich war (die 5er Version des C++ Builders läuft hier noch hin und wieder in einer VM). Allerdings wurde Borland C++ 5 mitgeliefert... damit hätten 16-Bit-Anwendungen erstellt werden können.
> Sicher?
Die Ntvdm.exe (virtual DOS Machine) startet jedenfalls.
Win3.1 war doch komplett 16bit oder?
Werd mich mal in den code einlesen und versuchen ihn mit einem aktuellen
Compiler zu übersetzen.
RudiRatlos schrieb: > Win3.1 war doch komplett 16bit oder? Sofern nicht Win32s installiert war oder es sich nicht um Windows NT 3.1 gehandelt hat ...
Hallo, ich betreibe grad was Ähnliches (Portierung von Turbo Pascal für Windows), aber da hat sich gezeigt, dass der Teufel eben im Detail liegt, nur ein Beispiel: zwar funktionieren Dateizugriffe mit _lopen, _lseek, _lread noch, sind aber obsolete, auch OpenFile kann noch nicht Unicode, aktuell ist CreateFile - d.h. alles umschreiben was mit Datei zu tun hat. Und wenn die Software noch auf 8.3-Datenamen eingestellt ist wird es sehr hässlich und fehleranfällig. Nächste Baustelle: Konfiguration - nix INI-Datei, Registry ist auch schon wieder überholt, aktuell gehört eine solche Datei z.B. in C:\Users\Administrator.000\AppData\Roaming\RK\TTManager\RKTTManager.INI. So könnte ich weitermachen, das Fazit ist: wenn man die Sache auf den Stand von Windows 7/8 bringen will, bleibt kein Stein auf dem anderen, nur die nackten Algorithmen bleiben, Aber das ist meistens nur ein kleiner Teil. Aber wie schon Konfuzius sagt, jedes Programm beginnt mit einer einzigen Anweisung. Georg
Borland c++4 hört sich auch nach OWL als Gui an .. Bau dir mit einem aktuellen Compiler eine neue Oberfläche und portiere dann eins nach dem anderen den Restcode da hinein. Oder frag mal bei Embarcadero ob der C++Builder XE6 dein altes Programm übersetzen kann.
Georg schrieb: > zwar funktionieren Dateizugriffe mit _lopen, > _lseek, _lread noch, sind aber obsolete, auch OpenFile kann noch nicht > Unicode, aktuell ist CreateFile - d.h. alles umschreiben was mit Datei > zu tun hat. Und wenn die Software noch auf 8.3-Datenamen eingestellt ist > wird es sehr hässlich und fehleranfällig. warum sollte man das umstellen müssen, 8.3 Dateinamen gibt es noch. Auch für Unicode funktioniert das. Auch das die obsolete spielt aktuell keine rolle. > Nächste Baustelle: Konfiguration - nix INI-Datei, Registry ist auch > schon wieder überholt, aktuell gehört eine solche Datei z.B. in > C:\Users\Administrator.000\AppData\Roaming\RK\TTManager\RKTTManager.INI. das macht doch Windows von selber, wenn das Programm eine ini Datei im Programmverzeichnis nutzt. Klar kann man das Programm komplett Umschreiben, aber die Frage ist was notwendig ist damit es läuft. Und da ist keiner deiner punkte wichtig.
Peter II schrieb: > warum sollte man das umstellen müssen, 8.3 Dateinamen gibt es noch. Das sind gar keine Dateinamen. Das sind 8.3-Kürzel. Und ich zumindest will keine Software mehr sehen müssen, die mir so etwas vorschreibt.
Rufus Τ. Firefly schrieb: > Und ich zumindest will keine Software mehr sehen müssen, die mir so > etwas vorschreibt. naja, wenn ich einige k€ für eine Umstellung bezahlen müsste, nur um lange Dateinamen zu nutzen würde ich das Geld sparen.
Hans-Georg Lehnard schrieb: > Borland c++4 hört sich auch nach OWL als Gui an .. Ja OWL wird verwendet..... > Bau dir mit einem aktuellen Compiler eine neue Oberfläche und portiere > dann eins nach dem anderen den Restcode da hinein. Darauf wird es wohl hinauslaufen.... > Oder frag mal bei Embarcadero ob der C++Builder XE6 dein altes Programm > übersetzen kann. Hab mal angefragt Besten Dank an alle
Embarcadero ist auch nicht soo günstig. Hast du denn schon eine Lizenz vor Ort verfügbar? Ansonsten würde das wohl auch die Kosten schnell in die Höhe treiben. Ansonsten könnte man es auch als Auftrag ausführen für einen mit der Lizenz. Quellcode und EXE könnten dann zurückfließen.
Muss ich mir überlegen, muss mir den Code mal genauer ansehen. Evt. versuche ich es mit QT (da schon damit gearbeitet), ist zwar blöd von Callbacks auf Signal,Slots umzustellen. Jedoch ist die Applikation nicht so wahnsinnig komplex.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.