mikrocontroller.net

Forum: PC-Programmierung Von Turbopascal/DOS nach Win-Anwendung


Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn man eine für DOS geschriebene Anwendung auf Windows portieren
möchte, wechselt man ja Programmierkonzepte
(prozedural->ereignisgesteuert). Gibt es eine
Möglichkeit/Verfahrensvorschlag/Tool etc, um das halbautomatisiert
umzumodeln und nicht alles neu programmieren zu müssen?

Eigentlich könnte das alte Programm doch in alter Form weiterbestehen,
wenn man die TastaturEingaben und BildschirmausgabenAusgaben Windows
(Api) konform gestaltet?!?

Danke

Autor: Hans Wilhelm (hans-)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
da wird dir außer recode nicht viel überbleiben..

weil die windows-api sehr wenig mit dos zu tun hat....

und das aller beste kommt ja noch.. unter windows kommst du ohne objekt
orientierte programmierung nur langsam in richtung ziel...

es geht schon... nur ab einer gewissen projekt größe ist das recht
umständlich...

wie komplex ist denn das ganze??

73

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Hans,

danke für Deine Antwort. Das Programm besteht aus einigen Pascal-Units.
Per Timer (Int 1C) wird alles (Datenverarbeitung, Tastatur, Bildschirm
etc) zyklisch abgearbeitet. Vom ISA-Bus (AD/DA-KArte) werden zyklisch
Messwerte geholt, Mittelwerte etc. berechnet und als Zahlenwert sowie
rudimentär grafisch ausgegeben und wieder dem DA-Wandler übergeben.
Über ne Anfrage per RS232 werden Messwerte gesendet. Messwerte werden
außerdem auf Platte protokolliert.

Vom ISA-Bus wird sich jetzt verabschiedet und ne PCI-Lösung und
Windows-look angestrebt.

In sofern wär's toll, wenn die ISA-Geschichten auf den PCI-Treiber
umgebogen werden könnten, der nur für WIN verfügbar ist und ebenso mit
zu schreinenden WinAPI-Tastaturein- u. Bildschirmausgaben, RS232-in/out
verfahren werden könnte.

Autor: Tobi H. (tobi-) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da du unter Win ja keinen direkten Hardwarezugriff hast, müsstest du
alle Hardwarezugriffe neu schreiben (pci und ich denk mal auch
rs232). Auch die grafische Ausgabe ist sicherlich nicht direkt
portierbar, da Win eine ganz andere Grafikschnittstelle besitzt. Da ist
es wirklich sehr fraglich, ob neu schreiben nicht
schneller/einfacher/besser ist

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hat jemand einen Tip, wie man unter VC6 Zeichen von der Tastatur
einliest, ohne mit 'getch' in einer Warteschleife zu hängen ?
bioskey() gibt es ja wohl nicht :-)

Autor: Tobi H. (tobi-) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vorher mit _kbhit testen, ob ein Zeichen da ist

Autor: ,,,, (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Da du unter Win ja keinen direkten Hardwarezugriff hast

Sicher hat man direkten Hardwarezugriff. Nur NT und XP z. B. macht da
zunächst mal einen Riegel vor. Durch frei vefügbare Treiber läßt sich
aber auch dieses Problem umgehen.

,,,, (QuadComma) = Hubert Müller*

*) Weil es ist ja wichtig, hier im Forum einen richtigen Namen zu
benutzen LOL

Autor: Michael (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Tobi:

Danke, das hat es gebracht !

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.