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

Beiträge von alpines

  • Automatisch Excel Liste erstellen/erweitern

    • alpines
    • 27. April 2017 um 16:37
    Zitat von Sascha123456

    Naja aber es fuunzt, Herzlichen Dank

    Dann vergiss nicht den grünen Haken für erledigt / gelöst zu setzen indem du den 1. Beitrag bearbeitest und den Threadstatus anpasst!

  • Teil String im Array finden

    • alpines
    • 27. April 2017 um 13:12

    Wenn alles klappt dann kannst du ja den grünen Haken für erledigt / gelöst setzen indem du den Threadstatus im 1. Beitrag anpasst (bearbeiten).

  • Teil String im Array finden

    • alpines
    • 27. April 2017 um 12:42
    Zitat von autoiter

    Das ist nicht richtig. Auch _ArraySearch kann direkt eine StringInStr-Suche.

    Ich kann um ehrlich zu sein mit der Array-UDF nichts anfangen und hab mich mit ihr auch nicht sonderlich beschäftigt.
    Deshalb habe ich ja auch die Formulierung "standardmäßig" genommen und nicht das sie überhaupt nicht in der Lage wäre das zu tun.

    Ich schreibe die nötigen Funktionen meistens selber um nicht extra bei den Array-Funktionen den 0. Index zu löschen, weil dort die Anzahl der Funde enthalten ist.
    Das ist einfach nur lästig und überflüssig, wozu gibts denn UBound? Den Zwang unbedingt Arrays immer als Referenzen zu übergeben kann ich auch absolut nicht nachvollziehen.

  • Teil String im Array finden

    • alpines
    • 27. April 2017 um 12:30

    ArraySearch funktioniert (standardmäßig) nur wenn man den gesamten String hat. Du kannst dir allerdings eine eigene Funktion zum Suchen basteln.

    AutoIt
    Local $aArray[5] = ["", """bundesland"":""NRW""", """name"":""Köln"""]
    
    
    MsgBox(0,0,_ArraySearchSubString($aArray, """name"""))
    
    
    Func _ArraySearchSubString($aArray, $sSubstring)
    	For $i = 0 To UBound($aArray) - 1
    		If StringInStr($aArray[$i], $sSubstring) Then Return $i
    	Next
    
    
    	Return -1
    EndFunc
    Alles anzeigen
  • Automatisch Excel Liste erstellen/erweitern

    • alpines
    • 27. April 2017 um 09:35
    Zitat von autoiter

    @alpines Da warst du mal wieder schneller

    Naja, du hast es halt mit der Excel-UDF gemacht. Ich dachte mir: Da wird eine csv schon reichen. Kommt ja letztlich eh aufs selbe hinaus.

  • Automatisch Excel Liste erstellen/erweitern

    • alpines
    • 27. April 2017 um 09:29

    Wenn dir eine einfache CSV-Tabelle reicht, dann kannst du das ganze so machen. Sollte deine Excel-Liste etwas hübscher aussehen kannst du ja auf die Excel-UDF zurückgreifen.

    Das gibt dir von einem Ordner "read" die Artikelnummern aus und ignoriert doppelte.
    Testdateien waren ("102156_A.Platine" "102156_A.Platine 2" "10036876+58" "10036876+58 222" und "10105223"). Test ist im Anhang.

    AutoIt
    #include <File.au3>
    #include <Array.au3>
    
    
    $aList = _FileListToArray(@ScriptDir & "\read")
    _ArrayDelete($aList, 0)
    
    
    For $i = 0 To UBound($aList) - 1
    	$aRegEx = StringRegExp($aList[$i], "(\d+)", 3)
    	If UBound($aRegEx) Then $aList[$i] = $aRegEx[0]
    Next
    
    
    $aList = _ArrayUnique($aList)
    _ArrayDelete($aList, 0)
    
    
    $hFile = FileOpen("table.csv", 1)
    
    
    For $i = 0 To UBound($aList) - 1
    	FileWrite($hFile, $aList[$i] & ($i <> UBound($aList) - 1 ? ";" & @CRLF : ""))
    Next
    
    
    FileClose($hFile)
    Alles anzeigen

    Dateien

    sort.zip 1,29 kB – 37 Downloads
  • Google Mail API - Anwendungsprobleme

    • alpines
    • 26. April 2017 um 22:03
    Zitat von NO1 :-)

    Ob der Access Token explizit für API Calls da ist oder auch von Google so genutzt wird, weiß ich net. Ich werde das morgen oder übermorgen mal ausprobieren, das Mitschneiden und dann post ich hier das Ergebnis.

    Wie gesagt, das Vorgehen ist eigentlich relativ simpel.

    Du führst den Request mit dem Browser aus und schneidest alles mit. Dann lädst du die selben Ressourcen selber und suchst in den Ressourcen nach entsprechenden Form-Parametern, Token und anderem Zeugs das du für den Request benötigst. Der Browser zieht sie sich ja auch nicht aus den Fingern sondern hat sie auch von den Quelldateien.

  • Google Mail API - Anwendungsprobleme

    • alpines
    • 26. April 2017 um 21:54
    Zitat von NO1 :-)

    So und da sind wir wieder bei dem Punkt, wo ich persönlich nicht weiter komm: Wie fordere ich aus meinem AutoIt-Skript das Access Token an, das man für die API braucht?

    Na du guckst einfach mal nach was dein Browser alles so mitschickt.
    Bei einem Login kannst du das alles nachverfolgen indem du den Login durchführst und mal die Parameter suchst, sie sind alle im Source vorhanden.

    So sollte es auch bei deinem Problem sein. Du fordest ja eine Seite an und loggst dich auf ihr an. Da guckst du einfach mal was du brauchst und suchst im Source danach.
    Sollte es nicht dort stehen kannst du ja schauen wie es andere implementiert haben oder du guckst dich nochmal in der Dokumentation der API um.

  • Google Mail API - Anwendungsprobleme

    • alpines
    • 26. April 2017 um 21:14
    Zitat von NO1 :-)

    Vielen Dank AutoIter

    @autoiter hast ganze Arbeit geleistet!

    Zitat von NO1 :-)

    keine Ahnung hab, wie ich die URL's für die WinHttp-Funktionen bilden soll.

    Du loggst dich mit deinem Browser ein und schneidest alle Requests mit die er abschickt. Diese bildest du nach indem du entsprechende Token anforderst und/oder aus den Quellcode parst.

  • Google Mail API - Anwendungsprobleme

    • alpines
    • 26. April 2017 um 20:42

    Ich kenne die API nicht. Aber wenn ich Mails verschicken möchte, dann mache ich das über die entsprechenden Protokolle POP3/IMAP/SMTP.
    Bei der API-Variante wirst du dich vermutlich mit OAuth2 authentifizieren müssen und das ist teilweise ziemlich mies.

    Aber du kannst es ja trotzdem probieren und uns davon berichten.
    Folgende WinHttp-Befehle solltest du dir mal ansehen.

    _WinHttpOpen
    _WinHttpConnect
    _WinHttpSimpleRequest
    _WinHttpSimpleSSLRequest
    _WinHttpCloseHandle

  • Taste an mehrere gleiche Programme senden

    • alpines
    • 26. April 2017 um 20:40
    Zitat von geradeStudent

    Wobei ich mit AU3Info festgestellt habe, dass die Window Info Class immer gleich ist bei den Fenstern.

    Das ist kein Problem. Mit WinList kannst du dir die Handles holen und jedes individuell ansprechen.
    Enter sendest du dann am besten mit ControlSend direkt an das Fenster und nicht mit Send.

  • Software incl. Abfrage beenden

    • alpines
    • 26. April 2017 um 20:39

    Die GUI wurde wohl mit Qt erstellt, da wirste nicht viel machen können. Hast du den Finder auf den Confirm-Button gezogne oder nur auf das Fenster?

  • Google Mail API - Anwendungsprobleme

    • alpines
    • 26. April 2017 um 19:33

    Was willst du denn mit GMail machen? Wenn es um Mails verschicken / lesen geht dann solltest du auf keinen Fall WinHttp verwenden.
    Solange du im Interface rumspielen und Einstellungen ändern willst ist das nocht völlig verständlich aber bei Mails würde ich lieber POP3/IMAP-UDFs nehmen.

    Dazu gibts bereits UDFs bzw. Command Line Tools um das ganze zu bewerkstelligen.

  • Taste an mehrere gleiche Programme senden

    • alpines
    • 26. April 2017 um 18:54

    Wenn du uns verrätst welches Programm du starten möchtest können wir das ganze eventuell besser lösen als einfach nur Enter zu senden.
    Sollte ein anderes Fenster dazwischenkommen wirbelt das nämlich alles durcheinander.

    Tasten senden bewerkstelligst du mit Send. Aber wie schon gesagt: Es ist nicht zu empfehlen.

  • Autoit Windows Wipe Datei und/oder Ordner

    • alpines
    • 25. April 2017 um 20:21

    Hier z.B. mal die Gutmann-Methode die schon etwas außer Mode ist. Dennoch ist die Erklärung in Wikipedia recht gut gelungen.
    35x musst du natürlich eine Platte nicht löschen, normalerweise kriegt man nach einem mal eh nicht viel wieder zurück. 7x ist der Standard des DoD.

  • Autoit Windows Wipe Datei und/oder Ordner

    • alpines
    • 25. April 2017 um 20:04

    Nein, das reicht nicht aus.

    Um ganz sicher zu gehen müsstest du die Datei mehrmals mit regulären Pattern und Zufallszahlen überschreiben um sicherzugehen, dass kein Anteil an Restmagnetismus der alten Daten bleibt.
    Dazu gibts mehrere Arbeiten bzw. Anleitungen im Internet, lies dich einfach mal da durch.

  • und nochmals RunWait @ComSpec

    • alpines
    • 24. April 2017 um 09:59

    Wenn du lesen möchtest was in der Konsole gepostet wurde, dann solltest du am Ende folgendes hinzufügen  >> Dump.txt.
    Leerzeichen vor dem >> beachten!

    Das wird dir den Output der Konsole in die Datei Dump.txt schreiben. Diese sollte wiederum im Working Directory des Scriptes liegen, sofern du beim Run nichts weiteres angegeben hast.

  • FTPEx.au3

    • alpines
    • 24. April 2017 um 00:18
    Zitat von Bitnugger

    Nichtsdestotrotz ist das Protokoll ein erforderlicher Bestandteil einer URL.

    Da haben wir den Salat auch schon. Gefordert war ein Server-Name und keine URL.

    Den Satz hätte ich etwas besser formulieren können, stimmt schon. Aber ich nehme an du weißt was ich gemeint habe.

  • FTPEx.au3

    • alpines
    • 23. April 2017 um 23:09
    Zitat von Bitnugger

    Deiner Aussage nach dürfte ich dann auch kein https:// vor autoit.de schreiben.

    Ein Browser ist aber heutzutage ein Programm das mit mehreren Protokollen arbeitet.
    Du kannst ja im Browser auch ftp:// verwenden, aber du musst es nicht angeben, weil der Standard nun mal (im Browser zumindest) http/s ist.

    Bei der SFTP-UDF hingegen gibt es nur ein einziges Protokoll und so ist der Hostname "sftp://x.x.x.x" schlicht falsch. Er kann nicht aufgelöst werden.

    Zitat von Bitnugger

    Richtig ist also, wie @alpines es bereits sagte:

    ... dann hätte ich mir die Tipperei auch sparen können :D

  • und nochmals RunWait @ComSpec

    • alpines
    • 23. April 2017 um 17:52

    Du gibst als Parameter die Variablen nicht an sondern die Strings "$7, $x, $all, $de" du musst die Variablen aber übergeben.

    Richtig wäre RunWait(@ComSpec & ' /c ' & $7 & ", " & $x & ", " & $all & ", " & $de, '', @SW_SHOW)

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™