Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Konsolenmodus umschalten geht nicht (https://www.delphipraxis.net/43476-konsolenmodus-umschalten-geht-nicht.html)

Luckie 4. Apr 2005 19:12


Konsolenmodus umschalten geht nicht
 
Ich habe hier ein Konsolenprogramm, welches eine Passworteingabe erfordert. Jetzt wollte ich mit der Funktion SetConsoleMode den Konsolenmodus auf ENABLE_ECHO_INPUT setzten. Nur leider scheint das irgendwie nicht zu gehen:

Delphi-Quellcode:
  Write('s: ');
  hConsole := GetStdHandle(STD_INPUT_HANDLE);
  GetConsoleMode(hConsole, ConsoleMode);
  SetConsoleMode(hConsole, ENABLE_ECHO_INPUT);
  writeln(SysErrorMessage(GetLastError));
  Readln(s);
  Writeln(s);
  Readln;
Als Fehlermeldung bekomme ich "falscher Parameter" und zwar nach SetConsoleMode(hConsole, ENABLE_ECHO_INPUT);.

toms 4. Apr 2005 19:17

Re: Konsolenmodus umschalten geht nicht
 
Hallo!

Vielleicht hilft dir das

Luckie 4. Apr 2005 19:22

Re: Konsolenmodus umschalten geht nicht
 
Hm, mal sehen.

Luckie 4. Apr 2005 20:17

Re: Konsolenmodus umschalten geht nicht
 
Jupp, so geht es:
Delphi-Quellcode:
    Write(rsPW);
    hConsole := GetStdHandle(STD_INPUT_HANDLE);
    GetConsoleMode(hConsole, ConsoleMode);
    SetConsoleMode(hConsole, ConsoleMode and not ENABLE_ECHO_INPUT);
    ReadLn(PW);
    SetConsoleMode(hConsole, ConsoleMode or ENABLE_ECHO_INPUT);
Dank dir noch mal.


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:58 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