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. BugFix

Beiträge von BugFix

  • Anti-Rassismus-Aktion ?

    • BugFix
    • 13. August 2007 um 19:01
    Zitat

    Original von Gun-Food
    Welche Stolpersteine meinst du?

    Diese Aktion nennt sich Stolpersteine. Dort werden kleine Messingquader mit Namen von Opfern an diversen Orten in Fußwege eingelassen.
    Nicht wirklich zum 'Stolpern', sondern zum gedanklichen stolpern.
    http://de.wikipedia.org/wiki/Stolpersteine

  • In Listview Items verschieben mit mitwandernder Markierung

    • BugFix
    • 13. August 2007 um 15:56

    Hipp-Hipp-Hurra ;) - gelöst.

    Ist vielleicht nicht die elegantetse Methode, aber es funktioniert. Ich simuliere nur per Send(), wie ich es sonst per Hand getan hätte.
    In der Funktion " Button1Click()" wird das erledigt.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #Include <GuiListView.au3>
    Opt("GUIOnEventMode", 1)
    Dim $arItem[8]
    $AForm1 = GUICreate("AForm1", 633, 454, 193, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, "AForm1Close")
    $ListView1 = GUICtrlCreateListView("Spalte1|Spalte2|Spalte3", 76, 76, 429, 221, BitOR _
    ($LVS_REPORT,$LVS_SHOWSELALWAYS), BitOR($WS_EX_CLIENTEDGE,$LVS_EX_GRIDLINES, _
    $LVS_EX_FULLROWSELECT))
    GUICtrlSendMsg(-1, 0x101E, 0, 80)
    GUICtrlSendMsg(-1, 0x101E, 1, 80)
    GUICtrlSendMsg(-1, 0x101E, 2, 80)
    For $i = 0 To 7
    $arItem[$i] = GUICtrlCreateListViewItem('Zeile ' & $i & '- 1' & '| - 2 | - 3', $ListView1)
    Next
    $Button1 = GUICtrlCreateButton("Move With Selection", 388, 340, 121, 29, 0)
    GUICtrlSetOnEvent(-1, "Button1Click")
    GUISetState(@SW_SHOW)

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

    While 1
    Sleep(100)
    WEnd

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

    Func AForm1Close()
    Exit
    EndFunc

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

    Func Button1Click()
    Local $arSelItems = _GUICtrlListViewGetSelectedIndices($ListView1, 1)
    Local $skip = -1 ; wie weit und in welche Richtung verschieben
    For $i = 1 To $arSelItems[0]
    _MoveLVItem($arSelItems[$i], $skip, $ListView1)
    Next
    GUISetState(@SW_LOCK, $AForm1)
    ControlClick($AForm1, '', $ListView1)
    $idx = _GUICtrlListViewGetSelectedIndices($ListView1, 0)
    Send("{UP " & $idx & "}") ; Auf Listenanfang
    For $i = 1 To $arSelItems[0]
    If $i = 1 Then
    If $arSelItems[$i]+$skip > 0 Then
    Send("{DOWN " & $arSelItems[$i]+$skip & "}")
    EndIf
    Else
    Send("^{DOWN " & $arSelItems[$i]-$arSelItems[$i-1] & "}")
    Send("^{SPACE}")
    EndIf
    Next
    GUISetState(@SW_UNLOCK, $AForm1)
    EndFunc

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

    ;----------------------------------------------------------------------------------------------------------------------
    ; Funktion _MoveLVItem($ItemIndex, $StepWidth, $hLV)
    ;
    ; Beschreibung verschiebt per Index angegebenen Eintrag eines ListViewCtrl um eine Anzahl Positionen
    ;
    ; Parameter $ItemIndex: Index der Zeile
    ; $StepWidth: Anzahl Zeilen um die der Eintrag verschoben wird (negative Zahl - aufwärts)
    ; $hLV: ListView ID
    ;
    ; Erfordernisse #include <GuiListView.au3>
    ;
    ; Autor BugFix ([email='bugfix@autoit.de'][/email])
    ;----------------------------------------------------------------------------------------------------------------------
    #include <GuiListView.au3>
    Func _MoveLVItem($ItemIndex, $StepWidth, $hLV)
    If ($ItemIndex + $StepWidth) < 0 Or _
    ($ItemIndex + $StepWidth) > _GUICtrlListViewGetItemCount($hLV)-1 Then
    SetError(1)
    Return 0
    EndIf
    Local $txt2skip = _GUICtrlListViewGetItemText($hLV, $ItemIndex)
    _GUICtrlListViewInsertItem($hLV, $ItemIndex + $StepWidth, $txt2skip)
    _GUICtrlListViewDeleteItem($hLV, $ItemIndex+1)
    Return -1
    EndFunc ;==>_MoveLVItem

    [/autoit]
  • Array teilen

    • BugFix
    • 13. August 2007 um 14:28

    Vielleicht auch eine Variante:

    Leg doch einfach fest, wieviel Zeilen ein Block maximal haben darf. Und dann direkt die Zeilen aus deiner Datei lesen.

    [autoit]

    $maxBlock = 20 ; oder wieviel auch immer
    $last = 0
    Do
    $endBlock = $last+$maxBlock
    If $endBlock > $zeilenGesamt Then $endBlock = $zeilenGesamt
    For $i = $last+1 to $endBlock
    ; verarbeiten
    Next
    $last = $endBlock
    Until $i = $zeilenGesamt

    [/autoit]
  • CountDown

    • BugFix
    • 13. August 2007 um 14:15

    Finde ich nicht so passend, wenn der Beitrag im Skriptforum verwendet wird für H&Ü - deshalb abgetrennt.

    Schreib doch mal deinen Code hier rein, nicht nur so einen Schnipsel. Im Moment, weiß ich nicht was du möchtest.

  • Eintrag in einem ListView verschieben

    • BugFix
    • 13. August 2007 um 13:51

    _MoveLVItem($ItemIndex, $StepWidth, $hLV)

    Der per $ItemIndex angegebene Eintrag eines ListView wird um die in $StepWidth angegebene Anzahl (und Richtung, '-' nach oben) verschoben.

    Edit:
    Hab jetzt mal noch eine ergänzende Funktion für das Verschieben markierter Elemente hinzugefügt (die obige Funktion verwendet).

    An der Funktion hab ich noch einen Bug gefixt - Verschieben mit positiver Zahl war fehlerhaft.

    _MoveAndMarkLVItem($hLV, $hGUI, $Skip)

    Hier in einem Bsp.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #Include <GuiListView.au3>

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

    Opt("GUIOnEventMode", 1)
    Dim $arItem[8]
    $AForm1 = GUICreate("AForm1", 633, 454, 193, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, "AForm1Close")
    $ListView1 = GUICtrlCreateListView("Spalte1|Spalte2|Spalte3", 76, 76, 429, 221, BitOR _
    ($LVS_REPORT,$LVS_SHOWSELALWAYS), BitOR($WS_EX_CLIENTEDGE,$LVS_EX_GRIDLINES, _
    $LVS_EX_FULLROWSELECT))
    GUICtrlSendMsg(-1, 0x101E, 0, 80)
    GUICtrlSendMsg(-1, 0x101E, 1, 80)
    GUICtrlSendMsg(-1, 0x101E, 2, 80)
    For $i = 0 To 7
    $arItem[$i] = GUICtrlCreateListViewItem('Zeile ' & $i & '- 1' & '| - 2 | - 3', $ListView1)
    Next
    $Button1 = GUICtrlCreateButton("Move With Selection", 388, 340, 121, 29, 0)
    GUICtrlSetOnEvent(-1, "Button1Click")
    GUICtrlCreateLabel('Anzahl Zeilen und Richtung ("-" ist Auf) ', 140, 345, 200)
    $count = GUICtrlCreateInput('-1', 340, 343, 30)
    GUISetState(@SW_SHOW)

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

    While 1
    Sleep(100)
    WEnd

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

    Func AForm1Close()
    Exit
    EndFunc

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

    Func Button1Click()
    _MoveAndMarkLVItem($ListView1, $AForm1, GUICtrlRead($count) )
    Switch @error
    Case 1
    MsgBox(0, 'Fehler', 'GUI oder ListView nicht vorhanden')
    Case 2
    MsgBox(0, 'Fehler', 'Schrittgröße oder Richtung falsch')
    EndSwitch
    EndFunc

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

    ;----------------------------------------------------------------------------------------------------------------------
    ; Funktion _MoveAndMarkLVItem($hLV, $hGUI, $Skip)
    ;
    ; Beschreibung verschiebt alle markierten Einträge eines ListViewCtrl um eine Anzahl Positionen
    ;
    ; Parameter $hLV: ListView ID
    ; $hGUI: GUI ID
    ; $Skip: Anzahl Zeilen um die die Einträge verschoben werden (negative Zahl - aufwärts)
    ;
    ; Return Erfolg: -1
    ; Fehler: 0 SetError 1 - GUI oder ListView nicht vorhanden
    ; 2 - Skip verweist auf Bereich außerhalb des ListViewIndex
    ;
    ; Erfordernisse #include <GuiListView.au3>
    ;
    ; Autor BugFix ([email='bugfix@autoit.de'][/email])
    ;----------------------------------------------------------------------------------------------------------------------
    Func _MoveAndMarkLVItem($hLV, $hGUI, $Skip)
    If (Not WinExists($hGUI)) Or (ControlGetHandle($hGUI, '', $hLV) = '') Then
    SetError(1)
    Return 0
    EndIf
    Local $arSelItems = _GUICtrlListViewGetSelectedIndices($hLV, 1)
    If $Skip < 0 Then
    For $i = 1 To $arSelItems[0]
    _MoveLVItem($arSelItems[$i], $Skip, $hLV)
    If @error Then
    SetError(2)
    Return 0
    EndIf
    Next
    Else
    For $i = $arSelItems[0] To 1 Step -1
    _MoveLVItem($arSelItems[$i], $Skip, $hLV)
    If @error Then
    SetError(2)
    Return 0
    EndIf
    Next
    EndIf
    GUISetState(@SW_LOCK, $hGUI)
    ControlClick($hGUI, '', $hLV)
    $idx = _GUICtrlListViewGetSelectedIndices($hLV, 0)
    Send("{UP " & $idx & "}") ; Auf Listenanfang
    For $i = 1 To $arSelItems[0]
    If $i = 1 Then
    If $arSelItems[$i]+$Skip > 0 Then
    Send("{DOWN " & $arSelItems[$i]+$Skip & "}")
    EndIf
    Else
    Send("^{DOWN " & $arSelItems[$i]-$arSelItems[$i-1] & "}")
    Send("^{SPACE}")
    EndIf
    Next
    GUISetState(@SW_UNLOCK, $hGUI)
    Return -1
    EndFunc ;==>_MoveAndMarkLVItem
    ;----------------------------------------------------------------------------------------------------------------------
    ; Funktion _MoveLVItem($ItemIndex, $StepWidth, $hLV)
    ;
    ; Beschreibung verschiebt per Index angegebenen Eintrag eines ListViewCtrl um eine Anzahl Positionen
    ;
    ; Parameter $ItemIndex: Index der Zeile
    ; $StepWidth: Anzahl Zeilen um die der Eintrag verschoben wird (negative Zahl - aufwärts)
    ; $hLV: ListView ID
    ;
    ; Erfordernisse #include <GuiListView.au3>
    ;
    ; Autor BugFix ([email='bugfix@autoit.de'][/email])
    ;----------------------------------------------------------------------------------------------------------------------
    #include <GuiListView.au3>
    Func _MoveLVItem($ItemIndex, $StepWidth, $hLV)
    If ($ItemIndex + $StepWidth) < 0 Or _
    ($ItemIndex + $StepWidth) > _GUICtrlListViewGetItemCount($hLV)-1 Then
    SetError(1)
    Return 0
    EndIf
    Local $txt2skip = _GUICtrlListViewGetItemText($hLV, $ItemIndex)
    If $StepWidth < 0 Then
    _GUICtrlListViewInsertItem($hLV, $ItemIndex + $StepWidth, $txt2skip)
    _GUICtrlListViewDeleteItem($hLV, $ItemIndex+1)
    Else
    _GUICtrlListViewInsertItem($hLV, $ItemIndex + $StepWidth+1, $txt2skip)
    _GUICtrlListViewDeleteItem($hLV, $ItemIndex)
    EndIf
    Return -1
    EndFunc ;==>_MoveLVItem

    [/autoit]

    Ach, das ist ja mein Post Nr: :kette: 1 0 0 0

    Dateien

    _MoveLVItem.au3 1,19 kB – 421 Downloads _MoveAndMarkLVItem.au3 3,12 kB – 414 Downloads
  • In Listview Items verschieben mit mitwandernder Markierung

    • BugFix
    • 13. August 2007 um 12:48

    So ohne Code schwierig.
    Also:
    - MultiseleKtion Element 3 und 6
    - Element 3 soll Element 2 werden (wohin soll 2 ?)
    - Element 6 soll Element 5 werden (wohin soll 5 ?)
    - beide Elemente sollen an neuer Position markiert sein

    Ist das korrekt?

    EDIT:

    Hab dir mal 'ne Lösung gemacht. Die 'verdrängten' Elemente wandern einen Platz hoch.
    Eine Multiselektion per Skript habe ich nicht hinbekommen. Blau sowieso nicht, maximal läßt sich der zuletzt verschobene Eintrag grau markieren.

    Hab dafür eine neue Funktion erstellt ( _MoveLVItem), die sicher auch für andere interessant sein könnte. Stell ich mal noch in die Skripte.

    Spoiler anzeigen
    [autoit]

    #Include <GuiListView.au3>

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

    Opt("GUIOnEventMode", 1)
    Dim $arItem[8]
    $AForm1 = GUICreate("AForm1", 633, 454, 193, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, "AForm1Close")
    $ListView1 = GUICtrlCreateListView("Spalte1|Spalte2|Spalte3", 76, 76, 429, 221, BitOR _
    ($LVS_REPORT,$LVS_SHOWSELALWAYS), BitOR($WS_EX_CLIENTEDGE,$LVS_EX_GRIDLINES, _
    $LVS_EX_FULLROWSELECT))
    GUICtrlSendMsg(-1, 0x101E, 0, 50)
    GUICtrlSendMsg(-1, 0x101E, 1, 50)
    GUICtrlSendMsg(-1, 0x101E, 2, 50)
    For $i = 0 To 7
    $arItem[$i] = GUICtrlCreateListViewItem('Zeile ' & $i & '- 1' & '| - 2 | - 3', $ListView1)
    Next
    $Button1 = GUICtrlCreateButton("Move With Selection", 388, 340, 121, 29, 0)
    GUICtrlSetOnEvent(-1, "Button1Click")
    GUISetState(@SW_SHOW)

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

    While 1
    Sleep(100)
    WEnd

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

    Func AForm1Close()
    Exit
    EndFunc

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

    Func Button1Click()
    Local $arSelItems = _GUICtrlListViewGetSelectedIndices($ListView1, 1)
    Local $skip = -1 ; wie weit und in welche Richtung verschieben
    For $i = 1 To $arSelItems[0]
    _MoveLVItem($arSelItems[$i], $skip, $ListView1)
    ;~ _GUICtrlListViewSetItemSelState($ListView1, $arSelItems[$i]+$skip) ; markiert nur letzten Wert
    Next
    EndFunc

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

    Func _MoveLVItem($ItemIndex, $StepWidth, $hLV)
    If ($ItemIndex + $StepWidth) < 0 Or _
    ($ItemIndex + $StepWidth) > _GUICtrlListViewGetItemCount($hLV)-1 Then
    SetError(1)
    Return 0
    EndIf
    Local $txt2skip = _GUICtrlListViewGetItemText($hLV, $ItemIndex)
    Local $txtFromTarget = _GUICtrlListViewGetItemText($hLV, $ItemIndex + $StepWidth)
    _GUICtrlListViewInsertItem($hLV, $ItemIndex + $StepWidth, $txt2skip)
    _GUICtrlListViewDeleteItem($hLV, $ItemIndex+1)
    Return -1
    EndFunc

    [/autoit]
  • Skript Pausieren und wieder freischalten

    • BugFix
    • 13. August 2007 um 11:34

    Nein, deine Hotkeys sollen so aussehen:

    [autoit]

    HotKeySet("p1", "p1") ; Tastenfolge <P> + <1> ruft p1() auf

    [/autoit]
  • Skript Pausieren und wieder freischalten

    • BugFix
    • 13. August 2007 um 11:23

    Als erstes: Schau dir mal die Funktion IniReadSection() an. Würde dir etliches an Code ersparen ;)

    Ich würde dir eigentlich davon abraten Hotkeys für eine einzelne Taste festzulegen. z.B. wegen genau der Probleme, die du jetzt hast - die ursprüngliche Tastenfunktion soll ja nicht verloren gehen.
    Vielleicht besser für Programmaufrufe: "p" + "1".... usw.

  • Dateidownload-Fenster vom IE - kein Klick funktioniert

    • BugFix
    • 13. August 2007 um 10:52

    Ich habs ja mit IE6 getestet und geht auch nicht.
    ControlFocus vorher bringt auch nichts.
    Geht wirklich nur MouseClick - ziemlich blöd.

  • GuiCtrlEditGetLine geht nur halb

    • BugFix
    • 13. August 2007 um 10:33

    Mir auch nicht klar, was du möchtest.
    Leerzeichen werden doch gelesen und sind in der Ausgabe enthalten.

    Spoiler anzeigen
    [autoit]

    #include <GUIConstants.au3>
    #include <GuiEdit.au3>

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

    Opt("GUIOnEventMode", 1)
    $AForm1 = GUICreate("AForm1", 633, 454, 193, 115)
    GUISetOnEvent($GUI_EVENT_CLOSE, "AForm1Close")
    $Edit1 = GUICtrlCreateEdit("", 115, 76, 380, 137)
    GUICtrlSetData(-1, _
    "Befehl1 -Parameter1 -Parameter2 -Parameter3" & @CRLF & _
    "Befehl2 -Parameter1 -Parameter2 -Parameter3" & @CRLF & _
    "Befehl3 -Parameter1 -Parameter2 -Parameter3" & @CRLF & _
    "Befehl4 -Parameter1 -Parameter2 -Parameter3" & @CRLF & _
    "Befehl5 -Parameter1 -Parameter2 -Parameter3")
    $Button1 = GUICtrlCreateButton("Button1", 356, 244, 137, 29, 0)
    GUICtrlSetOnEvent(-1, "Button1Click")
    $Input1 = GUICtrlCreateInput("", 115, 316, 380, 21)
    GUISetState(@SW_SHOW)

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

    While 1
    Sleep(100)
    WEnd

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

    Func AForm1Close()
    Exit
    EndFunc

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

    Func Button1Click()
    For $i = 1 To _GUICtrlEditGetLineCount($Edit1)
    $getline = _GUICtrlEditGetLine($Edit1, $i)
    GUICtrlSetData($Input1, $getline)
    Sleep(2000)
    Next
    EndFunc

    [/autoit]
  • Nickänderung * LOL *

    • BugFix
    • 13. August 2007 um 10:19
    Zitat

    Papst Array der Erste

    LOL

    Meine Insignien sind:

    ROWS
    COLUMNS und
    INDEX

    Ihre Dreifaltigkeit sei gepriesen.

    :rofl:

  • Case/ If / ???

    • BugFix
    • 13. August 2007 um 00:38

    Mein Vorschlag:

    [autoit]

    If Not _SerienNRCheckFunc() Then
    If InputBox("Passwort", "Bitte Passwort eingeben: ", "", "*") <> $passwort Then
    MsgBox(0, '', "Keine Berechtigung - Programm wird beendet")
    Exit
    EndIf
    EndIf
    ; Hier beginnt das restliche Programm

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

    Func _SerienNRCheckFunc()
    ; Return "True" wenn gefunden
    EndFunc

    [/autoit]
  • Eingabefeld bei einer Internetseite auswählen

    • BugFix
    • 12. August 2007 um 21:39
    Zitat

    Original von Tweaky
    mache mal einen neuen Tread auf für das Speichern-Problem.
    Vielleicht hat da ja jemand einen Tipp.

    *bg* - was ein fehlendes "h" doch ausmacht, so wird aus einem Diskussionsstrang eine Lauffläche. :D

  • Eingabefeld bei einer Internetseite auswählen

    • BugFix
    • 12. August 2007 um 20:06

    Hi, hab grad auch mal probiert.
    Und wie es aussieht, gibt es wirklich keinen Weg das Fenster "Dateidownload" im MS-IE per AutoIt Befehl zu steuern.
    Alle Aktionen um den "Speichern" - Button zu betätigen:

    [autoit]

    ControlClick("Dateidownload", "", 4424)
    ControlClick("Dateidownload", "", "&Speichern")
    ControlClick("Dateidownload", "", "[CLASS:Button; INSTANCE:2]")
    Send("!s")

    [/autoit]

    führen nur dazu, dass der Button markiert wird.
    Aber auch ein

    [autoit]

    Send("{ENTER}")

    [/autoit]

    wenn der Button markiert ist, bleibt wirkungslos.
    Das gilt übrigens für alle Button in diesem Fenster. ?(


    EDIT: Achja, bevor hier der Tipp kommt mit _INetGet() zu laden: Das ist nicht möglich, weil zum Erreichen der Links eingelogt wird und beim Verlassen des Object Focus die Links nicht mehr erreichbar sind.

    Naja, eines geht doch: MouseClick()
    Aber wer macht das schon gern...

  • Hilfe, ich bin eine Spamschleuder!

    • BugFix
    • 12. August 2007 um 18:34

    Wenn das proggi auf deinem PC schon ist, wird es all deine sicherungsmaßnahmen auch wieder deaktivieren.
    Dagegen hilft vorerst nur eingeschränkter Modus. (grauenhaft, weil damit Windows fast arbeitsunfähig ist)

  • Eingabefeld bei einer Internetseite auswählen

    • BugFix
    • 12. August 2007 um 16:48

    Also das hier müssten doch die Links auf die Rechnungen sein:

    Code
    <tr bgcolor="#FFF3E5">
            <td width="88" valign="middle" class="formtable">xx.xx.xxxx</td>
            <td width="88" valign="middle" class="formtable">x.xx &euro;</td>
            <td width="88" valign="middle" class="formtable"><a href="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf" target="_blank"><img src="img_fm/ico_pdf.gif" border="0" width="16" height="16"></a>&nbsp;<a href="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf.pdf" target="_blank">Download</a></td>
            <td width="88" valign="middle" class="formtable"><a href="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.=CSV" target="_blank"><img src="img_fm/ico_csv.gif" border="0" width="16" height="16"></a>&nbsp;<a href="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf=CSV" target="_blank">Download</a></td>
            <td width="88" valign="middle" class="formtable"><a href="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx..pdf" target="_blank"><img src="img_fm/ico_pdf.gif" border="0" width="16" height="16"></a>&nbsp;<a href="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf.pdf" target="_blank">Download</a></td>
            <td width="88" valign="middle" class="formtable"><a href="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.=CSV" target="_blank"><img src="img_fm/ico_csv.gif" border="0" width="16" height="16"></a>&nbsp;<a href="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.pdf=CSV" target="_blank">Download</a></td>
          </tr>


    All das steht in einer Tabelle. Da es die erste auf der Seite ist, hat sie den Index 0. (Falls doch nicht, probier mit 1)
    Den Inhalt der Tabelle schreibst du dir erst mal in ein Array.

    [autoit]

    $oTable = _IETableGetCollection ($oIE, 0)
    $aTableData = _IETableWriteToArray ($oTable)

    [/autoit]

    Dann kannst du schauen, welche Arrayelemente die Links enthalten. z.B.: In ein anderes Array schreiben, wenn im Element 'Download' enthalten. Mußt du sehen, wie die Tabelle im Array wiedergegeben wird.

  • Eingabefeld bei einer Internetseite auswählen

    • BugFix
    • 12. August 2007 um 15:50

    Der für dich interessante Link ist:
    "/privateservice.php?action=invoices"

    Das ist ein relativer Verweis von der aktuellen Seite aus.
    Laß dir mit _IEPropertyGet($oIE, "locationurl") die URL der aktuellen Seite ausgeben (durch das Einloggen hat die ja eine ID mit drin).
    Jetzt ruf die aktuelle Seite mit angehängtem Rechnungslink auf (_IENavigate).

    Kanns selber nicht testen, Viel Erfolg.

  • Eingabefeld bei einer Internetseite auswählen

    • BugFix
    • 12. August 2007 um 15:20

    Hol mal den Quelltext mit Copy&Paste und poste hier. Vergiß nicht Passwörter/Usernamen zu X-en.
    Dann schaun 'mer ma...

  • Eingabefeld bei einer Internetseite auswählen

    • BugFix
    • 12. August 2007 um 14:41

    Verwende die Seite:
    "https://kundenservice.klarmobil.de/privateservice.php?action=uebersicht"

    Da ist es kein Java ;)

  • Eingabefeld bei einer Internetseite auswählen

    • BugFix
    • 12. August 2007 um 14:29
    [autoit]

    $oForm = _IEFormGetCollection($oIE, 0)
    $oName = _IEFormElementGetObjByName($oForm, "username")
    $oPW = _IEFormElementGetObjByName($oForm, "password")
    _IEFormElementSetValue($oName, $nummer)
    _IEFormElementSetValue($oPW, $pw)

    [/autoit]

    Habe es grad so getestet - Funzt.
    Aber ich habe die Seite für Kundenbereich verwendet:
    "https://kundenservice.klarmobil.de/privateservice.php?action=uebersicht"

    _IESubmit funktioniert übrigens mit dieser Seite nicht, auch _IEImgClick schlägt fehl.
    Einfach: Send({ENTER}) stattdessen

    EDIT

    Ich seh grad deinen Fehler:
    In diesem Objekt: $oForm = _IEFormGetCollection($oIE, 0)
    stecken beide Formelemente (Name und Passwort)
    Du beziehst dich plötzlich auf eine Form 1.

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™