Circumflex und die Console

Programmiersprachen, APIs, Bibliotheken, Open Source Engines, Debugging, Quellcode Fehler und alles was mit praktischer Programmierung zu tun hat.
Antworten
Benutzeravatar
BeRsErKeR
Establishment
Beiträge: 689
Registriert: 27.04.2002, 22:01

Circumflex und die Console

Beitrag von BeRsErKeR »

Hallo,

gibt es eine Möglichkeit beim Aufruf einer Konsolenapplikation unter Windows direkt ein Circumflex (^) in den Parametern zu nutzen? Soweit ich weiß dient es als Escapezeichen ähnlich wie der Backslash in C/C++/C#. Mein Ziel ist es reguläre Ausdrücke in der Konsole als Parameter zu übergeben. Z.B. wie bei grep. Dafür brauch ich das Zeichen als solches. Ich weiß, dass man einfach zwei Circumflex-Zeichen hintereinander schreiben kann, nur werden das den meisten Benutzer nicht wissen/beachten.

Ich dachte da z.B. an eine Option, die man beim Compilen des Programms (hier C#) setzen kann oder so. Aber ich vermute fast, dass das direkt von der CommandShell verarbeitet wird und das Programm keinen Einfluss darauf nehmen kann.

Weiß da jemand was genaueres?
Ohne Input kein Output.
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Circumflex und die Console

Beitrag von eXile »

Du willst tote Tasten abfangen. Das ist übrigens vom eingestellten Keyboard-Layout abhängig; in diesem Falle reagiert die Fensterfunktion (WndProc) der Konsole einfach anders (nämlich vermutlich nur auf WM_CHAR und nicht WM_DEADCHAR).

Ich vermute aber, das Konsolenfenster hat bereits seine eigene, feste WndProc, d.h. wahrscheinlich kannst du die nicht einfach ändern.
Benutzeravatar
BeRsErKeR
Establishment
Beiträge: 689
Registriert: 27.04.2002, 22:01

Re: Circumflex und die Console

Beitrag von BeRsErKeR »

Also Abfangen will ich nichts selbst. Ich werte einfach die Argumente aus die an die Main-Funktion übergeben werden und da fehlt das Zeichen bereits. Ich war nicht großer Hoffnung dass man das ändern kann.
Ohne Input kein Output.
Benutzeravatar
eXile
Establishment
Beiträge: 1136
Registriert: 28.02.2009, 13:27

Re: Circumflex und die Console

Beitrag von eXile »

Achso, sorry, dass hatte ich falsch verstanden. Das Verhalten der cmd.exe ist so eingebaut und gewollt, weil das Caret-Symbol der Escape-Character dort ist. Ist die Windows PowerShell eine Alternative (dort funktioniert das nämlich)?
Benutzeravatar
BeRsErKeR
Establishment
Beiträge: 689
Registriert: 27.04.2002, 22:01

Re: Circumflex und die Console

Beitrag von BeRsErKeR »

Leider nein, da ich eine vorkonfigurierte Windows-Umgebung nutzen muss und keinerlei Software nachinstallieren kann. Die PowerShell ist nicht drauf. Es sind recht alte WinXP-Installationen. Aber dennoch vielen Dank für die Hilfe.
Ohne Input kein Output.
Antworten