MouseClicks bei einber VM simulieren

  • Hallo zusammen,

    für einen Check muss ich mit einem MouseClick arbeiten.
    Problem:
    Das Skript läuft auf einer VM, auf der zwar ein User eingeloggt ist aber disconnected. Gibt es eine Möglichkeit MouseClicks trotzdem zu simulieren?
    Momentan läuft das Skrpit nämlich genau zu dem Punkt, an dem ein MouseClick stattfinden soll und hält dann an bis der User connected ist.

    Würde mich über eure Hilfe freuen.

  • Wenn du das Skript postest, findet sich sicherlich schneller Hilfe, zumal man es dann nachstellen kann.

    Vorallem was tut das Skript sonst noch?
    Wie "disconnectest" du dich denn bei einem eingeloggten User? Ich kenne das nur von Remotedesktop-Sitzungen.
    Von welchem OS reden hier wir?

    Ich kann mir grad noch kein Reim daraus machen was du vor hast/was hier abläuft.
    Woher weißt du, dass das Programm läuft und nicht pausiert?

    Ich habe schon verschiedene Tools geschrieben die auf VMs laufen. Ich habe prinzipiell nie anders programmiert als wenn ich das lokal nutzen würde...

    Grüße Yaerox

    Grüne Hölle

  • Mit dem Skript werdet ihr leider nichts anfagen können, weil es eine netzinterne Anwendung auf Login und Suche von Daten prüft. Da diese WebApp aber aus verschachtelten Frames besteht und die Werte nicht so einfach abzufangen sind, versuche ich nun mit einem MouseClick zu arbeiten.
    Die VM wird über eine RDP Session angesteuert. Der User ist zwar angemeldet aber die RDP Session ist zu 99% disconnected.
    Das Skript wird über den Task Schedular aufgerufen und pausiert ab dem MouseClick bis das eine RDP Session aufgebaut wird.

    OS ist Win7 Professional

  • Hi,
    ohne RDP-Verbindung keine RDP-Verbindung!
    Da das Script sowieso lokal in der VM läuft, logge den User per Script ein und danach wieder aus...

  • Hi,
    ohne RDP-Verbindung keine RDP-Verbindung!


    finde den Like Button nicht deshalb so: Besser und kürzer hätte man es nicht schildern können!

    Hättest ihn aber ruhig selber denken lassen können. Auch Brain muß trainiert werden.

    Einmal editiert, zuletzt von autoBert (2. Februar 2016 um 21:13)

  • Auf der VM laufen auch weitere Checks (wohlgemerkt ohne Tastatureingaben bzw. MouseClicks) problemlos während der User auf der VM eingeloggt ist, die RDP Session aber disconnected ist).
    Evtl drücke ich mich ja falsch aus. Die VM läuft 24/7 und der User mit dem der Check laufen soll, ist auch 24/7 eingeloggt. Allerdings ist eine RDP-Verbindung in den seltensten Fällen aufgebaut, sodass weder Bild, noch Tastatur/Mouse angeschlossen ist.

  • Evtl drücke ich mich ja falsch aus. Die VM läuft 24/7 und der User mit dem der Check laufen soll, ist auch 24/7 eingeloggt. Allerdings ist eine RDP-Verbindung in den seltensten Fällen aufgebaut, sodass weder Bild, noch Tastatur/Mouse angeschlossen ist.

    Der User ist aber nicht connected. Weils so treffend gesagt wurde:

    Hi,
    ohne RDP-Verbindung keine RDP-Verbindung!

    und die Lösung kennst du ja schon:

    Momentan läuft das Skrpit nämlich genau zu dem Punkt, an dem ein MouseClick stattfinden soll und hält dann an bis der User connected ist.

  • Vielen Dank für Eure Mühe und Hilfe.!

    Also muss ich einen neuen Lösungsansatz finden oder aber weitere Ressourcen für den Aufbau der RDP-Session zu den Zeiten an denen das Skript läuft, zur Verfügung stellen, richtig?

    2 Mal editiert, zuletzt von Mojo (3. Februar 2016 um 03:12)

  • Also muss ich einen neuen Lösungsansatz finden oder aber weitere Ressourcen für den Aufbau der RDP-Session zu den Zeiten an denen das Skript läuft, zur Verfügung stellen, richtig?

    Da das Script sowieso lokal in der VM läuft, logge den User per Script ein und danach wieder aus...

    Grüße Yaerox

    Grüne Hölle

  • Irgendwie muss ich geschubst werden, damit ich nicht mehr auf dem Schlauch stehe.
    Mein User ist doch permanent eingeloggt, nur die VM ist nicht permanent per RDP verbunden.

    Sofern User einloggen für euch per RDP verbunden heißt, muss ich doch von einer anderen Maschine eine RDP aufbauen oder nicht?

    Tut mir leid das ich so nachfragen muss :( ...

  • Meines Wissens kann kein nicht Server Betriebssystem von Microsoft mehrfache Benutzer angemeldet haben. D.h. wenn du auf dem Rechner angemeldet bist, und dann greift jemand via RDP darauf zu, wird der eigentliche Benutzer abgemeldet, und du bekommst eine RDP-Sitzung. D.h. hier gibt es nur entweder oder, und nicht beides. Es kann immer nur 1 User aktiv auf dem Rechner arbeiten, egal ob via RDP oder direkt vor dem Rechner sitzend.

    Wenn du dann eine RDP-Sitzung abmeldest/trennst, bist du eben nicht mehr mit dem Benutzer eingeloggt. Auf der VM steht man dann am Benutzer-Login Schirm, als ob du die VM gerade angefahren hast.

    Wenn ich mich irre, möge mich bitte jemand verbessern. Aber so kenne ich das nur von Windows 7. Habe hier neben mir ein Rechner stehen, mit dem ich genau das immer getan habe (Lokal + RDP Nutzung). Ist allerdings auch schon wieder fast nen Jahr her.

    Grüße Yaerox

    Grüne Hölle

  • Ahhhh jetzt weiß ich wo mein Fehler in der Erklärung liegt. Die VM läuft nicht lokal auf einem Rechner sondern alle Skripte werden so zu sagen ohne Bildschirm und Tastatur ausgeführt. Der User (serviceAcount) ist aber immer auf der VM angemeldet, damit die schon vorhandenen Skripte durchlaufen.

    Auf der VM auf der das Skript vom TaskSchedular angetriggert wird, ist immer nur der ServiceAccount angemeldet. Auf der VM laufen schon mehrere Skripte, die immer zu 100% durchluafen, obwohl keine RDP Sitzung aufgebaut ist.

    Mein Skript, das zu implementieren ist und auch per TaskSchedular angetriggert werden soll, ist das erste Skript, das mit einem MouseClick lauffähig sein soll. Dieser MouseClick aber benötigt (Kenntnisstand jetzt: eine RDP Verbindung, weil der MouseClick nicht ohne RDP ausgeführt werden kann und das Skript solange pausiert, bis eine RDP Session aufgebaut wurde).

    Für mich ist es zwingend notwendig das mein Skript mit dem dauerhaft angemeldeten User läuft ohne eine RDP Session laufen zu lassen, weil ich diese nicht über 24/7 gewährleisten kann. Gibt es eine Möglichkeit das Skript mit MouseClick laufen zu lassen ohne garantierte RDP Session oder ist die MouseClick Funktion dann völlig ungeeignet?

  • Hallo zusammen,

    muss das Thema nochmals aufgreifen.
    Versuche mich wieder an dem Skript um irgendwie eine Lösung zu finden mit der ich ein MouseClick/Tastatur gesteuertes Skript auf einer VM mit permanent angemeldeten User zum Laufen bekomme.
    Das Problem was ich habe, ist noch das gleiche.
    Soll heißen, das mein User zwar immer an der VM angemeldet ist, diese VM aber zu 90% im Hintergrund läuft, d.h. ohne Bildschirm/Tastatur.

    Existiert da eine denkbare Lösung? Die meisten hier haben sehr viel mehr Erfahrung mit AutoIT und haben evtl. schonmal vor einem geleichen Problem gestanden.
    Die Tage stoß ich auf folgenden Artikel, der mich aber auch nicht weitergebracht hat:
    Running Tests in Minimized Remote Desktop Windows

  • Der Artikel bezieht sich auf ein "Problem" dass auch bei verbundenen RDP Sessions die Fenster nicht aktualisiert werden wenn das RDP Fenster minimiert ist. Für manche ein Problem (bei automatisierten tests wo man nicht zusehen will/muss gibts natürlich fehler) für Andere ein Feature (die Infos werden nicht übers Netzwerk übertragen weil am RDP Client das Fenster ja eh keiner zusieht da das Fenster minimiert ist)
    Wie auch immer. Der Artikel passt bei deinem Problem nicht weil deine Session ja disconnected ist.
    Also haben wir nach wie vor den gleichen Stand--> disconnected also funktioniert mouseclick nicht

    Was macht denn für dein Script einen Mouseclick erforderlich?
    Lieber mal beschreiben was du machst um eine alternative zu Mouseclick zu finden ;)

  • ich habe das Problem jetztz folgendermaßen verstanden...

    Es soll in einer VM bei angemeldetem User ein MouseClick ausgeführt werden.
    Dies wurde bisher versucht, indem von einem 2. PC eine RDP-Session zu der VM aufgebaut wurde um den MouseClick auszuführen.

    Da sollte klar sein, keine RDP-Session, ergo kein MouseClick.

    Aber warum wird das Script für den MouseClick nicht direkt auf der VM ausgeführt???
    Im Kontext des angemeldeten Users würde dann auch die GUI erscheinen und kann angeclickt werden.

    Wobei ich da auch zu Bedenken geben muss, dass MouseClick die unglücklichste Variante ist.
    Da gibt es sichere Methoden für fast alle Anwendungen...

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)

  • @Schnitzel
    Mein Skript sollte Excel bedienen können. Die Excel UDF funktioniert leider auch nicht in dem Zusammenhang.

    @Schnuffel
    Du hast es richtig verstanden wobei Das Skript soll schon auf der VM selbst laufen aber diese ist ja nicht 24/7 connected.

    Einmal editiert, zuletzt von Mojo (2. Juni 2016 um 20:46)

  • Das Skript soll schon auf der VM selbst laufen aber diese ist ja nicht 24/7 connected.

    Irgendeinen Tod muß man sterben, im Fall eurer Firma:

    • ausreichend Excellizenzen und/oder PC's
    • VM läuft 24/7

    es gibt nicht immer alles umsonst, wenn das dein Chef nicht einsieht solltest du dich nach einer anderen Firma umschauen.

    Schnitzel: hatte schon die Befürchtung, du warst auf einem (fremden) Brötchen gelandet.

  • das verstehe ich nicht...
    Das Skript soll schon auf der VM selbst laufen aber diese ist ja nicht 24/7 connected.
    was hat das mit connected zu tun???

    Eine VM läuft und damit Punkt.


    Vergiß doch mal diese RDP-Geschichte. Das wird dich nicht zum Ziel führen.
    Betrachte die VM doch mal als das, was es ist : ein PC

    Darauf soll ein Script laufen. Gut

    Wo ist das Problem?

    Einfache Sache ist ein Grundsatz von M$: eine GUI erscheint immer im Kontext des ausführenden Users.
    Ist der User auch aktiv an einer "Windows-Konsole" (ich nenne das mal bewusst so, da jeder Desktop eigentlich nichts anders ist, auch der lokale)
    angemeldet kann er die Fenster, die als aktiv und sichtbar gesetzt und in seinem Kontext ausgeführt werden sehen.

    Mehr ist es nicht.
    Damit ist dein MouseClick gestorben ;)

    MfG Schnuffel

    "Sarkasmus ist die niedrigste Form des Witzes, aber die höchste Form der Intelligenz."
    Val McDermid

    ein paar Infos ...

    Wer mehr als "nur" Hilfe benötigt, kann sich gern im Forum "Programmieranfragen" an uns wenden. Wir helfen in allen Fällen, die die Forenregeln zulassen.

    Für schnelle Hilfe benötigen wir ein ! lauffähiges ! Script, dass wir als Demonstration des Problems testen können. Wer von uns erwartet ein Teilscript erstmal lauffähig zu bekommen, der hat
    1. keine wirkliche Not
    2. keinen Respekt vor Menschen die ihm in ihrer Freizeit Ihre Hilfe anbieten
    3. oder ist einfach nur faul und meint wir coden das für ihn

    In solchen Fällen erlaube ich mir, die Anfrage einfach zu ignorieren. ;)