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

Beiträge von BugFix

  • SetupVerifyInfFile Function um zu überprüfen ob Treiber signiert sind

    • BugFix
    • 30. Juli 2014 um 21:08
    Zitat von Trolleule1337

    Return code ist 0 und der letze pointer der eigentliche auf eine " SP_INF_SIGNER_INFO" Struktur verweisen sollte ist auch 0.


    Zum grundlegenden Handling:
    Wenn MSDN angibt, dass dort Pointer auf bestimmte Strukturen verweisen, dann mußt du die Strukturen vorher erstellen und den Pointer auf diese an den Aufruf übergeben damit die Strukturen befüllt werden können. Aus diesen Strukturen kannst du dann die Ergebniswerte auslesen.

  • Text Datei rausfilter und Speichern

    • BugFix
    • 30. Juli 2014 um 17:56

    Wie man es auswertet wurde dir gezeigt.
    Datei Lesen / Schreiben solltest du wohl hinbekommen --- oder wenigstens einen Ansatz liefern. Wenn du nach jedem Lösungsvorschlag mit einem neuen Detail rauskommst, was da eigentlich anders sein sollte, wirst du hier keine Hilfe bekommen. Klare strukturierte Ansage, was die Ausgangslage ist, wie soll das Endergebnis sein, Skript von dir bis dahin. DAS erwarten wir.

  • Daten auslesen und vergleichen nur auf Verzeichnisstruktur (keine Files auslesen)

    • BugFix
    • 30. Juli 2014 um 13:37
    Zitat von ru642

    - ERROR: syntax error Global $a_Folders[]


    Dazu brauchst du AutoIt Version ab 3.3.10.x
    Anderenfalls schreibe in die vorderen eckigen Klammern die Anzahl der Elemente.

  • Programm soll VPN Eregnis abwarten

    • BugFix
    • 30. Juli 2014 um 12:48

    Achja, hatte ich vorhin nicht drauf geachtet:
    Was bitte soll denn das in dem Array sein: "_VPNStatus" und "_CheckDrives" ?
    Wenn du diese Funktionen aufrufen möchtest um den Return als Parameter im Array zu speichern, geht das so:
    "_VPNStatus()" und "_CheckDrives()"
    Der Syntaxcheck sollte dir aber dazu eine Fehlermeldung ausspucken.

  • Programm soll VPN Eregnis abwarten

    • BugFix
    • 30. Juli 2014 um 11:35
    [autoit]

    $Funktionen[2][2] = [["VPN_Status",0,_VPNStatus, 10000], ["Check_drives",0,_CheckDrives, 20000]]

    [/autoit]


    Das Array ist mit 2 Elementen und 2 Elementen in der 2. Dimension angegeben, hat aber in der 2. Dim 4 Elemente.
    Also deklariere mit $Funktionen[2][4] und passe die Indizes im Rest des Codes an.

  • Text Datei rausfilter und Speichern

    • BugFix
    • 30. Juli 2014 um 10:46

    Hier mal eine RegExp-Variante ;)

    Spoiler anzeigen
    [autoit]

    $s = _
    '[10:24:1]' & @CRLF & _
    '8.07.2014 22:38:22 Teebecher=5112' & @CRLF & _
    '8.07.2014 22:38:22 Kaffeebecher=2993' & @CRLF & _
    '9.07.2014 08:06:49 Teebecher=8506' & @CRLF & _
    '9.07.2014 08:06:49 Kaffeebecher=4980' & @CRLF & _
    '9.07.2014 23:17:27 Teebecher=4855' & @CRLF & _
    '9.07.2014 23:17:27 Kaffeebecher=2843' & @CRLF & _
    '[10:4:5]' & @CRLF & _
    '8.07.2014 22:38:22 Teebecher=1991' & @CRLF & _
    '8.07.2014 22:38:22 Kaffeebecher=2780' & @CRLF & _
    '9.07.2014 12:02:52 Teebecher=1410' & @CRLF & _
    '9.07.2014 12:02:52 Kaffeebecher=1968' & @CRLF

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

    $section = "10:24:1"
    $matchSection = StringRegExp($s, "\[" & $section & "]\r\n([^[]+)", 1)
    _StringRegExpReplace_Callback($matchSection[0], "(Teebecher|Kaffeebecher)=(\d+)", "_AddItem('$1', '$2')")

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

    $ErgebnisArray = _AddItem('', '', 'get')
    ConsoleWrite('ELEMENT' & @TAB & @TAB & 'Anz. ges.' & @TAB & 'Durchschnitt' & @LF)
    ConsoleWrite($ErgebnisArray[0][0] & @TAB & $ErgebnisArray[0][1] & @TAB & @TAB & $ErgebnisArray[0][1] / $ErgebnisArray[0][2] & @LF)
    ConsoleWrite($ErgebnisArray[1][0] & @TAB & $ErgebnisArray[1][1] & @TAB & @TAB & $ErgebnisArray[1][1] / $ErgebnisArray[1][2] & @LF)

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

    Func _AddItem($_type='', $_count='', $_mode='add')
    Local Static $aRet[2][3] = [['Teebecher',0,0],['Kaffeebecher',0,0]]
    Local $i = 0
    Switch $_mode
    Case 'add'
    If $_type <> 'Teebecher' Then $i = 1
    $aRet[$i][1] += $_count
    $aRet[$i][2] += 1
    Case 'get'
    Return $aRet
    EndSwitch
    EndFunc

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

    ; #FUNCTION# ====================================================================================================================
    ; Name ..........: _StringRegExpReplace_Callback
    ; Description ...: Replaces ByRef all matches in a string by manipulation of the matches in a callback function
    ; Parameters ....: $sString String to manipulate
    ; ...............: $sPattern RegExp pattern for the match
    ; ...............: $sCallback Callback function as string, i.e. "MyCallback('$1')" -- '$1' represents the match
    ; .....optional..: $sBefore String to insert before the manipulated match
    ; .....optional..: $sAfter String to insert after the manipulated match
    ; Return values .: Success 1
    ; ...............: Failure 0 set error = 1
    ; Author ........: Taz77
    ; ===============================================================================================================================
    Func _StringRegExpReplace_Callback(ByRef $sString, $sPattern, $sCallback, $sBefore = '', $sAfter = '')
    $sString = Execute("'" & StringRegExpReplace(StringReplace($sString, "'", Chr(26), 0, 2), $sPattern, $sBefore & "'&" & $sCallback & "&'" & $sAfter) & "'")
    If @error Then
    ConsoleWrite('_StringRegExpReplace_Callback error! Pattern: "' & $sPattern & '", Callback: "' & $sCallback & '"' & @LF)
    Return SetError(1,0,0)
    EndIf
    $sString = StringReplace($sString, Chr(26), "'", 0, 2)
    Return 1
    EndFunc ;==>_StringRegExpReplace_Callback

    [/autoit]
  • Funktionsplotter - Funktionen ganz einfach darstellen

    • BugFix
    • 29. Juli 2014 um 10:20

    Kannst ja mal probieren, mein Graph-Control zum Zeichnen zu nutzen. ;)

  • GetWeekday

    • BugFix
    • 27. Juli 2014 um 16:40

    Auch für die Zukunft sind alle Kalenderberechnungen unter Vorbehalt. Bis jetzt sind m.W. nur bis zum Jahr 2999 die Regelungen für Schaltjahre gültig. Da die Abweichung der Tageslängen nicht konstant ist, sondern mehr oder weniger starken Schwankungen unterliegt, kann auch jederzeit entschieden werden einen zusätzlichen Schalttag einzuführen (oder auch umgekehrt einen zu streichen).
    Vermutlich wird das aber unsere Programmieraktivitäten nicht mehr beeinflussen, das können wir dann unseren Ur-Ur-...Enkeln aufhalsen. ;)

  • SciTE - Variablen- und Funktions- Tipp (CallTipp oder Konsolenausgabe) per HotKey od. Kontextmenü, Suche nach Variable [v0.11]

    • BugFix
    • 26. Juli 2014 um 23:13
    Zitat von BigRox

    $Dateinamen[0] Enthält den ganzen Dateinamen.
    $Dateinamen[1] Enthält den gekürzten Dateinamen.
    $Dateinamen[2] Enthält den neuen Dateinamen.


    Ahh - OK, du willst Tipps für einzelne Array-Elemente -- das ist bisher nicht vorgesehen.
    Wobei ich hierbei dann folgende Variante verwenden würde:

    [autoit]

    Global $aDateiname[3]
    #region - Variablen-Tipp
    ; $aDateiname - Dateiname: [0] = kpl. , [1] = gekürzt, [2] = neu
    #endregion

    [/autoit]


    Ich schaue mal bei Gelegenheit, ob das integrierbar ist (ohne dabei das Konzept kpl. neu aufzustellen).

  • GetWeekday

    • BugFix
    • 26. Juli 2014 um 18:09
    Zitat von kaesereibe

    da ich eigtl davon ausgehe, dass "Leute" wissen wie man ein Datum richtig schreibt.


    Dieser Denkansatz fällt dir spätestens dann auf die Füße, wenn du mal eine Anwendung für Jedermann schreibst. Nicht irgendein 10-Zeilentool, sondern ein komplexes Programm (Warenwirtschaft, Bestandsverwaltung oder irgendwas in der Art). Errorhandling frißt dabei fast 2/3 deines Skriptes und dass die User dann doch noch Dinge mit deinem Programm anstellen, die aus deiner vernunftbegabten Programmierersicht so abartig sind, dass sie doch gar nicht auftreten können, merkst du nach dem ersten Lauf der Beta.
    Ich habe Programme zum Testen immer meiner Tochter gegeben, als die klein war. Ich habe ihr nie gesagt, worum es geht, sondern einfach nur: Probier mal, was man damit machen kann. Das ist die beste Variante Fehleingaben zu finden. :D

  • SciTE - Variablen- und Funktions- Tipp (CallTipp oder Konsolenausgabe) per HotKey od. Kontextmenü, Suche nach Variable [v0.11]

    • BugFix
    • 26. Juli 2014 um 17:52
    Zitat von BigRox

    Kann man das LUA-Script 0.9 so verändern, dass man auch einen Tipp für eine Array-Variable hinterlegen kann ?


    Das ist doch überflüssig. Wenn du deklarierst:

    [autoit]

    Global $variable[10]

    [/autoit]

    dann kannst du

    [autoit]

    $variable

    [/autoit]

    für nichts anderes mehr verwenden, diese Variable ist dann mit dem Array verknüpft.
    Ich kann im Moment nicht testen: Markierst du die Variable inkl. der Klammern oder setzt du nur den Cursor auf den Variablenkörper (wäre der korrekte Weg)?

    Und woran hakt es, dass du v0.11 nicht zum Laufen bekommst? Kann ich evtl. Hilfestellung geben?

  • GetWeekday

    • BugFix
    • 26. Juli 2014 um 16:31
    Zitat von kaesereibe

    In beiden Versuchen war meine Funktion schneller als die Build-In Funktion =)


    Wenn man sich den prozentualen Gewinn von ca. 50% anschaut, sieht das wirklich enorm aus. Aber wir wollen mal realistisch bleiben: Solch ein Aufruf erfolgt niemals 100.000 mal nacheinander (nur da wäre ein effektiver Gewinn zu verzeichnen). Ich halte nicht viel von einsatzfremden Zeituntersuchungen. Ein Befehl wie dieser, der in der Regel einmal aufgerufen wird, fällt auch bei der Nutzung der AutoIt-UDF zeitmäßig überhaupt nicht ins Gewicht.
    Im übrigen hinkt der Vergleich ganz gewaltig. Denn die UDF hat intern noch ein gründliches Errorhandling, das natürlich auch Zeit beansprucht. Deshalb ist ein Vergleich von UDF und Standalone-Lösungen immer der Vergleich von Äpfeln und Birnen. ;)

  • at commands und Guthaben abfragen

    • BugFix
    • 26. Juli 2014 um 16:20

    OK, dein Problem kann ich mangels Umgebung nicht näher untersuchen.
    Aber mal ein Tipp:

    Zitat von AutoIt Hilfe

    If you would like to see the entire commandline string passed to an AutoIt executable, then use $CmdLineRaw for the entire parameter string.

    Spart dir die Schleife um die Kommandos wieder zusammenzufügen. ;)

  • at commands und Guthaben abfragen

    • BugFix
    • 26. Juli 2014 um 15:44
    Zitat von fschaef

    ich habe ein Skript


    Schön für dich - und wie sollen wir dir helfen ohne Kenntnis des selbigen? :whistling:

  • AutoIt mit Sublime Text 2/3 -- Sprachdef. f. Stable v3.3.12.0, Wrapper, Au3Check, Run m. Parameter

    • BugFix
    • 23. Juli 2014 um 17:52

    Da der Server-Crash die Daten gefressen hat, hier nochmal:

    - Sprachdefinitionsdatei auf Stable 3.3.12.0 angepaßt
    - seperate Erkennung von: Hexzahlen, Klammern, Variablen die mit Funktionen verknüpft sind

    Der Inhalt kann nicht angezeigt werden, da er nicht mehr verfügbar ist.

    Dateien

    ST3_highlighting3.3.12.0.png 26,78 kB – 0 Downloads AutoItScript.zip 20,27 kB – 794 Downloads
  • UDF Sammlung

    • BugFix
    • 5. Juni 2014 um 22:07
    Zitat von YaeroxXO

    Ich hätte das jetzt auf ca. 150 - 200 geschätzt, maximal.


    Wohl eher als Minimum - alleine von mir findest du einige hundert. :P
    Ich hatte sowas auch mal vor, habe mich aber dann darauf beschränkt in einem Thread (in meiner Signatur: Meine UDF) eine katalogisierte Liste meiner Threads zu pflegen (so ca. 1-mal im Jahr aktualisiere ich das). Wenn jeder das für sich selbst macht kann man mit diesen Sammelthreads schon einen guten Überblick bekommen. Aber es ist schon genug Arbeit mit den eigenen Skripten, wenn man das fürs ganze Forum überwachen wollte ist das ein enormer Aufwand.

    Edit:
    Hab mal nachgezählt - mein Thread enthält schon 148 Links und es sind längst nicht alle UDF dabei. Also kann man das gesamte Aufkommen wohl eher in Richtung >1.000 ansiedeln. ;)

  • Eigene Befehle in/mit Tidy.exe einbinden

    • BugFix
    • 31. Mai 2014 um 16:59

    Vielleicht erklärst du einmal, was du damit meinst, eigene Befehle einzubinden. Was soll Tidy denn machen ausser der diesem Programm zugeordneten Aufgabe? :wacko:

  • timer flackern und klickregistrierung ist träge

    • BugFix
    • 29. Mai 2014 um 22:16
    Zitat von 63rrit

    oder gibt es wege das zu umgehen?


    Wenn du davon völlig losgelöst arbeiten willst, musst du schon den Hotkey vor dem System abfangen (Hooken). Existiert dein Fenster und der Hotkey wird gedrückt nutzt du ihn und verwirfst dann diesen Hook, damit das System damit nicht weiter arbeitet.
    Das Hooken von Keyevents ist nicht allzu schwer. Die Hilfe-Bsp. sollten dir als Impression reichen. Da sich damit auch viel Schindluder treiben läßt (z.B. Keylogger) ist der Support von uns dafür sehr begrenzt.

  • timer flackern und klickregistrierung ist träge

    • BugFix
    • 29. Mai 2014 um 13:25
    Zitat von 63rrit

    3) durch klicken der tasten numblock 0,1,3,4,6,komma können timer in der
    rechten unteren bildschirmecke gestartet werden. (diese funktion wurde
    über "_IsPressed" und nicht über einen hotkeyset realisiert, da die
    timer sonst falls eine anwendung die selben hotkeys benutzt nicht gestartet werden können


    Setze dir ein paar Dummy-Ctrl auf deine Overlay-GUI.
    Diesen weist du mit GUISetAccelerators Hotkeys zu, die sind dann ausschliesslich mit dieser GUI wirksam. Dann sollten die Reaktionszeiten auch nicht mehr träge sein.

  • Der böse Onkel von nebenan...

    • BugFix
    • 29. Mai 2014 um 13:12

    Bist du auf Fatzebuck? Da kannst du doch einen ordentlichen Flame auf ihn ablassen, indem du das Geschehen nur ganz sauber dokumetiert wiedergibst. Gleichzeitig würde ich darin meine Sorge um die Sicherheit unseres Landes zum Ausdruck bringen, wenn solche anscheinend inkompetente Personen die Frechheit besitzen sich zu Dingen zu äussern, von denen sie nix verstehen.
    Und die Tatsache, dass du auf dem Lande wohnst, kannst du auch für dich nutzen. Gehe zum Bäcker, zum Fleischer und lass überall deine Version der Geschichte hören, und sag wie erschüttert du bist, dass der Bundeswehrtyp solche Lügen verbreitet.
    Ich würde dem Typen aber auch ganz klar sagen, er soll es unterlassen diese Lügen zu verbreiten. Das ist Rufschädigung (evtl. finden sich noch ein paar mehr Straftatsbestände) und dagegen wirst du dich, wenn es sein muss, auch zur Wehr setzen.
    Oder vllt. eine ganz krasse Variante: Offener Brief an den Typen mit Schilderung der Situation und der Aufforderung die Lügen zu unterlasseen. Und das Teil pinnst du im örtlichen Supermarkt oder in jedem Laden an die Wand. :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™