AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Tastatureingaben auf einem anderen (DOS)-PC simulieren

Tastatureingaben auf einem anderen (DOS)-PC simulieren

Ein Thema von kekel · begonnen am 23. Jan 2013 · letzter Beitrag vom 24. Jan 2013
Antwort Antwort
Seite 1 von 2  1 2   
kekel

Registriert seit: 3. Aug 2012
6 Beiträge
 
#1

Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 13:13
Hallo zusammen,

ich würde gerne 2 PC (PC_Win und PC_Dos) so miteinander verbinden, dass ich vom ersten PC(PC_Win) Tastaturbefehle auf dem zweiten PC (PC_Dos)simulieren kann.

Im Detail:
  • PC_Win = PC mit Windows-Betriebsystem. Auf diesem PC soll mein Programm laufen.
  • PC_Dos = PC mit einem anderen Betriebsystem, z.B. MS-DOS. Auf diesem PC befindet sich zur Ansteuerung einer Maschine eine Eingabemaske für Daten.

Die Daten, die ein Benutzer bislang in die Eingabemaske von PC_Dos via Tastatur eingibt, sind mir bekannt. Daher würde ich diesen Vorgang gerne automatisieren. Eigentlich habe ich recht viel Programmiererfahrung, aber hier stehe ich völlig auf dem Schlauch. In meiner ersten Überlegung dachte ich ganz unbedarft an eine Verbindung zwischen PC_Win und PC_Dos über die serielle Schnittstelle. Diese Verbindung klappt prinzipell auch, aber nur zwischen 2 Windows-PC die beide mein Programm aktiv haben. Da ich aber einfach so tun möchte, als ob PC_Win eine Tastatur ist (so soll es sich zumindest für den PC_Dos darstellen) ist diese Vorgehensweise am Ziel vorbei.

Ich hoffe ich konnte mich verständlich ausdrücken.
Kann mir irgend jemand mit ein paar Ideen auf die Sprünge helfen? Falscher Ansatz?

Ich freue mich über wirklich jeden Gedanken zu diesem Thema.

Ich programmiere zur Zeit mit Delphi-XE und Delphi 7
  Mit Zitat antworten Zitat
Benutzerbild von Olli73
Olli73

Registriert seit: 25. Apr 2008
Ort: Neunkirchen
742 Beiträge
 
#2

AW: Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 14:55
In meiner ersten Überlegung dachte ich ganz unbedarft an eine Verbindung zwischen PC_Win und PC_Dos über die serielle Schnittstelle. Diese Verbindung klappt prinzipell auch, aber nur zwischen 2 Windows-PC die beide mein Programm aktiv haben. Da ich aber einfach so tun möchte, als ob PC_Win eine Tastatur ist (so soll es sich zumindest für den PC_Dos darstellen) ist diese Vorgehensweise am Ziel vorbei.
Kannst du evtl. die Standardeingabe für das DOS-Programm auf COM1: umleiten?

Was hast du denn ansonsten noch für Anschlussmöglichkeiten außer COM-Port?
  Mit Zitat antworten Zitat
gammatester

Registriert seit: 6. Dez 2005
999 Beiträge
 
#3

AW: Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 15:08
Für sowas gibt es normalerweise den CTTY-Befehl, probieren kost ja nix
Gruß Gammatester
Zitat:
CTTY

Wechselt das zur Steuerung Ihres Computers verwendete Ein- /Ausgabegerät.

Verwenden Sie den Befehl CTTY, wenn Sie ein anderes Gerät zur Eingabe von
Befehlen verwenden möchten.

Syntax

CTTY Gerät

Parameter

Gerät
Bezeichnet das Alternativgerät, das MS-DOS verwenden soll. Gültige Werte
für den Parameter Gerät sind: PRN, LPT1, LPT2, LPT3, CON, AUX, COM1,
COM2, COM3 und COM4.

Zugehöriger Befehl

Weitere Informationen über das Wechseln des Eingabegeräts beim Festlegen
eines Befehlsinterpreters finden Sie bei der Beschreibung des Befehls
<COMMAND>.
  Mit Zitat antworten Zitat
kekel

Registriert seit: 3. Aug 2012
6 Beiträge
 
#4

AW: Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 17:25
@Olli73
das DOS-Programm bietet leider keine Möglichkeit die Eingabemöglichkeit zu ändern. Als weitere Anschlussmöglichkeit habe ich nur noch einen alten DIN-Tastaturanschluss ... aber wie kann man den denn unter Delphi ansteuern?

@Gammatester
Ja, über CTTY habe ich auch bereits nachgedacht. Es handelt sich hierbei aber um insgesamt drei Maschinen. Eine davon läuft unter MS-DOS 3.1 ... da gibt es CTTY noch nicht, glaube ich. Die zweite läuft unter OS9. Ja, ist schon richtig. OS9 gibt es tatsächlich als Betriebsystem.
Daher auch meine Idee dem jeweiligen Rechner einfach vorgaukeln dass mein Windows-PC eine Tastatur ist.


@alle
Danke für die schnelle Reaktion. Hat sonst noch jemand eine Idee?
  Mit Zitat antworten Zitat
kamel08
(Gast)

n/a Beiträge
 
#5

AW: Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 17:43
Hallo,

früher habe ich gerne mit dem Tastaturpuffer gearbeitet.
Mein Lösungsansatz wäre: Ein Pascal-Programm auf dem Dos-Rechner installieren,
das den Text in den Tastaturpuffer schreibt.
Ausgelöst wird das ganze von dem Windows-Rechner über TCP oder Parallele Schnittstelle etc.

Viele Grüße
  Mit Zitat antworten Zitat
Benutzerbild von Olli73
Olli73

Registriert seit: 25. Apr 2008
Ort: Neunkirchen
742 Beiträge
 
#6

AW: Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 17:50
das DOS-Programm bietet leider keine Möglichkeit die Eingabemöglichkeit zu ändern.
Also auch nicht in der Art "programm.exe < COM1:" ?

@Olli73
Als weitere Anschlussmöglichkeit habe ich nur noch einen alten DIN-Tastaturanschluss ... aber wie kann man den denn unter Delphi ansteuern?
Mit etwas (selbstgebastelter?) Hardware dazwischen sollte das funktionieren.
  Mit Zitat antworten Zitat
kekel

Registriert seit: 3. Aug 2012
6 Beiträge
 
#7

AW: Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 18:50
Hallo,

früher habe ich gerne mit dem Tastaturpuffer gearbeitet.
Mein Lösungsansatz wäre: Ein Pascal-Programm auf dem Dos-Rechner installieren,
das den Text in den Tastaturpuffer schreibt.
Ausgelöst wird das ganze von dem Windows-Rechner über TCP oder Parallele Schnittstelle etc.

Viele Grüße
Das ist sicher eine gute Idee ... funktioniert bei mir aber leider nicht.
Zum einen ist einer der Computer nicht mit Dos sondern mit OS9 ausgestattet. Und OS9 kennt meines Wissens keinen Tastaturpuffer. Und ein Programm zum füllen des möglicherweise doch vorhandenen Tastaturpuffers kann ich für OS9 nicht erstellen.
Dazu kommt: Nach der Eingabe einiger Werte erfolgt das Bestätigen mit "Enter" Und danach muss ich dem Programm Zeit zum arbeiten geben, also eine gewisse Zeit warten.

Danke
  Mit Zitat antworten Zitat
zeras

Registriert seit: 11. Mär 2007
Ort: Saalkreis
1.638 Beiträge
 
Delphi 12 Athens
 
#8

AW: Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 18:58
Hallo,

früher habe ich gerne mit dem Tastaturpuffer gearbeitet.
Mein Lösungsansatz wäre: Ein Pascal-Programm auf dem Dos-Rechner installieren,
das den Text in den Tastaturpuffer schreibt.
Ausgelöst wird das ganze von dem Windows-Rechner über TCP oder Parallele Schnittstelle etc.

Viele Grüße
Das ist, so denke ich, die beste Lösung. Wenn möglich, über serielle Schnittstelle die Codes übertragen und dann in den Tastaturpuffer schreiben. Dafür sollte es ja bei den alten Kisten noch Softwareinterrupts geben. Ich müßte im Keller noch ein altes Buch für DOS haben, wo alle Interrupts beschrieben sind. Wenn du willst schaue ich noch mal nach, ob ich das Buch finde. Da könnte ich dir vielleicht noch einige Tipps geben.

Wenn du über den DIN-Anschluss der Tastatur gehen willst, wirst du noch einen kleinen Controller zwischenschalten müssen, der die Befehle über eine serielle Schnittstelle empfängt und dann die Scancodes der Tastatur nachbildet. Wird aber ein wenig Arbeit machen. Aber vielleicht gibt es da schon fertige Lösungen bei den Hobbybastlern.
Matthias
Es ist nie falsch das Richtige zu tun!
- Mark Twain
  Mit Zitat antworten Zitat
kekel

Registriert seit: 3. Aug 2012
6 Beiträge
 
#9

AW: Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 19:00
das DOS-Programm bietet leider keine Möglichkeit die Eingabemöglichkeit zu ändern.
Also auch nicht in der Art "programm.exe < COM1:" ?
Das weiß ich jetzt nicht so ganz genau. Aber auch hier wieder das Problem mit dem OS9-Rechner. Die Lösung sollte am besten allgemeingültig sein. Also die Maschinenrechner vorzugsweise so lassen wie sie sind.

Zitat:
@Olli73
Als weitere Anschlussmöglichkeit habe ich nur noch einen alten DIN-Tastaturanschluss ... aber wie kann man den denn unter Delphi ansteuern?
Mit etwas (selbstgebastelter?) Hardware dazwischen sollte das funktionieren.
Hmmm... kann man denn mit einem Adapter vom Com-Port auf DIN-Tastaturanschluss kommen?
Dann wäre das doch vielleicht der richtige Ansatz. Kennt sich damit jemand aus?
  Mit Zitat antworten Zitat
kekel

Registriert seit: 3. Aug 2012
6 Beiträge
 
#10

AW: Tastatureingaben auf einem anderen (DOS)-PC simulieren

  Alt 23. Jan 2013, 19:07

Wenn du über den DIN-Anschluss der Tastatur gehen willst, wirst du noch einen kleinen Controller zwischenschalten müssen, der die Befehle über eine serielle Schnittstelle empfängt und dann die Scancodes der Tastatur nachbildet. Wird aber ein wenig Arbeit machen. Aber vielleicht gibt es da schon fertige Lösungen bei den Hobbybastlern.
Oje, ich glaube ich habe da ein gewaltiges Wissensdefizit. Ich hatte mir eigentlich sowas wie KeyCode bzw. Ascii-Code vorgestellt. Was bitte sind denn Scancodes? Wenn ich bei ner Tastatur auf eine Taste drücke, so sendet die ja irgendwas zum Computer. ... ... Genau das will ich auch senden
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz