Archiv verlassen und diese Seite im Standarddesign anzeigen : Zwei Instanzen desselben Programms öffnen (auf zwei verschiedenen Desktops)
Platos
2021-08-31, 14:36:30
Ich würde gerne auf 2 verschiedenen (virtuellen) Dekstops die selben Programme öffnen. Statt dessen wechsle ich aber zu dem Desktop, in dem das Programm bereits geöffnet ist.
Wie geht das ? Gerne auch mit Zusatzsoftware oder sonstigen Spielchen. Ich kenne Shift+Klick oder Rechtsklick und dann öffnen. Das funktioniert nicht mit allen Programmen.
Beispiel: 2 Mal (also gleichzeitig) den Task Manager öffnen.
Kann mir da jemand helfen? Es muss doch irgendwie möglich sein, einfach 2 Instanzen gleichzeitig von etwas zu öffnen.
PatkIllA
2021-08-31, 14:46:08
Bei einigen kann man noch in den Einstellungrn mehrere Instanzen erlauben.
Wenn das Program das nicht vorsieht geht das nicht. Es wird ja eine zweite Instanzen gestartet, die dann die vorherige Instanz sucht und daran weiterleitet.
Als anderer Benutzer starten gibt es noch. Dann greifen die Mechanismen normalerweise nicht.
Die Frage ist um welches Programm es sich handelt.
Das muss es nämlich erlauben mehrfach zu starten.
BAGZZlash
2021-08-31, 16:14:57
Die meisten Programme, die sich überhaupt um bestehende Instanzen von sich selbst scheren (Aber nicht alle! Jeder Programmierer hat so seine eigenen Ideen), prüfen das Vorhandensein einer bereits bestehenden Instanz einfach über den Fenstertitel. So auch das hier bemühte Beispiel des Task-Managers. Eine Möglichkeit ist also, das Programm zu starten, den Titel zu ändern, und dann das Programm erneut zu starten. Oft startet dann eine zweite Instanz, weil die erste Instanz nicht gefunden wird. Wenn man will, kann man anschließend noch den Fenstertitel des ersten Programms wieder zurückändern.
Hier mal ein kleines Programm, das den Titel eines beliebigen anderen Programms ändert (nicht alle Fenster werden gefunden, es gibt so viele Techniken...): 76619. Neben der GUI ist das Programm auch per Kommandozeile bedienbar. Als ersten Parameter gibt man den zu suchenden Titel ein, als zweiten Parameter den neuen Titel. Das lässt sich auch für Batch-Skripte benutzen. Beispiel:
@echo off
start "" taskmgr
timeout /T 1
winren Task-Manager Banane
timeout /T 1
start "" taskmgr
timeout /T 1
winren Banane Task-Manager
Hier der kurze VB6-Quellcode des Programms:
Option Explicit
Private Declare Function FindWindow Lib "user32.dll" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function SetWindowText Lib "user32.dll" Alias "SetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String) As Long
Private Sub RenameWindow(SearchName As String, NewName As String)
Dim hWnd As Long
hWnd = FindWindow(vbNullString, SearchName)
If hWnd = 0 Then
MsgBox "Fenster nicht gefunden. Titel richtig geschrieben?", vbCritical
Exit Sub
End If
Call SetWindowText(hWnd, NewName)
End Sub
Private Sub Command1_Click()
Call RenameWindow(Form1.Text1, Form1.Text2)
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Private Sub Form_Load()
Dim Params() As String
If Command$ <> "" Then
Params = Split(Command$, " ")
If UBound(Params) <> 1 Then
MsgBox "Falsche Anzahl an Parametern. Erster Parameter: Suchname, zweiter Parameter: Neuer Name. Beispiel: " _
& vbNewLine & vbNewLine & "WinRen.exe Task-Manager Banane", vbCritical
Unload Me
End If
Call RenameWindow(Params(0), Params(1))
Unload Me
End If
End Sub
Platos
2021-09-01, 12:29:33
Ah sehr gut, ich werde das mal testen, danke!
Platos
2021-09-08, 15:22:28
Das hat leider mit der Anwendung nicht funktioniert. Der Name ändert sich zwar, aber ich kann trotzdem keine 2. Instanz starten.
Du hast gesagt, die meisten Programme ändern den Namen... Kennst du denn auch noch andere, die anders vorgehen?
Ich weiss nicht, ob das relevant ist, aber es handelt sich um eine App aus dem Microsoft Store.
ManuelCalavera
2021-09-08, 17:05:46
Ich kenne noch 2 Methoden:
1) pidfile/lockfile (z.b. Firefox pro Profil): Beim Start wird eine Datei angelegt, existiert diese beendet es sich.
2) Man registriert einen Named-Mutex, das Programm prüft beim start ob er existiert und falls er existiert beendet es sich (bzw. schickt der 1. Instanz Nachrichten).
Falls 2) genutzt wird hast du keine Chance eine zweite Instanz zu erzeugen.
Bei 1) hängts vom Dateisystem ab und wie die Datei erstellt/geöffnet wurde
Platos
2021-09-09, 22:44:55
Also es handelt sich um Inkodo. Das ist eine UWP-App vom Microsoft Store.
Ich habe gedacht, ich könnte vlt. die App unter einem anderen Benutzer starten, aber das geht ja mit UWP Apps nicht so einfach, also wollte ich mit "runas" die App starten. Es fragt dann nach einem Passwort, aber das PC-Passwort kann es nicht sein, dass wird nicht "gefunden".
Ich habe das so gemacht: runas /user:<Test1> "explorer.exe shell:appsFolder\8338Giuapps.Inkodo_pzan5b7zgydq2!App"
Test1 ist eben ein zweites Profil, das ich kurz angelegt habe. Aber wie gesagt, das Passwort funktioniert nicht.
Screemer
2021-09-10, 02:09:02
kann es sein, dass du den zweiten user so erstellt hatst, dass er beim ersten login das pw ändern muss?
Platos
2021-09-10, 14:08:18
Also ich habe mich da schon eingeloggt, damit ich da in diesem Profil Inkodo ebenfalls herunterladen kann (UWP Apps werden ja anscheinend nur pro Benutzer installiert). Aber das Problem tritt auch bei meinem Profil auf. Ich habs mit beiden probiert und in beiden Fällen kriege ich die Meldung "das Benutzerkennwort wurde nicht gefunden".
Übrigens auch, wenn ich die Powershell mit Adminrechten starte. Eigentlich sollte ich dann ja bei meinem Profil keine Passwortabfrage mehr bekommen, müsste man meinen. Es steht aber das selbe. Ich glaube, ich muss da irgend ein anderes Passwort eingeben, nicht mein Anmeldepasswort. Aber ich habe ja kein anderes.
ChaosTM
2021-09-10, 14:15:11
Hab grad 2x Cyberpunk77 laufen auf 2 verschiedenen Desktops. Laufen beide astrein dank der großzügigen V(RAM) Bestückung.
ManuelCalavera
2021-09-10, 17:14:10
Musst du da nicht den rechnernamen/domäne mit angeben?
Angenomen dein pc heisst heinz, also statt:
runas /user:test1
muss es heissen:
runas /user:heinz\test1
Platos
2021-09-10, 17:21:14
Hab grad 2x Cyberpunk77 laufen auf 2 verschiedenen Desktops. Laufen beide astrein dank der großzügigen V(RAM) Bestückung.
Was heisst 2 versch. Desktops? VM? Und naja, bei Inkodo handelt es sich um eine App aus dem Microsoft store. ALso ne VM habe ich mir auch schon überlegt, aber das ist ziemlich umständlich. Ich will ja damit erreichen, dass ich 2 Dokumente gleichzeitig öffnen kann um schnell zwischen 2 zu wechseln (oder gar gleichzeitig anzuzeigen). Mit einer VM wäre das doch etwas umständlich?
Aber vor allem: Der Speicherort. Ich habe dann bei der einen Version keinen automatischen Zugriff auf die Dokumente, dieich in der VM bearbeitet habe. Bei Inkodo kann man "Bücher" erstellen, die man dann mit "Kapitel" und "Seiten" füllen kann. Im Übersichtsmenu sehe ich dann die Bücher bzw. Seiten usw. Der Speicherort müsste also genau der selbe sein und man müsste auch auf die selben zugreifen können. keine Ahnung, ob das realistisch ist.
Musst du da nicht den rechnernamen/domäne mit angeben?
Angenomen dein pc heisst heinz, also statt:
runas /user:test1
muss es heissen:
runas /user:heinz\test1
Also was heisst "der PC"? Der PC hat im Grunde ja keinen Namen, es haben ja nur die jeweiligen Profile einen Namen und das Profil heisst test1.
ManuelCalavera
2021-09-10, 17:36:25
Klar hat dein PC einen Namen.
Zu finden in dem Systemeinstellugen bzw per Kommandozeile:
echo %computername%
Platos
2021-09-10, 20:33:15
Ok, ja so geht es, wenn ich es direkt aus dem Profil Test1 starte. Allerdings kann ich es nicht von meinem Profil aus starten. Da steht nach der Passworteingabe nur "Es wird versucht *Pfad* zu starten...
Und dann passiert nix.
Im Internet finde ich auch genau gar keine Lösung zum starten von UWP Apps von einem anderen Profil. Ich probiere es vlt. mal mit Sandboxie oder dergleichen und schaue, ob das geht mit selben Speicherpfad.
Hat sonst jemand eine Idee, wie ich das irgendwie "hintricksen" kann? Wichtig ist, dass ich bei beiden Programmen dann die selben Dateien angezeigt bekomme.
Edit: Nein, Sandboixie kann das nicht. Kann keine UWP Apps starten.
vBulletin®, Copyright ©2000-2025, Jelsoft Enterprises Ltd.