WinGetHandle

  • Komme mit WinGetHandle nicht zurecht. kann mir jemand helfen?
    GoogleChrome.au3

    [autoit]


    #Region #include
    #include-once

    [/autoit][autoit][/autoit][autoit]

    Opt("WinWaitDelay",100)
    Opt("WinTitleMatchMode",3)
    Opt("WinDetectHiddenText",1)
    Opt("MouseCoordMode",0)
    #EndRegion
    #Region Header
    #cs
    Title: Google Browser Automation UDF Library for AutoIt3
    Filename: GoogleChrome.au3
    Description: Eine Sammlung von Funktionen für die Erstellung, Verbindung, Lesen und Bearbeitung des Google Browsers.
    Author (de): gabischatz
    Version: V0.0-1
    Last Update: 04/02/2010
    #region --- ScriptWriter generated code Start ---
    #ce
    #endregion --- ScriptWriter generated code End ---
    #cs ===============================================================================
    Function Name: _GoogleStart()
    Beschreibung: Erstellt ein Google-Browser-Fenster
    Parameter (s): $s_Url - Optional: Gibt die URL zu navigieren, auf die Schaffung
    $F_tryAttach - Optional: Gibt an, ob zu versuchen, eine vorhandene Fenster zu binden,
    0 = (Standard) versuchen Sie nicht, legen
    1 = Versuchen Sie zu einem vorhandenen Fenster zu verbinden,
    $F_visible - Optional: Gibt an, ob das Browser-Fenster sichtbar sein wird
    0 = Browser-Fenster ist ausgeblendet
    1 = (Standard-) Browser-Fenster ist sichtbar
    2 = Minimiert das Browser-Fenster.
    3 = Maximiert das Browser-Fenster.
    4 = Macht eine Fensterminimierung oder -maximierung rückgängig.
    5 = Deaktiviert ein Browser-Fenster.
    6 = Aktiviert ein Browser-Fenster.
    $F_wait - Optional: Gibt an, ob für die Seite zu warten, bevor wieder zu laden
    0 = Return sofort, warten nicht auf die Seite zu laden
    1 = (Standard) Warten auf Laden der Seite abgeschlossen ist, bevor wieder
    $F_takeFocus - Optional: Gibt an, ob der beigefügten Fenster bringen zu konzentrieren
    0 = Don't Bring-Fenster in den Vordergrund
    1 = (Standard) zu bringen Fenster in den Vordergrund
    Requirement (s): AutoIt3 V3.2 oder höher
    Return Value (s): On Success - Liefert ein variables Objekt zeigt auf ein Objekt InternetExplorer.Application
    On Failure - Returns 0 und setzt @ ERROR
    @ ERROR - 0 ($_GooSatus_Success) = Keine Fehler
    - 1 ($_GooSatus_GeneralError) = Allgemeiner Fehler
    - 3 ($_GooSatus_InvalidDataType) = Ungültiger Datentyp
    - 4 ($_GooSatus_InvalidObjectType) = Ungültige Objekttyp
    - 6 ($_GooSatus_LoadWaitTimeout) = Load Wartezeitsperre
    - 8 ($_GooSatus_AccessIsDenied) = Zugriff verweigert
    - 9 ($_GooSatus_ClientDisconnected) = Client Disconnected
    Erweiterte @ - Set to true (1) oder falsch (0) f_tryAttach abhängig vom Erfolg von $
    ; Autor (de): gabischatz
    ;
    #ce -===============================================================================
    #EndRegion
    #Region _GoogleStart()
    ;Autostart
    Func _GooCreate($s_Url = "about:blank", $f_visible = 1, $f_tryAttach = 0, $f_wait = 1, $f_takeFocus = 1)
    Run(_Folders_Read(""))
    ;MsgBox(8256,'Information',_Folders_Read(""))
    WinWait("about:blank - Google Chrome", "")
    $_Google_handle = WinGetHandle("[Class:Chrome_WindowImpl_0]", "")
    ;MsgBox(8256,'Information', 'Handle des Editorfensters: ' & $_Google_handle)
    Sleep(1000)
    Switch $f_visible ;Zeigt, versteckt, minimiert, maximiert oder stellt ein Fenster wieder her.
    Case 0
    WinSetState ($_Google_handle, "", @SW_HIDE ) ; = Versteckt das Fenster.
    ;MsgBox(8256,'Information', 'An das Skript wurde Parameter /0 übergeben.')
    Case 1
    WinSetState ($_Google_handle, "", @SW_SHOW ) ; = Zeigt ein vorher verstecktes Fenster.
    ;MsgBox(8256,'Information', 'An das Skript wurde Parameter /1 übergeben.')
    Case 2
    WinSetState ($_Google_handle, "", @SW_MINIMIZE ) ; = Minimiert das Fenster.
    ;MsgBox(8256,'Information', 'An das Skript wurde Parameter /2 übergeben.')
    Case 3
    WinSetState ($_Google_handle, "", @SW_MAXIMIZE ) ; = Maximiert das Fenster.
    ;MsgBox(8256,'Information', 'An das Skript wurde Parameter /3 übergeben.')
    Case 4
    WinSetState ($_Google_handle, "", @SW_RESTORE ) ; = Macht eine Fensterminimierung oder -maximierung rückgängig.
    ;MsgBox(8256,'Information', 'An das Skript wurde Parameter /4 übergeben.')
    Case 5
    WinSetState ($_Google_handle, "", @SW_DISABLE ) ; = Deaktiviert ein Fenster.
    ;MsgBox(8256,'Information', 'An das Skript wurde Parameter /5 übergeben.')
    case 6
    WinSetState ($_Google_handle, "", @SW_ENABLE ) ; = Aktiviert ein Fenster.
    ;MsgBox(8256,'Information', 'An das Skript wurde Parameter /6 übergeben.')
    EndSwitch
    ;If $f_visible=1 Then _skript_ControlSend($s_Url)
    If $f_visible=1 Or $f_visible=2 Or $f_visible=3 Then _skript_ControlSend($s_Url)
    EndFunc
    #EndRegion
    #Region _skript_ControlSend
    Func _skript_ControlSend($Url)
    ;MsgBox(8256,'Information', $_Google_handle)
    ;If Not WinActive($_Google_handle,"") Then WinActivate($_Google_handle,"")
    ;WinWaitActive($_Google_handle,"")
    ;Tastaturfokus auf die Google Chrome-Toolbar setzen
    ;$hToolBar = ControlGetHandle($_Google_handle , "[CLASS:Chrome_AutocompleteEditView1]", "")
    ;MsgBox(8256,'Information', 'Handle der Chrome-Toolbar: ' & $hToolBar)
    Sleep(500)
    ;Test URL
    $s_Url1="www.google.de"
    Send ( $Url&"{ENTER}" )
    ;ControlSend ($_Google_handle, "" ,'["Handle"'& $hToolBar &']', $s_Url, 1 )
    EndFunc
    #EndRegion ### End _skript_visible ###
    #Region FolderNames _Folders_Read
    Func _Folders_Read($FolderName)
    ;Überprüfen ob bereits ein Autostart-Eintrag in der Registry besteht
    Local Const $__GoogleChrom_ShellFolders_Reg = "HKEY_CLASSES_ROOT\ChromeHTML\shell\open\command"
    Local $Path = RegRead($__GoogleChrom_ShellFolders_Reg,$FolderName)
    Return SetError(@error,@extended,$Path)
    EndFunc
    ;Sleep(10)
    #EndRegion

    [/autoit][autoit]

    ;Filename: GoogleChromeTest.au3
    #include
    #include
    #include
    #include
    #Region ### START Koda GUI section ### Form=
    $Form = GUICreate("Test-Form-Google-Chrome", 569, 56, 265, 668)
    $btn_HIDE = GUICtrlCreateButton("HIDE", 8, 16, 75, 25, $WS_GROUP)
    $btn_SHOW = GUICtrlCreateButton("SHOW", 88, 16, 75, 25, $WS_GROUP)
    $btn_MINIMIZE = GUICtrlCreateButton("MINIMIZE", 168, 16, 75, 25, $WS_GROUP)
    $btn_MAXIMIZE = GUICtrlCreateButton("MAXIMIZE", 248, 16, 75, 25, $WS_GROUP)
    $btn_RESTORE = GUICtrlCreateButton("RESTORE ", 328, 16, 75, 25, $WS_GROUP)
    $btn_DISABLE = GUICtrlCreateButton("DISABLE ", 408, 16, 75, 25, $WS_GROUP)
    $btn_ENABLE = GUICtrlCreateButton("ENABLE ", 488, 16, 75, 25, $WS_GROUP)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
    While 1$nMsg = GUIGetMsg()Switch $nMsgCase $GUI_EVENT_CLOSEExitCase$btn_HIDE;_GooCreate($s_Url = "about:blank", $f_visible = 1, $f_tryAttach = 0, $f_wait = 1, $f_takeFocus = 1)_GooCreate( "google.de", 0, 0, 0,0)Case$btn_SHOW_GooCreate( "google.de", 1, 0, 0,0)Case$btn_MINIMIZE_GooCreate( "google.de", 2, 0, 0,0)Case$btn_MAXIMIZE_GooCreate( "google.de", 3, 0, 0,0)Case$btn_RESTORE_GooCreate( "google.de", 4, 0, 0,0)Case$btn_DISABLE_GooCreate( "google.de", 5, 0, 0,0)Case$btn_ENABLE_GooCreate( "google.de", 6, 0, 0,0)EndSwitchWEnd

    [/autoit]

    Einmal editiert, zuletzt von gabischatz (12. Februar 2010 um 12:16)

  • Mit AutoIt v3 Window Information.
    bekomme ich bei den Fenstern [Class:Chrome_WindowImpl_0] also habe ich geschriben

    [autoit]

    $_Google_handle = WinGetHandle("[Class:Chrome_WindowImpl_0]", "")

    [/autoit][autoit][/autoit][autoit]

    MsgBox(8256,'Information', 'Handle des Editorfensters: ' & $_Google_handle)

    [/autoit]

    Wert stimmt mit Info-Fenster überein.

    das gleiche hier.

    [autoit]

    $hToolBar = ControlGetHandle($_Google_handle , "[CLASS:Chrome_AutocompleteEditView1]", "")
    ;MsgBox(8256,'Information', 'Handle der Chrome-Toolbar: ' & $hToolBar)

    [/autoit]

    nur lässt sich das Fenster nicht steuern.

    [autoit]

    ControlSend ($_Google_handle, "" ,'["Handle"'& $hToolBar &']', $s_Url, 1 )

    [/autoit]

    oder

    [autoit]

    Switch $f_visible ;Zeigt, versteckt, minimiert, maximiert oder stellt ein Fenster wieder her.
    Case 0 WinSetState ($_Google_handle, "", @SW_HIDE ) ; = Versteckt das Fenster.
    ;MsgBox(8256,'Information', 'An das Skript wurde Parameter /0 übergeben.')
    Case 1 WinSetState ($_Google_handle, "", @SW_SHOW ) ; = Zeigt ein vorher verstecktes Fenster.
    ;MsgBox(8256,'Information', 'An das Skript wurde Parameter /1 übergeben.')
    ..............

    [/autoit]

    hat denn keiner eine Idee was ich falsch mache?

    Einmal editiert, zuletzt von gabischatz (12. Februar 2010 um 12:14)