Ich mache eine Anwendung, die einen Browser mit SendKeys steuert. Aber da SendKeys die volle Kontrolle über die Tastatur haben, möchte ich diese App unter dem anderen Benutzer ausführen. Auf diese Weise werde ich arbeiten, die Anwendung wird tun, was sie zu tun hat, und wir werden keine Probleme füreinander machen.Python - Steuerelement-Anwendung durch den anderen Benutzer in Windows gestartet
Die einfachste Code ist
import time
import SendKeys
time.sleep(10)
SendKeys.SendKeys('hello')
ich es laufen, konzentrieren sich auf den Bereich, wo ich will meinen Text „Hallo“, und warten einzufügen. Wenn ich den Benutzer nicht ändere, wird alles wie erwartet ausgeführt. Aber wenn ich es ausführen, den Benutzer ändern und nach 10 Sekunden zurückkehren, sehe ich, dass SendKeys nichts an das Programm gesendet.
Wie senden Tastenanschläge an das Programm unter dem anderen Benutzer?
(Ich habe versucht, das gleiche mit pywinauto, aber das Ergebnis war fast das gleiche - alles ist gut, wenn ich den Benutzer nicht ändern, und Fehler, wenn ich es ändere. So dachte ich, dass es viel einfacher ist um dieses Problem nur mit SendKeys zu lösen).
Eine Anwendung, die mit Benutzer X ausgeführt wird, der Tastenanschläge an Anwendungen von Benutzer Y senden kann, wäre ein großes Sicherheitsproblem. Das sollte nicht möglich sein. –
Wie läuft es mit dem Automatisierungsskript unter Benutzer Y? Dazu benötigen Sie natürlich ein einfaches Launcher-Skript. –
@ João Pinto Nein, Benutzer X führen das Programm und es sollte in der Umgebung von X ausgeführt werden. Auch wenn der Benutzer geändert wird, sollten alle seine Programme weiterhin funktionieren. Wenn ich zum Beispiel das Skript ausführe, das etwas berechnet und den Benutzer zu einem anderen ändert, sehe ich nach der erneuten Anmeldung, dass das Skript die ganze Zeit funktioniert hat. – SKulibin