8
0
Skriptentwickung/archive/Start-ThinClient/ThinClient_Installationsskript.cmd
2024-01-24 16:42:38 +01:00

204 lines
9.9 KiB
Batchfile
Raw Permalink Blame History

@echo OFF
TITLE DIGITAL DATA - ThinClient Installationsskript
ECHO Stapelverarbeitungsprogramm
ECHO ThinClient Installationsskript (nur mit Windows XP getestet).
ECHO -
ECHO Digital Data
ECHO Ludwig-Rinn-Strasse 16
ECHO 35452 Heuchelheim
ECHO Tel.: 0641 / 202360
ECHO E-Mail: info@didalog.de
ECHO -
ECHO Version 1.0.3
ECHO Letzte Aktualisierung: 12.10.2012
ECHO -
REM ------------------------------------------------------------
REM Definition der Variablen.
SET RemoteUserName=User
SET RemoteUserPasswort=remote
SET ComputerName=TC-%random%
REM SET RegisteredOwner=%ComputerName%
SET RegisteredOrganization=Firma
SET InstallQuelle=%CD%
SET ThinClient=%ProgramFiles%\System\ThinClient
REM ------------------------------------------------------------
REM ------------------------------------------------------------
ECHO Achtung - unbedingt beachten:
ECHO Bitte starten Sie dieses Skript unbedingt als Administrator.
ECHO Und bitte nicht aus einer Netzwerk-Quelle.
ECHO -
REM ------------------------------------------------------------
pause
cls
if not exist "%ProgramFiles%\System\ThinClient" ECHO Programmpfad wird nun angelegt. && goto PfadAnlage
if exist "%ProgramFiles%\System\ThinClient" ECHO Programmpfad bereits vorhanden. && goto ohnePfadAnlage
:PfadAnlage
mkdir "%ThinClient%"
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
ECHO Programmpfad wurde angelegt.
:ohnePfadAnlage
ECHO -
ECHO Die Dateien werden nun kopiert.
xcopy "%InstallQuelle%\*.*" "%ProgramFiles%\System\ThinClient" /V /Y
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
set /p ComputerName=Bitte bestimmen Sie nun den Namen des PCs/TCs (Der Default lautet %ComputerName%):
ECHO Der neue Name wird nun eingetragen.
REG ADD "HKLM\System\CurrentControlSet\Control\ComputerName\ComputerName" /v ComputerName /t REG_SZ /d %ComputerName% /F
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
set /p ComputerArbeitsgruppe=Bitte bestimmen Sie nun den Namen der Arbeitsgruppe des PCs/TCs:
ECHO Die neue Arbeitsgruppe wird nun eingetragen.
start "" /D "%CD%" ThinClient_Installationsskript.vbs %ComputerArbeitsgruppe%
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
set /p RegisteredOwner_Abfrage=Wollen Sie nun benutzerdefinierte Eingaben fuer die Computer Registrierung taetigen? (Ansonsten werden Standardwerte verwendet) (J/N)
if "%RegisteredOwner_Abfrage%" == "J" goto RegisteredOwner_Eingabe
if "%RegisteredOwner_Abfrage%" == "j" goto RegisteredOwner_Eingabe
if not "%RegisteredOwner_Abfrage%" == "J" goto RegisteredOwner_Anlage
if not "%RegisteredOwner_Abfrage%" == "j" goto RegisteredOwner_Anlage
:RegisteredOwner_Eingabe
set /p ComputerName=Bitte geben Sie nun den gewuenschten Namen an (Default lautet %ComputerName%):
set /p RegisteredOrganization=Bitte geben Sie nun noch die dazugehoerige Firma an (Default lautet %RegisteredOrganization%):
:RegisteredOwner_Anlage
ECHO -
ECHO Die neue Computer Registrierung wird eingespielt.
REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion" /v RegisteredOwner /t REG_SZ /d %ComputerName% /F
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion" /v RegisteredOrganization /t REG_SZ /d "%RegisteredOrganization%" /F
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
set /p RemoteUserName_Abfrage=Wollen Sie nun benutzerdefinierte Eingaben fuer das lokale Anmelde-Konto eingeben? (Ansonsten werden Standardwerte verwendet) (J/N)
if "%RemoteUserName_Abfrage%" == "J" goto RemoteUserName_Eingabe
if "%RemoteUserName_Abfrage%" == "j" goto RemoteUserName_Eingabe
if not "%RemoteUserName_Abfrage%" == "J" goto RemoteUserName_Anlage
if not "%RemoteUserName_Abfrage%" == "j" goto RemoteUserName_Anlage
:RemoteUserName_Eingabe
set /p RemoteUserName=Bitte geben Sie nun den gewuenschten Benutzernamen an:
set /p RemoteUserPasswort=Bitte geben Sie nun noch das dazugehoerige Passwort fuer das Konto %RemoteUserName% an:
:RemoteUserName_Anlage
ECHO -
ECHO Der neue Benutzer wird angelegt.
net user %RemoteUserName% %RemoteUserPasswort% /ADD /passwordchg:no /comment:"Dedizierter Auto-Login Benutzer" /expires:never
ECHO Das Passwort wird nochmals Ueberschrieben.
net user %RemoteUserName% %RemoteUserPasswort%
ECHO -
ECHO Der neue Benutzer wird in die Windows Registry als Auto-Login Konto eingetragen.
REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion\WinLogon" /v DefaultUserName /t REG_SZ /d %RemoteUserName% /F
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion\WinLogon" /v DefaultPassword /t REG_SZ /d %RemoteUserPasswort% /F
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
ECHO Aktiviere nun automatische Anmeldung am System.
REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion\WinLogon" /v AutoAdminLogon /t REG_SZ /d 1 /F
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
ECHO Lokale Sicherheitsrichtlinie wird angepasst, Passwoeter laufen nicht mehr ab.
net accounts /maxpwage:UNLIMITED
ECHO -
ECHO Deaktiviere Stromspareinstellung.
%windir%\system32\powercfg.exe /IMPORT ThinClient /FILE "%ThinClient%\ThinClient.pow"
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
%windir%\system32\powercfg.exe /SETACTIVE ThinClient
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
%windir%\system32\powercfg.exe /HIBERNATE OFF
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
ECHO Das Festplattenlaufwerk wird aufgrund der Eingabe umbennant.
%windir%\system32\Label.exe C: %ComputerName%
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
ECHO Das System, wird als - im Internet bereits Registriert - gesetzt.
REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion" /v RegDone /t REG_SZ /d 1 /F
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
ECHO Deaktiviere die Windows Willkommenseite.
REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion\WinLogon" /v LogonType /t REG_DWORD /d 0 /F
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
ECHO Deaktiviere nicht benoetigte Windows Dienste.
sc.exe config wuauserv start= disabled
sc.exe config Themes start= disabled
sc.exe config ERSvc start= disabled
sc.exe config srservice start= disabled
sc.exe config WZCSVC start= disabled
sc.exe config SharedAccess start= disabled
sc.exe config Schedule start= disabled
sc.exe config TermService start= disabled
ECHO -
ECHO Bitte geben Sie nun an, zu welchen Servern sich dieser ThinClient verbinden soll.
ECHO Die Werte die Sie eingeben, werden als Aufruf-Parameter dem Batch-Skript <20>bergeben, alternativ k<>nnen Sie dieser Werte direkt im Batch-Skript eintragen.
set /p RDSSrv01=Bitte geben Sie nun die IP-Adresse des RDS-Servers (Terminal Server) ein:
set /p RDSSrv02=Wenn ein FailSafe Server zur Verf<72>ngung stehen, koennen Sie diesen nun eingeben (IP-Adresse):
set /p RDSSrv03=Wenn noch ein FailSafe Server zur Verf<72>ngung stehen, koennen Sie diesen nun auch eingeben (IP-Adresse):
ECHO -
ECHO Installiere ThinClient Skript.
REG ADD "HKLM\Software\Microsoft\Windows NT\CurrentVersion\WinLogon" /v Shell /t REG_SZ /d "cmd /c start /d %ThinClient% /min ThinClient.cmd %RDSSrv01% %RDSSrv02% %RDSSrv03%" /F
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
ECHO Export des soeben erstellten Registry Eintrags.
IF EXIST "%ThinClient%\MOD_HKLM_Boot_mit_ThinClient_Skript.reg" del "%ThinClient%\MOD_HKLM_Boot_mit_ThinClient_Skript.reg"
reg export "HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon" "%ThinClient%\MOD_HKLM_Boot_mit_ThinClient_Skript.reg"
if %ERRORLEVEL% == 0 ECHO Der Befehl wurde erfolgreich ausgefuehrt.
if %ERRORLEVEL% == 1 ECHO Es ist ein Fehler aufgetreten. Bitte pruefen! && pause
ECHO -
ECHO Die Installation wurde abgeschlossen.
ECHO Die Einstellungen werden beim naechsten Neustart wirksam.
ECHO -
set /p OpenReadme=Soll nun die Readme Datei angezeigt werden? (J/N)
if "%OpenReadme%" == "J" start notepad.exe "%CD%\ThinClient_Readme.txt"
if "%OpenReadme%" == "j" start notepad.exe "%CD%\ThinClient_Readme.txt"
ECHO -
set /p RebootCMD=Soll nun neugestartet werden? (J/N)
if "%RebootCMD%" == "J" %windir%\system32\shutdown.exe -r -t 60 /c "Achtung dieser PC ist nach dem Neustart nur noch ein TC." && ECHO - && exit
if "%RebootCMD%" == "j" %windir%\system32\shutdown.exe -r -t 60 /c "Achtung dieser PC ist nach dem Neustart nur noch ein TC." && ECHO - && exit
if not "%RebootCMD%" == "J" ECHO Bitte starten Sie manuell neu! && ECHO - && pause
if not "%RebootCMD%" == "j" ECHO Bitte starten Sie manuell neu! && ECHO - && pause
exit