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

  • Suche mit LIKE

    • BugFix
    • 21. Februar 2010 um 22:27

    Erweiterung:
    Der zu prüfende String kann jetzt auch Zeilenumbrüche (@CR oder @CRLF) enthalten.
    s. Post1

  • Details auslesen????

    • BugFix
    • 21. Februar 2010 um 19:04

    Findest du hiermit: Erweiterte Dateiinfo (eine Datei od. alle eines Ordners)

  • StringRegExp - Zeilenumbruch mit einbeziehen

    • BugFix
    • 21. Februar 2010 um 17:33

    \s = Leerzeichen
    Zeilenumbruch (CRLF) wird mit \r\n maskiert.

  • Geilste Fehlermeldung^^ !!UPDATE!!

    • BugFix
    • 21. Februar 2010 um 15:22

    Wenn ich nicht irre, ist es italienisch. Genauso spricht nämlich mein Kollege - und der ist Italiener. :D

  • Zwischenablage überwachen und in TXT-Datei speichern?

    • BugFix
    • 21. Februar 2010 um 14:34

    Das zweimal ENTER verstehe ich nicht, wozu?
    Weshalb soll die Datei offen (also im Editor) sein? Dann kann man ja nichts eintragen?
    Mal als Ansatz:

    Spoiler anzeigen
    [autoit]

    ; === Fenstererkennung an Teilen des Titels
    Opt("WinTitleMatchMode", 2)

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

    ; === Hotkey zum Skript Beenden
    HotKeySet('^!e', '_ende') ; === STRG + ALT + e

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

    ; === Variable zum Speichern des letzten Clipboardinhalts
    Local $sClipOld = '', $sClip

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

    While True
    If WinExists("C:\Tools\Zwischenablage.txt") Then
    $sClip = ClipGet()
    If $sClip <> $sClipOld Then
    $sClipOld = $sClip
    ; in Datei schreiben
    ; Send geht nicht, da Datei im Hintergrund sein soll (warum soll sie überhaupt offen sein?)
    ; zum Schreiben muß die Datei geschlossen werden, dann kann mit Filewrite der Inhalt von
    ; $sClip geschrieben werden.
    EndIf
    EndIf
    Sleep(100)
    WEnd

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

    Func _ende()
    Exit
    EndFunc

    [/autoit]
  • [Problem] Inputbox nach Eingabe diverse Aktionen durchführen

    • BugFix
    • 21. Februar 2010 um 14:13

    Mal die AGB gelesen?

    Zitat

    1.2.9 Die Nutzung der Spiele und Services ist nur mittels eines Internetbrowsers oder spezieller, von der Bigpoint GmbH zur Verfügung gestellter oder ausdrücklich zugelassener Tools zulässig („Verbot der Nutzung nicht autorisierter Skripte“). Dies bedeutet insbesondere: Die Verwendung von Programmen, die eine übermäßige Belastung des Servers erzeugen, ist unzulässig. Der Einsatz von Software zur systematischen oder automatischen Steuerung der Spiele oder einzelner Spielfunktionen (Bots, Makros), zur Reproduktion oder Auswertung der Spiele, Spielelemente oder der auf der Plattform Bigpoint eingestellten Inhalte ist unzulässig.

  • Zwischenablage überwachen und in TXT-Datei speichern?

    • BugFix
    • 21. Februar 2010 um 13:56

    Schau mal folgendes Skript an, da findet sich sicher was für deine Zwecke:
    https://autoit.de/index.php?page…67020#post67020

  • .ini datei speichern

    • BugFix
    • 21. Februar 2010 um 12:03

    Schau mal in die Hilfe:
    - IniRead
    - IniWrite
    - WinActivate

  • Interaktives Tutorial

    • BugFix
    • 21. Februar 2010 um 11:54

    Finde den Link leider nicht mehr.

    Aber etwas wirklich interaktives zu skripten ist nicht gerade einfach. Das geht nur solange recht gut, wie die Aufgabenstellung eine geringe und leicht zu überprüfende Zahl an Lösungsvarianten zuläßt. ;)
    Ich wünsch euch auf jeden Fall viel Spaß.

  • Suche mit LIKE

    • BugFix
    • 21. Februar 2010 um 10:30

    Betreff der geschweiften Klammern hast du recht, die hab ich glatt vergessen. 8|
    Aber sowohl bei geschweifter als auch bei eckiger Klammer muß nur die öffnende Klammer maskiert werden. Die schließenden Klammern alleinstehend werden von der Regex-Engine als normale Zeichen behandelt. Probier es aus - gibt keine Fehler.

    Neue Version in Post 1.
    Habe den Tipp von progandy umgesetzt.

  • Interaktives Tutorial

    • BugFix
    • 20. Februar 2010 um 22:22

    Kann mich erinnern, dass es im EN-Forum mal sowas gab. Vielleicht finde ich es noch.

  • Wert aus/an Schalten, wie?

    • BugFix
    • 20. Februar 2010 um 22:01

    Am besten ist es Koda gar nicht zu verwenden. Wozu hat man einen Kopf zum Rechnen ;). Und wenn man es per Hand macht, spart man sich auch die Hälfte weglöschen zu müssen (nutze mal OnEvent mit Koda :wacko: ).
    Ich verwende Koda max. um einen groben Entwurf zu erstellen, Feinschliff auf jeden Fall von Hand.

  • Suche mit LIKE

    • BugFix
    • 20. Februar 2010 um 18:11
    Zitat von SEuBo

    Rein interessehalber: Warum ist denn ']' nicht bei den Metachars?
    Und was ist mit '{' und '}' ?


    Weil diese Zeichen keine besondere Bedeutung haben. Ausschließlich die 11 aufgeführten Zeichen haben eine Doppelfunktion und müssen deshalb maskiert werden.

  • Suche mit LIKE

    • BugFix
    • 20. Februar 2010 um 17:12

    Wer mit SQL arbeitet kennt LIKE, um maskiert zu suchen.
    In AutoIt können wir das mit RegEx erledigen. Da damit doch so mancher seine Probleme hat, habe ich die Syntax von LIKE verwendet ('_' =Platzhalter für ein beliebiges Zeichen an dieser Stelle; % =Platzhalter für eine beliebige Zahl von Zeichen, auch 0) und setze das intern in eine Regex-Prüfung um.
    Im Unterschied zu LIKE, das immer case-sensitiv ist, kann hier die Sensitivität gewählt werden. Standard ist False.

    Edit3:
    Erweiterung:
    Der zu prüfende String kann jetzt auch Zeilenumbrüche (@CR oder @CRLF) enthalten.

    Edit2:
    War noch ein Fehler drin beim An-/Abschalten der Metacharacter Erkennung.

    Edit:
    Habe progandys Hinweis jetzt eingearbeitet.

    _Search_LIKE( )
    [autoit]


    Local $aTest[5] = [60123,62345,54175,62340,'C:\Code\Test.au3']

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

    For $i = 0 To 4
    If _Search_LIKE($aTest[$i], '6%') Then ConsoleWrite('erste Position eine 6 - ' & $aTest[$i] & @CRLF)
    If _Search_LIKE($aTest[$i], '6%0') Then ConsoleWrite('erste Position eine 6, letzte eine 0 - ' & $aTest[$i] & @CRLF)
    If _Search_LIKE($aTest[$i], '__1%') Then ConsoleWrite('dritte Position eine 1 - ' & $aTest[$i] & @CRLF)
    If _Search_LIKE($aTest[$i], '__3%') Then ConsoleWrite('dritte Position eine 3 - ' & $aTest[$i] & @CRLF)
    If _Search_LIKE($aTest[$i], '%test.au3') Then ConsoleWrite('test.au3 im Pfad - ' & $aTest[$i] & @CRLF)
    ConsoleWrite(@CRLF)
    Next

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

    ;===============================================================================
    ; Function Name: _Search_LIKE($sTest, $sMask, $fCasesens=False)
    ; Description: Prüft String auf Übereinstimmung mit Suchmaske
    ; Parameter(s): $sTest - der zu prüfende String
    ; Requirement(s): $sMask - die Suchmaske, analog zu LIKE in SQL
    ; _ =Platzhalter f. EIN beliebiges Zeichen an dieser Stelle,
    ; % =Platzhalter f. eine beliebige Menge von Zeichen
    ; $Casesense - False (Standard), nicht case-sensitiv
    ; Return Value(s): 1 - Übereinstimmung mit Suchmaske
    ; 0 - keine Übereinstimmung
    ; Author(s): BugFix ([email='bugfix@autoit.de'][/email])
    ;===============================================================================
    Func _Search_LIKE($sTest, $sMask, $fCasesens=False)
    Local $pattern = '^'
    If Not $fCasesens Then $pattern &= '(?i)'
    $pattern &= '\Q' & StringRegExpReplace($sMask, '\\E', '\\E\\\\E\\Q')
    $pattern = StringRegExpReplace(StringRegExpReplace($pattern, '%', '\\E.*\\Q'), '_', '\\E.\\Q') & '\E\z'
    $sTest = StringRegExpReplace($sTest, '\r\n|\r', ' ')
    Return StringRegExp($sTest, $pattern)
    EndFunc ;==>_Search_LIKE

    [/autoit]

    Dateien

    _Search_LIKE.au3 1,25 kB – 489 Downloads
  • möglichst wenig code für möglichst viele checkboxen

    • BugFix
    • 20. Februar 2010 um 11:03

    Es geht kürzer:

    [autoit]

    Local $checkbox[75]

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

    Local $Form1 = GUICreate("Form1", 875, 600, -1, -1)
    Local $top = 75
    Local $left = 25
    For $i = 0 To UBound($checkbox) - 1
    Switch $i
    Case 15, 30, 45, 60
    $left += 175
    $top = 75
    EndSwitch
    $checkbox[$i] = GUICtrlCreateCheckbox("checkbox" & $i, $left, $top, 175, 17)
    $top += 20
    Next

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

    GUISetState(@SW_SHOW)

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

    While True
    Switch GUIGetMsg()
    Case -3
    Exit
    EndSwitch
    WEnd

    [/autoit]
  • AutoItObject - OOP für AutoIt

    • BugFix
    • 20. Februar 2010 um 10:26

    Sowas aber auch :S , bisher konnte ich mich erfolgreich um OOP drücken, weil es in AutoIt nicht verfügbar war und nun DAS! :rofl:
    Scherz beiseite, tolle Arbeit, die da geleistet wurde. :thumbup:
    Nun woll'n wir mal schauen, wo uns das das Leben erleichtern kann. ;)

  • Funktionen

    • BugFix
    • 19. Februar 2010 um 23:00

    Bsp.:

    [autoit]

    MsgBox(0, '', _Repeat('a', 5))
    MsgBox(0, '', _Repeat('a', 10))
    MsgBox(0, '', _Repeat('a', 15))

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

    Func _Repeat($string, $count)
    Local $out = ''
    For $i = 1 To $count
    $out &= $string
    Next
    Return $out
    EndFunc

    [/autoit]
  • Variable dynamisch kürzen

    • BugFix
    • 19. Februar 2010 um 19:09

    Mit Stringfunktionen:

    [autoit]

    $s = 'C:\\Programme\Hersteller\Bin\Application.exe'
    $s = StringTrimLeft($s, StringInStr($s, '\', 1, -1))

    [/autoit]
  • Probleme GUI / GUI Listview / INI / etc.

    • BugFix
    • 19. Februar 2010 um 12:01

    Wichtig - unbedingt als eindeutigen Schlüssel eine ID vergeben. Alle anderen Angaben können redundant sein.

  • Probleme GUI / GUI Listview / INI / etc.

    • BugFix
    • 19. Februar 2010 um 11:54

    Warum die vielen Sektionen? Mach nur eine:

    Muster.INI

    Code
    [daten]
    id=name,vorname,telefon,plz,strasse,ort


    Beim Laden einfach den String splitten - schon ist es in einem Array.

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™