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

Beiträge von TJF

  • Arduino ESP8266 - TCP Kommunikation

    • TJF
    • 16. Juli 2021 um 15:20

    :thumbup:

  • Arduino ESP8266 - TCP Kommunikation

    • TJF
    • 16. Juli 2021 um 15:12

    Ahhh ... cool! Nochmals vielen Dank!

    Hast Du eine Erfahrung wie das im Vergleich in Sachen Tempo und Stabilität mit einer TCP/UDP Lösung aussieht?

  • Arduino ESP8266 - TCP Kommunikation

    • TJF
    • 16. Juli 2021 um 15:06

    Hallo Oscar,

    wow ... Was machst Du da mit meiner FritzBox? ^^

    Kannst Du mir bitte erklären wofür die "?vol=42" steht? Ich habe mal nur den Autoit-Quelltext laufen lassen. Das dauert etwas bis das in der Konsole ausgegeben wird. Kann aber auch an dem Schnelltest an sich liegen. Wenn das eine sehr schnelle und störungsfreie Übertragung in einem Raum (Lautstärkeregler) bringen würde, wäre das eine geniale Lösung gegenüber einer TCP-Bibliothek auf dem ESP.

    Tausend Dank erstmal!

    Thomas

  • Arduino ESP8266 - TCP Kommunikation

    • TJF
    • 16. Juli 2021 um 10:25

    Hallo,

    kann mir jemand sagen, wie ich vom Tablet (Autoit) aus auf einen ESP8266 (D1 mini Pro) über WiFi Daten austausche? Es geht um eine einfache Kommunikation (Lautsstärkeregler DigiPot). Auf Seiten von Autoit sollte das über TCPConnect gehen. Auf der anderen Seite bedarf es aber auch noch einer TCP-Implementierung - oder? Kann mir da jemand was empfehlen (einfach und gut...)?

    Ich bin hier auf mehrere TCP-Bibliotheken gestoßen: Z.B. "Hyperdeck", "modbus-esp8266" oder "RF24Ethernet".

    Ansonsten sollte das u.U. als Soft Access Point laufen (s. verlinkte Dokumentation). Das ist aber mal sekundär...

    Dank und Gruß

    Thomas

  • Keine Fehlerausgabe: MusicBrainz Script, Laufwerksabfrage

    • TJF
    • 16. Juni 2021 um 12:11

    Problem gefunden: OnAutoItExitRegister(_DiscID_Free($pDisc))

    Die Funktion darf nicht ins OnAutoItExitRegister, sondern muss vor dem Ende normal aufgerufen werden...

  • Run und ShellExecute starten das Programm nicht. Warum nicht?

    • TJF
    • 16. Juni 2021 um 09:44

    Ich schätze mal, dass Du das "workingdir" angeben solltest. Wo immer das ist. Vermutlich dort, wo das Java-Programm selbst ist (*.jar).

    Du kannst auch versuchen, das eigentliche Programm (*.jar) direkt zu starten (auch Arbeitsverzeichnis angeben!):

    java -jar Programmname.jar

  • Keine Fehlerausgabe: MusicBrainz Script, Laufwerksabfrage

    • TJF
    • 16. Juni 2021 um 09:29

    Hallo,

    ich habe hier mal ein Script auf den Problembereich reduziert. Das hatte bis vor einiger Zeit funktioniert. Seit den letzten Windows 10 (64 Bit) Updates nicht mehr. Ich habe hier einige Dinge getestet, komme jedoch mangels Debugging nicht weiter. Es kann auch sein, dass hier an der Installation etwas nicht stimmt: Letzte Autoit Stabil und Beta, sowie aktuellste Scite Vollinstallation. Debug Console z.B. gibt keine Fehler aus, wirft selbst aber immer wieder fehlerhafte Syntax. Typische Normalsausgabe: "!>09:22:34 AutoIt3.exe ended.rc:-1073741819". Der Windows Defender ist in allen Autoit-Ordnern auf "Ausschluss" der Prüfung gestellt. Anliegend die nötige 32 Bit MusicBrainz DLL. Kann mir jemand weiterhelfen oder zumindest sagen, ob das Script evtl. nur bei mir nicht durchläuft? Also bis zur letzten Msgbox...

    Dank und Gruß

    Thomas

    C
    #Region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_UseX64=n
    #AutoIt3Wrapper_Run_Tidy=y
    #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <GUIConstantsEx.au3>
    #include <String.au3>
    #include <Array.au3>
    #include <MsgBoxConstants.au3>
    
    Opt('MustDeclareVars', 1)
    
    ; MusicBrainz:
    Global $g_hDiscID = DllOpen("discid.dll")
    Global $pDisc = _DiscID_New() ; Handle
    OnAutoItExitRegister(_DiscID_Free($pDisc))
    OnAutoItExitRegister(__DiscID_Close__)
    
    _CD_MusicBrainz()
    
    Func _CD_MusicBrainz()
        Local $GUI = GUICreate("", 400, 400)
        GUISetState(@SW_SHOW, $GUI)
        Local $ex = 1
        Local $aDGCD = DriveGetDrive($DT_CDROM)
        Local $sCombostring = ''
        For $i = 1 To $aDGCD[0]
            If DriveGetLabel($aDGCD[$i]) = "Audio CD" Then
                $sCombostring &= StringUpper($aDGCD[$i]) & "|"
            EndIf
        Next
        If $sCombostring = "" Then
            MsgBox(64, "Laufwerk", "Es ist keine Audio CD eingelegt.")
        Else
            $sCombostring = StringTrimRight($sCombostring, 1)
            MsgBox(0, "$sCombostring", $sCombostring)
    
            Local $lw1 = StringLeft($sCombostring, 2)
            MsgBox(0, "lw1", $lw1)
    
            Local $guidrive = GUICreate("Laufwerkswahl", 165, 100, -1, -1, -1, 128) ;$WS_EX_TOOLWINDOW
            Local $hComb_Drive = GUICtrlCreateCombo("", 10, 10, 50, 22)
            GUICtrlSetData(-1, $sCombostring, $lw1)
            Local $hBut_AskMB = GUICtrlCreateButton("MB-Anfrage", 65, 10, 90, 20, 1) ; Style = $BS_DEFPUSHBUTTON
            Local $hLab_Text = GUICtrlCreateLabel('Bitte ein Laufwerk für die MB Anfrage auswählen.', 10, 45, 140, 40)
            GUISetState(@SW_SHOW, $guidrive)
            While 1
                Local $msg = GUIGetMsg()
                Switch $msg
                    Case $hBut_AskMB
                        Local $lw = GUICtrlRead($hComb_Drive)
                        MsgBox(0, "Laufwerk Auswahl", $lw)
                        If Not _DiscID_ReadSparse($pDisc, $lw, 0) Then
                            If @error = -1 Then MsgBox(0, "Fehler in filereadline()", "@error=" & @error)
                            MsgBox(16, "Fehler", _DiscID_GetErrorMsg($pDisc))
                        Else
                            If @error = -1 Then MsgBox(0, "Fehler in filereadline()", "@error=" & @error)
                            ;GUISetState(@SW_HIDE, $guidrive) ; alternativer Versuch anstatt der folgenden 3 Zeilen
                            GUICtrlDelete($hComb_Drive)
                            GUICtrlDelete($hBut_AskMB)
                            GUIDelete($guidrive)
                        EndIf
                        MsgBox(0, "Laufwerk gewählt", $lw)
                        ExitLoop
                    Case -3 ;$GUI_EVENT_CLOSE = -3
                        GUICtrlDelete($hComb_Drive)
                        GUICtrlDelete($hBut_AskMB)
                        GUIDelete($guidrive)
                        $ex = 0
                        ExitLoop
                EndSwitch
            WEnd
            MsgBox(0, "Ende", "")
        EndIf
    EndFunc   ;==>_CD_MusicBrainz
    
    
    Func _DiscID_New()
        Return DllCall($g_hDiscID, 'ptr:cdecl', 'discid_new')[0]
    EndFunc   ;==>_DiscID_New
    
    Func _DiscID_Get_VersionString()
        Return DllCall($g_hDiscID, 'str:cdecl', 'discid_get_version_string')[0]
    EndFunc   ;==>_DiscID_Get_VersionString
    
    Func _DiscID_GetDefaultDevice()
        Return DllCall($g_hDiscID, 'str:cdecl', 'discid_get_default_device')[0]
    EndFunc   ;==>_DiscID_GetDefaultDevice
    
    
    Func _DiscID_ReadSparse($pD, $sDevice, $iFeatures)
        Return DllCall($g_hDiscID, 'int:cdecl', 'discid_read_sparse', 'ptr', $pD, 'str', $sDevice, 'uint', $iFeatures)[0]
    EndFunc   ;==>_DiscID_ReadSparse
    
    
    Func _DiscID_GetErrorMsg($pD)
        Return DllCall($g_hDiscID, 'str:cdecl', 'discid_get_error_msg', 'ptr', $pD)[0]
    EndFunc   ;==>_DiscID_GetErrorMsg
    
    
    Func _DiscID_GetFreeDB_ID($pD)
        Return DllCall($g_hDiscID, 'str:cdecl', 'discid_get_freedb_id', 'ptr', $pD)[0]
    EndFunc   ;==>_DiscID_GetFreeDB_ID
    
    
    Func _DiscID_GetID($pD)
        Return DllCall($g_hDiscID, 'str:cdecl', 'discid_get_id', 'ptr', $pD)[0]
    EndFunc   ;==>_DiscID_GetID
    
    Func _DiscID_GetURL($pD)
        Return DllCall($g_hDiscID, 'str:cdecl', 'discid_get_submission_url', 'ptr', $pD)[0]
    EndFunc   ;==>_DiscID_GetURL
    
    
    Func _DiscID_GetTOC($pD)
        Return DllCall($g_hDiscID, 'str:cdecl', 'discid_get_toc_string', 'ptr', $pD)[0]
    EndFunc   ;==>_DiscID_GetTOC
    
    Func _DiscID_GetWebsURL($pD)
        Return DllCall($g_hDiscID, 'str:cdecl', 'discid_get_webservice_url', 'ptr', $pD)[0] ; gibt release.xml aus
    EndFunc   ;==>_DiscID_GetWebsURL
    
    Func _DiscID_Free($pD)
        DllCall($g_hDiscID, 'none:cdecl', 'discid_free', 'ptr', $pD)
    EndFunc   ;==>_DiscID_Free
    
    ; ++++++++++ +++++++++ ++++++++ +++++++ ++++++ +++++ ++++ +++ ++ +
    
    Func __DiscID_Close__()
        DllClose($g_hDiscID)
    EndFunc   ;==>__DiscID_Close__
    
    ; ++++++++++ +++++++++ ++++++++ +++++++ ++++++ +++++ ++++ +++ ++ +
    Alles anzeigen

    Dateien

    discid.7z 26,88 kB – 284 Downloads
  • Web-Link-Übertragung: Mit _IECreate korrekt mit _RunDos fehlerhaft

    • TJF
    • 21. August 2020 um 11:36

    Noch besser. Danke :)

  • Web-Link-Übertragung: Mit _IECreate korrekt mit _RunDos fehlerhaft

    • TJF
    • 21. August 2020 um 10:34

    Ok. Habe es gefunden. So geht's. Analog zu:

    start "" "URL"

    Code
    _RunDos("start " & Chr(34) & Chr(34) & " " & Chr(34)& $sString & Chr(34))
  • Web-Link-Übertragung: Mit _IECreate korrekt mit _RunDos fehlerhaft

    • TJF
    • 21. August 2020 um 09:52

    Hallo,

    hat jemand eine Idee, warum sich das so verhält wie in dem selbsterklärenden kurzen Script unten? Ich nehme immer gerne _RunDos, weil es browserunabhängig funktioniert. Zumindest bei mir im Firefox wird der Link am ersten "&" im Link abgeschnitten. Der Start-Befehl verhält sich genauso bei manueller Ausführung in einem cmd-Fenster.

    C
    #include <IE.au3>
    #include <Process.au3>
    
    Local $sString = "https://musicbrainz.org/cdtoc/attach?id=eBy9o9EoNHY.xNqb8H_6CL5KHaQ-&tracks=8&toc=1+8+203270+182+38420+51670+79827+99782+128970+161942+167875"
    Local $oIE = _IECreate($sString) ; uebertragt korrekt
    
    _RunDos("start " & $sString)
    ; An Firefox als Standardbrowser wird nur ein Teil des Strings übergeben und daher die Seite nicht gefunden:
    ; https://musicbrainz.org/cdtoc/attach?id=eBy9o9EoNHY.xNqb8H_6CL5KHaQ-
    ; Auch testweise Austausch des "&" gegen "&amp;" aendert nichts

    Dank und Gruß

    Thomas

  • ListView - Editieren aller SubItems

    • TJF
    • 17. August 2020 um 18:54

    Danke Bugfix :)

  • ListView - Editieren aller SubItems

    • TJF
    • 17. August 2020 um 17:56

    Hallo,

    ist zwar schon etwas älter der Thread. Aber kann mir jemand sagen, warum ich die editierbaren Zellen, wenn sie geöffnet sind (Quelltext aus #1) immer in einem ganz breiten Feld (blauer Rahmen) sehe, sodass der eigentlich editierbare Text nicht gesehen wird? Die Editierung funktioniert. Nur sehen tut man nicht, was man macht. Siehe anliegenden Screenshot.

    Dank und Gruß

    Thomas

    Bilder

    • Edit.jpg
      • 46,37 kB
      • 400 × 424
  • Windows - Dienste und Aufgaben managen

    • TJF
    • 5. August 2020 um 17:17

    Oh... Danke! Da steckt ja viel Arbeit drin ...

  • Windows - Dienste und Aufgaben managen

    • TJF
    • 5. August 2020 um 15:48

    Super. Danke!

  • Windows - Dienste und Aufgaben managen

    • TJF
    • 5. August 2020 um 14:53

    Hallo,

    kann mir jemand sagen, ob es in AutoIt einen Funktionsbereich gibt, mit dem man optimal in bestehende Dienste und Aufgaben eingreifen kann, bzw. deren Zustand abfragen kann (gleich "net start [Dienst]", "net stop [Dienst]", etc.)? Außer die Windows Shell-Befehle direkt einzusetzen.

    Dank und Gruß

    Thomas

  • Installation: 64Bit vs. 32Bit Version

    • TJF
    • 15. März 2020 um 15:02

    Ah.. ok. Das ist da. Ich kompiliere immer aus Scite raus... Volle Version installiert: SciTE, 32-bit, Version 4.2.0

    Sonst sehe ich nicht den Unterschied zwischen der 32Bit und der 64 Bit Installation.

  • Installation: 64Bit vs. 32Bit Version

    • TJF
    • 15. März 2020 um 14:10

    Habe jetzt mal die 64Bit Version installiert. Während der Installation kam die Abfrage, ob die native 64Bit-Version installiert werden soll. Trotzdem wurde der Ordner "C:\Program Files (x86)" zur Installation vorgeschlagen. Habe dann den 64Bit Programm-Ordner manuell gewählt. Schaut aber trotzdem aus wie vorher die 32Bit-Version. "Compile With Options" sehe ich auch nirgendwo. Die Autoit3-Wrapper GUI ist definitiv eine 32Bit Anwendung und schaut identisch zur 32 Bit-Installation aus.. Habe ich was übersehen bei der Installation. Woran kann man definitiv sehen, was da nun installiert wurde?

  • Installation: 64Bit vs. 32Bit Version

    • TJF
    • 15. März 2020 um 10:53

    Kann man jetzt eigentlich auch in der 64 Bit Version 32Bit-Programme kompilieren (wie anders herum)?

  • Installation: 64Bit vs. 32Bit Version

    • TJF
    • 15. März 2020 um 09:22

    Hallo,

    ich setze gerade meinen PC neu und auf WIN10 Pro, 64Bit auf. Die Autoit-Empfehlung lautet - wg. Kompatibilität - auch hier die 32Bit Version von Autoit zu verwenden. Hat da jemand Erfahrung damit und kann das bestätigen? Mir fällt gerade kein Fall ein, der die 32Bit Version für mich rechtfertigen würde. Oder kann die 64Bit-Version keine 32Bit Programme kompilieren? Für den Sonderfall hätte ich auch noch ein 32Bit Notebook mit Autoit drauf...

    Für ein Statement wäre ich sehr dankbar.

    Viele Grüße

    Thomas

  • TCP-Client: Abfrage nach Verbindungsabbruch zum TCP-Server

    • TJF
    • 10. November 2018 um 15:26

    Danke alpines! Adlibregister starte ich mit einer anderen Funktion, die wiederum zuerst das Socket erstellt.

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™