Hey,
ich möchte ausschließlich aus dem MSDOS-Fenster (Eingabeaufforderung) unter XP die Buchstaben (ASCII-Zeichen) zeilenweise auslesen.
Es gibt folgende Probleme:
Wie kann ich die ID/ Handle des MSDOS-Fenster herausbekommen?
Wie kann ich Zeile für Zeile die Zeichen aus diesem Fenster auslesen?
Was soll das Ziel sein?
Ich starte eine Anwendung im MSDOS-Fenster.
In einem Thread läuft das PB-PRG und liest die erste Zeile aus.
Diese Zeile wird akustisch über eine Sprachausgabe ausgegeben.
Der Anwender drückt eine bestimmte Taste und die nächste Zeile wird eingelesen und in der Sprachausgabe ausgegeben.
Die Sprachausgabe ist schon realisiert.
Das das keine Spionageprogramm werden soll, erkennt ihr sicherlich und auch die Zielgruppe, oder?
Zeichen aus dem MSDOS-Fenster(XP) auslesen
Zeichen aus dem MSDOS-Fenster(XP) auslesen
PB5 / Spiderbasic / WB14 / Win7 / Win8.1 / Win10 / Debian 9
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
>> MSDOS-Fenster (Eingabeaufforderung)
MSDOS-Fenster <> Eingabeaufforderung, ausser unter Win9x
DOS-Emulation auf vielen Rechnern deaktiviert ist.
MSDOS-Fenster <> Eingabeaufforderung, ausser unter Win9x
Jetzt ist es DOS, aber das meinste bestimmt nicht, zumal dieseMicrosoft Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\Dokumente und Einstellungen\Thomas>command.com
Microsoft(R) Windows DOS
(C)Copyright Microsoft Corp 1990-2001.
C:\DOKUME~1\THOMAS>
DOS-Emulation auf vielen Rechnern deaktiviert ist.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Hallo TS-SOFT,
Es geht im ersten Schritt erstmal darum, wenn die MSDOS-Eingabeaufforderung mit "cmd" gestartet ist, mit dem PB-Prg das Handle zu ermitteln.
Dann starte ich eine MSDOS-Anwendung oder gebe z.B. den Befehl "dir" ein.
Jetzt habe ich ja im Fenster eine Anzeige.
Nun möchte ich mit dem PB-Prg diese Zeilen von oben nach unten zeilenweise auslesen.
Im dritten Schritt übergebe ich jeder Zeile einer Sprachausgabe.
Wenn z.B. in der ersten Zeile des Fensters "Hallo Thomas" steht, soll als Endziel "Hallo Thomas" akustisch ausgegeben werden.
Gleichzeitig bekommt die Brillzeile einer Blindentastatur die entsprechenden Signale.
So kann ein nicht sehender PC-Anwender den Computer bedienen.
Also nochmals konkret mein Anliegen:
Wie ermittel ich die Fenster-Id der MSDOS-Eingabeaufforderung?
Wie kann ich im geöffneten Fenster eine Zeile auslesen?
Hat von den Spezialisten nicht einer ansatzweise eine Idee?
Habe die WIN-API schon durchgeforstet, aber irgendwie komme ich dort nicht weiter.
Vielleicht hat ja einer eine Idee, wo ich speziell schauen sollte.
Auf diesen speziellen Rechner nicht.Jetzt ist es DOS, aber das meinste bestimmt nicht, zumal diese
DOS-Emulation auf vielen Rechnern deaktiviert ist.
Es geht im ersten Schritt erstmal darum, wenn die MSDOS-Eingabeaufforderung mit "cmd" gestartet ist, mit dem PB-Prg das Handle zu ermitteln.
Dann starte ich eine MSDOS-Anwendung oder gebe z.B. den Befehl "dir" ein.
Jetzt habe ich ja im Fenster eine Anzeige.
Nun möchte ich mit dem PB-Prg diese Zeilen von oben nach unten zeilenweise auslesen.
Im dritten Schritt übergebe ich jeder Zeile einer Sprachausgabe.
Wenn z.B. in der ersten Zeile des Fensters "Hallo Thomas" steht, soll als Endziel "Hallo Thomas" akustisch ausgegeben werden.
Gleichzeitig bekommt die Brillzeile einer Blindentastatur die entsprechenden Signale.
So kann ein nicht sehender PC-Anwender den Computer bedienen.
Also nochmals konkret mein Anliegen:
Wie ermittel ich die Fenster-Id der MSDOS-Eingabeaufforderung?
Wie kann ich im geöffneten Fenster eine Zeile auslesen?
Hat von den Spezialisten nicht einer ansatzweise eine Idee?
Habe die WIN-API schon durchgeforstet, aber irgendwie komme ich dort nicht weiter.
Vielleicht hat ja einer eine Idee, wo ich speziell schauen sollte.
PB5 / Spiderbasic / WB14 / Win7 / Win8.1 / Win10 / Debian 9
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
>> Es geht im ersten Schritt erstmal darum, wenn die MSDOS-Eingabeaufforderung mit "cmd" gestartet ist
Mit cmd wird die Eingabeaufforderung gestartet, aber kein MSDOS
Jedenfalls nicht unter W2K/XP usw.
Nur mit command wird DOS, bzw. DOS-Emulation gestartet!
Mit cmd wird die Eingabeaufforderung gestartet, aber kein MSDOS

Jedenfalls nicht unter W2K/XP usw.
Nur mit command wird DOS, bzw. DOS-Emulation gestartet!
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Thomas, ok, also command.
@edel: da werde ich mal genauer schauen
Trotzdem bleibt das Problem:
(Jetzt korrekt nach Thomas Hinweis)
Also nochmals konkret mein Anliegen:
Wie ermittel ich die Fenster-Id bei Aufruf von "command"?
Wie kann ich im geöffneten Command-Fenster eine Zeile auslesen?
Hat von den Spezialisten nicht einer ansatzweise eine Idee?
Habe die WIN-API schon durchgeforstet, aber irgendwie komme ich dort nicht weiter.
@edel: da werde ich mal genauer schauen
Trotzdem bleibt das Problem:
(Jetzt korrekt nach Thomas Hinweis)

Also nochmals konkret mein Anliegen:
Wie ermittel ich die Fenster-Id bei Aufruf von "command"?
Wie kann ich im geöffneten Command-Fenster eine Zeile auslesen?
Hat von den Spezialisten nicht einer ansatzweise eine Idee?
Habe die WIN-API schon durchgeforstet, aber irgendwie komme ich dort nicht weiter.
PB5 / Spiderbasic / WB14 / Win7 / Win8.1 / Win10 / Debian 9