TextBox anderer Anwendung feststellbar?

  • VB.NET

Es gibt 11 Antworten in diesem Thema. Der letzte Beitrag () ist von hal2000.

    TextBox anderer Anwendung feststellbar?

    Hallo zusammen,

    ist es eigentlich möglich mit einem Tool den Namen einer TextBox in einer Applikation festzustellen um (wenn vorhanden) ein Text darin abzufüllen?

    Für HTML (was hier nicht Thema ist) kann ich es ja feststellen, das ist soweit klar und auch logisch. Jetzt wäre es aber toll wenn das auch mit einer Anwendung selber geht.

    Ich gehe mal davon aus das es nicht gehen wird, aber "wer nicht fragt bleibt dumm" habe ich in meiner Kindheit mal gelernt :)

    Viele Grüsse,
    Dani
    Ich bin mir nicht ganz sicher, ob ich deine Fragestellung richtig verstanden habe, aber wenn ja, dann könntest du das Tool PropEdit verwenden.
    Ich hab es hier mal hochgeladen, weil ich es gerade nirgendwo mehr bei Google gefunden habe.
    Dateien
    • PropEdit.rar

      (316,8 kB, 125 mal heruntergeladen, zuletzt: )
    Hallo Infinity,

    nehmen wir an es gibt ein Form mit einem Label und einer TextBox. Ich würde jetzt gerne wissen ob ich aus einem anderen Programm auf das Form zugreiffen kann um festzustellen ob die TextBox auf dem Form vorhanden ist und dann ein Passwort oder ein Text in die TextBox des anderen Form abzufüllen.

    Aber der erste Schritt wäre ja erst mal zu wissen ob man auf einem Form zum Beispiel nach TextBox1 suchen kann (oder wie die TextBox dann benannt wurde).

    Nur eine Idee...

    Gruss,
    Dani
    Wie du prüfen kannst, ob eine TextBox überhaupt existiert, weiß ich nicht, aber du kannst mit der SendMessage-Funktion der WinAPI Tastendrücke in die TextBox der anderen Anwendung schreiben (wobei das auch nicht 100 prozentig klappen muss).

    Oder hast du die andere Anwendung selber geschrieben? Dann gibt es eine viel besser Möglichkeit, dein Vorhaben umzusetzen?
    Was willst du eigentlich machen? Passwörter raten?

    DniBo schrieb:

    Aber der erste Schritt wäre ja erst mal zu wissen ob man auf einem Form zum Beispiel nach TextBox1 suchen kann

    DAS geht nicht. Aber insgesamt ist dein Vorhaben realisierbar. Angenommen, du möchtest die Textbox von Notepad auslesen (das Edit-Feld ist so gesehen nichts anderes als ne große Textbox):
    - Notepad-Fenster finden (FindWindow)
    - Textbox-Handle finden (FindWindowEx)
    - Speicher global reservieren (Marshal.AllocHGlobal)
    - Nachricht senden, die notepad anweist, den Text in den Speicher zu schreiben (SendMessage WM_GETTEXT)
    - Text abholen (Marshal.PtrToStringAuto)
    - Speicher freigeben (Marshal.FreeHGlobal)

    Viel Erfolg.
    Gruß
    hal2000
    Hallo zusammen,

    wir setzen ein paar Tools ein die nicht von mir geschrieben sind und dadurch liegt mir der Source nicht vor. Damit ich mir das arbeiten erleichtern kann.

    Beispiel:
    Um ein Tool zum prüfen der System-Umgebung inklusive SQL-Instanz zu starten, hat der Entwickler vorgesehen das dieses Tool eine generierte GUID bei Tool-Start ausgibt, diese muss in ein Passwort-Generator eingetragen werden aus dem dann ein Passwort generiert wird. Dieses Passwort muss dann in das entsprechende Feld/TextBox eingetragen werden damit das Tool läuft. Da dies bei jedem Start erfolgt, ist es leicht nervend wenn man das Tool recht oft für Support-Zwecke auf verschiedenen Maschinen braucht.

    Hier setzt meine Idee an (sofern realisierbar), der Code zum berechnen des Passwort ist bekannt. Der Toolname ist klar, ich müsste nur das Fenster finden, sicherstellen dass das Label für GUID und TextBox für das Passwort vorhanden sind und dann entsprechend weiter machen.

    Zumindest würde mich das sehr stark unterstützen, meine Kollegen dann sicher auch :)

    Ich denke aber das der Aufwand doch grösser ist als gedacht und möglich...

    Gruss,
    Dani
    Öffne mal den Spy++ und geh mit dem Suchtool über Dein Control.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    DniBo schrieb:

    das Form
    WPF, Java oder so?
    Die arbeiten anders.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Mach Dir einfach ein kleines WPF-Projekt mit einem Button und probier es aus. :thumbsup:
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!