myGully.com Boerse.SH - BOERSE.AM - BOERSE.IO - BOERSE.IM Boerse.BZ .TO Nachfolger
Zurück   myGully.com > Computer & Technik > Programmierung
Seite neu laden

[BATCH] Input verstecken bzw als ***** anzeigen?

Willkommen

myGully

Links

Forum

 
Antwort
Themen-Optionen Ansicht
Ungelesen 23.09.09, 17:44   #1
BadFriend
Erfahrener Newbie
 
Registriert seit: Apr 2009
Beiträge: 149
Bedankt: 878
BadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt Punkte
Standard [BATCH] Input verstecken bzw als ***** anzeigen?

Hey,
Ich wollte wissen ob es möglich ist ein Input als */zahl anzeigen zu lassen?

Ich hab schon ein bisschen geggogelt aber dafür hab ich nur komplizierte "verfahren"
gefunden, die ich mit meinen kenntnissen noch nicht verstehen kann.

Eine weitere möglichkeit währe es den Input in der gleichen Farbe wie der Hintergrund anzeigen zu lassen.
Aber ich weiß auch nicht wie ich zwei verschiedene Farben aufeinmal "einstellen" kann.

Ich hoffe dass ihr meine Frage so gut genug versteht


BadFriend
BadFriend ist offline   Mit Zitat antworten
Ungelesen 23.09.09, 21:34   #2
nightmare1942
PC Doktor
 
Benutzerbild von nightmare1942
 
Registriert seit: Apr 2009
Ort: 127.0.0.1
Beiträge: 1.889
Bedankt: 900
nightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punktenightmare1942 ist schon ein Name im Untergrund. | 879 Respekt Punkte
Standard

ich weiß nicht, wie es beim batchen aussieht, aber bei webanwenungen musst du dem feld einen typ zuweisen. es gibt text, textarea, passwort und ein paar andere.

bei password werden die zeichen automatisch als *** angezeigt!!!
__________________
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
"95% aller Computerprobleme befinden sich zwischen Tastatur und Stuhl"
nightmare1942 ist offline   Mit Zitat antworten
Ungelesen 23.09.09, 23:16   #3
urga
Mitglied
 
Benutzerbild von urga
 
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 454
Bedankt: 137
urga ist noch neu hier! | 0 Respekt Punkte
Standard

mit reinen .bat-mitteln geht das mit den sternchen leider nicht.
ebenfalls geht es nicht vorder- und hintergrundfarbe auf den den selben wert zu setzen.
wenn das passwort feststeht oder in einer datei steht (oder so) könnte evntl. ein kleines C-programm helfen.

hab das hier im [ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ] gefunden:

passwd.bat:
Code:
@echo off

call:pwd pass
if "%pass%"=="dostips" (
echo.password accepted
) else (
echo.password denied
)
GOTO:EOF  


:pwd var title color -- shows a password dialog box
::                   -- var   [in]     - return variable
::                   -- title [in,opt] - dialog title, default is "Password:"
::                   -- color [in,opt] - color default is AB (Light Green on Light Aqua)
:$created 20060101 :$changed 20080226 :$categories Input,Password
:$source http://www.dostips.com
SETLOCAL
set "tit=%~2"
set "col=%~3"
set "pwd="
if not defined col set "col=EF"
if not defined tit set "tit=Password:"
set "f=%temp%\%~nx0.tmp~0.tmp"
start "%tit%" /wait cmd /c "mode con cols=24 lines=1&color %col%&set /p "in="&call echo.%%in%%>"%f%""
for /f "usebackq tokens=*" %%a in ("%f%") do set "pwd=%%a"
del /q "%f%"
ENDLOCAL&if "%~1" NEQ "" (SET %~1=%pwd%) ELSE ECHO.%txt%
EXIT /b
urga ist offline   Mit Zitat antworten
Ungelesen 24.09.09, 01:38   #4
urga
Mitglied
 
Benutzerbild von urga
 
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 454
Bedankt: 137
urga ist noch neu hier! | 0 Respekt Punkte
Standard

was hälst'n du davon:
Code:
@echo off
call \temp\read_passwd "bla x"
if errorlevel 1 goto passok
goto :eof

:passok
echo ok
[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]

getestet unter xp-32 und win7-64.

für interessierte, das c(++)-programm:
Code:
#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <string>


int _tmain(int argc, char* argv[])
{
	using namespace std;
	if (argc < 2) {
		cout << "usage read_passwd <passwd>\n";
		return 0;
	}
	

	string password;
	char ch;
    	const char ENTER = 13;
	const char BS = 8;
	cout << "enter the password: ";

    while((ch = _getch()) != ENTER)
    {
	if (ch == 3) { // ctrl-c
		return 0;
	}
	if (ch == BS) {
		if (password.length() > 0) {
			password = password.substr (0, password.length() -1);
			cout << BS << " " << BS;
		}
		continue;
	}
        password += ch;
        cout << '*';
    }
	cout << "\n";
	return strcmp (argv[1], password.data()) == 0;
}
urga ist offline   Mit Zitat antworten
Ungelesen 24.09.09, 10:11   #5
BadFriend
Erfahrener Newbie
 
Registriert seit: Apr 2009
Beiträge: 149
Bedankt: 878
BadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt Punkte
Standard

Cool. Vielen Dank für eure Antworten
Ich werde es die tage mal durchtesten
BadFriend ist offline   Mit Zitat antworten
Ungelesen 25.09.09, 22:39   #6
urga
Mitglied
 
Benutzerbild von urga
 
Registriert seit: Aug 2009
Ort: void* (*wtf[])(void **);
Beiträge: 454
Bedankt: 137
urga ist noch neu hier! | 0 Respekt Punkte
Standard

obiges prgramm vergleicht nur ein vorgegebenes passwort mit der eingabe und setzt den errorlevel entsprechend.

nach einigem nachforschen (jahrelang unter unix via sh und perl programmiert, da wird man bei win-batches wahnsinnig wenn man es nicht kennt)
bin ich auf folgendes gekommen:

das c-programm schreibt seine eingabe in eine temporäre datei, die das batch vorgibt, ausliest und gleich wieder löscht. evntl. geht das auch eleganter, hab aber nix gefunden.

.bat
Code:
@echo off
set tmpfile=%TEMP%\%DATE%%RANDOM%%RANDOM%.tmp
call \temp\file_passwd "%tmpfile%"
if errorlevel 1 goto passok

echo es gab fehler

goto :eof

:passok

FOR /f "delims=" %%i IN (%tmpfile%) do set PW=%%i
echo passwort=%PW%
del %tmpfile%

[ Link nur für registrierte Mitglieder sichtbar. Bitte einloggen oder neu registrieren ]
urga ist offline   Mit Zitat antworten
Ungelesen 28.09.09, 14:08   #7
Answer
Little Boy
 
Registriert seit: May 2009
Ort: BY
Beiträge: 20
Bedankt: 0
Answer ist noch neu hier! | 0 Respekt Punkte
Standard

Zwei farben einstellen ist einfach. gib mal in der CMD help color ein und durchlesen.

Hier mal ein beispiels***** für zwei farben:
Code:
@echo off
title Hier wird die farbe geändert
echo Beim fortsetzen werden zwei farben eingesetzt
pause
cls
color fc
echo zwei farben wurden eingesetzt
pause
cls
:anf
color fc
color cf
goto anf
Answer ist offline   Mit Zitat antworten
Ungelesen 11.10.09, 14:10   #8
BadFriend
Erfahrener Newbie
 
Registriert seit: Apr 2009
Beiträge: 149
Bedankt: 878
BadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt PunkteBadFriend ist unten durch! | -1688 Respekt Punkte
Standard

@Answer
Ich meine mit 2 Farben nicht Vorder-Hintergrundfarbe sondern dass der Text der angzeigt wird verschiedene Farben hat.
z.B.:
Code:
echo Blauer test
echo Roter text
BadFriend ist offline   Mit Zitat antworten
Antwort


Forumregeln
Du kannst keine neue Themen eröffnen
Du kannst keine Antworten verfassen
Du kannst keine Anhänge posten
Du kannst nicht deine Beiträge editieren

BB code is An
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist Aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:11 Uhr.


Sitemap

().