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

  • Kleines TCP Problem

    • Oscar
    • 9. Januar 2010 um 17:34

    Das Clientprogramm müsste eher so aussehen (ungetestet):

    Spoiler anzeigen
    [autoit]


    $Benedikt = "Benne-PC"
    $Franziska = "Franziska-PC"
    $Max = "Max-PC"
    $Victoria = "Victoria-Comput"
    $Mama = "Mama-PC"
    $Port = "80"

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

    TCPStartup()
    $Mainsocket = TCPListen(@IPAddress1, $Port)
    If $Mainsocket = -1 Then
    MsgBox (0, "Fehler", "Fehler beimn Starten des Servers")
    EndIf
    Do
    $ConnectedSocket = TCPAccept($MainSocket)
    Until $ConnectedSocket <> -1

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

    While 1
    $Empfang = TCPRecv($ConnectedSocket, 20)
    If $Empfang = "Herunterfahren" Then
    MsgBox (0, "", "AKTION")
    EndIf
    Sleep (10)
    WEnd

    [/autoit]
  • TCP/Input fragen^^

    • Oscar
    • 9. Januar 2010 um 15:04

    Also, nochmal ganz langsam zum mitschreiben:

    - Serverprogramm horcht (TCPListen) auf die lokale IP (@IPAdress1) des Serverrechners.

    - Im Router des Serverrechners muss eine Portweiterleitung (Port: 21219) existieren auf die lokale IP des Serverrechners.

    - Wenn Du DynDNS für den Server benutzt, muss Du die WAN-IP (_GetIP) vom Serverrechner an DynDNS übermitteln (entweder per Router, wenn der das anbietet oder ein Programm auf dem Serverrechner).

    - Das Clientprogramm ermittelt die IP-Adresse des Servers per:

    [autoit]

    $IP = TCPNameToIP("name.dyndns.org")

    [/autoit]

    - Danach kann sich der Client mit TCPConnect($IP, $Port) mit dem Server verbinden.

  • Chatbox-UDF

    • Oscar
    • 9. Januar 2010 um 14:53

    Danke, für all das Lob! :)

    Wenn ich die Zeit dazu habe, wird es auch mal ein Chatprogramm mit dieser UDF geben. Im Moment sind erstmal andere Dinge wichtiger.

  • TCP/Input fragen^^

    • Oscar
    • 9. Januar 2010 um 04:30

    TCPConnect erwartet eine IP-Adresse, keine URL. Du musst also vorher Deine DynDNS-Adresse mit TCPNameToIP umwandeln.
    Und in Deiner GUIGetMsg-Schleife nimm das Sleep raus, dann reagiert der Schliessen-Button auch sofort.

  • InputBox einschränken

    • Oscar
    • 8. Januar 2010 um 21:07

    Die InputBox: Nein!
    Eine eigene GUI mit Input-Control: Ja!

    [autoit]


    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    $hGUI = GUICreate('')
    $Edit = GUICtrlCreateInput('', 20, 20, 200, 20)
    GUISetState()
    GUIRegisterMsg($WM_COMMAND, '_WM_COMMAND')
    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

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

    Func _WM_COMMAND($hWnd, $Msg, $wParam, $lParam)
    If BitAND($wParam, 0x0000FFFF) = $Edit Then
    GUICtrlSetData($Edit, StringRegExpReplace(GUICtrlRead($Edit), '\W', '')) ; nur a-z, A-Z, 0-9 und _ erlaubt
    EndIf
    Return $GUI_RUNDEFMSG
    EndFunc ;==>_WM_COMMAND

    [/autoit]
  • while- Frage

    • Oscar
    • 8. Januar 2010 um 17:11

    Noch so ein Bot! :cursing:
    [Thread closed]

  • AutoitBug Editor - Programmieren leicht(er) gemacht

    • Oscar
    • 8. Januar 2010 um 17:08

    @Jautois: Das ist schon ok, so. Hier in Projekte geht es ja um langfristige Projekte, da kann es am Anfang halt auch um Ideenfindung/Projektplanung gehen.

    Zurück zum Thema: Müsste es nicht noch einen Befehl "Kollision" oder so geben? Bei "Berührung" mit dem Rand?

  • While Schleife beenden

    • Oscar
    • 8. Januar 2010 um 16:44

    Dieser ganze Bot-Mist nimmt schon wieder überhand. :cursing:

    Bot == Nix Support hier! [Thread closed]

  • In die nächste Zeile einer Edit-Box schreiben

    • Oscar
    • 7. Januar 2010 um 18:52

    Das geht auch mit GUICtrlSetData:

    Spoiler anzeigen
    [autoit]


    $hGUI = GUICreate("")
    $Edit = GUICtrlCreateEdit("", 20, 20, 200, 200)
    GUISetState()
    $hEdit = GUICtrlGetHandle($Edit)
    GUICtrlSetData($Edit, "Text am Ende 1" & @CRLF, 1)
    GUICtrlSetData($Edit, "Text am Ende 2" & @CRLF, 1)
    GUICtrlSetData($Edit, "Text am Ende 3" & @CRLF, 1)
    While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3
    Exit
    EndSwitch
    WEnd

    [/autoit]
  • AutoitBug Editor - Programmieren leicht(er) gemacht

    • Oscar
    • 7. Januar 2010 um 17:10

    Ja, habe auch sofort an Turtle gedacht. Fehlt aber noch "Rotate" oder "Drehen" (wenn's auf deutsch sein soll).
    Für's sammeln erster Programmiererfahrungen ist so ein Programm aber nicht schlecht. :thumbup:

  • was mache ich falsch?

    • Oscar
    • 7. Januar 2010 um 14:06

    Gegenfrage: Was soll daran richtig sein? ;)
    Das ist eine Ansammlung von AutoIt-Befehlen, aber ohne jeden Zusammenhang.

  • Verschlüsselungstool für USB-Stick

    • Oscar
    • 7. Januar 2010 um 14:03

    Drag And Drop auf ein Listview kann mein ZAP-Unpacker.
    Dazu die neue Crypt.au3 aus der aktuellen AutoIt-Version und schon hast Du so ein Tool. :)

  • GUICtrlCreateUpdown - immer zweistellig je Feld

    • Oscar
    • 6. Januar 2010 um 21:50

    Warum willst Du nicht einfach das Standard-Controlelement benutzen?

    [autoit]


    #include <DateTimeConstants.au3>
    #include <GUIConstantsEx.au3>
    GUICreate("My GUI get time", 200, 200, 800, 200)
    $n = GUICtrlCreateDate("", 20, 20, 115, 25, $DTS_TIMEFORMAT)
    GUICtrlSetFont(-1, 16)
    GUISetState()

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

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

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

    MsgBox(0, "Time", GUICtrlRead($n))

    [/autoit]

    Edit: und wenn Du nur Stunden:Minuten haben willst, dann so:

    [autoit]


    #include <DateTimeConstants.au3>
    #include <GUIConstantsEx.au3>
    GUICreate("My GUI get time", 200, 200, 800, 200)
    $n = GUICtrlCreateDate("", 20, 20, 90, 25, $DTS_TIMEFORMAT)
    GUICtrlSetFont(-1, 16)
    $DTM_SETFORMAT_ = 0x1032 ; $DTM_SETFORMATW
    $style = "HH:mm"
    GUICtrlSendMsg($n, $DTM_SETFORMAT_, 0, $style)
    GUISetState()

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

    Do
    Until GUIGetMsg() = $GUI_EVENT_CLOSE

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

    MsgBox(0, "Time", GUICtrlRead($n))

    [/autoit]
  • Godmode für Windows 7 x86 ! (gibts nicht ? - Gibts doch!!!)

    • Oscar
    • 6. Januar 2010 um 18:02

    Ja, völlig unnütz, weil kein Script dabei. X(

  • Mehrfarbiges "Edit" Feld

    • Oscar
    • 6. Januar 2010 um 04:47

    Als Alternative dazu könntest Du auch meine Chatbox-UDF verwenden. :)

  • Array einlesen + bearbeiten

    • Oscar
    • 6. Januar 2010 um 04:41

    Noch kürzer:

    [autoit]


    $s = "Chr(54) & Chr(55) & Chr(53)"
    MsgBox(0, '', StringRegExpReplace($s, 'Chr\((\d.)\)( \& )*', '$1, '))

    [/autoit]
  • Fenster 100% Transparent, Bild aber nicht

    • Oscar
    • 5. Januar 2010 um 18:49

    Also bei mir funktioniert das hier (mal abgesehen davon, dass es das Bild unter Win7 nicht mehr gibt):

    Spoiler anzeigen
    [autoit]


    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>

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

    $hgui = GUICreate("test", 200, 200, -1, -1, $WS_POPUP, $WS_EX_CONTROLPARENT)
    ;~ GUICtrlCreateLabel("", 0, 0, 200, 200, Default, $GUI_WS_EX_PARENTDRAG) ;verschieben des Fensters möglich machen durch ""2. Fenster"
    GUICtrlCreatePic(@SystemDir & "\oobe\images\mslogo.jpg", 0, 0, 200, 200)
    GUICtrlSetState(-1, $GUI_DISABLE)
    GUISetState()

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

    Do
    Until GUIGetMsg() = -3

    [/autoit]
  • GetMonitor-Funktion testen

    • Oscar
    • 5. Januar 2010 um 18:43

    Ich hab jetzt auch gemerkt, dass in meinem Win7-Code immer noch ein Fehler drin ist. Die Zuordnung der Position und akt. Auflösung zu dem jeweiligen Monitor passt nicht.
    Die Reihenfolge ist nicht genauso, wie beim Displaykey. Ich habe mittlerweile die Registry von vorne bis hinten durchgesehen. Ich kann keinen direkten Verweis auf diese Daten entdecken.
    Irgendwo ist da noch etwas, dass sich vor mir verbirgt. ?(
    Und dann kommt noch dazu, dass sich die Werte bei jeder Windowsversion woanders befinden. X(
    Ich glaub', ich geb's auf...

  • Fenster 100% Transparent, Bild aber nicht

    • Oscar
    • 5. Januar 2010 um 18:20

    Andy: Das Leerlabel braucht man mittlerweile nicht mehr:

    Zitat

    You can enable window draging for GUI without $WS_CAPTION by using $WS_EX_CONTROLPARENT in the exStyle parameter.

  • Nach jeden 4. Zeichen ein "-" setzen

    • Oscar
    • 4. Januar 2010 um 15:44

    Eh, stimmt! Das ist echt fies. Vielleicht ist die Multi-Input-Methode doch die Bessere?! :S

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™