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

  • Transparentes Label flackert über Hintergrundbild

    • alpines
    • 27. Oktober 2015 um 23:42

    Du könntest mit einem Hook die GUI erst anzeigen lassen wenn alle Control gezeichnet wurden. So bekommt man die Zeichnung des Controls nicht mit und sieht das Flackern auch nicht.
    Alternativ könntest du auch - sofern du das kannst bzw. die Zeit und Lust dazu hast - per GdiPlus die Labels erstellen.

  • Datenstand einer Software abfragen?

    • alpines
    • 27. Oktober 2015 um 23:40

    Dazu kannst du super mit _FileListToArray die Dateien und Ordner von MyProg\Daten auflisten und abspeichern.
    Anschließend iterierst du einfach das Array oder teilst es vorher in kleinere Teile auf (für Marke1, 2, ...) und schaust dir den Dateinamen an.
    Die Nummer kannst du mittels StringRegEx (Pattern wäre in diesem Falle: "stand(\d+)d\.txt") extrahieren und anschließend vergleichen.
    Pass aber auf, nicht das AutoIt das als Stringvergleich sondern als Nummernvergleich nimmt. Kannst zur Sicherheit Number() für die Resultate des RegExes nutzen.

  • --> IE.au3 T3.0-2 Error from function _IECreate, (Browser Object Creation Failed)

    • alpines
    • 26. Oktober 2015 um 14:34

    Bei mir ist das auch der Fall aber er erstellt innerhalb von einer oder zwei Sekunden dann endlich das Objekt. Du kannst ja mal schauen ob vielleicht der Browser sich geupdatet hat oder ähnliches.
    Oder versuch das Objekt doch selber zu erstellen bzw. starte den IE und _IEAttach dich dran.

  • --> IE.au3 T3.0-2 Error from function _IECreate, (Browser Object Creation Failed)

    • alpines
    • 26. Oktober 2015 um 13:26

    Das Problem habe ich auch immer. Mittlerweile nutze ich das so

    AutoIt
    Local $oIE
    
    
    Do
    	$oIE = _IECreate("...")
    Until IsObj($oIE)

    Ich würde dir noch raten _IEErrorNotify(False) zu setzen damit deine Konsole nicht gefloodet wird.

  • java.exe aufrufen mit ShellExecute funktioniert ab Java 8 nicht mehr

    • alpines
    • 26. Oktober 2015 um 11:10

    Nimm dafür lieber Run weil durch Run die Programme (soweit ich weiß) in der CMD gestartet werden und Java bei der Installation die Env-Variablen für die java.exe schreibt. Dann musst du bei Run einfach nur "java" als Programm angeben und fertig.

  • Variable eines laufenden Programms abfragen

    • alpines
    • 22. Oktober 2015 um 15:54

    Du könntest das über viele Wege realisieren. Die Parameter kannst du mit $CMDLine[...] abfangen und die Variable kannst du entweder per MemoryRead (nicht zu empfehlen) holen oder du schreibst in eine temporäre Datei.
    Wenn du in eine temporäre Datei schreibst musst du aber aufpassen das du das alle 5 Sekunden oder so aktualisierst damit falls dein Script mal crasht der wieder normal starten kann.
    Alternativ kannst du auch eine unsichtbarte GUI verwenden wo du die Daten anzeigst.

  • Hi @ All!

    • alpines
    • 15. Oktober 2015 um 06:01

    Hallo und herzlich Willkommen im Forum!

    Wer so viel Eigeninitiative mitbringt und immer bereit ist was dazuzulernen ist hier sehr gerne gesehen. :party:

  • Alltagsmathematik - Augen auf beim Warenkauf!

    • alpines
    • 12. Oktober 2015 um 20:37

    Halli Hallo liebe Community,

    vielleicht kann ich mit diesem Thread etwas ins rollen bringen damit andere nachziehen und wir das Interesse vieler Mitmenschen wecken können. Es geht um Mathematik im Alltag.
    Speziell um den Fall in welchem Fall es günstiger wäre lieber ein Angebot wahrzunehmen welches den dritten Gegenstand gratis verkauft oder den zweiten zum halben Preis.

    Wie bin ich darauf gestoßen?

    Damit ich anfangen kann möchte ich mit einer kleinen Geschichte beginnen die damit anfängt das ich mit einem Freund in die Stadt gefahren bin um den Tag zu verbringen.

    Da ich mir einen Pullover kaufen wollte sind wir in einen Karstadt gegangen und der Pullover war schnell ausgesucht also auf zur Kasse.
    Nur das Problem war das auf der Etage keine Kasse war. Also sind wir mit der Rolltreppe in die obere Etage gefahren um zur Kasse zu gehen.
    Auf der Etage war die Damenabteilung und kurz vor der Kasse stand ein Regal mit BHs. Nach einigen dummen Sprüchen ist uns was aufgefallen.
    Auf dem Regal stand ein Schild mit dem folgenden Inhalt: „3 kaufen und das 3. gratis kriegen.“
    Unter der Schrift stand noch etwas und zwar folgendes: „oder 2 kaufen und das 2. zum halben Preis kriegen.“
    Man sollte beachten das natürlich nur der günstigste Gegenstand gratis oder zum halben Preis zu kriegen ist.

    Er fragte sich ob es günstiger wäre 2x3 (2x 100%, 1x 0%) BHs zu kaufen oder 3x2 (1x 100%,1x 50%) BHs zu kaufen.
    Das ganze haben wir kurz im Kopf durchgerechnet. Wenn jeder Gegenstand (ich kürz das fortan mal mit Item ab) gleich viel kostet (angenommen 100), dann würde man beidem 2x3 Kauf sparen.

    Beispielrechnung: 2* (100 + 100 + 0) = 400 und 3 * (100 + 50) = 450

    Demnach wäre also die 2x3 Variante günstiger, da man 50 im Gegensatz zum 3x2 Kauf spart.
    Soweit wares das erstmal mit diesem Angebot. Der Tag ging vorüber und am Abend habe ich mir Gedanken darum gemacht weil es doch vielleicht nicht immer günstiger ist wenn man die 2x3 Variante nimmt.
    Also dachte ich mir, warum sollte ich mir kein Script dafür schreiben und ein paar Werte mal ausprobieren?

    Die Berechnung

    Gesagt getan und scho nwar das Script fertig. (Calculator.au3)

    Der Sourcecode schaut zwar scheusslich aus aber er tut was er soll. In dem Programm kann man drei Items einen Preis geben. Die Preise werden sortiert (Item1 zu Item3 absteigend) und anschließend berechnet.
    In den langen Inputfeldern sieht man die Berechnung für die jeweilige Rechnung und das Feld am Ende rechnet den Wert zusammen.
    Das Feld unten rechts zeigt dann das jeweilige Ergebnis für beide Varianten, einmal für die 2x3 und einmal für die 3x2.
    Ein Klick auf den Button 'Berechnen' rechnet dann jeweils die Ergebnisse aus.

    Aus dem Kopf heraus dachte ich das man Item 3 stark reduzieren könnte denn das würde bei der 2x3 Variante keinen großen Einfluss haben weil das dritte Item in jedem Fall gratis wäre, allerdings würde beim 3x2 Kauf der Preis sinken.

    Item 1 – 100 Item 2 – 100 Item 3 – 10
    2x3 Variante 2 * (100 + 100 + 0) = 400
    3x2 Variante (100 + 50) + (100 + 5) + (100 + 5) = 360

    Man sieht also das die 3x2 Variante günstiger wäre. Das hat mich überzeugt direkt ein Programm zu schreiben welches mir das ganze grafisch darstellt. (Diagram.au3)
    Ich hab daneben mal eine Gif-Datei reingepacket damit man das ganze ein wenig flüssiger sieht.

    Das Programm steuert sich mit den Pfeiltasten (links und rechts) womit man den Preis vonItem 2 einstellen kann (Item 2 Preis = currNumber).
    Die X-Achse stellt den Preis für Item 3 da. Der geht von 100 bis 10. (Warum nicht bis 0? Bleiben wir realistisch... Wer verkauft ein Produkt für 0€?)
    Die Y-Achse stellt die Kosten für den Kauf da wobei die rote Linie die Preiskurve für die 3x2 Variante darstellt und die blaue Kurve für die 2x3 Variante.

    Wie man bei currNumber = 100 sieht, sieht man dass ab Item 3 = 50 die 3x2 Variante dominiert.

    Nun, wie schaut das ganze denn bei anderen Preisen für Item 2 aus?

    Bei einem Preis von 50 sieht man das das ganze schon wesentlich interessanter ausschaut.
    Die rote Kurve liegt größten teils über der blauen Kurve. Die Schnittpunkte liegen bei Item 3 = 100 und bei Item 3 = 25.
    Was auffällt wenn man genauer hinschaut ist, dass ein Knick beider Graphen bei Item 2 = Item 3 zu sehen ist.
    Dieser kommt daher zustande das das Item welches für -50% oder 0% zu erhalten ist wechselt (weil Item 3 den Preis von Item 2 unterbietet).

    Nun, man könnte sich jetzt fragen wie das ganze ausschaut wenn Item 2 noch weniger kostet (10) und hier sieht das ganze schon wieder komplett anders aus.
    Von Item 3 =100 bis Item 3 = 20 dominiert die rote Linie, da die 3x2 Variante hier effektiver ist.

    Nun, was lernen wir draus?
    Es steckt mehr hinter dem was wir auf Anhieb sehen. Obwohl man denkt das die 2x3 Variante wohl immer günstiger wäre ist das ganze nicht so und das sollte man wissen.
    Das ist nur eins von vielen Beispiel wo Mathematik im Alltag vorkommt und ich hoffe ich konnte damit einige Leute unterhalten und ein wenig die Augen öffnen.
    Mathematik kommt nun mal auch im Alltag vor auch wenn das viele Leute nicht wahrhaben wollen :D.
    Das ganze könnte man nun mit 4 Items oder anderen Sonderangeboten durchgehen aber das würde den Rahmen dieses Threads sprengen.

    Also, Augen auf beim Warenkauf!

    Was haltet ihr davon? Feedback und Kritik sehr gerne gesehen!

    Dateien

    Alltagsmathematik.rar 2,84 MB – 231 Downloads
  • IE: Login auf Website funktioniert nicht

    • alpines
    • 10. Oktober 2015 um 22:13

    Nimm mal statt _IEFormGetObjByName einfach _IEGetObjByName (wenn der Index nicht passt kannst du ihn anpassen).

  • IE: Login auf Website funktioniert nicht

    • alpines
    • 10. Oktober 2015 um 20:48

    Selbstverständlich funktioniert er noch dann. Man kann die Elemente so ansteuern wie zuvor.

  • SB-Zitate #7 (2014)

    • alpines
    • 8. Oktober 2015 um 13:45

    :D Wie immer nur das Beste vom Besten :D

  • Ultraedit - Fenster lokalisieren

    • alpines
    • 6. Oktober 2015 um 12:59

    WinList um alle aufzulisten und dann kannst du schauen welcher Index (vermutlich der 1.) das ist.

  • Fenster umnennen klappt nicht

    • alpines
    • 3. Oktober 2015 um 15:07

    @Oscar, das ist nicht das einzige Problem. Er postet es in "Datenbanken".

  • Hilfe!!!

    • alpines
    • 2. Oktober 2015 um 11:47

    Du willst mit dem Internet Explorer, wie du selber schreibst, einen Link anklicken aber erstellst nicht mal ein Internet Explorer Objekt?
    Das wäre ja nicht so schlimm wenn man wenigstens _IEAttach nutzen würde um sich an ein vorhandenes IE Objekt ranzuheften.

  • Hilfe!!!

    • alpines
    • 2. Oktober 2015 um 11:21

    Ist das dein ganzes Script? wenn ja, dann kann es ja nicht funktionieren.

  • Hilfe!!!

    • alpines
    • 2. Oktober 2015 um 11:03

    Die wohl einfachste Variante wäre

    AutoIt
    _IENavigate($oIE, "javascript:xajax_content('5','BB','CC','','0',sid_tab);")

    Alternativ könntest du auch die TagCollection von <a> holen und nach class und dem innerHTML suchen und mit _IEAction anklicken.

  • Hallo aus Worms

    • alpines
    • 29. September 2015 um 20:24

    Herzlich Willkommen im Forum! :party:
    Wie lange nutzt du denn AutoIt schon um die Abläufe zu automatisieren?

  • Pattern (Java)

    • alpines
    • 18. September 2015 um 23:25

    Das in ein 2D Array zu kriegen ist deine Aufgabe und so schwierig ist das ja auch nicht.
    Im Index n (n = gerade Zahl) sind die Kategorien und in n+1 sind die Werte.

    Local $aArray[UBound($regex) / 2][2] wäre das 2D Array dann.
    true und false kann sein das ich das ohne die "" gemacht hab weil das der Syntaxhighlighter hier direkt weggeschnibbelt hat weil true und false ja berühmte Keywords sind.

  • Pattern (Java)

    • alpines
    • 18. September 2015 um 17:29

    Auf die schnelle würde ich das so lösen, (weiß allerdings nicht wie Elemente noch ausschauen können also habe ich "" true und false zugelassen):
    (".+?"):(".+?"|true|false),? Das kann man sicherlich besser und eleganter lösen.

    Kannst das Pattern noch bearbeiten das die "" nicht mitgecaptured werden.

  • Erkennen ob Skript in einer Virtuellen Maschine ausgeführt wird

    • alpines
    • 17. September 2015 um 23:40

    Guckst du hier: [UDF] Virtual PC erkennung (Vmware, VirtualBox, VirtualPc und Qemu )

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™