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

Beiträge von BinDannMalWeg

  • HTML Code verarbeiten

    • BinDannMalWeg
    • 6. Juni 2012 um 20:21

    Das ist jetzt nicht dein Ernst oder? Ich finde es ja schon länger ziemlich ****, dass einige User meinen sie müssten alle ihre Threads immer in 'beiden' Foren posten zu müssen. Aber das finde ich persönlich jetzt schon ziemlich daneben. In eben diesem bestimmten Anderen Forum hast du eben mal erst nach 20 Minuten eine Antwort bekommen und deshalb wird dann sofort in diesem Forum der Nächste Thread aufgemacht??? Also ich weis ja nicht welche Logik dahinter steckt, aber es kann doch wirklich nicht angehen, dass zu einem einzigen Vorhaben jetzt schon 3 Threads existieren!
    Sorry aber DAS musste jetzt mal raus... :whistling:

  • Wie realisiere ich "Ausführen als..." in AutoIt?

    • BinDannMalWeg
    • 6. Juni 2012 um 16:45

    Die Variable $Pid trägt in diesem Fall einen irreführenden Namen, da die Funktion RunAsWait() nicht die PID sondern den Exitcode des gestarteten Programms zurück gibt... (Kleiner Tipp: genau diese Dinge stehen in der doch sehr sehr sehr ausführlichen Hilfe/Dokumentation von Autoit)

  • Pingen und Logfile

    • BinDannMalWeg
    • 6. Juni 2012 um 15:56

    Warum eigentlich nicht einfach so?

    Spoiler anzeigen
    [autoit]

    Global $Online = False, $IP = '127.0.0.1', $Intervall = 30, $Log_Path = @ScriptDir&'\'&$IP&'.txt'

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

    While 1
    $Timer = TimerInit()
    $Ping = Ping($IP)
    If $Ping > 0 Then
    If $Online = False Then
    $Online = True
    FileWrite($Log_Path,'[ '&@MDAY&'/'&@MON&'/'&@YEAR&' | '&@HOUR&':'&@MIN&':'&@SEC&' ]'&$IP&' is online now!'&@CRLF)
    TrayTip('',$IP&' is online now!',10,1)
    EndIf
    Else
    If $Online = True Then
    $Online = False
    FileWrite($Log_Path,'[ '&@MDAY&'/'&@MON&'/'&@YEAR&' | '&@HOUR&':'&@MIN&':'&@SEC&' ]'&$IP&' is offline now!'&@CRLF)
    TrayTip('',$IP&' is offline now!',10,2)
    EndIf
    EndIf
    Do
    Sleep(1000)
    Until TimerDiff($Timer) >= ($Intervall*1000)
    WEnd

    [/autoit]
  • Wie realisiere ich "Ausführen als..." in AutoIt?

    • BinDannMalWeg
    • 6. Juni 2012 um 15:28

    Wie wäre es wenn du dich erst einmal mit den Anfänger-Tutorials oder Pee's Autoit-Buch beschäftigen würdest?! Denn wenn du die Grundlagen beherrschen würdest, wäre dir auch klar, dass RunAs() ein eigenständiger Befehl ist und auch, dass du nur die benötigten Parameter in der Hilfe nachschlagen müsstest... ;)

  • nach jedem tastenklick eine funktion aktivieren

    • BinDannMalWeg
    • 3. Juni 2012 um 19:28

    OMG weist du was Rekursion ist? :D
    Ändere einfach die Funktion _Hotkey so ab und lass alles andere so wie es vorher war... ;)

    [autoit]

    Func _HotKey()
    HotKeySet(@HotKeyPressed)
    Send(@HotKeyPressed)
    ConsoleWrite("Pressed: " & @HotKeyPressed & @CRLF)
    HotKeySet(@HotKeyPressed,'_Hotkey')
    test()
    EndFunc

    [/autoit]
  • nach jedem tastenklick eine funktion aktivieren

    • BinDannMalWeg
    • 3. Juni 2012 um 19:17

    @lalaladen: Das liegt daran, dass am Anfang von chesstigers Funktion der Hotkey deaktiviert wird. Da er am Ende der Funktion nicht neu erstellt wird kannst du logischer weise nicht 2 mal auf 'a' reagieren.... ;)

  • nach jedem tastenklick eine funktion aktivieren

    • BinDannMalWeg
    • 3. Juni 2012 um 19:13

    Wenn du uns dein Problem nicht genau schilderst können wir dir auch nicht helfen... ;)

  • nach jedem tastenklick eine funktion aktivieren

    • BinDannMalWeg
    • 3. Juni 2012 um 19:09
    Zitat

    Gibt's eh schon wie Sand am Meer.

    Sagte der Drogendealer zum Richter... ;)
    Naja aber jetzt ist es ja eh schon 'zu spät' ^^
    Ach ja und in deinem Scriptbeispiel ist ein Fehler im HotkeySet() in der ersten Schleife.

  • nach jedem tastenklick eine funktion aktivieren

    • BinDannMalWeg
    • 3. Juni 2012 um 18:56

    Und wofür braucht man so etwas? Sorry aber bei derartigen Funktionen muss ich iwie immer an Keylogger denken... ?(

  • nach jedem tastenklick eine funktion aktivieren

    • BinDannMalWeg
    • 3. Juni 2012 um 18:47

    Kannst du dein Problem genauer beschreiben? So ist es momentan nur schwer zu erkennen was genau du vorhast... ;)

  • Das AutoIt T-Shirt

    • BinDannMalWeg
    • 3. Juni 2012 um 02:02

    Hey Stevenx,

    um zu Beginn erstmal etwas positives zu sagen: Ich finde es echt toll dass du überhaupt erstmal auf die Idee mit den T-Shirts gekommen bist. Auch die scheinbare Mühe die du dir damit gibst gefällt mir gut und tut wohl auch dem Forum gut. :thumbup:
    ABER: Also wenn schon klauen dann wenigstens mit Copyright-Hinweis! Der Community 'dein' neu 'designtes', naja sagen wir lieber kopiertes, T-Shirt vorzustellen und auch wirklich so zu tun, als ob DU hier der Designer wärst empfinde ich persönlich ziemlich (ich verkneife mir an dieser Stelle den Ausdruck...) ! Mal ehrlich einmal kurz Tineye angeworfen und jeder weis von wo 'dein' Design kommt... :thumbdown:

  • Anfängerprobleme mit send und anderen Fenster-Interaktionen

    • BinDannMalWeg
    • 1. Juni 2012 um 20:44

    Daniel: Wieso? Er hat doch den kompletten Dateinamen angegeben? :o Solange die Datei im selben Verzeichnis liegt, funktioniert sein Script.
    @Der Donn: Du solltest dir mal die Control-Befehle in der Hilfe anschauen. Mit ihnen ist es möglich das Fenster allein mit dem entsprechenden Handel anzusprechen und Buttons zu drücken usw... Daher entfällt auch das bei der Send-Methode nötige in den Vordergrund holen und es ist auch möglich das Fenster gleichzeitig zu verstecken.
    ;)

  • Rekursionen vermeiden

    • BinDannMalWeg
    • 1. Juni 2012 um 20:38

    So wie ich das verstanden habe geht es darum, dass er ein GUI in einer rekursiven Funktion erstellt. Momentan wird eine GUIGetMsg()-Abfrage verwendet, was dazu führt, dass das GUI aus der 'ersten' Instanz der Funktion nicht mehr reagiert... ;)
    So c.unhund damit dieses Problem nicht mehr auftritt solltest du dich mal mit dem sogenannten GUIOnEventMode beschäftigen, zu welchem es hier im Forum auch schon einige Erklärungen/Tutorials gibt... Damit du diesen, wenn du ihn verstanden hast, auch in deiner rekursiven Funktion verwenden kannst, musst du in den durch die Events aufgerufenen Funktionen eine Abfrage für das GUI-Handle einbauen, damit du auch weist auf welcher GUI-Instanz der Button X gedrückt wurde.
    :)

  • Automatisierter und beinahe sicherer Zugang zum Internet-Banking

    • BinDannMalWeg
    • 24. Mai 2012 um 15:27

    Hey HalleMike,
    mit meinem Beitrag wollte ich nicht respektlos oä. wirken! Aber mich dann sofort als arrogant abzustempeln finde ich auch nicht okay! Okay das wollte ich nur mal gesagt haben, aber jetzt wieder zum eigentlichen Thema: Deinem Script. Was die sicherheitstechnischen Bedenken von mir und einigen Anderen angeht bleibe ich bei meiner Meinung. Da du die in deinem Script verwirklichte Methode für sicherer empfindest, als eben die 'manuelle' Eingabe/die Verwendung eines Live-Systems, ist das ja okay. Aber auch wenn das Script später wahrscheinlich nur sehr wenige effektiv nutzen werden, hat es dir natürlich einiges gebracht denn es geht ja darum Übung im Umgang mit Autoit zu sammeln und die hast du bestimmt durch dieses Projekt bekommen... 150 Zeilen auch funktionierenden Code zu schreiben ist gerade für einen Anfänger eine ordentliche Leistung! Wenn ich an meine Anfänge denke.... Ohje :D Naja und um dein Script noch zu erweitern/verbessern könntest du dir als nächstes ja mal dem Thema Verschlüsselung widmen... ;)

  • Automatisierter und beinahe sicherer Zugang zum Internet-Banking

    • BinDannMalWeg
    • 23. Mai 2012 um 22:57

    Aha 8|
    ...
    Dann ist es also sicherer meine kompletten Bankdaten in einer unverschlüsselten Textdatei zu speichern??? ?(

    8o:D:D:D:D:D:rofl:

    Okay jetzt mal im Ernst:
    Wenn man sein System nicht 'sauber' halten kann oder auch wenn man 'etwas' zu viel Angst vor Übergriffen hat, dann schnappt man sich eben ne Linux-Live-CD und betreibt sein Onlinebanking ober diese... Aber ein Autoit-Script das die Daten unverschlüsselt in einer Textdatei ablegt und sie dann per copy und paste im IE?!!? einfügt... 8|

  • Fehlende Idee, um zwei exportierte Report Dateien einzulesen

    • BinDannMalWeg
    • 15. Mai 2012 um 16:28

    Meinst du das in etwa so:

    Spoiler anzeigen
    [autoit]

    Dim $CSVFile1 = @TempDir&'\test1.csv', $CSVFile2 = @TempDir&'\test2.csv', $Timer

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

    While 1
    $Timer = TimerInit()
    If FileExists($CSVFile1) Then
    ; Was auch immer du hier tun willst...
    EndIf
    If FileExists($CSVFile2) Then
    ; Was auch immer du hier tun willst...
    EndIf
    If TimerDiff($Timer) < (8*1000) Then Sleep(2000)
    WEnd

    [/autoit]
  • Das Skript muss ein Textfile checken ob es duplicate links gibt

    • BinDannMalWeg
    • 15. Mai 2012 um 16:17

    An einem WebCrawler hab ich mich auch schon mal versucht: Hab 3 mal alles hin geschmissen und nach nem halben Jahr wieder komplett neu angefangen... :whistling: Naja was ich dir aber empfehlen würde ist folgendes: Benutz nicht den IE um einen WebCrawler zu schreiben! :D Benutz entweder INetGet() oder die WinHTTP-Funktionen... (Letztere währen wohl am sinnvollsten) Außerdem würde ich dir raten den Quellcode mit StringRegExp zu löchern. ;) Und wenn du dann deinen WebCrawler vollendet hast wirst du feststellen, dass er vieeeeel zu langsam arbeiten wird... ;) Das liegt dann aber nicht an dir, sondern an Autoit allgemein. Naja das war jetzt mal meine Meinung zu dem Thema wenn du das anders siehst, dann ignoriere meinen Post einfach... :P

  • Fehlende Idee, um zwei exportierte Report Dateien einzulesen

    • BinDannMalWeg
    • 14. Mai 2012 um 19:02

    Hey,
    könntest du nochmal erklären was genau du tun willst, denn ich für meinen Teil weis nicht was der 'Export eines Reports' sein soll... ?(
    Lieg ich mit der Vermutung richtig, dass du in deinem Script warten willst bis von einem externen Programm eine bestimmte CSV-Datei im Temp-Verzeichnis erstellt wird, um sie dann auszulesen/verarbeiten oder irgendwo Anders hin zu kopieren...?! ^^

  • ToDo Liste

    • BinDannMalWeg
    • 14. Mai 2012 um 18:54

    Was willst du denn noch? :huh:
    Du schaust dir am besten die GUI-Funktionen an und erstellt dir ein schönes GUI...
    Danach überlegst du dir ein Format in dem du deine "ToDo's" speichern willst. (Die INI-Funktionen währen hier wohl zu empfehlen...)
    Als nächstes schreibst du dir ein/zwei Funktionen mit denen du die "ToDo's" auslesen/speichern/bearbeiten kannst...
    Nun müssen nur noch alle funktionen mit den richtigen Buttons usw. in deinem GUI verknüpft werden und deine "ToDo Liste" ist fertig. ;)

  • TCP mit Server und Clients

    • BinDannMalWeg
    • 14. Mai 2012 um 18:42

    Hier mal ein kleines Beispiel-Script für einen TCP-Server:

    Spoiler anzeigen
    [autoit]

    Global $TCPPort = 1234, $TCPMainSocket, $MaxClients = 100, $Client[$MaxClients+1][2]
    $Client[0][0] = 0

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

    TCPStartup()

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

    $TCPMainSocket = TCPListen(@IPAddress1,$TCPPort,$MaxClients)

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

    While 1
    ; Neue Verbindungen:
    $NewClient = TCPAccept($TCPMainSocket)
    If $NewClient <> -1 Then _AddClient($NewClient)
    ; Pakete Empfangen:
    If $Client[0][0] > 0 Then
    For $i = 1 To $MaxClients
    If $Client[$i][0] <> False Then
    For $try = 1 To 3
    $Recv = TCPRecv($Client[$i][0],1024)
    If Not @error Then
    _ReceivedData($i,$Recv)
    ExitLoop
    EndIf
    If $try = 3 Then
    _DelClient($i)
    EndIf
    Next
    EndIf
    Next
    EndIf
    WEnd

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

    Func _AddClient($Socket)
    If $Client[0][0] < $MaxClients Then
    For $i = 1 To $MaxClients
    If $Client[$i][0] = False Then
    $Client[0][0] += 1
    $Client[$i][0] = $Socket
    $Client[$i][1] = '???'
    ConsoleWrite('new client on slot '&$i&' connected...'&@TAB&'('&$Client[0][0]&'/'&$MaxClients&' slots used)'&@CRLF)
    ExitLoop
    EndIf
    Next
    Else
    TCPSend($Socket,'server_full')
    TCPCloseSocket($Socket)
    ConsoleWriteError('new client not adopted! no more free slots...'&@TAB&'('&$Client[0][0]&'/'&$MaxClients&' slots used)'&@CRLF)
    EndIf
    EndFunc

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

    Func _DelClient($Slot)
    TCPCloseSocket($Client[$Slot][0])
    $Client[$Slot][0] = False
    $Client[$Slot][1] = ''
    $Client[0][0] -= 1
    ConsoleWriteError('client on slot '&$Slot&' kicked...'&@TAB&'('&$Client[0][0]&' clients left)'&@CRLF)
    EndFunc

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

    Func _ReceivedData($Slot,$Data)
    ConsoleWrite('received the following data on slot '&$Slot&':'&@TAB&$Data&@CRLF)
    EndFunc

    [/autoit]


    Ich denke der Client sollte kein Problem darstellen, solange du nur ein reines Server-Client-Netz möchtest... ;)

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™