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

Beiträge von Introser

  • Mit MakroTasten Script starten

    • Introser
    • 29. Januar 2015 um 18:51

    Der Pfad wurde nicht richtig erkannt, nen @Scriptdir davor und es hat geklappt, danke (Y)

  • Mit MakroTasten Script starten

    • Introser
    • 29. Januar 2015 um 16:37

    Hallo, ich will per Makrotaste mein Script starten, also ich weise der Taste die verknüpfung zu xyz.au3 zu, funktioniert bei mir alles wunderbar, habe W7, 64bit und eine Logitech Tastatur.
    Auf nem anderen Rechner funktioniert dies aber eben nicht, dort habe ich das Problem, dass ich, wenn ich die Verknüpfung einstelle und auf die Makrotaste drücke, dass sich der ScriptEditor öffnet. Also SCite
    Der Rechner nutzt W8,64bit und ne Razor tastatur. Ich habe dann das Standardprogramm geändert auf die AutoIt3_x64.exe geändert und siehe da, die Tastatur führt das Programm aus, anstatt den Editor zu öffnen.
    Nun habe ich das Script erweitert mit #include <File.au3> und diese Befehle werden nicht ausgeführt.

    Siehe z.b. hier:

    [autoit]

    #include <File.au3>
    dim $a
    _FileReadToArray("settings.txt",$a)

    [/autoit][autoit][/autoit][autoit]

    msgbox(1,"",""&$a[1])

    [/autoit]

    die settings.txt ist vorhanden, aber wenn ich nun per Makrotaste das Script ausführe sagt er:
    $a[1]^Error
    Error: Subscript used on non-accessible variable.

    Führe ich das Script per doppelklick aus, funktioniert es ganz normal. Ändere ich das Standartprogramm zurück, dann öffnet sich wieder der Scite Editor.

    Hat einer Idee woran es liegen kann? Ich schätze auf die Razortastatur bzw deren Treiber, dass die das Script iwie komisch ausführt und deswegen alles nicht funktioniert oder kann es doch wo anders dran liegen?


    Gruß Introser

  • Txt ändern und Info Fenster anzeigen lassen

    • Introser
    • 28. Januar 2015 um 13:46
    Zitat von Andy

    Wieso soll das nicht sinnvoll sein?!
    Gerade im Gegenteil, es ist NÖTIG! Damit reduziert sich der Aufwand für das Betriebssystem und vor allem für den Programmierer enorm.
    Egal was du machst, die Datei wird sowieso gelesen und nach einer Änderung idR komplett neu geschrieben.
    Dann kannst du das auch BEWUSST selbst machen und verstehst, was abläuft....
    Für einen Programmieranfänger ist es sowieso sinnvoll, einfache Funktionen zu verwenden. Mit dem Hintergrund, dass "komplizierte" Funktionen und UDF´s sowieso auf die einfachen Funktionen aufbauen!


    Naja, ich hatte gedacht, dass ich die Datei komplett lösche und dann eine neue txt erstelle und dort die neuen configs rein schreibe und ich glaube das ist aufwendiger, da ich ja eine Datei lösche und erstelle und nicht nur neu schreibe.
    Und viel mehr bringen tut es mir doch auch nicht oder?
    Beim löschen und neu erstellen würde ich einfach die Datei in ein Array einlesen, die zeile suchen und ändern und dann das Array in die neue Datei schreiben, vom Versteheneffekt etc ist es für mich das gleiche.
    Aber hat sich ja jetzt erledigt, vielen dank für eure umfangreiche Hilfe

  • Txt ändern und Info Fenster anzeigen lassen

    • Introser
    • 28. Januar 2015 um 00:15

    Ouh, das ist natürlich um einiges umfangreicher als FileWriteToLine.

    Da ich ja nun erst nach einigem suchen die Funktion FileWriteToLine gefunden habe wollte ich fragen, ob es iwo ne Dokumentation gibt, wo immer alle Funktionen der verschiedenen au3 Dateien sthenen, in diesem Fall alle funktionen der <File.au3>, normalerweise benutze ich immer z.b. sowas https://www.autoitscript.com/autoit3/docs/f…leWriteLine.htm und da stehen unten ja die restlichen Funktionen, aber z.b. FileWriteToLine nicht, obwohl das in der <File.au3> ja vorhanden ist. Gibt es da ne umfangreichere Dok?

  • Txt ändern und Info Fenster anzeigen lassen

    • Introser
    • 27. Januar 2015 um 23:25

    Habe ich schon gefunden, aber auch hier, FileWriteLine hängt nur hinten an und ersetzt nicht


    edit: Habe nun den Passendenbefehl gefunden, der eine Zeile ersetzt:

    _FileWriteToLine , damit ersetzt man die ganze zeile.

    Dir vielen Dank für deine hilfe :)

  • Txt ändern und Info Fenster anzeigen lassen

    • Introser
    • 27. Januar 2015 um 22:13

    Hey, ich hab 2 kleine Fragen, die erste hat was mit Txt Dateien zu tun.
    Ich hab in einem Ordner mehrere Scripte die alle auf eine Settings.txt zugreifen sollen, diese Datei soll aber auch von den Scripten geändert werden können, heißt ich führe ein Script aus und das ändert was in der textdatei.
    Den passenden Befehl fürs ändern finde ich aber nicht, bisher habe ich nur welche gefunden, die Datensätze hinten dran hängen, aber die alten stehen lassen. dass wil ich nicht.
    Also bräuchte ich ein Befehl, der eine Zeile ersetzt oder eine Zeile löschen kann, denn jedes mal die txt zu löschen und neu zu erstellen sehe ich irgendwie nicht als sehr sinnvoll ein.

    edit: 2 Frage selbst beantwortet

    Vielen Dank schonmal für die Antworten

    Gruß Introser

  • Autoit automatisch mit x86 starten

    • Introser
    • 15. Januar 2015 um 18:28

    Klappt leider nicht, kriege dann die Fehlermeldung, die ich auch kriege, wenn ich einfach per Doppelklick starte, also mit x64.
    Außerdem ist N nicht default? Also standard? finde ich zumindest bei der Description von den Wrapper Klassen. Aber auch mit Y funktioniert es nicht


    Edit: Was ich gerade probiert habe:
    die Standard .exe von autoit3_x64.exe auf autoit3.exe umgelgt und siehe da, es klappt. Das problem nun ist, dass das typische Symbol von Autoit verschwindet sowie die weiteren Optionen beim rechtsklick darauf, das ist natürlich nicht so schön...

  • Autoit automatisch mit x86 starten

    • Introser
    • 15. Januar 2015 um 17:56

    Hallo, ich baue mir zurzeit ein Script mit ImageSearch und habe nun nach längeren Tüffteln es ans laufen gebracht, problem ist, ich muss es immer mit Rechtsklick-> Run with x86 starten, da x64 nicht funktioniert. Ich besitze ein 64bit System.
    Da ich zurzeit viel am testen bin muss ich oft die Datei ausführen und es nervt jedesmal mit rechtsklick zu starten anstatt ein Doppelklick.
    Nun meine Frage, kann ich iwo einstellen, dass automatisch mit x86 gestartet wird?
    Zu ner x86 .exe konvertieren ist keine Lösung, da ich wie gesagt viel teste und so immer Code ändere und nicht jedesmal neu konvertieren will

    Eine x86 .exe habe ich in dem Autoit Ordner auch nicht gefunden, sodass man die au3 Datei damit hätte starten können. Eine weitere Idee habe ich nicht, ihr evtl?


    Gruß Introser

  • Script mit anderem Script beenden

    • Introser
    • 22. Februar 2014 um 17:55

    Heyho, ich habe ein Script geschrieben, welches von den Makrotasten auf meiner tastatur gestartet wird, da ingame die Hotkeys irgendwie nicht wollen.
    Nun will ich ein 2. Script schreiben, was auch wieder über die Makrotasten gestartet werden soll, welches das erste Programm beendet.
    Hat wer ne Idee, wie ich das machen kann??

    MfG

    Introser

  • Error: Array Variable has incorrect Numer....

    • Introser
    • 13. August 2013 um 21:09

    Achso, hab mir die funktion auch angeguckt und eig gedacht, da da schon die abfrage drin ist, aber danke!
    werde es nachher mal einbauen und dann sollte es funktionieren, danke!

  • Error: Array Variable has incorrect Numer....

    • Introser
    • 13. August 2013 um 20:53

    Okay danke, liegt es jetzt daran, das $time nicht richtig gesplitted wird oder liegt es daran das der return von _TimeSync nicht das richtige Format hat?
    Nur so interresehalber.

  • Error: Array Variable has incorrect Numer....

    • Introser
    • 13. August 2013 um 20:01

    Heyho, ich hab ein Script, welches auf einen Zeitserver zugreift und dort die Zeitausliest, dieses habe ich hier gefunden:
    [ gelöst ] OnlineCheck und GetOnlineTime ...
    Dort der Beitrag von Oscar, vorletzter.

    Dieses benutze ich nun, da ich aber nicht das Datum, sondern nur die Zeit brauche, splitte ich das den return:

    [autoit]

    func zeit()
    $time = _TimeSync()
    $split1 = StringSplit($time," ")
    return ($split1[2])
    EndFunc

    [/autoit]


    der return von _TimeSync sieht so aus: 1900/01/01 00:00:00


    Dadurch habe ich nur noch die Zeit die ich brauche!

    Nun habe ich aber das Problem, dass mit manchmal diese fehlermeldung kommt:

    return($split1[2])
    return(^ERROR

    Error: Array variable has incorrect number of subscripts or subscript dimension range exceeded.


    Die fehlermeldung kommt immer nach unterschiedlichen zeiten!
    mal direkt nach 2 sekunden, mal erst nach 10s oder auch mal erst nach 5 minuten...

    ich habe mich schon gefragt was es sein könnte und komme eig nur auf den Schluss das $Split1[2] leer ist bzw nicht existiert, da das Prog iwie nicht richtig splittet oder das Datum in nem falschem Format ankommt und so nicht gesplittet wird...

    Könnte es das Problem sein? oder ein anderes?
    und wenn es dies sein sollte, wie kann man das ändern?
    kann evtl wer das Programm von Oscar so verändern, dass nur noch die Zeit als return ausgegeben wird?
    bin noch ziemlich neu in Autoit und hab daher kp davon :D

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™