Der Internet Explorer und seine Prozesse

Für die Browser-basierte UI-Testautomatisierung ist ein gewisses Grundverständnis der Browsertechnologie sinnvoll, daher hier eine kurze Einführung zur Prozessverwaltung des Internet Explorers.
Ab dem Internet Explorer 8 wurde ein neue neue Prozessverwaltung eingeführt. Microsoft nennt dieses Konzept Loosely-Coupled Internet Explorer (LCIE). Dies, weil der Crash einer Website in einem Tab nicht zum Crash des gesamten Browsers führen soll. Startet man also den Internet Explorer (es öffnet sich i.d.R. nur ein Tab) und schaut nach dessen Prozessen im Task Manager findet sich dort ein iexplore.exe und ein iexplore.exe *32. Der iexplore.exe ist der Hauptprozess, in dem der Frame (also das eigentliche rohe Fenster), die Favoritenleiste und die Adressleiste residieren. Der iexplore.exe *32 ist ein Prozess, in denen der Tab residiert. Öffnet man nun weitere Tabs, öffnen sich gg.falls weitere iexplore.exe *32-Prozesse. Wieviele Prozesse für die offenen Tabs geöffnet werden, entscheiden mehrere Faktoren (verfügbarer RAM, Zonenzugehörigkeit der geöffneten Websites, usw.)
Wer das Obige „erleben“ will, beendet einen iexplore.exe *32 per Taskmanager und schaut sich gleichzeitig die Tabs im Internet Explorer an. man sieht, dass kurze Zeit später ein neuer iexplore.exe *32 auftaucht und gleichzeitig im Browser die Webseite im entsprechenden Tab(s) neu geladen wird. Wer den iexplore.exe-Prozess beendet, schließt den Internet Explorer hingegen komplett.
Wer die entsprechenden Prozesse noch im Output des Visual Studios (New Project -> Console Project) mittels C# ausgeben möchte:

using System;
using System.ComponentModel;
using System.Diagnostics;
using System.Runtime.InteropServices;
class InternetExplorerChecker
{
    public static void Main()
    {
        Process[] allProcesses = Process.GetProcesses();
        foreach (Process process in allProcesses)
        {
            if (!process.ProcessName.Contains("iexplore")) continue;
            bool isProcess64Bit = ProcessBitnessChecker.Is64BitProcess(process);
            String processInfo = process.Id + ": " + process.ProcessName + " (isProcess64Bit: " + isProcess64Bit + ")";
            System.Diagnostics.Debug.WriteLine(processInfo);
        }
    }
}
static class ProcessBitnessChecker
{
    [DllImport("kernel32.dll", SetLastError = true, CallingConvention = CallingConvention.Winapi)]
    [return: MarshalAs(UnmanagedType.Bool)]
    public static extern bool IsWow64Process([In] IntPtr processHandle, [Out, MarshalAs(UnmanagedType.Bool)] out bool wow64Process);
    public static bool Is64BitProcess(this Process process)
    {
        if (!Environment.Is64BitOperatingSystem)
            return false;
        bool isWow64Process;
        if (!IsWow64Process(process.Handle, out isWow64Process))
            throw new Win32Exception(Marshal.GetLastWin32Error());
        return !isWow64Process;
    }
}

Quelle des P/Invoke Snippets: http://stackoverflow.com/a/3576797/1777526

Visitenkarten uvm. erstellen mit canva.com

https://www.canva.com

Artikel auf IT Freelancer Magazin

Geschäftliche Anwendungen
Flyer, Visitenkarten, Facebook-Titelbild, Logo, Bloggrafik, Wide-Skyscraper, Präsentation, Buchcover, eBook, Infografik, Flyer, dreiseitige Broschüren

Private Anwendungen
Urkunden, Einladungen, Poster, Geschenkgutscheine, Speisekarten

Vorteile
Bei Auswahl einer passenden Vorlage braucht man sich über die Abmessungen keine Gedanken machen. Auch braucht man sich um Druckqualität oder Druckformat (druckbares PDF downloadbar) keine Gedanken machen.
Die Designvorlagen sind sehr zahlreich, hübsch und modern.
Editieren geht ganz einfach, wenn man sich ein bisschen eingearbeitet hat (auf jeden Fall viel einfacher, als mit den Standardtools, wie Gimp …)
Die Designs werden automatisch unter ‚Deine Designs‘ gespeichert und sind auch nach einem Jahr noch abrufbar und anpassbar.
Bzgl. Urheberrechte der Grafiken scheint alles in Ordnung zu sein.

Benutzung
gehst auf „Design erstellen“
und dann unter Marketingunterlagen auf Visitenkarte (die meisten sind beidseitig).
Die Schriftgröße sollte (je nach Schriftart) mindestens 7 betragen – am besten vorher am eigenen Drucker ausprobieren.
Die ein oder andere Online-Druckerei benötigt für die Rückseite eine separate Datei. Deswegen kann man bei Canva auch die Vorder- und Rückseite separat downloaden. Immer wenn man etwas über eine Druckerei drucken lässt, sollte man Schnittmarken und Beschnittzugabe anhaken.
Ich drucke nicht mehr, als 100 Visitenkarten. Bis ich diese aufgebraucht habe, sind diese schon nicht mehr aktuell.

Bestellung bei Online-Druckerei
Als erstes die Visitenkarte auf dem heimischen Drucker ausdrucken und auf Typos und Designprobleme achten. Ich habe OvernightPrint ausprobiert. Es kommen viele Wizard-Seiten mit Cross-Selling-Angeboten, die man halt schnell durchklicken muss. Außerdem kosten 100 Visitenkarten inklusive Versand knapp 15€, was aber ein Neukundenrabatt einschließt. Zugesagt ist ein Versand bis übermorgen. Es wird ein Gratis-Datencheck in der Druckvorstufe automatisch durchgeführt, der auch schon bei mir eine Datei erfolgreich gefunden hat, die beim Drucken zu weißen Rändern geführt hätte. Beim Upload der Dateien sollte man darauf achten, dass im Idealtfall alle drei Zonen ausgefüllt sind:

Mir haben die Standard-Visitenkarten gut gefallen (350g, matte unbeschichtete Vorder- und Rückseite)

Am 20.3.2016 habe ich um 14.15 Uhr die Bestellung aufgegeben und hatte am 22.3.2017 die Visitenkarten im Briefkasten – in sehr guter Qualität und sehr gut verpackt. Klare Empfehlung für OvernightPrints.

Als Alternative wurde mir auch schon https://www.saxoprint.de empfohlen.

WordPress-Theme anpassen: Artikelbilder sollen zentriert werden

Damit die Artikelbilder (falls sie nicht die komplette Breite ausfüllen) nicht so am linken Rand kleben, empfiehlt es sich, diese zu zentrieren.
Bei Themes empfiehlt es sich die CSS-Anpassungen in einem Plugin oder in einem Customizer-Tab vorzunehmen, damit diese beim nächsten Theme-Update nicht einfach überschrieben werden.
Zumindest im Theme ‚Forefront‘ sind Artikelbilder mit class = wp-post-image identifizierbar, was unser Selektor wird.
Design -> Customizer -> Zusätzliches CSS:
hinter dem Kommentar trage ich ein:

.wp-post-image {
display: block;
    margin-left: auto;
    margin-right: auto;
}

… und schon sind die Artikelbilder zentriert.

Anpacken!