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

  • Finde Fehler nicht...

    • alpines
    • 17. Juni 2018 um 11:45
    Zitat von bigeasy76

    nur wird nun bei Klick auf einen der 5 Buttons $idMUSTER[] stets der Text von Button 5 $idMUSTER[4] ins Textfeld eingefügt und ich finde einfach keine Erklärung dafür

    Zitat von bigeasy76

    Case $muster[0] To $muster[$loop - 1]
    For $i = 0 To $loop - 1
    GUISetState(@SW_SHOW, $hGUI2)
    GUICtrlSetData($text_neu, $text[$i])
    Global $idGUI = $i
    Next

    Zitat von bigeasy76

    For $i = 0 To $loop - 1
    GUICtrlSetData($idTEXT, $text[$i])
    Next

    Kein Wunder wenn du alle Texte iterierst, er fügt nicht den Text von Button 5 ein sondern den Text von dem 1. dann dem 2. usw. bis zum 5.

    Du solltest lieber prüfen welchen Case du gerade hast und diesen Index nehmen, also: $text[$msg - $muster[0]]

  • Alte Windows-Fotoanzeige in Autoit aufrufen

    • alpines
    • 16. Juni 2018 um 15:14

    Du übergibst in ShellExecute in dem Parameter Parameter mehrere Parameter. Verstanden? :D

    Der Parameter von RunDll32.exe ist alles was in dem 2. Parameter der Shellexecute steht, da du Whitespaces unbedingt kennzeichnen musst, setzt du die " vor und nach der DLL damit er weiß wo die Dll lokalisiert ist, mit dem ", ImageViewFull_Screen" sagst du RunDll, dass er diese Funktion aus der Dll aufrufen soll und der Pfad der danach kommt sagt mit welchem Parameter er diesen aufrufen soll.

    Die meisten Windowsprogramme sind so programmiert, dass wenn sie im "%1" Parameter (also der 1. der über die Kommandozeile übergeben wurde, ob wenn du eine Datei auf eine Exe ziehst) diesen auswerten und dann anschließend laden.

    Die doppelten " sind dazu da um den String nicht zu terminieren und einen anderen String mit ' Literalen zu starten nur um das " Zeichen nutzen zu können.

    Setzt man zwei "" in einem " String hintereinander, so werden sie escaped und als einziges interpretiert und der Interpreter meckert dann nicht rum, dass der String terminiert wurde.

  • Alte Windows-Fotoanzeige in Autoit aufrufen

    • alpines
    • 16. Juni 2018 um 14:55

    Das naheliegenste hättest du doch ruhig probieren können, nämlich das Bild in der Zeile einfach mit zu liefern

    AutoIt
    ShellExecute("rundll32.exe", """" & @ProgramFilesDir & "\Windows Photo Viewer\PhotoViewer.dll"", ImageView_Fullscreen E:\Bilder\bla.jpg")

    Funktioniert bei mir.

  • Panoramabild mit GDI+ möglich?

    • alpines
    • 16. Juni 2018 um 12:07

    Und in welchem Format liegt das vor? Es gibt Kommandozeilenprogramme um pdfs in Bilder umzuwandeln, also sollte das der Weg sein den du einschlagen solltest.

  • Pixelsearch / alternative für Bilder

    • alpines
    • 16. Juni 2018 um 10:48
    Zitat von Andy

    Du hast immer noch nicht begriffen um was es überhaupt geht...

    DU BRAUCHST KEINEN BILDSCHIRM!

    Er hat mir eine PN geschrieben und ich hab in ein kleines Beispiel geschickt um das Bild mal nach solchen schwarzen Punkten / Felder zu durchsuchen.

    Leider ist GDI+ bei sowas (wenn man wirklich) jeden Pixel einzeln durchgeht (für das genauste Ergebnis) ziemlich langsam.

    Man könnte noch die Durchschnittsfarbe von einem Bildbereich berechnen, allerdings weiß ich nicht ob GDI+ so eine Funktion anbietet,

    das einzige was mir da in den Sinn kommt wäre einen bspw. 50x50 Bereich zu croppen und diesen mit Gauß zu blurren oder einem ähnlichen Filter und dann irgend einen Pixel davon abzulesen.

    Aber GDI+ ist der richtige Weg, das weiß er jetzt auch, nur muss man jetzt intelligent an die Aufgabe rangehen um das einigermaßen flott zu machen.

  • Script Paused? Warum?

    • alpines
    • 15. Juni 2018 um 20:15

    Lass das @SW_HIDE mal weg und beobachte das Konsolenfenster ob es sich von alleine schließt.

    Außerdem hast du ein Leerzeichen noch am Ende von $Quelle (beim 2. Fall), das gehört da bestimmt nicht hin.

  • Pixelsearch / alternative für Bilder

    • alpines
    • 13. Juni 2018 um 23:19
    Zitat von vcopsmtl

    Daher die Frage ob es zu Pixelsearch eine Alternative gibt wie ich das Bild ohne Monitor "lesen" kann oder eine andere Inspirationen/Herangehensweise.

    Ja, die Alternative nennt sich GDI+. Damit kannst du ohne das Bild anzuzeigen modifizieren und auslesen.

    Trotzdem bleibt die ursprüngliche Frage noch stehen, um was für ein Bild handelt es sich? Kannst du die Daten eventuell anders bereitstellen?

    Erzähl uns doch mal genau was du machen möchtest, werde konkret.

  • Pfadangaben merken

    • alpines
    • 13. Juni 2018 um 14:27

    Was hast du dir denn vorgestellt? Registryeinträge?

  • Panoramabild mit GDI+ möglich?

    • alpines
    • 11. Juni 2018 um 22:12

    Viele Wege führen nach Rom, und den den ich präsentiert habe ist ein ziemlich holpriger, steiniger und sehr fehleranfälliger Weg.

    Mit anderen Bildern wirds vermutlich nicht einmal klappen aber das ganze kann doch als Inspiration dienen.

    Man kann ein Rechteck croppen und diesen im Bild suchen, oder bestimmte horizontale / vertikale Linien suchen.

    Wenn er den Willen mitbringt und was lernen will dann wird er das auch wenn er sich damit beschäftigt.

  • String aktualisieren klappt nicht

    • alpines
    • 11. Juni 2018 um 20:38

    Eigenartig, denn wenn ich deinen Code ausführe (mit den Testdaten), dann macht er bei mir aus GROEBEL nämlich GRÖBEL.

    Lass dir mal Befehl für Befehl die Ausgabe anzeigen ($Name, $NameAlt, $Name nach Schleife, $insText vor und nach Replace).

    Du kannst übrigens das 0, 1 bei dem StringReplace weglassen da bei deiner Anwendungsweise immer der case-sensitive Teil zutrifft.

  • Panoramabild mit GDI+ möglich?

    • alpines
    • 11. Juni 2018 um 20:31
    Zitat von UEZ

    Du musst entscheiden, wie du die Bilder zusammen fügen möchtest.

    Das verstehe ich ehrlich gesagt nicht, wie willst du die Bilder denn nebeneinander packen? Vom Bildinhalt her ist das doch Quatsch?

    Für mich kommt da nur übereinander in Frage.

    Auf die schnelle kam ich auf folgenden Ansatz:

    Speichere die 1. Zeile des zweiten Bildes komplett ab und scanne das erste Bild durch bis man die abgespeicherte Zeile findet.

    Das gleiche für das dritte Bild auf dem zweiten und anschließend einfach alles übereinander zeichnen.

    Das setzt aber voraus, dass sich in der 1. Zeile keine einheitlichen Pixeln befinden sondern wirklich Daten (so wie du das ausgeschnitten hast).

    Spielt man nun bisschen mit der Farbtoleranz herum, kann man auch die Bilder zusammenfügen.

    Gibt bestimmt bessere Möglichkeiten aber das funktioniert relativ zügig und hat bei mir die drei Bilder wunderbar zusammengefügt.

    Am besten in SciTE ausführen um den Konsolenoutput zu sehen.

    Dateien

    Merger.zip 1,53 MB – 258 Downloads
  • String aktualisieren klappt nicht

    • alpines
    • 11. Juni 2018 um 19:53

    Kannst du eins ein Beispiel mit Daten posten wo das passiert? $insTextNeu sollte nämlich den richtigen "aktualisierten" Wert beinhalten.

  • String aktualisieren klappt nicht

    • alpines
    • 11. Juni 2018 um 19:38

    Guck dir die Zeile doch mal genau an. Du startest eine If-Verzweigung und in der Bedingung weißt du Werte zu.

    Wieso fragst du denn überhaupt nach ob der String aktualisiert werden konnte?

    Wenn du wissen willst ob StringReplace an dem String was verändert hat, so vergleich den String den du reingibst mit dem String den du rausbekommst.

  • String aktualisieren klappt nicht

    • alpines
    • 11. Juni 2018 um 18:36

    Guck dir mal genau in der Zeile an was du wie machst. Wenn ich dir nur die Lösung präsentiere wirst du daraus (in diesem Falle) nichts lernen.

  • String aktualisieren klappt nicht

    • alpines
    • 11. Juni 2018 um 18:06

    StringReplace akzeptiert nur Kopien von den Variablen und nimmt keine Referenzen von denen an.

    Was bedeutet das genau? Er ersetzt in $insText $NameAlt mit $Name und gibt es als Rückgabewert zurück.

    Du hast vergessen diesen wieder in $insText zu speichern.

  • JSON-UDF

    • alpines
    • 11. Juni 2018 um 16:46

    Einfach das kombinieren was hier schon gesagt wurde:

    AutoIt
    #include <JSON.au3>
    
    Example4()
    
    Func Example4()
        ConsoleWrite(@CRLF & @CRLF)
        ConsoleWrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>" & @CRLF)
    
        Local $sJSONTest = '[{"_object": "typ","card": "test1"},{"_object": "typ","card": "test2"},{"_object": "typ","card": "test3"},{"_object": "typ","card": "test4"}]'
    
        Local $o_Object = _JSON_Parse($sJSONTest)
        ConsoleWrite("$o_Object: " & _JSON_Generate($o_Object) & @CRLF)
    
    
        For $i = 0 To UBound($o_Object) - 1
            $vTmp = _JSON_Get($o_Object, "[" & $i & "]")
    
            For $vKey In $vTmp.Keys
                ConsoleWrite($vKey & " = " & _JSON_Get($o_Object, "[" & $i & "]." & $vKey) & @CRLF)
            Next
        Next
    EndFunc
    Alles anzeigen
  • JSON-UDF

    • alpines
    • 11. Juni 2018 um 10:43
    Zitat von borsTiHD

    Meine Frage hier wäre, könntet ihr mir bitte ein Beispiel geben, wie ich die einzelnen Karten Namen in dieses Array bekommen könnte?

    Die kriegst du indem du das Objekt mit dem .Keys Attribut ansprichst.

    AutoIt
    #include <JSON.au3>
    #include <Array.au3>
    
    Example()
    
    Func Example()
        Local $sJSONTest = '{"_curlState": "200","_mtstatus": "ok","stuff": {"link": "x1","state": "ok"},"card": {"202": {"admin": "a5","state": "ok"}, "208": {"admin": "a5","state": "ok"}}}'
    
        Local $oObject = _JSON_Parse($sJSONTest)
        $vTmp = _JSON_Get($oObject, ".card")
    
        Local $aCards[$vTmp.Count]
    
        For $i = 0 To $vTmp.Count - 1
            $aCards[$i] = $vTmp.Keys[$i]
        Next
    
        _ArrayDisplay($aCards)
    EndFunc
    Alles anzeigen
  • RegEx: Linie nach bestimmter Linie

    • alpines
    • 10. Juni 2018 um 14:59

    Poste uns doch lieber ein Beispiel mit Fakedaten damit wir uns kein Sample basteln müssen.

  • JSON-UDF

    • alpines
    • 10. Juni 2018 um 12:33
    Zitat von borsTiHD

    Eine weitere Frage wäre, kennt einer eine Möglichkeit die Objekte zu zählen?

    Du kannst dafür .Count verwenden.

    AutoIt
    #include <JSON.au3>
    
    Example()
    
    Func Example()
        Local $sJSONTest = '{"_curlState": "200","_mtstatus": "ok","stuff": {"link": "x1","state": "ok"},"card": {"202": {"admin": "a5","state": "ok"}, "208": {"admin": "a5","state": "ok"}}}'
    
        Local $o_Object = _JSON_Parse($sJSONTest)
        $vTmp = _JSON_Get($o_Object, ".card")
    
        ConsoleWrite("$o_Object: " & $vTmp.Count & @CRLF)
    EndFunc
    Alles anzeigen
  • Hallo aus Bremen

    • alpines
    • 9. Juni 2018 um 19:30

    Herzlich Willkommen im Forum :part:

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™