1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Tweaky

Beiträge von Tweaky

  • OrganizeIncludes

    • Tweaky
    • 5. Juli 2007 um 15:03

    Danke für die neue Version.
    Sind wirklich viele Erweiterungen dazu gekommen.
    Hab se mal getestet.

    So ganz einwandfrei funktioniertes leider noch nicht.

    1. Wenn ich die ini-Datei erstellt habe und dann eine Datei im Ordner "include" umbenenne, dann zeigt mir dein Script immernoch den alten Dateinamen an, ob wohl diese Datei nicht mehr existiert.

    2. Wenn ich den Silent-Modus nutzte:
    z. B. GUICreate dann Tastenkombi, zack
    #include<GUIConstants.au3>
    wird eingefügt, OK

    dann z. B. _arraysearch() eingebaut, dann wird mir aber
    #include<Array.au3>
    #include<GUIConstants.au3>
    eingefügt, also ist das eine include leider doppelt :(

  • IE 7 Url in neuem Tab öffnen

    • Tweaky
    • 2. Juli 2007 um 21:25

    Hi,
    Falls ein bestimmtes IE-Fenster (patch-info.de) existiert, dann soll dort ein Tab geöffnet werden und eine url eingegeben werden.

    In der ie.au3 habe ich eine Funktion namens

    [autoit]

    __IENavigate

    [/autoit]


    (Achtung 2x_)
    entdeckt, mit der man Tabs erstellen kann.
    Dies funktioniert nun (endlich ;-)) auch.

    Da der Rückgabewert von __IENavigate anders ist als bei _IENavigate muß es mit _IEAttach wieder korrigiert werden.

    Und nun läufts :D

    Jibbi :rofl:

    PS: Alle 3 "Möglichkeiten" eingebaut
    1. Wenn das Fenster mit der Seite nicht existiert, wird sie in einem neuen Fenster geladen und gesucht.
    2. Wenn das Fenster mit der Seite existiert und die Startseite angezeigt wird, dann wird in diesem Fenster gesucht.
    3. Wenn das Fenster mit der Seite existiert und bereits gesucht wurde, dann wird ein neuer Tab erstellt, die Seite geladen und gesucht.

    Vielleicht kanns ja einer brauchen, ganz oder nur die Funktionsweise :rock:

    [autoit]

    #include <IE.au3>

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

    DIM $oIE

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

    $kb = "KB918005"

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

    _internet_seite ($kb)

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

    Func _internet_seite ($kb)
    AutoItSetOption("WinTitleMatchMode", 3)
    If WinExists("patch-info.de - Microsoft Internet Explorer") Then
    AutoItSetOption("WinTitleMatchMode", 2)
    $oIE = _IEAttach("patch-info.de")
    _IELoadWait ($oIE)
    __IENavigate($oIE, "www.patch-info.de", 1, 0x0800, "", "", "")
    WinWait("Startseite - patch-info.de")
    $oIE = _IEAttach("Startseite - patch-info.de")
    _IELoadWait ($oIE)
    ElseIf WinExists("Startseite - patch-info.de - Microsoft Internet Explorer") Then
    AutoItSetOption("WinTitleMatchMode", 2)
    $oIE = _IEAttach("patch-info.de")
    _IELoadWait ($oIE)
    Else
    $oIE = _IECreate ("www.patch-info.de", 0, 1, 1, 0)
    _IELoadWait ($oIE)
    $oHWND = _IEPropertyGet($oIE, "hwnd") ;maximieren
    WinSetState ($oHWND, "", @SW_MAXIMIZE) ;maximieren
    EndIf

    $oForm = _IEFormGetObjByName ($oIE, "searchform")
    $oQuery = _IEFormElementGetObjByName ($oForm, "serendipity[searchTerm]")
    _IEFormElementSetValue ($oQuery, $kb)
    _IEFormSubmit ($oForm)
    EndFunc

    [/autoit]
  • verpeilt ... bestehendes IE-Fenster übernehmen?

    • Tweaky
    • 2. Juli 2007 um 20:17

    schon klar ;)
    nur leider ist mein Englisch nicht so wunderbar. :D

    EDIT: OK hat geklappt :]

  • verpeilt ... bestehendes IE-Fenster übernehmen?

    • Tweaky
    • 2. Juli 2007 um 19:59

    Hi,
    kann dir leider nicht helfen X(
    Hab aber ne Frage zu

    [autoit]

    $oIE = _IEAttach("Portal")

    [/autoit]


    Damit kann man ja ein bereits existierendes IE-Fenster nutzen und z. B. seine Internet-Adresse eingeben, richtig?

    Was muß ich da genau in die () schreiben?

    Danke ;)

  • Array 2-stufig sortieren

    • Tweaky
    • 1. Juli 2007 um 18:36

    Ah ja stimmt, hab ich wohl überlesen.
    Mit der "normalen" Sortierfunktion funktionierts.
    Danke ;)

  • Array 2-stufig sortieren

    • Tweaky
    • 1. Juli 2007 um 16:41

    Hi BugFix
    habe vielleicht einen Fehler festgestellt ?(

    Wenn ich z. b. ein Array mit 4 Spalten habe, und ich sortiere die 2. oder 3. Spalte, dann wird nicht diese, sondern die 4. Spalte sortiert.

    Bsp:

    Spoiler anzeigen
    [autoit]

    #include<Array.au3>
    #include<ArrayMore.au3>

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

    Dim $avArray[5][4]
    $avArray[0][0] = "JPM"
    $avArray[1][0] = "Holger"
    $avArray[2][0] = "Jon"
    $avArray[3][0] = "Larry"
    $avArray[4][0] = "Jeremy"
    $avArray[0][1] = "z"
    $avArray[1][1] = "d"
    $avArray[2][1] = "k"
    $avArray[3][1] = "b"
    $avArray[4][1] = "x"
    $avArray[0][2] = "KB991213"
    $avArray[1][2] = "KB911213"
    $avArray[2][2] = "KB931213"
    $avArray[3][2] = "KB971213"
    $avArray[4][2] = "KB999213"
    $avArray[0][3] = "a"
    $avArray[1][3] = "d"
    $avArray[2][3] = "b"
    $avArray[3][3] = "e"
    $avArray[4][3] = "c"

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

    _ArrayDisplay( $avArray, "original" )
    _ArraySort_2ary($avArray, 0)
    _ArrayDisplay( $avArray, "nach der 1. Spalte sortiert" )
    _ArraySort_2ary($avArray, 1)
    _ArrayDisplay( $avArray, "nach der 2. Spalte sortiert" )
    _ArraySort_2ary($avArray, 2)
    _ArrayDisplay( $avArray, "nach der 3. Spalte sortiert" )
    _ArraySort_2ary($avArray, 3)
    _ArrayDisplay( $avArray, "nach der 4. Spalte sortiert" )

    [/autoit]
  • Case Schleife: Wenn ein Case richtig ist, die anderen trotzdem durchlaufen

    • Tweaky
    • 1. Juli 2007 um 14:55

    8)OK, danke werd ich machen.

    PS: Dann ist ContinueCase ja eigentlich sinnlos ;)

  • Case Schleife: Wenn ein Case richtig ist, die anderen trotzdem durchlaufen

    • Tweaky
    • 1. Juli 2007 um 14:28

    Hi,
    ich möchte, dass eine Select-Case Schleife alle Case Befehle durchläuft. Wenn ein Case zutrifft, sollen trotzdem die anderen durchlaufen werden, so dass es sein kann, dass 2 Case richtig sind.

    Kleines Bsp:

    [autoit]

    #include <GUIConstants.au3>

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

    $GUI_titel = "TEST"
    $GUI = GUICreate($GUI_titel , 695, 405, @DesktopWidth -695 -20, @DesktopHeight -405 -80)
    $test = 5

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

    GUISetState()
    Select
    Case $test = 5
    MsgBox(0,"", "Genau 5")
    ContinueCase
    Case $test > 2
    MsgBox(0,"", "Größer 2")
    ContinueCase
    Case $test < 2
    MsgBox(0,"", "Kleiner 2")
    EndSelect

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd

    [/autoit]

    Die erste und zweite msgbox soll angezeigt werden.

    EDIT: Danke Lon. Es klappt. Allerdings bekomme ich nun alle 3 msgboxen angezeigt???

  • 2D-Array bestimmte Zeilen löschen

    • Tweaky
    • 1. Juli 2007 um 11:53

    ups, soweit bin ich ja noch gar nicht gekommen.
    Danke, dass du so fix bist BugFix :D

  • OrganizeIncludes

    • Tweaky
    • 1. Juli 2007 um 11:48

    OK, danke.
    Eilt ja nicht ;)

  • 2D-Array bestimmte Zeilen löschen

    • Tweaky
    • 1. Juli 2007 um 11:46

    Hi, Array-Gott ;)
    Es soll der Zeilen Index angegeben werden und dann die Zeile gelöscht werden.

    Ich habe fünf Ordner.
    Diese schreibe ich jeweils in ein Array und dann alle in ein gemeinsames Arrray.
    Dann will ich bestimmte Ordner wieder herausfiltern, die ich nicht brauche.
    Dies mache ich so:

    Die einzelnen Ordner werden durch die Funktion "_neuestes_update" in ein Array geschrieben.

    Spoiler anzeigen
    [autoit]

    ;anzeigender Name in der Liste mit den Updates
    $art1_1 = "XP-Pro"
    $art2_1 = "Laptop"
    $art3_1 = "XP-MCE"
    $art4_1 = "IE-6"
    $art4_2 = "IE-7"

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

    ;Pfade zu den Ordnern mit den Updates
    $pfad_PC_Art_Laptop = @ScriptDir & "\Laptop\"
    $pfad_Win_XP_Pro = @ScriptDir & "\XP-Pro\"
    $pfad_Win_XP_MCE = @ScriptDir & "\XP-MCE\"
    $pfad_IE_6 = @ScriptDir & "\IE-6\"
    $pfad_IE_7 = @ScriptDir & "\IE-7\"

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

    ;Stand des Updatepacks
    $g = 0
    $neuestes_update_alt = 0
    _neuestes_update($pfad_PC_Art_Laptop, $art2_1)
    _neuestes_update($pfad_Win_XP_Pro, $art1_1)
    _neuestes_update($pfad_Win_XP_MCE, $art3_1)
    _neuestes_update($pfad_IE_6, $art4_1)
    _neuestes_update($pfad_IE_7, $art4_2)
    $io_kurz1 = StringLeft($io, 8)
    $io_kurz2 = _StringInsert($io_kurz1, ".", 4)
    $io_kurz3 = _StringInsert($io_kurz2, ".", 7)

    [/autoit]

    Funktion "_neuestes_update"

    Spoiler anzeigen
    [autoit]

    Func _neuestes_update($pfad, $art)
    $zaehler_ordner = $zaehler_ordner+1
    $datum_array = _FileListToArray($pfad, "*.exe", 1)
    $datum_datei_alt = 0
    For $i = 1 to UBound($datum_array)-1
    $datum_datei = FileGetTime($pfad & $datum_array[$i], 0, 1)
    If $datum_datei > $datum_datei_alt Then
    $neuestes_update = $datum_datei
    Else
    $neuestes_update = $datum_datei_alt
    EndIf
    $g = $g+1

    If StringInStr($datum_array[$i], "-v";) Then
    $kb = StringMid($datum_array[$i], StringInStr($datum_array[$i], "KB";), 11)
    Else
    $kb = StringMid($datum_array[$i], StringInStr($datum_array[$i], "KB";), 8)
    EndIf

    $time = FileGetTime($pfad & $datum_array[$i], 0, 1)
    $alle_updates[$g][0] = $datum_array[$i]
    $alle_updates[$g][1] = $art
    $alle_updates[$g][2] = $kb
    $alle_updates[$g][3] = $time
    Next

    If $neuestes_update > $io Then
    $io = $neuestes_update
    Else
    $io = $neuestes_update_alt
    EndIf
    $neuestes_update_alt = $io
    Endfunc ;==>_neuestes_update()

    [/autoit]

    Dann werden bestimmte Ordner wiederherausgelöscht. Ich setzte alle Zellen der Zeile auf "" und sage dann, dass die leeren Zeilen gelöscht werden sollen.

    Spoiler anzeigen
    [autoit]

    For $q = 0 to UBound($alle_updates)-1
    If $alle_updates[$q][1] = $art4_1 Then
    $alle_updates[$q][0] = ""
    $alle_updates[$q][1] = ""
    $alle_updates[$q][2] = ""
    $alle_updates[$q][3] = ""
    EndIf

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

    If $alle_updates[$q][3] > $datum Then $zaehler_neu = 1
    Else
    $zaehler_neu = 0
    EndIf
    $updates_gesamt +=$zaehler_neu
    Next

    [/autoit]
  • 2D-Array bestimmte Zeilen löschen

    • Tweaky
    • 1. Juli 2007 um 00:54

    Hi,
    ich habe ein 2D-Array :D
    Kann ich davon bestimmte Zeilen löschen ?(

    Wenn ich es richtig sehen, funktioniert _ArrayDelete nur mit 1D-Arrays :D

    PS: Bisher mache ich es so, dass ich den Inhalt der kompletten Zeile auf "" setze und dann die leeren Zeilen lösche.
    Umständlich aber es geht. Ne richtige Funktion wäre natürlich besser ;)

  • OrganizeIncludes

    • Tweaky
    • 30. Juni 2007 um 21:51

    Hi, :D
    hab mal wieder was an deinem genialen Script zu meckern :rofl:

    Wenn die Datei "includes.ini" noch nicht besteht, dann kommt die Meldung: "No Files/Folders found".
    Wenn ich es nochmal starte, kommt keine Meldung mehr und es läuft.
    Könnte man die Meldung nicht abschalten? :tongue:


    Außerdem hab ich folgendes festgestellt:
    Wenn die "includes.ini" erstellt ich und ich dann eine Datei in den "includes"-Ordner kopiere und dann dein Script ausführe, dann wird die neue Datei nicht aufgelistet, obwohl sie für mein Script gebraucht wird.
    In der "includes.ini" steht die Datei auch nicht drin.
    Sollte deshalb die "includes.ini" besser bei jedem Zugriff neu erstellt werden? :tongue:

  • ArrayMore.au3

    • Tweaky
    • 30. Juni 2007 um 21:21

    Bisher habe ich dies immer so gemacht:

    Eines meiner Beispiel, läuft nicht, da es nur ein Ausschnitt ist:

    Alle Dateien einlesen in ein 1D-Array
    Dateien mit meinen Kriterien rausfiltern und in ein neues 2D-Array schreiben (dazu noch das Datum)
    dann die leeren Zeilen löschen

    Spoiler anzeigen
    [autoit]

    ...
    ;Array ($Filelist) erzeugen (nur Dateinamen)
    Dim $array_quelle = 0
    $anzahl = DirGetSize($Quellordner, 3)
    Dim $array_quelle[$anzahl[1] + 1][2]
    $FileList = _FileListToArray($Quellordner, "*", 1)
    For $i = 1 To UBound($FileList) - 1
    If (StringRight($FileList[$i], 4) = ".jpg") OR (StringRight($FileList[$i], 4) = ".avi") OR (StringRight($FileList[$i], 4) = ".thm") Then
    $array_quelle[$i][0] = $FileList[$i]
    $time2 = FileGetTime($Quellordner & $FileList[$i], 0)
    $array_quelle[$i][1] = $time2[0] & $time2[1] & $time2[2] & $time2[3] & $time2[4] & $time2[5]
    EndIf
    Next

    ;Leere Zeilen löschen
    _Array2DEmptyDel($array_quelle)
    ...

    [/autoit]

    PS: Haste du das mit "_Array2DSearch" gelesen? ;)

    Wie kann ich Arrays zusammenfügen?
    Vor allem 2D-Arrays.

  • Graphic auf Tab - geht nicht !?!?

    • Tweaky
    • 30. Juni 2007 um 21:00

    Wow, danke so siehts schon besser, perfekt ;)

  • Graphic auf Tab - geht nicht !?!?

    • Tweaky
    • 30. Juni 2007 um 20:31

    Hm, habs probiert, geht leider nicht X(

    [autoit]

    #include<GUIConstants.au3>

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

    $GUI_titel = "TEST"
    $GUI = GUICreate($GUI_titel , 695, 405, @DesktopWidth -695 -20, @DesktopHeight -405 -80)

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

    GUICtrlCreateTab(10, 10, 680, 400)
    GUICtrlCreateTabItem("TEST")

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

    GUICtrlCreateGraphic(15, 75, 80, 70)
    GUICtrlSetBkColor(-1, 0xFFD700)

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

    GUICtrlCreateGraphic(115, 75, 95, 70)
    GUICtrlSetBkColor(-1, 0xFFD700)

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

    GUICtrlCreateGraphic(230, 75, 77, 115)
    GUICtrlSetBkColor(-1, 0xFFD700)

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

    GUICtrlCreateTabItem("")

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd

    [/autoit]
  • Graphic auf Tab - geht nicht !?!?

    • Tweaky
    • 30. Juni 2007 um 20:13

    Hi,
    ich habe einen Tab und 3 Grafiken erstellt.
    Leider werden die Grafiken nicht angezeigt.
    Wenn ich den Tab entferne, werden sie angezeigt. ?(

    [autoit]

    #include<GUIConstants.au3>

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

    $GUI_titel = "TEST"
    $GUI = GUICreate($GUI_titel , 695, 405, @DesktopWidth -695 -20, @DesktopHeight -405 -80)

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

    GUICtrlCreateTab(10, 10, 680, 400)
    GUICtrlCreateTabItem("TEST")

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

    GUICtrlCreateGraphic(15, 75, 80, 70)
    GUICtrlSetBkColor(-1, 0xFFD700)

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

    GUICtrlCreateGraphic(115, 75, 95, 70)
    GUICtrlSetBkColor(-1, 0xFFD700)

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

    GUICtrlCreateGraphic(230, 75, 77, 115)
    GUICtrlSetBkColor(-1, 0xFFD700)

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

    GUISetState()

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

    While 1
    $msg = GUIGetMsg()
    Select
    Case $msg = $GUI_EVENT_CLOSE
    Exit
    EndSelect
    WEnd

    [/autoit]
  • Adressbuch erstellen

    • Tweaky
    • 28. Juni 2007 um 23:40

    So hatte ich es am Anfang auch vor (allerdings mit ner ini)

    Glaube halt, dass dies auf Dauer nicht so gut ist.
    Deshalb wird wohl die Datenbank besser sein.

    Aber trotzdem Danke :D

  • Adressbuch erstellen

    • Tweaky
    • 28. Juni 2007 um 23:24

    Aha, ist dies schwer zu erleben, wenn man gar keine Ahnung davon hat?

  • Danke!

    • Tweaky
    • 28. Juni 2007 um 23:22

    auch von mir Glückwunsch an die Spinne :D
    und natürlich auch Dank an die Admins, dass hier alles so gut läuft :rock:

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™