Thunderbird mit dem Profilmanager starten

Die Mail-Anwendung Thunderbird lagert ihre Daten in sogenannten Profilen. Von diesen Profilen können mehrere gespeichert und genutzt werden. In einem Profil sind sämtliche Daten wie Mails und ähnliches hinterlegt. Unter Umständen kann es vorkommen, dass ein anderes Profil genutzt werden soll. In einem solchen Fall kann der Profilmanager aufgerufen werden.

Der Profilemanager von Thunderbird

Dazu muss Thunderbird mittels des Parameters -P gestartet werden:

thunderbird -P

Sollte das gewünschte Profil nicht auftauchen, so kann das gewünschte Profil auch direkt in der Konfiguration gesetzt werden. Je nach System befindet sich der Ordner mit den entsprechenden Profilen an unterschiedlichen Stellen:

Linux: ~/.thunderbird/xxx.default
macOS: ~/Library/Thunderbird/Profiles//
Windows 2000/XP: C:\Dokumente und Einstellungen\%Benutzername%\Anwendungsdaten\Thunderbird\Profiles\xxx.default
Windows Vista/7/10; C:\User\%Nutzername%\AppData\Roaming\Thunderbird\Profiles\xxx.default

In diesem Ordner findet sich eine Datei mit dem Namen profiles.ini:

[General]
StartWithLastProfile=1

[Profile0]
Name=default
IsRelative=1
Path=Profiles/n7m00lts.default
Default=1

Dort kann unter Path das gewünschte Profil gesetzt werden und anschließend Thunderbird mit diesem gestartet werden.

UAC in .NET Anwendungen

Eine gewöhnliche .NET Anwendung benötigt keine Administratorrechte und bekommt diese meist auch nicht. Doch was wenn man doch mal solche Rechte benötigt um z.B. die Zuordnungen zu einem Dateiformat in der Registry vornehmen zu können? Unter XP ist dies kein Problem da der Nutzer dort meist mit Administratorrechten unterwegs ist. Unter Windows Vista und höher muss man diese Rechte allerdings anfordern.

Leider ist es nicht möglich, sich diese Rechte nur für eine bestimmte Funktion anzufordern. Entweder man holt sie sich die Rechte (per Manifest Datei) für die ganze Anwendung oder gar nicht. Bei der Anforderung der Rechte für die ganze Anwendung wird man von Windows jedesmal gefragt ob man die entsprechende Anwendung mit Administratorrechten starten möchte, was natürlich unschön ist.

Eine weitere Möglichkeit ist es für die Fälle welche administrative Rechte benötigen eine extra Anwendung zu schreiben, welche dann z.B. die Dateierweiterungen registriert. Der Vorteil dieser Variante ist es, das man nur nach den entsprechenden Rechten gefragt wird, wenn es nötig ist. Diese Variante kann man nun auch ausbauen, indem man keine Fremdanwendung aufruft, sondern sich selber mit ein paar Kommandozeilenparametern:

ProcessStartInfo processInfo=new ProcessStartInfo();
processInfo.Verb="runas";
processInfo.FileName=FileSystem.ApplicationPathWithFilename;
processInfo.Arguments="-reg:.bat;.xml";
Process.Start(processInfo);

In der Program.cs wertet man diese Argumente dann in der

static void Main(string[] args)

aus und führt die entsprechende Aktion aus. Danach beendet man die Anwendung gleich wieder. Somit kann man die Teile welche solche Rechte benötigen in der eigenen Anwendung „auslagern“.

Weitere Informationen gibt es unter:
http://www.vbarchiv.net/workshop/workshop_115.html
http://victorhurdugaci.com/using-uac-with-c-part-1/
http://victorhurdugaci.com/using-uac-with-c-part-2/
http://victorhurdugaci.com/using-uac-with-c-part-3/

Von Windows 1.0 zu Windows 7

Manchmal staunt man doch über die Produkte aus dem Haus Microsoft. Jemand hat das Experiment gewagt und den Upgradepfad von Windows 1.0 auf Windows 7 auf sich genommen, in dem er von Majorversion zu Majorversion upgradete.

Aktivieren Sie JavaScript um das Video zu sehen.
Video-Link: https://www.youtube.com/watch?v=vPnehDhGa14

Erstaunlich und irgendwie witzig ;)