Fremde Listbox auslesen, Wie?

  • VB.NET
  • .NET (FX) 1.0–2.0

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

    Fremde Listbox auslesen, Wie?

    Moin! :)
    Ich versuche gerade eine Listbox von einem anderen Prozess auszulesen.
    Habe bereist stundenlang gegoogelt, ohne Erfolg!
    Weiß jemand von euch, wie das geht?
    Ich habe diesen Link gefunden:
    vbarchiv.net/tipps/tipp_1076-l…anwendungen-auslesen.html

    Aber leider weiß ich nicht, wie ich das Fensterhandle der ListBox auslesen kann.
    Und es ist leider VB6 Code.
    Freue mich auf eure Hilfe
    BIG THX
    Visual Basic.NET 8o
    MS-SQL
    8o
    Schau mal hier und hier zum Thema »andere Programme auslesen und fernsteuern« rein. Kommt natürlich drauf an, was für ein Typ von Anwendung das ist. Auch mit meinem GuiSpy kann man vielleicht was ermitteln.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.
    @VaporiZed
    Danke, für den Link. :)
    Habe mir das mal angschaut.

    @an alle
    Mir wurde NamedPipes empfohlen, damit kann
    Man Datenzwischen zwei Prozesse übertragen.
    Vielleicht benötige ich dann kein Code um die Listbox1 zu übertragen.
    Ich muss mich morgen über dieses Thema informieren.
    Ich hoffe das NamedPipes nichts mit TCP/IP zu tun hat.
    Und das man auch lange Strings versenden kann.
    Falls jemand, sich mit diesem Thema auskennt,
    wäre ich froh wenn mir jemand, meine Fragen beantworten kann. :?:
    THX
    Visual Basic.NET 8o
    MS-SQL
    8o

    Cheffboss schrieb:

    Ich hoffe das NamedPipes nichts mit TCP/IP zu tun hat.
    Der war echt gut.
    Dann hoffe ich mal, dass NamedPipes nichts mit Programmierung zu tun haben. :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!
    Verdammt, ich kapier den Witz nicht.
    TCP/IP und NamedPipes sind zwei verschiedene Wege, um zwischen 2 Stellen zu kommunizieren.
    Da gab's neulich schon einen Thread dazu.
    Aber es müssen beide Seiten anbieten/unterstützen. Sonst wird das ein einseitiges Gespräch.
    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „VaporiZed“, mal wieder aus Grammatikgründen.

    Aufgrund spontaner Selbsteintrübung sind all meine Glaskugeln beim Hersteller. Lasst mich daher bitte nicht den Spekulatiusbackmodus wechseln.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „VaporiZed“ ()

    Cheffboss schrieb:

    Mir wurde NamedPipes empfohlen, damit kann
    Man Datenzwischen zwei Prozesse übertragen.
    Das setzt allerdings voraus, dass du den Programmcode beider Prozesse selbst modifizieren kannst.
    Wenn sich beide Prozesse auf demselben Rechner befinden, kannst du auch Anonymous Pipes verwenden.
    Universeller ist allerdings schon Named Pipes, falls du eines deiner Programme mal auf einen anderen Rechner verschieben willst.

    Cheffboss schrieb:

    Gemeinsamer Speicher
    Da gibt's eine nuget-Library, die es etwas einfacher macht.
    nuget.org/packages/SharedMemory/
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --
    @petaod @an alle
    Danke, für den neuen Begriff „Anonymous Pipes“. :!:
    Ich werde mich morgen darüber informieren.
    Meine zwei Prozesse laufen gleichzeitig auf einem
    Computer.
    Ich möchte aber keine TCP/IP Strings übers LAN verschicken.
    Deshalb suche ich eine Möglichkeit, die dazu besser geeignet ist.
    Denn ich muss von ProzessA alle 3 Sekunden, den Inhalt aus der Listbox zu ProzessB schicken.
    Ich könnte es auch lösen, indem ich jede 3 Sekunden die Daten in eine Textdatei schreibe und diese auslese.
    Aber das wäre nicht gut, dann hat die Festplatte niemals Ruhe, und gibt schneller den Geist auf.
    Falls mein Kunde das Programm den ganzen Tag am Laufen hat.
    Ich hoffe ich könnte euch erklären, warum ich eine bessere Lösung finden möchte, die für das System angenehmer ist.
    Deshalb anstatt lesen und schreiben, will ich nur lesen!
    ^^
    Visual Basic.NET 8o
    MS-SQL
    8o
    @petaod
    Danke, für die Info. :)
    Wenn es auch ohne TCP/IP geht wäre es mir lieber.
    Weil sonst muss der User der Firewall die Erlaubnis geben.
    Und viele User bekommen dann sofort Angst.
    O Je das Programm möchte etwas über LAN versenden.

    Ich habe nun ein Beispielprojekt gefunden, zwar in C# aber ich kann
    es vielleicht morgen mit einen Converter auf VB.NET umschreiben.
    Ich hoffe der Code ist „Anonymous Pipes“ ohne TCP/IP.
    Und ich kann ohne Probleme jede 3 Sekunden einen String versenden, ohne unnötig die Festplatte zu belasten.

    Link:
    codeproject.com/Articles/1087779/Anonymous-Pipes-Made-Easy
    Visual Basic.NET 8o
    MS-SQL
    8o
    @an alle
    Vielen Dank.
    DIe Lösung mit Quellcode:
    Anonyme Pipes unter VB.NET richtig anwenden!

    Die Lösung sind Anonyme Pipes diese auch ohne eine TCP/IP geht.
    Ich hoffe die Lösung hilf jemanden auch noch weiter...
    Nochmals Danke! :)
    Visual Basic.NET 8o
    MS-SQL
    8o