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

Beiträge von PCKing

  • TCP Client connect to Server Problem

    • PCKing
    • 21. April 2011 um 22:51

    zum einen, das was Matthias_199 gesagt hat :

    Zitat von Matthias_199


    [...]Also muss im Server Teil die IP stehen die dir der Router Zuweist oder die du slebst konfiguriert hast. [...]

    und dann musst du im router eine portweiterleitung bei dem machen, der den server offen hat.
    der client benutzt dann die richtige ip und der server die ip vom router

  • TCP Send / Recv

    • PCKing
    • 1. April 2011 um 14:47

    normalerweise gibbet dazu oben rechts im forum die such-funktion
    aber ich bin mal nett heute, hier ist das einfachste vom einfachen^^

    Client
    [autoit]

    #include <GUIConstants.au3>
    $ip = InputBox("IP","Server-IP eingeben")

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

    TCPStartup()

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

    GUICreate("client",500,500)
    $edit = GUICtrlCreateEdit("",0,0,500,450)
    $button = GUICtrlCreateButton("Send",0,450,100,50)
    $socket = -1
    Do
    $socket = TCPConnect($ip,50)
    Until $socket <> -1

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

    GUISetState(@SW_SHOW)

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

    While 1
    $send = GUICtrlRead($edit)
    $msg = GUIGetMsg()
    Select
    case $msg = $button
    TCPSend($socket, $send)
    EndSelect
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    WEnd

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

    Func OnAutoItExit()
    TCPShutdown()
    EndFunc

    [/autoit]
    Server
    [autoit]

    #include <GUIConstants.au3>
    $ip = InputBox("IP","Deine IP eingeben")

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

    TCPStartup()
    $main = TCPListen($ip,50,8080)
    GUICreate("Server",350,350)
    $edit = GUICtrlCreateEdit("",0,0,350,350)
    $socket = -1
    Do
    $socket = TCPAccept($main)
    Until $socket <> -1

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

    GUISetState(@SW_SHOW)

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

    While 1
    $msg = GUIGetMsg()
    $recive = TCPRecv($socket,1000)
    If $recive <> "" Then
    GUICtrlSetData($edit, $recive)
    EndIf
    If $msg = $GUI_EVENT_CLOSE Then ExitLoop
    WEnd

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

    Func OnAutoItExit()
    TCPShutdown()
    EndFunc

    [/autoit]
  • TCP Send / Recv

    • PCKing
    • 1. April 2011 um 14:08

    das liegt daran, das du in deinem script beim senden/empfangen immer wieder TCPStartup machst und immer wieder erneut versuchst auf den server/client zu connecten, ohne das auf diesen TCPListen läuft, sodass der nicht connecten kann und nix mehr senden kann. bzw. auf deinem server verbindest er sich mit seiner eigenen ip (siehe zeile 13 und 45 im server).
    ich würde dir empfehlen einmal komplett neu anzufangen und dann aber nur 1mal beim start verbinden und über den socket von TCPAccept/TCPConnect kannst du die daten an das andere script senden/empfangen ^^

  • Edit Text einfügen

    • PCKing
    • 1. März 2011 um 20:35

    das problem is, das du ini´s benutzt!
    wenn du von ner ini nen wert haben willst wird der immer nur bis zum ende der zeile wiedergegeben, alles danach is dann ein anderer schlüssel.
    wenn du mehrere zeilen speichern willst würde ich empfehlen eine txt-datei zu erstellen und mit Fileread usw. zu beschreiben.
    alternativ kannst du auch den text nach "@CRLF" splitten und durch "[split]" oder so trennen und beim lesen dann das gleiche, das du das eben in 1 zeile alles bekommst und beim lesen dann wieder trennst.
    aber inis gehen glaub ich auch nur bis 64KB oder so, danach werden die nicht mehr gelesen

  • Videos in einem Gui

    • PCKing
    • 18. Februar 2011 um 15:58

    guck ma, ob das so gehen würde:

    Spoiler anzeigen
    [autoit]

    GUICreate("Testgui",500,500) ;gui erstellen (hier einstellen)
    $oWMP = ObjCreate("WMPLayer.ocx") ;mediaplayer-objekt erstellen
    GUICtrlCreateObj($oWMP,0,0,500,500) ;objekt ins gui setzen und grösse angeben
    $oWMP.URL = @ScriptDir & "\Video.avi" ;url/link zur avi/mp3/wma/wmv/... datei
    GUISetState(@SW_SHOW) ;fenster anzeigen

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

    $oWMP.uiMode = "none" ;videos anzeigen lassen und andere funktionen ausblenden (auf "full" setzen für alles anzeigen)
    $oWMP.controls.play() ;abspielen (Play Taste)

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

    While 1 ;schleife, damit script nicht direkt beendet
    $nMsg = GUIGetMsg()
    Switch $nMsg
    Case -3 ; -3 is das gleiche wie $GUI_EVENT_CLOSE
    Exit
    EndSwitch
    WEnd

    [/autoit]

    du musst nur die grösse des fensters auf die auflösung der *.avi datei einstellen

  • AVG Anti-Virus Free 10 erkennt Scripte als Virus

    • PCKing
    • 18. Februar 2011 um 15:09

    ich könnte "Comodo" empfehlen, der meldet nur nen virus, wenn du die standard setup-icons benutzt also "SETUP01.ICO" usw.

  • Onlinespiele

    • PCKing
    • 13. Januar 2011 um 22:11

    ich habe "Not" immer so geschrieben

    Spoiler anzeigen
    [autoit]

    $bedingung=0
    If Not $bedingung=1 Then MsgBox(0,"","")

    [/autoit]

    und da ist die bedingung eben nicht in den klammern und manuel6000 hatte ja geschrieben:

    Spoiler anzeigen
    Zitat von manuel6000
    [autoit]

    If Not($a =0 To 100) Then

    [/autoit]

    da hat er die bedingung "$a =0 To 100" in klammern gesetzt ^^

    genau genug? :D

  • Onlinespiele

    • PCKing
    • 13. Januar 2011 um 21:56

    willst du, das der von 0 bis 100 hochzählt?
    klar, das du bei "to" nen error bekommst, das braucht man normalerweise nur im "for" befehl
    und wenn du "Not" benutzt kommt die bedingung nicht in klammern^^

  • String in String löschen

    • PCKing
    • 13. Januar 2011 um 14:49

    meinst du so?

    [autoit]

    $string=StringSplit("ABC|QWERTZ|LOLWUT|ASDF|BAUM","|ASDF",1)
    MsgBox(0,"",$string[1]&$string[2])

    [/autoit]
  • Onlinespiele

    • PCKing
    • 13. Januar 2011 um 14:34

    ich glaub bei Dark Orbit ist mehr Java als php, nur das loginteil ist glaub ich richtig mit php gemacht, derr rest is grösstenteils Java

  • Onlinespiele

    • PCKing
    • 13. Januar 2011 um 14:17

    es wäre theoretisch möglich, da brauchste dann nur nen server mit gutem inet und du solltest dich ein bisschen mit gdi+ auskennen.
    dann kann man sowas eig. über die TCP-Komandos erstellen

  • Lokale Dateien und Dateien auf FTP Server vergleichen

    • PCKing
    • 5. Januar 2011 um 15:51

    leg doch eine datei auf den server , wo eine art "versionsnummer" drinnensteht, und wenn jemand die datei verändert, ändert er auch diese datei, mit der nummer.
    im updater steht dann auch eine nummer drinnen, und und die vergleichst du dann mit der nummer, welche auf dem server liegt

  • GDI+ Spiel Problem

    • PCKing
    • 23. September 2010 um 22:11

    ich habs bei mir bis jetzt so stehen, und ich sehe keine fehler(bisher)

    Spoiler anzeigen
    [autoit]

    #region ;**** Directives created by AutoIt3Wrapper_GUI ****
    #AutoIt3Wrapper_Change2CUI=y
    #AutoIt3Wrapper_Add_Constants=n
    #endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
    #include <Array.au3>
    #include <GDIPlus.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <GUIConstantsEx.au3>
    #include <WindowsConstants.au3>
    #include <GDIPlus.au3>
    Opt("GUIOnEventMode", 1)
    OnAutoItExitRegister("__GDIPlus_Shutdown")

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

    _GDIPlus_Startup()

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

    Global $iWidth = 500, $iHeight = 500, $ran1 = 0, $ran2 = 0 ;hab die variablen hier reingepackt
    $GUI_Back_Color = 0xFF000000 + 0xF0F0F0

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

    $hGUI = GUICreate("", $iWidth, $iHeight, 400, 100, $WS_POPUP)
    $hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
    ;Erstmal das normale Grafik-Objekt erstellen.
    $hBitmap = _GDIPlus_BitmapCreateFromGraphics($iWidth, $iHeight, $hGraphic)
    ;Statt uns mit dem normalen Frontbuffer zufrieden zu geben, erstellen wir erstmal eine
    ;Bitmap, mit Bezug auf unser Grafikobjekt.
    $hBackbuffer = _GDIPlus_ImageGetGraphicsContext($hBitmap)
    $sImage = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\hintergrund.jpg")
    $kImage = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\Fadenkreuz.png")
    $hImage = _GDIPlus_ImageLoadFromFile(@ScriptDir & "\ziel.jpg") ; Lädt das Bild Image.gif aus dem ScriptDir Ordner
    ;Nachdem unser Bitmap erstellt ist, holen wir uns den Graphics Context. Dieser
    ;wird von uns verwendet, um darin zu zeichnen.

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

    GUISetOnEvent(-3, "_Exit")
    GUIRegisterMsg($WM_PAINT, "WM_PAINT")

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

    GUISetState()
    _FUNC()

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

    Func _FUNC()
    $ran1 = Random(0, 400, 1)
    $ran2 = Random(0, 400, 1)
    _GDIPlus_GraphicsClear($hBackbuffer, $sImage)

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

    ; Super Radierer benutzen um alten Backbuffer zu löschen

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

    _WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_INTERNALPAINT)
    _GDIPlus_GraphicsDrawImageRect($hBackbuffer, $sImage, 0, 0, 500, 500)
    _GDIPlus_GraphicsDrawImageRect($hBackbuffer, $hImage, $ran1, $ran2, 40, 50)
    _WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_INTERNALPAINT)

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

    ; WM_PAINT wird nur aufgerufen, wenn alle Berechnungen fertig sind!
    ; In WM_PAINT wird selbst nichts berechnet, oder gezeichnet. diese Funktion wird nur das
    ; Bitmap-Objekt in das Grafik-Objekt übertragen.
    While 1
    $pos = GUIGetCursorInfo()
    If IsArray($pos) Then
    _GDIPlus_GraphicsDrawImageRect($hBackbuffer, $kImage, $pos[0] - 14, $pos[1] - 15, 30, 30)
    _WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_INTERNALPAINT)
    EndIf
    $mouse = GUIGetCursorInfo($hGUI)
    If IsArray($mouse) Then

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

    If $mouse[2] = 1 Then
    If $mouse[0] > $ran1 And $mouse[0] < $ran1 + 40 And $mouse[1] > $ran2 And $mouse[1] < $ran2 + 50 Then
    ;~ If $mouse[0] > $ran1 and $mouse[0] < $ran1 + 40 And $mouse[1] > $ran2 and $mouse[1] < $ran2 + 50 Then
    _FUNC()
    EndIf
    EndIf
    EndIf
    WEnd
    EndFunc ;==>_FUNC
    ; -----------------> X
    ;|
    ;|
    ;|
    ;|
    ;|
    ;v
    ;Y
    Func _Exit()
    Exit
    EndFunc ;==>_Exit

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

    Func WM_PAINT()
    _GDIPlus_GraphicsDrawImageRect($hGraphic, $hBitmap, 0, 0, $iWidth, $iHeight)
    $pos = GUIGetCursorInfo()
    If IsArray($pos) Then
    _GDIPlus_GraphicsDrawImageRect($hBackbuffer, $kImage, $pos[0] - 14, $pos[1] - 15, 30, 30)
    _WinAPI_RedrawWindow($hGUI, 0, 0, $RDW_INTERNALPAINT)
    EndIf
    _GDIPlus_GraphicsDrawImageRect($hBackbuffer, $sImage, 0, 0, 500, 500)

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

    ; _GDIPlus_GraphicsDrawImageRect() überträgt den Backbuffer in den Frontbuffer.
    ; Der erste Parameter ist unser Frontbuffer (Grafik Objekt).
    ; Der zweite ist unsere Bitmap, welche ja als BackBuffer fungiert.
    ; Darauf folgt der Abschnitt den man übertragen will.
    ; i.d.R. ist es 0, 0 für X und Y koordinaten, und die GUI Breite und Höhe für
    ; Width und Height. Kommt natürlich immer drauf an, wie groß euer Grafikobjekt ist,
    ; und ob ihr den vollen Teil zeichnen wollt.
    Return $GUI_RUNDEFMSG
    EndFunc ;==>WM_PAINT

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

    Func __GDIPlus_Shutdown()
    _GDIPlus_GraphicsDispose($hGraphic)
    _GDIPlus_BitmapDispose($hBitmap)
    _GDIPlus_Shutdown()
    EndFunc ;==>__GDIPlus_Shutdown

    [/autoit]
  • Problem mit Inputbox auslesen

    • PCKing
    • 23. September 2010 um 19:10
    Spoiler anzeigen
    [autoit]

    $Input = InputBox ("Text","Schreibe bitte deinen Text")
    MsgBox ( 1,"dein Text",$Input)

    [/autoit]

    hier haste die lösung, eine Inputbox gibt das, was eingegeben wird zurück und variablen werden nicht in "" geschrieben ^^

  • GUIS Freezen

    • PCKing
    • 23. September 2010 um 18:33

    das einzigste "zurück" was ich da finde is in "_EventQuest()" und für das zurück hast du aber keine werte gesetzt und bei allen anderen fenstern beendest du das programm, sobald du aufs X drückst

  • Berechnungsprobleme + Funktion gibt falschen Rüggabewert zurück

    • PCKing
    • 7. September 2010 um 17:56

    du arbeitest ja in der funktion mit den variablen $intkris und $intmet aber oben hast du diese variablen als Label deklariert....
    damit du dann die zahl rausbekommst musst du die Labels mit GUICtrlRead() erstmal auslesen sonst nimmt der die labels minus die zahl, was wohl schlecht geht ;)

  • Ports überwachen?

    • PCKing
    • 19. August 2010 um 17:46

    moin.
    ich wollt mal nachfragen, ob es ein tool gibt, womit man überwachen kann auf welchen port was gesendet bzw. empfangen wirdoder ob man so was machen kann

  • Mausbewegungs möglichkeiten? Welche?

    • PCKing
    • 19. August 2010 um 17:10
    Zitat von Hilfedatei

    Send("{a down}") ;Hält die Taste A gedrückt
    Send("{a up}") ;Lässt die Taste wieder los

    das sollte was nützen :whistling:

  • Include Files erstellen?wie?

    • PCKing
    • 19. August 2010 um 01:59

    is script machst du dann

    [autoit]

    #include "die include.au3"
    test()

    [/autoit]

    sorry, hatte vergessen noch zu sagen, das bei jede func ungefähr so aussehen muss

    [autoit]

    func test()
    MsgBox(0,"","")
    EndFunc

    [/autoit]

    man darf dabei die () nicht vergessen

  • Include Files erstellen?wie?

    • PCKing
    • 19. August 2010 um 01:39

    genau und wenn du noch andere sachen includierst würde es ungefähr so aussehen :

    [autoit]

    #include <GuiConstantsEx.au3>
    #include <EditConstants.au3>
    #include-once
    func test
    MsgBox(0,"","")
    EndFunc

    [/autoit]

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™