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

Beiträge von Oscar

  • Status anzeige beim Kopieren einbauen

    • Oscar
    • 6. November 2019 um 14:32

    Mit FileCopy geht das nicht. Vielleicht möchtest Du das hier benutzen: _FileCopyEx

  • Oscars Listview-Datenbank v3 - mit Suche nach mehreren Begriffen

    • Oscar
    • 6. November 2019 um 14:28
    Zitat von Banana_2_Day

    Wenn ich richtig getestet habe, darf es kein Leerzeichen zwischen den Suchbegriffen geben

    Oh, stimmt! Weil ich an "+" bzw. "-" trenne.

    Füge mal diese Zeile nach der Zeile 575 ein: $sWord = StringStripWS($sWord, 2).

    Dann wird das Leerzeichen am Ende des Suchwortes ignoriert.

  • Analog-Digital Wandler mit USB Anschluss

    • Oscar
    • 5. November 2019 um 19:33

    Alternativ ginge es auch mit einem "Wemos D1 mini" (ESP8266). Dann könnte man das auch per Browser (HTML) im WLAN abrufen.

    Ein Firmware-Update würde per "Over the air" (OTA, über WLAN) gehen.

    Allerdings braucht der dann mehr Strom (in Spitzen bis 200mA).

    Kostenmäßig wäre das ähnlich. Da müsste ich mich aber erstmal mit der Kommunikation zu AutoIt intensiver beschäftigen.

  • Analog-Digital Wandler mit USB Anschluss

    • Oscar
    • 5. November 2019 um 19:22
    Zitat von BugFix

    Das ist natürlich unschlagbar günstig. Bekommt man die Teile normal zu kaufen oder nur beim Chinamann des Vertrauens?

    Das sind die Preise bei Amazon (Prime möglich, die Links könnte ich posten). Beim China-Mann sind die noch viel billiger (Hälfte bis ein Drittel). Würde dann aber länger dauern.

    Und beim Netzteil habe ich 8 € veranschlagt, weil das das günstigste bei Amazon war. Aber gerade das Netzteil ist total unkritisch.

    Da tut es jedes (alte) Handy-Netzteil. Hauptsache stabilisierte 5V. Strombedarf von der Schaltung liegt irgendwo bei ca. 50 mA. Das ist also verschwindend wenig.

    Und wenn Du noch eine alte Micro-SD-Card rumliegen hast, kannst Du die Kosten auch noch einsparen.

  • Analog-Digital Wandler mit USB Anschluss

    • Oscar
    • 5. November 2019 um 18:34

    Im Prinzip braucht man bloß 5 Teile:

    Nano Clone6.29 €
    SD-Cardreader4.49 €
    RTC DS32314.87 €
    SD-Card 16 GB4.69 €
    Netzteil 5V7.99 €

    macht zusammen: 28.33 €

    Im Schaltplan sieht das dann so aus:

    Datalogger.GIF

    An J1 kommt der analoge Sensor und an J2 das stabilisierte 5V-Netzteil.

    Also, falls jemand Interesse daran hat, könnte ich auch ein Projekt daraus machen. Mit Software für den Arduino und AutoIt-Script.

  • Analog-Digital Wandler mit USB Anschluss

    • Oscar
    • 5. November 2019 um 14:05
    Zitat von BugFix

    Wie du es beschreibst, ist es das, was ich als Spreizung kenne. Die 1V maximal entsprächen einem oberen Druckwert von 20 mbar. Eine Genauigkeit von 0,5 mbar ist ausreichend, also eine "Spreizung" auf 40 Schritte. Und auch bei einer 50 mbar Messung wären es dann nur 100 Steps.

    Das ist die Auflösung. Und wenn Dir das ausreicht, braucht man nicht mal auf 1.1Volt umstellen und die 10Bit würden trotzdem reichen.

    Die Wiederholrate würde man als Intervall oder Frequenz bezeichnen.

  • Analog-Digital Wandler mit USB Anschluss

    • Oscar
    • 5. November 2019 um 14:00

    BugFix : Ich verstehe nicht so ganz, was Du gegen Eigenbau hast. Das hat doch enorme Vorteile.

    Mit einem zusätzlichen SD-Cardreader für den Arduino kannst Du die Langzeitmessungen komplett vom ihm machen lassen. Dazu muss der PC nicht mal an sein.

    Und bei Bedarf holst Du Dir die gespeicherten Daten über die serielle Verbindung auf den Rechner (ohne das die Messreihe unterbrochen werden muss).

    Das funktioniert problemlos! Habe ich schon für meine Wetterstation eingesetzt.

    Die Programme für den Arduino und AutoIt könnte ich Dir schreiben, falls Du damit Probleme hast.

  • Analog-Digital Wandler mit USB Anschluss

    • Oscar
    • 5. November 2019 um 12:40

    Einen Arduino Uno oder Nano kannst Du mit analogReference(INTERNAL); auf 1.1Volt umschalten. Wenn Dir die 10Bit Auflösung ausreichen.

    Ansonsten gibt es günstige ADS1115-Module, die 2/4 Eingänge mit 16 Bit Auflösung bieten und per I2C am Arduino angeschlossen sind.

    Für die Kommunikation Arduino <=> AutoIt habe ich schon eine UDF geschrieben, die über die Serielle Schnittstelle kommuniziert.

  • CallTip GUI - Komponente gesucht

    • Oscar
    • 1. November 2019 um 17:41

    Ich weiß jetzt nicht, was Du mit einem "Append"-Schalter meinst, aber worauf ich eigentlich hinweisen wollte, ist die BB-Code-Unterstützung.

    Damit kannst Du den Text formatieren und an die Box senden. Hier mal als kleines Beispiel:

    AutoIt
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include "Chatbox.au3"
    $hGui = GUICreate('Chatbox Beispiel', 600, 440, -1, -1, BitOR($GUI_SS_DEFAULT_GUI, $WS_SIZEBOX))
    $hChat = _Chatbox_Create($hGui, 10, 10, 580, 420, 0xffffaa)
    _Chatbox_SetData($hChat, '[b]Hallo[/b], [i]Du[/i] schöne [u]Welt[/u].', 0x000000, 2)
    _Chatbox_SetData($hChat, 'MsgBox [b]( [color=#ff4433]flag[/color][/b], "title", "text" [, timeout = 0] [, hwnd = 0] [b])[/b]', 0x000088, 4)
    GUISetState()
    While True
        Switch GUIGetMsg()
            Case $GUI_EVENT_CLOSE
                Exit
        EndSwitch
    WEnd
    Alles anzeigen
  • CallTip GUI - Komponente gesucht

    • Oscar
    • 1. November 2019 um 16:21

    Ich hatte mal eine UDF geschrieben, die unterschiedliche Farben und Fontgrößen/-stile mittels embedded IE angezeigt hat. Also mit HTML. Wobei ich auch eine BB-Code-Unterstützung eingebaut habe.

    Damit solltest Du Dein Vorhaben auch realisieren können: Chatbox-UDF

  • Oscars Listview-Datenbank v3 - mit Suche nach mehreren Begriffen

    • Oscar
    • 1. November 2019 um 07:48

    Achso, noch ein Nachtrag: Der Button, ganz rechts bei der Suche (der mit dem Pfeil nach links), dient zum zurücksetzen. Es wird dann nicht mehr das Suchergebnis angezeigt, sondern wieder die normale Liste.

  • Oscars Listview-Datenbank v3 - mit Suche nach mehreren Begriffen

    • Oscar
    • 31. Oktober 2019 um 18:49

    Ich habe gerade festgestellt, dass die Suche nach mehreren Suchbegriffen gar nicht so viel länger dauert.

    Ich durchsuche ja das Datenbank-Array und nicht das Listview, da ist AutoIt doch noch schnell genug (wobei das natürlich bei großen Datenmengen und vielen Suchbegriffen schnell ansteigt).

    Somit habe ich jetzt nur mein Script etwas erweitert/angepasst. Die wichtigsten Änderungen:

    1. In Zeile 27 kannst Du jetzt einen Pfad zu einer Datenbankdatei eintragen, die beim Programmstart geladen werden soll.

    2. Es gibt jetzt beim Listview ein Kontextmenü, in dem Du die markierten Einträge ins Clipboard kopieren kannst.

    3. Die Suche habe ich komplett umgestellt. Man kann mehrere Suchbegriffe eingeben, aber jeder Suchbegriff muss mit einem "+" oder "-" anfangen. Das Plus bedeutet: dieser Suchbegriff muss in der Zeile (egal welche Spalte) vorkommen. Minus bedeutet das Gegenteil (darf in der Zeile nicht vorkommen).

    4. Damit die Suche Groß-/Kleinschreibung unterscheidet, muss der Suchbegriff (ohne das Plus/Minus) in Anführungszeichen stehen.

    5. Das Format habe ich an Deine Datensätze/Felder angepasst.

    6. Ein paar "kosmetische" Änderungen.

    Dateien

    Listview-Datenbank_neu.au3 50,13 kB – 543 Downloads
  • Oscars Listview-Datenbank v3 - mit Suche nach mehreren Begriffen

    • Oscar
    • 10. Oktober 2019 um 08:16

    Ich würde das machen, aber momentan befinde ich mich im Urlaub auf Helgoland (noch bis Sonntag).

    Also frühestens Montag. Vorher würde ich das nicht schaffen.

    Es wäre aber in jedem Fall hilfreich, wenn Du uns mal einige (Beispiel-)Datensätze zur Verfügung stellst.

    Möglichst als Datei (Txt-Format reicht).

    Außerdem wie die Daten dann im Listview stehen sollen (Anzahl der Spalten) und nach was Du dann suchen willst.

  • Endlosschleife bei PixelChecksum

    • Oscar
    • 9. Oktober 2019 um 08:28

    Telegram besitzt eine sehr gute Bot-API, womit man sowas viel besser erledigen kann, als mit PixelChecksum und MouseClick.

    Schau mal hier: https://www.heise.de/ct/artikel/Mit…en-3675555.html

  • Oscars Listview-Datenbank v3 - mit Suche nach mehreren Begriffen

    • Oscar
    • 8. Oktober 2019 um 19:35

    Eine umfangreiche Suche (mit mehreren Suchwörtern) würde ich auch lieber in SQLite ausführen. Das ist mit AutoIt-Mitteln nicht sehr schnell. Besonders bei umfangreichen Datensätzen.

    Verschwende nicht die Zeit mit dem "aufbohren" meines Scripts, sondern benutze für die Verwaltung SQLite. Damit lassen sich sehr universelle Suchmuster erstellen.

  • Frage zu MouseCoordMode

    • Oscar
    • 1. Oktober 2019 um 17:20

    Oh, mir ist gerade aufgefallen, dass Windows offensichtlich mehrere Tooltips offen hat (vermutlich hidden) und das dadurch die Class wohl nicht eindeutig genug ist.

    Du musst also doch über den Titel das Window-Handle holen:

    Code
    #include <Array.au3>
    #include <Misc.au3>
    #include <WinAPIMisc.au3>
    #include <WinAPISysWin.au3>
    
    Opt('WinTitleMatchMode', 2)
    
    Global $dll = DllOpen("user32.dll")
    
    ; Den ToolTip anzeigen.
    ToolTip(@CRLF & "Dies ist ein Test" & @CRLF & @CRLF & "Zum Ausblenden des ToolTips, auf den ToolTip klicken." & @CRLF & " ", _
            @DesktopWidth * 0.5, @DesktopHeight * 0.5, "ToolTip-Test", 2, 2)
    ;~ Global $aWinList = WinList('[CLASS:tooltips_class32]')
    ;~ _ArrayDisplay($aWinList)
    While 1
        ; Sleep, um die Systemlast zu reduzieren.
        Sleep(100)
        ; Testen, ob die linke Maustaste betätigt wurde.
        If _IsPressed("01", $dll) Then
            ; Testen, ob der Mausklick innerhalb des Tooltips erfolgt ist.
            If _MouseInWindow() Then
                DllClose($dll)
                ToolTip("")
                ExitLoop
            EndIf
        EndIf
    WEnd
    DllClose($dll)
    MsgBox(262144, "", "Ich habe fertig!")
    Exit
    
    Func _MouseInWindow()
        Local $hWnd = WinGetHandle('Dies ist ein Test')
        ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $hWnd = ' & $hWnd & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
        Local $tPoint = _WinAPI_GetMousePos(True, $hWnd)
        ConsoleWrite(StringFormat('X: %i, Y: %i\r\n', $tPoint.x, $tPoint.y))
        Return _WinAPI_ChildWindowFromPointEx($hWnd, $tPoint)
    EndFunc
    Alles anzeigen
  • Frage zu MouseCoordMode

    • Oscar
    • 1. Oktober 2019 um 15:51

    Oder versuche es mal so:

    Code
    #include <Misc.au3>
    #include <WinAPIMisc.au3>
    #include <WinAPISysWin.au3>
    
    Global $dll = DllOpen("user32.dll")
    
    ; Den ToolTip anzeigen.
    ToolTip(@CRLF & "Dies ist ein Test" & @CRLF & @CRLF & "Zum Ausblenden des ToolTips, auf den ToolTip klicken." & @CRLF & " ", _
            @DesktopWidth * 0.5, @DesktopHeight * 0.5, "ToolTip-Test", 2, 2)
    
    While 1
        ; Sleep, um die Systemlast zu reduzieren.
        Sleep(100)
        ; Testen, ob die linke Maustaste betätigt wurde.
        If _IsPressed("01", $dll) Then
            ; Testen, ob der Mausklick innerhalb des Tooltips erfolgt ist.
            If _MouseInWindow() Then
                DllClose($dll)
                ToolTip("")
                ExitLoop
            EndIf
        EndIf
    WEnd
    DllClose($dll)
    MsgBox(262144, "", "Ich habe fertig!")
    Exit
    
    Func _MouseInWindow()
        Local $hWnd = WinGetHandle('[CLASS:tooltips_class32]')
        ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $hWnd = ' & $hWnd & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
        Local $tPoint = _WinAPI_GetMousePos(True, $hWnd)
        ConsoleWrite(StringFormat('X: %i, Y: %i\r\n', $tPoint.x, $tPoint.y))
        Return _WinAPI_ChildWindowFromPointEx($hWnd, $tPoint)
    EndFunc
    Alles anzeigen
  • Frage zu MouseCoordMode

    • Oscar
    • 1. Oktober 2019 um 15:38
    Zitat von BigRox

    Ich habe dein letztes Script (vom Post #9) soeben ausprobiert.

    Ergebnis:

    Left: 1266, Top: 848, Right: 1497, Bottom: 872

    X: 739, Y: 432

    Bei einer Auflösung von 1024x768?

    Es wird aber ein Handle (<> 0) ausgegeben und der Window-Titel stimmt auch?

  • Frage zu MouseCoordMode

    • Oscar
    • 1. Oktober 2019 um 14:33

    Lass die Daten mal nur in der Console ausgeben:

    Code
    #include <Misc.au3>
    #include <WinAPIGdiInternals.au3>
    #include <WinAPIMisc.au3>
    #include <WinAPISysInternals.au3>
    
    Global $dll = DllOpen("user32.dll")
    
    ; Den ToolTip anzeigen.
    ToolTip(@CRLF & "Dies ist ein Test" & @CRLF & @CRLF & "Zum Ausblenden des ToolTips, auf den ToolTip klicken." & @CRLF & " ", _
            @DesktopWidth * 0.5, @DesktopHeight * 0.5, "ToolTip-Test", 2, 2)
    
    While 1
        ; Sleep, um die Systemlast zu reduzieren.
        Sleep(100)
        ; Testen, ob die linke Maustaste betätigt wurde.
        If _IsPressed("01", $dll) Then
            ; Testen, ob der Mausklick innerhalb des Tooltips erfolgt ist.
            If _MouseInWindow() Then
                DllClose($dll)
                ToolTip("")
                ExitLoop
            EndIf
        EndIf
    WEnd
    DllClose($dll)
    MsgBox(262144, "", "Ich habe fertig!")
    Exit
    
    Func _MouseInWindow()
        Local $hWnd = WinGetHandle('[CLASS:tooltips_class32]')
        ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $hWnd = ' & $hWnd & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
        Local $sTitle = WinGetTitle($hWnd)
        ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $sTitle = ' & $sTitle & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
        Local $tRect = _WinAPI_GetWindowRect($hWnd)
        ConsoleWrite(StringFormat('Left: %i, Top: %i, Right: %i, Bottom: %i\r\n', $tRect.left, $tRect.top, $tRect.right, $tRect.bottom))
        Local $tPoint = _WinAPI_GetMousePos()
        ConsoleWrite(StringFormat('X: %i, Y: %i\r\n', $tPoint.x, $tPoint.y))
        Return _WinAPI_PtInRect($tRect, $tPoint)
    EndFunc
    Alles anzeigen

    Ansonsten verändert das schliessen der ersten MsgBox ja die Mausposition.

    Die AutoIt-Version benutze ich auch, allerdings habe ich noch Windows7 (64 Bit).

  • Frage zu MouseCoordMode

    • Oscar
    • 30. September 2019 um 19:35

    Hmm...bei mir funktioniert das, auch mit 120% und mit 1024x768.

    Welche AutoIt-Version benutzt Du?

    Welche Windows-Version?

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™