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

Beiträge von pretrojaner

  • Port eines ankommenden Pakets herausfinden

    • pretrojaner
    • 17. August 2012 um 23:28

    Ja dieses Problem hatte ich auch schon einmal, aber nicht bei TCP sondern beim UDP protokoll.

    Auch hier hatte ich vor eine anfrage an ein Gerät zu senden und auf die Antwort zu warten, diese kam aber nicht auf dem selben Port zurück wie die Anfrage. Also habe ich mir folgendes gebastelt.

    Vieleicht kannst du das ja auch auf das TCP protokoll anwenden.

    hier mein sinpplet (hier habe ich nach einem gerät gesucht und die anfrage über port 10011 gesendet und den port abgefangen.: (hoffe du steigst da durch :)

    Spoiler anzeigen
    [autoit]

    UDPStartup()
    $socket = UDPOpen("255.255.255.255", 10011, 1)
    If @error Then
    SetError(1)
    ;~ MsgBox(-1, "", "error udpopen")
    Exit
    EndIf
    #endregion Broadcast IP erstellen und Port öffnen zu dem gesendet werden soll.

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

    broadcastsend($socket, ".") ; irgentetwas senden um einen Port zu aktivieren

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

    #region Port auslesen von dem aus gesendet wurde
    $ausgabe = _getDOSOutput("netstat -aonp udp")
    $ausgabe = StringStripWS($ausgabe, 8)
    $ausgabe = StringTrimRight($ausgabe, StringLen($ausgabe) - StringInStr($ausgabe, "*:*" & @AutoItPID) - 6)
    $ausgabe = StringTrimLeft($ausgabe, StringInStr($ausgabe, "*:*" & @AutoItPID) - 25)
    $zwischenwert = _StringBetween($ausgabe, "0.0.0.0:", "*:*" & @AutoItPID)
    Global $port = _ArrayUnique($zwischenwert)

    [/autoit]

    hier noch die passenden funktionen aus dem snipplet:

    Spoiler anzeigen
    [autoit]

    Func broadcastsend($sSocket, $sSendewert)
    UDPSend($sSocket, $sSendewert & @CRLF)
    If @error Then
    MsgBox(-1, "", "error send")
    EndIf
    EndFunc ;==>broadcastsend

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

    Func _getDOSOutput($command)
    Local $text = '', $Pid = Run('"' & @ComSpec & '" /c ' & $command, '', @SW_HIDE, 2)
    While 1
    $text &= StdoutRead($Pid, False, False)
    If @error Then ExitLoop
    Sleep(10)
    WEnd
    Return $text
    EndFunc ;==>_getDOSOutput

    [/autoit]

    hintergrund gedanke war nun das wenn ich einmal was gesendet habe der port sich nicht mehr ändert. was auch zumindest bei meinem gerät zum erfolg führte.

    Gruß
    Pre

  • Neuinstallation, viele probleme mit Scite

    • pretrojaner
    • 15. Februar 2012 um 21:45

    ja sau geil, klappt wieder alles wunderbar.

    Herzlichen Dank

  • Neuinstallation, viele probleme mit Scite

    • pretrojaner
    • 15. Februar 2012 um 15:57

    habe mal versucht zu googlen, jedoch keine archive mit einer älteren scite4autoit version gefunden.

  • Neuinstallation, viele probleme mit Scite

    • pretrojaner
    • 14. Februar 2012 um 20:25

    niemand eine lösung für mich ?
    ;(

  • Neuinstallation, viele probleme mit Scite

    • pretrojaner
    • 13. Februar 2012 um 19:33

    nein ich habe schon das Scite für autoit herruntergeladen und installiet, wie es auch hier im Forum in der Download Sparte angezeigt wird.

  • Neuinstallation, viele probleme mit Scite

    • pretrojaner
    • 13. Februar 2012 um 19:02

    Hallo,

    ich habe nach einer Neuinstallation meines Rechnersystems (Win7 Pro x64) einige probleme mit dem neuen Scite Editor,
    das erste was mir auffiel war das geänderte Farbschema, ok, das iss ja noch hin zu bekommen.

    große probleme habe ich mit der datei die für die Abkürzungen zuständig war, wo iss se hin ?
    Wenn ich unter unter Optionen-> open Abrreviations File gehe öffnet sich zwar eine Datei jedoch steht da nur "import au3abbrev", gibt es da eine Lösung zu, oder kann mir jemand vieleicht nochmal den inhalt dieser datei zusenden ?

    zudem versuche ich das gute Organizeincludes zu installieren, beim ausführen kommt jedoch nur "Die Syntax fr den Dateinamen, Verzeichnisnamen oder die Datentr„gerbezeichnung ist falsch."

    beim letzteren kann ich mir zwar auch schon ungefär denken woran es liegt, jedoch kann es doch einfach nicht sein das nur wegen eines neuen Scite so viele ungewollte veränderrungen dabei sind.

    Sind noch mehr Fehler in diesem zusammenhang bekannt ?

    Oder gibt es vieleicht ein komplettes bugfix wie diese Probleme alle zu handhaben sind ?

    gruß
    Pre

  • Visuelle IDE für Autoit die zweite

    • pretrojaner
    • 19. Juni 2011 um 14:16

    ist die IDE complett in AutoIt geschrieben ?

    Gruß
    Pre

  • Visuelle IDE für Autoit die zweite

    • pretrojaner
    • 19. Juni 2011 um 13:14

    hallo Tam0r

    sieht sehr gut aus, freue mich schon auf das erste release.

    Gruß
    Pre

  • progressbar in Listview

    • pretrojaner
    • 3. Juni 2011 um 21:50

    hallo mal wieder zusammen,

    derzeit arbeite ich en wenig mit _GUICtrlListView. Ist es eigentlich möglich in einem "Item" oder "subitem" Feld einen Progressbar zu erstellen ?

    zuerst dachte ich mir einfach das ich mir über _GUICtrlListView_GetItemRect bzw _GUICtrlListView_GetSubItemRect die eckdaten des feldes hole und dort eine Progressbar rein setzte, Jedoch muste ich festellen das das nur dann funktioniert so lange die listview nicht zu lang bzw scrollbar wird.

    gruß
    Pre

  • Multicast Datagram via UDP

    • pretrojaner
    • 11. Mai 2011 um 18:39

    Genau so ein Problem hatte ich auch schon einmal, das problem bei mir war damals der Port auf dem gesendet wurde war jedes mal ein anderer, also auch schwierig herraus zu finden auf welchem Port er abhören soll.
    überprüfe das doch mal mit tcpview
    das sleep zwischen den beiden send befehlen täte ich weg nehmen - Zeit in der schon eine antwort kommen könnte.

    habe leider im mom keine zeit mir deinen code unter die Lupe zu nehmen, habe hier deshalb mal meinen gesendet, darin habe ich dieses problem gelöst, vieleicht wirste schlau draus.

    Gruß
    Pre

    Spoiler anzeigen
    [autoit]

    ;======================================================================================================================
    ; Function Name: _afindalice()
    ; Description:: Sucht via UDP nach AliceLE/Alice5 Recordern
    ; Return Value(s): Erfolg - Array mit Datensätzen
    ; Fehler - 1 Wenn keine Alice gefunden wurde
    ;======================================================================================================================

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

    Func _findalice($IP)

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

    #Region Broadcast IP erstellen und Port öffnen zu dem gesendet werden soll.
    UDPStartup()
    $socket = UDPOpen("255.255.255.255", 10011, 1)
    If @error Then
    SetError(1)
    ;~ MsgBox(-1, "", "error udpopen")
    Exit
    EndIf
    #EndRegion Broadcast IP erstellen und Port öffnen zu dem gesendet werden soll.

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

    broadcastsend($socket, ".") ; irgentetwas senden um einen Port zu aktivieren

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

    #Region Port auslesen von dem aus gesendet wurde
    $ausgabe = _getDOSOutput("netstat -aonp udp")
    $ausgabe = StringStripWS($ausgabe, 8)
    $ausgabe = StringTrimRight($ausgabe, StringLen($ausgabe) - StringInStr($ausgabe, "*:*" & @AutoItPID) - 6)
    $ausgabe = StringTrimLeft($ausgabe, StringInStr($ausgabe, "*:*" & @AutoItPID) - 25)
    $zwischenwert = _StringBetween($ausgabe, "0.0.0.0:", "*:*" & @AutoItPID)
    Global $port = _ArrayUnique($zwischenwert)
    #EndRegion Port auslesen von dem aus gesendet wurde

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

    For $in = 1 To 3
    UDPSend($socket, "<query mess='" & $in & "' id='" & $in & "'/>.")
    Next
    UDPCloseSocket($socket)
    $socket1 = UDPBind($IP, $port[1])

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

    ; Array Größe
    $azeilen = 100; Anzahl der Findbarengeräte
    $aspalten = 10 ; Anzahl der nötigen Settingsspalten

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

    Local $data[$azeilen][$aspalten]
    $countansers = 0
    For $d = 0 To UBound($data) - 1
    $value = _HexToString(UDPRecv($socket1, 4096, 1))
    If $value <> "" Then
    ;~ Dim $nArray[UBound($data)][20], $counter = 0;

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

    ;~ msgbox(-1,"",$value)
    $sRegExpArray = StringRegExp($value, '"(.*?)"', 3)

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

    ;~ _ArrayDisplay($sRegExpArray)

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

    If IsArray($sRegExpArray) Then
    ;~ _ArrayDisplay($sRegExpArray)
    If $sRegExpArray[0] = "3" And $sRegExpArray[1] <> "102" Then
    $counter2 = 0
    For $j = 1 To $aspalten ; Werte die noch gespiechert wrden horizontal
    ;~ If $j <> 3 And $j <> 6 And $j <> 9 Then ; Ausschluss
    $data[$countansers][$counter2] = $sRegExpArray[$j]
    $counter2 = $counter2 + 1
    ;~ EndIf
    Next
    ;~ _ArrayDisplay($sRegExpArray)
    $countansers = $countansers + 1;
    EndIf
    EndIf
    EndIf
    Next

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

    UDPCloseSocket($socket1)

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

    If $countansers = 0 Then
    SetError(1)
    Else
    ReDim $data[$countansers][$aspalten]
    Return $data
    EndIf

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

    EndFunc ;==>_findalice

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

    Func broadcastsend($sSocket, $sSendewert)
    UDPSend($sSocket, $sSendewert & @CRLF)
    If @error Then
    MsgBox(-1, "", "error send")
    EndIf
    EndFunc ;==>broadcastsend

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

    Func _getDOSOutput($command)
    Local $text = '', $Pid = Run('"' & @ComSpec & '" /c ' & $command, '', @SW_HIDE, 2)
    While 1
    $text &= StdoutRead($Pid, False, False)
    If @error Then ExitLoop
    Sleep(10)
    WEnd
    Return $text
    EndFunc ;==>_getDOSOutput

    [/autoit]
  • bräuchte Hilfe bei vereinfachungen von if then Abfragen

    • pretrojaner
    • 7. Mai 2011 um 16:05

    hallo Leutz,

    kann ich folgenden Code auch leichter lösen ?

    [autoit]

    If not IsArray($array1) And not IsArray($array2) And not IsArray($array3) Then
    ;code1
    ElseIf not IsArray($array1) And not IsArray($array2) And IsArray($array3) Then
    ;code2
    ElseIf not IsArray($array1) And IsArray($array2) And not IsArray($array3) Then
    ;code3
    ElseIf not IsArray($array1) And IsArray($array2) And IsArray($array3) Then
    ;code4
    ElseIf IsArray($array1) And not IsArray($array2) And not IsArray($array3) Then
    ;code5
    ElseIf IsArray($array1) And not IsArray($array2) And IsArray($array3) Then
    ;code6
    ElseIf IsArray($array1) And IsArray($array2) And not IsArray($array3) Then
    ;code7
    ElseIf IsArray($array1) And IsArray($array2) And IsArray($array3) Then
    ;code8
    EndIf

    [/autoit]

    Gruß
    Pre

  • URL aufrufen und XML auslesen

    • pretrojaner
    • 6. Mai 2011 um 17:01

    hallo,

    hier auch noch ein sehr schöner Weg. Dazu brauchst du die _XMLDomWrapper.au3 UDF >hier <

    Gruß
    Pre

    Spoiler anzeigen
    [autoit]

    #include <_XMLDomWrapper.au3>
    #include <Array.au3>
    #include <Inet.au3>

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

    $array = _get_otv("Verbotene Liebe")
    _ArrayDisplay($array)

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

    Func _get_otv($sSearchstring)
    $sSearch = _INetExplorerCapable($sSearchstring)
    $sUrl = "http://www.onlinetvrecorder.com/index.php?aktion=search&api=true&future=true&searchterm=" & $sSearch
    $strXML = _INetGetSource($sUrl)
    _XMLLoadXML($strXML, "")
    $sEpgid = "//OTR/SHOW";
    Return _XMLGetChildren($sEpgid)
    EndFunc ;==>_get_otv

    [/autoit]
  • bräuchte hilfe bei "SendScite Command"

    • pretrojaner
    • 4. Mai 2011 um 18:13

    Dankeschön Xenobiologist. ich weis schon garnicht mehr was ich ohne Organize includes machen täte.
    Apropo OI , wie schauts denn in punkto Weiterentwiklung aus, hatte im quellcode gesehen das du dir noch ein paar to do's noch notiert hast.

    Gruß
    Pre

  • bräuchte hilfe bei "SendScite Command"

    • pretrojaner
    • 4. Mai 2011 um 01:36

    hallo leutz,

    bräuchte mal wieder euer Wissen :D .

    Mit hilfe dieser Function können Befehle direkt in die Site console geschrieben werden. ( gefunden in Organiceincludes )

    [autoit]

    Func SendSciTE_Command($sCmd, $Wait_For_Return_Info = 0)
    Local $WM_COPYDATA = 74
    Local $WM_GETTEXT = 0x000D
    Local $WM_GETTEXTLENGTH = 0x000E224
    Local Const $SCI_GETLINE = 2153
    Local $Scite_hwnd = WinGetHandle('DirectorExtension')
    Local $My_Hwnd = GUICreate('AutoIt3-SciTE interface')
    Local $My_Dec_Hwnd = Dec(StringTrimLeft($My_Hwnd, 2))
    $sCmd = ':' & $My_Dec_Hwnd & ':' & $sCmd
    Local $CmdStruct = DllStructCreate('Char[' & StringLen($sCmd) + 1 & ']')
    DllStructSetData($CmdStruct, 1, $sCmd)
    Local $COPYDATA = DllStructCreate('Ptr;DWord;Ptr')
    DllStructSetData($COPYDATA, 1, 1)
    DllStructSetData($COPYDATA, 2, StringLen($sCmd) + 1)
    DllStructSetData($COPYDATA, 3, DllStructGetPtr($CmdStruct))
    DllCall('User32.dll', 'None', 'SendMessage', 'HWnd', $Scite_hwnd, _
    'Int', $WM_COPYDATA, 'HWnd', $My_Hwnd, _
    'Ptr', DllStructGetPtr($COPYDATA))
    GUIDelete($My_Hwnd)
    EndFunc ;==>SendSciTE_Command

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

    wie z.b.

    [autoit]

    SendSciTE_Command('menucommand:104');macht einen reload
    SendSciTE_Command('menucommand:420');leert das console fenster
    SendSciTE_Command('menucommand:106');speichert die aktuell geöffnete datei

    [/autoit]

    nun zu meiner Frage:

    Gibt es eine Dokumentation hierzu, oder vieleicht eine art Verzeichniss mit den möglichen Befehlen die gesendet werden können und was sie bewirken ?

    Gruß
    Pre

  • GDI+ Spiel: AutoIt Arena Fight.

    • pretrojaner
    • 9. April 2011 um 21:03

    beim ersten mal bis wave 11
    .
    sehr schönes script. !!!

    einen verbesserrungsvorschlag habe ich, man kann durch die gegner fliegen, ne art kollision einbauen währe nicht schlecht.

    Gruß
    Pre

  • pretrojaner ist 35

    • pretrojaner
    • 4. April 2011 um 20:38

    dankeschön für eure Glückwünsche.

    gruß
    Pretrojaner

  • Höchsten Farbanteil ausgeben.

    • pretrojaner
    • 27. März 2011 um 22:12
    Zitat von TheShadowAE

    Etwas genauer. Was für Anteile, Anteile des ganzen Bildes von Rot / Grün / Blau des Bilder oder des Pixels.


    nun wenn ich z.b. nur ein SW Bild habe mit 60% Schwarzanteil so kann ich mir sicher leicht eine Funktion basteln die mir die Farbe Schwarz als höchsten Farbanteil ausgibt.

    Wie mache ich das nun bei einem Farbbild ? Muss ich da wirklich pixel für pixel die farbanteile durchgehen? könnte mir vorstellen das dieses zu lange dauert bei großen bildern. vileicht gehts ja auch anderst ?

    Gruß
    Pre

  • Höchsten Farbanteil ausgeben.

    • pretrojaner
    • 27. März 2011 um 21:46

    hallo,

    wie schaffe ich es den höchsten Farbanteil eines Bildes zu ermitteln ?

    gruß
    Pre

  • Must Have Programme auf dem Rechner

    • pretrojaner
    • 27. März 2011 um 21:09

    Im Grunde immer das selbe, jeder hat so seine Progrämmchen :D

    • Acronis True Image
    • Mirosoft Essentials
    • AutoIt + Site + Organizeincludes + all die anderen keinen Helferlein aus diesem Forum.
    • Microsoft Office
    • Teamviewer
    • Dropbox
    • Firefox
    • Notepad++
    • Paint.Net
    • Alle Plugins und codecs zum anzeigen diverser Dokumente und dateien
    • MSN Live + Trillian + Skype , je nach belieben, was gerade gebraucht wird.
    • Audicals One
    • Picasa
    • JDownloader
    • XPMode
    • Wireshark
    • AIMP2
    • VLC
    • UniExtract
    • Winrar
    • PS3 Media Server :rock:

    gruß
    Pre

  • Windows 7 Aero Farbe ändern

    • pretrojaner
    • 27. März 2011 um 20:42

    hallo,

    bei mir bewirkt das setzten der Tranzparenz genau das gegenteil True=deaktiviert und false=Aktiviert.

    gruß
    Pre

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™