mAirList alternativ im Auslieferungszustand starten

Gibt es eine Option, mAirList unabhängig von Layout, skin.ini und veränderter Konfig zu starten - also quasi so wie nach einer Erstinstallation?
Falls man mal irgendwas in Konfig, Layout und/oder skin versaut hat und man schnell im “back to the roots” Modus arbeiten möchte / muss?

Es geht natürlich nicht um parallele Starts unter einer Lizenz, sondern nur um die Möglichkeit, mAirList alternativ clean ;D oder personalisiert zu starten.
Wäre da was möglich?

Man kann via Kommandozeilenparameter ein anderes config/root-Verzeichnis angeben.

Am einfachsten geht das mit dem Multi Instance Manager:

https://www.mairlist.com/dokuwiki/tutorials:other:multi_instance_playout#multi_instance_manager

Wir der Name schon sagt, ist dieser eigentlich für Multi-Instanz-Installationen gedacht. Man kann ihn aber auch zusammen mit einem “normalen” mAirList nutzen, solange man nur ein Playout gleichzeitig startet.

Nachdem ich nun endlich mutig genug war, mich an das Abenteuer “Multi Instance Manager” (MIM) heranzuwagen - und grandios gescheitert bin -, muss ich da leider noch mal nachhaken.

Die Installation des MIM ist denkbar einfach; bei der Grundkonfiguration (aktuelle Lizenz) muss man jedoch schon händisch eingreifen, weil hier nur der Pfad, nicht aber die Datei eingetragen werden muss (da spielt Windows 10 beim […]-Button aber nicht so mit).
Soweit alles noch okay.

Wenn ich jetzt also die “clean version” anlegen möchte, muss ich mich an die Beschreibung “Manual Management of Instances” halten.
Und genau hier scheitere ich am Kommandozeilenparameter. Zwar habe ich extra ein [tt]\instance\clean[/tt]-Verzeichnis angelegt, aber was genau muss da rein und wie kann ich dem MIM beibringen, den Kommandozeilenparameter anzunehmen?

Beide Optionen - ZIP wie auch leerer Ordner - führten bei mir dazu, dass beim Klick auf “Playout” immer der [tt]default data folder[/tt] geöffnet wurde.
Daher tippe ich darauf, dass ich bei der Grundkonfiguration irgendetwas falsch gemacht habe - obwohl alles so aussieht wie die Screenshots im Wiki.

Laut Wiki darf das root-Verzeichnis leer sein (so wie bei der ZIP-Installation auch). Das dürfte also nicht der Fehler sein.

Ratlose Grüße: Uli

Also, erst nochmal zum technischen Hintergrund:

mAirList speichert keine Daten in der Registry, sondern alles ausschließlich im sog. “Datenordner”.

Für den Ort dieses Datenordners gibt es grundsätzlich drei Möglichkeiten:

  1. C:\ProgramData\mAirList<Version> (Standard bei Setup-Installationen)

  2. Datenordner = Programmordner (Standard bei Zip-Installationen)

  3. Datenordner explizit festgelegt über Kommandozeilenparameter: mAirList.exe -rootfolder “”

Wenn kein rootfolder-Parameter angegeben ist, wird also automatisch Variante 1 oder 2 genommen. Woher weiß mAirList nun, ob es eine Setup-Installation oder eine Zip-Installation ist? Ganz einfach: Es prüft die Existenz eines Ordners “config” innerhalb des Programmordners (wo die mAirList.exe) liegt. Wenn dieser vorhanden ist, greift Variante 2 (Datenordner = Programmordner), sonst Variante 1 (C:\ProgramData). Die Zip-Distribution enthält aus diesem Grund einen config-Ordner mit einer Dummy-Datei im Zip-Archiv.

Dieser Mechanismus stammt noch aus früheren Jahren, wo mAirList seine Konfiguration immer im Programmordner gespeichert hat, was zu Zeiten von XP gang und gäbe war. Erst mit Einführung der UAC in Vista war das nicht mehr ohne weiteres möglich (oder nur mit sehr merkwürdigen Effekten, Stichwort: VirtualStore), und mAirList hat fortan die von Microsoft (aus gutem Grund) vorgesehene und empfohlene Variante mit C:\ProgramData verwendet.

Die grundsätzliche Möglichkeit, den Programmordner als Datenordner zu verwenden, ist aber erhalten geblieben. Einerseits um alte Installationen nicht zu zerschießen, andererseits um die Zip-Distributionen weiter zu ermöglichen.

(Hinweis am Rand: Aus genau diesem Grund sollte man die Zip-Variante niemals unter C:\Programme oder einen anderen von der UAC geschützten Ordner entpacken, weil sie sonst versuchen wird, ihre Konfiguration dort zu speichern, was zu dem Problem mit dem VirtualStore führt.)

Wenn du also nun eine Zip-Distribution nimmst und irgendwo entpackst, dabei sicherstellst, dass der config-Ordner existiert, dann wird diese Zip-Distribution auch eine komplett eigenständige Konfiguration haben. Wenn du hingegen den config-Ordner löschst, dann verwendet sie den Standard-Datenordner in C:\ProgramData, und du hast nichts gewonnen gegenüber der Setup-Installation (allenfalls die Möglichkeit, mehrere Versionen/Builds gleichzeitig installiert zu haben und auf dieselbe Konfiguration zugreifen zu lassen).

Der Multi Instance Manager macht im Grund nichts anderes als Variante 3, also die mAirList.exe mit einem passenden “rootfolder”-Parameter zu starten. Jede “Instanz” ist dabei nichts anderes als ein (anfänglich) leerer Datenordner.

Als kleines Goodie benutzt er noch einen zweiten Parameter “-licensefolder”, über den er den Pfad zur (zentral in C:\ProgramData gehaltenen) Lizenzdatei übergibt. So kann man die Lizenz einmal zentral über den Lizenz-Manager der Setup-Installation (im Startmenü) einspielen, und alle Instanzen greifen auf sie zu. Ohne diesen Parameter müsste man in jeder Instanz eine separate Lizenz herunterladen.

Schlussendlich ist der MIM noch in der Lage, über weitere Kommandozeilenparameter einen Fenstertitel sowie 1-2 Zeichen zu übergeben, die über dem Programmicon in der Taskbar angezeigt werden sollen (funktioniert leider nicht so gut, wenn man “immer gruppieren” in der Taskleiste aktiviert hat).

Das alles kann man wunderschön im Task-Manager beobachten, wenn man dort die entsprechende Spalte “Kommandozeile” einblendet.