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

  • x86, x64 - Kompilieren wann und wie

    • BugFix
    • 13. September 2014 um 20:19

    Ich habe ja in Autoit folgende Möglichkeiten:

    Code
    Kompilieren als
    mit Aut2Exe.exe            x86    x64   
    mit Aut2Exe_x64.exe        x86    x64


    Mir ist nicht klar, worin der Unterschied zwischen den verschiedenen Kompilaten besteht. x86 und x64 ist mir klar, aber worin unterscheiden sich diese, wenn sie mit Aut2Exe oder Aut2Exe_x64 kompiliert werden?
    Kann jemand Licht ins Dunkel bringen? :rolleyes:

  • UDF's

    • BugFix
    • 13. September 2014 um 19:06

    Zum Lernen ist das sicher nicht verkehrt. Aber praktikabler ist eigentlich die Nutzung der Abbrevs. Da kannst du kpl. Code hinterlegen und bekommst diesen bei Eingabe der Abkürzung eingefügt. ;)
    Wenn du SciTE4AutoIt verwendest, gib einfach mal: selectloop und dann Leertaste ein. Diese Abkürzung fügt dir dann eine While-Schleife mit Select-Statement ein. Das kannst du auch für eigenen Code erstellen:
    - au3-Datei öffnen
    - Strg+1 --> Other Tools --> Run Abbrev Manager

  • Bildschirmumschalter automatisieren

    • BugFix
    • 12. September 2014 um 09:31
    Zitat von Kanashius

    So "ganz klar nein" kann man auf keinen Fall sagen...


    In diesem Fall aber eindeutig.
    Konfiguration:
    [Tastatur] --> [Hardware Umschalter] --> [PC1..4]

    Wenn du das anguckst sollte auffallen, dass Signale der Tastatur an den Hardwareeingängen des Umschalters auflaufen. Und die kannst du von den rückwärtigen PC nun mal nicht ansprechen. Ist so, als ob du einen PC in einem anderen Netzwerk erreichen möchtest und kein Routing dorthin besteht.
    Diese Umschalter sind nur in einer Richtung wirksam: Multi-Komponente (Tastatur, Maus, BS) an Umschalter an aktuell aktiven PC.

  • RegEx-Pattern in VBA mit anderer "Logik"?

    • BugFix
    • 11. September 2014 um 22:57

    Jetzt fällt es mir wieder wie Schuppen aus den Haaren: Du bekommst einen Match (Item) und die Captures sind SubItem.
    So gehts:

    PHP
    Const S = "abc789xyz"
    Const S1 = "123def"
    Const S2 = "www456"
    Const S4 = "1234"
    
    
    
    
    Public Sub RegEx_Test()
        Dim Regex As Object
        Dim M As Object
        Set Regex = CreateObject("vbScript.Regexp")
        With Regex
            .Pattern = "(\b[a-z]+)([0-9]+)"
            .Global = True
            Set M = .Execute(S2)
            If M.Count > 0 Then
                If M(0).SubMatches.Count > 0 Then
                    MsgBox M(0).SubMatches.Item(1) & " gefunden"
                End If
            End If
        End With
    End Sub
    Alles anzeigen
  • RegEx-Pattern in VBA mit anderer "Logik"?

    • BugFix
    • 11. September 2014 um 22:28

    Ich habs nicht getestet - nur den Code geschrieben.
    Aber probier mal folgendes:

    PHP
    With Regex
            .Pattern = "(\b[a-z]+)([0-9]+)"
            .Global = True
            Set M = .Execute(S)
            MsgBox M(1) & " gefunden"
        End With
  • RegEx-Pattern in VBA mit anderer "Logik"?

    • BugFix
    • 11. September 2014 um 22:10
    PHP
    S = "abc789xyz"
    
    
    Public Sub RegEx_Test()
        Dim Regex As Object
        Dim M As Object
        Set Regex = CreateObject("vbScript.Regexp")
        With Regex
            .Pattern = "\b[a-z]+([0-9]+)"
            .Global = True
            Set M = .Execute(S)
            MsgBox M(0) & " gefunden"
        End With
    End Sub
    Alles anzeigen

    Also so in etwa würde ich das lösen, am Pattern ist nichts auszusetzen (ob \d oder 0-9 ist ja egal).

    Edit: Oops, das With... vergessen ;)

  • SciTE aktualiesieren

    • BugFix
    • 11. September 2014 um 19:14
    Zitat von Make-Grafik

    Daher würde ich da auch nicht in den einstellungen rumpfuschen so wie es in den verlinkten thread dort beschrieben ist.


    Falsch! Bitte ruhig die Einstellungen frei nach Geschmack ändern. Nur eines sollte man dabei beachten: Änderungen AUSSCHLIESSLICH in der "SciTEUser.properties" vornehmen. Somit bleiben die Standardeinstellungen aus den Globals erhalten. Hat man irgendwelchen Mist verzapft und weiss nicht mehr an welcher Stelle, einfach alles in den User-Settings auskommentieren (dann greifen die Settings der Global) und dann Eintrag für Eintrag aktivieren. Dann weiß man, wo man 'nen Bock geschossen hat. ;)

    Ich habe ein Skript im Background laufen, dass feststellt, wenn eine zweite Instanz von SciTE geöffnet wird. In dem Fall werden beide Fenster auf gleiche Breite in den Bildschirm eingepasst. Wird eine der Instanzen wieder geschlossen, wird die verbleibende Instanz maximiert.

    Spoiler anzeigen
    [autoit]

    Opt("TrayIconHide", 1)

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

    Global $iTBLeft, $iTBTop, $iTBRight, $iTBBottom, $aTB = _GetTaskbarPosition()
    Global $iTBWidth = 0, $iTBHeight = 0, $iLeft = 0, $iTop = 0
    $iTBLeft = $aTB[0]
    $iTBTop = $aTB[1]
    $iTBRight = $aTB[2]
    $iTBBottom = $aTB[3]

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

    If $iTBLeft = 0 And $iTBTop = 0 Then
    If $iTBRight < $iTBBottom Then
    $iTBWidth = $iTBRight
    $iLeft = $iTBWidth
    Else
    $iTBHeight = $iTBBottom
    $iTop = $iTBHeight
    EndIf
    ElseIf $iTBTop <> 0 Then
    $iTBHeight = $iTBBottom - $iTBTop
    Else
    $iTBWidth = $iTBRight - $iTBLeft
    EndIf

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

    Global $List, $iWidth = @DesktopWidth - $iTBWidth, $iHeight = @DesktopHeight - $iTBHeight

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

    While True
    Do
    Sleep(500)
    $List = WinList('[CLASS:SciTEWindow]')
    Until $List[0][0] = 2
    WinMove($List[1][1], '', $iLeft, $iTop, $iWidth/2, $iHeight)
    WinMove($List[2][1], '', $iLeft + ($iWidth/2), $iTop, $iWidth/2, $iHeight)
    Do
    Sleep(500)
    $List = WinList('[CLASS:SciTEWindow]')
    Until $List[0][0] = 1
    WinMove($List[1][1], '', $iLeft, $iTop, $iWidth, $iHeight)
    WEnd

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

    Func _GetTaskbarPosition()
    Local $tRect = DllStructCreate("long;long;long;long"), $hWnd, $ret
    $ret = DllCall("user32.dll", 'long', "FindWindow", 'str', "Shell_traywnd", 'str', "")
    $hWnd = $ret[0]
    DllCall("User32.dll", "int", "GetWindowRect", "hwnd", $hWnd, "ptr", DllStructGetPtr($tRect))
    Local $aRet[4] = [DllStructGetData($tRect, 1),DllStructGetData($tRect, 2), _
    DllStructGetData($tRect, 3),DllStructGetData($tRect, 4)]
    Return $aRet
    EndFunc ;==>_GetTaskbarPosition

    [/autoit]
  • Updateproblem Windows 7

    • BugFix
    • 9. September 2014 um 19:17

    Wenn Dinge einmal auftreten, dann kann man sagen - OK, passiert. Aber wenn im selben Updatezyklus von Microsoft auch an einem anderen Rechner ähnliche Probleme auftreten - dann halte ich Zufall für unwahrscheinlich.
    Laptop von meinem Chef: Win7 Pro 32Bit - nach Durchführung des aktuellen Updates: Bei jedem Hochfahren "Update wird installiert, bitte nicht ausschalten" - und das dauert ne gute Stunde!
    Mein Firmen-Laptop: Win7 Pro 32Bit - nach Durchführung des aktuellen Updates: Fehlermeldung im Wartungscenter "Updates können nicht abgefragt werden, aktualisieren Sie Windows Updates" - Habe ich versucht: "Windows Updates konnte nicht aktualisiert werden" :rofl:

    Mein Privat-Laptop mit Win7 Pro 64Bit hat keine Probleme.

    Wie sieht es bei euch mit 32Bit-Systemen aus?

  • SciTE aktualiesieren

    • BugFix
    • 9. September 2014 um 12:48

    Für AutoIt gibt es eine angepasste Version mit extra Tools für Au3: SciTE4AutoIt3
    Herunterladen kannst du diese hier: Link

    Installationshinweise

  • TabItem

    • BugFix
    • 8. September 2014 um 20:43

    Du musst die Controls eines Tabs in Zugehörigkeit zum Tab erstellen, als Tab-Item >> Controls dazu, nächstes Tab-Item >> Controls dazu.

    [autoit]


    $hGUI = GUICreate("Test Tab", 300, 200)
    $hTab = GUICtrlCreateTab(10, 10, 280, 180)
    $TabItem_1 = GUICtrlCreateTabItem("Item1")
    GUICtrlCreateLabel("L1", 10, 33, 277, 155)

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

    $TabItem_2 = GUICtrlCreateTabItem("Item2")
    GUICtrlCreateLabel("L2", 10, 33, 277, 155)

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

    $TabItem_3 = GUICtrlCreateTabItem("Item3")
    GUICtrlCreateLabel("L3", 10, 33, 277, 155)
    GUICtrlCreateTabItem("")

    [/autoit]
  • SQLite prüfen ob Datensatz existiert

    • BugFix
    • 8. September 2014 um 17:16

    Das ist doch kein SQLite Problem.
    Führe ein Query mit der Abfrage auf diesen Datensatz aus (Bedingungen wie Index od. DS-Nr. etc. kennst nur du) und werte die Rückgabe aus.

  • Wie lese ich den Pfad von einem Bild aus? (das mit GUICtrlCreatePic erstellt wurde)

    • BugFix
    • 6. September 2014 um 16:24

    2D-Array zum Speichern der Bilder:
    [index][0] = Bildpfad
    [index][1] = momentane Position im Spiel, z.B. String: "Zeile,Spalte"

  • Programm Sicherheit/ Programm schließen verhindern

    • BugFix
    • 5. September 2014 um 20:02

    *Hust* - Habe ich vor über 6 Jahren geschrieben, vllt. funktioniert es ja noch auf aktuellen Systemen: TaskManager sperren

  • VideoTutorials / Community-Projekt - Was haltet ihr davon?

    • BugFix
    • 4. September 2014 um 21:49

    Vermutlich hängt die Betrachtungsweise stark davon ab, wie man gelernt hat "zu lernen". Ein Video ist für mich insofern wenig komfortabel, weil man nicht "querlesen" kann. Wenn ich eine geschriebene Anleitung habe und dort sind Passagen, die für mich nichts Neues enthalten kann ich lesend ruck-zuck von Absatz zu Absatz springen und dann wieder intensiv lesen. Im Video absolut unmöglich. Ebenso ist es beim Thema: Vertiefen durch nochmaliges Lesen. ("He, interessanter Lösungsansatz, das lese ich zum besseren Verständnis gleich nochmal.") - Viel Spaß beim Scrollen durch das Video-Tut.
    Deshalb mein persönliches Statement:
    - Video zur Information --> JA
    - Video zum gründlichen Lernen --> NEIN

    Man könnte hier einen Königsweg finden und ordentlich strukturierte Texttutorials erstellen, die eingebettete Videos enthalten. Ich bin mit Sicherheit kein Exot, mit meinem Unverständnis für "Ich mach für jeden Schritt ein Video-Tut". Insofern wäre eine Kombination beider Wege eine Lösung mit der größten Massenwirkung. Und das ist es doch, was wir wollen: Möglichst viele User erreichen. :thumbup:

  • VideoTutorials / Community-Projekt - Was haltet ihr davon?

    • BugFix
    • 4. September 2014 um 20:15

    Also ich stamme ja nun aus einer Generation, in der man noch gedruckte Buchstaben von richtigem Papier gelesen (und verstanden!) hat. Insofern sind Video-Tutorials für mich nur Zeitdiebstahl. In 20 min Video-Tut bekommst du den Inhalt, den du dir in 5 min aus einem geschriebenen Tut erarbeitet hast.
    Sinnvoll halte ich Videos zur Demo von speziellen Features. Also z.B.: Was kann ein Programm alles, welche Erweiterungen lassen sich einbauen. - Das dann als Hilfe zur Entscheidungsfindung: brauche ich/brauche ich nicht. ;)
    Aber ich bin da wohl nicht der Maßstab, in einer Welt in der so mancher nicht mal 'ne Flasche Bier aufbekommt ohne vorher auf YT das Tut dazu zu gucken... :whistling::rofl:

  • _DateImage

    • BugFix
    • 30. August 2014 um 21:48
    Zitat von alpines

    Gut zu wissen, danke!


    Ab und an einen Blick in die UDF's werfen hilft ungemein :D

  • _DateImage

    • BugFix
    • 30. August 2014 um 20:57
    Zitat von alpines

    aber was ist wenn der User selber was per GDI+ zeichnet, dein Control killt und dann nicht mehr weiterzeichnen kann?


    Das kann nicht passieren, ist genau wie bei SQLite:
    Intern wird bei jedem Startup-Aufruf ein Zähler erhöht, bei Shutdown runtergezählt. Erst wenn der Zähler null erreicht, wird wirklich beendet (genau, wie auch nur ein einziges mal gestartet wird). ;)

  • ListView mit LV_Format_include.au3

    • BugFix
    • 29. August 2014 um 23:47

    Tut mir leid, habe ich ad hoc keine Erklärung.

  • ListView mit LV_Format_include.au3

    • BugFix
    • 29. August 2014 um 22:25

    Habe jetzt auf 3.3.10 erhöht ;)
    die .12 kommt erst drauf, falls es mal eine wirklich stabile .13 gibt :D - ich habe kein Vertrauen mehr in neue Stables.

  • ListView mit LV_Format_include.au3

    • BugFix
    • 28. August 2014 um 08:50

    "Nachtigall, ick hör dir trapsen.." :D

    Meine Vermutung: Du verwendest Icon in deinem LV. Wenn ich mich recht erinnere, werden dazu Infos in LVPARAM abgelegt. Das benutze ich um die Verweise auf die Formatinfos zu speichern. Somit würde das sich beissen.
    Wie gesagt - eine Vermutung, kanns auch gerade nicht testen.

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™