AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte Build-a-Batch Batchdateiassistent f. Administratoren
Thema durchsuchen
Ansicht
Themen-Optionen

Build-a-Batch Batchdateiassistent f. Administratoren

Ein Thema von Captnemo · begonnen am 31. Jul 2014 · letzter Beitrag vom 15. Mai 2015
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.381 Beiträge
 
Delphi 12 Athens
 
#5

AW: Build-a-Batch Batchdateiassistent f. Administratoren

  Alt 31. Jul 2014, 12:04
Joar, ich bastel auch manchmal noch mit *.CMD rum. (ist nur der neue Name für die *.BAT)

Da gibt es aber noch ein/zwei Befehlssätze, die man auch öfters mal gebrauchen kann.
Code:
CALL :ReadIni Project1.ini DisplayName ServiceName
CALL :Trim ServiceName %ServiceName% 
ECHO %ServiceName%
EXIT

:Trim
@REM @CALL :Trim VarName %VarName%
@SET %1=%2
@GOTO :EOF

:ReadIni
@REM @CALL :ReadIni FileName.ini ValueName VarName
@REM @ECHO ValueName = "%VarName%"
@FOR /f "tokens=2 delims==" %%a IN ('FIND "%~2=" %~1') DO @SET %~3=%%a
@GOTO :EOF
SLEEP kann man ganz gut über PING simulieren.



Den ErrorLevel prüft man (ich zumindestens) auch regelmäßig.
Code:
COPY a.txt b.txt
@IF ERRORLEVEL 1 ( ECHO. && ECHO FEHLER %ERRORLEVEL%: weiter mit beliebiger Taste && PAUSE > NUL )


Und sowas, wie das AdminManifest+UAC gibt es auch. (auf diesen Code bin ich fast schon genauso stolz, wie auf mein IF-ERRORLEVEL)
Code:
@REM Administratortest (Hoch=S-1-16-12288 oder Mittel=S-1-16-8192)
@IF /i "%1" == "-admin"  GOTO Admin
@WHOAMI /groups | FIND "S-1-16-12288" > NUL
@IF NOT ERRORLEVEL 1   GOTO Admin
@SET /P AdminName=Name des Admin-Kontos eingeben (nichts = "Administrator"):
@CALL :Trim AdminName %AdminName% 
@IF NOT DEFINED AdminName  SET AdminName=Administrator
RUNAS /user:%COMPUTERNAME%\%AdminName% "\"%~dpf0\" -admin"
@IF ERRORLEVEL 1 ( ECHO. && ECHO FEHLER %ERRORLEVEL%: weiter mit beliebiger Taste && PAUSE > NUL )
EXIT
:Admin

...hier nun der eigentliche Code...


Aber Achtung, vieles funktioniert ohne aktive Befehlserweiterung noch nicht.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz