O, danke. Hätte ich auch selber drauf kommen können. :wacko:
If oder If Not - das ist hier die Frage
-
- [ offen ]
-
Scritch -
15. November 2010 um 12:29 -
Geschlossen -
Erledigt
-
-
[autoit]
Global $sUser = EnvGet("Username")
[/autoit][autoit][/autoit][autoit][/autoit][autoit]
MsgBox($sUser)
Global $pfad = "G:\Installationen\Installationen.exe"
Global $abenutzername[3] = ["autoBert", "i2c", "m-obi"]_ArraySearch($abenutzername, $sUser)
[/autoit]
If @error Then
MsgBox(0, "angemeldet als " & $sUser, "Sie sind zur Installation nich berechtigt!")
Exit
EndIfDas geht doch auch einfacher, einfach versuchen einen Regkey unter HKLM zu schreiben, klappts ist er Admin und darf installieren.
Nein keine Rechte = Ende. oder sollen wirklich die Namen abgeprüft werden? Versethe den Sinn nicht wirklich weil die Berechtigungen löst man ja eigentlich mit Win.
Und die User die dann installieren dürfen kommen in die lokale AdminGruppe o.ä. DomänenGruppe in lokale AdminGruppe.RequireAdmin wäre auch ne Idee obwohl och den penetranten Dialog echt abschreckend finde.
-
Um nochmal ein vorhandenes Problem aufzugreifen ohne einen neuen Thread zu eröffnen: Wie bekomme ich die Zahl an erster Stelle nun hinaus?
Spoiler anzeigen
[autoit]Local $tmp = @ScriptDir & "\tmp.txt"
[/autoit] [autoit][/autoit] [autoit]
Local $atmp
Global $pfad = "G:\Installationen\Installationen.exe"
Global $abenutzername[4] = ["User1", "User2", "User3", "User4"]
_FileReadToArray($tmp, $atmp)
Local $bAllowedFor $r = 1 To Ubound($abenutzername) - 1
[/autoit] [autoit][/autoit] [autoit]
If $atmp = $abenutzername[$r] Then
$bAllowed = True
ExitLoop
EndIf
Nextif not $bAllowed then
[/autoit]
MsgBox(0, "", "Bitte Programm mit RunAs starten!")
exit
EndIf
In der tmp-Datei steht ein Benutzer der von meinem runas-Script darei geschrieben wurde. Nur wenn der Benutzer darin steht, soll das andere Script geöffnet werden können. Wenn das Script also ohne das RunAs-Script versucht wird aufzurufen, soll es eine Fehlermeldung geben. Prinzipiell kann ich die Schleife doch auch in Zeile 1 starten lassen mit For $r = 1, oder nicht? Funktioniert aber nicht. der Fehler wird immer ausgegeben, auch wenn einer der 4 Benutzer in der tmp.txt steht... -
_arrayDelete ist das Zauberwort
-