Automatischer Telefonbuchexport

  • Hallo zusammen,

    befasse mich seit kurzem mit AutoIt. Folgendes Problem. Aus einer Telefonbuch CD möchte ich automatisiert die Daten exportieren. Wir Ihr wisst ist eine Exportbeschränkung von 75 Datensätzen vorhanden. Ich habe dazu auch im Netzt einen Skript dazu gefunden, der fast funktioniert. Die Koordinatoren der Maus habe ich auf mein Monitor angepasst. Der User der es reingestellt hatte, behauptete das dies problemlos funktioniert. Hier sehe ich allerdings das Problem, das nach dem ersten Mausklick der Befehl kommen müsste 50 Datensätze runterzuscrollen? und mit gehaltener Shift Taste erneut zu drücken.
    Das kann ich aus der Programmierung nicht deuten. Zumal für den nächsten Datensatz er dann ja von der letzten Markierung an anfangen müsste, dieses erkenne ich hier leider auch nicht. Falls ich hier einen Lösungsvorschlag von euch bekomme, wäre ich euch sehr dankbar.
    Ich füge noch mal den Script bei.

    Spoiler anzeigen
    [autoit]

    ;-----------------------------------------------------------------------------------------
    ; Telefonbucheinträge aus Klicktel exportieren
    ;-----------------------------------------------------------------------------------------
    MsgBox(64, "Klicktel 1", "Telefoneinträge exportieren, Start beim Aktivieren des Klicktelfensters")
    Opt("WinTitleMatchMode", 2)
    WinWaitActive("Adressanzeige", "", 10)

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

    Dim $Zaehler
    Dim $Anzahl = InputBox("Anzahl der Datensätze", "Geben Sie die Anzahl der Datensätze ein", 0)
    Dim $Dateiname1 = InputBox("Dateiname", "Geben Sie einen Dateinamen an: ", "Seelow")
    Dim $Dateiname

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

    $Anzahl = Int($Anzahl / 50) + 1
    MsgBox(0, "Anzahl der Durchläufe", $Anzahl)

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

    For $Zaehler = 1 To $Anzahl
    MouseClick("left", 20, 200, 50) ; Pfeil runter ->50 Datensätze weiter
    Send("{SHIFTDOWN}") ; Shifttaste runterdrücken
    MouseClick("left", 20) ; letzte Zeile markieren
    Send("{SHIFTUP}") ; Shifttaste loslassen
    Send("!a") ; Alt+a -> Menü: Adressen
    Send("e") ; e -> Unterpunkt exportieren
    MouseClick("left", 400, 480) ; Auswahl -> markierte Datensätze
    Send("{ENTER}") ; Fenster bestätigen
    $Dateiname = $Dateiname1 & String($Zaehler) ; Dateinamen bilden
    Send("!n") ; Alt+n -> Fokus ins Dateiname-Textfeld
    Send($Dateiname) ; Dateinamen eintragen
    Send("{ENTER}") ; Eingabe bestätigen
    Sleep(1500) ; Speichervorgang abwarten
    Send("{ENTER}") ; zum nächsten Datensatz
    Send("{DOWN}") ; eine Zeile runter
    MouseClick("left", 100, 440) ; letzte Zeile markieren
    Next

    [/autoit]

    bernd670: Beitrag formatiert!

    2 Mal editiert, zuletzt von bernd670 (10. Januar 2010 um 22:35)

  • Ich kenn mich mit dem Telefonbuch-Zeug net aus, aber du brauchst ja sozusagen doch nur die Daten, die auf der CD sind, oder?
    Dann könntest du doch einfach die Datei von der CD rüberziehen und dann mit dem passenden Programm auslesen...oder versteh ich da was ganz falsch :huh: ?

  • Danke für deine Antwort. Die Telefonbuch CD´s wie zB. Klicktel erlauben dies leider nicht. Hier kommt man nicht an die Datensätze ran. Das wäre zu schön.
    Man kann zB. nach einer Stadt selektieren, dann bekommt man auf dem Bildschirm die ganzen Namen, Anschriften, Telefonnummern. Man kann hier zwar alle
    Markieren, jedoch beim exportieren ist eine Einschränkung von je 75 Datensätzen gegeben. Danach musste man die nächsten 75 Markieren um dann erneut wieder
    zu exportieren. Bei einer Stadt mit 1500 Einwohnern musste man dies dann 20 mal wiederholen. Hier sehe ich dann die Automatisierung mit AutoIT als sehr vorteilhaft.

  • Sind die Daten ihrgentwie gesichert oder verschlüsselt?
    Naja, deine Methode mit den Send...ist teilweis gut, in dem Ordner von Autoit findest du ein Programm: Auto3Info, damit kannst du alle Daten des Auswahlsfenster auslesen. Probier einfach ein wenig herum.
    Dann würde ich noch diese Controlbefehle anschauen: Link
    Findest du natürlich auch unter der Hilfe-Datei.
    Mit diesen Befehlen kannst du zb ein Button direkt steuern...
    Schau auch mal nach Beispielen im Fourm...sollten genügend da sein :)

  • Die Daten sind in einer Datei mit der Endung DAT. Ich nehme an das die verschlüsselt und geschützt sind. Ich habe mir deinen Link angeschaut und wüsste nicht wie ich Ihn einsätzen sollte. Hoffe das jemand vielleicht den Script mit der KlickTel ausprobieren kann, um mir hier vielleicht vom Ansatz her besser helfen zu können. Ansonsten müsste ich bestimmt 2 Wochen rumdoktern
    bis ich es dann vielleicht hinbekomme.

  • Hallo Anno,

    ich habe in den letzten 2 Tagen meine finger wundgegoogelt. Für die Version gibt es zwar dann KlickIdent und IdentProfiPlus 23, die allerdings nicht mehr die Exportfunktion beinhalten. Für die Versionen vor Herbst 2009 gibt es diese Exportpatches. Ich bin mittlerweile mit dem Script auch etwas weitergekommen. Die erste Selektion habe ich jetzt auf die ersten 45 Datensätze die beim öffnen des Programms zuerst ersichtlich sind selektiert bekommen. Und auch der Export funktioniert. Wie bekomme ich es hin, das in der Schleife dann die nächsten 45 Datensätze ausgewählt werden? Einer noch ein Tipp?!