Beiträge von BugFix

    Strg+Alt+L funktioniert zumindest bei mir nicht...

    Strg+.. war auch falsch. :Face:

    Im Original hatte ich alles in englisch geschrieben und hierfür der Einfachheit halber en bloc durch den Übersetzer gejagt. Das hatte ich dann beim Korrigieren übersehen.


    Ja, das ist immer ein Gefrickel noch nutzbare Shortcuts zu finden.

    Ich habe das in meiner selbst erstellten LuaUser.properties definiert, die ich ziemlich zum Schluß lade.

    Kann sein, dass in der Reihenfolge der Properties das später von dir ungewollt überschrieben wird.

    Ich wollte zusätzlich zum SciTE-internen Lua gerne alternativ Lua-Code /-Dateien mit einem externen Lua ausführen. Zum Aufruf aus SciTE ließe sich auch ein command-Aufruf ohne den Runner konfigurieren, so ist es aber etwas flexibler.

    Der LuaRunner kann auch aus AutoIt-Skripten heraus aufgerufen und somit z.B. in Projekten verwendet werden.

    Eine Bsp-Datei ist mit angehängt.

    Ich habe mir mit MinGW Lua aus den Binaries erstellt.

    Muss ich einen besonderen Parameter verwenden, damit in der exe die Versionsnummer enthalten ist? Wenn ich diese jetzt abfrage erhalte ich nur "0.0.0.0".

    In der Source ist natürlich die Version enthalten.

    Code: lua.h
    #define LUA_VERSION_MAJOR    "5"
    #define LUA_VERSION_MINOR    "4"
    #define LUA_VERSION_RELEASE  "4"

    EDIT:

    Meine build.cmd

    Startet das Skript und haltet dann die linke Maustaste gedrückt.

    Dann zieht ihr ein Fenster auf und bewegt die Maus etwas schneller.

    Nun flackert die rote Fläche teilweise.

    Ich habe nicht die neue Version installiert.

    Aber probiere mal, ob das auch mit dem Color-Picker aus meinem Farbmixer passiert. Da wird nur die Maus bewegt, ohne gedrückt halten. - Könnte ein Problem sein.

    Ich habe mir jetzt nochmal die aktuelle SciTE4AutoIt

    Code
    32-bit
    Version 4.4.6
    Mar 16 2021 13:51:55
    by Neil Hodgson.
    Updated by Jos

    als portable geladen. Das Lua Skript zeigt darin die Farben tadellos, mit AutoIt tut sich nix.

    Dann habe ich keine au3*.properties geladen, nur die Global (die ja auch bei Lua-Skripten wirksam ist) und die User.properties, die ja ebenfalls bei den Lua-Skripten geladen werden. Global und User haben somit keinen Einfluß auf die Unterdrückung der Farbausgabe.


    Ursache ist das verwendete Subsystem innerhalb von SciTE:

    - AutoIt-Skripte verwenden 0 - windows

    - Lua-Skripte verwenden 3 - lua / director


    Und da Windows von Haus aus diese Esc-Sequenzen nicht erkennt (außer in der Terminal-Umgebung), werden diese als reiner Text behandelt. :rolleyes:

    Zusätzlich erhalte ich noch den Fehler :

    Oops, Fehler bei mir (eigentlich wollte ich eure Aufmerksamkeit testen :P )

    Mein Fazit: AutoIt ist im Sinne des nicht mehr manipulierbaren (zumindes für mich) Status angekommen. Kassensysteme, Bankomaten usw. können mit OG Einschränkung nicht gehackt werden. DieExpertenmeinung von VT-Total wurde eingeholt.


    Der Mich schützende MS-Defender hat keine Bedenken, ich bis auf die OG genannten Einschrängungen auch nicht, deshalb Bitte an BugFix , Oscar , Gun-Food, etc .... nach PU only verschieben. Ein Ausschluss der BedenkenTragenden TopFour, kann (zumindest ich) nicht erzwingen.

    Ich verstehe nicht, was das mit meinem Post zu tun hat - bist du im falschen Thread gelandet?

    In Terminals (seit Windows 10 auch bei M$) war es schon immer möglich Text mit Escape-Sequenzen zu formatieren.

    In stark begrenztem Umfang ist das auch im SciTE-Output möglich. Es lassen sich 7 Textfarben (standard oder fett) auf einer etwas gewöhnungsbedürftigen Hintergrundfarbe setzen. Background ist nicht änderbar.


    Voraussetzung: In der SciTEUser.properties der Eintrag lexer.errorlist.escape.sequences=1


    Aber eigene Settings (k.A. welche) können den Erfolg verhindern. Ich habe es nur in einer nackten Installation von SciTE hinbekommen. Deshalb testet bitte mal in eurem SciTE.


    EDIT: Fehler im AutoIt-Skript korrigiert.


    Wenn es klappt, sieht es so aus:




    EDIT:

    Ursache ist das verwendete Subsystem innerhalb von SciTE:

    - AutoIt-Skripte verwenden 0 - windows

    - Lua-Skripte verwenden 3 - lua / director


    Und da Windows von Haus aus diese Esc-Sequenzen nicht erkennt (außer in der Terminal-Umgebung), werden diese als reiner Text behandelt.

    das Beispiel aufzuHübschen

    ;) Was stellst du dir darunter vor?


    Es ist ein Bsp. zu einer konkreten Konstellation, somit nicht direkt für eine allgemeingültige UDF nutzbar.

    Aber was am Inhalt verbessert werden kann:

    - Array-Funktionen sind nicht nötig. Die Anzahl der Elemente sind bekannt, das Array kann somit mit erforderlicher Zahl deklariert und per Indexierung belegt werden.

    - Speichern der Ctrl-Namen ist nicht erforderlich, kann bei Bedarf über die ID abgefragt werden (s. hier: GuiCtrlInfo.au3)

    - Ich würde z.B. ein gemeinsames 2D-Array für hWnd und ID führen: [[hWnd_1,ID_1], [hWnd_1,ID_2],..,[hWnd_1,ID_n],[hWnd_2,ID_1], [hWnd_2,ID_2],..,[hWnd_2,ID_n]] , aber das ist Geschmackssache

    Danke, da werde ich mal probieren. :thumbup:

    ! ! Es ist kein AutoIt auf dem PC wo die Exe erstellt werden soll. ! !

    Warum dann die EXE? Kompiliere dir irgendeine funktionslose Alibi-AutoIt.exe. Dann kannst du als Parameter jede *.au3 ausführen, sofern diese keine zusätzlichen Includes braucht.


    Zitat von AutoIt Hilfe
    Code
    Run a script using another compiled script:
    
    Compiled.exe [/ErrorStdOut] /AutoIt3ExecuteScript file [params ...]
                    Execute another AutoIt script file from a compiled AutoIt3 executable. 
    
    Compiled.exe [/ErrorStdOut] /AutoIt3ExecuteLine "command line"
                    Execute one line of code as with AutoIt3.exe above. 
    
    This means that there is no need to have a copy of AutoIt3.exe in addition to the compiled file - the interpreter stub of the compiled file will replace it.  So as long as there is at least one compiled script available, other AutoIt scripts can be run without the need to have AutoIt3.exe on the machine., either pre-installed or added via FileInstall.

    Hallo, gibt es eigentlich in Auto-IT die Möglichkeit den Status (erkannt oder nicht erkannt) des Fingerabdruckscanners, welcher bei der Anmeldung mit Windows

    Ich habe ein Notebook, bei dem ich statt Start-Button drücken, den Finger über den Scanner ziehe. Dann fährt das Notebook hoch und der LogIn erfolgt. Also alles jenseits von der Betriebssystem-Ebene und somit für AutoIt unerreichbar.

    Mit Sicherheit ein Werbetroll. Absolut identische Fake-Profile. Unsere Admins können ja die LogIn-IP sehen, da wird das sicher klar.

    Also mit dem Entsorgen nicht zu lange warten.

    es müsste doch ausreichen, wenn ich das selbst in meinem Code mache richtig?

    Ja, vor dem Aufruf der UDF-Funktion und danach zurück. Ob der Fehler darin begründet liegt ist nur eine Vermutung, aber du kannst zumindest weiter eingrenzen.

    Was natürlich auch sein kann:

    Du verwendest für deine Ctrl x und y und für Breite u. Höhe nimmst du die Default-Werte. DAS ist immer eine schlechte Idee, da du dann keine Ahnung hast, welche Dimensionen deine Ctrl verwenden und ob sie nicht auch über den Fensterrand hinausragen.

    _Metro_CreateButton

    Ich kenne die Funktion nicht, vermute aber mal in der Richtung den Fehler.


    Wenn das Erstellen von Control in eine Funktion ausgelagert wird, die selbst das Handle des Fensters anfordert, für das sie aktiv werden soll (ist ja sinnvoll), muss gewährleistet werden dass in der Funktion Folgendes zu finden ist:

    AutoIt
    Func _CreateCtrl($hGui,.....)
        Local $hOld = GuiSwitch($hGui)
        ...
        ...
        GuiSwitch($hOld)
    EndFunc

    Nur so ist gewährleistet, dass die Control auch sicher auf dem gewünschten Fenster erstellt werden.

    Ich möchte für mein Backup zukünftig auf Fremdsoftware verzichten und das lieber mit systemeigener Software realisieren.

    Da robocopy an Bord ist, möchte ich dieses nutzen.

    Verstehe ich folgenden Parameter richtig:

    Code
    /mon:<n>    Überwacht die Quelle und wird erneut ausgeführt, wenn mehr als n Änderungen erkannt werden.

    Also:

    robocopy wird einmalig gestartet (z.B. händisch, aber als Admin) und dümpelt dann immer im Hintergrund bis n Änderungen vorhanden sind, um sich dann selbst neu zu starten? Ich kann dann den User abmelden (PC bleibt an) und brauch dafür keinen Task anlegen?


    Code
    /mir    Spiegelt eine Verzeichnisstruktur (entspricht /e plus /purge). Mit dieser Option mit der Option /e und einem Zielverzeichnis überschreibt die Zielverzeichnissicherheitseinstellungen.

    Während ohne /mir neue Dateien hinzugefügt oder geänderte überschrieben werden, werden jetzt an der Quelle nicht mehr vorhandene Dateien auch auf dem Ziel gelöscht. - Korrekt?


    Eine weitere Frage.

    Gibt es eine Möglichkeit, störungs- und verlustfrei eine in Betrieb befindliche SQL-Datenbank (Firebird) mit robocopy zu sichern? Die Sicherung erfolgt zwar täglich, aber sollte im Tagesverlauf mal ein Crash passieren, sind halt die Daten dieses Tages noch nicht gesichert. Und solange z.B. Aufträge noch nicht erledigt und als Lieferscheine in Papierform vorliegen, wäre eine Rekonstruktion schwierig bis unmöglich. Ist zwar in den letzten 20 Jahren nie passiert, aber man kennt ja die Pferde vor der Apotheke. ^^

    Ein reines Kopieren über den Explorer klappt nur, wenn nicht gerade ein Nutzerzugriff erfolgt. Die Quelle wird nicht kompromittiert, aber die Sicherung ist unter Umständen fehlerhaft. Das zugehörige Backuptool stoppt erst die Dienste ("Firebird Guardian" und "Firebird Server") und führt dann das Backup durch. - Kann ich natürlich im laufenden Betrieb nicht tun.


    Danke schon mal für die Mühe, die ich euch gemacht habe. ;)

    [Kann ich mir nicht entgehen lassen]

    Sogar die Folie die extra für den Transport noch mal um die Bücher gebunden wurde war zum Teil geöffnet und mit Zollaufkleber wieder zugeklebt.

    Mit E-Books wäre das nicht passiert. :rofl: