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

Beiträge von Muecke

  • [Anfrage] Möchte Stoppuhr mit USB Button und Eingabeformular programmieren

    • Muecke
    • 22. November 2018 um 14:20

    ja so habe ich mir das vorgestellt mit den Funktion.

    Was meinst du mit Status-Variablen?

    Sound und Bilder würde ich mit in die Funktion packen.

    die Formulardaten würde ich ihn die Formulardaten würde ich in eine CSV Datei speichern wollen.

    Die INI Datei dachte ich eigentlich dafür dass man die Tastenkürzel Sound Dateien und Bilddateien hinein schreibt, sodass ich diese auch nach dem ist eine exe-Datei ist noch verändern kann.

  • [Anfrage] Möchte Stoppuhr mit USB Button und Eingabeformular programmieren

    • Muecke
    • 22. November 2018 um 10:11

    erst mal danke für die zusammen Stellungen des Codes das ist ja genial, danke, da kann ich mir einige heraus nehmen.

    Bin mal gespannt ob ich das etwas geschmeidiger hin bekomme, die Uhren laufen alle etwas Stockend (Bildlich).

    Ja da hast du recht man muss die Stunde, Minute, Sekunde und Millisekunde immer separat Aktualisieren ansonsten Flackert die Uhr :(

    Habe mal meinen Ablauf in einem Bild zusammen gestellt.

    Übersicht.PNG

    Die Roten Ziffern sollen die Abfolge sein.

    das Programm soll jederzeit und überall mit eine Tastenkombination beendet werden können.

    1. Startbildschirm, es wird gewartet bis der Bitter gedrückt wird (ist eine Tastenkombination)

    2. der Timer läuft und Aktualisiert sich

    Wenn der Butter erneut gedrückt wird Stoppt der Timer

    3. Die Timer zeit wird für 10 Sekunden angezeigt

    4. Ein Eingabe Formular öffnet sich, bei dem der User sich eintragen kann.

    Das Formular kann nur mit einer Tastenkombination gespeichert werden (so muss ich das Formular vor dem Speichern nicht auf Richtigkeit Prüfen lassen sondern das mache ich selber dann)

    5. Das Programm fängt wider von vorne an.

    Was soll über die INI eingetragen werden können.

    - jeder Schritt bekommt ein eigenes Bild (Hintergrund)

    - alle Tastenkombination

    - Wartezeit bei Schritt 3

    - Jeder Schritt soll mit einer MP3 untermalt werden können


    Was ich bisher in meinem Code versucht habe.

    1. INI erstellen und einlesen

    2. Werte die aus INI kommen auf Plausibilität prüfen und gegebenenfalls Abbruch einleiten oder Info ausgeben.

    3. Bild auf Fullscreen anzeigen

    mehr habe ich noch nicht gemacht.

    bzw. ich habe mir die Funktion TimerInit angeschaut und experimentiert, das ist aber nicht in dem Code zu sehen.

    Ich schaue mir das noch mal mit der GUI an damit ich das Richtig erstellt bekomme, denn darin muss ich ja dann später alles machen.

    Dann schaue ich mir den TimerInit bzw. die Codes die du mir angehängt hast an und schaue ob ich einen Timer gebaut bekomme.

    Wenn ich das habe dann melde ich mich noch mal.


    Gruß Mücke

  • [Anfrage] Möchte Stoppuhr mit USB Button und Eingabeformular programmieren

    • Muecke
    • 20. November 2018 um 17:45

    Hey Tuxedo,

    erst ein mal viel dank das du mir etwas unter die Ahme greifen tust, ich habe mich mal dran gesetzt und mit der INI Datei angefangen, habe auch die Werte die ich einlese einer Prüfung unterzogen, sprich auf Plausibilität geprüft.

    Bei der Prüfung bin ich mir nur nicht sicher wie ich eine Tastenkombination auf Plausibilität Prüfen kann.


    Als Zweites habe ich versucht eins der Bilder auf dem Monitor zu laden, was mir auch gelingt, jedoch habe ich entweder die Titelleiste oder die Taskleiste mit im Bild, kann man die beide ausschalten?

    Habe meinen bisherigen Code mal hier angehängt.

    Code
    ; Variablen deklariert
        DIM $ABBRUCH_TEXT
        DIM $INFO_TEXT
        Dim $PIC_Stoppuhr_Wait
        Dim $PIC_Stoppuhr_Run
        Dim $PIC_Stoppuhr_Stop
        Dim $PIC_Formular
        Dim $Tasten_Button
        Dim $tasten_EXIT
        Dim $Musick_Stoppuhr
        Dim $Musick_Formular
        Dim $Zeiten_Stop
    
    INI_Laden()
    INI_Pruefen()
    INI_Ausgabe()
    BG_Laden($PIC_Stoppuhr_Wait)
    HotKeySet($Tasten_EXIT, "ProgrammENDE")             ; Damit das Programm jederzeit von überall aus beendet werden kann
    
    While 1
        Sleep(100)
    WEnd
    
        MsgBox(0, "Ende", "Programm beendet nicht durch USER")
    EXIT ; Programm Ende
    
    
    
    Func INI_Laden()
    ; [Bilder]
        $PIC_Stoppuhr_Wait = IniRead("1.ini", "Bilder", "Stoppuhr_Wait", "Fehler")
        $PIC_Stoppuhr_Run  = IniRead("1.ini", "Bilder", "Stoppuhr_Run",  "Fehler")
        $PIC_Stoppuhr_Stop = IniRead("1.ini", "Bilder", "Stoppuhr_Stop", "Fehler")
        $PIC_Formular      = IniRead("1.ini", "Bilder", "Formular",      "Fehler")
    ; [Tasten]
        $Tasten_Button     = IniRead("1.ini", "Tasten", "Button",        "Fehler")
        $Tasten_EXIT       = IniRead("1.ini", "Tasten", "EXIT",          "Fehler")
    ; [Musick]
        $Musick_Stoppuhr   = IniRead("1.ini", "Musick", "Stoppuhr",      "Fehler")
        $Musick_Formular   = IniRead("1.ini", "Musick", "Formular",      "Fehler")
    ;[Zeiten]
        $Zeiten_Stop       = Int(IniRead("1.ini", "Zeiten", "Stoppuhr_Stop", "Fehler"))
    EndFunc   ;==>INI_Laden
    
    Func INI_Pruefen()
    ; Prüfen, ob Datei vorhanden
        If FileExists($PIC_Stoppuhr_Wait) = 0 Then $ABBRUCH_TEXT = $ABBRUCH_TEXT & "Datei 'Stoppuhr_Wait' nicht vorhanden" & @CRLF
        If FileExists($PIC_Stoppuhr_Run)  = 0 Then $ABBRUCH_TEXT = $ABBRUCH_TEXT & "Datei 'Stoppuhr_Run' nicht vorhanden" & @CRLF
        If FileExists($PIC_Stoppuhr_Stop) = 0 Then $ABBRUCH_TEXT = $ABBRUCH_TEXT & "Datei 'Stoppuhr_Stop' nicht vorhanden" & @CRLF
        If FileExists($PIC_Formular)      = 0 Then $ABBRUCH_TEXT = $ABBRUCH_TEXT & "Datei 'Formular' nicht vorhanden" & @CRLF
        If FileExists($Musick_Stoppuhr) = 0 Then
            $INFO_TEXT = $INFO_TEXT & "Datei '$Musick_Stoppuhr' nicht vorhanden"
            $Musick_Stoppuhr = ""
        EndIf
        If FileExists($Musick_Formular) = 0 Then
            $INFO_TEXT = $INFO_TEXT & "Datei '$Musick_Formular' nicht vorhanden"
            $Musick_Formular = ""
        EndIf
    ; Prüfen, auf Dateiendung
        If StringRight($PIC_Stoppuhr_Wait,3) <> "jpg" Then $ABBRUCH_TEXT = $ABBRUCH_TEXT & "Datei 'Stoppuhr_Wait' nicht jpg" & @CRLF
        If StringRight($PIC_Stoppuhr_Run,3)  <> "jpg" Then $ABBRUCH_TEXT = $ABBRUCH_TEXT & "Datei 'Stoppuhr_Run' nicht jpg" & @CRLF
        If StringRight($PIC_Stoppuhr_Stop,3) <> "jpg" Then $ABBRUCH_TEXT = $ABBRUCH_TEXT & "Datei 'Stoppuhr_Stop' nicht jpg" & @CRLF
        If StringRight($PIC_Formular,3)      <> "jpg" Then $ABBRUCH_TEXT = $ABBRUCH_TEXT & "Datei 'Formular' nicht jpg" & @CRLF
        If StringRight($Musick_Stoppuhr,3)   <> "mp3" Then
            $INFO_TEXT = $INFO_TEXT & "Datei 'Musick_Stoppuhr' nicht mp3"
            $Musick_Stoppuhr = ""
        EndIf
        If StringRight($Musick_Formular,3)   <> "mp3" Then
            $INFO_TEXT = $INFO_TEXT & "Datei 'Musick_Formular' nicht mp3"
            $Musick_Formular = ""
        EndIf
    ; Prüfen, Zeiten
        If $Zeiten_Stop = 0 Then $ABBRUCH_TEXT = $ABBRUCH_TEXT & "Anzeigezeit der Stoppuhr Stop wurde nicht angegeben" & @CRLF
    ; Prüfen, Tasten
        ; Noch keine Ahnung wie ich das machen kann.
        ;$Tasten_Button
        ;$Tasten_EXIT
    EndFunc   ;==>INI_Pruefen
    
    Func INI_Ausgabe()
      ; Abbruch Text ausgeben und Programm beenden
        if StringLen($ABBRUCH_TEXT) > 1 then
            MsgBox(0,"",$ABBRUCH_TEXT)
            Exit
        EndIf
      ; Info text ausgeben wenn Programm nicht beendet wurde
        if StringLen($INFO_TEXT) > 1 then
            MsgBox(0,"",$INFO_TEXT)
        EndIf
    EndFunc   ;==>INI_Ausgabe
    
    Func BG_Laden($Bild)
    ;    $GUIstyle =    0x01000000                                                           ; $WS_MAXIMIZE    // MIT Titel, OHNE Taskleiste
        $GUIstyle =    0x00C00000                                                           ; $WS_CAPTION     // OHNE Titel, MIT Taskleiste
        $hSplash = GUICreate("Titel", @DesktopWidth, @DesktopHeight, -1, -1, $GUIstyle ) ; Parameter für das Fenster festlegen.
        GUICtrlCreatePic($Bild,0,0,@DesktopWidth, @DesktopHeight)                        ; Bild laden und Größe definieren
        GUISetState()                                                                    ; GUI Starten
        WinSetTrans($hSplash,"",255)                                                     ; Bild anzeigen
    EndFunc
    
    Func ProgrammENDE()
        MsgBox(0, "", "EXIT per USER !")
        Exit
    EndFunc   ;==>ProgrammENDE
    Alles anzeigen
  • [Anfrage] Möchte Stoppuhr mit USB Button und Eingabeformular programmieren

    • Muecke
    • 19. November 2018 um 16:18

    Hey Tuxedo,

    das sind doch mal gute Nachrichten.

    Denn von dir verlinkten Button hatte ich mir auch schon angeschaut, habe das nur nicht verstanden wie der programmiert werden soll, würde mir aber gut gefallen.

    Dann mache ich mich mal schlau wie ich ein Konfigurationsdatei einlesen kann, und so ein Stoppuhr programmieren könnte :-).

    Danke schon mal.

    Wenn ich etwas weiter bin würde ich mich noch mal melden.

    ps. warum bekomme ich keine Benachrichtigung bei neuen Beiträgen?


    Gruß Mücke

  • [Anfrage] Möchte Stoppuhr mit USB Button und Eingabeformular programmieren

    • Muecke
    • 19. November 2018 um 14:13

    Hallo miteinander,

    für einen Promoschen Stand bei dem ein kleines Spiel auf zeit durchgeführt wird möchte ich etwas programmieren, bin mir nur nicht sicher ob ich hier das Richtige Medium wählen würde daher suche ich ein wenig Infos und Inspiration.

    Wie ich mir das vorstelle.

    1. USB Button Startet die Stoppuhr auf dem Monitor.

    1.1 Es wird eine MP3 wehrend der Stoppuhr mit abgespielt.

    2. USB Button Stoppt die Stoppuhr auf dem Monitor.

    2.1. Das Ergebnis der Stoppuhr ist für xx Sekunden auf dem Monitor zu sehen.

    3. Das Ergebnis der Stoppuhr wird an ein Formular übergeben.

    4. Der Spieler kann sich in das Formular eintragen.

    5. Das Formular wird auf dem Rechner in eine Textdatei gespeichert (CSV Datei)

    6. Das ganze beginnt wider von Vorne.

    00. Das Programm kann jederzeit mit der Taste F3 Beendet werden.

    Es soll kein Fensterrahmen zu sehen sein.

    Der Hintergrund für die Stoppuhr ist FIX.

    Der Hintergrund für das Formular ist FIX.

    Die MP3 ist Fix.

    Die Stoppuhr ist Groß und genau in der Mitte des Monitors.

    Das Programm soll als EXE Datei fertig sein.

    Über ein Konfigurationsdatei können Parameter festgelegt werden.

    - Hintergrundbild (Stoppuhr)

    - Hintergrundbild (Formular)

    - Hintergrundmusik (Stoppuhr)

    - Anzeige Dauer Stoppuhr Ergebnis (in Sekunden)

    - Programm Beenden Taste (F3)

    Auf Amazon habe ich einen USB Button gesehen, bin mir nicht sicher ob das überhaupt der richtige ist für so was.

    Was meint ihr ist das machbar?

    und wenn ja wie fange ich da am besten an?

    Gruß Mücke

  • AutoIT Kommerziell nutzen ??

    • Muecke
    • 14. Januar 2018 um 13:54

    Hey,

    danke für die Info.

    Das freut mich.

    Danke.

    Gruß Mücke

  • AutoIT Kommerziell nutzen ??

    • Muecke
    • 14. Januar 2018 um 13:01

    Hallo miteinander,

    angenommen ich würde mir einen Code zusammen bauen, mit dem ich mir immer wiederkehrende Arbeiten erleichtern kann.

    der Code ist zu 100% im AutoIT geschrieben.

    Darf ich den Code dann in der Firma nutzen? bzw. diese wiederkehrende Arbeitserleichterung an eine Firma verkaufen?

    oder muss mich mir erst eine Art Lizenz für AutoIT kaufen das ich das darf?

    Wie sind hier die regeln, an was muss ich mich halten?


    Gruß Mücke

  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 31. März 2017 um 14:08

    Das ist ja Cool.

    DANKE

  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 31. März 2017 um 09:55

    @Walter: ich habe gerade das active übernehmen wollen, dabei ist mir aufgefallen das du in der variable Titel ein s vor das T geschrieben hast.

    Hat das eine Bedeutung?
    macht man so etwas um etwas spezielles für den Leser mitzuteilen?

    Mein Neuer Code sieht dann so aus:

    AutoIt
    ;  bei einem Geöffneten Kontakt im outlook werden immer 4 telefonnummern angezeigt. 
    ;  Wenn hier bestimte telefonnummren angezeigt werden sollen die nicht Standartmäsig 
    ;  von Outlook hier sichtbar sind, musste mann bei allen Kontakten die 4 reiter ändern 
    ;  um dies zu Automatisiren gibt es diese Script. 
    ; 
    ;  Was macht das Script
    ; 1) Outlook öffnen 
    ; 2) User muss von Hand den oder die Kontakte Öffnen 
    ; 3) Der Geöffnete Kontakt muss Aktiv sein
    ; 4) F2 = anzuzeigende telefonnummern richtig auswählen + Speichern & Schlißen 
    ; 5) ESC = beendet das Script 
    
    
    
    
    run("C:\Program Files\Microsoft Office 15\root\office15\OUTLOOK.EXE")									; Outlook starten
    Sleep (5000)																							; 5 Sekunden warten
    
    
    MsgBox(1,"Titel","Outlook ist hoffenldich OFFEN" & @CRLF _
    	               & "Um die Telefonnummern Anzeige zu Ordnen"  & @CRLF _
    				   & "bitte den kontakt Öffnen und das fenster Aktiviren dann "& @CRLF _
    				   & "F2 drücken."& @CRLF _
                       & "Script Ende mit"& @CRLF _
    				   & "ESC")
    
    
    HotKeySet("{F2}", "Telefonnummern_ordnen") 																; Tastenkürzel F2  + Functionsaufruf 
    HotKeySet("{ESC}", "Prog_Ende") 																		; Tastenkürzel ESC + Functionsaufruf
    
    
    While 1																									; Dauerschleife damit das Script weiter läuft 
        Sleep(100)																							; Kurze pause um den prozessor etwas zu endlasten
    WEnd
    
    
    Exit																									; Sollte das Scrict über die Dauerschleife kommen (Unwarscheinlich) dann soll das Script Beendet werden! 
    
    
    Func Prog_Ende()  																						; Programm Ende Function 
    	MsgBox(1,"Titel","Script Beendet!", 10)																; Nachricht das das Programm beendet wird 
    	Exit																								; Program ENDE 	
    EndFunc
    
    
    Func Telefonnummern_ordnen()																			; das eigendliche Script 
    
    
    	$Title = WinGetTitle("[active]") 																	; Fenstertitel auslesen
    
    
    	ControlClick($Title , "", "[ID:4362]")																; Klickt auf die Dropdown-Liste für die erste Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{ENTER}")																	; Geschäftlich auswählen
    
    
    	ControlClick($Title , "", "[ID:4363]")																; Klickt auf die Dropdown-Liste für die zweite Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")		; Mobiltelefon auswehlen
    
    
    	ControlClick($Title , "", "[ID:4364]")																; Klickt auf die Dropdown-Liste für die dritte Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")								; Privat auswählen
    
    
    	ControlClick($Title , "", "[ID:4365]")																; Klickt auf die Dropdown-Liste für die dritte Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")						; Privat2 auswählen
    
    
    		_WinWaitActivate($Title,"")																		; neues Fenster Aktiviren
    			Send("{ALTDOWN}s{ALTUP}")																	; Speichern und Schließen // Tastenkombination = ALT+S
    EndFunc
    
    
    Func _WinWaitActivate($title,$text,$timeout=0)															; Das weis ich auch nicht, 
        WinWait($title,$text,$timeout)           															, dise Functin fehlt im AutoIT daher extra aufgenommen
        If Not WinActive($title,$text) Then WinActivate($title,$text)
        WinWaitActive($title,$text,$timeout)
    EndFunc
    Alles anzeigen
  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 30. März 2017 um 15:08

    Hey Walter,

    ich gehe davon aus das du meinen Code einen Fehler gesehen hast?

    ich werde das bei mir ändern. Es hat jedoch auch Ohne das [active] geklappt. ich habe alle Kontakte durchgearbeitet das ist echt perfekt.

    Wenn Ihr eine Idee habt wie man alle Kontakte nach einander aufrufen kann, dann könnte man das Script so machen das es automatisch alle Kontakte durcharbeitet.

    Dann würde ich das auch Später noch mal laufen lassen denn auch vom Handy Kommen immer wider Kontakte dazu bei denen dann die Reihenvogel nicht stimmt.

  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 30. März 2017 um 14:31

    Fertig



    ich habe eine Lösung gefunden den Titel auszulesen.

    Das ganze habe ich dann in einen HotKeySet gepackt und kann so nun alle Kontakte durcharbeiten.
    Es ist nicht das Schnellste Script doch schneller wie ich von Hand ;)


    AutoIt
    ; Outlook starten
    ;	run("C:\Program Files\Microsoft Office 15\root\office15\OUTLOOK.EXE")
    ; 5 Sekunden warten
    ;	Sleep (5000)
    
    
    MsgBox(1,"Titel","Outlook ist hoffenldich OFFEN" & @CRLF _
    	               & "Um die Telefonnummern Anzeige zu Ordnen"  & @CRLF _
    				   & "bitte den kontakt Öffnen und das fenster Aktiviren dann "& @CRLF _
    				   & "F2 drücken."& @CRLF _
                       & "Script Ende mit"& @CRLF _
    				   & "ESC")
    
    
    HotKeySet("{F2}", "Telefonnummern_ordnen") ; Shift-Alt-d
    HotKeySet("{ESC}", "Prog_Ende") ; ESC
    
    
    While 1
        Sleep(100)
    WEnd
    Exit
    
    
    Func Prog_Ende()
    	MsgBox(1,"Titel","Script Beendet!", 10)
    	Exit
    EndFunc
    
    
    Func Telefonnummern_ordnen()
    
    
    	$Title = WinGetTitle("")																			; Fenstertitel auslesen
    
    
    	ControlClick($Title , "", "[ID:4362]")																; Klickt auf die Dropdown-Liste für die erste Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{ENTER}")																	; Geschäftlich auswählen
    
    
    	ControlClick($Title , "", "[ID:4363]")																; Klickt auf die Dropdown-Liste für die zweite Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")		; Mobiltelefon auswehlen
    
    
    	ControlClick($Title , "", "[ID:4364]")																; Klickt auf die Dropdown-Liste für die dritte Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")								; Privat auswählen
    
    
    	ControlClick($Title , "", "[ID:4365]")																; Klickt auf die Dropdown-Liste für die dritte Telefonnummer (Privat 2)
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")						; Privat2 auswählen
    
    
    _WinWaitActivate($Title,"")																				; neues Fenster Aktiviren
    Send("{ALTDOWN}s{ALTUP}")																				; Speichern und Schließen // Tastenkombination = ALT+S
    EndFunc
    
    
    Func _WinWaitActivate($title,$text,$timeout=0)
        WinWait($title,$text,$timeout)
        If Not WinActive($title,$text) Then WinActivate($title,$text)
        WinWaitActive($title,$text,$timeout)
    EndFunc
    Alles anzeigen

    Danke für eure Unterstützer, hätte das Ohne euch wohl nicht hin bekommen.

    DANKE.

    Gruß Mücke

  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 30. März 2017 um 14:03

    Oh ok, danke. da sist perfekt.

    ich habe noch etwas herum experimentiert.

    und habe das jetzt etwas umgeschrieben. Hoffentlich stimmt das was ich da gemacht habe.

    AutoIt
    ; Outlook starten
    	run("C:\Program Files\Microsoft Office 15\root\office15\OUTLOOK.EXE")
    ; 5 Sekunden warten
    	Sleep (5000)
    ; Debug zeile
    	MsgBox(1,"Titel","Outlook ist hoffenldich OFFEN" & @CRLF _
    	               & "Bitte zu den personen Navigiren und"  & @CRLF _
    				   & "die Person Herr Vorname_TEST Nachname_TEST"& @CRLF _
    				   & "aufrufen"& @CRLF & "erst danach OK drücken !")
    
    
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4362]")								; Klickt auf die Dropdown-Liste für die erste Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues fenster Aktiviren
    			Send("{DOWN}{DOWN}{ENTER}")																	; Geschäftlich auswählen
    
    
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4363]")								; Klickt auf die Dropdown-Liste für die zweite Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")		; Mobiltelefon auswehlen
    
    
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4364]")								; Klickt auf die Dropdown-Liste für die dritte Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")								; Privat auswählen
    
    
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4365]")								; Klickt auf die Dropdown-Liste für die dritte Telefonnummer (Privat 2)
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")						; Privat2 auswählen
    
    
    ; Speichern und Schließen // Tastenkombination = ALT+S
    WinWaitActive("[CLASS:Vorname_TEST Nachname_TEST - Kontakt]")
    Send("!S")  ; Klapt nicht :-( das fenster ist wohl nihct Aktiv wie bekomme ich das fesnter Aktiv?
    
    
    MsgBox(1,"Titel","Fertig")
    Alles anzeigen


    jetzt Fehlt mir noch das Speichern & Schließen, dann ist schon ein Großer teil geschafft dann muss ich mich um die Fensternamen kümmern.


    EDIT:

    mit deiner Funktion die fehlt hat auch das Speichern und Schließen geklappt.

    neuer Code sieht so aus:

    AutoIt
    ; Outlook starten
    	run("C:\Program Files\Microsoft Office 15\root\office15\OUTLOOK.EXE")
    ; 5 Sekunden warten
    	Sleep (5000)
    ; Debug zeile
    	MsgBox(1,"Titel","Outlook ist hoffenldich OFFEN" & @CRLF _
    	               & "Bitte zu den personen Navigiren und"  & @CRLF _
    				   & "die Person Herr Vorname_TEST Nachname_TEST"& @CRLF _
    				   & "aufrufen"& @CRLF & "erst danach OK drücken !")
    
    
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4362]")								; Klickt auf die Dropdown-Liste für die erste Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{ENTER}")																	; Geschäftlich auswählen
    
    
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4363]")								; Klickt auf die Dropdown-Liste für die zweite Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")		; Mobiltelefon auswehlen
    
    
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4364]")								; Klickt auf die Dropdown-Liste für die dritte Telefonnummer
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")								; Privat auswählen
    
    
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4365]")								; Klickt auf die Dropdown-Liste für die dritte Telefonnummer (Privat 2)
    		WinWaitActive("[CLASS:Net UI Tool Window]")														; neues Fenster Aktiviren
    			Send("{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{DOWN}{ENTER}")						; Privat2 auswählen
    
    
    _WinWaitActivate("Vorname_TEST Nachname_TEST - Kontakt  ","")											; neues Fenster Aktiviren
    Send("{ALTDOWN}s{ALTUP}")																				; Speichern und Schließen // Tastenkombination = ALT+S
    
    
    
    
    MsgBox(1,"Titel","Fertig")
    
    
    
    
    Func _WinWaitActivate($title,$text,$timeout=0)
        WinWait($title,$text,$timeout)
        If Not WinActive($title,$text) Then WinActivate($title,$text)
        WinWaitActive($title,$text,$timeout)
    EndFunc
    Alles anzeigen


    Jetzt habe ich mir überlegt,

    Ich Öffne die ersten 10 - 20 Kontakte.
    Und wenn ich die STRG taste drücke und mit der Maus auf einen offenen Kontakt Klicke soll AutoIT den Fenster Namen auslesen. und das Script dann abarbeiten.

    Doch wie kann ich den Fenster Namen auslesen? wenn ich auf das Fenster klicke?

    oder denke ich Falsch? habt Ihr eine andere idee?

  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 30. März 2017 um 13:34

    OK, ich habe den AutoItRecorder gefunden, und herunter geladen.
    DANKE: AU3 Recorder weg?


    Ich habe den Kontakt offen gehabt, und es wird zumindest die die ID eines Fensters mit geloggt.

    Sieht dann so aus. (habe nur bei dem ersten Reiter geklickt und geschäftlich ausgewählt)

    AutoIt
    _WinWaitActivate("Vorname_TEST Nachname_TEST - Kontakt  ","Di&es ist die Postan")
    MouseClick("left",134,424,1)
    _WinWaitActivate("classname=Net UI Tool Window","")
    Send("{DOWN}{DOWN}{ENTER}")

    Zeile 1 und 2 habe ich ja schon, die benötige ich also nicht.

    Dann ist Zeile 3 und 4 für mich interessant.
    Doch wenn ich die einfüge bekomme ich _WinWaitActivate undefinierte Funktion.
    Was muss ich im Vorfeld per Include laden das der Befehl geht?

  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 30. März 2017 um 13:03

    Der erste CODE (Bisher) geht.

    der zweite nicht da bekomme ich einen Syntax Fehler.
    beim Befehl
    ControlCommand("Vorname_TEST Nachname_TEST - Kontakt", ,, "[ID:4363]", "SelectString", "Geschäftlich...")

    ich habe Ihn nun so abgeändert, der Syntax Fehler ist nicht mehr vorhanden.
    jedoch wird nicht das richtige ausgewählt.
    ControlCommand("Vorname_TEST Nachname_TEST - Kontakt", "", "[ID:4363]", "SelectString", "Geschäftlich")


    Es ist glaube ich auch kein Richtiges "Dropdown-Liste" zumindest sieht es nicht so aus.

    Was für Daten kann ich Liefern oder noch auslesen um herauszufinden wie ich den Richtigen Reiter klicken kann?

    zur bessern Verständnis (da das Outlook auch nicht vorliegt) habe ich noch mal ein Bild der Dropdown-Liste angehängt.


    Was alles im "AutoIt Window Info Tool" steht habe ich hier mal aufgelistet:

    Hoffe das das Hilft.


    Zitat von Summary

    >>>> Window <<<<
    Title: Vorname_TEST Nachname_TEST - Kontakt
    Class: rctrl_renwnd32
    Position: 1083, 20
    Size: 816, 644
    Style: 0x16CF0000
    ExStyle: 0x00040100
    Handle: 0x00190616

    >>>> Control <<<<
    Class: Button
    Instance: 7
    ClassnameNN: Button7
    Name:
    Advanced (Class): [CLASS:Button; INSTANCE:7]
    ID: 4362
    Text:
    Position: 123, 413
    Size: 23, 26
    ControlClick Coords: 13, 13
    Style: 0x50014000
    ExStyle: 0x00000004
    Handle: 0x0012083E


    >>>> Mouse <<<<
    Position: 1220, 446
    Cursor ID: 0
    Color: 0xFFFFFF


    >>>> StatusBar <<<<


    >>>> ToolsBar <<<<


    >>>> Visible Text <<<<
    MsoDockTop
    Ribbon
    Ribbon
    Kategorien
    Name&...
    Herr Vorname_TEST Nachname_TEST
    &Firma
    &Position
    Sp&eichern unter
    Nachname_TEST, Vorname_TEST
    Kontaktfoto
    Internet
    E-Mail...
    A&nzeigen als
    &Webseitenadresse
    &Chatadresse
    Telefonnummern
    Geschäftlich...
    Geschäftlich 2...
    Funkruf...
    Haupttelefon...
    Adressen
    Geschäftlich...
    Di&es ist die Postanschrift
    K&arte
    Notizen
    Dokument12 [Kompatibilitätsmodus]
    Nachricht
    Vertikal
    Notizen

    Alles anzeigen


    wie gesagt, man kann dann auf Geschäftlich klicken, doch das bekomme ich nicht Simuliert da das Feld wider verschwindet wenn ich auf das Fadenkreuz klicke.


    EDIT: könnte ich mit dem AutoItRecorder das stilecht raus finden?
    ist diser denn auch bei der Installation dabei gewesen? oder muss ich den separat herunter laden?
    Kann ich mir nicht bei jedem klick immer anzeigen lassen welche ID der Knopf hat? ohne das ich das Fadenkreuz nehmen muss?

    Dateien

    Unbenannt.png 91,08 kB – 0 Downloads
  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 30. März 2017 um 11:35

    kann mir zwar vorstellen was du meinst, ich bekomme es nur nicht umgesetzt :(

    Muss ich dann den "Visible Tex" angeben?

    das ist mein Code bisher:

    AutoIt
    ; Outlook starten
    	run("C:\Program Files\Microsoft Office 15\root\office15\OUTLOOK.EXE")
    ; 5 Sekunden warten
    	Sleep (5000)
    ; Debug zeile
    	MsgBox(1,"Titel","Outlook ist hoffenldich OFFEN" & @CRLF _
    	               & "Bitte zu den personen Navigiren und"  & @CRLF _
    				   & "die Person Herr Vorname_TEST Nachname_TEST"& @CRLF _
    				   & "aufrufen"& @CRLF & "erst danach OK drücken !")
    
    
    ; jetzt muss Manuel zu den Personen Navigurt werden.
    ; die person "Herr Vorname_TEST Nachname_TEST" muss geöffnet werden
    
    
    
    
    ; Klickt auf die Dropdown-Liste für die erste Telefonnummer
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4362]")
    ; jetzt muss auf "Geschäftlich..." geklickt werden
    	; ????????
    	MsgBox(1,"Titel","Jetzt bitte auswählen 'Geschäftlich...'")
    
    
    ; Klickt auf die Dropdown-Liste für die zweite Telefonnummer
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4363]")
    ; jetzt muss auf "Mobiltelefon..." geklickt werden
    	; ????????
    	MsgBox(1,"Titel","Jetzt bitte auswählen 'Mobiltelefon...'")
    
    
    ; Klickt auf die Dropdown-Liste für die dritte Telefonnummer
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4364]")
    ; jetzt muss auf "Privat..." geklickt werden
    	; ????????
    	MsgBox(1,"Titel","Jetzt bitte auswählen 'Privat...'")
    
    
    ; Klickt auf die Dropdown-Liste für die dritte Telefonnummer
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4365]")
    ; jetzt muss auf "Privat 2..." geklickt werden
    	; ????????
    	MsgBox(1,"Titel","Jetzt bitte auswählen 'Privat 2...'")
    
    
    ; Speichern und Schließen // Tastenkombination = ALT+S
    Send("!S")  ; Klapt nicht :-( das fenster ist wohl nihct Aktiv wie bekomme ich das fesnter Aktiv?
    Alles anzeigen

    das mit dem Senden habe ich in ziele 25 eingebaut, das so geht das nicht :(
    kannst du mir hier ein Beispiel geben?
    Das Bild aus #14 zeigt genau das Feld.


    AutoIt
    ; Outlook starten
    	run("C:\Program Files\Microsoft Office 15\root\office15\OUTLOOK.EXE")
    ; 5 Sekunden warten
    	Sleep (5000)
    ; Debug zeile
    	MsgBox(1,"Titel","Outlook ist hoffenldich OFFEN" & @CRLF _
    	               & "Bitte zu den personen Navigiren und"  & @CRLF _
    				   & "die Person Herr Vorname_TEST Nachname_TEST"& @CRLF _
    				   & "aufrufen"& @CRLF & "erst danach OK drücken !")
    
    
    ; jetzt muss Manuel zu den Personen Navigurt werden.
    ; die person "Herr Vorname_TEST Nachname_TEST" muss geöffnet werden
    
    
    
    
    ; Klickt auf die Dropdown-Liste für die erste Telefonnummer
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4362]")
    ; jetzt muss auf "Geschäftlich..." geklickt werden
    	; ????????
    	MsgBox(1,"Titel","Jetzt bitte auswählen 'Geschäftlich...'")
    
    
    ; Klickt auf die Dropdown-Liste für die zweite Telefonnummer
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4363]")
    ; jetzt muss auf "Mobiltelefon..." geklickt werden
    	; ????????
    	ControlCommand("Vorname_TEST Nachname_TEST - Kontakt", ,, "[ID:4363]", "SelectString", "Geschäftlich...")
    	MsgBox(1,"Titel","Jetzt bitte auswählen 'Mobiltelefon...'")
    
    
    ; Klickt auf die Dropdown-Liste für die dritte Telefonnummer
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4364]")
    ; jetzt muss auf "Privat..." geklickt werden
    	; ????????
    	MsgBox(1,"Titel","Jetzt bitte auswählen 'Privat...'")
    
    
    ; Klickt auf die Dropdown-Liste für die dritte Telefonnummer
    	ControlClick("Vorname_TEST Nachname_TEST - Kontakt" , "", "[ID:4365]")
    ; jetzt muss auf "Privat 2..." geklickt werden
    	; ????????
    	MsgBox(1,"Titel","Jetzt bitte auswählen 'Privat 2...'")
    
    
    ; Speichern und Schließen // Tastenkombination = ALT+S
    Send("!S")  ; Klapt nicht :-( das fenster ist wohl nihct Aktiv wie bekomme ich das fesnter Aktiv?
    Alles anzeigen
  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 30. März 2017 um 11:10

    Sorry, das ich gestern nicht mehr zurück geschrieben habe , mit dem Smartphone ist das echt doof zu schreiben.

    Ich habe jetzt mit dem "AutoIt Window Info Tool" mir Infos geholt, komme aber nicht an alles drin :(

    was habe ich bisher gemacht.

    1) Outlook Öffnen
    2) es muss manuell der Kontakt "Herr Vorname_TEST Nachname_TEST" geöffnet werden.
    3) es wird auf die Dropdown-Liste der ersten Telefonnummer geklickt

    4) jetzt habe ich ein Problem, hier sollte ich in der "Dropdown-Liste" auf "Geschäftlich..." klicken.

    doch mit dem "AutoIt Window Info Tool" kann ich das nicht Simulieren denn wenn ich das Fadenkreiz wider neu Hole geht die "Dropdown-Liste" wider zu :(


    Wie bekomme ich denn heraus das ich das Richtige anklicken kann?


    Wenn das Klappen würde, könnte ich mir vorstellen die Kontakte von Hand zu öffnen und mit einer tasten und Maus Kombination den Fenster namen auszulesen und alles umzustellen und den Kontakt dann wider schlissen zu lassen.


    Das wäre zumindest einfacher als alles von Hand zu machen, auch wenn nur ein teil Automatisiert ist. :)

    Dateien

    Unbenannt.PNG 148,29 kB – 0 Downloads
  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 30. März 2017 um 00:31

    erst einmal, möchte ich danke sagen, dass du dir die Zeit genommen hast, dich dem Problem angenommen hast.


    Das mit dem AutoIt Recorder muss ich mir mal anschauen das kenne ich noch nicht.


    Jedoch ist mir noch nicht klar wie ich die Kontakte nach und nach öffnen kann.


    Bei der Control* funktioniert muss man den Fenster Namen mit angeben dieser ändert sich bei jedem Kontakt das ist schlecht.


    So richtig ist mir noch keine Lösung eingefallen.

    Ich bleibe aber am Thema dran.

    Gruß Muecke

  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 29. März 2017 um 18:32

    Hallo Water,

    es handelt sich um ca. 200 Kontakte aktuell.

    Wäre cool wenn so was gehen würde.

    gruß Mücke

  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 29. März 2017 um 12:40

    so das hebe ich schon mal.

    AutoIt
    ; Outlook-UDF laden   ==> Downloade    https://www.autoitscript.com/forum/topic/126305-outlookex-udf/
    	#include <OutlookEX.au3>
    ; Outlook Öffnen
    	Global $oOutlook = _OL_Open()

    doch jetzt stehe ich auf dem Schlauch.
    gibt es irgend wo eine Erklärung für doofe?


    EDIT: ich möchte ja nicht die Telefonnummern an sich bearbeiten sondern wie die reihen folge später ist wenn ich einen Kontakt aufrufe.

  • Outlook Personen aufrufen und Felder Aktiviren

    • Muecke
    • 29. März 2017 um 12:13

    Ok, dann schaue ich mir die "Outlook-UDF" an. gibt es da eine Erklärung in deutsch?

    ich benötige das ein mal, so das alle Kontakte umgestellt sind, bei neu anzulegenden Kontakten mache ich das dann von Hand.

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™