2.9k Aufrufe
Gefragt in Skripte(PHP,ASP,Perl...) von
Hallo zusammen,

ich müsste ein Skript unter DosShell erstellen, dass für mehrere Dos Befehle für mich ausführt. Jedoch benötigen diese Befehle einen Benutzernamen und ein Passwort.
Diese könnte man natürlich direkt im Skript hinterlegen. Jedoch sehe ich das als eine nicht wirklich gute Lösung an.
Daher würde ich gerne den Benutzername und das PW nach dem Aufruf des Skriptes per Eingabe abfragen, was im Grunde auch ohne Probleme funktioniert. Nur hier ist der Schönheitsfehler, daher auch die Frage hier, das die Eingabe dann sichtbar wäre, was ich nicht unbedingt haben möchte. Daher mal die Frage, kennt jemand eine Möglichkeit, wie man hier eine verdecke Eingabe verwirklichen kann?

Mir ist es auch nicht wichtig, dass das ein DosShell Skript ist. Es könnte auch eine andere Form sein, jedoch müssen DosBefehle darin ausführbar sein.

Danke für die Hilfe...

6 Antworten

0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
Diese könnte man natürlich direkt im Skript hinterlegen
Du könntest auch das Skript aufrufen und als Parameter Benutzer und Passwort übergeben - dann steht es nirgends hardcodiert.

Eine "verdeckte" Eingabe ist in keiner mir bekannten Skriptvariante möglich, weder BAT, noch VBS oder WSH. Dafür müsste man schon ein eigenes Programm bemühen.
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo,

@son_quatsch: In VBS ist so etwas schon möglich. Wenn man ein Formular erstellt, in dieses Formular eine TextBox einsetzt und bei derTextBox-Eigenschaft "PasswordChar" das Zeichen * einträgt, dann wird jede Eingabe in dieser TextBox als Sternchen angezeigt.

Ob das michiy aber mit VBS haben will, weiß ich nicht.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von son_quatsch Experte (5.3k Punkte)
In VBS ist so etwas schon möglich. Wenn man ein Formular erstellt...
Wäre das nicht VBA? Das würde dann mindestens in einem Office-Dokument münden.

In VBScript gibt es keine GUI.
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo,

sorry, ich habe mich da verschrieben. Ich meinte VB (Visual Basic).

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
0 Punkte
Beantwortet von
hi,

vielen dank für die info's...

ich hab zwar noch nie ein skript in vb beschrieben, jedoch hört sich das für meinen falls nicht schlecht an... daher werde ich es ausprobieren...

nochmals vielen dank
0 Punkte
Beantwortet von kicia Mitglied (939 Punkte)
Wenn ich das Problem richtig verstanden habe, würde auch eine .hta Datei mit beispielsweise folgendem Inhalt helfen:

<html>
<head>
<hta:application id="DeineID" applicationname="DeinAppName" windowState="normal" scroll="no">
<style type="text/css">
* { font-family:Verdana, Arial, Helvetica, sans-serif; font-size:11px; margin:0; }
body { margin:16px;}
h1 { font-size:16px; margin-bottom:6px; }
#msgs { }
</style>

<title>Login</title>
<script type="text/javascript">

function init()
{
window.resizeTo( 300, 170 );
document.getElementById("pw").focus();
msg("type in password:");
}

function onSubmit()
{
window.close();
startApp();
return false;
}

function startApp()
{
var wssh = new ActiveXObject("WScript.Shell");
pw = document.getElementById("pw").value;
wssh.run("cmd /K echo. & echo -starte programm & echo -passwort: " + pw );
}

function msg( s ) { document.getElementById("msgs").innerHTML = s; }

</script>
</head>
<body onLoad="init()">
<h1>Login</h1>
<div id="msgs"></div>
<form action="" onSubmit="return onSubmit()">
<input id="pw" type="password">
</form>
</body>
</html>
...