Verwendet man unter Windows RemoteApps, so wird jede neu auszuführende RemoteApp innerhalb der bestehenden Sitzung gestartet. Im Regelfall ist das ok, allerdings in manchen Szenarien auch störend, wenn z.B. explizit eine oder mehrere RemoteApps in einem anderen Benutzerkontext laufen sollen. Das Ganze kommt nur dann zum Tragen, wenn die RemoteApps auf dem gleichem Server laufen.

Eine Abhilfe kann schaffen, wenn man in der betreffenden RemoteApp-Verbindungsdatei explizit angibt, das nach den Zugangsdaten auf dem Client gefragt werden soll (“prompt for credentials on client:i:1”). Bestehen dann zwei oder mehrere Sitzung wird beim Start jeder weiteren RemoteApp abgefragt in welcher Sitzung diese ausgeführt werden soll.

Siehe dazu den Beitrag Windows: RemoteApps mit unterschiedlichen Benutzernnamen von ein und demselben Server öffnen

Nutzt man Remote Desktop Plus (RDP+) um per Verknüpfung oder automatisiert RemoteApps zu starten, so gibt es für das genannte Szenario eine Kleinigkeit zu beachten.

Grundsätzlich kann man bei RDP+ über zwei Wege eine RemoteApp ausführen:

rdp.exe /remoteapp:"||<RemoteAppName>" /v:<Servername> /d:<Domain> /u:<Username> /p:<Password>

rdp.exe RemoteAppName.rdp /v:<Servername> /d:<Domain> /u:<Username> /p:<Password>

Das bequeme am erstgenannten Aufruf ist, das keine *.rdp-Datei benötigt wird. Allerdings wird die Angabe der Zugangsdaten ignoriert und so wird die RemoteApp in der bereits bestehenden Sitzung gestartet. Also genau das Verhalten, das man nicht möchte.

Interessanterweise verhält sich RDP+ unter Verwendung einer Remotedesktopverbindungsdatei an dieser Stelle anders. In diesem Fall wird eine neue Sitzung unter Verwendung der angegeben Zugangsdaten aufgebaut. In der Remotedesktopverbindungsdatei müssen im Vorfeld übrigens keine Anpassungen vorgenommen werden.

Update 01.06.2022

Dieses Thema hat mich nun wieder einmal beschäftigt bzw. es klappte nicht mehr unbedingt wie zuvor. Abhilfe schafft in der Verbindungsdatei folgendes zu setzen bzw. hinzuzufügen falls nicht vorhanden:

disableconnectionsharing:i:1

Via CLI kann die Option so an RDP+ übergeben werden:

/o:"disableconnectionsharing:i:1"

Per Default ist der Wert “0” und das bedeutet, das eine ggf. vorhandene Session, ganz gleich welche Zugangsdaten man angibt, verwendet wird. Verzichtet man auf das Connection Sharing, werden die übergebenen Zugangsdaten verwendet bzw. neue abgefragt, sofern keine Daten mitgegeben wurden.

Quelle

Microsoft – Docs – Supported Remote Desktop RDP file settings