Seite 3 von 3 Erste 123
  1. #21
    Avatar von uncopyable
    Registriert seit
    19.11.2011
    Beiträge
    282
    Thanked 235 Times in 120 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    PHP-Code:
    Dim Textbox2 As IntPtr Win32API.FindWindowEx(Control3IntPtr.Zero"Edit"Nothing
    in
    PHP-Code:
    Dim Textbox2 As IntPtr Win32API.FindWindowEx(Control3IntPtr.Zero"RichEdit20W"Nothing
    ändern

    Wobei Diebspiel recht hat, unter Java 7 geht das absenden nicht!


    while( behappy() ) { code(); }

  2. The Following 2 Users Say Thank You to uncopyable For This Useful Post:

    Dbzfreak1337 (08.10.2012), soulreafer (09.10.2012)

  3. #22

    Registriert seit
    19.11.2011
    Beiträge
    2.128
    Thanked 1.936 Times in 1.180 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    Hab die Klasse mal etwas überarbeitet und sauberer geschrieben. Das Enter senden funktioniert allerdings auch hier nicht.
    Code:
     Class KnuddelsJavaTextBox
            <DllImport("User32.Dll")> Private Shared Function FindWindow(ByVal lpClassName As String, ByVal lpWindowName As String) As IntPtr
            End Function
            <DllImport("User32.Dll")> Private Shared Function FindWindowEx(ByVal parentHandle As IntPtr, ByVal childAfter As IntPtr, ByVal className As String, ByVal windowTitle As IntPtr) As IntPtr
            End Function
            <DllImport("User32.Dll")> Private Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal Msg As UInt32, ByVal wParam As IntPtr, ByVal lParam As String) As IntPtr
            End Function
            <DllImport("User32.Dll")> Private Shared Function SendMessage(ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As Integer, ByVal lParam As StringBuilder) As Integer
            End Function
            <DllImport("User32.Dll")> Private Shared Function PostMessage(ByVal hWnd As Integer, ByVal msg As UInteger, ByVal wParam As UInteger, ByVal lParam As Integer) As IntPtr
            End Function
            <DllImport("User32.Dll")> Private Shared Function PostMessage(ByVal hWnd As Integer, ByVal msg As UInteger, ByVal wParam As UInteger, ByVal lParam As UInteger) As IntPtr
            End Function
            Public Shared Sub Send(ByVal Text As String)
                Dim Name As String = String.Empty
                Name = Process.GetProcesses.Single(Function(c) c.MainWindowTitle.Contains("Channel")).MainWindowTitle
                Dim Hwndd As IntPtr = FindWindow("SunAwtFrame", Name)
                For i As Integer = 0 To 2
                    Hwndd = FindWindowEx(Hwndd, IntPtr.Zero, "SunAwtCanvas", IntPtr.Zero)
                Next
                Hwndd = FindWindowEx(Hwndd, IntPtr.Zero, "RichEdit20W", IntPtr.Zero)
                SendMessage(Hwndd, CInt(&HC), IntPtr.Zero, Text)
                SendMessage(Hwndd, CUInt(&H7), CType(1048576, IntPtr), String.Empty)
                Thread.Sleep(10)
                PostMessage(CInt(Hwndd), CUInt(&H100), &HD, &H1C0001)
                PostMessage(CInt(Hwndd), CUInt(&H102), &HD, &H1C0001)
                Thread.Sleep(10)
                PostMessage(CInt(Hwndd), CUInt(&H101), CUInt(&HD), CUInt(&HC01C0001UI))
                SendMessage(Hwndd, CUInt(&H8), CType(1048576, IntPtr), String.Empty)
            End Sub
        End Class
    Aufruf geht mit:

    Code:
    KnuddelsJavaTextBox.Send("HUHU")

  4. The Following User Says Thank You to !lkay For This Useful Post:

    soulreafer (09.10.2012)

  5. #23
    Avatar von soulreafer
    Registriert seit
    07.10.2012
    Beiträge
    175
    Thanked 64 Times in 35 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    Ja geht echt nur in Java Applicationen nicht.
    Hab den "Chat" mal in VB nachgebaut und die API dort eingreifen lassen. Funktioniert -.-

  6. #24

    Registriert seit
    19.11.2011
    Beiträge
    2.128
    Thanked 1.936 Times in 1.180 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    Java ist ja von der Lauffähigkeit fast plattformunabhängig(weil es Java für fast alle Betriebssysteme gibt) , demnach haben die eigene TextBoxen die ein sehr eigenes Verhalten haben und nicht windowstypisch sind.

  7. #25
    Avatar von soulreafer
    Registriert seit
    07.10.2012
    Beiträge
    175
    Thanked 64 Times in 35 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    Habs gefixxt
    war eigentlich einfach. Einfach vorm simulierten "enter" noch einen mausklick ins RichEdit Control simulieren.
    wenn man das Fenster minimiert braucht man auch noch SetForegroundWindow() um die RTB zu fokusieren
    greez,

    Geändert von soulreafer (10.10.2012 um 00:56 Uhr)

  8. #26
    Avatar von Diebspiel
    Registriert seit
    18.11.2011
    Beiträge
    311
    Thanked 191 Times in 102 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    Die Lösung kenne ich.
    Es gibt auch andere, z.B. das Fenster 100% durchsichtig zu machen und dann in den Vordergrund holen, damit es nicht immer nervt.

    Halte das aber für keine gute Lösung, da man bei jeder Variante immer erst das Fenster wieder holen muss - und währenddessen kann man nichts anderes machen. Ein Api-Bot zeichnet sich aber durch die alt-bewährten Eigenschaften aus. Das Fenster wird nicht manipuliert oder sonst was, sondern es kann lediglich auch gesendet werden, wenn es ganz normal minimiert oder einfach nur nicht im Vordergrund ist.

  9. #27
    Avatar von soulreafer
    Registriert seit
    07.10.2012
    Beiträge
    175
    Thanked 64 Times in 35 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    Das Fenster muss aber nicht in den Vordergrund gehohlt werden damit der Text da hin kommt wo er hin soll.
    Lediglich die Richtextbox muss focusiert werden. Das geht auch im Versteckten/minimierten Zustand.
    Und dank API geschieht das auch obwohl man Manuell ein anderes Fenster zwangsweise durch nutzen des Rechners (surfen, spielen,...)
    Fokusiert. Also bei mir bleiben die Applets immer versteckt (auch nicht in der Startleiste sichtbar) und der Bot läuft dennoch...

    siehe http://u-hacks.net/showroom-89/letme...orschau-17171/

  10. #28
    Avatar von Diebspiel
    Registriert seit
    18.11.2011
    Beiträge
    311
    Thanked 191 Times in 102 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    Kann ich nicht bestätigen.

    SetForegroundWindow() - Moves the window associated with the passed handle to the front.

    Und genau das tut es auch. Zwar kann man direkt danach das Alte wieder in den Vordergrund holen, genau bei diesem Moment hat man aber wieder den nervigen Effekt des ständigen Wechselns.

    http://www.vb-paradise.de/programmie...en/#post680345

    ... ist übrigens völliger Unsinn. Java verwendet auch nur Windows-Controls und zaubert keine eigenen her
    Geändert von Diebspiel (12.10.2012 um 21:46 Uhr)

  11. The Following 2 Users Say Thank You to Diebspiel For This Useful Post:

    Dbzfreak1337 (12.10.2012), orion-x (12.10.2012)

  12. #29

    Registriert seit
    06.11.2011
    Beiträge
    418
    Thanked 686 Times in 246 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    Man kann auch eigene Text-Komponenten schreiben, die auf Canvases gezeichnet werden.

  13. #30

    Registriert seit
    17.12.2011
    Beiträge
    151
    Thanked 24 Times in 23 Posts

    Standard AW: [VB.NET] Knuddels Fenster manipulieren

    gibt es keine Projektmappe davon?!
    Public Signatur

    Dim Mfg As Mit freundlichen grüßen
    Dim Getsha As User.Getsha

    Mfg.Getsha()

    End Signatur

Seite 3 von 3 Erste 123

Ähnliche Themen

  1. Knuddels schließt sich immer bei neuen Fenster
    Von Cracker im Forum Fragen & Probleme
    Antworten: 4
    Letzter Beitrag: 14.01.2013, 21:51
  2. [CSS] Windows-Style Fenster
    Von Comu im Forum CSS
    Antworten: 0
    Letzter Beitrag: 28.07.2012, 21:38
  3. USA manipulieren Al Kaida Website!
    Von Waterpolo im Forum RealLife News
    Antworten: 4
    Letzter Beitrag: 24.05.2012, 14:05
  4. Knuddels Applet bearbeiten / manipulieren
    Von Salvos im Forum Knuddels Programmierung
    Antworten: 14
    Letzter Beitrag: 17.12.2011, 20:21
  5. /code Fenster neu
    Von helfen im Forum Knuddels-News
    Antworten: 10
    Letzter Beitrag: 26.11.2011, 14:36
Diese Seite nutzt Cookies, um das Nutzererlebnis zu verbessern. Klicken Sie hier, um das Cookie-Tracking zu deaktivieren.