Ich möchte eine andere Anwendung starten, aber in einem anderen Desktop
ohne selbst dahinzuswitchen!
Alle Beispiele, die ich gefunden habe, können nur das eigene Programm auf einen neuen Desktop befördern.
Also habe ich versucht Code in diesen Prozess zu injezieren und darin habe ich folgendes getan:
Delphi-Quellcode:
Desktop:= CreateDesktop('Neu', nil, nil, DF_ALLOWOTHERACCOUNTHOOK, GENERIC_ALL, nil);
SetThreadDesktop(Desktop);
Jedoch startet sich das Programm normal im Standard-Desktop. (Ja die injektion war erfolgreich, getestet mit einer Messagebox)
Dann habe ich etwas anderes versucht. Ich habe mir überlegt, dass ein Programm, dass schon im anderen Desktop läuft und selbst ein anderen Prozess startet, dass dieser dann auch auf dem neuen Desktop startet.... Fehlanzeige
Mir gehen so langsam die Ideen aus. Habt ihr ne Idee? Oder ist es zwingend notwendig das programm zu patchen?