All posts tagged Explorer

Hallo zusammen,

in dem heutigen Post zeige ich euch, wie Ihr mit Windows Boardmittel Remotecomputer administrieren könnt.

Folgende Zusatztools kommen in dem Skript zum Einsatz:
PsTools von Windows Sysinternals –> http://technet.microsoft.com/de-de/sysinternals/bb896649.aspx
FreeCommander XE Portable –> http://www.freecommander.com/de/fc_downl_de.htm

Wenn man sich Tag täglich, mehrmals auf entfernte Computer schalten muss, um Administrative Aufgaben zu erledigen. Versucht man sich die Arbeit so einfach wie möglich zu machen.
Persönlich wird es sehr nervig, wenn man am Tag bis zu 100 Mal Domänen Admin + Passwort eingeben muss.

Das folgende Skript erleichtert mir hier sehr viel Tipparbeit.

Die PsTools lade ich mir aus dem Internet und kopiere alle *.exe Dateien in mein C:\Windows\System32 Verzeichnis.
Den FreeCommander XE Portable lade ich mir ebenfalls aus dem Internet und lege diesen zu meinem Batch Skript.
Für alle meine Batch und Powershell Skripte lege ich mir unter D:\ einen passenden Ordner an.

ScriptOrdner

 

 

 

 

 

So sieht es aus, wenn man die Batch Datei Remote-Verwaltung.cmd das erste Mal startet.

Remoteverwaltung

 

 

 

 

 

Folgendes sollte im Batch Skript angepasst werden:

REM ------------------------------------------------------------
:: Variablen definieren (Diese Varaiablen sollten angepasst werden)
REM ------------------------------------------------------------
set NetShare=Z:
set DomainAdminUser=DomainAdminUser
set Path "D:\Scripts\Remoteverwaltung\FreeCommander;%PATH%"
REM ------------------------------------------------------------

Für die Remote C$ Freigabe habe ich mir einen Netzlaufwerksbuchstaben als Variable definiert.
Mein Domänen Admin Konto wird ebenfalls als Variable definiert.
Der Skriptpfad für FreeCommander wird in die Variable %PATH% hinzugefügt.

Warum nutze ich den FreeCommander Portable und nicht den Windows eigenen Explorer, habe sehr viel ausprobiert bei der Skripterstellung. Leider ist es nicht möglich die explorer.exe über das Kontextmenü „Als anderer Benutzer ausführen“ oder auch über RunAs Befehlen zu starten. Sobald man als Normaler Domänenbenutzer am Computer angemeldet ist, lässt sich die explorer.exe nicht in einem Domänen Administrator Kontext starten. Das Problem hier, ist die (UAC) User Access Control von Windows 7/8. Leider habe ich noch keinen Weg gefunden wie man das umgeht, außer natürlich man meldet sich als Domänenadministrator am Computer an.

Um nun mit dem Skript arbeiten zu können, startet man die Batch Datei als Domänen Administrator, dazu klickt man mit gedrückter SHIFT Taste + rechter Maustaste auf die CMD Datei und wählt im Kontextmenü „Als anderer Benutzer ausführen“

Nun bekommt man folgenden Prompt angezeigt, bitte hier Remote Computername oder IP-Adresse eingeben.
Im zweiten Schritt wird man nach dem Domänen Administrator Kennwort gefragt um das Netzlaufwerk zu verbinden.
Zusätzlich wird noch eine Textdatei angelegt, in dem der Remote Computername eingetragen wird, dieses benötigt man, wenn man eine weitere CMD Konsole öffnen will und die Variable %RemoteHost% benötigt.

BatchStart

 

 

 

 

 

REM ------------------------------------------------------------
:: Eingabe des zu verwaltenden Computers
REM ------------------------------------------------------------
echo =====================================================================================================
echo Bitte Remote Computername oder IP-Adresse eingeben um das Skript starten zu koennen (z.B. localhost)
echo =====================================================================================================
set /p RemoteHost=Computername oder IP-Adresse eingeben:
echo RemoteHost=%RemoteHost% > %ScriptPath%\RemoteHostVar.txt

REM ------------------------------------------------------------
:: C$ Freigabe vom Remote Computer verbinden
REM ------------------------------------------------------------
if exist %NetShare% net use /delete %NetShare% /yes
net use %NetShare% "\\%RemoteHost%\c$" /persistent:no /user:%USERDOMAIN%\%DomainAdminUser%

Die wichtigste Sprungmarke ist die :START, die Batch Datei ist so geschrieben, dass sie in einen Loop steckt, solange bis man sie mit Exit verlässt.
Mit title und mode wird die CMD Konsole angepasst (mode 80 ist die Breite und 50 ist die Höhe der Konsole)

 

:START
title Computer Remoteverwaltung mit %RemoteHost%
mode 80,50
cls

Bei manchen Befehlen wurde ein Pause eingebaut, diese Pause verlässt man mit drücken einer Taste.

BatchPause

 

 

 

 

 

Bei Befehl 9 und 12 gibt es noch eine Besonderheit. Um auf die Remote Registry vom Remote Computer zugreifen zu können, muss auf dem entfernten System der Dienst RemoteRegistry gestartet sein,
dies passiert mit dem Befehl sc \\%RemoteHost% start RemoteRegistry und zum zweiten kann man dem Regedit Editor keinen Computernamen mit geben. Die muss leider manuell passieren.

Damit der Befehl sc funktioniert, muss auf dem entfernten System die Firewall Ports freigeschaltet sein — RPC (Ports 137/138/139/445) oder man regelt das Ganze über Gruppenrichtlinien –> http://skatterbrainz.blogspot.de/2009/08/enabling-windows-7-remote-management.html

Bei Befehl 12 wird ein neues CMD Konsolen Fenster geöffnet, in dem die LogIn ID des angemeldeten Benutzers angezeigt wird, wenn man nun den Benutzer vom Remotesystem abmelden möchte, muss man noch manuell logoff [ID] eingeben und mit Enter bestätigen.

Alle anderen Befehle im Skript sind hoffentlich selbst erklärend, sollte dem nicht so sein, könnt ihr jederzeit einen Kommentar hinterlassen.

Hier das Skript

@echo off
cls
 
REM ------------------------------------------------------------
REM Name: Computer Remoteverwaltung
REM Autor: Helmut Thurnhofer
REM Datum: 28. Juli 2014
REM ------------------------------------------------------------
REM Zusätzliche Befehle für die Computer Remoteverwaltung
REM ------------------------------------------------------------
REM WMIMgmt = start mmc C:\Windows\System32\WmiMgmt.msc /computer:localhost
REM Aufganbenplanung start mmc C:\Windows\System32\taskschd.msc /computer:localhost
REM Perfmon = start mmc C:\Windows\System32\perfmon.msc /computer:localhost
REM Freigegebene Ordner = start mmc C:\Windows\System32\fsmgmt.msc /computer:localhost
REM ------------------------------------------------------------
REM Verwendete Administrative Tools
REM ------------------------------------------------------------
REM PsTools von Windows Sysinternals --> http://technet.microsoft.com/de-de/sysinternals/bb896649.aspx
REM FreeCommander XE Portable --> http://www.freecommander.com/de/fc_downl_de.htm
REM ------------------------------------------------------------


REM ------------------------------------------------------------
:: Variablen definieren (Diese Varaiablen sollten angepasst werden)
REM ------------------------------------------------------------
set NetShare=Z:
set DomainAdminUser=DomainAdminUser
set PATH "D:\Scripts\Remoteverwaltung\FreeCommander;%PATH%"
REM ------------------------------------------------------------


REM ------------------------------------------------------------
:: Eingabe des zu verwaltenden Computers
REM ------------------------------------------------------------
echo ====================================================================================================
echo Bitte Remote Computername oder IP-Adresse eingeben um das Skript starten zu koennen (z.B. localhost)
echo ====================================================================================================
set /p RemoteHost=Computername oder IP-Adresse eingeben:
echo RemoteHost=%RemoteHost% > D:\Scripts\Remoteverwaltung\RemoteHostVar.txt


REM ------------------------------------------------------------
:: C$ Freigabe vom Remote Computer verbinden
REM ------------------------------------------------------------
if exist %NetShare% net use /delete %NetShare% /yes
net use %NetShare% "\\%RemoteHost%\c$" /persistent:no /user:%USERDOMAIN%\%DomainAdminUser%


:START
title Computer Remoteverwaltung mit %RemoteHost%
mode 80,50
cls


REM ------------------------------------------------------------
:: Anzeigetext in der Batchdatei definieren
REM ------------------------------------------------------------
echo.
echo ============================================================
echo Derzeit verbunden mit %RemoteHost%
echo ============================================================
echo.
echo 1) Remote Computer wechseln
echo 2) Ping %RemoteHost%
echo 3) nslookup %RemoteHost%
echo 4) FreeCommander (Explorer) starten
echo 5) Dienste MMC von %RemoteHost% starten
echo 6) Computerverwaltung MMC von %RemoteHost% starten
echo 7) Ereignisanzeige MMC von %RemoteHost% starten
echo 8) Prozesse von %RemoteHost% anzeigen
echo 9) Registry Editor starten
echo 10) neue CMD Konsole starten
echo 11) Wer ist an %RemoteHost% angemeldet
echo 12) Benutzer am %RemoteHost%  abmelden
echo 13) Computer %RemoteHost% neu starten
echo 14) Remoteunterstuetzung starten
echo 15) Exit
echo.
echo ============================================================


REM ------------------------------------------------------------
:: Auswahl wird in die Variable %choice% geschrieben
REM ------------------------------------------------------------
set /p choice=Auswahl eingeben (1-16):
 
if "%choice%"=="1" goto CHANGECOMPUTER
if "%choice%"=="2" goto PING
if "%choice%"=="3" goto NSLOOKUP
if "%choice%"=="4" goto FREECOMMANDER
if "%choice%"=="5" goto SERVICES
if "%choice%"=="6" goto COMPMGMT
if "%choice%"=="7" goto EVENTMGMT
if "%choice%"=="8" goto PROCESS
if "%choice%"=="9" goto REGEDIT
if "%choice%"=="10" goto OPENCMD
if "%choice%"=="11" goto LOGGEDON
if "%choice%"=="12" goto LOGOFF
if "%choice%"=="13" goto REBOOT
if "%choice%"=="14" goto REMOTEHELP
if "%choice%"=="15" net use z: /delete %NetShare% /yes && exit


REM ===================================================
:CHANGECOMPUTER
set /p RemoteHost=Bitte neuen Computername oder IP-Adresse eingeben:
echo RemoteHost=%RemoteHost% > D:\Scripts\Remoteverwaltung\RemoteHostVar.txt

if exist %NetShare% net use /delete %NetShare% /yes
net use %NetShare% "\\%RemoteHost%\c$" /persistent:no /user:%USERDOMAIN%\%DomainAdminUser%

goto START
REM ===================================================


REM =================================================== 
:PING
ping -n 2 -4 %RemoteHost%
 
echo.
echo Bitte Taste druecken um zurueck zum Auswahlmenue zu kommen
pause >nul
goto START
REM ===================================================


REM =================================================== 
:NSLOOKUP
nslookup %RemoteHost%
 
echo.
echo Bitte Taste druecken um zurueck zum Auswahlmenue zu kommen
pause >nul
goto START
REM ===================================================


REM ===================================================
:FREECOMMANDER
FreeCommander.exe

goto START
REM ===================================================


REM ===================================================
:SERVICES
start mmc "%SystemRoot%\System32\services.msc" /computer:%RemoteHost% 

goto START
REM ===================================================


REM ===================================================
:COMPMGMT
start mmc "%SystemRoot%\System32\compmgmt.msc" /computer:%RemoteHost%

goto START
REM ===================================================


REM ===================================================
:EVENTMGMT
start mmc "%SystemRoot%\System32\eventvwr.msc" /computer:%RemoteHost%

goto START
REM ===================================================


REM ===================================================
:PROCESS
sc \\%RemoteHost% start RemoteRegistry
pslist -t -s -r 5 \\%RemoteHost%
 
echo.
echo Bitte Taste druecken um zurueck zum Auswahlmenue zu kommen
pause >nul
goto START
REM ===================================================


REM ===================================================
:REGEDIT
sc \\%RemoteHost% start RemoteRegistry
%SystemRoot%\System32\regedt32.exe && mshta "javascript:var sh=new ActiveXObject( 'WScript.Shell' ); sh.Popup('Bitte ueber [Datei] --> [Mit Netzwerkregistrierung verbinden], den Computernamen eingeben. Fenster schliesst automatisch nach 10 Sekunden.',10, 'Remote Registry', 64 );close()"

goto START
REM ===================================================


REM ===================================================
:OPENCMD
start /i %COMSPEC% /separate /k (for /f "tokens=*" %%i in (D:\Scripts\Remoteverwaltung\RemoteHostVar.txt) do set "%%i")2>nul

goto START
REM ===================================================


REM ===================================================
:LOGGEDON
sc \\%RemoteHost% start RemoteRegistry
psloggedon \\%RemoteHost%
 
echo.
echo Bitte Taste druecken um zurueck zum Auswahlmenue zu kommen
pause >nul
goto START
REM ===================================================


REM ===================================================
:LOGOFF
sc \\%RemoteHost% start RemoteRegistry
start /i %COMSPEC% /seperate /k psexec \\%RemoteHost% query session && mshta "javascript:var sh=new ActiveXObject( 'WScript.Shell' ); sh.Popup('Um den Remote User abzumelden, bitte (logoff [ID]) eingeben und mit [Enter] bestätigen. Fenster schliesst automatisch nach 10 Sekunden.',10, 'Remote User Logoff', 64 );close()"

 
echo.
echo Bitte Taste druecken um zurueck zum Auswahlmenue zu kommen
pause >nul
goto START
REM ===================================================


REM =================================================== 
:REBOOT
sc \\%RemoteHost% start RemoteRegistry
psshutdown -r -t 5 \\%RemoteHost%
 
echo.
echo Bitte Taste druecken um zurueck zum Auswahlmenue zu kommen
pause >nul
goto START
REM ===================================================


REM =================================================== 
:REMOTEHELP
msra.exe /offerRA %RemoteHost%
 
echo.
echo Bitte Taste druecken um zurueck zum Auswahlmenue zu kommen
pause >nul
goto START
REM ===================================================

Download –> Remote-Verwaltung.zip

Also viel Spaß mit dem Skript.

Gruß Helmut

Um sich alle Systemaufgaben anzeigen zu lassen, haben wir jetzt drei Möglichkeiten.

1. Man klickt auf Start –> Ausführen und gibt folgenden Befehl ein –> shell:::{ED7BA470-8E54-465E-825C-99712043E01C}

image

2. Man öffnet ein Explorer Fenster mit Windows + E und gibt folgendes in der Adresszeile ein –>

shell:::{ED7BA470-8E54-465E-825C-99712043E01C}

image

3. Man legt sich einen Ordner an mit folgenden Namen

Ordnername.{ED7BA470-8E54-465E-825C-99712043E01C}

image

Und als Ergebnis, haben wir einen Überblick über alle Systemaufgaben.

image

Super Tipp von WinTotal –> http://www.wintotal.de/Tipps/index.php?id=1737

Vielen Dank und viele Grüße
Helmut

Wenn man oft genutzte Ordner und Anwendungen ablegen möchte, um sie schneller zugänglich zu machen. Kann man das realisieren wenn man das Explorer Fenster Computer öffnet. Hier ist genügend Platz für Verknüpfungen aller Art.

image

image

Wir öffnen einen Windows Explorer mit WIN + E –> Extras –> Ordneroptionen –> Registerkarte Ansicht –>  Ausgeblendete Dateien, Ordner und Laufwerke anzeigen aktivieren.

image

Danach wechselt man in den Ordner “C:\Users\<Username>\AppData\Roaming\Microsoft\Windows\Network Shortcuts” und kann da seine Verknüpfungen reinlegen.

image

Sollte die Verknüpfungen nicht mehr gebraucht werden, kann man per Rechtsklick diese wieder löschen.

Viele Grüße
Helmut