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

Beiträge von AutoTim

  • Einfache TCP Socket Frage

    • AutoTim
    • 28. August 2013 um 14:19

    Vielen Dank Christoph !!! Dein Script funktioniert !

    Heißt das, das ich nach jedem Datensatz den ich empfangen habe die Verbindung trennen muss über TCPCloseSocket ?
    Und dann wieder neu beginnen muss ?

    LG Tim

  • Einfache TCP Socket Frage

    • AutoTim
    • 28. August 2013 um 13:52

    Hallo Forum,

    ich würde gerne einen einfachen TCP Socket in Autoit erstellen, der die ganze Zeit auf meinem PC auf einem Port läuft.

    Wenn sich ein Gerät (egal was) verbindet, soll der Socket das erkennen.
    Wenn jetzt Daten von dem Gerät an den Socket gesendet werden, möchte ich diese in einer einfachen MsgBox für den Anfang ausgeben.

    Ich habe es auch schon soweit geschafft das ich beim einwählen meines Gerätes die MsgBox bekomme, und wenn ich dann einmalig Daten Sende, dann bekomme ich diese auch ausgegeben.
    Aber eben funktioniert das leider nur einmal. Danach muss ich den Socket neu starten.

    Könnt Ihr mir helfen zu verstehen warum das nicht funktioniert und nur einmal Daten annimmt und ausgibt?

    Danke EUCH, bzw. DIR !

    Hier mein kleines Socket Script:

    [autoit]


    TCPStartup() ; TCP wird initialisiert

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

    $mainsocket = TCPListen("192.168.178.49", 11111) ; Den mainsocket erstellen

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

    Do ; Solange ausführen bis sich ein Gerät verbindet
    $acceptedSocket = TCPAccept($mainsocket) ; Wir versuchen eine möglicher Verbindung anzunehmen

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

    Until $acceptedSocket <> -1

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

    MsgBox(0,"","Eine Verbindung wurde hergestellt") ; Hier hat ein Gerät eine Anfrage gesendet

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

    while 1

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

    $receivedData = TCPRecv($acceptedSocket, 1024) ; Wenn eine Socketverbindung hergestellt wurde, empfange ein Paket vom Client ($connectedSocket)

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

    if $receivedData <> "" then ;Wenn Daten vorhanden sind, dann gebe die Msgbox aus...
    MsgBox(64, "Nachricht empfangen!", "Es wurde eine Nachricht empfangen: " & $receivedData)
    EndIf

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

    WEnd

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

    TCPCloseSocket($acceptedSocket)

    [/autoit]
  • Text unter Mauszeiger im Browser herrausfinden

    • AutoTim
    • 20. Juli 2013 um 12:27

    Hallo,
    um ein Hilfescript zu schreiben würde ich gerne bei einem Tastendruck mir das Wort ausgeben lassen, welches sich unter dem Mauszeiger befindet. Das ganze soll im Browser Firefox funktionieren.
    Ich habe leider keine Idee wie ich es nur ansatzweise herausfinden kann.
    Würde mich über Denkanstöße freuen ;D

    LG

  • String auslesen ;D Mal wieder

    • AutoTim
    • 12. April 2013 um 18:25

    Danke an euch, hat alles wunderbar gepasst !!!

  • String auslesen ;D Mal wieder

    • AutoTim
    • 12. April 2013 um 17:30

    Nabend ;D

    Mal ne kleine Frage. Wenn ich einen String habe und weis das da ein Satz dabei ist der mit "G 01"zufällige Zeichen"Z0.1" aufhört, und ich gerne diese ganze Zeile also "G 01"zufällige Zeichen"Z0.1" mit einem anderem String erstezten möchte, kann ich dafür StringRegExp Replace verwenden ?
    Ich blicke die Syntax nicht, würde mich freuen wenn mir jemand bitte helfen könnte ;D

    Danke Tim

  • XML Datei auslesen

    • AutoTim
    • 12. März 2013 um 11:22

    Hallo,
    ich benutze zum aauslesen meiner XML Datei den _XMLDOMWrapper.

    Ich würde gerne aus folgender Datei

    Spoiler anzeigen

    <?xml version="1.0" encoding="UTF-8"?>
    <root>
    <deviceList dLType="ALL" from="1357358233" to="1359676971">
    <device deviceId="1" linkDeviceId="000000000000000000" >
    <module moduleId="0" rssiAvg="-104" rssiMin="-126" rssiMax="-81" totalRecCnt="k"/>
    </device>
    <device deviceId="2" linkDeviceId="000000000000000000" >
    <module moduleId="0" rssiAvg="-82" rssiMin="-118" rssiMax="-50" totalRecCnt="k"/>
    </device>
    </deviceList>

    <deviceList dLType="CONFIG" from="1357358233" to="1359677000">
    <device deviceId="3" linkDeviceId="000000000000000000" >
    <module moduleId="0" rssiAvg="-84" rssiMin="-121" rssiMax="-62" totalRecCnt="441855"/>
    </device>
    <device deviceId="4" linkDeviceId="000000000000000000" >
    <module moduleId="0" rssiAvg="-96" rssiMin="-121" rssiMax="-73" totalRecCnt="k"/>
    </device>
    </deviceList>
    </root>

    mittels _XMLDOMWrapper Die Daten (moduleld,rssiAvg,rssiMin...) nur aus dem Teil auslesen der als sLType "CONFIG" stehen hat. Also das was rauskommen sollte sollte diese Daten beinhalten.

    Spoiler anzeigen


    from="1357358233"
    to="1359677000"

    3
    moduleId="0"
    rssiAvg="-84"
    rssiMin="-121"
    rssiMax="-62"
    totalRecCnt="441855"

    4
    moduleId="0"
    rssiAvg="-96"
    rssiMin="-121"
    rssiMax="-73"
    totalRecCnt="k"

    Das Problem ist, das alle Unterdaten mit <device ...> anfangen und nicht verschienen heißen.

    Danke !!

  • Formatierung aus einem GUI Inputfeld

    • AutoTim
    • 22. Februar 2013 um 13:12

    funktioniert... danke !

  • Formatierung aus einem GUI Inputfeld

    • AutoTim
    • 22. Februar 2013 um 12:44

    Hallo,

    Exceloffen wurde schon weiter oben geöffnet, das hier ist nur ein Ausschnitt, ich habe folgende Funktion:

    [autoit]


    Global $ExcelDaten
    Global $AnzahlanDaten = 100
    $ExcelDaten = _ExcelReadArray($Exceloffen,1,1,$AnzahlanDaten,1)
    ConsoleWrite(@Error)

    [/autoit]

    und das funktioniert auch prima. Errorcode = 0 . Wenn ich jetzt den Wert aus einem Inputfeld einer GUI hole, funktioniert es nciht und es gibt denn error Code 3 zurück.

    [autoit]


    Global $ExcelDaten
    Global $AnzahlanDaten

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

    $AnzahlanDaten = GuiCtrlRead($Inputfeld)

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

    $ExcelDaten = _ExcelReadArray($Exceloffen,1,1,$AnzahlanDaten,1)
    ConsoleWrite(@Error)

    [/autoit]

    Im Inputfeld meiner GUI steht sicher nur "100" drinnen, kein Leerzeichen oder sonnst was. Wenn ich mir $AnzahlanDaten nach dem auslesen in einer MsgBox anziegen lasse dann steht da auch "100". Aber die Funktion _ExcelReadArray gibt den Fehler 3 zurück...
    Wie muss ich $AnzahlanDaten formatieren das es die Funktion _ExcelReadLine ohne Fehlercode lesen kann ???

    LG Tim

  • 3 Zeichen mit StringRegExp überprüfen

    • AutoTim
    • 22. Februar 2013 um 11:22

    super funktioniert ;D

    LG

  • 3 Zeichen mit StringRegExp überprüfen

    • AutoTim
    • 22. Februar 2013 um 11:01

    Hallo Ihr lieben,
    StringRegExp ist noch nicht mein Freund. Ich habe einen String und würde diesen gerne überprüfen ob er folgende Formatierung hat. C:\...
    Also ein Großbuchstabe, dann ein : und dann noch ein \. Alles was dahinter steht kann mir egal sein. Hier mein nicht funktionierender Ansatz:

    [autoit]

    $answer=StringRegExp($test, "\A\d{1}\:\\\", 3)

    [/autoit]

    Danke Tim

  • Zeichenkette aus Array lesen

    • AutoTim
    • 11. Januar 2013 um 13:44

    nichts, ich wollte nur wissen ob es nun wenn ich es in einem Array habe eine Möglichkeit gibt mit diesen zu arbeiten.

    LG

  • Zeichenkette aus Array lesen

    • AutoTim
    • 11. Januar 2013 um 12:43

    Sorry Beispiel vergessen ;)

    Vorher:

    Spoiler anzeigen

    G0 X3.0615 Y6.123
    G1 F400.0 Z-1.0
    G3 F800.0 X2.5195 Y6.1426 I-0.7582 J-13.5101
    G3 X1.715 Y6.0592 I-0.0441 J-3.4998
    G3 X1.3296 Y5.9258 I0.4397 J-1.8928
    G3 X0.9912 Y5.6982 I0.5634 J-1.2034
    G3 X0.6622 Y5.3451 I1.9924 J-2.1862
    G3 X0.4395 Y4.917 I0.8957 J-0.738
    G2 X0.3982 Y4.8293 I-0.1704 J0.0265
    G2 X0.3076 Y4.7949 I-0.0848 J0.087
    G2 X0.2197 Y4.8389 I0.0032 J0.1163
    G2 X0.2927 Y5.6277 I9.5495 J-0.4854
    G2 X0.4102 Y6.4111 I20.9173 J-2.7359
    G2 X0.708 Y6.416 I0.5728 J-25.8549
    G2 X1.7285 Y6.377 I-0.186 J-18.2095

    Nachher:

    Spoiler anzeigen

    G0 X3.0615 Y6.123
    G1 F400.0 M3 S500
    G3 F800.0 X2.5195 Y6.1426 I-0.7582 J-13.5101
    G3 X1.715 Y6.0592 I-0.0441 J-3.4998
    G3 X1.3296 Y5.9258 I0.4397 J-1.8928
    G3 X0.9912 Y5.6982 I0.5634 J-1.2034
    G3 X0.6622 Y5.3451 I1.9924 J-2.1862
    G3 X0.4395 Y4.917 I0.8957 J-0.738
    G2 X0.3982 Y4.8293 I-0.1704 J0.0265
    G2 X0.3076 Y4.7949 I-0.0848 J0.087
    G2 X0.2197 Y4.8389 I0.0032 J0.1163
    G2 X0.2927 Y5.6277 I9.5495 J-0.4854
    G2 X0.4102 Y6.4111 I20.9173 J-2.7359
    G2 X0.708 Y6.416 I0.5728 J-25.8549
    G2 X1.7285 Y6.377 I-0.186 J-18.2095

    Es geht halt noch einige Zeilen weiter, und es kommt immerwieder das Z-1.0 vor. Das immer die G1 F400.0 davor steht muss nicht immer so sein.

    Hier mein Aktueller Code:

    [autoit]

    #include <file.au3>
    #include <Array.au3>

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

    Local $arraygcode
    Local $arrayco2aus
    Local $arrayco2ein = "G1 F400.0 Z-1.0"
    Local $co2aus = "M3 S0"
    Local $position = 2
    Local $counter = 0
    Local $co2ein = "M3 S5000"

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

    $gopen = FileOpenDialog("G-Code öffnen", @desktopdir,"G-Code(*.nc)")
    if @error = 1 then ;Datei öffnen
    msgbox(64,"Abbruch","Das Öffnen wurde durch den Benutzer "& @UserName & " " & " abgebrochen!")
    exit
    EndIf
    _FileReadToArray($gopen,$arraygcode)

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

    $arrayco2aus = $arraygcode[5] ;Befehl für ausschalten herauslesen

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

    _ArrayDelete($arraygcode,10) ;Überflüssige Zeile 10 löschen
    _ArrayInsert($arraygcode,10,"M8") ; ...und durch M8 ersetzten
    _ArrayDelete($arraygcode,5) ; Zeile 5 löschen

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

    $position = _ArraySearch($arraygcode,$arrayco2ein) ;Zeile auslesen
    ConsoleWrite($position)

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

    exit

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

    while $position > 0 ;Ausschaltbefehle ersetzten

    $position = _ArraySearch($arraygcode,$arrayco2aus) ;Zeile auslesen

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

    If $position > 0 then ;auf letzte Zeile abfragen
    $counter = $counter +1
    _ArrayDelete($arraygcode,$position)
    _ArrayInsert($arraygcode,$position,$co2aus)
    endif

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

    ConsoleWrite($position)

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

    WEnd
    MsgBox(64,"Co2 Auschalten","Es wurden " & $counter & " " & "Zeilen ersetzt.")

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

    $position = _ArraySearch($arraygcode,"M5") ;M5 ersetzten
    If @error = 6 then
    msgbox(0,"Fehler","Die Zeile ""M5"" wurde nicht gefunden!")
    else
    _ArrayDelete($arraygcode,$position)
    _ArrayInsert($arraygcode,$position,"M9")
    EndIf

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

    $position = _ArraySearch($arraygcode,"M30") ;M30 ersetzten
    If @error = 6 Then
    msgbox(0,"Fehler","Die Zeile ""G28"" wurde nicht gefunden!")
    else
    _ArrayDelete($arraygcode,$position)
    _ArrayInsert($arraygcode,$position,"G28")
    endif

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

    $gsave = FileSaveDialog("Datei speichern",@Desktopdir,"G-Code(*.nc)") ;Datei speichern
    if @error = 1 then
    msgbox(64,"Abbruch","Das Speichern wurde durch den Benutzer "& @UserName & " " & " abgebrochen!")
    SetError(9)
    else
    _FileWriteFromArray($gsave&".nc", $arraygcode,1)
    EndIf

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

    if @error = 1 Then
    msgbox(16,"Fehler","Die Datei ist von einem anderen Program geöffnet!")
    elseif @error = 3 Then
    msgbox(16,"Fehler","Fehler beim Schreiben der Datei")
    elseif @error = 0 Then
    msgbox(64,"Abgeschlossen","Die Datei wurde erfolgreich geschrieben")
    EndIf

    [/autoit]
  • Zeichenkette aus Array lesen

    • AutoTim
    • 11. Januar 2013 um 12:07

    Hey , ich habe eine text Datei die viele zeilen enthällt. Hier bei handelt es sich um G-Code. Nun gibt es z.B. 100 Zeilen und in jeder Zeile stehen 20 Zeichen. In manchen der Zeilen ist unter den Zeichen die Reihenfolge "M3 S5". Diese möchte ich dann durch einen Text den ich festlegen kann in allen Zeilen ersetzten. Ich öffne die Textdatei und schreibe Sie mit FiletoArray in ein Array. Das bedeutet das jede Zeile meiner .txt nun in einem Array steht. Dieses bearbeite ich soweit. Nun muss ich noch die Zeichen in den Arrayzeilen ersetzten. Doch finde ich keinen befehl im Sinne von _ArrayTextFindAndReplace. Die Sache ist das ich zwar meine zeilen raussuchen kann, wenn ich weis wie die ganze zeile heißt, also der Inhalt vom Array, aber wenn es nur eine bestimmt Zeichenkette im Inhalt des Arrays ist, dann geht es nicht mit _arraySearch. Könnt Ihr mir helfen wie ich das anstellen kann ? Hier ein beispiel von vorher und nachher.

    Danke Tim

  • Wird in der SB zu lax mit dem Jugendschutz umgegangen?

    • AutoTim
    • 25. September 2012 um 09:55

    Morgen Forum,
    ich habe erst gerade mitgelesen...
    Könnte mir bitte jemand sagen wann solche Witze gemacht worden sein ?
    Bzw. um was für Witze geht es denn ? Ich wäre über eine PN dankbar. Dann kann ich entscheiden wie meine MEinung zu dem Thema ausfallen wird.

    Danke euch!
    Tim

  • Gui Items Statische Position - WS_SIZEBOX

    • AutoTim
    • 25. September 2012 um 09:01

    Hallo liebes Forum,
    ich habe ein Problem mit einer GUI, die ich "Sizebar" gemacht habe. Jetzt kann ich die Größe verändern. Nun habe ich links oben ein paar Buttons, die ich aber wenn ich die Größe des Fensters ändere nicht auf ihrer Position verziehen möchte. Könnt Ihr mir bitte sagen wie ich die Koordinaten statisch hinbekomme, so das sie immer auf den angegebenen koordinaten bleiben ? Gibt es dafür ein "Style" ?. Ich habe leider keinen gefunden...
    Danke

  • Fensterliste Winzählmirallesauf()

    • AutoTim
    • 24. September 2012 um 11:30

    DANKE wunderbar!

  • Fensterliste Winzählmirallesauf()

    • AutoTim
    • 24. September 2012 um 10:56

    So, das klappt nun wunderbar!
    Ich gebe die Fenster mit einer GUIList aus.
    Ich kann die einzelnen Punkte mit der Maus anklicken. Dann sind diese Markiert. Das ist schonmal gut.
    Wenn ich jetzt einen Button mache, auf den ich klicke. würde ich gerne eine msgbox ausgeben in welcher steht was für ein Listenpunkt markiert ist. Wie kann ich diese Information aus der Liste entnehmen ?

    LG

  • Fensterliste Winzählmirallesauf()

    • AutoTim
    • 24. September 2012 um 08:44

    Hallo,
    mit WinActive kann ich herrausfinden ob ein bestimmtes Fenster geöffnet ist.Ich würde aber gerne eine Liste bekommen von allen Programmen die ein sichtbares Fenster haben. Also quasi herrausfinden wieviele und welche Fenster offen sind. Wie bekomme ich das hin, wenn ich erst garnicht weis was geöffnet ist, ohne eine Liste von 1000 Fensternamen abfragen zu müssen ?

    LG

  • Text auf Bildschirm schreiben mit transparentem Hintergerund.

    • AutoTim
    • 15. September 2012 um 18:06

    Hallo,
    ich würde gerne Text einfach ausgeben. Das besondere Soll sein, das er einen Transparenten Hintergrund hat. Also sollte es so aussehen als würde er einfach auf dem Desktop stehen. Ohne Rahmen oder irgend etwas anderem.
    Was gibt es für Möglichkeiten um dies zu lösen ? Mein Ziel ist auch, das ich diesen noch in echtzeit ändern kann. Also nicht das Programm schließen muss und es dann neu öffnen. Ist das ganze mit GDI+ zu lösen ?

    LG Tim

  • TAB in Editbox

    • AutoTim
    • 14. September 2012 um 14:51

    Wenn ich in einer Editbox einen Tab mache, spingt er mir zum nächsten Element. Ich hätte aber gerne einen TAB, wie wenn ich in Word z.B. die TAB Taste drücke. Auch beim einlesen einer Textdatei habe ich das Problem, das wenn dort Tabs drinnen sind, das ich keine TABS übernommen bekomme. Bz. Nur den ersten in einer Zeile.

    DANKE

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™