Bis vor Kurzem habe ich noch FastStone Capture als mein Windows Screenshot Utility genutzt. Die Software wurde irgendwann kostenpflichtig und ich blieb dann auf der letzten kostenlosen Version des Programms sitzen.
Letztens las ich auf lifehacker von einer angeblich guten Screenshot Freeware: PicPick!

Ich habe die Software mittlerweile auf all meinen Computern installiert und bin wirklich überzeugt; die Software kann alles, was man von einem Screenshot Utility erwartet!

Übersichtliche Oberfäche in modernem Design:

Oberfläche, Nutzung und Dialoge an das bekannte Office Ribbon angelehnt:

Komplexer Bildeditor mit vielen Funktionen, Formen, Effekten, guter Handhabung, einfach top:

Vielen Einstellungsmöglichkeiten, u.A. automatischer FTP Server Upload und wichtige Shotcuts:

Wer also eine solche Freeware sucht, mit seiner aktuellen Software nicht so zufrieden ist oder einfach den King der Screenshots testen möchte: PicPick ist euer Kandidat!

Ich habe bereits vor einigen Monaten mal über die Erkennung von laufenden Prozessen via Batch geschrieben. Damals habe ich diese Erkennung in einfachen oder komplexeren If Else Blöcken verschachtelt. Ich habe nun gemerkt, dass dies zu Problemen und falschen Erkennungen führen kann!

Daher hier das Update: If Else Verschachtelungen können zwar ein paar Zeilen sparen aber verfälschen Errorlevel Rückgaben! In If Else Blöcken würde ich keine Programmbefehle schreiben, die mit dem Errorlevel arbeiten sollen. Lieber mit einigen gotos arbeiten.

Hier ein Beispiel:

REM Statt:
if /i %action%==start-server (
 tasklist |find /i "IQB_Server.exe"
 if not %errorlevel%==0 start IQB_Server.exe
 goto end
)

REM folgenden Code verwenden:
if /i %action%==start-server goto start-server
:start-server
 tasklist |find /i "IQB_Server.exe"
 if not %errorlevel%==0 start IQB_Server.exe
 goto end

REM Errorlevel in IF ELSE Blöcken können falsch sein!

Nochmal zum Erkennen von Prozessen via Batch: hier sind 3 verschiedene funktionierende Methoden:

REM %errorlevel% ist immer 0 wenn der Prozess existiert
REM 1 wenn nicht gefunden
REM am besten mit 'if not "%errorlevel%"=="0"' überprüfen

REM Variante 1:
tasklist | find /i "dropbox.exe"

REM Variante 2:
tasklist /FI "IMAGENAME eq dropbox.exe" 2>NUL | find /I /N "dropbox.exe">NUL
REM beide NUL Umleitungen optional

REM Variante 3:
tasklist /nh /fi "imagename eq dropbox.exe" | find /i "dropbox.exe" >NUL
REM letzte NUL Umleitung optional

English Version

A few months ago I already wrote a post about the detection of running processes with batch. In this post I used this detection code inside simple or more complex if-else block statements. I recently noticed possible false positives if doing so. Using %errorlevel% return codes inside if-else statements can lead to wrong return codes.

So, here’s the update: if else structures can save a few code lines but can also falsify errorlevel return codes! And since the detection of running processes rely on errorlevel returns you should use gotos instead of if else.

Here’s a code example:

REM instead of:
if /i %action%==start-server (
 tasklist |find /i "IQB_Server.exe"
 if not %errorlevel%==0 start IQB_Server.exe
 goto end
)

REM use this code:
if /i %action%==start-server goto start-server
:start-server
 tasklist |find /i "IQB_Server.exe"
 if not %errorlevel%==0 start IQB_Server.exe
 goto end

REM errorlevel return codes in if-else blocks may be wrong!

Here are 3 different working code examples for process detection:

REM %errorlevel% is always 0 if the process is running
REM and 1 if it is not running
REM best way is to check with 'if not "%errorlevel%"=="0"'

REM code 1:
tasklist | find /i "dropbox.exe"

REM code 2:
tasklist /FI "IMAGENAME eq dropbox.exe" 2>NUL | find /I /N "dropbox.exe">NUL
REM both NUL redirections are optional

REM code 3:
tasklist /nh /fi "imagename eq dropbox.exe" | find /i "dropbox.exe" >NUL
REM last NUL redirection is optional

via, via

Ich hatte in letzter Zeit öfter mit der Installation von Windows 7 auf älteren Computern zu tun. Damit meine ich Computer mit 1,6GHz Single Core, 1GB RAM, onboard Grafik und einer 40GB Festplatte.
Hier zusammengefasst ein paar Tipps & Tricks, die bei der Installation und Optimierung eines Windows 7 auf solchen Uralt-PCs helfen.

Wie viel Platz braucht Windows 7?
Je nach Version (Starter, Home, Pro, Enterprise) und je nach Architektur (32, 64) benötigt eine blanke Installation von Windows zwischen 4GB und 9GB Speicherplatz. Hinzu kommen die 2 Daten für die Auslagerung und den Ruhestand (pagefile und hyberfil), für gewöhnlich jeweils so groß wie der eingebaute RAM. Also ein frisch installiertes Windows 7 Home Premium 32bit mit 1,5GB RAM verbraucht etwa 7-8GB (4-5GB + 1,5GB + 1,5GB). Nun kommen noch große Datenmengen an Treibern, Windows Updates und temporären Daten hinzu. Dieses frisch installierte Windows 7 wächst von seinen 7-8GB auf 13GB allein nur durch die Installation aller Windows Updates und Service Pack 1 (Stand Feb 2013). Dazu kommen jetzt noch Treiber und Standardprogramme wie DirectX, Flash, Java, etliche Frameworks usw, die zum Betrieb aktueller Software oder Internetseiten gebraucht werden; 14-15GB für ein ausgestattetes System kann man also einplanen. Deswegen spricht Microsoft von einer Mindestanforderung von 16GB diese sind mindestens zu empfehlen. 20GB oder besser 30GB sollte die Partition fassen, wenn das System zukunftstauglich eingerichtet werden soll. Denn es folgen sicher weitere Updates, die Computerbenutzung schafft schnell neue Datenmengen, das Entpacken von Archiven benötigt ebenfalls temporären Platz auf der Systempartition.


Sollte ich alle Updates installieren?
Je nach Festplattenplatz und Nutzung des Computers empfiehlt es sich, die Windows Updates zumindest einmalig vollständig zu installieren. Updates sollen in erster Linie ja die Sicherheit und Stabilität verbessern. Aber auch wenn der Computer nicht in’s Internet gehen soll, also Sicherheit nicht so relevant ist, gibt es viele Updates die bestimmte Funktionen von Windows nachrüsten (z.B. die Erkennung von SD Karten mit mehr als 32GB) oder Voraussetzungen installieren (.NET Framework), die für den täglichen Gebrauch nützlich oder erforderlich sind.
Das Deaktivieren der Windows Updates verschafft dem PC etwas mehr Ruhe und entlastet das Netzwerk, ist aber grundsätzlich nicht zu empfehlen, da die Sicherheit des Computers stark beeinträchtigt wird.
Wenn der freie Platz der Partition zu klein wird, empfiehlt es sich die Sicherungsdateien der Updates zu löschen. Startet die „Datenträgerbereinigung“ des Systemlaufwerks und lasst die „Service Pack Sicherungsdateien“ aufräumen.


Performance-Tuning im „Leistungsinformationen- und tools“ (einfach in der Startmenü Suche eingeben):

Visuelle Effekte optimieren -> Für optimale Leistung anpassen: deaktiviert alle grafischen Spielereien, die vor allem Computer mit alter CPU und onboard Grafik in die Kniehe zwingen. Einzelne Effekte können auf Wunsch aktiviert werden, wenn man darauf Wert setzt. Zum Beispiel empfinden viele Menschen es als besonders anstrengend den Effekt „Kanten der Bildschirmschriftarten verfeinern“ zu deaktivieren. Wer nicht den kompletten Uralt Style erträgt kann auch „Visuelle Stile für Fenster und Schaltflächen“ wieder aktivieren.

Indizierungsoptionen anpassen -> Der Indizierungsdienst verbessert die Windows Suche durch das ständige Durchsuchen von Daten. Das kostet dauerhaft Leistung und hilft eher selten. Ich deaktiviere diesen Dienst auf den meisten PCs.
Entweder über „Dienste“ -> „Windows Search“ -> Beenden & Starttyp auf Deaktiviert stellen oder über die CMD mit den 2 Befehlen:

net stop wssearch
sc config wsearch start= disabled

Datenträgerbereinigung öffnen -> Wenn der PC normal läuft und auch noch einigen Neustarts wie gewünscht funktioniert kann man in der Datenträgerbereinigung einige überflüssige Daten loswerden. Am größten wird der Posten „Service Pack Sicherungsdateien“ sein, aber auch die „Temporary Internet Files“ und die Einträge der Fehlerberichterstattung können noch einige Megabyte enthalten. Lasst diese Punkt von Windows mal bereinigen. Alternativ ist auch der CCleaner ein super Tool zum Aufräumen.
Unter Windows XP gibt es im Ordner C:\Windows die berühmten $NtUninstall und $NtServicePackUninstall Ordner. Auch die können Weg um Speicher freizugeben, wenn alles läuft.


Dienste deaktivieren:
Dies ist immer ein kritischer Part, hier muss jeder selber entscheiden wie wichtig die Stabilität des Systems gegenüber dem Performancegewinn ist.

Hier eine Liste der Windows Dienste, die man (zumindest laut dem Autor des verlinkten Artikels) deaktivieren könnte: LINK.
Und noch eine Liste aller Dienste mit ihren Funktionen, empfohlenen Einstellungen und möglichen Nachteilen: LINK.

Allgemein kann man im „Dienste“ Dialog von Windows jeden Dienst erst Beenden (falls er läuft) und dann den Starttyp auf Manuell oder deaktiviert setzen.
Ich habe kaum einen Dienst deaktiviert (Windows Search, Design), kann hier also nicht viele Tipps geben. An dieser Stelle werde ich mich aber nochmal belesen und sicher ein paar Dienste wie Windows Error Reporting Service oder Windows Media Center Service Launcher nochmal überdenken. Denn außerhalb der Arbeit benötige ich viele Funktionen wirklich nicht.


Systemstart überprüfen:
Eine gute alte Möglichkeit die Leistung und vor allem den Systemstart zu erhöhen ist das Aufräumen der Autostart-Programme. Diese Programme werden automatisch mit Windows gestartet und bleiben meistens dauerhaft aktiv.

Das Tool „msconfig“ enthält den Tab „Systemstart“ und listet dort alle Programme auf, die mit Windows gestartet werden können. Alle gesetzten Haken zeigen aktive Autostarts an und sollten überprüft werden. Hier erfordert es ein wenig IT Hintergrund wissen, überflüssige Programme auszusortieren. Die Startup Application Knowledge Base verrät zur Not Informationen zu bekannteren Programmen.


Unbenötigte Windows Funktionen deaktivieren:
Viele Funktionen sind standardmäßig aktiviert, bleiben aber unbenutzt. Diese Liste der Funktionen findet ihr über die Startmenü Suche via „Windows-Funktionen aktivieren oder deaktivieren“, auch ein Menüpunkt in „Programme und Funktionen“.

Schaut die aktivierten Listenpunkte durch und deaktiviert auf Wunsch die Punkte. Ein Tooltip (bei Mouseover) verrät oftmals ausreichend, wofür die Funktion zuständig ist.
Ich habe Funktionen wie „Internetdruckclient“, „Windows DVD Maker“, „Windows Media Center“, „Plattform zu Windows-Minianwendungen“, „Remoteunterschiedskomprimierung“ und „Tablet-PC-Komponenten“ deaktiviert.

Update: Achtung! An dieser Stelle nicht „Windows Search“ deaktivieren, dann verschwindet die Suchleiste im Startmenü. Windows Search nur unter „Dienste“ deaktivieren.


Kleinkram:

Protokollierung deaktivieren: in der Registry unter HKEY_LOCAL_MACHINE\Software\Microsoft\WBEM\CIMOM die Einträge „EnableEvents“ und „Logging“ auf 0 setzen.

Werbeblocker: Werbung im Internet ist nicht nur anstrengend und nervig, sie verlangsamt auch den Aufbau einer Internetseite. Installiert Werbeblocker wie Adblock Plus in eurem Browser!

Registry Fehler suchen: CCleaner, RegCleaner und viele andere Programme suchen in der Registry nach fehlerhaften Einträgen und bereinigen diese. Das kann die Performance ebenfalls leicht verbessern.

Unnötige Programme deinstallieren: Programme und FUnktionen aufrufen und unnötige Programme deinstallieren, logisch.


Tuning Tools:
Das alles ist viel Arbeit und Fummelei, einige wenige kostenlose Tools übernehmen viele dieser Tuning Tipps. Für das Windows Tweaking ist aber 1 Freeware besonders gut geeignet und sehr zu empfehlen: Ultimate Windows Tweaker. Die kleine .exe Datei ist sehr mächtig, über 150 Tweaks können angewendet werden, sollte aber mit Vorsicht benutzt werden.


via, via, via, via, via

Der Ordner C:\Windows\Installer beinhaltet oftmals mehrere Gigabyte an Daten verteilt in vielen kryptischen Ordnern und viele .msi/.msp Dateien.
Es macht den Eindruck als könnte man den Ordner löschen, als seien das nur überflüssige Überbleibsel von ehemaligen Installationen; „weg damit“, oder so. So falsch ist das nicht, der Ordner enthält tatsächlich Daten von ehemaligen Installationen, diese sind aber nicht überflüssig sondern werden jedes Mal benötigt, wenn man installierte Programme ändern, reparieren oder deinstallieren möchte.
Der Ordner sollte nicht gelöscht werden, das wird so ziemlich überall im Netz empfohlen.
Das habe ich natürlich erst zu spät recherchiert, der Ordner ist auf meinem PC weg.

Es heißt, dass nach dem Löschen des Programms die meisten installierten Anwendungen nicht mehr verändert, repariert oder deinstalliert werden können.
Ich selber stelle seit dem vorerst nur fest, dass dadurch viele Icons verschwunden sind. Startmenü, Softwareauflistung, Explorer, überall fehlen die richtigen Icons.

So richtig tragisch ist das erstmal nicht, schön ist es aber auch nicht.
Testweise habe ich 3 Deinstallationen von Programmen, deren Icon in der Softwareauflistung gelöscht wurde, vorgenommen. Alle Deinstallationen verliefen ohne Probleme. Größere Schäden am System konnte ich glücklicherweise noch nicht ausmachen.
Ich empfehle die Löschung trotzdem nicht. 😉

Ich brauche die UNIX Shell auf meinem Windows System. Und es war erstaunlich einfach.

Cygwin heißt die sich praktisch von selbst installierende Software, die das komplette Linux Look & Feel mitbringt. Zusätzlich ermöglicht es der Installer auf einfachsten Wege hunderte Linux Pakete gleich mitzuinstallieren.

Nach der Installation liegt auf dem Desktop (wenn nicht während der Installation deaktiviert) eine Verknüpfung zum Cygwin Terminal, welcher einer Linux Umgebung nachempfunden ist. Von dort kann man wie auch im Linux Terminal Befehle absetzen, Programme starten, ausführen usw.

Es wird auch direkt eine Linux-ähnliche Ordnerstruktur erstellt und eingegebene Pfade entsprachend übersetzt, sodass auch das Dateisystem Linux-like anmutet:

MS-DOS style path detected: p:/Cygwin/home/Hannes/prog.sh
Preferred POSIX equivalent is: /home/Hannes/prog.sh

Die Ausgaben des Cygwin Terminals entsprechend nicht 1:1 den Ausgaben von Linux Distributionen, man sollte den dort entwickelten Code also nicht ohne Weiteres in Linuxumgebungen übernehmen.
Aber für erste Tests (und die 2 Linux Bash Vorlesungen meines Studiums) reicht es.

Der Prozess SeachIndexer.exe ist ein Prozess des „Windows Suche“ Dienstes. Dieser Dienst sorgt dafür, dass Ordner, Dateien, Dateieigenschaften und Dateiinhalte für die Windows Suche vorbereitet und optimiert. Ob man das braucht muss jeder selber entscheiden. Ich nutze die Windows Suche weder im Explorer noch in anderen Microsoft Programmen, der Prozess ist also eher lästig.

Indizierung beenden

Start -> (Systemsteuerung ->) Indizierungsoptionen -> Erweitert -> [Neu Erstellen]

Damit wird die bisherige Indizierungsdatenbank gelöscht. Anschließend:

Start -> Ausführen -> Services.msc -> "Windows Search" -> Eigenschaften -> [Beenden]

um den Dienst zu beenden und dann Starttyp auf „Deaktiviert“ stellen.
Damit sollten der Dienst und der Prozess lahm liegen.

Nur Startmenü indizieren

Eine sinnvolle Alternative zum Beenden, vorgeschlagen vom Leser Klemens, ist das Reduzieren der Indizierungsorte auf das Startmenü.
Geht dazu in die Indizierungsoptionen, klickt auf „Ändern“ und entfernt dort alle Orte bis auf das Startmenü.
So wird der Indizierungsdienst nicht mehr viel ackern und ihr könnt im Startmenü trotzdem all eure Programme über die Suchleiste finden.
Das Bild zeigt die Einstellungen der Indizierungsoptionen in denen nur das Startmenü als Indizierungsort ausgewählt wurde um die Auslastung durch die Windows Suche zu minimieren

Es kann hier und da mal nützlich sein: per Fernzugriff von entfernten PCs Informationen bekommen, Aktionen durchführen oder Zugriff erhalten.
Na gut, Letzteres kann man mit den RDP Tools von Windows schon genug. Für den Rest habe ich eine brauchbare kleine Software Suite entdeckt:
Desktop Central – Free Windows Admin Tools 2

Die Suite muss nur auf dem Admin PC installiert werden und die Clients brauchen 1 Computereinstellung, die sich lokal oder auch per Gruppenrichtlinie konfigurieren lässt.
Lokal: Start -> Ausführen -> gpedit.msc

Computereinstellungen/Administrative Vorlagen/Netzwerk/Netzwerkverbindungen/Domänenprofil

„Windows-Firewall: Eingehende Remoteverwaltungsausnahme zulassen“ aktivieren und ggf. den IP Bereich einschränken
via GPO:

Computereinstellungen/Richtlinien/Administrative Vorlagen/Netzwerk/Netzwerkverbindungen/Domänenprofil

„Windows-Firewall: Eingehende Remoteverwaltungsausnahme zulassen“ aktivieren und ggf. den IP Bereich einschränken

Danach kann der Admin mit der Suite auf folgende Features zurückgreifen:

Screenshots: