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

  • Firefox sauber schließen

    • alpines
    • 14. Mai 2018 um 11:21
    Zitat von recondite

    Hallo, danke für die Antowort. Und wie würde es dann komplett aussehen? Beispiel? Sorry, bin totaler Anfänger

    InetGet verwenden ist nicht so schwierig, schau dir den Befehl doch einfach mal in der Hilfe an.

    Ist die URL wirklich zensiert?

    Es mag zwar ein interner Dienst sein aber die Pfadangabe zur Datei (und welche Struktur ihr verwendet) ist trotzdem offen: EDV/Preislisten/Geraeteuebersicht/Backofen.xlsx

  • * geht oder geht nicht im Handbuch steht nichts....

    • alpines
    • 7. Mai 2018 um 15:55
    Zitat von xSunLighTx3

    In testdir befanden sich 2 weitere Ordner. Ich musste sie direkt ansprechen, um die Ordner zu löschen.

    Wenn du den rekursiv Flag /s angegeben hättest hätte es vermutlich funktioniert.

    Du könntest auch deltree nutzen.

  • Vorhandene! bcdedit.exe kann NiCHT vom Script ausgeführt werden weil es diese exe nicht findet

    • alpines
    • 4. Mai 2018 um 21:19

    AspirinJunkie ne, es war ein anderer. BugFix hatte dort den richtigen Pfad zu der Datei gepostet.

  • Vorhandene! bcdedit.exe kann NiCHT vom Script ausgeführt werden weil es diese exe nicht findet

    • alpines
    • 4. Mai 2018 um 20:32

    Ich schätze mal es ist das selbe Problem wie letztens in einem anderen Thread (ich find den nicht mehr).

    Der eigentliche Dateiname lautet vermutlich ganz anders und bcdedit.exe ist nur ein Softlink dorthin.

  • GUICtrlSetState(..., $GUI_DISABLE)

    • alpines
    • 2. Mai 2018 um 20:03

    Beim nächsten Mal den "erledigt" Haken setzen nicht vergessen (1. Beitrag bearbeiten). Ich hab das schon im letzten und diesen Thread für dich erledigt :)

  • Pause für Befehlsabläufe - Block

    • alpines
    • 2. Mai 2018 um 20:00
    Zitat von rudi

    Mit Adlibregister("Funktionsname",<ms>) kannst Du alle x ms eine Funktion auffrufen, in die Du dann ein Sleep(<ms>) einbaust.

    Das lässt das Skript aber alle x Millisekunden eine Funktion ausführen in der z.B. 100ms gesleept wird.

    Aber in der Zeit, können schon hunderte andere Funktionen ausgeführt werden.

    Hier soll nicht alle 100ms gesleept werden sondern, jeden Befehl 100ms.

  • GUICtrlSetState(..., $GUI_DISABLE)

    • alpines
    • 2. Mai 2018 um 19:58

    Dann verwendest du irgendwo GUICtrlSetData aber nicht GUICtrlSetState. $GUI_DISABLE beinhaltet nämlich die Kontante 128.

    Poste doch mal deinen gesamten Code oder schau nochmal genauer hin.

  • kopiere alles aber überschreibe nichts

    • alpines
    • 2. Mai 2018 um 19:58
    Zitat von entsel

    Im Quell- Ordner sind 2 Dateien - diese werden nach F:\Sicherung\2018\ kopiert, der Ordner "02" aber wird nicht angelegt ??????

    Du verschiebst auch von 2018\02 alles nach Sicherung\2018. Du müsstest wenn du den Ordner 02 haben willst nach Sicherung\2018\02 verschieben.

  • MsgBox - langer Text - Umbruch im Code ?

    • alpines
    • 2. Mai 2018 um 19:56
    Zitat von entsel

    Ich würde aber gern den Code zwecks besserer Lesbarkeit auf mehrere Zeilen verteilen.

    Geht das?

    Na klar! Du kannst im Skripteditoren Zeilen wie folgt umbrechen.

    AutoIt
    MsgBox(64, _
            "Titel", _
            "Nachricht")
    
    MsgBox(64, _
            "Titel", _
            "Nachricht Zeile1" & @CRLF & _
            "Nachricht Zeile2")
  • Pause für Befehlsabläufe - Block

    • alpines
    • 2. Mai 2018 um 15:20
    Zitat von Sonderbaar

    Mir auch nicht... Aber bei 434 Beiträgen sicherlich kein Bot...

    Wollte ich auch nicht implizieren, die For-Schleife wollte ich ursprünglich auch vorschlagen aber das klappt ja nicht bei verschiedenen Befehlen.

    Nur wenn man sie irgendwie sortiert in ein Array packen kann und dort die Funktionen aufruft.

    Aber eventuell denkt hat AutoMit ja nur ein Brett vorm Kopf und sieht den Wald vor lauter Bäumen nicht und versucht sein Problem auf die falsche Weise anzugehen.

  • Pause für Befehlsabläufe - Block

    • alpines
    • 2. Mai 2018 um 14:30

    Wozu brauchst du denn das ganze? Mir erschließt sich nicht so wirklich der Sinn davon.

  • Zeitberechnung - Rundung

    • alpines
    • 2. Mai 2018 um 11:18
    Zitat von Sonderbaar

    nur habe ich in der DB Stunden und Minuten getrennt...

    Das sollte auch kein Problem sein, selecte einfach die Spalten als neue Spalte namens 'begin' im TIME Format und die Query sollte klappen.

  • Zeitberechnung - Rundung

    • alpines
    • 2. Mai 2018 um 10:54

    Oder gleich in SQL, dann spart man sich die Arbeit in AutoIt:

    http://sqlfiddle.com/#!9/5e72f5/1

  • Zeitberechnung - Rundung

    • alpines
    • 2. Mai 2018 um 10:34
    Zitat von Sonderbaar

    Select Case?

    Das ginge wenn du die Zeiten als Integer gespeichert hast (Case ... To ...). (Oder du splittest die Zeit mit StringSplit und verwendest die Minuten im Case To).

    Du kannst aber auch mit _DateDiff arbeiten indem du Anmeldezeit - Anmeldestunde rechnest und anschließend Ceiling(Minuten / 5) * 5.

    Und für die Randfälle (über die Stunde hinaus) kannst du ja Abfragen erstellen.

    Mit ein bisschen SQL-Trickserei sollte das ganze sogar in der Query möglich sein.

    Ob du die Zeiten (wann sie gebucht werden) überhaupt abgespeichert werden müssen musst du entscheiden. Ich denke nicht, dass sich die ändern werden also kannst du die eigentlich auch hardcoden.

  • Programm als Admin ausführen mit eingeschränkten Rechten

    • alpines
    • 1. Mai 2018 um 17:30

    Das Programm wird ja sicherlich nicht ohne Grund Administratorrechte fordern.

    Startet es denn überhaupt nicht wenn es keine erhöhten Rechte besitzt?

  • Während Whileschleife keine Buttons mehr drückbar

    • alpines
    • 30. April 2018 um 15:47
    Zitat von xSunLighTx3

    Ich meinte das so, dass man anstelle der direkten Verwendung

    des Timers auch die Durchläufe des Skripts nehmen kann.

    Das ist aber an die Geschwindigkeit der CPU gebunden wenn man keine Sleeps verwendet.

    Verwendet man Sleeps, so blockiert man wieder alles.

  • Während Whileschleife keine Buttons mehr drückbar

    • alpines
    • 28. April 2018 um 19:51
    Zitat von Headsniper1997

    und soll dann in einer schleife pro Sekunde 500 € auf das Konto rechnen

    Du kannst auch eine Funktion mit AdlibRegister registrieren die alle x Millisekunden ausgeführt wird.

    Dann hast du auch keine blockierende Schleife.

    Grundsätzlich solltest du dein Programm nicht-blockend programmieren, das bedeutet, dass die GUI-Elemente separat abgefangen werden sollten.

    Das kannst du am einfachsten erreichen indem du den OnEvent-Modus verwendest.

    Wenn du trotzdem bei der GUIGetMsg() Variante bleiben willst wäre die einfachste Lösung, mit dem Buttonklick eine Variable auf True zu setzen und dann in der

    GUIGetMsg()-Schleife das Geld zuzuweisen, so fängst du immer noch die Buttonklicks ab aber fügst deinem Konto Geld hinzu.

  • Label zeigt Änderung nur auf Klick

    • alpines
    • 28. April 2018 um 16:35
    Zitat von bigeasy76

    ich versteh die Funktionsweise hier noch nicht ganz.

    Das Event WM_COMMAND wird registriert und immer wenn die GUI von dem Betriebssystem die Nachricht WM_COMMAND erhält, wird die Funktion _WM_COMMAND ausgeführt.

    Dabei beinhalten die Parameter wichtige Informationen wie z.B. welche GUI angeklickt, welche Nachricht abgeschickt wurde und noch andere Informationen.

    $wParam und $lParam beinhalten wichtige Informationen zu dem Event, diese sind aber von Nachricht zu Nachricht unterschiedlich und können in der msdn nachgeschlagen werden.

    Da man nur einen 4-Byte Wert in $wParam und $lParam zur Verfügung hat, versucht man z.B. X- und Y-Koordinaten (bei WM_MOUSEMOVE) in eine Variable zu packen indem man die Variable aufteilt.

    Einige Nachrichten übergeben auch in den Variablen Pointer zu Strukturen um mehr Informationen zu übergeben.

    Dabei teilt man einen 4-Byte Wert (was ein DWORD ist, DOUBLE WORD) in 2x 2-Byte Werte auf (2x WORD).

    Mit _WinAPI_LoWord und _WinAPI_HiWord kriegt man dann die unterschiedlichen Bytes die dort gespeichert sind.

    DWORD = FF FF FF FF, WORD = FF FF.

    Rot = Low-Order Word, Blau = High-Order Word

    In diesem Fall beinhaltet das LoWord von $wParam die ID des Controls an dem ein Event ausgelöst wurde und das HiWord von $wParam den genauen Eventcode.

    Das wäre EN_CHANGE ~ EditNotify_Change(dInput).

  • Tee Timer - Timer mit Countdown-Balken

    • alpines
    • 24. April 2018 um 14:38
    Zitat von Sonderbaar

    Es sind immerhin 317 Zeilen Code, mit Registry-Keys etc... und die Glocke hat er auch noch selber zusammengestellt

    Das sind aber Ressourcen und die sollten als Zeilen auf keinen Fall mit gezählt werden.

    Wenn du die Bilder und die Dekodier/Dekompressierfunktionen entfernst werden daraus 167.

    Man hätte diese auch genauso gut includen können (B64 und LZNT) und die Bilder als Datei.

  • Tee Timer - Timer mit Countdown-Balken

    • alpines
    • 24. April 2018 um 14:01
    Zitat von Sonderbaar

    Krass... "mal eben so"

    Ohne Oscars Arbeit jetzt schlecht reden zu wollen aber es ist und bleibt ein einfacher Timer.

    Wenn man nicht viel Wert auf Extrafunktionalitäten legt sollte dieser nicht länger als 30 Minuten brauchen.

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™